Taula de continguts:

Cotxe RC IoT amb control remot o passarel·la de làmpada intel·ligent: 8 passos (amb imatges)
Cotxe RC IoT amb control remot o passarel·la de làmpada intel·ligent: 8 passos (amb imatges)

Vídeo: Cotxe RC IoT amb control remot o passarel·la de làmpada intel·ligent: 8 passos (amb imatges)

Vídeo: Cotxe RC IoT amb control remot o passarel·la de làmpada intel·ligent: 8 passos (amb imatges)
Vídeo: 187 Strassenbande - Mit den Jungs (Jambeatz) 2024, Desembre
Anonim
Image
Image
Cotxe RC IoT amb control remot de làmpada o passarel·la intel·ligent
Cotxe RC IoT amb control remot de làmpada o passarel·la intel·ligent
Cotxe RC IoT amb control remot de làmpada o passarel·la intel·ligent
Cotxe RC IoT amb control remot de làmpada o passarel·la intel·ligent

Per a un projecte no relacionat, havia estat escrivint algun codi Arduino per parlar amb els llums intel·ligents MiLight i els comandaments a distància de làmpades que tinc a casa meva.

Després d’haver aconseguit interceptar ordres dels comandaments a distància sense fils, vaig decidir fabricar un petit cotxe RC per provar el codi. Resulta que els comandaments a distància de 2,4 GHz que s’utilitzen en aquestes làmpades tenen un anell tàctil de 360 per seleccionar tonalitats i funciona sorprenentment per dirigir un cotxe RC.

A més, mitjançant la passarel·la MiLight o el hub MiLight ESP8266, podeu controlar el cotxe des d’un telèfon intel·ligent o qualsevol dispositiu connectat a Internet.

Pas 1: l’origen d’aquest projecte

Aquest projecte es basa en una línia de bombetes intel·ligents sense fils que va sortir al mercat fa uns anys. Inicialment es van vendre com a LimitlessLED, però des de llavors han estat disponibles amb noms alternatius, com EasyBulb o MiLight.

Tot i que aquestes bombetes es venen sovint com a compatibles amb WiFi, però no tenen cap capacitat WiFi i, en canvi, es basen en una passarel·la que pren ordres enviades per WiFi i les tradueix en un protocol sense fil de 2,4 GHz. Si teniu una porta d’entrada, les bombetes es poden controlar des d’una aplicació per a telèfons intel·ligents, però si no, podeu controlar aquestes làmpades mitjançant comandaments a distància sense fils independents.

Aquestes bombetes i els comandaments a distància són propietaris, però hi ha hagut esforços per fer un enginy invers dels protocols i crear alternatives de codi obert a la passarel·la WiFi. Això permet algunes possibilitats interessants, com ara utilitzar els comandaments a distància per als vostres propis projectes Arduino, tal com es demostra en aquest manual.

Pas 2: Obtenir el control remot adequat

Obtenir el control remot adequat
Obtenir el control remot adequat

Les bombetes i comandaments a distància MiLight mai no havien estat oberts i, per tant, no hi ha documentació oficial sobre els protocols. Hi ha hagut diverses generacions de bombetes i definitivament no són intercanviables.

Aquest projecte fa ús del comandament a distància per a un dels quatre tipus de bombetes disponibles i saber distingir visualment els tipus us ajudarà a comprar el comandament adequat. Els quatre tipus són:

  • RGB: aquestes bombetes tenen un to i una brillantor controlables; el comandament té una roda de colors i tres botons de commutació blancs.
  • RGBW: aquestes bombetes us permeten escollir entre una tonalitat i una sola tonalitat de blanc; el comandament té una roda de colors, un control lliscant de brillantor, tres botons d’efectes grocs i quatre botons de commutació de grup groc.
  • CCT: aquestes bombetes són només de llum blanca, però us permeten variar-les del blanc càlid al blanc fred; el comandament té un anell de control negre i polsadors blancs.
  • RGB + CCT: les bombetes poden mostrar colors i poden variar del blanc càlid al blanc fred; el comandament a distància és el més desordenat dels quatre i es pot distingir per un control lliscant de temperatura del color, alguns botons de mitja lluna i una barra de llum blava al voltant de les vores.

Aquest projecte es va fer amb el comandament a distància RGBW i només funcionarà amb aquest estil de comandament a distància. Si voleu provar de fer aquest projecte vosaltres mateixos, assegureu-vos que obteniu el comandament correcte, ja que definitivament no són intercanviables *

EXCLUSIÓ DE RESPONSABILITAT: * A més, no puc garantir absolutament que aquest projecte us funcioni. És possible que la gent de MiLight hagi canviat el protocol utilitzat al comandament RGBW des que vaig comprar el meu propi fa diversos anys. Com que això causaria incompatibilitats entre els seus productes, sospito que és poc probable, però hi ha el risc.

Pas 3: utilitzar-lo amb una passarel·la WiFi i un telèfon intel·ligent

Ús amb una passarel·la WiFi i un telèfon intel·ligent
Ús amb una passarel·la WiFi i un telèfon intel·ligent
Ús amb una passarel·la WiFi i un telèfon intel·ligent
Ús amb una passarel·la WiFi i un telèfon intel·ligent

Si teniu una passarel·la WiFi MiLight, ja sigui oficial, o el MiLight Hub DIY ESP8266, també podeu controlar el cotxe mitjançant l’aplicació per a telèfons intel·ligents MiLight d’un telèfon o tauleta.

Tot i que el protocol de ràdio utilitzat per les bombetes MiLight no és compatible amb WiFi, el concentrador funciona com un pont entre una xarxa WiFi i la xarxa MiLight. El buggy RC es comporta com ho faria una làmpada, de manera que afegir el pont obre la interessant possibilitat de controlar el buggy RC des d’un telèfon intel·ligent o des d’un PC mitjançant paquets UDP.

Pas 4: Altres components

Altres components
Altres components

Tres dels components provenien del SparkFun Inventor's Kit v4.0, que inclouen:

  • Motor de velocitat Hobby - 140 RPM (parell)
  • Roda - 65 mm (pneumàtic de goma, parell)
  • Sensor de distància per ultrasons - HC-SR04

El sensor de distància no s’utilitza al meu codi, però el poso al meu carro perquè sembla genial com a fars falsos, a més vaig pensar que podria utilitzar-lo més endavant per afegir algunes funcions de prevenció de col·lisions.

Els altres components són:

  • Roda de boles de metall omnidireccional
  • Un Arduino Nano
  • Escut de ràdio Nano Arduino RFM69 / 95 o NRF24L01 +
  • Un controlador de motor L9110 d’Ebay
  • Cables de pont masculí a femella

També necessitareu un suport de bateria de 4 AA i bateries. Les meves imatges mostren un suport de bateria imprès en 3D, però haureu de comprar els terminals de molla per separat i probablement no val la pena.

També necessitareu una impressora 3D per imprimir el xassís (o podríeu modelar-lo amb fusta, no és massa complicat).

Una paraula de precaució:

Vaig fer servir un clon Arduino Nano econòmic i vaig trobar que feia molta calor en conduir el cotxe durant un temps important. Sospito que això es deu al fet que el regulador de 5 V del clon econòmic està poc valorat i no pot proporcionar el corrent necessari per a la ràdio sense fils. Vaig mesurar que l'Arduino i la ràdio consumeixen només 30 mA, cosa que està ben dins de les especificacions del regulador de voltatge d'un Arduino Nano genuí. Per tant, si eviteu els clons, sospito que no tindreu cap problema (feu-ho saber als comentaris si trobeu el contrari!).

Pas 5: proveu Arduino i Remote

Provant Arduino i Remote
Provant Arduino i Remote
Provant Arduino i Remote
Provant Arduino i Remote

Abans de muntar el buggy RC, és una bona idea comprovar si el comandament a distància pot parlar amb l'Arduino a través del mòdul de ràdio.

Comenceu apilant l’Arduino Nano sobre l’escut RF. Si el connector USB està cap a l’esquerra a la part superior, el PCB sense fils hauria d’estar cap a la dreta a la part inferior.

Ara, connecteu l’Arduino Nano a l’ordinador mitjançant un cable USB i pengeu l’esbós que he inclòs al fitxer zip. Obriu el monitor sèrie i premeu un botó del comandament a distància. El llum s’hauria d’encendre al comandament (si no, comproveu les piles).

Si tot va bé, hauríeu de veure alguns missatges a la finestra del terminal cada vegada que premeu un botó. Passeu el dit per la roda tàctil de color i observeu els valors canviants de "Tonalitat". Això és el que conduirà el vehicle.

Assegureu-vos que aquest pas funcioni, ja que no té cap sentit procedir si no ho fa.

Pas 6: Impressió i muntatge del xassís

Impressió i muntatge del xassís
Impressió i muntatge del xassís

He inclòs els fitxers STL de les parts impreses en 3D. Podeu consultar aquí els fitxers CAD. Hi ha tres parts, un suport del motor esquerre i dret i el xassís.

Els suports del motor esquerre i dret es poden fixar als motors mitjançant cargols de fusta. A continuació, els suports del motor s’uneixen al xassís mitjançant cargols i femelles M3 (o cola, si ho preferiu). La roda s’uneix a la part frontal del xassís mitjançant quatre cargols i perns.

Pas 7: Afegir l'electrònica

Afegir l'electrònica
Afegir l'electrònica
Afegir l'electrònica
Afegir l'electrònica

Traieu el controlador pas a pas del xassís i fixeu els cables dels motors al cargol dels terminals del controlador. He utilitzat el cablejat següent:

  • Motor esquerre esquerre: OB2
  • Motor esquerre negre: OA2
  • Motor dret vermell: OB1
  • Motor negre dret: OA1

Executeu l’alimentació des del costat positiu de les bateries fins al Vcc del PCB del controlador de pas i el Vin a l’Arduino. Executeu el costat negatiu de les bateries cap a GND a GND a Arduino. Haureu de soldar un cable Y per aconseguir-ho.

Finalment, completeu l'electrònica mitjançant cables de pont per connectar els pins següents de l'Arduino al controlador del motor pas a pas:

  • Pin Arduino 5 -> Stepper Driver IB1
  • Pin Arduino 6 -> Stepper Driver IB2
  • Pin Arduino A1 -> Stepper Driver IA1
  • Pin Arduino A2 -> Stepper Driver IA2

Pas 8: provar el robot

Ara, premeu els botons i veure si el robot es mou. Si els motors semblen invertits, podeu ajustar el cablejat del robot o simplement editar les línies següents a l'esbós d'Arduino:

L9110 esquerra (IB2, IA2); L9110 dreta (IA1, IB1);

Si cal canviar els motors esquerre i dret, intercanvieu els números del parèntesi, com a tal:

L9110 esquerra (IB1, IA1); L9110 dreta (IA2, IB2);

Per invertir només la direcció del motor esquerre, canvieu les lletres del parèntesi pel motor esquerre, de la manera següent:

L9110 a l'esquerra (IA2, IB2);

Per invertir la direcció del motor dret, canvieu les lletres del parèntesi pel motor correcte, de la manera següent:

L9110 dreta (IB1, IA1);

Això és tot! Bona sort i diverteix-te!

Recomanat: