Kontrol nirkabel tina motor Lego sareng Controller uap

Kontrol nirkabel tina motor Lego sareng Controller uap

Nalika kuring ngora, kuring sok hoyong gaduh set téknologi Lego pikeun ngawangun hal-hal anu keren. Tangki otonom kalayan turrets spinning anu seuneu bata Lego. Tapi harita kuring henteu ngagaduhan set sapertos kitu.

Sareng teu aya bata Lego biasa. Kuring ngan ukur gaduh réréncangan anu lanceukna ngagaduhan cocooan anu mahal ieu.

Sareng ayeuna kuring gaduh putra umurna. Sarta anjeunna ngawangun tanghi nu ... stupidly maju dugi aranjeunna nabrak kana témbok 🙂

Sareng ayeuna, waktosna pikeun ESP32 sareng sihir beusi patri - hayu urang ngumpul kadali jauh anu pas pikeun aranjeunna!

Henteu, tangtosna kuring terang ngeunaan ayana remot sapertos kitu. Tapi teu aya anu cocog pikeun kuring. Éta boh infra red, jeung téhnologi 80s, atawa badag teuing. Atawa anu mahal. Sareng anu paling penting, kuring moal tiasa nyarioskeun ka putra abdi ngeunaan salah sahijina: "Kuring ngalakukeun éta khusus pikeun anjeun!"

Janten hayu urang ngadamel kadali jauh énggal anu énggal pikeun ngatur sadayana!

Kontrol nirkabel tina motor Lego sareng Controller uap

bahan:

  • ESP32-WROOM-32D | WiFi, BLE sarta processor kalawan I / O - cukup pikeun ngadalikeun dua motor и LED.
  • DRV8833 | ganda H-sasak kalawan kakuatan cukup pikeun motor.
  • TPS62162 | tegangan turun ka 17V, ogé pikeun senang nalika soldering kasus WSON-8 2x2mm
  • CP2104 | pikeun programming ESP32
  • Konektor pikeun nyambungkeun motor jeung diodes. Potong kawat jeung solder aranjeunna dina handap, sarta lem konektor Lego di luhur.

Sadaya ieu bakal disimpen dina papan anu rada alit - ieu mangrupikeun penampilan na dina editor EasyEDA:

Kontrol nirkabel tina motor Lego sareng Controller uap

Kawat, anu katingali dina poto judul, diperyogikeun sanés pikeun ngabenerkeun sababaraha kasalahan, tapi pikeun nyayogikeun kakuatan tina USB. Bisa jadi teu cukup pikeun motor, tapi, hanjakalna, kontak ti Cina teu acan datang ka kuring. Ku alatan éta, kuring mimiti pariksa operasi tina LEDs. Pikeun kageulisan dina poto, kuring ngan nempatkeun konektor ti motor dina dewan.

Vérsi 1.1 dewan kuring (teu kawas versi 1.2 geus on EasyEDA) teu boga LEDs, jadi kuring soldered dua diodes anti paralel kana kaluaran sangkan kuring bisa ningali naon anu lumangsung. Upami anjeun ningal sacara saksama, pidéo nunjukkeun panyabutan alternatip tina sapasang dioda 0603, nunjukkeun gerakan maju / mundur.

Pikeun kadali jauh, mimitina kuring ngan ukur hoyong ngumpul papan tambahan kalayan tombol sareng ESP32 anu sanés - kadali jauh klasik.

Nanging, kuring émut yén Controllers uap gaduh mode operasi Bluetooth Low Energy (BLE). Kuring mutuskeun pikeun nungkulan masalah ieu, sarta sanggeus sababaraha jam kuring diajar kumaha carana nampa pakét ti controller nu.

Jang ngalampahkeun ieu, anjeun ngan kudu néangan hiji alat HID nu nyebut dirina SteamController tur sambungkeun ka dinya. Lajeng nganggo layanan undocumented ti Valve sarta sababaraha paréntah undocumented, ngamungkinkeun pangiriman pakét.

Kontrol nirkabel tina motor Lego sareng Controller uap

Kuring ogé datang di sakuliah hiji format laporan undocumented yén kuring parsed sacara manual.

Kontrol nirkabel tina motor Lego sareng Controller uap

Saatos sakitar sajam, hartos umbul sareng nilai janten écés pikeun kuring, sareng kuring junun ngacieupan LED nganggo pangontrol uap sareng ESP32. ¯_(ツ)_/¯

File

v1.0: "pendekatan percobaan"
- pilihan kahiji nu kuring milih regulator tegangan salah. TPS62291 ngan nyokot tegangan nepi ka 6V. Kuring ieu ngamekarkeun sababaraha proyék di paralel, sarta kuring poho yén alat nu kudu digawekeun ku 9V.

v1.1: "cukup atuh"
- pilihan ieu katingali dina video, sarta sagalana jalan

v1.2: "pamungkas"
- LED indikator ditambahkeun kana kaluaran jeung dioptimalkeun ukuran sarta perenah dewan

Video pondok di handap ieu nunjukkeun fase sambungan (1-3 detik saatos kakuatan) sareng kontrol kaluaran motor. Panyambung ti Lego teu acan nyambung. Bakal pindah ka rohangan kosong gigireun konektor séjén, ditandaan ku sagi opat bodas.

putra abdi ayeuna rutin ngagunakeun controller ieu ngadalikeun mesin anjeunna geus dirakit.

Salila tés setrés, kuring ngan ukur mendakan hiji masalah: Kuring ngira yén mode "buruk gancang" [buruk gancang] supir motor bakal dianggo pangsaéna, tapi kusabab éta, saatos sababaraha detik operasi, laju motor turun pisan. . Janten kuring ngarobih kode supados nganggo "slow decay" [slow decay].

Kontrol nirkabel tina motor Lego sareng Controller uap

Bari Kaula teu yakin kana kumaha DRV jalan na naha motor spins gancang di hareup, lajeng sanggeus 10 detik mimiti laun ngalambatkeun turun. Panginten MOSFET nuju panas sareng résistansina naék teuing.

Kuring miharep conto ieu kumaha ngagunakeun Arduino effortlessly mere ilham jalma sejen tur ngamungkinkeun aranjeunna pikeun ngawanohkeun barudak maranéhanana ka éléktronika.

sumber: www.habr.com

Tambahkeun komentar