Mundarija:

IoT tarmoq nazoratchisi. 9 -qism: IoT, uy avtomatizatsiyasi: 10 qadam (rasmlar bilan)
IoT tarmoq nazoratchisi. 9 -qism: IoT, uy avtomatizatsiyasi: 10 qadam (rasmlar bilan)

Video: IoT tarmoq nazoratchisi. 9 -qism: IoT, uy avtomatizatsiyasi: 10 qadam (rasmlar bilan)

Video: IoT tarmoq nazoratchisi. 9 -qism: IoT, uy avtomatizatsiyasi: 10 qadam (rasmlar bilan)
Video: Qahvadan ko'ra ko'proq: Golang. Nima uchun Java dasturchilari GO tilini ikkinchi til sifatida o'rgan 2024, Iyul
Anonim
IoT tarmoq nazoratchisi. 9 -qism: IoT, uy avtomatizatsiyasi
IoT tarmoq nazoratchisi. 9 -qism: IoT, uy avtomatizatsiyasi

Voz kechish

BUNI BIRINChI O'QING

Ushbu yo'riqnomada elektr tarmog'idan foydalanadigan loyiha (masalan, Buyuk Britaniyada 240VAC RMS) batafsil tavsiflangan, shu bilan birga, xavfsiz amaliyot va yaxshi dizayn tamoyillaridan foydalanishga e'tibor berilsa -da, bu kuchlanish bilan ishlashda har doim halokatli elektr toki urishi xavfi mavjud. agar uning mazmuniga rioya qilish paytida shaxsiy shikastlanish yoki mulkka zarar etkazilsa, muallif hech qanday javobgarlikni o'z zimmasiga olmaydi. Shunday qilib, siz ushbu loyihani o'zingiz xavf ostiga qo'yasiz.

Muqaddima

Uy avtomatlashtirish bo'yicha ketma -ket 9 -chi maqolada, Sonoff 10A IoT tarmoq boshqaruvchisini uy sharoitida muvaffaqiyatli joylashtirish uchun zarur bo'lgan barcha dasturiy funktsiyalarni o'z ichiga olgan mavjud avtomatlashtirish tizimiga qanday kiritish va integratsiya qilish kerakligi to'g'risidagi hujjatlar keltirilgan.

Kirish

Yuqorida aytib o'tilganidek, iTead -dan Sonoff 10A -dan foydalanib, IoT tarmoq boshqaruvchisini qanday yaratish va birlashtirish kerakligi ko'rsatma. Qurilmaning o'zi 90 ~ 250VAC kuchlanishli 10 amper uchun baholangan, ammo bu amalga oshirish Buyuk Britaniyaning 240VAC RMS ichki ta'minotini ta'minlaydigan ulangan vilka orqali uni 5 amperga tushiradi.

Dizayn metodologiyasi MQTT/OpenHAB asosidagi IoT tarmog'iga uzluksiz integratsiyalashgan bo'lib, bu erda qayta ishlatilgan kod bo'yicha uyni avtomatlashtirish bo'yicha qurilgan. U, shuningdek, har qanday IoT tarmoq elementining yo'qolishini boshqarishi mumkin va mustaqil ravishda ishlashga qodir. Mustaqil rejimda qurilmani boshqarish faqat korpusning yuqori qismidagi boshqaruv tugmachasini bosish orqali amalga oshiriladi, bu esa mahsulotni oldinga uzatishni o'zgartiradi.

Sonoff qurilmasini mahalliy boshqarishni yoqish uchun GPIO14 korpusdan chiqariladi va tetiklash usuli sifatida ishlatiladi. Xavfsizlikni ta'minlash uchun, bu kirish optik-ulagich sxemasi orqali uzatiladi va plastik korpusga joylashtiriladi, shunda operator hech qachon tarmoq kuchlanishiga duch kelmaydi.

Nihoyat, nasrda Arduino IDE yordamida Sonoff 10A da ESP8266 qurilmasini qanday qayta dasturlash mumkinligi ko'rsatilgan va maqsadli kodni ishonchli dasturlash uchun ishlatilishi mumkin bo'lgan qurilmaning to'liq sxemasi ko'rsatilgan.

Menga qanday qismlar kerak?

Sonoff tarmoq nazoratchisi

  1. Bu erda Sonoff 10A 1 ta chegirmali
  2. Bu erda 1 ta 7805L 5V kuchlanish regulyatori
  3. Bu erda 240/6VAC 1,5VA transformatorni o'chirish
  4. Bu erda 0,1 ta sopol kondansatkichni o'chiring
  5. Bu erda 1 ta 1000uF @25v elektrolitik kondansatkich
  6. Bu erda 2W01 Bridge rektifikatori o'chirilgan
  7. Bu erda 2 ta 4K7 rezistorlar
  8. Bu erda 1 ta 330R qarshilik
  9. SPST tugmachasini 1 marta o'chirib qo'ying
  10. 1 ta Mulitcomp BM12W ABS muhofazasi bu erda
  11. Bu erda TIL111 opto-ulagichidan 1 chegirmali
  12. Bu erda 1 tomonlama 3 tomonlama terminal bloki
  13. Bu erda/bu erda 1 tomonlama 2 tomonlama kodli molex ulagichi
  14. Bu erda/bu erda 1 tomonlama 3 tomonlama kodlangan molex ulagichi
  15. Bu erda/bu erda 5 tomonlama kodli molex ulagichi
  16. Bu erda 5-tomonlama molex pinlari
  17. Bu erda Winbond SPI Flash (W25Q32FVSIG) 1 ta chegirmali
  18. Bu erda 1 ta 20 mm lik sug'urta ushlagichi + qopqoq
  19. Bu erda 1 marta 20 mm tez zarbali 500 mA sigortali
  20. Bu erda 2 ta poliamidli simi shnuri
  21. Buyuk Britaniyaning elektr tarmog'idan (BS1363/A) 1 ta o'chirish
  22. Buyuk Britaniyaning 1 ta asosiy rozetkasi (BS1363/A) bu erda
  23. 7 ta M3 16 mm CS neylon vintlardek, (shu jumladan, 10 ta yong'oq) bu erda/bu erda
  24. Bu erda 2 ta Zip aloqasi
  25. Bu erda 1 ta veroboard (0,1 dyuymli)
  26. Bu erda har xil uzunlikdagi 22swg kalaylangan mis sim
  27. Buyuk Britaniyaning 3M oq kabelini uzing
  28. Bu erda 10 ta Molex soket qisqichi

Sonoff dasturchi

  1. Bu erda 1 o'chirilgan LD33CV 3v3 kuchlanish regulyatori
  2. Bu erda TO-220 sovutgichidan 1 ta o'chirish
  3. Bu erda 1 ta sovutgich pastasi
  4. 1 off 10uF @16v elektrolitik kondansatör
  5. Bu erda 0,1 ta sopol kondansatör
  6. Bu erda SPDT tugmachasini 1 marta o'chiring
  7. Bu erda 1 ta 4K7 qarshilik
  8. Bu erda/bu erda 1 tomonlama 2 tomonlama kodli molex ulagichi
  9. Bu erda/bu erda 3 tomonlama kodlangan molex ulagichi
  10. Bu erda 5 ta Molex soket qisqichi
  11. Bu erda 1 ta 6 tomonlama molex rozetkasi
  12. Bu erda SPST tugmachasini 1 marta o'chiring
  13. Bu erda 2,1 mm PSU rozetkasini 1 marta o'chiring
  14. Bu erda 1 ta veroboard (0,1 dyuymli)
  15. Bu erda ketma -ket adapterga (FTDI) 1 ta o'chirish USB

Menga qanday dastur kerak?

  1. Arduino IDE 1.6.9 bu erda
  2. Arduino IDE ESP8266 ni dasturlash uchun tuzilgan. Bu yerga qarang; Arduino IDE-ni ESP8266-01 dasturlash uchun sozlash

Menga qanday vositalar kerak?

  1. Lehimlash temir,
  2. Matkaplar va turli xil bitlar (shu jumladan simi shtutserlari uchun pog'onali teshik kesgich va boshqaruv tugmasi),
  3. Tornavidalar (har xil),
  4. Sozlanishi kalitlar (ikkita yopiq, jag'ning kengligi> 25 mm, simi g'ildiraklari uchun),
  5. Fayllar (har xil),
  6. Qattiq vitse,
  7. Issiq qurol,
  8. DMM (yaxshisi CAT IV).

Menga qanday ko'nikmalar kerak?

  1. Elektronika va uy elektr xavfsizligi/dizayni/o'tkazgichlari va boshqalarni yaxshi bilishi,
  2. Arduino va uning IDE haqidagi bilimlari,
  3. Yaxshi ishlab chiqarish ko'nikmalari (lehim, payvandlash, burg'ulash va boshqalar),
  4. Bir oz sabr,
  5. Sizning uy tarmog'ingiz haqida bir oz tushuncha.

Mavzular qamrab olingan

  • Kirish
  • O'chirish haqida umumiy ma'lumot
  • Sonoff RetroMods
  • Qurilish va montaj tafsilotlari
  • Sonoff dasturlash adapteri
  • Dasturiy ta'minot tizimiga umumiy nuqtai
  • Dasturiy ta'minot haqida umumiy ma'lumot
  • OpenHAB konfiguratsiyasi
  • IoT qurilmangizni sinab ko'rish
  • Xulosa
  • Ishlatilgan adabiyotlar

Seriyali havolalar

8 -qism: WiFi IoT harorat va namlik sensori. Qism: 8 IoT, uy avtomatizatsiyasi

10 -qismga: IoT orqali IR masofadan boshqarish pulti. 10 -qism IoT, uy avtomatizatsiyasi

1 -qadam: O'chirish sxemasi

O'chirish haqida umumiy ma'lumot
O'chirish haqida umumiy ma'lumot
O'chirish haqida umumiy ma'lumot
O'chirish haqida umumiy ma'lumot
O'chirish haqida umumiy ma'lumot
O'chirish haqida umumiy ma'lumot
O'chirish haqida umumiy ma'lumot
O'chirish haqida umumiy ma'lumot

Sharh

Yuqorida aytib o'tilganidek, tarmoq boshqaruvchisini mahalliy yoqish va o'chirish uchun Sonoff ESP8266 bortiga kirish kerak edi. Bunday tashqi kirishni kiritish Sonoff ABS korpusining buzilishini talab qiladi va shuning uchun potentsial zarba xavfini keltirib chiqaradi. Buni bartaraf etish uchun men optik izolyatsiyadan foydalandim, shunda tarmoq boshqaruvchisi tizimining korpusidan tashqarida elektr toki bilan aloqa qilish ehtimoli yo'q edi.

Quyida opto-izolyatsiya sxemasining tavsifi keltirilgan (yuqoridagi 1-rasmda).

O'chirish tafsilotlari

Opto-izolyatsiya sxemasi to'g'ridan-to'g'ri elektr tarmog'idan quvvat oladi. 240VAC RMS J1 orqali pastga tushirish/izolyatsiya qilish transformatoriga J1 orqali qo'llaniladi, pheonix kontaktli MKDSN2, 5/3-5.08 poliamidli 3 tomonlama, 16A da 400V kuchlanishli, 2,5 mm (kvadrat) CSA va F1 500mA 20 mm simi o'tkazishga qodir. tez zarba sug'urtasi. TR1 ikkilamchi o'rashlarida mavjud bo'lgan 6VAC to'liq to'lqinli B1 diodli ko'prik bilan to'g'rilanadi.

To'liq to'lqinli rektifikatsiyalangan chiqindilar C1, C2 C3, R3 va IC1 tomonidan 7805L seriyali shunt regulyatori bilan barqaror va tartibga solinadi, bu esa yaxshi, toza 5v besleme temir yo'lini beradi.

Keyin 5v rayı OK1 va TIL111 opto-izolyatoriga kirishni J3 bo'ylab ulangan tashqi o'rnatilgan oq SPST tugmasi orqali nazorat qilish uchun ishlatiladi. TIL111 chiqishi Sonoff GPIO14 kirishiga R2 va 4K7 tortish qarshiligi orqali ulanadi. Shunday qilib, 340V dan yaxshiroq izolyatsiyaga erishiladi (ya'ni Peak kuchlanish = (240VAC*sqroot (2))).

2 -qadam: Sonoff RetroMods

Sonoff RetroMods
Sonoff RetroMods
Sonoff RetroMods
Sonoff RetroMods
Sonoff RetroMods
Sonoff RetroMods

Sonoff 10A qurilmasini birlashtirish uchun retrospektiv bir oz o'zgartirishlar kiritish kerak.

Birinchisi, yuqoridagi 1-rasmda ko'rsatilgandek, 5 tomonlama 0,1 dyuymli "pitch molex" ulagichini qo'shishdir. Bu esa, himoya qopqog'i yuqoridagi 2 va 3-rasmlarda bo'lgani kabi, Sonoff-da GPIO14-ga kirishga imkon beradi.

Yuqorida ko'rsatilmagan bo'lsa-da, men in-situ dasturlash uchun ketma-ket TX/RX liniyalarini chiqardim (yuqoridagi 1-qadamda SK1..3 kabel simlariga qarang).

Ikkinchi modifikatsiya - SPI Flash qurilmasining hajmini standart 1Mbaytdan 4Mbaytgacha oshirish, bu IoT veb -server fayllarini SPIFFS -da saqlash uchun etarli joy ajratishdir.

Men bu erda Ebaydan SMD SPI fleshkasini (W25Q32FVSIG) sotib oldim

Chiroqni almashtirish uchun men SMD qurilmasiga yaxshiroq kirish uchun 4 -rasmdagi Sonoff LEDini vaqtincha o'chirib tashladim. Chiroqni lehimlash uchun men 5-rasmda ko'rsatilgandek issiqlik tabancasidan foydalandim. Keyin mos ravishda 4Mbaytli Flash va LEDni qayta lehimladi (6-rasm).

3 -qadam: qurilish va montaj tafsilotlari

Qurilish va montaj tafsilotlari
Qurilish va montaj tafsilotlari
Qurilish va montaj tafsilotlari
Qurilish va montaj tafsilotlari
Qurilish va montaj tafsilotlari
Qurilish va montaj tafsilotlari
Qurilish va montaj tafsilotlari
Qurilish va montaj tafsilotlari

Men tarmoq boshqaruvchisini Mulitcomp BM12W ABS qutisiga joylashtirdim (yuqoridagi 1 -rasm). Bu korpusda izolyatsiyalangan guruchli M3 qo'shimchalari mavjud bo'lib, ular mahkamlash iplariga zarar bermasdan, qurilmaga ko'p marta kirishga imkon beradi, shunday qilib ichki sug'urta almashtirilishi mumkin yoki vaqt o'tishi bilan ichki tekshiruv o'tkazilishi mumkin (Sonoff qurilmasi uchun ham shunday deyish mumkin emas. bir marta faqat o'z -o'zidan tebranish yordamida yopiladi).

Elektr ta'minoti kabelining asosiy kuchlanishini kamaytirish M16 neylon/poliamid 6/6 oq simi g'ildiragi orqali amalga oshirildi, u OD Min/Maks 5 mm/10 mm simi.

Ikkilamchi kuchlanishni bartaraf etish kabelga bir marta bog'lab qo'yish orqali amalga oshirildi, agar haddan tashqari kuchlansa va simi g'ildiragi ishdan chiqsa, fermuar simini joyida ushlab turadi.

Sonoff va opto-izolyatsiyali elektronikani o'rnatish uchun simi shamshirlarini o'rnatish va etarli joy ajratish uchun men yuqorida ko'rsatilgan PCB ichki o'rnatish qovurg'alarini echib tashladim (2-rasm).

Barcha elektronikalar M3 neylonli vintlar yordamida mahkamlangan, bu korpusning tashqi ko'rinishi bilan izolyatsiyani ta'minlaydi. Opto-izolyatsiya elektronikasi 5 ta mahkamlash punkti bilan o'rnatiladi, bu qurilmaning mustahkam mexanik kuchliligini ta'minlaydi, shuning uchun izolyatsiya transformatorining massasi veroboard devorining uzilishiga yo'l qo'ymaydi.

Jihozni etkazib berish Buyuk Britaniyaning standart rang kodli oq 3 yadroli PVX izolyatsiyalangan ko'p tarmoqli (32/0,2 mm kvadrat) 1 mm (kv) CSA orqali amalga oshirildi. 10A yuk ko'tarish qobiliyatiga ega 7,2 mm OD bilan.

Qurilma Buyuk Britaniyaning elektr tarmog'iga (240VAC RMS) standart 3 pinli xavfsizlik rozetkasi (BS 1363/A) orqali ulangan. Elektr vilkasi 5A da ulangan.

Opto-izolyatsiyalash sxemasiga barcha elektr ta'minoti kabellari pheonix kontaktli MKDSN2 orqali ulangan, 500V kuchlanishli 16A kuchlanishli 5/3-5.08 poliamidli terminallar 2,5 mm (kv) CSA simi o'tkazishga qodir, shuning uchun ikkita kabel uchun etarli quvvatni ta'minlaydi. har bir pozitsiya.

Tarmoq kabellari kalaylanmagan, ulagich blokiga kiritilishidan oldin yadrolarning tarqalishini oldini olish uchun burilgan. Tarmoq kabellarini kalaylash - bu xavfli amaliyot, chunki lehim vaqt o'tishi bilan "bo'shashadi", natijada kabel ulagich blokida yo'qoladi.

Eslatma:

  • OD = Tashqi diametri.
  • VAC = Volt o'zgaruvchan tok
  • RMS = Ildiz o'rtacha maydoni
  • CSA = tasavvurlar maydoni
  • CS = hisoblagich cho'kdi

4 -qadam: Sonoff dasturlash adapteri

Sonoff dasturlash adapteri
Sonoff dasturlash adapteri
Sonoff dasturlash adapteri
Sonoff dasturlash adapteri
Sonoff dasturlash adapteri
Sonoff dasturlash adapteri
Sonoff dasturlash adapteri
Sonoff dasturlash adapteri

Sonoff 10A ni Arduino IDE orqali qayta dasturlashda ikkita jihatni hisobga olish kerak;

  1. ESP8266 -ni dasturlash uchun Arduino IDE -ni sozlash.
  2. Uskunani o'zi dasturlash harakati.

ESP8266 -ni dasturlash uchun Arduino IDE -ni sozlash

Ardino IDE-ni sozlash uchun ESP8266-01 dasturlash uchun Arduino IDE-ni sozlash bo'yicha ko'rsatmalarga amal qiling.

Uskunani dasturlash

Bu ko'p bosqichli jarayon, barcha holatlarda ESP8266 kabi. Bu erda Sonoff quvvati taxtaga tashqi stabilizatsiyalangan 3v3 DC manbai orqali va tarmoqdan emas. Sonoff -ga ma'lumotlarni yuborish va qabul qilish uchun ketma -ket USB qurilmasi talab qilinadi. TX va RX -ni 2 va 4 -rasmda ko'rsatilgandek ulang.

Dasturlash bosqichlari (umumiy)

  1. Birinchidan, Sonoffga tashqi elektr tarmog'i ishlatilmasligiga ishonch hosil qiling.
  2. Sonoff qurilmasidagi tugmani bosib turing. (yuqoridagi 1-rasm, qayta yonish tugmasi belgilangan),
  3. 1 -pin uchun tashqi DC 3v3 ta'minotini qo'llang (yuqoridagi 2 -rasm),
  4. Sonoff tugmachasini qo'yib yuboring,
  5. Endi qurilmani Arduino IDE orqali odatdagidek qayta dasturlash mumkin.

Ishlarni biroz osonlashtirish uchun men SK1… 3 kabellari orqali Sonoffga ulangan dasturiy qurilmani (3 va 4 -rasmlar) yaratdim (1 -ko'rsatmali qadamda tasvirlanganidek). Bu ESP8266 -ni osonroq dasturlash imkonini berdi. Shuningdek, u GPIO14ni R1, 4K7 tortish qarshiligi va S1 tugmachasi yordamida kirish vositasi sifatida sinovdan o'tkazdi.

Yuqoridagi dasturlash moslamasidan foydalanib (3 va 4 -rasmlar) Dasturlash bosqichlari:

  1. Sonoff-da qayta yoqish tugmachasini bosib ushlab turing,
  2. 3v3 ta'minotini bir zumda S2 tugmachasini bosib,
  3. Qayta yoqish tugmachasini qo'yib yuboring,
  4. Endi qurilmani dasturlash mumkin.

QAYD - OGOHLANTIRISH

Hech qanday holatda Sonoffni qayta dasturlash jarayonida quvvat Mains orqali ta'minlanmasligi kerak

5 -qadam: dasturiy ta'minot tizimiga umumiy nuqtai

Dasturiy ta'minot tizimiga umumiy nuqtai
Dasturiy ta'minot tizimiga umumiy nuqtai
Dasturiy ta'minot tizimiga umumiy nuqtai
Dasturiy ta'minot tizimiga umumiy nuqtai

Ushbu IoT tarmoq nazorat qilish moslamasi, asosan, ko'rsatiladigan WiFi IoT harorat va namlik sensori kabi oltita asosiy dasturiy komponentni o'z ichiga oladi. Qism: 8 IoT, uy avtomatizatsiyasi va yuqoridagi 1 -rasmda ko'rsatilgan, ba'zi sozlashlar bilan.

SPIFFS

Bu (4Mbaytgacha yangilangan) bortdagi SPI Flash fayllar tizimi va quyidagi ma'lumotlarni saqlash uchun ishlatiladi (yuqoridagi 2-rasmga qarang);

  • Belgilar va "Tarmoq boshqaruvchisi konfiguratsiyasi bosh sahifasi" html: IoT Wi -Fi tarmog'iga ulana olmaganda (odatda noto'g'ri xavfsizlik ma'lumotlari tufayli) IoT qurilmasi tomonidan xizmat ko'rsatiladi va foydalanuvchiga tarmoq boshqaruvchisini masofadan turib sozlash imkonini beradi. yangi SPIFFS tarkibini qayta dasturlash yoki yuklash zarurati.
  • Xavfsizlik haqida ma'lumot: Bu sizning IoT WiFi tarmog'ingizga va MQTT Brokeriga ulanish uchun IoT qurilmasi tomonidan ishlatilgan ma'lumotlarni o'z ichiga oladi. "Tarmoq boshqaruvchisi konfiguratsiyasi bosh sahifasi" orqali yuborilgan ma'lumotlar ushbu faylga yoziladi ('secvals.txt').

Eslatma: Dastlabki qurilmani sozlash uchun bu erda Arduino IDE bilan SPIFFS -dan qanday foydalanish haqida to'liq ma'lumotni ko'ring.

mDNS server

IoT qurilmasi Wi -Fi tarmog'iga Wi -Fi stantsiyasi sifatida ulana olmaganida va mahalliy Wi -Fi routeriga o'xshash Wi -Fi ulanish nuqtasiga aylanganda, bu funksiya chaqiriladi. Bunday yo'riqnoma bo'lsa, siz odatda unga 192.168.1.1 (odatda qutiga yopishtirilgan yorliqda bosilgan) kabi IP -manzilni to'g'ridan -to'g'ri brauzeringizning URL -satriga kiritish orqali ulanasiz, shunda siz kirish uchun kirish sahifasini olasiz. qurilmani sozlash uchun foydalanuvchi nomi va parol. ESP8266 AP rejimida (kirish nuqtasi rejimida) qurilma 192.168.4.1 IP -manzilini o'rnatadi, lekin mDNS -serverda faqat brauzer URL -satriga "MAINSCON.local" nomini kiritish kifoya. "Tarmoq boshqaruvchisi konfiguratsiyasi bosh sahifasi".

MQTT mijozi

MQTT mijozi barcha kerakli funktsiyalarni ta'minlaydi; o'z IoT tarmog'iga MQTT brokeriga ulaning, siz tanlagan mavzularga obuna bo'ling va berilgan mavzu bo'yicha yuklarni e'lon qiling. Muxtasar qilib aytganda, u IoT -ning asosiy funktsiyalarini ta'minlaydi.

HTTP veb -server

Yuqorida aytib o'tilganidek, agar IoT qurilmasi SSID, P/W va boshqalar SPIFFS -da saqlangan Xavfsizlik ma'lumoti faylida ko'rsatilgan WiFi tarmog'iga ulana olmasa, qurilma kirish nuqtasiga aylanadi. Kirish nuqtasi tomonidan taqdim etilgan Wi -Fi tarmog'iga ulanganingizdan so'ng, HTTP veb -serverining mavjudligi qurilmaga to'g'ridan -to'g'ri ulanish va HTTP veb -brauzeri yordamida uning konfiguratsiyasini o'zgartirish imkonini beradi, uning maqsadi - "Tarmoq boshqaruvchisi konfiguratsiyasi". Bosh sahifa veb -sahifasi, u SPIFFS -da joylashgan.

WiFi stantsiyasi

Bu funksiya IoT qurilmasiga Xavfsizlik ma'lumotlari faylidagi parametrlardan foydalangan holda mahalliy WiFi tarmog'iga ulanish imkoniyatini beradi, bu holda sizning IoT qurilmangiz MQTT Brokeriga obuna bo'la olmaydi/nashr qila olmaydi.

WiFi kirish nuqtasi

Wi -Fi kirish nuqtasi bo'lish qobiliyati - bu IoT qurilmasi unga ulanish va Wi -Fi stantsiyasi va brauzer (masalan, Apple iPad -dagi Safari) orqali konfiguratsiyani o'zgartirish imkonini beradi. Ushbu kirish nuqtasi SSID = "MAINSCON" + IOT qurilmasining MAC manzilining oxirgi 6 ta raqamini uzatadi. Bu yopiq tarmoq uchun parol "PASSWORD" deb nomlangan.

6 -qadam: Dasturiy ta'minotga umumiy nuqtai

Dasturiy ta'minot haqida umumiy ma'lumot
Dasturiy ta'minot haqida umumiy ma'lumot
Dasturiy ta'minot haqida umumiy ma'lumot
Dasturiy ta'minot haqida umumiy ma'lumot
Dasturiy ta'minot haqida umumiy ma'lumot
Dasturiy ta'minot haqida umumiy ma'lumot
Dasturiy ta'minot haqida umumiy ma'lumot
Dasturiy ta'minot haqida umumiy ma'lumot

PreambleT bu manba kodini muvaffaqiyatli kompilyatsiya qilish uchun sizga quyidagi qo'shimcha kutubxonalar kerak bo'ladi;

PubSubClient.h

  • Muallif: Nik O'Leary
  • Maqsad: Qurilmaga MQTT mavzularini berilgan broker yordamida nashr qilish yoki unga obuna bo'lish imkonini beradi
  • Manba:

Bounce2.h

  • Muallif: Tomas O Frederik
  • Maqsad: dasturiy ta'minotda kirish tugmachasini o'chirish
  • Manba:

Kodni ko'rib chiqish

Dastur 1-rasmda ko'rsatilgandek davlat mashinasidan foydalanadi (manba to'liq nusxasi quyida berilgan). Quyidagi kabi 5 ta asosiy shtatlar mavjud;

  • INIT

    Bu ishga tushirish holati - quvvat yoqilgandan keyin kiritilgan birinchi holat

  • NOKONFIG

    Agar bu holat yoqilganidan keyin noto'g'ri yoki yo'qolgan secvals.txt fayli aniqlansa, bu holat kiritiladi

  • NW kutilmoqda

    Bu holat vaqtinchalik, Wi -Fi tarmog'iga ulanmagan holda kiritilgan

  • MQTT kutilmoqda

    Bu holat vaqtinchalik, Wi -Fi tarmog'iga ulanish o'rnatilgandan keyin kiritiladi va shu tarmoqdagi MQTT brokeriga ulanish yo'q

  • AKTIV

    Bu Wi -Fi tarmog'iga ulanish va MQTT Broker ulanishi o'rnatilgandan so'ng kiritiladigan oddiy operatsion holat. Aynan shu holatda, tarmoq nazoratchisi MQTT brokeriga nashr qiladi va obuna bo'lgan mavzular orqali buyruqlar oladi

Shtatlar orasidagi o'tishni boshqaruvchi hodisalar yuqoridagi 1 -rasmda tasvirlangan. Shtatlar orasidagi o'tish ham SecValsning quyidagi parametrlari bilan boshqariladi;

  • Birinchi MQTT brokerining IP -manzili. AAA. BBB. CCC. DDD punktli kasr shaklida
  • Ikkinchi MQTT broker porti. Integer shaklida.
  • Uchinchi MQTT Broker ulanishi STA rejimidan AP rejimiga o'tishdan oldin amalga oshiriladi. Integer shaklida.
  • 4 -chi WiFi tarmoq SSID. Matn erkin shaklda.
  • WiFi tarmog'ining 5 -paroli. Matn erkin shaklda.

Yuqorida aytib o'tilganidek, agar IoT qurilmasi WiFi tarmog'iga Wi -Fi stantsiyasi sifatida ulana olmasa, SSIF va P/W SPIFFS -da saqlangan secvals.txt -da aniqlangan bo'lsa, kirish nuqtasi bo'ladi. Ushbu kirish nuqtasiga ulangandan so'ng, u 2 -rasmda ko'rsatilgandek ("MAINSCON.local" yoki 192.168.4.1 brauzerlarining URL manzil satriga kirgan holda) "Tarmoq boshqaruvchisi konfiguratsiyasi bosh sahifasi" ga xizmat qiladi. Bu uy sahifasi tarmoq boshqaruvchisini HTTP brauzeri orqali qayta sozlash imkonini beradi.

MQTT mavzusini nomlash konventsiyasi

Yuqoridagi 3 -rasmda MQTT mavzulari uchun ishlatiladigan nomlash konventsiyasi ko'rsatilgan va oldingi ko'rsatmamda ishlatilgan naqshga mos keladi (bu erda 5 -qadam).

Ushbu IoT qurilmasida ishlatiladigan MQTT mavzulari

Aniqlik uchun men ushbu qurilma nashr qiladigan/obuna bo'lgan mavzular va ular bilan bog'liq xabarlar ketma -ketligini hujjatlashtirdim (4 -rasm). Rasm shuningdek, korpusning tashqi qismidagi oq boshqaruv tugmasi bilan o'zaro ta'sirni ko'rsatadi (garchi bu tugma qizil rangda ko'rsatilgan bo'lsa ham).

ACTIVE holatida masofaviy konfiguratsiyaga kirish

MQTT Brokeriga ulanganingizdan so'ng, MQTT mavzusi nashrlari orqali qurilmaning xavfsizlik parametrlarini masofadan turib qayta sozlash mumkin. Secvals.txt bilan bog'langan fayl faqat yozish huquqiga ega.

Foydalanuvchi tuzatish

Yuklash ketma -ketligi paytida, Sonoff qurilmasi boshqaruvi quyidagi disk raskadrovka bo'yicha fikr -mulohazalarni beradi, lekin shuni ta'kidlash kerakki, buni ko'rish uchun siz qopqog'ini olib tashlashingiz va kontaktlarning zanglashiga olib qo'yishingiz kerak bo'ladi, shuning uchun faqat kodingizni ishlab chiqish va qurilmani quvvatlantirish paytida buni qilish tavsiya etiladi. 3v3 quvvat bilan;

  • 1 Qisqa flesh: SPIFFS (secvals.txt) da joylashgan konfiguratsiya fayli yo'q,
  • 2 qisqa yonish: IoT qurilmasi WiFi tarmog'iga ulanishga urinmoqda,
  • Doimiy yoritish: Sonoff IoT qurilmasi MQTT Brokeriga ulanishga urinmoqda.
  • O'chirilgan: qurilma faol va MQTT Brokeriga ulangan.

Eslatma 1: "Tarmoq boshqaruvchisi konfiguratsiyasi bosh sahifasi" xavfsiz rozetkalarni ishlatmaydi va shuning uchun sizning tarmog'ingiz xavfsizligiga tayanadi.

2 -eslatma: Bir nechta IoT qurilmalarini dasturlash uchun MQTT satrini har bir qurilmaga yuklab olishdan oldin tahrir qilish kerak bo'ladi. Buning sababi, tarmoq boshqaruvchisining identifikator raqami MQTT mavzular qatoriga kiritilgan. ya'ni. nashr etilgan dasturda men 100 qiymatini tanladim: 'WFD/MainsCont/100/Relay/Command/1' va mening 2 ta qurilmam uchun ular mos ravishda 1 va 2 raqamlangan.

  • 'WFD/MainsCont/1/Relay/Buyruq/1'
  • 'WFD/MainsCont/2/Relay/Buyruq/1'

3-eslatma: AKTIV holatida to'liqligi uchun IoT dasturi Sonoff LED-ni boshqarishga va qayta yoqish tugmachasining holatini e'lon qilishga imkon beradi. Garchi ular disk raskadrovka jarayonida faqat qiymatga ega bo'lsa -da, ular normal ish paytida foydalanuvchiga ta'sir qilmaydi.

7 -qadam: OpenHAB konfiguratsiyasi

OpenHAB konfiguratsiyasi
OpenHAB konfiguratsiyasi
OpenHAB konfiguratsiyasi
OpenHAB konfiguratsiyasi
OpenHAB konfiguratsiyasi
OpenHAB konfiguratsiyasi

Sinov maqsadida men uyning "yashash xonasida" ikkita tarmoq boshqaruvchisini shartli ravishda joylashtirishga qaror qildim. Bu OpenHAB sahifasiga 1 -rasmdagi kabi saytning asosiy sahifasi orqali kirish mumkin.

Men oldingi Instructable -da (bu erda) berilgan OpenHAB.sitemap konfiguratsiyasini o'zgartirdim va "Tarmoq boshqaruvchisi 1" va "Tarmoq boshqaruvchisi 2" uchun alohida yozuvlarni qo'shdim (yuqoridagi 2 -rasm). Men ikkita yangi IoT qurilmasining qabul qilgichida o'lchangan RSSI tendentsiyalarini ko'rsatish uchun yozuvlarni (Living Room Mains Contont 1 va 2) qo'shdim (3 -rasm).

Nihoyat, Sonoff -ning dinamik holatini sinxronlashtirishga va almashtirish grafikasidagi yomon urinishimni yangilash/jonlantirishga ruxsat berish uchun.rules va.items fayllariga yozuvlarni qo'shdim (kalit faol bo'lganda yopiladi va faol bo'lmaganida ochiladi). 2 -rasmda MC1 faol va MC2 faol bo'lmagan misol keltirilgan.

Eslatma 1: Agar siz OpenHAB -dan qanday foydalanishni bilmasangiz, "OpenHAB -ni sozlash va sozlash" bo'limiga qarang. 6 -qism: IoT, uy avtomatizatsiyasi

2 -eslatma: O'zgartirilgan sayt xaritasi, qoidalar va elementlar fayllari, piktogramma va boshqalarning nusxasi quyidagi zip faylda berilgan.

Eslatma 3: RSSI = Qabul qilingan signal kuchining ko'rsatkichi. Bu IoT qurilmasi sizning Wi -Fi tarmog'ingizni qanchalik yaxshi ko'rishining o'lchovidir.

8 -qadam: IoT qurilmangizni sinab ko'rish

Image
Image
IoT qurilmangizni sinab ko'rish
IoT qurilmangizni sinab ko'rish

Instructable WiFi IoT harorat va namlik sensori tasvirlanganidek. Bo'lim: 8 IoT, Uyni avtomatlashtirish 7-qadam, IoT qurilmasining dastlabki sinovlari MQTT Spy orqali MQTT ulanishi orqali amalga oshirildi (yuqoridagi 1-rasmda). oq tashqi tugma) va ketma -ket interfeysdagi disk raskadrovka. Bu menga obuna bo'lgan barcha mavzularni ishlatishga va e'lon qilingan javoblarni tekshirishga imkon berdi. Shunga qaramay, bu qo'lda olib borilgan va ko'p vaqt talab qilgan bo'lsa -da, bu xabarlarni/mavzu nashrlarini 100% qamrab olishga imkon berdi.

Dasturiy ta'minotning asosiy davlat mashinasi (yuqoridagi 6 -qadam), avvalgi yo'riqnomadan (8 -qism) meros bo'lib qolganligi sababli, dasturiy ta'minot WiFi N/W va MQTT Brokeriga ulanishi mumkin, bu to'g'ri ishlagan deb taxmin qilingan.

Tarmoq tekshirgichi va IoT infratuzilmasi yordamida tizimning to'liq sinovlari yakunlandi (yana 1 -rasm), bu safar IoT qurilmasi bilan o'zaro aloqani boshqarish uchun OpenHAB yordamida. IoT apparati va qo'g'irchoq yukini yuqoridagi 2 -rasmda ko'rish mumkin.

Videoda tizim sinovlari haqida to'liq ma'lumotlar berilgan va OpenHAB qurilmalari (PC/Chrome va iPad/OpenHAB APP) o'rtasida sinxronizatsiya real vaqtda aniq ko'rsatilgan. Bundan tashqari, MQTTSpy orqali tarmoq nazoratchilariga jonli xabar yuborish (MQTT brokerini sozlash haqida batafsil ma'lumot uchun bu erga qarang. 2 -qism: IoT, uy avtomatizatsiyasi) va malina pi serveridan OpenHAB quyruqli tizim jurnali PuTTY SSH ulanishi orqali (qo'shimcha ma'lumot uchun bu erga qarang. tafsilotlar OpenHAB -ni sozlash va sozlash 6 -qism: IoT, uy avtomatizatsiyasi).

Eslatma: Dasturiy ta'minotning oxirgi chiqarilishi uchun disk raskadrovka trafigi tuzilgan.

9 -qadam: Xulosa

Umumiy

Loyihani bajarish oson va yaxshi ishladi. O'rnatilgan dasturiy ta'minot ishlab chiqarish oson edi, chunki bu seriyaning 8 -qismidagi harorat va namlik sensori uchun ishlatiladigan kodning qisqartirilgan versiyasi.

Men dastlab faqat oq rangdagi qismlarni faqat estetik sifati uchun sotib olmoqchi edim. Men bunga nazorat tugmasidan boshqa hamma narsada erishdim, iloji boricha harakat qilib ko'ring, men yaxshi/arzon oq tugmachani topa olmadim.

Sonoff 10A qurilmasi

Men quyida Sonoff qurilmasining ijobiy va salbiy tomonlarini his qilgan narsalarni sanab o'tdim

Taroziga soling

  • Arzon.
  • Yaxshi jamoatchilik yordami.
  • Arduino IDE orqali qayta dasturlash mumkin.

Kamchiliklari

  • Nopok korpus.
  • Minimal I/U (foydalanish mumkin bo'lgan ulagichlarga chiqariladi).
  • U tinch holatda issiq ishlaydi.
  • Bortda faqat 1MBt SPI chirog'i bor.
  • O'rnatilganidan keyin qayta dasturlash - bu PITA.
  • Yangi kodni Sonoff -ga qo'shganda, o'rni 5V va Sonoff -ga dasturlash uchun 3v3 bo'lgani uchun o'rni yopilishi muammoli edi. O'rnimizni faollashtirish faqat quloqqa seziladi.

Xavotirlar

  • U neytral chiziqni o'zgartirmaydi. SPST o'rni ishlatiladi.
  • Eritilmagan.
  • Kabel zo'riqishining yomonlashuvi.
  • PCB Sonoff muhofazasida himoyalanmagan.

Muhandislik dizayni bo'yicha sharh

Buyuk Britaniyaning elektr tarmog'ini (240VAC RMS) uzatish uchun ishlatilishini hisobga olgan holda, men ham yaxshi mexanik, ham elektr konstruktsion amaliyotga amal qildim va elektr o'tkazuvchan materiallarni ta'sir qilmasdan, zarba xavfini minimallashtirdim. chiqish yuki, elektr tarmog'ining boshqaruvchisiga ham, opto-ulangan quyi tizimiga ham sug'urta himoyasini qo'llash, yaxshi uzilmagan topraklamani kiritish va optik/galvanik izolyatsiyadan foydalanish.

Mumkin bo'lgan takomillashtirish

O'tmish bilan, tarmoq boshqaruvi chiqishi faol bo'lgan vizual ko'rsatkichni kiritish foydali bo'lardi (LED yoki Neon). Kundalik foydalanishda muammo bo'lmasa -da, har qanday texnik xizmat ko'rsatilgunga qadar yukni yukdan ajratish odatiy holdir yoki mahalliy boshqaruv tugmachasini oddiy bosish, agar chiroq yoqilgan bo'lsa, chiroq yonib tursa, chiqishni o'zgartiradi.

Yakuniy eslatma

Agar siz elektr ta'minoti bilan bog'liq ikkita yomon misolni ko'rishni istasangiz, quyidagi havolalarni ko'rib chiqing. Ularning Darvin mukofotlari yaqin orada postda bo'ladi, men bunga aminman;

  • Aqlsiz olimning uzatma kabeli
  • Jamoatchilik bilan aloqalar 03 - Quvvat xavfsizligi bilan bog'liq muammolar!

10 -qadam: Ishlatilgan adabiyotlar

Men ushbu ko'rsatmalarni birlashtirish uchun quyidagi manbalardan foydalandim;

PubSubClient.h

  • Muallif: Nik O'Leary
  • Maqsad: Qurilmaga MQTT mavzularini berilgan broker yordamida nashr qilish yoki unga obuna bo'lish imkonini beradi
  • Manba:

Bounce2.h

  • Muallif: Tomas O Frederik
  • Maqsad: dasturiy ta'minotda kirish tugmachasini o'chirish
  • Manba:

SPIFFS

https://esp8266.github.io/Arduino/versions/2.0.0/do…

Sonoff fleshni yangilash

  • https://www.andremiller.net/content/upgrading-sonof…
  • https://tech.scargill.net/32mb-esp01/
  • https://www.andremiller.net/content/upgrading-sonof…

Sonoff sxemasi

https://www.itead.cc/wiki/images/6/6b/Sonoff_schmatic.pdf

USB UART moduli (aka. FTDI)

https://www.ebay.co.uk/itm/6Pin-USB-2-0-to-TTL-UART-Module-Converter-CP2102-STC-Replace-FT232-CF-/272249732398?epid=503069058&hash=item3f63593d2e: g: QVUAAOSw71BXP92B

Darvin mukofotlari (yengillik)

https://www.darwinawards.com/

TIL111 Opto-izolyator ma'lumotlar jadvali

Tavsiya: