Мазмұны:

IoT желілік контроллері. 9 -бөлім: IoT, үйді автоматтандыру: 10 қадам (суреттермен)
IoT желілік контроллері. 9 -бөлім: IoT, үйді автоматтандыру: 10 қадам (суреттермен)

Бейне: IoT желілік контроллері. 9 -бөлім: IoT, үйді автоматтандыру: 10 қадам (суреттермен)

Бейне: IoT желілік контроллері. 9 -бөлім: IoT, үйді автоматтандыру: 10 қадам (суреттермен)
Бейне: Маршрутизатор. Коммутатор. Хаб. Что это и в чем разница? 2024, Шілде
Anonim
IoT желілік контроллері. 9 -бөлім: IoT, үйді автоматтандыру
IoT желілік контроллері. 9 -бөлім: IoT, үйді автоматтандыру

Жауапкершіліктен бас тарту

БІРІНШІ ОҚЫҢЫЗ

Бұл нұсқаулық желідегі электр қуатын пайдаланатын жобаны егжей -тегжейлі сипаттайды (бұл жағдайда Ұлыбритания 240VAC RMS), егер қауіпсіз тәжірибе мен жақсы дизайн принциптерін қолдануға мұқият болсақ, осы кернеулермен жұмыс істегенде әрқашан өлімге әкелетін ток соғу қаупі бар. егер автор оның мазмұнын ұстану кезінде жеке жарақат немесе мүлікке зақым келсе, ешқандай жауапкершілікті өз мойнына алмайды. Демек, сіз бұл жобаны өзіңізге тәуекел етесіз.

Кіріспе

Бұл мақалада үйді автоматтандыру сериясының 9 -шы мақаласы, Sonoff 10A IoT желілік контроллерін үй жағдайында табысты орналастыру үшін барлық қажетті бағдарламалық қамтамасыз етуді қамтитын қолданыстағы үй автоматтандыру жүйесіне қалай құру және біріктіру керектігі туралы жазылған.

Кіріспе

Жоғарыда айтылғандай, нұсқаулықта iTead -тен Sonoff 10A көмегімен IoT желі контроллерін қалай жасау және біріктіру керектігі туралы айтылады. Құрылғының өзі 90 ~ 250VAC үшін 10 амп үшін бағаланған деп көрсетілген, бірақ бұл іске асыру Ұлыбританияның 240VAC RMS негізгі ішкі жеткізілімін қамтамасыз ететін балқытылған штепсель арқылы оны 5 шамасына дейін төмендетеді.

Дизайн әдістемесі MQTT/OpenHAB негізіндегі IoT желісінде осы серияда егжей -тегжейлі біріктірілген, бұл жерден алынған қайта қолданылатын код бойынша үйді автоматтандыру. Ол сонымен қатар кез келген IoT желілік элементінің жоғалуын басқара алады және дербес жұмыс істеуге толық қабілетті. Автономды режимде құрылғыны басқару қораптың жоғарғы жағындағы басқару батырмасын басу арқылы жүзеге асады, бұл алға қарай жеткізу шығысын ауыстырады.

Sonoff құрылғысын осы жергілікті басқаруды қосу үшін GPIO14 корпусынан шығарылады және триггер кірісі ретінде қолданылады. Қауіпсіздікті қамтамасыз ету үшін бұл кіріс оптикалық қосқыш схемасы арқылы беріледі және оператор желіге кернеуге ешқашан ұшырамайтындай пластикалық қоршауға салынған.

Ақырында, проза Arduino IDE көмегімен Sonoff 10A-да ESP8266 құрылғысын қалай қайта бағдарламалау керектігін де көрсетеді және мақсатты кодты сенімді бағдарламалау үшін пайдалануға болатын құрылғының толық тізбегі туралы мәлімет береді.

Маған қандай бөлшектер қажет?

