Talaan ng mga Nilalaman:

IoT RC Car Na May Smart Lamp Remote o Gateway: 8 Hakbang (na may Mga Larawan)
IoT RC Car Na May Smart Lamp Remote o Gateway: 8 Hakbang (na may Mga Larawan)

Video: IoT RC Car Na May Smart Lamp Remote o Gateway: 8 Hakbang (na may Mga Larawan)

Video: IoT RC Car Na May Smart Lamp Remote o Gateway: 8 Hakbang (na may Mga Larawan)
Video: HoveAir X1 Review: Elevate Your Adventures Ultimate Guide 2024, Nobyembre
Anonim
Image
Image
IoT RC Car Na May Smart Lamp Remote o Gateway
IoT RC Car Na May Smart Lamp Remote o Gateway
IoT RC Car Na May Smart Lamp Remote o Gateway
IoT RC Car Na May Smart Lamp Remote o Gateway

Para sa isang hindi nauugnay na proyekto, nagsusulat ako ng ilang code ng Arduino upang kausapin ang mga smart lamp at ilaw ng ilaw ng MiLight na mayroon ako sa aking tahanan.

Matapos kong magtagumpay sa pagharang ng mga utos mula sa mga wireless na remote, nagpasya akong gumawa ng isang maliit na kotseng RC upang subukin ang code. Ito ay lumabas na ang mga 2.4GHz na Remote na ginamit sa mga lamp na ito ay mayroong isang 360 touch ring para sa pagpili ng mga kulay at gumagana itong nakakagulat na mahusay para sa pagpipiloto ng isang RC car!

Bilang karagdagan, gamit ang MiLight gateway o ang ESP8266 MiLight hub, maaari mong makontrol ang kotse mula sa isang smartphone o anumang aparatong konektado sa Internet!

Hakbang 1: Ang Pinagmulan ng Proyekto na Ito

Ang proyektong ito ay batay sa isang linya ng mga wireless smart bombilya na dumating sa merkado ng ilang taon na ang nakakaraan. Una silang naibenta bilang LimitlessLED, ngunit mula noon ay magagamit sa ilalim ng mga kahalili na pangalan, tulad ng EasyBulb o MiLight.

Habang ang mga bombilya na ito ay madalas na ibinebenta bilang pagiging tugma sa WiFi, ngunit wala silang mga kakayahan sa WiFi at sa halip ay umasa sa isang gateway na kumukuha ng mga utos na ipinadala sa pamamagitan ng WiFi at isinalin ang mga ito sa isang pagmamay-ari na 2.4GHz wireless protocol. Kung nakakuha ka ng isang gateway, maaaring makontrol ang mga bombilya mula sa isang smartphone app, ngunit kung hindi mo, makontrol mo pa rin ang mga lamp na ito gamit ang mga standalone wireless remote.

Ang mga bombilya at ang mga remote ay pagmamay-ari, ngunit may mga pagsisikap na baligtarin ang engineer ng mga protocol at upang bumuo ng mga alternatibong open-source sa gateway ng WiFi. Pinapayagan nito ang ilang mga kagiliw-giliw na posibilidad, tulad ng paggamit ng mga remote para sa iyong sariling mga proyekto ng Arduino, tulad ng ipinakita sa Instructable na ito.

Hakbang 2: Pagkuha ng Tamang Remote

Pagkuha ng Tamang Remote
Pagkuha ng Tamang Remote

Ang mga bombilya at remote ng MiLight ay hindi kailanman sinadya upang buksan at sa gayon walang opisyal na dokumentasyon sa mga protokol. Mayroong maraming magkakaibang henerasyon ng mga bombilya at tiyak na hindi sila mapagpapalit.

Ginagamit ng proyektong ito ang remote para sa isa sa apat na uri ng mga bombilya na magagamit at alam kung paano makilala ang mga uri ng biswal ay makakatulong sa iyo na bumili ng tamang remote. Ang apat na uri ay:

  • RGB: Ang mga bombilya na ito ay may kontrol na kulay at ningning; ang remote ay may kulay na gulong at tatlong puting mga toggle button.
  • RGBW: Ang mga bombilya na ito ay magbibigay sa iyo ng pagpipilian sa pagitan ng isang kulay at isang solong lilim ng puti; ang remote ay mayroong kulay na gulong, isang ningning na slider, tatlong mga dilaw na effects button, at apat na mga dilaw na button na toggle ng grupo.
  • CCT: Ang mga bombilya na ito ay puting ilaw lamang, ngunit pinapayagan kang baguhin ang mga ito mula sa maligamgam na puti hanggang sa malamig na puti; ang remote ay may isang itim na control ring at puting mga pindutan ng itulak.
  • RGB + CCT: Ang mga bombilya ay maaaring magpakita ng mga kulay at maaaring mag-iba mula sa maligamgam na puti hanggang sa malamig na puti; ang remote ay ang pinaka kalat sa apat at maaaring makilala sa pamamagitan ng isang slider ng temperatura ng kulay, ilang mga kakatwang hugis na hugis na gasuklay at isang asul na light bar sa paligid ng mga gilid.

