Custom robot

(robotelul construit de cei de la Matrix)

Setări și configurări

Board (plăcuță): Arduino/Genuino Uno Bibliotecă: MeOrion.h

#include "MeOrion.h"

Motoare

Configurare (la început, înainte de stup)

MeDCMotor motor1(M1);
MeDCMotor motor2(M2);

Utilizare (în interiorul funcției setup() {...} sau loop() {.....}

Pentru a porni motoarele:

motor1.run(motorSpeed); /* valori: intre -255 si 255. */
motor2.run(-motorSpeed); /* valori: intre -255 si 255. */

Atenție, ca roboțelul să meargă în aceeași direcție (înainte sau înapoi), e nevoie ca motoarele să se rotească în direcții opuse. De aceea la motor2 punem -(minus) motorSpeed.

Pentru a opri motoarele:

motor1.stop();
motor2.stop();

Motoare pentru sticlă/vas

Configurare

MeDCMotor brat(PORT_1);

Mișcă în sus:

brat.run(-motorSpeed); /* valori: intre -255 si 255. */
delay(4000);
brat.stop();

Mișcă în jos:

brat.run(motorSpeed); /* valori: intre -255 si 255. */
delay(1000);
brat.stop();

Exemplu de program complet

Inițial brațul trebuie să fie în jos. Robotul o să ridice brațul în sus, apoi merge 5 secunde inainte, apoi mișcă brațul în jos.

#include "MeOrion.h"
// brat robotic - pe port 1
MeDCMotor brat(PORT_1);
// motoare
MeDCMotor motor1(M1);
MeDCMotor motor2(M2);
uint8_t motorSpeed = 100;
void sus() {
brat.run(-motorSpeed); /* valori: intre -255 si 255. */
delay(4000);
brat.stop();
}
void jos(){
brat.run(motorSpeed); /* valori: intre -255 si 255. */
delay(1000);
brat.stop();
}
void moveFwd() {
motor1.run(-motorSpeed); /* valori: intre -255 si 255. */
motor2.run(motorSpeed); /* valori: intre -255 si 255. */
}
void moveBackward() {
motor1.run(motorSpeed); /* valori: intre -255 si 255. */
motor2.run(-motorSpeed); /* valori: intre -255 si 255. */
}
void stopMovement() {
motor1.stop();
motor2.stop();
}
// Initializare - actiunile se executa o singura data
void setup()
{
moveFwd();
delay(3000);
stopMovement();
delay(1000);
jos();
delay(2000);
sus();
}
// Loop - instructiunile se repeta la infinit
void loop()
{
}