Sonoff Mains контроллері

  1. Соноф 10А -дан 1 жеңілдік
  2. Мұнда 1 өшіру 7805L 5в кернеу реттегіші
  3. Мұнда 1 сөндірілетін 240/6VAC 1.5VA трансформаторы
  4. Мұнда 0,1 керамикалық конденсаторлар өшірілген
  5. Электролиттік конденсатордың 25 вольтінде 1 өшіру
  6. 1W Bridge 2W01 түзеткіші осында
  7. Мұнда 2 өшірілген 4K7 резисторы
  8. Мұнда 330R резисторы өшірулі
  9. Мұнда SPST 1 өшіру түймесі
  10. 1 жеңілдік Mulitcomp BM12W ABS қоршауы осында
  11. TIL111 оптикалық қосқышында 1 жеңілдік
  12. Мұнда 3 жолды 1 терминалды блок
  13. 1 жолғы 2 жақты кодталған molex коннекторы мұнда/мұнда
  14. 1-жолды 3-жолды кодталған molex коннекторы мұнда/мұнда
  15. 1 жолды 5 жолды кодталған molex коннекторы мұнда/мұнда
  16. Мұнда 5 жолды молекстің 1 түйрегіші
  17. 1 жеңілдік Winbond SPI Flash (W25Q32FVSIG) мұнда
  18. 1 мм 20 мм сақтандырғыш ұстағыш + қақпақ
  19. Мұнда 1 өшіру 20мм жылдамдықтағы 500мА сақтандырғыш
  20. Бұл жерде полиамидті 2 кабельді ажырату
  21. Ұлыбританиядағы желілік штепсель (BS1363/A) 1 өшірулі
  22. Ұлыбританияның негізгі розеткасынан (BS1363/A) 1 өшіру
  23. 7 өшірілген M3 16мм CS нейлон бұрандалары, (жаңғақтармен бірге 10) мұнда/мұнда
  24. Мұнда Zip байланыстарынан 2 жеңілдік
  25. Мұнда 1 верборд (0,1 дюйм)
  26. 1 өшіру Әр түрлі ұзындықтағы 22swg қаңылтырланған мыс сым
  27. Ұлыбританияда 3М ақ сымның 1 сымы
  28. Мұнда Molex розеткасынан 10 сығылған

Sonoff бағдарламашы

  1. Мұнда 1 LD33CV 3v3 кернеу реттегіші
  2. Мұнда TO-220 радиаторының 1 өшірулі
  3. Мұнда 1 рет радиатор пастасы
  4. 1 өшіру 10uF @16v Электролиттік конденсатор мұнда
  5. Мұнда 0,1 керамикалық конденсатор
  6. Мұнда SPDT 1 өшіру түймесі
  7. Мұнда 1 өшірілген 4K7 резисторы
  8. 1 жолғы 2 жақты кодталған molex коннекторы мұнда/мұнда
  9. 1 жолды 3-жолды кодталған molex коннекторы мұнда/мұнда
  10. Мұнда Molex розеткасынан 5 сығылады
  11. Мұнда 6 жолды molex розеткасы бар
  12. Мұнда SPST 1 өшіру түймесі
  13. Мұнда 1 мм 2,1 мм PSU розеткасы бар
  14. Мұнда 1 верборд (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 -бөлімге: IoT арқылы IR қашықтан басқару құралы. 10 -бөлім IoT, үйді автоматтандыру

1 -қадам: схемаға шолу

Схемаға шолу
Схемаға шолу
Схемаға шолу
Схемаға шолу
Схемаға шолу
Схемаға шолу
Схемаға шолу
Схемаға шолу

Шолу

Жоғарыдағы кіріспеде айтылғандай, желі контроллерін жергілікті түрде қосу және өшіру үшін Sonoff ESP8266 бортына кіріс қажет болды. Мұндай сыртқы кірісті енгізу Sonoff ABS корпусының бұзылуын талап етеді, сондықтан ықтимал соққы қаупін тудырады. Осыны жеңу үшін мен оптикалық оқшаулауды қолдандым, осылайша магистральдық контроллер жүйесінің корпусынан тыс жерде электр тогының әсеріне жол жоқ.

Опто-оқшаулау схемасының сипаттамасы келесіде (жоғарыдағы 1-суретте).

Схема туралы мәліметтер

Опто-оқшаулау схемасы құрылғыны желіден тікелей алады. 240VAC RMS 2,5 мм (шаршы) CSA мен F1 500мА 20мм кабельді көтере алатын 400В кернеуіндегі 3-бағытты 5/3-5.08 полиамидті 3-бағытты феникс байланысы MKDSN2, феоникс контактілі MKDSN2, TR1 төмендету/оқшаулау трансформаторына қолданылады. жылдам соққы сақтандырғышы. TR1 қосалқы орамаларында қол жетімді 6VAC толық толқынды B1 диод көпірімен түзетілген.

Бұл толық толқынды түзетілген шығыс тұрақтандырылады және C1, C2 C3, R3 және IC1 7805L сериялы шунт реттегішімен реттеледі, бұл жақсы, таза 5в жеткізу рельсін береді.

5В рельсі J3 арқылы жалғанған сырттан орнатылған ақ SPST батырмасы арқылы OK1 мен TIL111 опто-изоляторына кірісті бақылау үшін қолданылады. TIL111 шығысы Sonoff GPIO14 кірісіне R2 арқылы 4K7 тартылатын резистор арқылы қосылады. Осылайша 340В -тан жақсы оқшаулауға қол жеткізіледі (яғни шыңның кернеуі = (240VAC*sqroot (2))).

2 -қадам: Sonoff RetroMods

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

Sonoff 10A құрылғысын біріктіру үшін кейбір ретроспективті өзгерістер енгізу қажет.

Біріншісі-жоғарыдағы 1-суретте көрсетілгендей 5-жолақты 0,1 дюймдік молексті қосқышты қосу. Бұл қорғаныс қақпағы жоғарыдағы 2 және 3 суреттердегідей ауыстырылғаннан кейін Sonoff-та GPIO14-ке қол жеткізуге мүмкіндік береді.

Жоғарыда көрсетілмесе де, мен орнында бағдарламалауға мүмкіндік беретін TX/RX сериялық желілерін шығардым (жоғарыдағы 1-қадамдағы SK1..3 кабельдік тарауын қараңыз).

Екінші модификация - SPI Flash құрылғысының көлемін әдепкі 1 Мбайттан 4 Мбайтқа дейін ұлғайту, бұл IoT веб -серверінің файлдарын SPIFFS -те сақтауға жеткілікті орын беру үшін қажет.

Мен мұнда Ebay -ден SMD SPI флэш -құрылғысын (W25Q32FVSIG) сатып алдым

Жарқылды ауыстыру үшін мен SMD құрылғысына жақсы қол жеткізу үшін 4 -суреттегідей Sonoff жарық диодын уақытша алып тастадым. Жарқылды дәнекерлеу үшін мен жоғарыдағы 5-суретте көрсетілгендей жылу тапаншасын қолдандым. Содан кейін сәйкесінше 4Мбайт флэш пен светодиодты қайта дәнекерледі (6-сурет).

3 -қадам: Құрылыс және құрастыру туралы егжей -тегжейлі

Құрылыс және құрастыру бөлшектері
Құрылыс және құрастыру бөлшектері
Құрылыс және құрастыру бөлшектері
Құрылыс және құрастыру бөлшектері
Құрылыс және құрастыру бөлшектері
Құрылыс және құрастыру бөлшектері
Құрылыс және құрастыру бөлшектері
Құрылыс және құрастыру бөлшектері

Мен желі контроллерін Mulitcomp BM12W ABS қорабына қостым (жоғарыдағы 1 -сурет). Бұл қоршауда M3 оқшауланған жезден жасалған кірістірулер бар, олар бекіткіш жіптеріне нұқсан келтірместен қондырғыға көп қол жеткізуге мүмкіндік береді, осылайша ішкі сақтандырғышты ауыстыруға болады немесе уақыт өте келе ішкі тексеруден өтуге болады (бұл туралы Sonoff құрылғысы туралы айтуға болмайды. өзін -өзі тегістегіштерді қолдану арқылы бір рет тиімді жабылады).

Жеткізу кабелінің магистральдық кернеуін жеңілдету M16 нейлон/полиамидті 6/6 ақ кабельді OD Min/Max 5мм/10мм кабельді тіреуіш арқылы жүзеге асырылды.

Қосымша кернеуді жеңілдету кабельге бекітілген жалғыз қысқыш арқылы жүзеге асырылды, егер шамадан тыс кернеу қолданылса және кабельдің түйіспесі істен шықса, ілмек кабельді орнында ұстайды.

Кабельдік бекіткіштерді бекіту және Sonoff пен оптикалық оқшаулау электроникасын орнатуға жеткілікті орын беру үшін мен жоғарыда көрсетілгендей ПХД-нің ішкі қабырғаларын алып тастадым (2-сурет).

Барлық электроника корпустың сыртқы жағынан оқшаулануын қамтамасыз ету үшін M3 нейлонды CS бұрандалары арқылы сенімді түрде орнатылды. Оптикалық оқшаулау электроникасы қондырғы құлатылған кезде дыбыс механикалық беріктігін қамтамасыз ету үшін 5 бекіту нүктесімен орнатылады, осылайша оқшаулау трансформаторының массасы вертолет тізбегін бұзуға жол бермейді.

Құрылғыны жеткізу Ұлыбританияның стандартты түсті кодталған ақ түсті 3 ядролы ПВХ оқшауланған көп сымды (32/0,2 мм шаршы) кабелі 1 мм (шаршы) CSA арқылы жүзеге асырылды. 10А көтеруге қабілетті 7,2 мм ОД бар.

Құрылғы Ұлыбританияның электр желісіне (240VAC RMS) бекітілген стандартты 3 істікшелі сақтандырғыш штепсель (BS 1363/A) арқылы қосылды. Штепсель 5А қосылды.

Барлық магистральдық кабельдер опто-оқшаулау тізбегіне феоникс контактісі MKDSN2 арқылы қосылды, 400В кернеуінде 16А-да өлшенетін 5/3-5.08 полиамидтік терминалдары 2,5 мм (шаршы метр) CSA кабелін өткізуге қабілетті, осылайша екі кабель үшін жеткілікті сыйымдылықты қамтамасыз етеді. әр позиция.

Желілік кабельдер қапталмаған, тек коннектор блогына салмас бұрын өзектердің таралуын болдырмау үшін бұралған. Желілік кабельдерді байлау - қауіпті тәжірибе, себебі дәнекерлеу уақыт өте келе босаңсады, нәтижесінде коннектор блогында кабель жоғалады.

Ескерту:

  • OD = Сыртқы диаметрі.
  • VAC = Вольт айнымалы ток
  • RMS = Негізгі орташа квадрат
  • CSA = қиманың ауданы
  • CS = Counter Sunk

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 қуаты тақтаға тұрақты тұрақтандырылған 3в3 тұрақты ток көзі арқылы қосылады және ЕМЕС. Деректерді Sonoff -ке жіберу және алу үшін USB сериялық құрылғы қажет болады. 2 және 4 -суретте көрсетілгендей TX пен RX жалғаңыз.

Бағдарламалау қадамдары (жалпы)

  1. Алдымен Sonoff -та сыртқы электр қуаты жоқ екеніне көз жеткізіңіз,
  2. Sonoff құрылғысындағы түймені басып тұрыңыз. (жоғарыдағы 1-сурет, қайта жыпылықтау түймесі белгіленген),
  3. Сыртқы DC 3v3 жеткізілімін 1 -істікке қолданыңыз (жоғарыдағы 2 -сурет),
  4. Sonoff түймесін босатыңыз,
  5. Енді құрылғыны Arduino IDE арқылы әдеттегідей қайта бағдарламалауға болады.

Біраз жеңілдету үшін мен SK1… 3 кабельдік байланыс арқылы Sonoff -пен байланысқан жоғарыдағы бағдарламалау құрылғысын (3 және 4 -суреттер) жасадым (осы нұсқаулық 1 -қадамда сипатталғандай). Бұл ESP8266 бағдарламалауды жеңілдетуге мүмкіндік берді. Ол сондай -ақ GPIO14 -ті R1 4K7 тартқыш резисторы мен S1 түймесін қолдану арқылы кіріс ретінде сынау құралымен қамтамасыз етті.

Жоғарыдағы бағдарламалау құрылғысын қолдану (3 және 4 -суреттер) Бағдарламалау қадамдары:

  1. Sonoff-тағы қайта жарқыл түймесін басып тұрыңыз,
  2. Sv түймесін бір уақытта басу арқылы 3v3 қоректенуін импульстеңіз,
  3. Қайта жыпылықтау түймесін босатыңыз,
  4. Енді құрылғыны бағдарламалауға болады.

ЕСКЕРТУ - ЕСКЕРТУ

Ешқандай жағдайда Sonoff қайта бағдарламалау кезінде қуат Mains арқылы берілмеуі керек

5 -қадам: Бағдарламалық қамтамасыз ету жүйесіне шолу

Бағдарламалық қамтамасыз ету жүйесіне шолу
Бағдарламалық қамтамасыз ету жүйесіне шолу
Бағдарламалық қамтамасыз ету жүйесіне шолу
Бағдарламалық қамтамасыз ету жүйесіне шолу

Бұл IoT Mains Controller құрылғысы көп жағдайда нұсқаулығы бар WiFi IoT температурасы мен ылғалдылығы сенсорындағы алты негізгі бағдарламалық құраушыны қамтиды. Бөлім: 8 IoT, Үйді автоматтандыру және жоғарыда 1 -суретте көрсетілген, кейбір баптаулармен.

SPIFFS

Бұл (4Мбайтқа дейін жаңартылған) SPI Flash файлдық жүйесі және келесі ақпаратты сақтау үшін қолданылады (жоғарыдағы 2-суретті қараңыз);

  • Белгішелер мен 'Желі контроллерінің конфигурациясының бастапқы беті' html: IoT WiFi желісіне қосылу мүмкін болмаған кезде IoT құрылғысы қызмет көрсетеді (әдетте қате қауіпсіздік ақпаратына байланысты) және пайдаланушыға желі контроллерін қашықтан конфигурациялау құралын ұсынады. жаңа SPIFFS мазмұнын қайта бағдарламалау немесе жүктеу қажеттілігі.
  • Қауіпсіздік туралы ақпарат: бұл IoT WiFi желісі мен MQTT брокеріне қосылу үшін IoT құрылғысы қосылған кезде қолданылатын ақпаратты сақтайды. 'Mains Controller Configuration Home Page' арқылы берілген ақпарат осы файлға жазылады ('secvals.txt').

Ескерту: Құрылғыны бастапқы күйге келтіру үшін SPIFFS -ті Arduino IDE -мен пайдалану туралы толық ақпаратты мына жерден қараңыз.

mDNS сервері

Бұл функция IoT құрылғысы WiFi желісіне Wi -Fi станциясы ретінде қосыла алмаса және оның орнына жергілікті WiFi маршрутизаторына ұқсас WiFi кіру нүктесіне айналған кезде шақырылады. Егер мұндай маршрутизатор болса, сіз әдетте оған 192.168.1.1 IP мекенжайын енгізу арқылы қосыласыз (әдетте қорапқа жапсырылған жапсырмада басылады) сіздің шолғыштың URL -жолағына тікелей кіру парағын аласыз. құрылғыны конфигурациялауға мүмкіндік беретін пайдаланушы аты мен құпия сөз. AP режимінде ESP8266 (кіру нүктесі режимі) үшін құрылғы әдепкі бойынша 192.168.4.1 IP мекенжайын орнатады, бірақ mDNS сервері жұмыс істеп тұрған кезде браузердің URL -жолағына «MAINSCON.local» деген адамға ыңғайлы атауды енгізу қажет. 'Желі контроллері конфигурациясының бастапқы беті'.

MQTT клиенті

MQTT клиенті барлық қажетті функцияларды қамтамасыз етеді; IoT желісінің MQTT брокеріне қосылыңыз, сіз таңдаған тақырыптарға жазылыңыз және берілген тақырыпқа жүктемені жариялаңыз. Қысқаша айтқанда, бұл IoT негізгі функционалдығын қамтамасыз етеді.

HTTP веб -сервері

Жоғарыда айтылғандай, егер IoT құрылғысы SSID, P/W және т.б. SPIFFS -те сақталатын қауіпсіздік ақпараты файлында анықталған WiFi желісіне қосыла алмаса, құрылғы кіру нүктесіне айналады. Қатынас нүктесі қамтамасыз ететін Wi -Fi желісіне қосылғаннан кейін, HTTP веб -серверінің болуы құрылғыға тікелей қосылуға және оның конфигурациясын HTTP веб -шолғышының көмегімен өзгертуге мүмкіндік береді, оның мақсаты - «Желі контроллері конфигурациясы». Негізгі беттің веб -беті, ол SPIFFS -те де сақталады.

WiFi станциясы

Бұл функция IoT құрылғысына қауіпсіздік ақпараты файлындағы параметрлерді қолдана отырып, үйдегі WiFi желісіне қосылу мүмкіндігін береді, онсыз сіздің IoT құрылғысы MQTT брокеріне жазыла алмайды/жариялай алмайды.

WiFi кіру нүктесі

WiFi кіру нүктесі болу мүмкіндігі - бұл IoT құрылғысы оған қосылу және WiFi станциясы мен браузер арқылы конфигурацияны өзгертуге мүмкіндік беретін құрал (мысалы, Apple iPad -тағы Safari). Бұл кіру нүктесі SSID = «MAINSCON» + IoT құрылғысының MAC мекенжайының соңғы 6 цифрын таратады. Бұл жабық желінің құпия сөзі «PASSWORD» деп аталады.

6 -қадам: Бағдарламалық қамтамасыз етуге шолу

Бағдарламалық қамтамасыз етуге шолу
Бағдарламалық қамтамасыз етуге шолу
Бағдарламалық қамтамасыз етуге шолу
Бағдарламалық қамтамасыз етуге шолу
Бағдарламалық қамтамасыз етуге шолу
Бағдарламалық қамтамасыз етуге шолу
Бағдарламалық қамтамасыз етуге шолу
Бағдарламалық қамтамасыз етуге шолу

Бұл бастапқы кодты сәтті құрастыру үшін сізге келесі қосымша кітапханалар қажет болады;

PubSubClient.h

  • Авторы: Ник О'Лири
  • Мақсаты: құрылғыға берілген брокермен MQTT тақырыптарын жариялауға немесе жазылуға мүмкіндік береді
  • Кімнен:

Bounce2.h

  • Авторы: Томас О Фредерикс
  • Мақсаты: Бағдарламалық қамтамасыз етуде қосқышты өшіру
  • Кімнен:

Кодқа шолу

Бағдарламалық қамтамасыз ету жоғарыдағы 1-суретте көрсетілгендей мемлекеттік машинаны қолданады (төменде келтірілген дереккөздің толық көшірмесі). Мынадай 5 негізгі күй бар;

  • ІШІНДЕ

    Бұл инициализация күйі қосылғаннан кейін енгізілген бірінші күй

  • NOCONFIG

    Бұл күй енгізілгеннен кейін жарамсыз немесе жоқ secvals.txt файлы анықталған жағдайда енгізіледі

  • NW күтуде

    Бұл күй өтпелі, WiFi желісіне қосылмаған кезде енгізілген

  • MQTT күтуде

    Бұл күй өтпелі, WiFi желісіне қосылғаннан кейін енгізіледі және бұл желіде MQTT брокерімен байланыс жоқ

  • АКТИВТІ

    Бұл WiFi желісінің қосылымы мен MQTT брокерінің қосылымы орнатылғаннан кейін енгізілген қалыпты жұмыс күйі. Дәл осы күйде желілік контроллер MQTT брокеріне жариялайды және жазылған тақырыптар бойынша пәрмендерді қабылдайды

Мемлекеттер арасындағы ауысуларды бақылайтын оқиғалар жоғарыдағы 1 -суретте сипатталған. Штаттар арасындағы ауысулар SecVals -тың келесі параметрлерімен де реттеледі;

  • Бірінші MQTT брокерінің IP мекенжайы. AAA. BBB. CCC. DDD нүктелі ондық түрінде
  • 2 -ші MQTT брокер порты. Бүтін түрінде.
  • 3 -ші MQTT Broker қосылымы STA режимінен AP режиміне ауыспас бұрын жасауға тырысады. Бүтін түрінде.
  • 4 -ші WiFi желісінің SSID. Мәтін еркін түрде.
  • 5 -ші WiFi желісінің құпия сөзі. Мәтін еркін түрде.

Жоғарыда айтылғандай, егер IoT құрылғысы WiFi желісіне Wi -Fi станциясы ретінде қосыла алмаса, SSIF және P/W SPIFFS -те сақталатын secvals.txt -те анықталған болса, құрылғы кіру нүктесіне айналады. Бұл кіру нүктесіне қосылғаннан кейін ол жоғарыда 2 -суретте көрсетілгендей «желі контроллері конфигурациясының бастапқы бетіне» қызмет көрсетеді («MAINSCON.local» немесе 192.168.4.1 браузерлерінің URL мекенжай жолағына енгізу арқылы). Бұл басты бет желі контроллерін HTTP браузері арқылы қайта конфигурациялауға мүмкіндік береді.

MQTT Тақырыпты атау конвенциясы

Жоғарыдағы 3 -суретте көрсетілгендей, MQTT тақырыптары үшін қолданылатын атау конвенциясы және менің бұрынғы нұсқаулығымда қолданылған үлгіге сәйкес келеді (мұнда 5 -қадам).

Бұл IoT құрылғысында қолданылатын MQTT тақырыптары

Түсінікті болу үшін мен осы құрылғы жариялайтын/жазылатын тақырыптар мен байланысты хабарламалар тізбегін құжаттадым (4 -сурет). Сондай -ақ, суретте корпустың сыртқы жағындағы ақ басқару түймесімен әрекеттесу бейнеленген (бірақ түйме қызыл түспен көрсетілген).

ACTIVE күйінде болғанда қашықтан конфигурациялауға рұқсат

MQTT брокеріне қосылғаннан кейін MQTT тақырыптық жарияланымдары арқылы құрылғының қауіпсіздік параметрлерін қашықтан қайта конфигурациялауға болады. Байланысты secvals.txt файлында тек жазу рұқсаты бар.

Қолданбаны түзету

Жүктеу кезегінде Sonoff құрылғысының жетекшісі келесі күйге келтіру туралы кері байланыс береді, бірақ ескерту керек, мұны көру үшін сізге қақпақты алып тастау және схеманы ашу қажет болады, сондықтан сіздің кодты әзірлеп, құрылғыны қуаттандырып отырған кезде мұны жасаған жөн. 3v3 қуатымен;

  • 1 Қысқа жарқыл: SPIFFS (secvals.txt) ішінде конфигурация файлы жоқ,
  • 2 Қысқа жыпылықтау: IoT құрылғысы WiFi желісіне қосылуға тырысуда,
  • Үздіксіз жарықтандыру: Sonoff IoT құрылғысы MQTT брокеріне қосылуға тырысады,
  • Өшірулі: құрылғы белсенді және 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 -сурет). Мен сондай -ақ екі жаңа IoT құрылғысының қабылдағышында өлшенген RSSI трендтерін көрсету үшін жазбаларды (Living Room Mains Cont. 1 & 2) қостым (3 -сурет).