Ang proyektong ito ay ginawa gamit ang RGBW remote at gagana lamang ang istilo ng remote. Kung nais mong subukang gawin ang proyektong ito mismo, tiyaking nakakuha ka ng tamang remote dahil tiyak na hindi sila mapagpapalit *

DISCLAIMER: * Gayundin, hindi ko ganap na ginagarantiyahan ang proyektong ito ay gagana para sa iyo. Posibleng ang MiLight na mga tao ay maaaring nagbago ng protokol na ginamit sa RGBW remote mula nang bumili ako ng sarili ko maraming taon na ang nakakaraan. Dahil magdulot ito ng hindi pagkakatugma sa kanilang mga produkto, hinala ko malabong ito, ngunit nandiyan ang peligro.

Hakbang 3: Paggamit Gamit ang isang WiFi Gateway at Smartphone

Paggamit Gamit ang isang WiFi Gateway at Smartphone
Paggamit Gamit ang isang WiFi Gateway at Smartphone
Paggamit Gamit ang isang WiFi Gateway at Smartphone
Paggamit Gamit ang isang WiFi Gateway at Smartphone

Kung mayroon kang isang MiLight WiFi gateway, alinman sa isang opisyal, o sa DIY ESP8266 MiLight Hub, maaari mo ring kontrolin ang kotse gamit ang MiLight smartphone app sa isang telepono o tablet.

Habang ang radio protocol na ginamit ng mga bombilya ng MiLight ay hindi tugma sa WiFi, ang hub ay gumagana bilang isang tulay sa pagitan ng isang WiFi network at ng MiLight network. Ang RC buggy ay kumikilos tulad ng isang lampara, kaya't ang pagdaragdag ng tulay ay magbubukas ng kagiliw-giliw na posibilidad na kontrolin ang RC buggy mula sa isang smartphone o mula sa isang PC sa pamamagitan ng mga packet ng UDP.

Hakbang 4: Iba Pang Mga Sangkap

Iba Pang Mga Sangkap
Iba Pang Mga Sangkap

Ang tatlo sa mga sangkap ay nagmula sa SparkFun Inventor's Kit v4.0, kasama dito ang:

  • Hobby Gearmotor - 140 RPM (Pares)
  • Gulong - 65mm (Rubber Tyre, Pares)
  • Ultrasonic Distance Sensor - HC-SR04

Ang sensor ng distansya ay hindi ginagamit sa aking code, ngunit inilagay ko ito sa aking buggy dahil mukhang cool ito bilang mga faux headlight, plus naisip kong maaari ko itong magamit sa paglaon upang magdagdag ng ilang mga kakayahan sa pag-iwas sa banggaan.

Ang iba pang mga bahagi ay:

  • Ball Caster Omni-Directional Metal
  • Isang Arduino Nano
  • Arduino Nano radio shield RFM69 / 95 o NRF24L01 +
  • Isang driver ng motor na L9110 mula sa eBay
  • Mga kable ng lalaki hanggang babaeng jumper

Kakailanganin mo rin ang isang 4 na may hawak ng baterya at mga baterya. Ang aking mga larawan ay nagpapakita ng isang naka-print na may-hawak ng baterya ng 3D, ngunit kakailanganin mong bilhin nang magkahiwalay ang mga terminal ng tagsibol at marahil ay hindi ito sulit!

Kakailanganin mo rin ang isang 3D printer upang mai-print ang chassis (o maaari mo itong gawing labas ng kahoy, hindi ito masyadong kumplikado).

Isang Salita ng Pag-iingat:

Gumamit ako ng isang murang pag-clone ng Arduino Nano at nalaman na napainit kapag pinapatakbo ang kotse para sa anumang makabuluhang oras. Pinaghihinalaan ko na ito ay dahil ang 5V regulator sa murang clone ay under-rate at hindi maihatid ang kasalukuyang kinakailangan para sa wireless radio. Sinukat ko na ang Arduino at radyo ay gumuhit lamang ng 30mA, na kung saan ay mahusay sa loob ng mga panoorin para sa boltahe regulator sa isang tunay na Arduino Nano. Kaya't kung maiiwasan mo ang mga clone, naghihinala ako na wala kang isyu (ipaalam sa akin sa mga komento kung nakita mo kung hindi man!).

Hakbang 5: Pagsubok sa Arduino at Remote

Pagsubok sa Arduino at Remote
Pagsubok sa Arduino at Remote
Pagsubok sa Arduino at Remote
Pagsubok sa Arduino at Remote

Bago tipunin ang RC buggy, magandang ideya na suriin kung ang remote ay maaaring makipag-usap sa Arduino sa pamamagitan ng module ng radyo.

Magsimula sa pamamagitan ng paglalagay ng Arduino Nano sa ibabaw ng kalasag ng RF. Kung ang konektor ng USB ay nakaharap sa kaliwa sa tuktok na bahagi, ang wireless PCB ay dapat na nakaharap pakanan sa ibabang bahagi.

Ngayon, i-plug ang Arduino Nano sa iyong computer gamit ang isang USB cable at i-upload ang sketch na isinama ko sa zip file. Buksan ang serial monitor at itulak ang isang pindutan sa remote. Ang ilaw ay dapat na ilaw sa remote (kung hindi, suriin ang mga baterya).

Kung maayos ang lahat, dapat mong makita ang ilang mga mensahe sa terminal window sa bawat oras na pinindot mo ang isang pindutan. Patakbuhin ang iyong daliri sa paligid ng kulay ng gulong ugnay at obserbahan ang pagbabago ng mga halaga ng "Hue". Ito ang magtutulak sa sasakyan!

Tiyaking gumagana ang hakbang na ito, dahil walang point na magpapatuloy kung hindi ito gumagana!

Hakbang 6: Pagpi-print at Pag-iipon ng Chassis

Pagpi-print at Pag-iipon ng Chassis
Pagpi-print at Pag-iipon ng Chassis

Isinama ko ang mga STL file para sa mga naka-print na bahagi ng 3D. Para sa mga CAD file, maaari kang tumingin dito. Mayroong tatlong bahagi, isang kaliwa at kanang motor bracket at ang chassis.

Ang kaliwa at kanang mga braket ng motor ay maaaring ikabit sa mga motor gamit ang mga kahoy na turnilyo. Pagkatapos, ang mga braket ng motor ay nakakabit sa chassis gamit ang M3 nut at bolts (o pandikit, kung nais mo). Ang caster ay nakakabit sa harap ng chassis gamit ang apat na turnilyo at bolt.

Hakbang 7: Pagdaragdag ng Electronics

Pagdaragdag ng Elektronika
Pagdaragdag ng Elektronika
Pagdaragdag ng Elektronika
Pagdaragdag ng Elektronika

Bolt ang stepper driver sa chassis at ikabit ang mga wire mula sa motor sa turnilyo sa mga terminal sa driver. Ginamit ko ang sumusunod na mga kable:

  • Kaliwang pula ng motor: OB2
  • Kaliwang motor na itim: OA2
  • Tamang pula ng motor: OB1
  • Tamang itim na motor: OA1

Patakbuhin ang lakas mula sa positibong bahagi ng mga baterya patungo sa Vcc sa stepper driver na PCB at Vin sa Arduino. Patakbuhin ang negatibong bahagi ng mga baterya sa GND sa GND sa Arduino. Kakailanganin mong maghinang ng isang Y cable upang magawa ito.

Sa wakas, kumpletuhin ang electronics sa pamamagitan ng paggamit ng mga wire ng jumper upang ikonekta ang mga sumusunod na pin sa Arduino sa stepper motor driver:

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

Hakbang 8: Pagsubok sa Robot

Ngayon, itulak ang mga pindutan at tingnan kung gumagalaw ang robot! Kung ang mga motor ay tila nabaligtad, maaari mong ayusin ang mga kable sa robot, o maaari mo lamang mai-edit ang mga sumusunod na linya sa sketch ng Arduino:

L9110 pakaliwa (IB2, IA2); L9110 pakanan (IA1, IB1);

Kung kailangang palitan ang kaliwa at kanang mga motor, palitan ang mga numero sa panaklong, tulad ng:

L9110 pakaliwa (IB1, IA1); L9110 pakanan (IA2, IB2);

Upang baligtarin lamang ang direksyon ng kaliwang motor, palitan ang mga titik sa panaklong para sa kaliwang motor, tulad nito:

L9110 na natitira (IA2, IB2);

Upang baligtarin ang direksyon ng tamang motor, palitan ang mga titik sa panaklong para sa tamang motor, tulad nito:

Kanan sa L9110 (IB1, IA1);

Yun lang! Good luck at magsaya!

Inirerekumendang: