Mundarija:
- 1 -qadam: Operatsion prognozlari
- 2 -qadam: MQTT ma'lumotlar almashinuvi va konfiguratsiyasi
- 3 -qadam: Poezd nazoratchisi
- 4 -qadam: LEGO poezd nazorati
- 5 -qadam: Masofadan boshqarish pulti
- 6 -qadam: Sensorni boshqaruvchi
- 7 -qadam: Chiqish boshqaruvchisi
- 8 -qadam: Raspberry Pi va WiFi router
- 9 -qadam: tugagan nazoratchilar
Video: MQTT yordamida poezdda Wi -Fi nazorati modeli: 9 qadam
2024 Muallif: John Day | [email protected]. Oxirgi o'zgartirilgan: 2024-01-30 13:26
Eski TT poezd model tizimiga ega bo'lgan holda, men lokomlarni individual boshqarish haqida tasavvurga ega bo'ldim.
Buni yodda tutib, men bir oz oldinga qadam tashladim va faqat poezdlarni boshqarish uchun emas, balki butun tartib haqida qo'shimcha ma'lumotga ega bo'lish va boshqa narsalarni (lampalar, temir yo'l kalitlari …) boshqarish uchun nima kerakligini aniqladim.
Shunday qilib, WiFi boshqariladigan poezd tizimi modeli tug'ildi.
1 -qadam: Operatsion prognozlari
Asosiy tamoyil - har bir elementni yakka boshqaruvchidan yoki bir nechta nazorat manbalaridan boshqarish. Bu tabiiy ravishda umumiy jismoniy qatlamga, aniqrog'i WiFi - va umumiy aloqa protokoli MQTTga muhtoj.
Markaziy element - MQTT Broker. Har bir ulangan qurilmaga (poezd, sensor, chiqish …) faqat Broker orqali muloqot qilish mumkin va faqat Brokerdan ma'lumot olish mumkin.
Qurilmalarning yuragi - ESP8266 asosidagi WiFi boshqaruvchisi, MQTT brokeri esa Raspberry pi bilan ishlaydi.
Avvaliga Wi -Fi tarmog'i Wi -Fi router tomonidan ta'minlanadi va hamma narsa simsiz ulanadi.
Qurilmalarning 4 turi mavjud:
- Poezd boshqaruvchisi: 2 ta raqamli kirish, 1 ta raqamli chiqish, 2 ta PWM chiqishi (2 ta alohida shahar motorini boshqarish uchun), Sensorni boshqaruvchi: 7 ta raqamli kirish (kirish kalitlari, optosensorlar uchun …), - Chiqish boshqaruvchisi: 8 ta raqamli chiqish (temir yo'l kalitlari uchun), - WiFi masofadan boshqarish pulti: 1 ta qo'shimcha kodlovchi, 1 ta raqamli kirish (poezdlarni masofadan boshqarish uchun).
Tizim, shuningdek, Node-Red-dan (planshet, kompyuter yoki smartfondan) ishlashga qodir.
2 -qadam: MQTT ma'lumotlar almashinuvi va konfiguratsiyasi
MQTT protokoliga ko'ra, dastlab har bir qurilma berilgan mavzuga obuna bo'ladi va boshqa mavzuga nashr qilishi mumkin. Bu poezdlarni boshqarish tarmog'ining aloqa asosidir.
Bu muloqot ertaklari JSON formatidagi xabarlar orqali joylashtiriladi, ular qisqa va odamlarga tushunarli bo'ladi.
Uzoqroq nuqtai nazardan qaraydigan bo'lsak: Tarmoqda o'z SSID (tarmoq nomi) va parolga ega WiFi router mavjud. WiFi tarmog'iga kirish uchun har bir qurilma bu 2 ni bilishi kerak. MQTT brokeri ham ushbu tarmoqning bir qismidir, shuning uchun MQTT protokolidan foydalanish uchun har bir qurilma brokerning IP -manzilini bilishi kerak. Va nihoyat, har bir qurilmada obuna bo'lish va xabarlarni nashr etish uchun o'z mavzusi bor.
Amalda, masofadan boshqarish pulti ushbu poezdga obuna bo'lgan xabarlarni nashr qilish uchun xuddi shu mavzudan foydalanadi.
3 -qadam: Poezd nazoratchisi
O'yinchoq poezdini boshqarish uchun bizga 3 ta narsa kerak bo'ladi: quvvat manbai, Wi -Fi bilan ishlaydigan boshqaruvchi va motorli haydovchi elektronikasi.
Quvvat manbai haqiqiy foydalanish rejasiga bog'liq: LEGO bo'lsa, bu Power Functions akkumulyator qutisi, agar "oldschool" TT yoki H0 poezdlari bo'lsa, bu yo'lning 12V quvvat manbai.
Wi -Fi yoqilgan boshqaruvchi - bu Wemos D1 mini (ESP8266 asosidagi) boshqaruvchisi.
Motor haydovchisi elektronikasi TB6612 asosidagi moduldir.
Poyezd boshqaruvchisi 2 ta yakka boshqariladigan PWM chiqishiga ega. O'tkir biri dvigatelni boshqarish uchun, ikkinchisi yorug'lik signalizatsiyasi uchun ishlatiladi. Tarmoqli kontaktga asoslangan sezish uchun 2 kirish va bitta raqamli chiqish mavjud.
Nazoratchi JSON xabarlarini WiFi va MQTT protokoli orqali qabul qiladi.
SPD1 dvigatelni boshqaradi, masalan: {"SPD1": -204} xabari dvigatelni 80% quvvat bilan orqaga siljitish uchun ishlatiladi (maksimal tezlik qiymati -255).
SPD2 "yo'nalishga sezgir" LED yorug'lik intensivligini boshqaradi: {"SPD2": -255} xabari (orqaga) LEDni to'liq quvvat bilan yoritadi.
OUT1 raqamli chiqish holatini boshqaradi: {"OUT1": 1} chiqishni yoqadi.
Agar kirish holati o'zgarsa, boshqaruvchi unga muvofiq xabar yuboradi: {"IN1": 1}
Agar nazoratchi to'g'ri xabar olsa, u uni bajaradi va brokerga fikr bildiradi. Qayta aloqa - bu aslida bajarilgan buyruq. Masalan: agar broker {"SPD1: 280}" ni yuborsa, u holda vosita to'liq quvvat bilan ishlaydi, lekin teskari aloqa xabari: "" SPD1 ": 255}
4 -qadam: LEGO poezd nazorati
LEGO poezdida sxemalar biroz boshqacha.
Quvvat to'g'ridan -to'g'ri batareya qutisidan keladi.
ESP8266 asosidagi Lolin kartasi uchun 3,5 V kuchlanishli mini -pastga konvertorga ehtiyoj bor.
Ulanishlar LEGO 8886 uzatuvchi sim bilan amalga oshiriladi, ikkiga bo'linadi.
5 -qadam: Masofadan boshqarish pulti
Tekshiruvchi faqat poezdga xabar yuboradi (BCD tugmasi bilan belgilanadi).
Enkoderni aylantirish orqali pult {"SPD1": "+"} yoki {"SPD1": "-"} xabarlarini yuboradi.
Poyezd bu "qo'shimcha turdagi" xabarni olganida, PWM chiqish qiymatini 51 yoki -51 ga o'zgartiradi.
Shunday qilib, masofadan boshqarish pulti tezligini 5 qadamda (har bir yo'nalishda) o'zgartirishi mumkin.
Kattalashtiruvchi kodlovchi bosilganda {"SPD1": 0} yuboriladi.
6 -qadam: Sensorni boshqaruvchi
Sensorni boshqarish moslamasi uning kirish holatini o'lchaydi va agar ulardan birortasi o'zgarsa, bu qiymatni e'lon qiladi.
Masalan: {"IN1": 0, "IN6": 1}, bu misolda 2 ta kirish bir vaqtning o'zida holatini o'zgartirdi.
7 -qadam: Chiqish boshqaruvchisi
Chiqish boshqaruvchisi ULN2803 asosidagi modulga ulangan 8 ta raqamli chiqishga ega.
U obuna bo'lgan mavzusi orqali xabar oladi.
Masalan, "OUT4": 1, "OUT7": 1} xabari 4. va 7. raqamli chiqishni yoqadi.
8 -qadam: Raspberry Pi va WiFi router
Menda ishlatilgan TP-Link WiFI router bor edi, shuning uchun men uni kirish nuqtasi sifatida ishlatardim.
MQTT brokeri - Mosquitto o'rnatilgan Raspberry Pi.
Men MQTT bilan standart Raspbian operatsion tizimidan foydalanaman:
sudo apt-get mosquitto mosquitto-clients python-mosquitto
TP-Link yo'riqnoma Raspberry uchun manzilni bron qilish uchun tuzilgan bo'lishi kerak, shuning uchun har bir qayta ishga tushirilgandan so'ng, Pi bir xil IP-manzilga ega va har bir qurilma unga ulanishi mumkin.
Va bu hammasi!
9 -qadam: tugagan nazoratchilar
Mana, tugagan nazoratchilar.
TT o'lchovli loko shunchalik kichik o'lchamga ega ediki, Lolin taxtasi poezdga sig'adigan darajada kichik bo'lishi uchun uni toraytirish (kesish) kerak edi.
Tuzilgan ikkilik fayllarni yuklab olish mumkin. Xavfsizlik nuqtai nazaridan, axlat qutisi txt ga o'zgartirildi.
Tavsiya:
O'yinchoqni moslashtiring: WolVol poezdda ishlab chiqarilgan kalitga o'tish mumkin: 7 qadam
O'yinchoqni moslashtiring: WolVol poezdda ishlab chiqarishga o'tish mumkin!: O'yinchoqlarni moslashtirish yangi imkoniyatlar va moslashtirilgan echimlarni ochib beradi, bu esa harakat qobiliyati cheklangan yoki rivojlanishida nuqsoni bo'lgan bolalarga o'yinchoqlar bilan mustaqil muloqot qilish imkonini beradi. Ko'p hollarda, moslashtirilgan o'yinchoqlarni talab qiladigan bolalar kira olmaydilar
Ikki poezdda ishlaydigan temir yo'lning avtomatik modeli (V2.0) - Arduino asosidagi: 15 qadam (rasmlar bilan)
Ikki poezdda ishlaydigan temir yo'lning avtomatik modeli (V2.0) | Arduino asosidagi: Arduino mikrokontrolderlari yordamida temir yo'l modellarining modellarini avtomatlashtirish - bu mikrokontroller, dasturlash va temir yo'l modelini bir sevimli mashg'ulotiga birlashtirishning ajoyib usuli. Poyezdni temir yo'l vagonida avtonom boshqarishda ko'plab loyihalar mavjud
Oddiy avtomatlashtirilgan nuqta - ikkita poezdda ishlaydigan temir yo'l modeli: 13 qadam (rasmlar bilan)
Ikki poezdda ishlaydigan oddiy avtomatlashtirilgan temir yo'l modeli: Arduino mikrokontrollerlari arzon narxlardagi mavjudligi, ochiq manbali apparat va dasturiy ta'minoti va sizga yordam beradigan katta jamoatchilik tufayli temir yo'l modellarini avtomatlashtirishning ajoyib usuli. Namunaviy temir yo'llar uchun Arduino mikrokontrolerlari o'zlarini isbotlashlari mumkin
Ikki poezdda ishlaydigan temir yo'lning avtomatlashtirilgan modeli: 9 qadam
Ikki poyezdda ishlaydigan temir yo'lning avtomatlashtirilgan sxemasi: Men avtomatlashtirilgan modelli poezd sxemasini tuzdim, bir muncha vaqt o'tgach. Hamkasbimning iltimosiga binoan men buni ko'rsatmali qilib qo'ydim. Bu yuqorida aytib o'tilgan loyihaga biroz o'xshaydi. Reja ikkita poezdni o'z ichiga oladi va ularni navbatma -navbat boshqaradi
MQTT orqali masofadan boshqarish va foto nazorati: 8 qadam
MQTT orqali masofadan boshqarish va foto nazorati: Salom. Bugun men masofadan boshqarish va nazorat qilish tizimini, masalan, garaj eshiklarini, yoritishni, isitishni, bosimni nazorat qilishni, haroratni va boshqalarni boshqarish uchun qanday qilish kerakligi haqida gapirishni istardim. parametrlar. Ammo uning asosiy xususiyati