meta données pour cette page
  •  

Différences

Ci-dessous, les différences entre deux révisions de la page.

Lien vers cette vue comparative

fr:arduino:ultrason [2025/01/16 20:24] – créée - modification externe 127.0.0.1fr:arduino:ultrason [2026/09/26 23:28] (Version actuelle) – Correction liens images (médias locaux / https) sebcanet
Ligne 1: Ligne 1:
 Tutoriel inspiré de [[http://tiptopboards.free.fr|http://tiptopboards.free.fr]] Tutoriel inspiré de [[http://tiptopboards.free.fr|http://tiptopboards.free.fr]]
  
-{{https://lh5.googleusercontent.com/-acqvPeDkp9k/UtQ3aHaG1FI/AAAAAAAABIc/U-ULKsjSPqQ/w400-h300-no/bluetooth_hc06_master.jpg?nolink&}}..{{https://lh6.googleusercontent.com/-eW4CRYoG2lk/UtQ3azhQlYI/AAAAAAAABIo/9ah0tv0RuKs/w400-h300-no/bluetooth_hc06_master_verso.jpg?nolink&}}\\+\\
 \\ \\
 **<font 150% line-height: 116%/inherit;;inherit;;inherit>Composants utilisés</font>    ** **<font 150% line-height: 116%/inherit;;inherit;;inherit>Composants utilisés</font>    **
Ligne 32: Ligne 32:
   * RXD –> Pin 1 (TX) noir   * RXD –> Pin 1 (TX) noir
  
-{{https://lh5.googleusercontent.com/-zhNRW8GElFQ/UtQ3Zhx2JtI/AAAAAAAABIU/geAl7m0-E-4/w600-h450-no/bluetooth_hc06_arduino.jpg?nolink&}} \\  \\ **<font 150% line-height: 116%/inherit;;inherit;;inherit>Important</font>    **+ \\  \\ **<font 150% line-height: 116%/inherit;;inherit;;inherit>Important</font>    **
   * Il faut croiser Rx et Tx entre le module et l'Arduino.   * Il faut croiser Rx et Tx entre le module et l'Arduino.
   * L'utilisation de Pin0 et Pin1 sur la carte Uno ne permet pas d'utiliser le serial monitor du PC en même temps, ni de téléverser (donc penser à débrancher ces 2 fils pour téléverser le code par le câble USB). Sinon, utiliser par exemple TxD=pin10, RxD=pin11.   * L'utilisation de Pin0 et Pin1 sur la carte Uno ne permet pas d'utiliser le serial monitor du PC en même temps, ni de téléverser (donc penser à débrancher ces 2 fils pour téléverser le code par le câble USB). Sinon, utiliser par exemple TxD=pin10, RxD=pin11.
Ligne 40: Ligne 40:
 Code : \\ ''Module de communication BlueTooth HC-06 avec Arduino \\ //Rolland 11 01 2014 //  \\ tiptopboards.com \\ //Programme de démo, le module HT-06 envoie des nouvelles données //  \\ chaque seconde au PC \\  \\  \\ int counter = 0; \\ unsigned long time; \\  \\ void setup() { \\ Serial.begin(9600); //Module bluetooth par défaut 9600, N, 8, 1 \\ pinMode(13, OUTPUT); // Led 13 de témoin OK \\ } \\  \\ void loop() { \\ digitalWrite(13, HIGH); // LED 13 ON \\ delay(100); \\ digitalWrite(13, LOW); // Off \\  \\ Serial.print("Test module HC-06 bluetooth "); \\ Serial.print(++counter); \\ Serial.print(" " ); \\ time = millis(); \\ Serial.println(time); \\ delay(1000); //Un envoi de données par seconde \\ }//'' \\ Code : \\ ''Module de communication BlueTooth HC-06 avec Arduino \\ //Rolland 11 01 2014 //  \\ tiptopboards.com \\ //Programme de démo, le module HT-06 envoie des nouvelles données //  \\ chaque seconde au PC \\  \\  \\ int counter = 0; \\ unsigned long time; \\  \\ void setup() { \\ Serial.begin(9600); //Module bluetooth par défaut 9600, N, 8, 1 \\ pinMode(13, OUTPUT); // Led 13 de témoin OK \\ } \\  \\ void loop() { \\ digitalWrite(13, HIGH); // LED 13 ON \\ delay(100); \\ digitalWrite(13, LOW); // Off \\  \\ Serial.print("Test module HC-06 bluetooth "); \\ Serial.print(++counter); \\ Serial.print(" " ); \\ time = millis(); \\ Serial.println(time); \\ delay(1000); //Un envoi de données par seconde \\ }//'' \\
  
-**<font 150% line-height: 116%/inherit;;inherit;;inherit>Installation du côté de votre PC</font>    **  \\ S'il l'ordinateur n'est pas pourvu d'origine d'une connectivité blutooth, lui ajouter un petit dongle Bluetooth sur un port USB et installer le driver correspondant. \\  \\ Vérifier que le bluetooth du PC est présent et actif : \\ Avec Windows7 : Ordinateur / Propriétés système / Gestionnaire de périphériques / Cartes réseau / Périphérique bluetooth. \\  \\ L'icône bluetooth doit se trouver dans la barre en bas de l'écran. \\  \\ **<font 150% line-height: 116%/inherit;;inherit;;inherit>Montage du module avec Arduino</font>    **  \\ Brancher le module HC-06 sur la breadboard. L'Arduino est alimenté en 9V par sa prise jack. \\ La led rouge du module clignote rapidement quand il n'est prêt mais <font 150% line-height: 116%/inherit;;inherit;;inherit>pas appairé</font>    . Elle est stable quand il est <font 150% line-height: 116%/inherit;;inherit;;inherit>jumelé</font>    à un autre dispositif bluetooth. \\  \\ {{https://lh6.googleusercontent.com/-CS3-b-eVGl8/UtQ3iidD15I/AAAAAAAABKM/1gaxYf56G_E/w664-h250-no/bluetooth_liste_hc06.jpg?nolink&}} \\ Cliquer sur le PC l'icône bluetooth et choisir le menu "Ajouter un périphérique". \\ {{https://lh5.googleusercontent.com/-LrUYU6HtZ2o/UtQ3bzI0olI/AAAAAAAABI0/KxxdUQddqsQ/w628-h479-no/bluetooth_ajouter_hc06.jpg?nolink&}} \\ Le PC reconnaît "HC-06 bluetooth", le choisir dans la liste et l'apparier. \\  \\ Choisir "Entrer le code de couplage du périphérique" (qui n'a pas de clavier) et taper 1234. \\ Le PC valide ce périphérique et l'ajoute "Votre périphérique et prêt à être utilisé". \\ Le mot de passe par défaut pourra être modifié ensuite. \\ {{https://lh3.googleusercontent.com/-MdhZ0SaIAkA/UtQ3jdhaKyI/AAAAAAAABKU/xSmxcaVJJt8/w619-h240-no/bluetooth_reconnu_hc06.jpg?nolink&}} \\ Le module apparaît dans la liste des dispositifs bluetooth disponibles (avec le téléphone mobile, le GPS, et divers autres bluetooth situés à proximité de l'ordinateur). \\  \\ Dans ses "<font 150% line-height: 116%/inherit;;inherit;;inherit>Propriétés</font>    " le module a un "Service : Port série SPP" (Serial Protocol via Bluetooth), par exemple ici "COM 12" (c'es un port Com virtuel). \\ Port COM13 = Entrant, et COM 12 = Sortant. \\ Bien noter le numéro du port utilisé pour la suite. \\ {{https://lh4.googleusercontent.com/-i0suEdMcqkY/UtQ3dARm5hI/AAAAAAAABJI/fcXufzXwP6c/w410-h508-no/bluetooth_hc06_1.jpg?nolink&}}{{https://lh4.googleusercontent.com/-JRoWu6Tj8SE/UtQ3dlaSdyI/AAAAAAAABJM/wJXduZICpxM/w413-h509-no/bluetooth_hc06_2.jpg?nolink&}}{{https://lh3.googleusercontent.com/-CnqRassNTJU/UtQ3eOo7zfI/AAAAAAAABJY/d_diki9cpTU/w407-h506-no/bluetooth_hc06_3.jpg?nolink&}}{{https://lh3.googleusercontent.com/-UF7ePQAdSJo/UtQ3e78mE_I/AAAAAAAABJc/zwLg0mA_-J8/w406-h510-no/bluetooth_hc06_4.jpg?nolink&}} \\  \\ {{https://lh3.googleusercontent.com/-3aGhpXtZNwc/UtQ3ckObstI/AAAAAAAABJA/fa8mK99srGU/w490-h355-no/bluetooth_dongle_peripherique.jpg?nolink&}} \\  \\ **<font 150% line-height: 116%/inherit;;inherit;;inherit>Console série sur l'ordinateur</font>    **  \\ Pour que le PC puisse communiquer par bluetooth avec le module, il lui faut une console série. \\ Dans les dernières versions de Windows comme Vista et Win7, "WindowsTerminal" n'est plus disponible. On peut le récupérer d'un vieux XP, ou installer gratuitement une autre console : <font 150% line-height: 116%/inherit;;inherit;;inherit>Putty</font>    , ou <font 150% line-height: 116%/inherit;;inherit;;inherit>Termite</font>    par exemple. \\  \\ <font 150% line-height: 116%/inherit;;inherit;;inherit>Lancer et régler le logiciel PUTTY</font>     \\ Télécharger Putty. \\ Dans son menu Category / Session/ Basic Options, configurer COM12, serial, 9600 bauds. \\ {{https://lh3.googleusercontent.com/-F4S5_AI3_wY/UtQ3glVAVcI/AAAAAAAABJ0/QXBLkUFGCXc/w462-h449-no/bluetooth_hc06_putty_com12.jpg?nolink&}} \\ Dans le menu Category / Serial/ paramétrer Serial line to connect = COM12, speed = 9600 baud, data bits=8, stop bit=1, parity=none, Flow Xi=on/Xoff. \\ {{https://lh6.googleusercontent.com/-D7mWRofZ7Mw/UtQ3hSoU38I/AAAAAAAABJ8/oMId4npPFz0/w457-h447-no/bluetooth_hc06_putty_com12open.jpg?nolink&}} \\ Puis lancer l'écoute sérielle avec Open. \\ Le module en mode maître cherche automatiquement le module esclave et se connecte. \\ La led du module bluetooth passe en allumé constant, il est alors connecté : Module → Ordinateur \\  \\ On récupère ainsi les données exportées par le module. \\ {{https://lh6.googleusercontent.com/-7taMNhWKZPs/UtQ3gMJ0vQI/AAAAAAAABJs/OCenbYbXsmU/w672-h421-no/bluetooth_hc06_putty.jpg?nolink&}} \\  \\ Dans Category / Session / Login on peut choisir Session loggin = all session output, pour récupérer en fichier texte les données envoyées par le module blutooth (enregistrées dans le fichier putty.log). \\ {{https://lh4.googleusercontent.com/-Nj2hpai1rlw/UtQ3iNVWTPI/AAAAAAAABKE/c0l81v6wrEI/w460-h444-no/bluetooth_hc06_putty_log.jpg?nolink&}} \\  \\ **<font 150% line-height: 116%/inherit;;inherit;;inherit>Lancer et régler le logiciel Termite 3.0</font>    **  \\ On peut aussi utiliser le logiciel <font 150% line-height: 116%/inherit;;inherit;;inherit>Termite 3.0 de CompuPhase</font>    qui permet d'envoyer et de recevoir des données de communication RS232 (série). \\ Son interface plus agréable présente une coloration différente pour les données transmises (bleu) et reçues (vert). \\ L'interface est de type "programme de Chat". En bas de l'écran de Termite, la barre permet de taper des commandes. \\ Des plugins permettent l'horodatage des messages reçus, un fichier INI mémorise la configuration du port série de Termite, etc… \\  \\ <font 150% line-height: 116%/inherit;;inherit;;inherit>Réglages</font>     \\ Dans le Menu Settings, commencer par paramétrer le port série (port = Com 12, baud=9600, 8data, 1 stop, no parity). \\ {{https://lh4.googleusercontent.com/-NGqiEa2woXU/UtQ3jzx3FCI/AAAAAAAABKc/GFCNR64Q1Ys/w530-h367-no/bluetooth_termite_config.jpg?nolink&}} \\ Le logiciel sur le PC reçoit les données du module bluetooth et les affiche en vert (avec horodatage si on l'a activé). \\ {{https://lh3.googleusercontent.com/-mBAwGHHrqhg/UtQ3baxI3TI/AAAAAAAABIs/WxL1KF6V0YU/w490-h364-no/bluetooth_termite_data.jpg?nolink&}} \\  \\  \\ **<font 150% line-height: 116%/inherit;;inherit;;inherit>Envoi de commandes AT au module Bluetooth</font>    **  \\ Une fois connecté (led allumée fixe), le module est en mode "transparent", et n'accepte plus les commandes AT. Ces commandes sont alors transmises directement au microcontrôleur. \\ Les commandes AT sont à envoyer <font 150% line-height: 116%/inherit;;inherit;;inherit>avant l'appariement</font>    . \\ Ne pas les terminer par \r \n (retour chariot, nouvelle ligne) avec ce module HC-06. \\  \\ Ce code Arduino envoie des commandes AT et affiche la réponse du HC-06 sur le monitor série du PC. Code: [[:fr:arduino:tout_selectionner|Tout sélectionner]] \\+**<font 150% line-height: 116%/inherit;;inherit;;inherit>Installation du côté de votre PC</font>    **  \\ S'il l'ordinateur n'est pas pourvu d'origine d'une connectivité blutooth, lui ajouter un petit dongle Bluetooth sur un port USB et installer le driver correspondant. \\  \\ Vérifier que le bluetooth du PC est présent et actif : \\ Avec Windows7 : Ordinateur / Propriétés système / Gestionnaire de périphériques / Cartes réseau / Périphérique bluetooth. \\  \\ L'icône bluetooth doit se trouver dans la barre en bas de l'écran. \\  \\ **<font 150% line-height: 116%/inherit;;inherit;;inherit>Montage du module avec Arduino</font>    **  \\ Brancher le module HC-06 sur la breadboard. L'Arduino est alimenté en 9V par sa prise jack. \\ La led rouge du module clignote rapidement quand il n'est prêt mais <font 150% line-height: 116%/inherit;;inherit;;inherit>pas appairé</font>    . Elle est stable quand il est <font 150% line-height: 116%/inherit;;inherit;;inherit>jumelé</font>    à un autre dispositif bluetooth. \\  \\  \\ Cliquer sur le PC l'icône bluetooth et choisir le menu "Ajouter un périphérique". \\  \\ Le PC reconnaît "HC-06 bluetooth", le choisir dans la liste et l'apparier. \\  \\ Choisir "Entrer le code de couplage du périphérique" (qui n'a pas de clavier) et taper 1234. \\ Le PC valide ce périphérique et l'ajoute "Votre périphérique et prêt à être utilisé". \\ Le mot de passe par défaut pourra être modifié ensuite. \\  \\ Le module apparaît dans la liste des dispositifs bluetooth disponibles (avec le téléphone mobile, le GPS, et divers autres bluetooth situés à proximité de l'ordinateur). \\  \\ Dans ses "<font 150% line-height: 116%/inherit;;inherit;;inherit>Propriétés</font>    " le module a un "Service : Port série SPP" (Serial Protocol via Bluetooth), par exemple ici "COM 12" (c'es un port Com virtuel). \\ Port COM13 = Entrant, et COM 12 = Sortant. \\ Bien noter le numéro du port utilisé pour la suite. \\  \\  \\  \\  \\ **<font 150% line-height: 116%/inherit;;inherit;;inherit>Console série sur l'ordinateur</font>    **  \\ Pour que le PC puisse communiquer par bluetooth avec le module, il lui faut une console série. \\ Dans les dernières versions de Windows comme Vista et Win7, "WindowsTerminal" n'est plus disponible. On peut le récupérer d'un vieux XP, ou installer gratuitement une autre console : <font 150% line-height: 116%/inherit;;inherit;;inherit>Putty</font>    , ou <font 150% line-height: 116%/inherit;;inherit;;inherit>Termite</font>    par exemple. \\  \\ <font 150% line-height: 116%/inherit;;inherit;;inherit>Lancer et régler le logiciel PUTTY</font>     \\ Télécharger Putty. \\ Dans son menu Category / Session/ Basic Options, configurer COM12, serial, 9600 bauds. \\  \\ Dans le menu Category / Serial/ paramétrer Serial line to connect = COM12, speed = 9600 baud, data bits=8, stop bit=1, parity=none, Flow Xi=on/Xoff. \\  \\ Puis lancer l'écoute sérielle avec Open. \\ Le module en mode maître cherche automatiquement le module esclave et se connecte. \\ La led du module bluetooth passe en allumé constant, il est alors connecté : Module → Ordinateur \\  \\ On récupère ainsi les données exportées par le module. \\  \\  \\ Dans Category / Session / Login on peut choisir Session loggin = all session output, pour récupérer en fichier texte les données envoyées par le module blutooth (enregistrées dans le fichier putty.log). \\  \\  \\ **<font 150% line-height: 116%/inherit;;inherit;;inherit>Lancer et régler le logiciel Termite 3.0</font>    **  \\ On peut aussi utiliser le logiciel <font 150% line-height: 116%/inherit;;inherit;;inherit>Termite 3.0 de CompuPhase</font>    qui permet d'envoyer et de recevoir des données de communication RS232 (série). \\ Son interface plus agréable présente une coloration différente pour les données transmises (bleu) et reçues (vert). \\ L'interface est de type "programme de Chat". En bas de l'écran de Termite, la barre permet de taper des commandes. \\ Des plugins permettent l'horodatage des messages reçus, un fichier INI mémorise la configuration du port série de Termite, etc… \\  \\ <font 150% line-height: 116%/inherit;;inherit;;inherit>Réglages</font>     \\ Dans le Menu Settings, commencer par paramétrer le port série (port = Com 12, baud=9600, 8data, 1 stop, no parity). \\  \\ Le logiciel sur le PC reçoit les données du module bluetooth et les affiche en vert (avec horodatage si on l'a activé). \\  \\  \\  \\ **<font 150% line-height: 116%/inherit;;inherit;;inherit>Envoi de commandes AT au module Bluetooth</font>    **  \\ Une fois connecté (led allumée fixe), le module est en mode "transparent", et n'accepte plus les commandes AT. Ces commandes sont alors transmises directement au microcontrôleur. \\ Les commandes AT sont à envoyer <font 150% line-height: 116%/inherit;;inherit;;inherit>avant l'appariement</font>    . \\ Ne pas les terminer par \r \n (retour chariot, nouvelle ligne) avec ce module HC-06. \\  \\ Ce code Arduino envoie des commandes AT et affiche la réponse du HC-06 sur le monitor série du PC. Code: [[:fr:arduino:tout_selectionner|Tout sélectionner]] \\
 **Module bluetooth HC06 envoi de commandes AT \\ **Module bluetooth HC06 envoi de commandes AT \\
 et affichage de la réponse du module \\ et affichage de la réponse du module \\
 D'après [[http://nicolasz68.blogspot.fr/2012/09/module-bluetooth-jy-mcu-v104-pour.html|http://nicolasz68.blogspot.fr/2012/09/module-bluetooth-jy-mcu-v104-pour.html]] **  \\  \\  \\ */* \\ #include <SoftwareSerial.h> Software Serial Port \\ #define RxD 10 Pin 10 pour RX (pin0=serial) vert \\ #define TxD 11 Pin 11 pour TX, on peut changer noir \\ SoftwareSerial BTSerie(RxD,TxD); \\  \\ void setup() \\ { \\ Serial.begin(9600); 115200 si on veut \\ delay(500); \\ Serial.println("Bonjour - Pret pour les commandes AT"); \\ Configuration du bluetooth \\ pinMode(RxD, INPUT); \\ pinMode(TxD, OUTPUT); \\ BTSerie.begin(9600); 57600 \\ delay(500); \\ BTSerie.print("AT+VERSION"); Demande le N° de version \\ delay(1000); \\ BTSerie.print("\n"); \\ } \\ void loop() \\ { \\ char recvChar; \\ On lit caractere par caractere sur le BTSerie et on affiche sur le Terminal Serie \\ if (BTSerie.available()) { \\ recvChar = BTSerie.read(); \\ Serial.print(recvChar); \\ } \\ Serial.write(blueToothSerial.read()); \\ if (Serial.available()) { \\ recvChar = Serial.read(); \\ BTSerie.write(recvChar); \\ } \\ } D'après [[http://nicolasz68.blogspot.fr/2012/09/module-bluetooth-jy-mcu-v104-pour.html|http://nicolasz68.blogspot.fr/2012/09/module-bluetooth-jy-mcu-v104-pour.html]] **  \\  \\  \\ */* \\ #include <SoftwareSerial.h> Software Serial Port \\ #define RxD 10 Pin 10 pour RX (pin0=serial) vert \\ #define TxD 11 Pin 11 pour TX, on peut changer noir \\ SoftwareSerial BTSerie(RxD,TxD); \\  \\ void setup() \\ { \\ Serial.begin(9600); 115200 si on veut \\ delay(500); \\ Serial.println("Bonjour - Pret pour les commandes AT"); \\ Configuration du bluetooth \\ pinMode(RxD, INPUT); \\ pinMode(TxD, OUTPUT); \\ BTSerie.begin(9600); 57600 \\ delay(500); \\ BTSerie.print("AT+VERSION"); Demande le N° de version \\ delay(1000); \\ BTSerie.print("\n"); \\ } \\ void loop() \\ { \\ char recvChar; \\ On lit caractere par caractere sur le BTSerie et on affiche sur le Terminal Serie \\ if (BTSerie.available()) { \\ recvChar = BTSerie.read(); \\ Serial.print(recvChar); \\ } \\ Serial.write(blueToothSerial.read()); \\ if (Serial.available()) { \\ recvChar = Serial.read(); \\ BTSerie.write(recvChar); \\ } \\ }
  
- \\  \\ {{https://lh3.googleusercontent.com/-K9G7aOZn6wk/UtQ3fldz1mI/AAAAAAAABJk/LEjY48dR2SU/w1043-h365-no/bluetooth_hc06_at.jpg?nolink&}} \\  \\ Commande de Test :+ \\  \\  \\  \\ Commande de Test :
  
   * <font 150% line-height: 116%/inherit;;#00BF00;;inherit>AT</font>    Réponse : <font 150% line-height: 116%/inherit;;#0000FF;;inherit>ATOK</font>   * <font 150% line-height: 116%/inherit;;#00BF00;;inherit>AT</font>    Réponse : <font 150% line-height: 116%/inherit;;#0000FF;;inherit>ATOK</font>