Étape 5: Le Code
Voici le code pour votre robot solaire traçage :#include < Servo.h > / / include bibliothèque Servo
Servo horizontaux ; servo horizontaux
int servoh = 90 ; support de servo horizontaux
Servo vertical ; servo vertical
int г = 90 ; stand vertical servo
Connexions des broches LDR
nom = analogpin ;
int ldrlt = 0 ; Haut LDR à gauche
int ldrrt = 1 ; LDR rigt Albums
int ldrld = 2 ; LDR bas gauche
int ldrrd = 3 ; LDR baisse rigt
void setup()
{
Serial.Begin(9600) ;
connexions de servo
Name.attacht(pin) ;
horizontal.Attach(9) ;
vertical.Attach(10) ;
}
void loop()
{
lt int = analogRead(ldrlt) ; en haut à gauche
int rt = analogRead(ldrrt) ; en haut à droite
int ld = analogRead(ldrld) ; bas gauche
rd int = analogRead(ldrrd) ; vers le bas rigt
dtime int = analogRead 4/20 ; lire les potentiomètres
int tol = analogRead 5/4 ;
avt int = (lt + rt) / 2 ; haut de la valeur moyenne
avd int = (ld + rd) / 2 ; valeur moyenne vers le bas
avl int = (lt + ld) / 2 ; valeur moyenne gauche
avr int = (rt + rd) / 2 ; valeur moyenne droite
int dvert = avt - avd ; vérifier la diffirence de haut en bas
int dhoriz = avl - avr; / / vérifier la diffirence og gauche et rigt
Si (-1 * tol > dvert || dvert > tol) / / vérification si la diffirence est dans la tolérance d’autre changement angle vertical
{
Si (avt > avd)
{
г = ++ г ;
Si (г > 180)
{
г = 180 ;
}
}
ElseIf (avt < avd)
{
г =--г ;
Si (г < 0)
{
г = 0 ;
}
}
vertical.Write(servov) ;
}
Si (-1 * tol > dhoriz || dhoriz > tol) / / vérifier si la diffirence est dans la tolérance d’autre changement d’angle horizontal
{
Si (avl > avr)
{
servoh =--servoh ;
Si (servoh < 0)
{
servoh = 0 ;
}
}
ElseIf (avl < avr)
{
servoh = ++ servoh ;
Si (servoh > 180)
{
servoh = 180 ;
}
}
ElseIf (avl = avr)
{
rien
}
horizontal.Write(servoh) ;
}
Delay(dtime) ;
}