I.Objectif
II.Pièces et appareils
III. Installation du matériel
IV. Installation du logiciel
VI.Comment jouer

Buy from US Buy from UK Besorgen DE Acquistare IT Acheter FR Comprar ES ここでご購入を!


Dans ce projet, nous allons connecter la voiture robot à un réseau Wi-Fi et utiliser une application pour contrôler la voiture via le Wi-Fi. Il s’agit d’une application typique de l’Internet des objets (IoT).

Les  leçons 1, leçons 2, leçons 3 doivent être terminées avant de faire cette leçon.

Télécharger les tutoriels PDF:https://osoyoo.com/manual/2021006600.pdf

Vidéo d’installation de la voiture robot OSOYOO: https://osoyoo.com/manual/2021006600.html


Châssis de voiture robotique à roues mécaniques OSOYOO x1
Roues et moteurs OSOYOO x4 (roues gauche x2/roues droite x2)
Carte OSOYOO Mega2560, entièrement compatible avec Arduino UNO/Mega2560 x1
Module Wi-Fi OSOYOO Uart x1
Carte de contrôle modèle Y OSOYOO x1
Voltmètre OSOYOO x1
Boîtier de batterie OSOYOO x1
Câble de pontage femelle-femelle à 3 broches OSOYOO x1
Câble de pontage mâle-femelle à 6 broches OSOYOO x2
Câble de pontage mâle-femelle à 10 broches OSOYOO x1
Câble XH.25 femelle-femelle à 2 broches OSOYOO x1
Batteries 18650 (3,7 V) x2
Chargeur de batterie x1


Si vous avez terminé les leçons 1 à 3 ainsi que la leçon 5 (imitation du pilote Bluetooth), veuillez conserver toutes les connexions des leçons telles qu’elles sont. Ensuite, débranchez le module Bluetooth du module Wi-Fi.

Étape 1 : Retirez la connexion B_TX vers D18 et B_RX vers D19.
Étape 2 : Connectez E_RX à D18 (TX1) et E_TX à D19 (RX1).
Seules les extrémités marquées B_ doivent être débranchées. L’ordre des broches TX et RX est inversé par rapport au Bluetooth.


Logiciel Arduino open source (IDE)  Téléchargez l’IDE Arduino ici:
https://www.arduino.cc/en/Main/Software?setlang=en
7 zip est un utilitaire zip gratuit qui décompresse les fichiers zip Téléchargez gratuitement 7zip ici
https://www.7-zip.org/

Étape 1 : Installez la dernière version de l’IDE Arduino (si vous disposez d’une version de l’IDE Arduino supérieure à 1.1.16, veuillez passer cette étape). Téléchargez l’IDE Arduino depuis le site https://www.arduino.cc/en/Main/Software?setlang=en, puis installez le logiciel.

Étape 2 : Veuillez télécharger le fichier zip de la bibliothèque WiFiEsp-master.zip. Ouvrez l’IDE Arduino → cliquez sur Sketch → Inclure une bibliothèque → Ajouter une bibliothèque .ZIP, puis chargez le fichier zip ci-dessus dans Arduino.

Étape 3 : Téléchargez le fichier https://osoyoo.com/driver/mecanum_acrylic_chassis_v2/mc-lesson6.zip, décompressez le fichier zip téléchargé mc-lesson6.zip, vous verrez un dossier appelé mc-lesson6.

Étape 4 : Installation de l’application – vous devez rechercher “OSOYOO Wi-Fi UDP Robot Car Controller” sur Google Play ou l’App Store, puis installer cette application.

Étape 5 : Installation du code de l’esquisse Arduino:

Décompressez le fichier téléchargé, entrez dans le dossier mc-lesson6, vous verrez deux sous-dossiers : mc-lesson6A et mc-lesson6B.

Ces deux dossiers contiennent des programmes pour deux modes Wi-Fi : le mode AP et le mode STA. Les esquisses Arduino pour ces deux modes sont différentes. Expliquons ces deux modes l’un après l’autre.

Lorsqu’il fonctionne en mode AP, notre voiture robot elle-même devient un point d’accès Wi-Fi. Notre téléphone portable peut se connecter à la voiture robot en tant que client Wi-Fi. L’adresse IP du robot est fixée à 192.168.4.1. Dans ce cas, la voiture robot et votre téléphone portable ne sont pas connectés à Internet.
(1)Décompressez le fichier mc-lesson6.zip, vous verrez un dossier nommé mc-lesson6A, téléversez le code dans Arduino.

(2) Ouvrez le moniteur série Arduino, et vous verrez un résultat similaire en mode AP. Un nouveau SSID Wi-Fi “osoyoo_robot” avec l’adresse IP 192.168.4.1 apparaîtra dans la fenêtre. Cela signifie que votre voiture robot dispose d’un point d’accès Wi-Fi nommé “osoyoo_robot” avec l’adresse IP 192.168.4.1

(3)Maintenant, votre voiture robot devient un point d’accès Wi-Fi et définissez l’adresse IP sur “192.168.4.1” dans la section des paramètres de votre application.

(4)Connectez votre téléphone portable au réseau Wi-Fi “osoyoo_robot” et vous pouvez utiliser votre téléphone portable pour contrôler la voiture robot.

(5)Vous pouvez cliquer sur les touches de direction ◄ ► ▲ ▼ pour faire avancer la voiture. Utilisez la touche “||” pour mettre en pause le mouvement de la voiture. Cliquez sur “Obstacle” pour décaler vers la gauche et cliquez sur “Tracking” pour décaler vers la droite.
Cliquez sur F1 pour un mouvement diagonal supérieur gauche, cliquez sur F3 pour un mouvement diagonal supérieur droit.
Cliquez sur F4 pour un mouvement diagonal inférieur gauche, cliquez sur F6 pour un mouvement diagonal inférieur droit.

En mode STA, la voiture robot ne fonctionne pas comme un point d’accès Wi-Fi. Au lieu de cela, elle devient un nœud Internet dans votre réseau local (LAN). Vous devez indiquer à l’esquisse Arduino le SSID et le mot de passe Wi-Fi de votre routeur local, puis Arduino communique avec le routeur et obtient sa propre adresse IP LAN à partir du serveur DHCP. Vous pouvez utiliser une application mobile pour accéder à l’adresse IP de la voiture robot et contrôler ses mouvements.

(1) Décompressez le fichier mc-lesson6, vous verrez un dossier nommé mc-lesson6b, puis chargez le code mc-lesson6b.ino dans Arduino.

(2) Vous devez modifier les lignes de code 180 et 181:

char ssid[] = “YOUR_ROUTER_SSID”; // remplacez cela par le SSID Wi-Fi de votre routeur
char pass[] = “YOUR_ROUTER_WIFI_PASSWORD”; // remplacez par le mot de passe de votre Wi-Fi

(3) Téléversez le sketch dans Arduino. Enfin, cliquez sur la fenêtre du moniteur série en haut à droite de l’IDE Arduino, vous verrez le résultat suivant :

(4)Dans ce mode, vous verrez une adresse IP, qui est notre adresse IP LAN attribuée par le routeur. Veuillez noter cette adresse IP 192.168.50.44 et cliquez sur “Setting” pour configurer l’adresse IP du robot et définir cette adresse IP 192.168.50.44 dans la section des paramètres de votre application (pas besoin de changer le port par défaut 8888 dans l’application).

(5)Maintenant, votre voiture robot est connectée à votre LAN. Vous pouvez utiliser un téléphone portable sur le même LAN pour contrôler la voiture robot. Si votre application est en WAN, vous devez accéder au panneau de configuration de votre routeur, rediriger le port 80 vers l’adresse IP LAN de la voiture robot, puis vous pourrez utiliser l’adresse IP du routeur pour contrôler la voiture. Cette fonctionnalité fait de notre voiture robot un véritable dispositif de l’Internet des objets.

(6)Vous pouvez cliquer sur les touches de direction ◄ ► ▲ ▼ pour faire avancer la voiture. Utilisez la touche “||” pour mettre en pause le mouvement de la voiture.
Cliquez sur “Obstacle” pour décaler vers la gauche et cliquez sur “Tracking” pour décaler vers la droite.
Cliquez sur F1 pour un mouvement diagonal supérieur gauche, cliquez sur F3 pour un mouvement diagonal supérieur droit.
Cliquez sur F4 pour un mouvement diagonal inférieur gauche, cliquez sur F6 pour un mouvement diagonal inférieur droit.


FAQ sur l’application WIFI UDP et le code de l’esquisse :

Q1) Comment régler la vitesse de la voiture robot ?
R : Si vous souhaitez modifier les performances de vitesse de la voiture robot, veuillez suivre les paramètres de la ligne 11 à 13 :

#define SPEED 85
#define TURN_SPEED 90
#define SHIFT_SPEED 130

La valeur SPEED détermine la vitesse de déplacement en avant.
La valeur TURN_SPEED détermine la vitesse de virage.
La valeur SHIFT_SPEED détermine la vitesse de décalage parallèle.

Q2) Que se passe-t-il lorsque vous appuyez sur les boutons de l’application OSOYOO WiFi UDP Robot Car ?
R : Lorsque vous appuyez sur un bouton de l’application, celle-ci envoie un message d’un seul caractère via le protocole UDP vers le périphérique cible (dans cet exemple, notre module Arduino WIFI Shield).

Q3) Comment Arduino gère-t-il la commande UDP ?

Les lignes 230 à 245 du fichier mecanum-2560-lesson5A.ino sont les codes qui réagissent à la commande du téléphone portable. Par exemple, lorsque ▲ est pressé, selon le tableau Q1, une commande de la lettre “A” est envoyée du téléphone portable à Arduino. L’instruction de la ligne 233 case ‘A’… fera avancer la voiture.

(Note: Please note that I translated the Q2 and Q3 questions as if they were referring to the Lesson 5 code, as mentioned in the original text. If they are actually referring to Lesson 6 code, please let me know and I will adjust the translation accordingly.)

char c=packetBuffer[0];
switch (c) //serial control instructions
{
case ‘A’:go_advance(SPEED);;break;
case ‘L’:left_turn(TURN_SPEED);break;
case ‘R’:right_turn(TURN_SPEED);break;
case ‘B’:go_back(SPEED);break;
case ‘E’:stop_Stop();break;
case ‘F’:left_shift(0,150,0,150);break; //left ahead
case ‘H’:right_shift(180,0,150,0);break; //right ahead
case ‘I’:left_shift(150,0,150,0); break;//left back
case ‘K’:right_shift(0,130,0,130); break;//right back
case ‘O’:left_shift(200,150,150,200); break;//left shift
case ‘T’:right_shift(200,200,200,200); break;//left shift
default:break;
}