Étape 9: Exploiter inversé Robot via Serial Monitor
Vous avez maintenant un inversé équilibrage robot. Puis nous allons contrôler par serial monitor. Vous pourriez le faire tourner à droite/gauche et aller vers l’avant/arrière.
- Mise à jour le programme mis à jour l’échantillon obtenu à l’étape 8 , selon les détails ci-dessous
- Télécharger la mise à jour pour Arduino utilisant IDE
- Après la fin du téléchargement, lancez le moniteur série de IDE
- Sélectionnez « Nouvelle ligne » et « 115200 baud » en bas à droite de serial monitor
- Faire le robot inversé se solde selon étape 6 (sans un soutien de doigt en lignes de 6 à 8)
- Entrée des valeurs numériques dans la partie supérieure gauche de la fenêtre du serial monitor et Appuyez sur la touche [entrée]
- Voir action ou changement d’action de votre robot
:
[Tutorial pour étape 9]
:
[Note 8]
Vous pouvez contrôler votre robot dynamiquement par serial monitor de PC via un câble USB. Par exemple vous entrez "00" dans la fenêtre de serial monitor et poussez le [Enter] touche, puis robot recevoir séparément '0' et '0'. C’est pourquoi il tourne à droite à un angle régulier ci-dessous deux fois sans s’arrêter.
- Un '0' envoyé fait robot tourner à droite à un angle régulier sur place
- Un '1' envoyé fait robot tourner à gauche à un angle régulier sur place
- Un certain nombre (n) de '2' envoyé faire robot accélérer vers l’avant en fonction du nombre (n)
- Un certain nombre (n) de '3' envoyé faire robot accélérer vers l’arrière au prorata du nombre (n)
:
[Mise à jour sur le croquis de l’échantillon (pour 4 places)]
(1) copier les 5 lignes suivantes et les coller entre les lignes 17 et 18 dans le sketch modifié obtenu à l’étape 8.
drct int = 0 ;
booléenne droite = false ;
booléenne gauche = false ;
int fwdBck = 0 ;
Copyright (C) 2014 ArduinoDeXXX tous droits réservés.
(2) copier les lignes suivantes 26 et collez-les sur la ligne 32 le mis à jour le schéma obtenu à l’étape 8, c'est-à-dire remplacer par ces lignes pour « si (puissance > 0) {".
Si {(Serial.available())
drct = Serial.read() ;
Serial.println(drct) ;
}
Si (drct == 48) {droite = true;}
ElseIf (drct == 49) {left = true;}
ElseIf (drct == 50) {fwdBck ++; drct = 0;}
ElseIf (drct == 51) {fwdBck--; drct = 0;}
Si (droite == true) {}
analogWrite (6, 140) ;
digitalWrite (4, élevée) ;
digitalWrite (5, faible) ;
analogWrite (9, 140) ;
digitalWrite (7, LOW) ;
digitalWrite (8, HIGH) ;
Delay(40) ;
} ElseIf (gauche == true) {}
analogWrite (6, 140) ;
digitalWrite (4, faible) ;
digitalWrite (5, HIGH) ;
analogWrite (9, 140) ;
digitalWrite (7, HIGH) ;
digitalWrite (8, faible) ;
Delay(40) ;
} ElseIf (puissance > 0) {}
Copyright (C) 2014 ArduinoDeXXX tous droits réservés.
(3) copier les 4 lignes suivantes et les coller entre les lignes 55 et DL26 le mis à jour le schéma obtenu à l’étape 8.
drct = 0 ;
droite = false ;
gauche = false ;
Copyright (C) 2014 ArduinoDeXXX tous droits réservés.
(4) copier les 2 lignes suivantes et collez-les sur la ligne 74 le mis à jour le schéma obtenu à l’étape 8, c'est-à-dire remplacer par ces lignes pour "sumPower = sumPower + alimentation;".
sumPower = sumPower + puissance + fwdBck * 4 ; 74 a
Copyright (C) 2014 ArduinoDeXXX tous droits réservés.