Table des matières:

Voiture IoT RC avec télécommande ou passerelle Smart Lamp : 8 étapes (avec photos)
Voiture IoT RC avec télécommande ou passerelle Smart Lamp : 8 étapes (avec photos)

Vidéo: Voiture IoT RC avec télécommande ou passerelle Smart Lamp : 8 étapes (avec photos)

Vidéo: Voiture IoT RC avec télécommande ou passerelle Smart Lamp : 8 étapes (avec photos)
Vidéo: [domotique] TUYA WIFI ou ZIGBEE : Quel protocole choisir quand on débute en domotique ? 2024, Juillet
Anonim
Image
Image
Voiture IoT RC avec télécommande ou passerelle Smart Lamp
Voiture IoT RC avec télécommande ou passerelle Smart Lamp
Voiture IoT RC avec télécommande ou passerelle Smart Lamp
Voiture IoT RC avec télécommande ou passerelle Smart Lamp

Pour un projet sans rapport, j'avais écrit du code Arduino pour parler aux lampes intelligentes MiLight et aux télécommandes de lampes que j'ai chez moi.

Après avoir réussi à intercepter les commandes des télécommandes sans fil, j'ai décidé de fabriquer une petite voiture RC pour tester le code. Il s'avère que les télécommandes 2,4 GHz utilisées dans ces lampes ont un anneau tactile à 360 degrés pour sélectionner les teintes et cela fonctionne étonnamment bien pour diriger une voiture RC !

De plus, en utilisant la passerelle MiLight ou le hub ESP8266 MiLight, vous pouvez contrôler la voiture à partir d'un smartphone ou de tout appareil connecté à Internet !

Étape 1: L'origine de ce projet

Ce projet est basé sur une gamme d'ampoules intelligentes sans fil qui est arrivée sur le marché il y a quelques années. Ils étaient initialement vendus sous le nom de LimitlessLED, mais sont depuis disponibles sous d'autres noms, tels que EasyBulb ou MiLight.

Bien que ces ampoules soient souvent vendues comme compatibles WiFi, elles n'ont pas de capacités WiFi et reposent à la place sur une passerelle qui prend les commandes envoyées via WiFi et les traduit en un protocole sans fil propriétaire de 2,4 GHz. Si vous obtenez une passerelle, les ampoules peuvent être contrôlées à partir d'une application pour smartphone, mais si vous ne le faites pas, vous pouvez toujours contrôler ces lampes à l'aide de télécommandes sans fil autonomes.

Ces ampoules et télécommandes sont propriétaires, mais des efforts ont été déployés pour désosser les protocoles et créer des alternatives open source à la passerelle WiFi. Cela permet des possibilités intéressantes, telles que l'utilisation des télécommandes pour vos propres projets Arduino, comme démontré dans ce Instructable.

Étape 2: Obtenir la bonne télécommande

Obtenir la bonne télécommande
Obtenir la bonne télécommande

Les ampoules et télécommandes MiLight n'ont jamais été conçues pour être ouvertes et il n'y a donc pas de documentation officielle sur les protocoles. Il y a eu plusieurs générations différentes d'ampoules et elles ne sont certainement pas interchangeables.

Ce projet utilise la télécommande pour l'un des quatre types d'ampoules disponibles et savoir distinguer les types visuellement vous aidera à acheter la bonne télécommande. Les quatre types sont:

  • RVB: ces ampoules ont une teinte et une luminosité contrôlables; la télécommande a une roue chromatique et trois boutons à bascule blancs.
  • RGBW: Ces ampoules vous donnent le choix entre une teinte et une seule nuance de blanc; la télécommande a une roue chromatique, un curseur de luminosité, trois boutons d'effets jaunes et quatre boutons de bascule de groupe jaunes.
  • CCT: Ces ampoules sont à lumière blanche uniquement, mais vous permettent de les faire varier du blanc chaud au blanc froid; la télécommande a une bague de commande noire et des boutons poussoirs blancs.
  • RVB+CCT: les ampoules peuvent afficher des couleurs et peuvent varier du blanc chaud au blanc froid; la télécommande est la plus encombrée des quatre et se distingue par un curseur de température de couleur, quelques boutons en forme de croissant étranges et une barre lumineuse bleue sur les bords.

