Table des matières:

Robot à 4 roues contrôlé par Wi-Fi : 6 étapes
Robot à 4 roues contrôlé par Wi-Fi : 6 étapes

Vidéo: Robot à 4 roues contrôlé par Wi-Fi : 6 étapes

Vidéo: Robot à 4 roues contrôlé par Wi-Fi : 6 étapes
Vidéo: Je monte & teste le kit VOITURE ROBOT INTELLIGENT V4.0 d'ELEGOO 2024, Novembre
Anonim
Robot à 4 roues contrôlé par Wi-Fi
Robot à 4 roues contrôlé par Wi-Fi

Pour ce projet, nous développerons un robot à 4 roues utilisant ESP8266 qui sera contrôlé via un réseau Wi-Fi. Le robot peut être contrôlé à partir d'un navigateur Internet ordinaire, à l'aide d'une interface conçue en HTML ou également à partir d'une application mobile Android. La puce ESP8266 est un microcontrôleur puissant et bon marché, non seulement facile à utiliser, mais également doté d'une connectivité Wi-Fi intégrée. C'est juste la puce parfaite pour contrôler les robots à distance depuis votre ordinateur ou appareil mobile.

Pour incorporer cette puce dans notre projet, nous pouvons utiliser une variété de cartes de développement basées sur ce microcontrôleur.

1. Adafruit Feather Huzzah - Il est fabriqué par Adafruit et dispose d'instructions et d'un support facilement disponibles. Il a un chargeur de batterie li-po sur la carte elle-même, il sera donc très utile dans les projets portables.

2. NodeMCU ESP8266 - La carte est open source et dispose d'une excellente documentation, il sera donc très facile de démarrer.

3. Sparkfun ESP8266 - C'est comme le Huzzah avec l'ajout d'un interrupteur d'alimentation et d'une antenne externe pour une portée Wi-Fi plus longue.

4. Wemos D1 Mini - C'est la plus petite de toutes les cartes mais cela n'a aucun effet sur les performances.

Pour mon projet, j'utilise Wemos D1 Mini pour fabriquer un robot à 4 roues contrôlé par Wi-Fi. Mais vous pouvez utiliser n'importe quelle carte de développement ESP8266 et utiliser le même code Arduino sans aucune modification requise. J'ai conçu un circuit imprimé pour ce projet, mais vous pouvez utiliser une carte de circuit imprimé à points pour implémenter le circuit ou même concevoir votre propre circuit imprimé.

Et nous utiliserons le kit de châssis robotique 4WD comme indiqué dans l'image ci-dessus car il est idéal pour le bricolage et est le kit de voiture robot le plus économique avec une structure mécanique simple.

Caractéristiques de ce kit:-

1. Livré avec quatre moteurs en plastique BO séparés avec boîte de vitesses, c'est bon pour la maniabilité.

2. Un grand châssis en acrylique robuste permet une grande extensibilité pour le bricolage.

3. Kit de châssis de voiture intelligent à quatre roues motrices. Très facile à installer, il suffit d'ajouter un micro-contrôleur (comme Arduino), et des modules de capteurs pour construire un robot entièrement autonome

Étape 1: liste des composants

Liste des composants
Liste des composants
Liste des composants
Liste des composants
Liste des composants
Liste des composants

Wemos D1 Mini [Quantité – 1]

Circuit intégré de pilote de moteur L293d [Quantité - 2]

IC d'extension de port PCF8574 [Quantité – 1]

Batterie lithium-ion 12V [Quantité – 1]

PCB robot contrôlé par Wi-Fi [Quantité – 1]

Kit de châssis de voiture intelligente pour robot 4 roues motrices [Quantité – 1]

Étape 2: Cerveau du projet - Carte de développement ESP8266 (Wemos D1 Mini)

Brain of the Project - Carte de développement ESP8266 (Wemos D1 Mini)
Brain of the Project - Carte de développement ESP8266 (Wemos D1 Mini)

Wemos D1 Mini est une mini carte de développement Wi-Fi avec 4 Mo de mémoire flash basée sur la puce ESP-8266.

  • Dispose de 11 broches d'entrée/sortie numériques, toutes les broches ont une interruption/pwm/I2C/un fil pris en charge (sauf D0)
  • Possède 1 entrée analogique (entrée 3.2V max)
  • Dispose d'une connexion Micro USB pour la programmation ainsi que d'une alimentation.

Cette carte telle qu'elle est basée sur ESP8266 est donc compatible Arduino IDE, elle peut donc être programmée à l'aide d'Arduino ou peut également être programmée à l'aide du compilateur Lua. Il prend également en charge la programmation série et OTA.

Nous allons programmer le Wemos D1 Mini en utilisant Arduino IDE. Pour programmer la carte à l'aide de l'IDE Arduino, les conditions suivantes doivent être remplies.

Exigence:-

  • Pilote CH340G
  • Installez le dernier IDE Arduino à partir du site Web Arduino.
  • Un câble micro usb pour la programmation

Après avoir installé le pilote et le logiciel arduino, vous devez installer le "noyau Arduino pour la puce WiFi ESP8266" à l'intérieur de l'IDE Arduino afin que nous puissions programmer la puce ESP8266 à partir de l'environnement Arduino. Ce noyau ESP8266 Arduino vous permet d'écrire des croquis à l'aide de fonctions et de bibliothèques Arduino familières, et de les exécuter directement sur ESP8266, aucun microcontrôleur externe n'est requis.

ESP8266 Arduino core est livré avec des bibliothèques pour communiquer via WiFi en utilisant TCP et UDP, configurer des serveurs HTTP, mDNS, SSDP et DNS, faire des mises à jour OTA, utiliser un système de fichiers en mémoire flash, travailler avec des cartes SD, des servos, des périphériques SPI et I2C.

Téléchargez le document suivant pour avoir une idée de la façon d'installer le noyau arduino Esp8266.

Étape 3: Pilote de moteur - L293d

Pilote de moteur - L293d
Pilote de moteur - L293d
Pilote de moteur - L293d
Pilote de moteur - L293d
Pilote de moteur - L293d
Pilote de moteur - L293d

Le pilote de moteur est un circuit intégré pour moteurs qui vous permet de contrôler la vitesse et la direction de travail de deux moteurs simultanément.

Le L293d est conçu pour fournir des courants d'entraînement bidirectionnels à des tensions de 5 V à 36 V. Le L293D peut entraîner 2 moteurs à courant continu simultanément.

L293D est un circuit intégré de commande de moteur à 16 broches. Il y a 4 broches INPUT, 4 broches OUTPUT et 2 broches ENABLE pour chaque moteur.

Caractéristiques du L293D:

Capacité de courant de sortie 600mA par canal

Contrôle de l'horloge et du sens antihoraire pour les canaux individuels

Description de la broche de L293d:

  • Broche 1: lorsque Enable1 est sur HIGH, la partie gauche du circuit intégré fonctionnera, c'est-à-dire que le moteur connecté à la broche 3 et à la broche 6 tournera.
  • Broche 2: entrée 1, lorsque cette broche est HAUTE, le courant passera par la sortie 1.
  • Broche 3: sortie 1, cette broche est connectée à une borne du moteur.
  • Broche 4/5: broches GND
  • Broche 6: sortie 2, cette broche est connectée à une borne du moteur.
  • Broche 7: entrée 2, lorsque cette broche est à l'état HAUT, le courant passera par la sortie 2.
  • Broche 8: VCC2, cette broche est utilisée pour alimenter les moteurs connectés de 5 V à 36 V maximum en fonction du moteur connecté.
  • Broche 9: lorsque l'activation 2 est HAUTE, la partie droite du circuit intégré fonctionnera, c'est-à-dire que le moteur connecté à la broche 11 et à la broche 14 tournera.
  • Broche 10: entrée 4, lorsque cette broche est à l'état HAUT, le courant passera par la sortie 4.
  • Broche 11: sortie 4, cette broche est connectée à une borne du moteur.
  • Broche 12/13: broches GND
  • Broche 14: sortie 3, cette broche est connectée à une borne du moteur.
  • Broche 15: entrée 3, lorsque cette broche est à l'état HAUT, le courant passera par la sortie 3.
  • Broche 16: VCC1, pour l'alimentation logique du circuit intégré, c'est-à-dire 5 V.

Ainsi, vous pouvez voir que vous avez besoin de 3 broches numériques pour contrôler chaque moteur (une broche pour le contrôle de la vitesse et deux broches pour le contrôle de la direction). Si un L293d contrôle deux moteurs à courant continu, nous aurons besoin de deux circuits intégrés L293d pour contrôler quatre moteurs à courant continu. Nous allons utiliser des moteurs BO en plastique pour ce projet. Ainsi, vous voyez, nous aurons besoin de 12 broches numériques pour contrôler les quatre moteurs à courant continu indépendamment avec contrôle de vitesse et de direction.

Mais si vous voyez Wemos D1 mini n'a que 11 broches d'E/S numériques et 1 broche analogique. Pour résoudre ce problème, nous allons connecter les quatre broches d'activation (deux broches d'activation du premier L293d et deux broches d'activation des autres L293d) aux broches Wemos Digital directement tandis que les huit broches d'entrée (quatre du premier L293d et quatre des autres L293d) en utilisant PCF8574 (une extension de port E/S) via I2C.

Étape 4: PCF8574 - une extension de port d'E/S

PCF8574 - une extension de port d'E/S
PCF8574 - une extension de port d'E/S
PCF8574 - une extension de port d'E/S
PCF8574 - une extension de port d'E/S

Wemos D1 Mini (c'est-à-dire ESP8266) manque de broches d'entrée/sortie. Nous pouvons augmenter les broches d'entrée/sortie numériques à l'aide d'un IC d'extension d'E/S comme PCF8574, qui est une extension d'E/S 8 bits.

L'un des avantages de l'utilisation de l'extenseur d'E/S PCF8574A est qu'il utilise le bus I2C, qui ne nécessite que deux lignes de données, à savoir l'horloge (SCK) et les données (SDA). Par conséquent, avec ces deux lignes, vous pouvez contrôler jusqu'à huit broches de la même puce. En changeant les trois broches d'adresse de chaque PCF8574, nous pouvons contrôler l'ensemble des 64 broches.

Cette extension d'entrée/sortie (E/S) 8 bits pour le bus bidirectionnel à deux lignes (I2C) est conçue pour un fonctionnement VCC de 2,5 V à 6 V. Le dispositif PCF8574 fournit une extension d'E/S distante à usage général pour la plupart des familles de microcontrôleurs via l'interface I2C [horloge série (SCL), données série (SDA)].

L'appareil dispose d'un port d'E/S quasi-bidirectionnel 8 bits (P0-P7), y compris des sorties verrouillées avec une capacité de pilotage à courant élevé pour piloter directement les LED. Chaque E/S quasi-bidirectionnelle peut être utilisée comme entrée ou sortie sans l'utilisation d'un signal de commande de direction de données. A la mise sous tension, les E/S sont élevées.

Voir le fichier pdf "PCF8574_With_L293d" ci-dessous pour le schéma de connexion du PCF8574 avec les deux circuits intégrés L293d

Étape 5: Schémas

Schémas
Schémas
Schémas
Schémas

J'ai utilisé Kicad pour la conception de circuits imprimés.

Téléchargez le pdf schématique ci-dessous pour concevoir votre propre circuit imprimé ou implémentez-le sur une carte de circuit imprimé à points.

Étape 6: Coder

Connectez-vous au point d'accès Wi-Fi suivant: -

// Identifiants réseau définis par l'utilisateurconst char* ssid = "WiFi_Robot";

const char* mot de passe = "Automate@111";

Après vous être connecté au point d'accès ci-dessus, accédez au lien ci-dessous dans un navigateur Web: -

192.168.4.1

Vous obtiendrez le message suivant:-

"Bonjour de Robot!"

192.168.4.1/fw

Cela fera avancer le robot

192.168.4.1/bk

Cela fera reculer le robot

192.168.4.1/lt

Cela fera bouger le robot vers la gauche

192.168.4.1/rt

Cela fera bouger le robot vers la droite

192.168.4.1/st

Cela entraînera l'arrêt du robot

Si vous le souhaitez, vous pouvez également contrôler le robot via l'application Android conçue par Robo India.

{Recherchez l'application Android "WiFi Robot Controller" sur le Playstore créé par Robo India}

[Remarque: Je ne suis en aucun cas connecté à Robo India et ce n'est pas pour de la publicité, c'est mon projet personnel !]

Vidéo de travail du projet: -

Conseillé: