Étape 6: Arduino Firmware
Avant que vous essayez de télécharger l’esquisse pour l’Arduino veiller à ce que vous port est sélectionné dans le menu Outils, déroulant dans l’IDE Arduino, mais mre surtout choisir le bon conseil vous utilisez.
Le code ci-dessous fonctionne sur la plupart, si pas toutes les cartes Arduino, mais si vous avez le mauvais type défini sous outils, puis vous obtiendrez seulement Erreurs lorsque vous cliquez sur le bouton transférer.
J’ai eu quelques problèmes quand j’ai couru tout d’abord cela, ne se connecte pas, ne moteurs pas tourner ou incohérente.
Pour trouble shoot questions j’ai suggèrent de supprimer l’Arduino et Bluetooth du Cybot et mis en place sur une maquette et obtenir de chaque étape de travail avant de passer.
Travaillant comme en haut, j’ai trouvé que le faisceau de câble, que j’avais fait pour relier le pont de Cybot H à l’Arduino a été court-circuiter qui a abouti à fonctionnement capricieux.
Tellement bien que je pense que c’est une bonne idée d’utiliser le harnais et ont laissé sa création en tant que partie de l’instructable - vous remarquerez que la vidéo pleinement opérationnelle a des connexions directes à l’aide de fils de raccordement
Firmware pour l’Arduino Nano pour Bluetooth control de la plate-forme de Cybot
ce fichier n’utilise pas les connexions TX/RX sur l’arduino pour communication série donc, faire les liens suivants
Arduino >> bluetooth / / D03 >>> Rx
D02 >>> Tx
#include / / il s’agit d’un must ou la communication sérielle ne fonctionnera pas
SoftwareSerial Cybot(10,11) ; Installation de RX, TX
int RM_forward = 8 ; le programme d’installation référencée broche pour marche / arrêt activité
int RM_reverse = 9 ; le programme d’installation référencée broche pour marche / arrêt activité
int LM_forward = 12 ; le programme d’installation référencée broche pour marche / arrêt activité
int LM_reverse = 13 ; le programme d’installation référencée broche pour marche / arrêt activité
int BluetoothData ; les données données l’ordinateur
void setup() {/ / statut configuration initiale
Cybot.Begin(9600) ;
Cybot.println ("Bluetooth sur Appuyez sur 8:forward/2:reverse/4:left/6:right/0") ;
pinMode(RM_forward,OUTPUT) ;
pinMode(RM_reverse,OUTPUT) ; pinMode(LM_forward,OUTPUT) ;
pinMode(LM_reverse,OUTPUT) ;
}
void loop() {/ / Mettez votre code principal ici, pour exécuter à plusieurs reprises :
Si (Cybot.available()) {BluetoothData=Cybot.read() ;
Vers l’avant
if(BluetoothData=='1') {/ / si nombre 1 enfoncée... d’abord cesser toute activité puis allumez le mouvement vers l’avant
digitalWrite(RM_forward,0) ;
digitalWrite(LM_forward,0) ;
digitalWrite(RM_reverse,0) ;
digitalWrite(LM_reverse,0) ;
digitalWrite(RM_forward,1) ;
digitalWrite(LM_forward,1) ;
Cybot.println("Forward") ;
}
Vers l’arrière
if(BluetoothData=='2') {/ / si nombre 2 enfoncée... d’abord cesser toute activité puis allumez le mouvement vers l’arrière
digitalWrite(RM_forward,0) ;
digitalWrite(LM_forward,0) ;
digitalWrite(RM_reverse,0) ;
digitalWrite(LM_reverse,0) ;
digitalWrite(RM_reverse,1) ;
digitalWrite(LM_reverse,1) ;
Cybot.println("Backwards") ;
}
Droit
if(BluetoothData=='4') {/ / si nombre 4 pressé... d’abord cesser toute activité puis tourner sur la droite motion digitalWrite(RM_forward,0) ;
digitalWrite(LM_forward,0) ;
digitalWrite(RM_reverse,0) ;
digitalWrite(LM_reverse,0) ;
digitalWrite(RM_reverse,1) ;
digitalWrite(LM_forward,1) ;
Cybot.println("Right") ; }
gauche
if(BluetoothData=='6') {/ / si nombre 6 pressé... tout d’abord cesser toute activité puis tournez sur la gauche motion digitalWrite(RM_forward,0) ;
digitalWrite(LM_forward,0) ;
digitalWrite(RM_reverse,0) ;
digitalWrite(LM_reverse,0) ;
digitalWrite(LM_reverse,1) ;
digitalWrite(RM_forward,1) ;
Cybot.println("left") ;
}
ARRÊTER
if(BluetoothData=='0') {/ / si nombre 0 enfoncée... arrêter toutes les activités
digitalWrite(RM_forward,0) ;
digitalWrite(LM_forward,0) ;
digitalWrite(RM_reverse,0) ;
digitalWrite(LM_reverse,0) ;
Cybot.println("Stop") ;
}
}
Delay(100); / / attente pour l’entrée
}