Ce projet a été réalisé avec la télécommande RGBW et ne fonctionnera qu'avec ce style de télécommande. Si vous voulez essayer de faire ce projet vous-même, assurez-vous d'avoir la bonne télécommande car elles ne sont certainement pas interchangeables*

AVIS DE NON-RESPONSABILITÉ: * En outre, je ne peux absolument pas garantir que ce projet fonctionnera pour vous. Il est possible que les gens de MiLight aient changé le protocole utilisé dans la télécommande RGBW depuis que j'ai acheté la mienne il y a plusieurs années. Comme cela entraînerait des incompatibilités entre leurs produits, je soupçonne que c'est peu probable, mais le risque est là.

Étape 3: Utilisation avec une passerelle WiFi et un smartphone

Utilisation avec une passerelle WiFi et un smartphone
Utilisation avec une passerelle WiFi et un smartphone
Utilisation avec une passerelle WiFi et un smartphone
Utilisation avec une passerelle WiFi et un smartphone

Si vous disposez d'une passerelle WiFi MiLight, qu'elle soit officielle, ou du DIY ESP8266 MiLight Hub, vous pouvez également contrôler la voiture à l'aide de l'application pour smartphone MiLight sur un téléphone ou une tablette.

Bien que le protocole radio utilisé par les ampoules MiLight ne soit pas compatible WiFi, le hub fonctionne comme un pont entre un réseau WiFi et le réseau MiLight. Le buggy RC se comporte comme une lampe, donc l'ajout du pont ouvre la possibilité intéressante de contrôler le buggy RC depuis un smartphone ou depuis un PC via des paquets UDP.

Étape 4: Autres composants

Autres composants
Autres composants

Trois des composants provenaient du SparkFun Inventor's Kit v4.0, notamment:

  • Motoréducteur Hobby - 140 RPM (Paire)
  • Roue - 65 mm (pneu en caoutchouc, paire)
  • Capteur de distance à ultrasons - HC-SR04

Le capteur de distance n'est pas utilisé dans mon code, mais je l'ai mis sur mon buggy car il a l'air plutôt cool comme de faux phares, et j'ai pensé que je pourrais l'utiliser plus tard pour ajouter des capacités de prévention des collisions.

Les autres composants sont:

  • Boule Roulette Omni-Directionnelle Métal
  • Un Arduino Nano
  • Bouclier radio Arduino Nano RFM69/95 ou NRF24L01+
  • Un pilote de moteur L9110 d'eBay
  • Câbles de démarrage mâle à femelle

Vous aurez également besoin d'un support de 4 piles AA et de piles. Mes photos montrent un support de batterie imprimé en 3D, mais vous devrez acheter les bornes à ressort séparément et cela n'en vaut probablement pas la peine !

Vous aurez également besoin d'une imprimante 3D pour imprimer le châssis (ou vous pouvez le façonner en bois, ce n'est pas trop compliqué).

Un mot d'avertissement:

J'ai utilisé un clone Arduino Nano bon marché et j'ai constaté qu'il devenait très chaud lorsque je faisais fonctionner la voiture pendant un certain temps. Je soupçonne que c'est parce que le régulateur 5V sur le clone bon marché est sous-estimé et ne peut pas fournir le courant nécessaire à la radio sans fil. J'ai mesuré que l'Arduino et la radio ne consomment que 30 mA, ce qui est bien dans les spécifications du régulateur de tension sur un véritable Arduino Nano. Donc, si vous évitez les clones, je soupçonne que vous n'aurez pas de problème (faites-moi savoir dans les commentaires si vous trouvez le contraire !).

Étape 5: Tester l'Arduino et la télécommande