Ақырында, Sonoff динамикалық күйін синхрондауға және коммутатор графигіндегі менің нашар әрекетімді жаңартуға/жандандыруға мүмкіндік беретін.rules және.items файлдарына жазбаларды қостым (қосқыш белсенді кезде жабылады және белсенді емес кезде ашылады). 2 -суретте MC1 белсенді және MC2 белсенді емес мысал келтірілген.

Ескертпе 1: Егер сіз OpenHAB -ты қалай пайдалану керектігін білмесеңіз, мына жерден қараңыз: OpenHAB орнату және конфигурациялау. 6 -бөлім: IoT, үйді автоматтандыру '

Ескерту 2: Өзгертілген сайт картасының, ережелер мен элементтер файлдарының, белгішелердің және т.б. көшірмесі төмендегі ZIP файлында берілген.

3 -ескерту: RSSI = Сигнал күшінің көрсеткіші. Бұл IoT құрылғысы сіздің WiFi желіңізді қаншалықты жақсы көре алатындығының көрсеткіші.

8 -қадам: IoT құрылғысын тексеру

Image
Image
IoT құрылғысын тексеру
IoT құрылғысын тексеру

Instructable WiFi IoT температура мен ылғалдылық сенсорында сипатталғандай. Бөлім: 8 IoT, Үйде автоматтандыру 7-қадам, IoT құрылғысын бастапқы тестілеу MQTT Spy арқылы MQTT байланысы арқылы орындалды (жоғарыдағы суреттегі 1 жүйелік блок-схемадағыдай), жарықдиодты шығыс, түйме кірістері (Sonoff қайта жарқыл түймесі де, ақ сыртқы түйме) және сериялық интерфейстегі трафикті жөндеу. Бұл маған барлық қол жетімді жазылған тақырыптарды қолдануға және жарияланған жауаптарды тексеруге мүмкіндік берді. Тағы да, бұл қолмен жүргізілді және көп уақытты қажет етті, бірақ ол хабарларды/тақырыптық жарияланымдарды 100% қамтуға мүмкіндік берді.

