Applications pour cartes ARDUINO
Triporteur ARDUINO piloté par Bluetooth à partir d'un Smartphone Android
Ce programme B4R permet le pilotage à distance via
le système Bluetooth d'un petit véhicule à deux roues motrices que nous
appellerons "triporteur" soit à partir d'un
Smartphone Android, soit en utilisant les boutons d'une carte «Joystick
Shield».
1 - Construction du véhicule:
le «triporteur»
2 - Pilotage à partir d'un Smartphone
Android
3 - Pilotage avec les boutons d'une carte
Joystick Shield
4 - Nouveaux
programmes après modifications
Téléchargement des logiciels B4R et B4A, fichier APK, brochure
PDF
1 - Partie technologie Arduino: Construction et équipement du véhicule
Matériel: Une carte Arduino Uno, un quart de plaque de connexions
rapides, un module Bluetooth HC-05, un module L298N Shield, une fiche
mâle 5,5 X 2,5 pour l'alimentation de la carte Arduino, quelques LEDs blanches
pour les feux avant, 2 diodes rouges pré-câblées
pour les feux arrière, un buzzer qui servira de Klaxon, 2 batteries
rechargeables LI-ION de 3,7 volts et leur boîte de rangement avec couvercle, 1
petit interrupteur central, 3 résistances de 1 Kohm ,
1 résistance de 220 ohms, 1 LED bleue, câbles et jumpers pour les connexions,
un Smartphone Android disposant du système Bluetooth (ou une carte Joystick
Shield avec un second module Bluetooth HC-05).
Pièces détachées avant le montage du
«triporteur» - Notons que nous n'utilisons que la moitié de la
demi-plaque de connexions, soit un quart de plaque.
(Conseil: Sciez délicatement
cette plaque en deux avec une fine scie à métaux afin de ne pas endommager les
connecteurs métalliques incrustés.)
Châssis du triporteur assemblés avec leurs deux
moteurs
Ces deux modèles se trouvent facilement dans le
commerce en ligne spécialisé, le modèle de gauche est plus solide et les
moteurs sont pré-câblés
Composants installés sur le châssis:
de gauche à droite > Quart
de "breadboard" avec module Bluetooth HC-05, module L298N,
interrupteur général, carte Arduino Uno
Vue du triporteur renversé avec la boîte de rangement
des batteries Li-ION placée au dessous du support
Batteries mises en place avant la fermeture du
couvercle
Module Bluetooth HC-05 enfiché dans un quart de
"breadboard" à l'arrière
Connexion des moteurs, des modules et de la carte
Arduino Uno
Un petit interrupteur central facilement accessible
permet la mise sous tension du triporteur
Gros plan sur les connexions de la carte Arduino Uno
placée à l'avant du triporteur
Ajout d'un bouton "Test de fonctionnement des
moteurs" sur la mini-plaque de connexions
(L'appui
sur ce bouton-poussoir déclenche le test de fonctionnement des 2 moteurs: 3 secondes en marche avant puis 3 secondes en
marche arrière, même si le véhicule n'est pas connecté en Bluetooth)
Connexions du module L298N
Notez-bien que les cavaliers installés par défaut sur
les ports ENA et ENB doivent être retirés du module L298N afin de permettre les
variations de vitesse des deux moteurs.
Si vous laissez ces cavaliers en place, les
moteurs tourneront systématiquement à la même vitesse et le pilotage sera
réduit à marche avant et marche arrière à une vitesse constante.
Notes:
Si après le montage complet et les connexions réalisées, vous constatez des
dysfonctionnements du système, notamment lors des tests des moteurs, pas de
panique. Si une roue ou les 2 roues recule(nt) au lieu d'avancer, inversez les
connexions + et - aux sorties OUT1 (et/ou OUT2) de l'alimentation des moteurs.
Si le triporteur tourne à gauche au lieu de tourner à droite et inversement,
permutez simplement la connexion des câbles en provenance du module L298N
(broches ENA et ENB) au niveau des bornes 9 et 10 de la carte ARDUINO UNO. Tout
devrait rentrer dans l'ordre...
Améliorations techniques possibles
Il est
possible d'ajouter des composants au triporteur tels que feux lumineux (LEDs
bleues ou blanches à l'avant, feux rouges à l'arrière) et un klaxon sous
la forme d'un buzzer, composants que l'on pourra commander à distance à partir
du Smartphone (Voir plus bas les détails du poste de pilotage Bluetooth).
3 exemples d'éclairage avant, ci-dessus 3 LEDS bleues,
ci-dessous 3 LEDS blanches ...
6 LEDS blanches avant sur ce modèle de triporteur
Dans ce
cas, vous devez connecter les pôles positifs + des LEDs
et Diodes lumineuses à la broche digitale n° 13, prévoir éventuellement une
résistance de 220 Ohms pour protéger les LEDs de la surtension éventuelle.
Ci-dessus, les LEDS rouges utilisées sont pré-câblées
et disposent déjà d'une résistance intégrée sur le câble rouge.
En ce qui
concerne le klaxon (ou buzzer), connectez-le à la borne digitale n°3 (pôle
positif ou fil rouge) et le fil noir au pôle négatif (Borne - GND disponible
sur la carte Arduino Uno)
Ces
composants pourront désormais être commandés à distance .
2 - Application B4A Android
pour piloter le véhicule via le système Bluetooth d'un
Smartphone Android >>> Application B4A
3 - Utilisation des boutons d'une carte
Joystick Shield
Application
développée en Visual BASIC (B4R) - Version en langue française - Programme
disponible ici au téléchargement plus bas
Notez bien que cette proposition n'est utile que si l'utilisateur ne dispose pas d'un Smartphone Android compatible Bluetooth
Matériel
nécessaire: Une seconde carte ARDUINO UNO, une carte Joystick Shield clipée sur la carte Arduino Uno, un second module Bluetooth
HC-05 que l'on va rendre "maître" et qui transmettra les valeurs à
l'autre module Bluetooth installé sur le triporteur qui est déjà programmé
comme "esclave", une demi plaque de connexions, câbles et jumpers
pour les connexions, 3 résistances de 1 Kohm, une
résistance de 220 ohms, une LED pour visualiser la connexion Bluetooth avec le
triporteur.
Dispositif de pilotage Arduino par Bluetooth
Dispositif prêt à fonctionner
Nous allons
utiliser essentiellement les 4 boutons A, B, C, D pour piloter à distance notre
triporteur grâce à un deuxième module Bluetooth HC-05.
En plus des
4 boutons A, B, C et D utilisés pour la marche avant, le virage à droite, la
marche arrière et le virage à gauche, le gros bouton G du joystick permettra
désormais d'obtenir la marche avant rapide.
Dans le programme "4BoutonsShield.B4R" disponible ci-dessous en
téléchargement, les 4 boutons sont reliés en interne ainsi:
Bouton A > BtnA > broche D2
Bouton B > BtnB > broche D3
Bouton C > BtnC > broche D4
Bouton D > BtnD > broche D5
Petit Bouton
E > BtnE > broche D6 (Allumage
ou extinction des diodes lumineuses)
Petit Bouton
F > BtnF > broche D7 (Coups de klaxon)
et le gros
bouton G du joystick ( nommé BTJ dans le programme)
est relié à la broche D8
Boutons
utilisés |
Résultat
attendu |
Valeur
de X |
Valeur
de Y |
Vitesses |
↑ A ↑ |
Marche
avant |
127 |
80 |
90 |
↑ G ↑ Gros bouton du joystick |
Marche
avant rapide |
250 |
250 |
120 |
→ B → |
Rotation à
droite |
180 |
63 |
90 (roue D) 55 (roue G) |
↓ C ↓ |
Marche
arrière |
127 |
180 |
90 |
← D ← |
Rotation à
gauche |
63 |
63 |
55 (roue D) 90 (roue G) |
Aucun bouton pressé |
Arrêt des moteurs |
127 |
127 |
0 |
E |
Allumage ou extinction des LEDS |
249 |
249 |
0 |
F |
Klaxon: Marche ou arrêt du buzzer |
199 |
199 |
0 |
Schéma des connexions de la carte Joystick Shield Clipée sur une carte ARDUINO UNO
(NB - Il y a un port Bluetooth en haut et à droite de
la carte Joystick Shield mais il ne permet pas de transmettre correctement les
données - On se sert toutefois des broches + et - pour alimenter la demi-plaque
de connexions.)
La broche RX du module Bluetooth HC-05, protégée par 3
résistances de 1 Kohms est reliée à la broche D12 de
la carte Shield (et donc de la carte Arduino Uno) et la broche TX est reliée à
la broche D11.
Modifications à apporter au module
Bluetooth HC-05 pour qu'il devienne maître:
"Master"
Schéma de connexion du module HC-05 pour son
paramétrage Arduino
Démarrez ensuite l'environnement ARDUINO, cliquez sur
Outils pour sélectionner la carte Arduino Uno et connectez-la à votre
ordinateur
Ouvrez ensuite le "moniteur série".
Ensuite,
profitez de ce mode de connexion vous permettant d'enregistrer vos préférences
d'utilisation de ce module en utilisant les commandes "AT"
Commandes AT utiles:
AT + ROLE = 0 >>>
rend le module "esclave" (C'est le cas du module installé sur le
triporteur)
AT + ROLE = 1 >>>
rend le module "maître" (C'est ce que
nous voulons faire avec le module connecté aux 4 boutons de la carte Joystick
Shield)
AT + ROLE ? >>> Vous posez une question au module qui va vous
répondre par exemple: +ROLE:1
si vous avez déjà envoyé la commande précédente
AT + CMODE = 0 >>> connexion
avec un seul dispositif (toujours le même)
AT + CMODE = 1 >>> connexion
avec n'importe quel dispositif disponible
AT + CMODE ? >>> Vous
posez une qustion au module qui va vous répondre par exemple: +CMOD:1
si vous avez envoyé la commande précédente
AT + PSWD ? >>> Question
pour demander le mot de passe (PassWord), la réponse
sera certainement : +PSWD:1234
Moniteur Série de l'environnement Arduino permettant
de "dialoguer" avec le module Bluetooth HC-05
Vous constaterez ensuite que les deux modules HC-05 se
connectent automatiquement en quelques secondes, comme ci-dessous, chaque fois
que les deux systèmes ARDUINO sont "allumés".
LED rouge allumée: le module
HC-05 maître est connecté au module HC-05 esclave situé sur le triporteur (LED
bleue allumée)
Vidéo Premier
essai Vidéo ancien
système Vidéo Bouton TEST Moteurs Vidéo connexion Bluetooth
Vidéo Carte
Shield
Téléchargez
le programme B4R: "TriporteurARDUINO"
Téléchargez le programme B4R:
"4BoutonsShield"
Téléchargez la brochure pédagogique PDF en 32 pages
Les programmes TriporteurARDUINO.B4R et 4BoutonsShield.B4R ont été développés grâce à la plate-forme B4X