Tester l'Arduino et la télécommande
Tester l'Arduino et la télécommande
Tester l'Arduino et la télécommande
Tester l'Arduino et la télécommande

Avant d'assembler le buggy RC, c'est une bonne idée de vérifier si la télécommande peut parler à l'Arduino via le module radio.

Commencez par empiler l'Arduino Nano sur le blindage RF. Si le connecteur USB est orienté vers la gauche en haut, le PCB sans fil doit être orienté vers la droite en bas.

Maintenant, branchez l'Arduino Nano sur votre ordinateur à l'aide d'un câble USB et téléchargez le croquis que j'ai inclus dans le fichier zip. Ouvrez le moniteur série et appuyez sur un bouton de la télécommande. Le voyant doit s'allumer sur la télécommande (sinon, vérifiez les piles).

Si tout se passe bien, vous devriez voir des messages dans la fenêtre du terminal à chaque fois que vous appuyez sur un bouton. Passez votre doigt autour de la roue tactile de couleur et observez les valeurs changeantes de "Teinte". C'est ce qui dirigera le véhicule!

Assurez-vous que cette étape fonctionne, car il ne sert à rien de continuer si ce n'est pas le cas !

Étape 6: Impression et assemblage du châssis

Impression et assemblage du châssis
Impression et assemblage du châssis

J'ai inclus les fichiers STL pour les pièces imprimées en 3D. Pour les fichiers CAO, vous pouvez regarder ici. Il y a trois parties, un support moteur gauche et droit et le châssis.

Les supports de moteur gauche et droit peuvent être fixés aux moteurs à l'aide de vis à bois. Ensuite, les supports du moteur se fixent au châssis à l'aide d'écrous et de boulons M3 (ou de colle, si vous préférez). La roulette se fixe à l'avant du châssis à l'aide de quatre vis et boulons.

Étape 7: Ajout de l'électronique

Ajout de l'électronique
Ajout de l'électronique
Ajout de l'électronique
Ajout de l'électronique

Boulonnez le pilote pas à pas sur le châssis et fixez les fils des moteurs aux bornes à vis du pilote. J'ai utilisé le câblage suivant:

  • Moteur gauche rouge: OB2
  • Moteur gauche noir: OA2
  • Moteur droit rouge: OB1
  • Moteur droit noir: OA1

Exécutez l'alimentation du côté positif des batteries vers le Vcc sur le PCB du pilote pas à pas et Vin sur l'Arduino. Exécutez le côté négatif des batteries vers le GND sur le GND sur l'Arduino. Vous aurez besoin de souder un câble en Y pour accomplir cela.

Enfin, complétez l'électronique en utilisant des cavaliers pour connecter les broches suivantes de l'Arduino au pilote du moteur pas à pas:

  • Broche Arduino 5 -> Pilote pas à pas IB1
  • Broche Arduino 6 -> Pilote pas à pas IB2
  • Broche Arduino A1 -> Pilote pas à pas IA1
  • Broche Arduino A2 -> Pilote pas à pas IA2

Étape 8: Test du robot

Maintenant, appuyez sur les boutons et voyez si le robot bouge ! Si les moteurs semblent inversés, vous pouvez soit ajuster le câblage sur le robot, soit simplement éditer les lignes suivantes dans le croquis Arduino:

L9110 gauche (IB2, IA2);L9110 droite(IA1, IB1);

Si les moteurs gauche et droit doivent être permutés, échangez les numéros entre parenthèses, ainsi:

L9110 gauche (IB1, IA1); L9110 droite (IA2, IB2);

Pour inverser uniquement le sens du moteur gauche, échangez les lettres entre parenthèses pour le moteur gauche, ainsi:

L9110 gauche (IA2, IB2);

Pour inverser le sens du moteur droit, échangez les lettres entre parenthèses pour le moteur droit, ainsi:

L9110 à droite (IB1, IA1);

C'est tout! Bonne chance et amusez-vous bien!

Conseillé: