Съдържание:

Мрежов контролер на IoT. Част 9: IoT, Домашна автоматизация: 10 стъпки (със снимки)
Мрежов контролер на IoT. Част 9: IoT, Домашна автоматизация: 10 стъпки (със снимки)

Видео: Мрежов контролер на IoT. Част 9: IoT, Домашна автоматизация: 10 стъпки (със снимки)

Видео: Мрежов контролер на IoT. Част 9: IoT, Домашна автоматизация: 10 стъпки (със снимки)
Видео: Zemismart SPM01 - компактен двупосочен zigbee енергиен монитор на токов трансформатор 2024, Юли
Anonim
Мрежов контролер на IoT. Част 9: IoT, Домашна автоматизация
Мрежов контролер на IoT. Част 9: IoT, Домашна автоматизация

Опровержение

ПРОЧЕТЕТЕ ТОЗИ ПЪРВО

Тази инструкция подробно описва проект, който използва захранване от мрежата (в този случай UK 240VAC RMS), макар че са положени всички грижи за използване на безопасни практики и добри принципи на проектиране, винаги съществува риск от потенциално смъртоносен електрически удар при работа с тези захранващи напрежения и за което авторът не може да поеме никаква отговорност, ако при проследяване на съдържанието му настъпи телесна повреда или материално увреждане. Следователно, вие правите този проект на свой собствен риск.

Преамбюл

Тази статия, деветата от поредицата за домашна автоматизация, документира как да създадете и интегрирате мрежов контролер Sonoff 10A IoT в съществуваща система за домашна автоматизация, включваща всички необходими софтуерни функционалности, които да позволят успешното внедряване в домашна среда.

Въведение

Както бе споменато по -горе, тази инструкция подробно описва как да направите и интегрирате мрежов контролер за IoT, използвайки Sonoff 10A от iTead. Самото устройство е котирано като оценено за 10 ампера при 90 ~ 250VAC, но това изпълнение го декласира до това на 5ампера чрез предпазителя, осигуряващ вътрешно британско основно захранване от 240VAC RMS.

Методологията за проектиране се интегрира безпроблемно в мрежата на IoT, базирана на MQTT/OpenHAB, подробно описана в тази поредица за изграждането на автоматизация на дома върху повторно използван код, взет от тук. Той също така може да се справи със загубата на всеки елемент на IoT мрежа и е напълно способен да работи самостоятелно. Докато е в самостоятелен режим, управлението на устройството се постига чрез просто натискане на бутона за управление в горната част на корпуса, който превключва изхода за захранване.

За да се даде възможност за този локален контрол на устройството Sonoff, GPIO14 се изважда от кутията и се използва като вход за задействане. За да се гарантира безопасността, този вход се захранва чрез схема на опто-разклонител и се помещава в пластмасов корпус, така че операторът в никакъв момент да не бъде изложен на захранващо напрежение.

И накрая, прозата също така очертава как да препрограмирате устройството ESP8266 в Sonoff 10A с помощта на Arduino IDE и дава пълна информация за веригата на устройство, което може да се използва за надеждно програмиране на целевия код.

Какви части са ми необходими?

Sonoff мрежов контролер

  1. 1 от Sonoff 10A тук
  2. 1 от 7805L 5V регулатор на напрежението тук
  3. 1 от 240/6VAC 1.5VA трансформатор тук
  4. 2 от 0,1 керамични кондензатора тук
  5. 1 от 1000uF @25v електролитен кондензатор тук
  6. 1 от мостовия токоизправител 2W01 тук
  7. 2 изключете 4K7 резистора тук
  8. 1 резистор 330R тук
  9. 1 изключете бутона SPST тук
  10. 1 от Mulitcomp BM12W ABS корпус тук
  11. 1 от опто-разклонител TIL111 тук
  12. 1 изключване на 3-посочен клемен блок тук
  13. 1 изключен двупосочен кодиран съединител molex тук/тук
  14. 1 изключен 3-Way кодиран molex конектор тук/тук
  15. 1 изключен 5-Way кодиран съединител molex тук/тук
  16. 1 изключване на 5-Way Molex щифтове тук
  17. 1 от Winbond SPI Flash (W25Q32FVSIG) тук
  18. 1 от 20 мм държач за предпазител + капачка тук
  19. 1 изключване на 20 мм бърз предпазител 500mA тук
  20. 2 изключете кабелни уплътнения от полиамид тук
  21. 1 изключване на захранващия щепсел във Великобритания (BS1363/A) тук
  22. 1 изключване на основния контакт на Великобритания (BS1363/A) тук
  23. 7 от M3 16 мм CS найлонови винтове, (вкл. 10 гайки) тук/тук
  24. 2 от връзките Zip тук
  25. 1 off veroboard (0.1 "стъпка) тук
  26. 1 изключено Различни дължини 22swg калайдисана медна жица тук
  27. 1 от 3M бял мрежов кабел от Обединеното кралство тук
  28. 10 изключване на гнездата на гнездото Molex тук

Sonoff програмист

  1. 1 изключване на регулатора на напрежение LD33CV 3v3 тук
  2. 1 изключен радиатор TO-220 тук
  3. 1 изключване на радиаторна паста тук
  4. 1 от 10uF @16v електролитен кондензатор тук
  5. 1 от 0,1 керамичен кондензатор тук
  6. 1 изключване на бутона SPDT тук
  7. 1 от 4K7 резистор тук
  8. 1 изключен двупосочен кодиран съединител molex тук/тук
  9. 1 изключен 3-Way кодиран molex конектор тук/тук
  10. 5 изключване на гнездата на гнездото Molex тук
  11. 1 изключване на 6-Way Molex гнездо тук
  12. 1 изключете бутона SPST тук
  13. 1 от 2,1 мм гнездо за захранване тук
  14. 1 off veroboard (0.1 "стъпка) тук
  15. 1 изключете USB към сериен адаптер (FTDI) тук

Какъв софтуер ми трябва?

  1. Arduino IDE 1.6.9 тук
  2. Arduino IDE, конфигуриран да програмира ESP8266. Виж тук; Настройване на Arduino IDE за програмиране на ESP8266-01

Какви инструменти ми трябват?

  1. Поялник,
  2. Свредло и различни накрайници (включително стъпаловиден нож за кабелни уплътнения и бутон за управление),
  3. Отвертки (различни),
  4. Регулируеми гаечни ключове (два изключени, ширина на челюстта> 25 мм, за кабелни уплътнения),
  5. Файлове (различни),
  6. Здрав порок,
  7. Пистолет за горещ въздух,
  8. DMM (за предпочитане CAT IV).

Какви умения са ми необходими?

  1. Добро разбиране на електрониката и домашната електрическа безопасност/дизайн/окабеляване и др.,
  2. Познаване на Arduino и неговата IDE,
  3. Добри умения за производство (запояване, пилене, пробиване и др.),
  4. Малко търпение,
  5. Известно разбиране за вашата домашна мрежа.

Обхванати теми

  • Въведение
  • Преглед на веригата
  • Sonoff RetroMods
  • Подробности за строителството и монтажа
  • Адаптер за програмиране Sonoff
  • Преглед на софтуерната система
  • Преглед на софтуера
  • Конфигурация на OpenHAB
  • Тестване на вашето IoT устройство
  • Заключение
  • Използвани справки

Връзки за серия

Към част 8: WiFi IoT сензор за температура и влажност. Част: 8 IoT, Домашна автоматизация

Към част 10: IR дистанционно управление чрез IoT. Част 10 IoT, Домашна автоматизация

Стъпка 1: Преглед на веригата

Преглед на веригата
Преглед на веригата
Преглед на веригата
Преглед на веригата
Преглед на веригата
Преглед на веригата
Преглед на веригата
Преглед на веригата

Общ преглед

Както бе споменато във въведението по-горе, за да може локално да се включва и изключва мрежовия контролер, беше необходим вход към бордовия ESP8266 на Sonoff. Въвеждането на такъв външен вход изисква корпусът на Sonoff ABS да бъде пробит и следователно създава потенциална опасност от удар. За да преодолея това, използвах оптична изолация, така че да няма възможност за излагане на електрическо захранване извън кутията на системата за мрежовия контролер.

Следва описание на схемата за оптоизолация (на снимка 1 по-горе).

Подробности за веригата

Схемата за оптоизолация получава захранването си директно от захранващата мрежа към устройството. 240VAC RMS се прилага към понижаващ/изолиращ трансформатор TR1 чрез J1, феониксов контакт MKDSN2, 5/3-5.08 полиамиден трипосочен терминал с мощност 16A при 400V, който може да носи кабел от 2.5 mm (sq) CSA и F1 с 500mA 20mm предпазител за бързо изгаряне. Наличните 6VAC на вторичните намотки на TR1 са пълни вълни, коригирани от диоден мост B1.

Този изправен изход с пълна вълна след това се стабилизира и регулира от C1, C2 C3, R3 и IC1 регулатор на шунт от серия 7805L, давайки добра, чиста 5v захранваща шина.

След това 5v релсата се използва за управление на входа за оптичен изолатор на TIL111 чрез външен монтиран бял SPST бутон, свързан през J3. Изходът на TIL111 е свързан към входа Sonoff GPIO14 чрез R2 4K7 резистор. По този начин се постига по -добра изолация от 340V (т.е. пиково напрежение = (240VAC*sqroot (2))).

Стъпка 2: Sonoff RetroMods

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

За да се интегрира устройството Sonoff 10A е необходимо да се направят някои ретроспективни модификации.

Първият е да се добави 5-пътен 0.1 стъпка molex конектор, както е показано на снимка 1 по-горе. Това позволява достъп до GPIO14 на Sonoff, след като защитното покритие е сменено, както на снимки 2 и 3 по-горе.

Въпреки че не е показано по-горе, аз също така изведох серийните TX/RX линии, които позволяват програмиране на място (вижте кабелния сноп SK1..3 в стъпка 1 по-горе).

Втората модификация е да се увеличи размерът на SPI Flash устройството от 1MByte по подразбиране на 4MBytes, това ще позволи достатъчно място за файловете на уеб сървъра на IoT да се съхраняват в SPIFFS.

Купих SMD SPI флаш устройство (W25Q32FVSIG) от Ebay тук

За да подменя светкавицата, временно премахнах светодиода Sonoff, както е на снимка 4, за да осигуря по -добър достъп до SMD устройството. За да разпая флашчето използвах термопистолет, както е показано на снимка 5 по-горе. След това отново запоявате съответно 4MByte Flash и LED (снимка 6).

Стъпка 3: Подробности за конструкцията и монтажа

Подробности за строителството и монтажа
Подробности за строителството и монтажа
Подробности за строителството и монтажа
Подробности за строителството и монтажа
Подробности за строителството и монтажа
Подробности за строителството и монтажа
Подробности за строителството и монтажа
Подробности за строителството и монтажа

Затворих мрежовия контролер в ABS кутия на Mulitcomp BM12W (снимка 1 по -горе). Този корпус има изолирани месингови вложки M3, позволяващи многократен достъп до устройството, без да се компрометират закрепващите нишки, така че вътрешният предпазител да може да бъде заменен, ако е необходимо, или да се извърши вътрешна проверка с течение на времето (същото не може да се каже за устройството Sonoff, което е ефективно еднократно само затваряне с помощта на самонарезни устройства).

Основното облекчение на напрежението за захранващия кабел на мрежата е постигнато чрез бял кабелен уплътнение M16 от найлон/полиамид 6/6, поддържащо кабел OD Min/Max 5 mm/10 mm.

Вторичното облекчаване на напрежението се осъществява чрез единична цип, поставена върху кабела в случай на прекомерно натоварване и повреда на кабелната уплътнение, връзката с цип ще поддържа кабела на място.

За да монтирам кабелните уплътнения и да осигуря достатъчно място за монтиране на електрониката на Sonoff и оптоизолацията, свалих вътрешните монтажни ребра на печатни платки, както е показано по-горе (снимка 2).

Цялата електроника беше здраво монтирана чрез M3 найлонови винтове CS, за да се осигури изолация с външната страна на корпуса. Електрониката с оптоизолация се монтира с 5 точки за фиксиране, за да се осигури здрава механична якост, ако устройството бъде изпуснато, като по този начин се предотврати прекъсването на масата на изолационния трансформатор от веригата veroboard.

Захранването на уреда се осъществява чрез бял 3-жилен PVC изолационен мрежов стандарт, стандартен за Великобритания, многожилен (32/0,2 мм кв.) Кабел, 1 мм (кв.) CSA. с OD от 7,2 мм, способен да носи 10А.

Устройството е свързано към електрическо захранване във Великобритания (240VAC RMS) чрез одобрен стандартен 3 -пинов предпазен щепсел (BS 1363/A). Щепселът е предпазен при 5А.

Всички захранващи кабели към оптоизолационната верига бяха свързани чрез контакт pheonix MKDSN2, 5/3-5.08 полиамидни клеми с мощност 16A при 400V, способни да носят кабел от 2,5 mm (sq) CSA, като по този начин осигуряват достатъчен капацитет за два кабела в всяка позиция.

Не са калайдисани захранващи кабели, просто са усукани, за да се предотврати разпръскване на жилата преди поставянето им в съединителния блок. Консервирането на мрежовите кабели е опасна практика, тъй като спойката се „отпуска“с течение на времето, което в крайна сметка води до загуба на кабела в съединителния блок.

Забележка:

  • OD = Външен диаметър.
  • VAC = Променлив ток на волта
  • RMS = Среден квадрат на корена
  • CSA = Площ на напречното сечение
  • CS = Потънал брояч

Стъпка 4: Адаптер за програмиране на Sonoff

Адаптер за програмиране Sonoff
Адаптер за програмиране Sonoff
Адаптер за програмиране Sonoff
Адаптер за програмиране Sonoff
Адаптер за програмиране Sonoff
Адаптер за програмиране Sonoff
Адаптер за програмиране Sonoff
Адаптер за програмиране Sonoff

Има два аспекта, които трябва да се имат предвид при препрограмиране на Sonoff 10A чрез Arduino IDE;

  1. Конфигуриране на вашата Arduino IDE за програмиране на ESP8266,
  2. Актът на програмиране на самия хардуер.

Конфигуриране на вашата Arduino IDE за програмиране на ESP8266

За да конфигурирате вашата Ardino IDE, следвайте инструкциите тук Настройване на Arduino IDE за програмиране на ESP8266-01

Програмиране на хардуера

Това е многоетапен процес, както във всички случаи с ESP8266. Тук захранването на Sonoff се подава към платката чрез външно стабилизирано 3v3 DC захранване и НЕ от мрежово захранване. USB към серийно устройство ще бъде необходимо за изпращане и получаване на данни към и от Sonoff. Свържете TX и RX, както е показано на снимки 2 и 4.

Стъпки за програмиране (общи)

  1. Първо се уверете, че няма външно захранване към Sonoff,
  2. Натиснете и задръжте бутона на устройството Sonoff. (снимка 1 по-горе, маркиран бутон за повторно светкавица),
  3. Приложете външно захранване DC 3v3 към щифт 1. (снимка 2 по -горе),
  4. Освободете бутона Sonoff,
  5. Устройството вече може да се препрограмира по обичайния начин чрез Arduino IDE.

За да направя нещата малко по -лесни, създадох програмиращото устройство по -горе (снимки 3 и 4), което се свързваше към Sonoff чрез кабелния сноп SK1 … 3 (както е описано в тази инструкционна стъпка 1.). Това позволи по -лесно програмиране на ESP8266. Той също така предоставя средство за тестване на GPIO14 като вход чрез използването на R1, 4K7 резистор и бутон S1.

Използвайки устройството за програмиране по -горе (Снимки 3 и 4) Стъпките за програмиране са,

  1. Натиснете и задръжте бутона за повторно светкавица на Sonoff,
  2. Импулсирайте захранването 3v3 чрез кратко натискане на S2,
  3. Освободете бутона за повторно светкавица,
  4. Устройството вече може да се програмира.

ЗАБЕЛЕЖКА - ВНИМАНИЕ

При никакви обстоятелства не трябва да се захранва през мрежата по време на дейността по препрограмиране на Sonoff

Стъпка 5: Преглед на софтуерната система

Преглед на софтуерната система
Преглед на софтуерната система
Преглед на софтуерната система
Преглед на софтуерната система

Това устройство за мрежов контролер на IoT в по -голямата си част съдържа същите шест ключови софтуерни компонента, както в сензора за температура и влажност на WiFi IoT с инструкции. Част: 8 IoT, Домашна автоматизация и показана на снимка 1 по -горе, с известна персонализация.

SPIFFS

Това е (надградена до 4MBytes) вградена SPI флаш система за архивиране и се използва за съхраняване на следната информация (вижте снимка 2 по-горе);

  • Икони и „Начална страница за конфигуриране на мрежовия контролер“html: Обслужва се от IoT устройството, когато не може да се свърже с вашата Wi -Fi мрежа на IoT (обикновено поради неправилна информация за защита) и предоставя на потребителя средство за дистанционно конфигуриране на мрежовия контролер без необходимостта от препрограмиране или качване на ново SPIFFS съдържание.
  • Информация за сигурност: Тя съдържа информацията, използвана при включване на IoT устройството за свързване към вашата IoT WiFi мрежа и MQTT брокер. Информацията, предоставена чрез „Началната страница за конфигуриране на мрежовия контролер“, се записва в този файл („secvals.txt“).

Забележка: За първоначално настройване на устройството вижте тук за пълни подробности как да използвате SPIFFS с Arduino IDE.

mDNS сървър

Тази функционалност се активира, когато IoT устройството не успее да се свърже с вашата WiFi мрежа като WiFi станция и вместо това се превърна в WiFi точка за достъп, нещо подобно на домашен WiFi рутер. В случай на такъв рутер обикновено бихте се свързали с него, като въведете IP адреса на нещо като 192.168.1.1 (обикновено отпечатано върху етикет, прикрепен към кутията) директно в URL лентата на браузъра си, след което ще получите страница за вход, за да влезете потребителското име и паролата, за да ви позволи да конфигурирате устройството. За ESP8266 в режим AP (режим на точка за достъп) устройството по подразбиране е IP адрес 192.168.4.1, но при работещ сървър mDNS трябва само да въведете удобното за човека име „MAINSCON.local“в URL лентата на браузъра, за да видите „Начална страница за конфигуриране на мрежовия контролер“.

MQTT клиент

Клиентът MQTT предоставя цялата необходима функционалност на; свържете се с вашия MQTT брокер на IoT мрежа, абонирайте се за избраните от вас теми и публикувайте полезни товари към дадена тема. Накратко, той предоставя основна функционалност на IoT.

HTTP уеб сървър

Както бе споменато по -горе, ако IoT устройството не може да се свърже с WiFi мрежата, чийто SSID, P/W и т.н. е дефиниран във файла за информация за сигурността, съхраняван в SPIFFS, устройството ще стане точка за достъп. След като се свържете с WiFi мрежата, предоставена от точката за достъп, наличието на HTTP уеб сървър ви позволява директно да се свържете с устройството и да промените конфигурацията му чрез използването на HTTP уеб браузър, чиято цел е да обслужва „Конфигурацията на мрежовия контролер Уеб страница „Начална страница“, която също се съхранява в SPIFFS.

WiFi станция

Тази функционалност дава на IoT устройството възможност да се свърже с домашна WiFi мрежа, използвайки параметрите във файла с информация за сигурността, без това вашето IoT устройство няма да може да се абонира/публикува в MQTT Broker

WiFi точка за достъп

Възможността да се превърнете в WiFi точка за достъп е средство, чрез което IoT устройството ви позволява да се свързвате с него и да правите промени в конфигурацията чрез WiFi станция и браузър (като например Safari на Apple iPad). Тази точка за достъп излъчва SSID = "MAINSCON" + последните 6 цифри от MAC адреса на IoT устройството. Паролата за тази затворена мрежа се нарича „PASSWORD“с въображение.

Стъпка 6: Преглед на софтуера

Преглед на софтуера
Преглед на софтуера
Преглед на софтуера
Преглед на софтуера
Преглед на софтуера
Преглед на софтуера
Преглед на софтуера
Преглед на софтуера

PreambleTo успешно компилиране на този изходен код ще ви трябват следните допълнителни библиотеки;

PubSubClient.h

  • От: Ник О'Лиъри
  • Предназначение: Позволява на устройството да публикува или да се абонира за теми за MQTT с даден брокер
  • От:

Bounce2.h

  • От: Томас О Фредерикс
  • Предназначение: Прекъсвачът на входа се изключва в софтуера
  • От:

Преглед на кода

Софтуерът използва машината на състоянието, както е показано на снимка 1 по-горе (пълно копие на източника, дадено по-долу). Има 5 основни състояния, както следва;

  • В НЕГО

    Това състояние на инициализация е първото състояние, въведено след включване

  • НОКОНФИГ

    Това състояние се въвежда, ако след включване бъде открит невалиден или липсващ файл secvals.txt

  • В ЧАКА НА СЕВ

    Това състояние е преходно, въведено, докато няма WiFi мрежова връзка

  • ЧАКАЩ MQTT

    Това състояние е преходно, въведено след свързване на WiFi мрежа и докато няма връзка с MQTT брокер в тази мрежа

  • АКТИВЕН

    Това е нормалното работно състояние, въведено, след като се установи както Wi -Fi мрежова връзка, така и връзка с MQTT брокер. По време на това състояние мрежовият контролер ще публикува в MQTT Broker и ще получава команди чрез абонирани теми

Събитията, контролиращи преходите между състояния, са описани на снимка 1 по -горе. Преходите между състояния също се управляват от следните параметри на SecVals;

  • 1 -ви MQTT брокерски IP адрес. В пунктирана десетична форма AAA. BBB. CCC. DDD
  • 2 -ро порт за брокер на MQTT. Под цяло число.
  • Третият MQTT брокер се опитва да направи връзка, преди да премине от режим STA към режим AP. Под цяло число.
  • 4 -ти SSID на WiFi мрежата. Текст в свободна форма.
  • 5 -та парола за WiFi мрежа. Текст в свободна форма.

Както бе споменато по -горе, ако IoT устройството не може да се свърже като WiFi станция към WiFi мрежата, чиито SSID и P/W са определени в secvals.txt, съхраняван в SPIFFS, устройството ще стане точка за достъп. След като се свърже с тази точка за достъп, тя ще обслужва „Началната страница за конфигуриране на мрежовия контролер“, както е показано по -горе на снимка 2 (чрез въвеждане на „MAINSCON.local“или 192.168.4.1 в адресната лента на браузъра ви). Тази начална страница позволява преконфигуриране на мрежовия контролер чрез HTTP браузър.

MQTT Конвенция за именуване на теми

Описано на снимка 3 по -горе е конвенцията за именуване, използвана за темите за MQTT и е в съответствие с модела, използван в по -ранния ми Instructable (тук стъпка 5).

Теми за MQTT, използвани от това IoT устройство

За по -голяма яснота съм документирал (снимка 4) темите и свързаните с тях последователности на съобщения, които това устройство публикува/абонира. Картината също изобразява взаимодействието с белия контролен бутон от външната страна на корпуса (макар иронично, бутонът е показан в червено).

Отдалечен достъп до конфигурация, докато е в състояние АКТИВ

След като се свържете с MQTT Broker, е възможно дистанционно да конфигурирате параметрите за защита на устройството чрез публикации на темата MQTT. Свързаният файл secvals.txt има достъп само за запис.

Отстраняване на грешки от потребителя

По време на зареждащата последователност светодиодът на устройството Sonoff дава следната обратна връзка за отстраняване на грешки, въпреки че трябва да се отбележи, че за да видите това, ще трябва да премахнете капака и да изложите схемата, така че е препоръчително да го направите само докато разработвате кода си и захранвате устройството с захранване 3v3;

  • 1 Кратка флаш: Няма файл за конфигуриране, намиращ се в SPIFFS (secvals.txt),
  • 2 кратки мигания: IoT устройството се опитва да се свърже с WiFi мрежа,
  • Непрекъснато осветяване: Sonoff IoT устройството се опитва да се свърже с MQTT Broker,
  • Изключено: Устройството е активно и свързано с MQTT брокер.

Забележка 1: „Началната страница за конфигуриране на мрежовия контролер“не използва защитени гнезда и следователно разчита на сигурността на вашата мрежа.

Забележка 2: За да програмирате няколко IoT устройства, низът MQTT ще изисква редактиране преди изтеглянето на всяко устройство. Това е така, защото идентификационният номер на мрежовия контролер е вграден в низа на темата MQTT. т.е. в публикувания софтуер избрах стойността 100: 'WFD/MainsCont/100/Relay/Command/1' и за моите 2 устройства те са номерирани съответно 1 и 2.

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

Забележка 3: За пълнота, когато е в състояние АКТИВ, софтуерът на IoT позволява управление на светодиода Sonoff и публикуване на състоянието на бутона за повторно светкавица. Въпреки че те имат стойност само по време на процеса на отстраняване на грешки, тъй като нито един от тях не е изложен на потребителя по време на нормална работа.

Стъпка 7: OpenHAB конфигурация

Конфигурация на OpenHAB
Конфигурация на OpenHAB
Конфигурация на OpenHAB
Конфигурация на OpenHAB
Конфигурация на OpenHAB
Конфигурация на OpenHAB

За целите на тестването реших условно да разгърна двата мрежови контролера в „Хола“на моята къща. Тази страница на OpenHAB може да бъде достигната чрез главната страница на сайта, както е на снимка 1.

Промених конфигурацията на OpenHAB.sitemap, дадена в по -ранните ми инструкции (тук) и добавих отделни записи за „Mains Controller 1“и „Mains Controller 2“(снимка 2 по -горе). Също така добавих записи (Мрежа за хол 1 и 2 към хола) за показване на RSSI Тенденции, измерени на приемника на двете нови IoT устройства (снимка 3).

И накрая, добавих записи във файловете.rules и.items, за да позволя динамична синхронизация на състоянието на Sonoff и актуализиране/анимиране на моя лош опит за превключване на графика (превключвателят се затваря, когато е активен, и се отваря, когато е неактивен). На снимка 2 е даден пример за MC1 активен и MC2 неактивен.

Забележка 1: Ако не сте сигурни как да използвате OpenHAB, вижте тук „Настройка и конфигуриране на OpenHAB. Част 6: IoT, Домашна автоматизация

Забележка 2: Копие на променената карта на сайта, файлове с правила и елементи, икони и т.н. е дадено в zip файла по -долу.

Забележка 3: RSSI = Индикация за силата на получения сигнал. Това е мярка за това колко добре IoT устройството може да види вашата WiFi мрежа.

Стъпка 8: Тестване на вашето IoT устройство

Image
Image
Тестване на вашето IoT устройство
Тестване на вашето IoT устройство

Както е описано в Инструктируем WiFi IoT сензор за температура и влажност. Част: 8 IoT, Домашна автоматизация Стъпка 7, първоначалното тестване на IoT устройството беше извършено през MQTT връзка чрез MQTT Spy (както на системната блокова диаграма на снимка 1 по-горе), мониторинг на LED изход, бутонови входове (както бутонът за повторна светкавица на Sonoff, така и бял външен бутон) и отстраняване на грешки в трафика по серийния интерфейс. Това ми позволи да упражня всички налични абонирани теми и да проверя публикуваните отговори. Въпреки че отново това се извършваше ръчно и отнемаше много време, въпреки че даваше възможност за 100% покритие на съобщения/публикации на теми.

Тъй като основната машина на състоянието на софтуера (Стъпка 6 по -горе) е наследена от по -ранната Instructable (Част: 8), различна от проверка на здравословността, софтуерът може да се свърже с WiFi N/W и MQTT Broker, се предполагаше, че функционира правилно.

След това завърши пълното тестване на системно ниво с помощта на мрежовия контролер и инфраструктурата на IoT (отново снимка 1) този път с помощта на OpenHAB за управление на взаимодействието с IoT устройството. Хардуерът на IoT и фиктивното зареждане могат да се видят на снимка 2 по -горе.

Видеото дава пълни подробности за системните тестове и ясно показва синхронизирането, поддържано между OpenHAB устройства (PC/Chrome и iPad/OpenHAB APP) в реално време. Той също така показва съобщения на живо до мрежовите контролери чрез MQTTSpy (вижте тук за повече подробности Настройване на MQTT брокер. Част 2: IoT, Домашна автоматизация) и системния регистър на OpenHAB от сървър на raspberry pi през PuTTY SSH връзка (вижте тук за повече подробности Настройване и конфигуриране на OpenHAB. Част 6: IoT, Домашна автоматизация).

Забележка: Трафикът за отстраняване на грешки е съставен за последната версия на софтуера.

Стъпка 9: Заключение

Общ

Проектът беше сравнително лесен за изпълнение и работеше добре. Вграденият софтуер беше лесен за производство и представлява съкратена версия на кода, използван за сензорите за температура и влажност на част 8 от тази серия.

Първоначално възнамерявах да придобивам само бели компоненти чисто за тяхното естетическо качество. Постигнах това във всичко, с изключение на контролния бутон, опитай колкото можех, не успях да намеря добър/евтин напълно бял бутон.

Устройство Sonoff 10A

Изброих по -долу това, което смятах за разумни плюсове и минуси на устройството Sonoff

Професионалисти

  • Евтини.
  • Добра подкрепа на общността.
  • Може да се програмира отново чрез Arduino IDE.

Против

  • Крехък корпус.
  • Минимален I/O (изведен към използваеми конектори).
  • Работи горещо в състояние на покой.
  • Има само 1MByte вградена SPI флаш.
  • Е PITA за препрограмиране, след като е свързан на място.
  • При интегрирането на нов код в тестването на Sonoff затварянето на релето беше проблематично, тъй като релето е 5v и захранването, приложено към Sonoff за програмиране, е 3v3. Релето се активира само в ухото.

Притеснения

  • Не превключва неутралната линия. Използва реле SPST.
  • Не е слято.
  • Лошо облекчаване на напрежението на кабела.
  • ПХБ не е обезопасена в корпуса на Sonoff.

Коментирайте инженерния дизайн

Като се има предвид, че това устройство за интернет на нещата трябваше да се използва за превключване на захранваща мрежа в Обединеното кралство (240VAC RMS), аз следвах както добрата механична, така и електрическата дизайнерска практика и гарантирах, че рискът от удар е сведен до минимум, като не се излагат никакви електропроводими материали, а не се определят всички компоненти изходно натоварване, прилагане на предпазител както към мрежовия контролер, така и към подсистемата, свързана с опто, включване на добро непрекъснато заземяване и използване на оптична/галванична изолация.

Възможно подобрение

С оглед на времето би било полезно да се включи визуална индикация, че изходът на мрежовия контролер е активен (LED или неонов). Въпреки че това не е проблем при ежедневната употреба, като се има предвид стандартната практика да се изолира натоварването от захранването, преди да се извърши каквато и да е поддръжка, или просто натискане на бутона за локално управление ще превключи изхода в случай, че лампата може да светне, когато е включена.

Заключителна бележка

Ако искате да видите два много лоши примера за справяне с електрическата мрежа, разгледайте връзките по -долу. Наградите им за Дарвин ще бъдат на поста много скоро, сигурен съм;

  • Удължител на Mad Scientist
  • Обратна връзка на общността 03 - Загриженост за безопасността на електрозахранването!

Стъпка 10: Използвани справки

Използвах следните източници, за да събера този Instructable заедно;

PubSubClient.h

  • От: Ник О'Лиъри
  • Предназначение: Позволява на устройството да публикува или да се абонира за теми за MQTT с даден брокер
  • От:

Bounce2.h

  • От: Томас О Фредерикс
  • Предназначение: Прекъсвачът на входа се изключва в софтуера
  • От:

SPIFFS

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

Надстройка на Sonoff флаш

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

Схема на Sonoff

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

USB UART модул (известен още като 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

Награди Дарвин (лек релеф)

https://www.darwinawards.com/

TIL111 лист с оптоизолатор

Препоръчано: