Programmation de Scotty

Présentation de la carte Dagu

La carte Dagu RS027 est un contrôleur à faible coût qui est compatible avec l'Arduino NG au niveau logiciel. Dans lequel est intégré un pont double FET en "H" et la capacité de commander directement des servomoteurs à l'aide d'une batterie externe, cela permet le pilotage d'un plus gros moteur ou servomoteur. Nous avons donc préféré opter pour la Dagu plutôt qu'une Arduino car elle est plus compacte et moins couteuse.

Ultrason

Capteur ultrason

Le capteur HC-SR04 utilise les ultrasons pour déterminer la distance d'un objet. Il offre une excellente plage de détection sans contact, avec des mesures de haute précision et stables. Son fonctionnement n'est pas
influencé par la lumière du soleil ou des matériaux sombres, bien que des matériaux comme les vêtements puissent être difficiles à détecter.

Câblage du capteur ultrason

La câblage du capteur ultrason doit se faire sur des broches spécifiques.

- D0 et D1 sont les broches RX et TX du port série.
- D2 et D3 sont les broches d'interruption externes.
- D9, D10 et D11 sont des broches capables de
moduler des largeurs d'impulsions PWM (désactivé par la bibliothèque Servo).
- D10, D11, D12 et D13 sont connectés
à la prise ISP. D13 est la sortie par défaut.

Si le robot ne comporte que le capteur et n'a dans ce cas pas besoin d'interrupteur par la suite il peut être câblé sur les broches D2 et D3
Mais pour Scotty le fait de câbler le module sur les broches D2 et D3 n'est pas correct car l'interrupteur causera un court-circuit. Il est donc préférable de câbler le capteur sur les broches D4 et D5 comme montré ci-contre.

Partie programmation du capteur



Pour pouvoir programmer la carte Dagu il faut utiliser le logiciel Arduino. Tout d'abord il faut configurer le logiciel comme montré ci-contre. Ci-dessous, voici la programmation utilisé pour le capteur qui permet à Scotty d'avancer jusqu'à rencontrer un obstacle pour ensuite reculer et repartir dans une autre direction.

Télécharger
programmation capteur ultrason.pdf
Document Adobe Acrobat 142.7 KB

Moteurs

Câblage moteurs




Le câblage des moteurs est simple mais attention au sens de câblage des moteurs sur la carte. Il est inscrit ML pour Motor left (Moteur gauche) et MR pour Motor right (Moteur droit).

Programmation moteurs

Il faut tout d'abord définir les constantes et variables pour les moteurs. Il faut aussi définir les PIN et indiquer les entrées et des sorties.

Télécharger
programmation moteurs.pdf
Document Adobe Acrobat 282.8 KB

Bluetooth

Module bluetooth HC-05



Le module permet simplement d'intégrer le bluetooth à la carte. Ce qui nous permettra par la suite de pouvoir piloter Scotty avec son smartphone. Le module est composé d'un ensemble de broches. VCC et GND pour l’alimentation (5V), Rx/Tx pour la communication.









Voyons comment brancher le capteur. Tout d’abord, l’alimentation. C’est assez habituel, le VCC sera relié au 5V de la Dagu et le GND à la masse. Ensuite, viennent les broches de transmission de données, RX et TX. Attention a bien inverser RXD et TXD. Voici la programmation de scotty pour pourvoir utiliser la télécommande :

byte serialA; // variable de reception de donnée via RX

void setup()
{
    Serial.begin(9600);    //Initialize serial at 9600bps 
}

void loop()
   while (Serial.available() == 0); // wait for character to arrive
   char c = Serial.read();
   if(c =='4') {
   marche_Avant();
   }
   if(c == '1'){
   arreter ();
   }
      if(c == '2'){
   tourner_Droite ();
   }
      if(c == '3'){
   tourner_Gauche ();
   }
      if(c == '0'){
   marche_Arriere ();
   }
   delay(500);
}

Application pour contrôler Scotty

Pour commander Scotty nous utilisons l'application "Arduino bluetooth controller" ( https://play.google.com/store/apps/details?id=com.giumig.apps.bluetoothserialmonitor ) uniquement sur play store. Nous allons donc voir comment configurer l'application.



Tout d'abord il suffit d'activer le bluetooth de son téléphone et de s'associer avec la carte depuis cette application.




Une fois cliqué sur le nom du module le menu ci-contre s'affiche. Ensuite, il suffit de cliquer sur "Controller mode" pour accéder à une télécommande que l'on utilisera pour contrôler Scotty.





Voila à quoi va ressembler la futur télécommande de Scotty. Pour la configurer, il faut cliquer en haut à droite comme montré sur l'image.






Dans la rubrique bluetooth, la partie loop de la programmation comprends des valeurs numérique assigné a un mouvement. Cela va permettre d'assigner les valeurs aux touches souhaité à la télécommande. Exemple: "if(c == '3') {  tourner_Gauche ();.". Comme on peut le voir sur la photo, la valeur 3 est attribué au mouvement vers la gauche comme dit dans le programme.

Ajout d'un interrupteur pour changer de mode

Pour changer entre le mode bluetooth et le mode ultrason, nous avons d'abord opter pour un bouton 3 broches. Mais le problème c'est que les deux modes fonctionnait en même temps et l'interrupteur n'avait rien changé. Il est donc impératif d'utiliser un bouton 6 broches ce qui va pouvoir éviter le conflit entre les deux modes.
  /!\   Il faut faire attention à bien câbler la pin du milieu de l'interrupteur à la pin que vous utiliserez sur la carte. Pour la programmation il faut inclure la bibliothèque "Bounce" qu'il faut télécharger au préalable et l'inclure dans le logiciel. Bounce va éviter les rebonds ce qui permettra à l'interrupteur de fonctionner correctement.

Télécharger
programmation bouton.pdf
Document Adobe Acrobat 143.3 KB

Galerie montage

Sources

http://eskimon.fr
http://locoduino.org/
http://arduino.cc
http://openclassrooms.com
http://wikipedia.org
http://lamachinerie.org/

Écrire commentaire

Commentaires: 0