servo

Arduino + Bluetooth – Servo Motor

Postado em Atualizado em

servobluetooth_schem

#include <Servo.h>

long val;

Servo servoDireita, servoEsquerda;
int posicao_inicial_servo = 0;

int led0 = 13;
int led1 = 12;
int go = 50;
int bk = 56;
int lf = 52;
int rg = 54;
int led = 67;

void setup() {
//Inicia a comunicaço serial(USB ou Bluetooth)
Serial.begin(9600);
//Modo de operaçao dos pinos = Saida
pinMode(led0, OUTPUT);
pinMode(led1, OUTPUT);
//Escrita digital nos LEDs = Apagados
digitalWrite(led0, LOW);
digitalWrite(led1, LOW);
servoDireita.attach(5);
servoEsquerda.attach(6);
servoDireita.writeMicroseconds(1400);
servoEsquerda.writeMicroseconds(1400);
}
void loop() {
if( Serial.available() )
{
val = Serial.read();
}
if( val == go )//para frente
{
movimetacao_Frente();
}
else if( val == bk )
{
movimentacao_Re();
}
else if( val == lf )
{
movimentacao_Esquerda();
}
else if( val == rg )
{
movimentacao_Direita();
}
else if(val == 48 )
{
movimentacao_Parado();
}
else if (val == led)
{
digitalWrite(led0, HIGH);
digitalWrite(led1, HIGH);
delay(10);
}
else {
digitalWrite(led0, LOW);
digitalWrite(led1, LOW);
}
delay(100);
//Serial.println(val);
}

/*======== Movimentacao dos Servos ================*/

int movimetacao_Frente()
{
servoDireita.write(180);
servoEsquerda.write(0);
}
int movimentacao_Re()
{
servoDireita.write(0);
servoEsquerda.write(180);
}
int movimentacao_Direita()
{
servoDireita.write(75);
servoEsquerda.write(75);
}
int movimentacao_Esquerda()
{
servoDireita.write(105);
servoEsquerda.write(105);
}
int movimentacao_Parado()
{
servoDireita.writeMicroseconds(1400);
servoEsquerda.writeMicroseconds(1400);
}