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


Mecanum Wheel Robot Car Full Package (avec batteries 18650)

Buy from US Buy from UK Buy from DE Buy from IT Buy from FR Buy from ES ここでご購入を!

Dans ce projet, nous allons connecter Robot Car au WIFI et utiliser une application pour contrôler la voiture via Internet. Il s’agit d’une application typique de l’Internet des objets (IoT).


Châssis de voiture robotique à roues OSOYOO Mecanum x 1 (2x roues gauches / 2x roues droites et moteur x 4)
Carte OSOYOO Mega2560 entièrement compatible avec Arduino  x 1
Bouclier Wi-Fi OSOYOO x 1
Pilote de moteur OSOYOO modèle Y x 1
Servomoteur OSOYOO MG90 x 1
Module de capteur à ultrasons OSOYOO x1
Support de montage à ultrasons OSOYOO
Module de capteur de suivi à 5 points OSOYOO
Fil de raccordement femelle à femelle OSOYOO 3 broches x1
Fil de connexion OSOYOO 6 broches mâle à femelle x2
Fil de raccordement femelle à femelle OSOYOO 7 broches x1
OSOYOO 2 broches XH.25 femelle à femelle x1
Boîtier de batterie OSOYOO x 1
Piles 18650 (3,7 V) x 2


Si vous venez de terminer la leçon 1 (assemblage de la voiture) et la leçon 4 (pilote d’imitation Bluetooth), veuillez conserver toutes les connexions de la leçon telles qu’elles sont. Ensuite, débranchez le Bluetooth de WIFI Shield.


Étape 1. Retirez la connexion B_TX à D18 et B_RX à D19.

Étape 2. Connectez E_RX à D18(TX1) et E_TX à D19(RX1).

(Remarque : vous avez besoin de séparer 2 fils de raccordement mâle-femelle de notre lot de 10 fils de raccordement. N’importe quelle couleur du lot sera correcte. Le reste des 8 fils sont des pièces de rechange pour les fils potentiellement cassés ou endommagés. )


Arduino open-source
Logiciel (IDE)
Téléchargez l’IDE Arduino ici:
https://www.arduino.cc/en/Main/Software?setlang=en
7 zip est un zip gratuit
utilitaire 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 postérieure à la version 1.1.16, veuillez ignorer cette étape). Téléchargez Arduino IDE à partir de 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 à partir de WiFiEsp-master.zip. Ouvrez l’IDE Arduino -> cliquez sur Esquisse -> Inclure la bibliothèque -> Ajouter la bibliothèque .ZIP, puis chargez le fichier zip ci-dessus dans Arduino.

Étape 3 : installation de l’application : vous devez rechercher « OSOYOO WIFI UDP Robot Car Controller » dans Google Play ou Apple Store, puis installer cette application.

Vous pouvez également télécharger l’APP directement à partir de https://osoyoo.com/driver/arduino-udp/udp-robot.apk

Étape 4 : Installation du code d’esquisse Arduino :

Télécharger: https://osoyoo.com/driver/mecanum_metal_chassis_m2/m2-lesson5.zip

Décompressez le fichier téléchargé, entrez dans le dossier m2-lesson5, vous verrez deux sous-dossiers :
m2-lesson5A and m2-lesson5B

Ces deux dossiers ont un programme pour deux modes WiFi : le mode AP et le mode STA. Les croquis Arduino pour ces deux modes sont différents. Expliquons ces deux modes un par un.

Lorsque vous travaillez en mode AP, notre voiture robot elle-même deviendra un point d’accès WIFI. Notre téléphone portable peut se connecter à Robot Car en tant que client wifi. L’adresse IP du Robot est fixée à 192.168.4.1 et il n’est pas connecté au WAN.
(1)  Décompressez le fichier m2-lesson5 et vous verrez un dossier nommé m2-lesson5a, téléchargez le code dans Arduino.

(2) Ouvrez votre moniteur série Arduino et vous verrez un résultat similaire au mode AP. Un nouveau SSID Wifi “osoyoo_robot” avec l’adresse IP 192.168.4.1 apparaîtra dans la fenêtre. Cela signifie que votre voiture robot a un nom de point d’accès WIFI “osoyoo_robot”, son adresse IP est 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 Paramètres de l’application.

(4) Connectez votre téléphone portable au hot_spot wifi “osoyoo_robot”, et vous pouvez utiliser le 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 “||” touche pause pour arrêter le mouvement de la voiture.
Cliquez sur Obstacle pour décaler vers la gauche, cliquez sur Tracking pour décaler vers la droite.
Cliquez sur F1 pour faire un mouvement en diagonale en haut à gauche, Cliquez sur F3 pour faire un mouvement en diagonale en haut à droite
Cliquez sur F4 pour faire un mouvement diagonal arrière-gauche, Cliquez sur F6 pour faire un mouvement diagonal arrière-droite.

En mode STA, la voiture robot ne fonctionne pas comme un hotspot wifi. Au lieu de cela, il deviendra un nœud Internet dans votre réseau local. Vous devez dire à Arduino sketch quel est le SSID et le mot de passe WIFI de votre routeur local, puis Arduino parle au routeur et obtient sa propre adresse IP LAN à partir du serveur DHCP. Vous pouvez utiliser Mobile APP pour accéder à l’adresse IP de la voiture robot et contrôler son mouvement.

(1) Décompressez le fichier m2-lesson5 et vous verrez un dossier nommé m2-lesson5B, puis chargez le code m2-lesson5B.ino dans Arduino.

(2) Vous devez changer le code Ligne 176 et Ligne 177 :

char ssid[] = “YOUR_ROUTER_SSID”; // remplacez-le par le SSID wifi de votre routeur

char pass[] = “YOUR_ROUTER_WIFI_PASSWORD”; //remplacer par votre mot de passe wifi

(3) Téléchargez le croquis sur Arduino. Enfin, cliquez sur la fenêtre du moniteur série dans le coin supérieur droit 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 mon routeur. Veuillez noter cette adresse IP et cliquer sur Paramètres pour configurer l’adresse IP du robot et définir cette adresse IP dans la section Paramètres de votre APP (pas besoin de changer le port par défaut 8888 dans l’APP).

(5)Maintenant que votre voiture robot est connectée à votre réseau local, vous pouvez utiliser un téléphone mobile sous le même réseau local pour contrôler la voiture robot. Si votre application est en WAN, vous devez accéder au panneau de configuration de votre routeur, transférer le port 80 vers l’adresse IP LAN de la voiture robot, puis vous pouvez utiliser l’adresse IP du routeur pour contrôler la voiture. Cette fonctionnalité fait de notre voiture robot un véritable appareil Internet of Thing

(6)Vous pouvez cliquer sur les touches de direction ◄ ► ▲ ▼ pour faire bouger la voiture. Utilisez “||” touche pause pour arrêter le mouvement de la voiture.
Cliquez sur Obstacle pour décaler vers la gauche, cliquez sur Tracking pour décaler vers la droite.
Cliquez sur F1 pour faire un mouvement en diagonale en haut à gauche, Cliquez sur F3 pour faire un mouvement en diagonale en haut à droite.
Cliquez sur F4 pour faire un mouvement diagonal arrière-gauche, Cliquez sur F6 pour faire un mouvement diagonal arrière-droite.

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

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

#define SPEED 150
#define TURN_SPEED 150
#define SHIFT_SPEED 140

SPEED value determines forward moving speed
TURN_SPEED value determines turning speed
SHIFT_SPEED value determines parallel shifting speed

Q 2)Que s’est-il passé lorsque vous avez appuyé sur des boutons dans l’application OSOYOO WiFi UDP Robot Car  ?
A: Lorsque vous appuyez sur un bouton de l’APP, l’APP enverra un message à une seule lettre via le protocole UDP à l’appareil cible (dans cet exemple, notre Arduino WIFI Shield)

Bouton Message UDP
F1 F
F2 G
F3 H
F4 I
F5 J
F6 K
A
B
R
L
square E
obstacle O
tracking T

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

Les lignes 233 à 250 du fichier m2-lesson5A.ino sont les codes qui réagissent à la commande du téléphone portable. Par exemple, lorsque ▲ est enfoncé, selon le tableau Q1, une commande de lettre “A” a été envoyée du téléphone portable à Arduino. Ligne 233 cas ‘A’ …. la déclaration fera avancer la voiture.

      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;
      }