Étape 5: Écrire du code pour arduino et fixer les capteurs
Fixez votre capteur de servo et le mouvement de votre maquette et reliez à l’arduino (ou funduino) du Conseil. C’est le code :
#include
#include servo myservo ;
#define PING_PIN 12 # define PING_PIN2 11 / / goupille de Arduino liée aux broches fois trigger et echo sur le capteur à ultrasons. #define MAX_DISTANCE 250 / / distance maximale que nous voulons faire un ping pour (en centimètres). Distance maximum sensor est évalué à 400-500cm.
NewPing sonar (PING_PIN, PING_PIN2, MAX_DISTANCE) ; NewPing installation de pin et de la distance maximale.
int pos = 0 ; variable pour stocker le cocher booléennes de servo position = 0 ; unsigned int nous = 10 ; void setup() {myservo.attach(9) ; Serial.Begin(9600) ; s’adapte sur le servo sur la broche 9 l’objet servo}
void loop() {int itemp = uS / US_ROUNDTRIP_CM ; if(check == 1) {pour (pos = 0; pos < = 180; pos += 1) {/ / va de 0 degrés à 180 degrés / / par incréments de 1 degré myservo.write(pos); / / dire servo pour aller à positionner dans la variable 'pos' delay(20); / / attend 15ms pour le servo atteindre la position}
Delay(2000) ; pour (pos = 180; pos > = 0; pos-= 1) {/ / va de 180 degrés à 0 degrés myservo.write(pos); / / dire servo pour aller à positionner dans la variable « pos » delay(20); / / attend 15ms pour le servo atteindre la position} vérifier = 0 ; } delay(250) ; Nous = sonar.ping() ; Serial.Print ("Ping:") ; Serial.Print(US / US_ROUNDTRIP_CM) ; Convertir les temps de ping à distance et d’imprimer le résultat (0 = distance définie hors plage, aucun écho de ping) Serial.println("cm") ; Serial.Print(Check) ; int i = uS / US_ROUNDTRIP_CM ; Serial.Print ("mouvement de test") ; Serial.println(i) ; Serial.Print(iTEMP) ; Si (j’ai < 125 & & j’ai 70 > & & j’ai! = 0) {check = 1;}}