Étape 7: Ce que tout ressemble à ensemble
Cette étape n’est pas quelque chose de nouveau à l’arduino, ajoutant mais marquant la fin de la partie électrique du projet et commencer la partie de matériaux. Partir d’ici, sur toutes les pièces que nous avons mentionné séparément dans les étapes précédentes doivent être mis ensemble et de commencer à créer un projet cohérent. Nous donnons une image de tout ce que nous avons ajouté à la maquette et la configuration de l’arduino. Nous avons également le code fini que nous utiliserons pour contrôler le serpent d’ici sur out.
Code final
/*
int photocellReading3 ; l’analogue de lecture à partir du diviseur de résistance analogiques
int photocellReading4 ; l’analogue de lecture à partir du diviseur de résistance analogiques
int photocellReading5 ; l’analogue de lecture à partir du diviseur de résistance analogiques
int photocellDifference1 ;
int photocellDifference2 ;
int lrValue ;
int timer = 1 ;
void setup(void) {}
Serial.Begin(9600) ;
// ///////////////// //
Mettre en place les moteurs / /
// ///////////////// //
pinMode (sortie 12,) ; Broche initiés moteur canal
pinMode (sortie 9) ; Broche initiés frein canal
pinMode (13, sortie) ; Goupille d’initiés moteur canal B
pinMode (sortie 8) ; Goupille d’initiés frein canal B
digitalWrite (13, faible) ; Établit l’orientation vers l’avant du canal A
digitalWrite (8, faible) ; Débloquer le frein de chaîne A
digitalWrite (12, faible) ; Établit l’orientation vers l’avant du canal B
digitalWrite (9, faible) ; Débloquer le frein pour le canal B
// /////////////////// //
Mettre en place tous les voyants / /
// /////////////////// //
pinMode (7, sortie) ; initialiser la broche 7 pour 1 groupe de LED
pinMode (6, sortie) ; initialiser la broche 6 LED groupe 2
pinMode (5, sortie) ; initialiser la broche 5 LED groupe 3
// ////////////////////////// //
Mettre en place le moteur de vibration / /
// ////////////////////////// //
pinMode (sortie 10,) ; initialiser la broche 10 pour le moteur de vibration
}
void loop(void) {}
// /////////////////////////////// //
lectures du capteur photoélectrique / /
// /////////////////////////////// //
photocellReading3 = analogRead(3) ; ira à moteur A
photocellReading4 = analogRead(4) ; ira à moteur B
photocellReading5 = analogRead(5) ; lumière de lecture de base
obtenir des différences entre les capteurs pour les moteurs et capteur de lumière ambiante
photocellDifference1 = (photocellReading3 - photocellReading5) ;
photocellDifference2 = (photocellReading4 - photocellReading5) ;
lrValue = photocellDifference2 - photocellDifference1 ;
// /////////////////////////////////// //
allumer les moteurs issus des capteurs / /
// /////////////////////////////////// //
Si (lrValue < = -120) {}
analogWrite (11, 255) ;
analogWrite (3, 100) ;
} ElseIf (lrValue < = -90) {}
analogWrite (11, 224) ;
analogWrite (3, 100) ;
} ElseIf (lrValue < = -60) {}
analogWrite (11, 193) ;
analogWrite (3, 100) ;
} ElseIf (lrValue < = -40) {}
analogWrite (11, 162) ;
analogWrite (3, 100) ;
} ElseIf (lrValue < = -25) {}
analogWrite (11, 131) ;
analogWrite (3, 100) ;
} ElseIf (lrValue < 25) {}
analogWrite (11, 100) ;
analogWrite (3, 100) ;
} ElseIf (lrValue < 40) {}
analogWrite (11, 100) ;
analogWrite (3, 131) ;
} ElseIf (lrValue < 60) {}
analogWrite (11, 100) ;
analogWrite (3, 162) ;
} ElseIf (lrValue < 90) {}
analogWrite (11, 100) ;
analogWrite (3, 193) ;
} ElseIf (lrValue < 120) {}
analogWrite (11, 100) ;
analogWrite (3, 224) ;
} else {}
analogWrite (11, 100) ;
analogWrite (3, 255) ;
}
// //////////////// //
Groupe de LEDs 1 / /
// ///////////// // //
Si (((timer-1) % 4) == 1)
digitalWrite (7, HIGH) ; les LED Set
d’autre
digitalWrite (7, faible) ; partit LED
// //////////////// //
LEDs groupe 2 / /
// ///////////// // //
Si ((((timer-3) % 4) == 2) || (((timer-3) % 4) == 1))
digitalWrite (6, HIGH) ; les LED Set
d’autre
digitalWrite (6, faible) ; partit LED
// //////////////// //
LEDs groupe 3 / /
// ///////////// // //
Si ((((timer-2) % 3) == 1) || (((timer-2) % 3) == 2))
digitalWrite (5, HIGH) ; les LED Set
d’autre
digitalWrite (5, faible) ; partit LED
// ///////////////// //
moteur vibrateur / /
// ///////////////// //
Si (((timer % 16) == 1) || ((Timer % 15) == 2) || ((Timer % 15) == 3))
digitalWrite (10, haute) ; moteur de vibration définie sur
d’autre
digitalWrite (10, faible) ; partit moteur de vibration
réinitialiser la minuterie toutes les 12 secondes
Si (minuterie == 48)
minuterie = 1 ;
d’autre
minuterie ++ ;
délai pour 0,25 secondes
Delay(250) ;
}
*/