Негізгі бағдарламалық қамтамасыз етудің мемлекеттік машинасы (жоғарыда 6 -қадам) бұрынғы нұсқаулықтан (8 -бөлім) мұраланғандықтан, бағдарламалық қамтамасыз ету WiFi N/W және MQTT брокеріне қосыла алатынын тексеруден басқа, бұл дұрыс жұмыс істеді деп есептелді.

Толық жүйелік тестілеу желі контроллері мен IoT инфрақұрылымының көмегімен аяқталды (қайтадан 1 -сурет), бұл жолы IoT құрылғысымен өзара әрекеттесуді басқару үшін OpenHAB көмегімен. IoT жабдығы мен жалған жүктемені жоғарыдағы 2 -суреттен көруге болады.

Бейнеде жүйелік тестілер туралы толық мәліметтер берілген және OpenHAB құрылғылары (PC/Chrome және iPad/OpenHAB APP) арасындағы синхрондау нақты уақытта көрсетіледі. Ол сондай -ақ MQTTSpy арқылы желі контроллерлеріне тікелей хабар алмасуды көрсетеді (MQTT брокерін орнату туралы қосымша мәліметтерді мына жерден қараңыз. 2 -бөлім: IoT, үй автоматикасы) және PuTTY SSH қосылымы арқылы таңқурай pi серверінен OpenHAB құйрықты жүйе журналы (қосымша ақпаратты мына жерден қараңыз) егжей -тегжейлі OpenHAB орнату және конфигурациялау 6 -бөлім: IoT, үйдегі автоматтандыру).

Ескерту: Түзету трафигі бағдарламалық қамтамасыз етудің соңғы шығарылымы үшін құрастырылды.

9 -қадам: Қорытынды

Жалпы

Жоба салыстырмалы түрде оңай орындалды және жақсы жұмыс жасады. Ендірілген бағдарламалық жасақтама осы сериядағы 8 -бөлімнің температура мен ылғалдылық сенсорлары үшін пайдаланылатын кодтың қысқартылған нұсқасы болғандықтан, өндіру оңай болды.

Мен бастапқыда тек эстетикалық сапасы үшін ақ түсті бөлшектерді алуды көздедім. Мен бұған бақылау түймесінен басқа барлық нәрсеге қол жеткіздім, мүмкіндігінше тырысыңыз, мен жақсы/арзан ақ түсті түймені ала алмадым.

Sonoff 10A құрылғысы

Мен төменде Sonoff құрылғысының ақылға қонымды артықшылықтары мен кемшіліктері деп санайтын нәрселерді жаздым

Артықшылықтары

  • Арзан.
  • Жақсы қоғамдық қолдау.
  • Arduino IDE арқылы қайта бағдарламалауға болады.

Кемшіліктері

  • Жіңішке қоршау.
  • Минималды енгізу -шығару (қолдануға болатын қосқыштарға шығарылады).
  • Ол тыныш күйде ыстық күйде жүреді.
  • Бортта тек 1 МБайт SPI флеші бар.
  • PITA - бұл бір рет қосылған кезде қайта бағдарламалау.
  • Sonoff тестілеуіне жаңа кодты кірістіру кезінде реле 5В болғанда және Sonoff бағдарламалау үшін 3в3 болса, реле жабылуы қиын болды. Релені іске қосу тек құлаққа естіледі.

