Étape 4: Modifier le lineFollowing.ino programme
Nous devons maintenant modifier notre programme lineFollow.ino comme le kit de radio RF a des exigences légèrement différentes que fait notre port série codé en dur.
Voici les changements que nous devons faire :
#include « SoftwareSerial.h »
#include « MakeItRobotics.h »
#define rxPin 4
#define txPin 5
MakeItRobotics line_following ;
SoftwareSerial mySerial = SoftwareSerial (rxPin, txPin) ;
int compteur ;
Dans notre section de définition, il faut ajouter une variable de compteur qui sera utilisée pour tester le port série sans fil. Ce compteur aura un type de données d’int.
void setup()
{
Serial.Begin(10420) ;
dire l’Arduino pour communiquer avec Make : il
PCBdelay(500) ; retard de 500 ms
line_following.line_following_setup() ;
initialiser l’état de la ligne qui suit le robot
line_following.all_stop() ; arrêter tous les moteurs
pinMode (rxPin, entrée) ;
pinMode (txPin, sortie) ;
définir le débit de données pour le port de SoftwareSerial
mySerial.begin(9600) ;
mySerial.begin(1200) ;
compteur = 0 ;
}
Dans notre fonction setup(), il faut apporter les modifications suivantes : nous avons besoin de présenter des observations sur la mySerial.begin(9600) ; commande et ajoutez la commande suivante :
mySerial.begin(1200) ;
1200 est le débit en bauds (vitesse de transfert de données) que les radios de RF peuvent communiquer entre eux. Cette valeur peut être différente pour vos radios.
Consultez votre documentation. Dans ma situation la radio est venu avec aucune documentation, j’ai d’abord essayé 2400 bauds, qui n’a pas fonctionné, donc j’ai baissé ensuite le débit en bauds à 1200 bauds, qui n’a fonctionné.
Aussi, nous initialisons la variable de compteur à la valeur 0. Dans la fonction Loop() il faut ajouter ce qui suit :
mySerial.println (sensor_in, HEX) ;
mySerial.println (comptoir, DEC) ;
compteur ++ ;
Tout d’abord nous commentez la mySerial.printLn (sensor_in, HEX) ; ligne et ajoutez la ligne suivante :
mySerial.printLn (counterm DEC) ;
Afin de vérifier que nous avons configuré nos radios RF correctement, nous voulons juste nous envoyer quelques numéros à notre poste de travail. Plus tard lorsque nous nous assurons que nos connexions RF travaillent nous changerons le mySerial.printLn() retour à ce qu’elle était avant.
Voici tous les changements que nous devons faire.
Fixez tout simplement le câble USB au connecteur USB de l’Arduino sur votre robot. Nous allons tout d’abord compiler et télécharger le programme sur notre Arduino.
N’oubliez pas qu'il faut s’assurer que nous utilisons le nombre correct de port série, vérifiez l’entrée de blog plus tôt "Make : on Robotics Starter Kit – logiciel partie 2″ pour plus de détails sur la façon d’accomplir cette tâche.
N’oubliez pas que vous n’avez pas besoin d’allumer les interrupteurs de boîte de batterie afin d’avoir le robot à communiquer à travers le port série.
Une fois que votre programme lineFollow.ino a transféré à l’Arduino, branchez votre câble de FTDI USB à votre ordinateur. Charger l’IDE Arduino, sélectionnez le port série et ouvrez le programme Serial Monitor. Sélectionner le bon débit, dans mon cas, j’ai choisi 1200 bauds.
Si vous avez effectué toutes les tâches correctement puis vous devriez voir ce qui suit dans votre programme de serial monitor. Votre programme devrait ressembler un peu différent comme cet écran photo a été prise à partir de l’IDE Studio ATMEL :
Si votre moniteur série reçoit, ce qui semble être un grand nombre de caractères indésirables ou un tas de points d’interrogation.
Puis votre débit en bauds sur le moniteur de la série ne correspond pas à la vitesse de transmission que vous définissez dans votre programme de lineFollow.ino ou vous devrez modifier la vitesse de transmission que le programme utilise comme les radios RF peuvent ne pas supporter ce débit en bauds :
Il est également facile à corrompre le port série, dans de nombreuses situations, il est donc préférable juste à débrancher tous les ports USB et essayez encore une fois, peut-être même redémarrer votre ordinateur si vous ne pouvez pas faire fonctionner.
Dans le prochain blog, tutoriel nous mettrons en place le programme lineFollow.ino pour envoyer des données de capteur à notre ordinateur tandis que le robot tourne autour du cercle noir, envoyer des données en temps réel à notre ordinateur sans fil.