Étape 13 : annexe
Le code pour Arduino :
#include
int in1 = 13 ;
in2 int = 12 ;
int n = 0 ;
angle int = 90 ;
Servo myservo1 ;
Servo myservo2 ;
Servo myservo ;
int speedPinA = 6; //lifting pompe
void setup()
{
Serial.Begin(9600) ;
myservo1.Attach (9);// #1 servo de levage
myservo2.Attach (10);// #2 propulser servo
myservo1.Write(53) ;
myservo2.Write(53) ;
myservo.Attach(10) ; servo de tourner
pinMode(in1,OUTPUT) ;
pinMode(in2,OUTPUT) ;
pinMode(speedPinA,OUTPUT) ;
digitalWrite(in1,HIGH) ;
digitalWrite(in2,HIGH) ;
}
void loop()
{
if(n>133)
{
n = 133 ;
}
char BluetoothData=Serial.read() ;
Si (BluetoothData == « A ») //Set le PWM minimal
{
n = 53 ;
myservo1.Write(n) ;
Serial.println("A") ;
}
Si (BluetoothData == « B ») //Set le PWM maximal
{
n = 133 ;
myservo1.Write(n) ;
Serial.println("B") ;
}
Si (BluetoothData == « C ») //appropriate vitesse initiale
{
n = 60 ;
myservo1.Write(n) ;
Serial.println("C") ;
}
Si (BluetoothData == a ') / / augmenter la manette des gaz
{
n += 1 ;
myservo1.Write(n) ;
Serial.println("D") ;
}
Si (BluetoothData == « E ») / / diminution des gaz
{
n-= 1 ;
myservo1.Write(n) ;
Serial.println("E") ;
}
Si (BluetoothData == « H ») //Reset le servo
{
angle = 90 ;
myservo.Write(angle) ;
myservo1.Write(56) ;
Serial.println("H") ;
}
Si (BluetoothData == « 0 ») / / tourner à droite puis réinitialiser
{
Si (angle < = 180)
{
angle += 20 ;
myservo.Write(angle) ;
myservo1.Write(56) ;
Serial.println("0") ;
Delay(100) ;
}
angle-= 20 ;
myservo.Write(angle) ;
Delay(15) ;
}
Si (BluetoothData == « 1 ») / / tourner à gauche puis réinitialiser
{
Si (angle > = 0)
{
angle-= 20 ;
myservo.Write(angle) ;
myservo1.Write(56) ;
Serial.println("1") ;
Delay(100) ;
}
angle += 20 ;
myservo.Write(angle) ;
Delay(15) ;
}
Si (BluetoothData == « I ») / / tourner à droite
{
angle += 30 ;
myservo.Write(angle) ;
Serial.println("I") ;
}
Si (BluetoothData == « J ») / / tourner à gauche
{
angle-= 30 ;
myservo.Write(angle) ;
Serial.println("J") ;
}
Delay(100) ;
}