Мазасыздықтар

  • Ол бейтарап сызықты ауыстырмайды. SPST релесі қолданылады.
  • Қосылмаған.
  • Нашар кабель кернеуі.
  • ПХД Sonoff корпусында бекітілмеген.

Инженерлік дизайн туралы түсінік

Бұл IoT құрылғысы Ұлыбританияның электр желісін (240VAC RMS) ауыстыру үшін қолданылуы керек екенін ескере отырып, мен жақсы механикалық және электрлік конструкторлық тәжірибені ұстандым және барлық электр компоненттерін көрсетпестен, электр тогын өткізбеу арқылы ток соғу қаупін азайттым. шығыс жүктемесі, желілік контроллерге де, оптикалық байланысқан қосалқы жүйеге де сақтандырғыш қорғанысын қолдану, жақсы үзіліссіз жерге қосу және оптикалық/гальваникалық оқшаулауды қолдану.

Мүмкін жақсарту

Көз жүгірткен кезде, желі контроллерінің шығысы белсенді болатын визуалды көрсеткішті қосу пайдалы болар еді (жарық диоды немесе неон). Күнделікті пайдалануда қиындықтар болмаса да, кез келген техникалық қызмет көрсетілмес бұрын жүктемені оқшаулау немесе жергілікті басқару батырмасын басу шамды қосқан кезде шам жанатын жағдайда шығуды ауыстырады.

Қорытынды ескерту

Егер сіз электр қуатымен жұмыс істеудің өте нашар екі мысалын көргіңіз келсе, төмендегі сілтемелерді қараңыз. Олардың Дарвин марапаттары жақын арада постта болады, мен сенімдімін;

  • Mad Scientist ұзартқыш сымы
  • Қоғамдық пікір 03 - Қуат қауіпсіздігіне қатысты алаңдаушылық!

10 -қадам: Қолданылған әдебиеттер

Мен осы Нұсқаулықты біріктіру үшін келесі дереккөздерді қолдандым;

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 Опто-изолятор мәліметтер парағы

Ұсынылған: