Мазмуну:

IoT Mains Controller. 9 -бөлүк: IoT, Үйдү автоматташтыруу: 10 кадам (Сүрөттөр менен)
IoT Mains Controller. 9 -бөлүк: IoT, Үйдү автоматташтыруу: 10 кадам (Сүрөттөр менен)

Video: IoT Mains Controller. 9 -бөлүк: IoT, Үйдү автоматташтыруу: 10 кадам (Сүрөттөр менен)

Video: IoT Mains Controller. 9 -бөлүк: IoT, Үйдү автоматташтыруу: 10 кадам (Сүрөттөр менен)
Video: Купить электроскутер цена за дешёвый citycoco 2021 электроскутер надежный citycoco skyboard 2024, Июль
Anonim
IoT Mains Controller. 9 -бөлүк: IoT, Үйдү автоматташтыруу
IoT Mains Controller. 9 -бөлүк: IoT, Үйдү автоматташтыруу

Disclaimer

БИРИНЧИ ОКУУ

Бул Нускоодо электр энергиясын колдонгон проект жөнүндө маалымат берилет (бул учурда Улуу Британия 240VAC RMS), коопсуз практика жана жакшы дизайн принциптерин колдонууга кам көрүү менен бирге, бул камсыздоо чыңалуусу менен иштөөдө дайыма өлүмгө алып келүүчү электрдик шок коркунучу бар. анын мазмунуна ылайык жеке жаракат же мүлккө зыян келсе, автор эч кандай жоопкерчиликти албайт. Демек, сиз бул долбоорду өзүңүздүн тобокелге саласыз.

Преамбула

Бул макала, үйдү автоматташтыруу боюнча 9 -серия, Sonoff 10A IoT магистралдык контроллерин үй шартында ийгиликтүү жайылтуу үчүн керектүү программалык камсыздоону камтыган учурдагы үй автоматташтыруу системасына кантип кошуу керектигин документтештирет.

Киришүү

Жогоруда айтылгандай, бул Instructable iTead'ден Sonoff 10A аркылуу IoT тармагынын контроллерин кантип жасоо жана интеграциялоо керектиги жөнүндө кеңири маалымат. Түзмөктүн өзү 10amps @ 90 ~ 250VAC үчүн бааланган деп көрсөтүлгөн, бирок бул ишке ашыруу Улуу Британиянын 240VAC RMS негизги камсыздоосун камсыз кылган эритилген сайгыч аркылуу 5ampsке чейин төмөндөтөт.

Дизайн методологиясы MQTT/OpenHAB негизделген IoT тармагына бул жерден алынган кайра колдонулган код боюнча үйдү автоматташтыруу боюнча толукталган. Ал ошондой эле IoT тармагынын каалаган элементинин жоголушун чече алат жана өз алдынча иштөөгө толук жөндөмдүү. Өз алдынча режимде турганда, түзмөктү көзөмөлдөө корпустун үстүндөгү башкаруу баскычын басуу аркылуу ишке ашат, ал алдыга берүү өндүрүшүн которот.

Sonoff түзмөгүнүн бул жергиликтүү көзөмөлүн иштетүү үчүн, GPIO14 корпусунан чыгарылып, триггер катары колдонулат. Коопсуздукту камсыз кылуу үчүн, бул киргизүү опто-кошкуч схемасы аркылуу берилип, пластикалык корпуска жайгаштырылган, ошондуктан оператор эч качан тармактын чыңалуусуна дуушар болбойт.

Акырында, проза ошондой эле Arduino IDEди колдонуп Sonoff 10Aдагы ESP8266 түзмөгүн кантип кайра программалоону сүрөттөйт жана максаттуу кодду ишенимдүү программалоо үчүн колдонулуучу түзүлүштүн толук схемасын берет.

Мага кандай бөлүктөр керек?

Sonoff Mains Controller

  1. 1 өчүрүү Sonoff 10A бул жерде
  2. 1 өчүрүү 7805L 5v чыңалуу жөндөгүчү бул жерде
  3. 1 өчүрүү 240/6VAC 1.5VA Transformer бул жерде
  4. Бул жерде 0.1 керамикалык конденсатор жок
  5. 1 өчүрүү 1000uF @25v Электролиттик конденсатор бул жерде
  6. 1 өчүрүү Bridge 2W01 бул жерде
  7. Бул жерде 2 өчүрүүчү 4K7 каршылыгы
  8. 1 өчүрүүчү 330R каршылыгы бул жерде
  9. 1 өчүрүү SPST баскычы бул жерде
  10. 1 өчүрүү Mulitcomp BM12W ABS тиркемеси бул жерде
  11. 1 өчүрүү TIL111 opto-coupler бул жерде
  12. 1 өчүрүү 3-Way терминалдык блогу бул жерде
  13. 1 өчүрүү 2-Way коддуу 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мм ылдам сокку бул жерде 500мА
  20. 2 өчүрүү бул жерде полиамиддик кабель бездери
  21. UK өчүрүү 1 тармак өчүрүү (BS1363/A) бул жерде
  22. 1 Улуу Британиянын башкы розеткасы (BS1363/A) бул жерде
  23. 7 өчүрүү M3 16мм CS нейлон бурамалары, (жаңгактарды кошпогондо 10) бул жерде/бул жерде
  24. 2 өчүрүү Zip байланыштар бул жерде
  25. Бул жерде 1 верборд (0,1 дюйм)
  26. 1 өчүрүү Ар кандай узундуктар 22swg калай жез зым бул жерде
  27. 1 өчүрүү 3M White UK магистралдык кабели бул жерде
  28. 10 өчүрүлгөн Molex розеткасы бул жерде

Sonoff Programmer

  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 өчүрүү 2-Way коддуу molex туташтыргычы бул жерде/бул жерде
  9. 1 өчүрүү 3-Way коддуу molex туташтыргычы бул жерде/бул жерде
  10. 5 өчүрүлгөн Molex розеткасы бул жерде
  11. 1 өчүрүү 6-Way molex розеткасы бул жерде
  12. 1 өчүрүү SPST баскычы бул жерде
  13. 1 өчүрүү 2.1мм PSU розеткасы бул жерде
  14. Бул жерде 1 верборд (0,1 дюйм)
  15. 1 өчүрүү USB сериялык адаптерге (FTDI) бул жерде

Мага кандай программа керек?

  1. Arduino IDE 1.6.9 бул жерде
  2. Arduino IDE ESP8266 программасы үчүн конфигурацияланган. Бул жерден караңыз; ESP8266-01 программасы үчүн Arduino IDE орнотуу

Мага кандай куралдар керек?

  1. Кандооч,
  2. Бургулоо жана ар кандай биттер (анын ичинде кабелдик бездер үчүн баскычтуу тешик кескич жана башкаруу баскычы),
  3. Бурагычтар (ар кандай),
  4. Жөнгө салынуучу ачкычтар (эки өчүрүү, жаактын туурасы> 25мм, кабель бездери үчүн),
  5. Файлдар (ар кандай),
  6. Бекем вице,
  7. Мылтык,
  8. DMM (жакшыраак CAT IV).

Мага кандай көндүмдөр керек?

  1. Электрониканы жана үйдүн электр коопсуздугун/дизайнын/зымдарын ж.
  2. Arduino жана анын IDE билими,
  3. Жакшы фаберлик көндүмдөрү (ширетүү, берүү, бургулоо ж. Б.),
  4. Бир аз Сабыр,
  5. Үй тармагыңыз жөнүндө бир аз түшүнүк.

Темалар камтылган

  • Киришүү
  • Circuit Overview
  • Sonoff RetroMods
  • Курулуш жана монтаждоо деталдары
  • Sonoff программалоо адаптери
  • Программалык камсыздоо системасына сереп
  • Программалык камсыздоо
  • OpenHAB конфигурациясы
  • Сиздин IoT түзмөгүңүздү текшерүү
  • Жыйынтык
  • Колдонулган шилтемелер

Сериялар шилтемелери

8 -бөлүккө: WiFi IoT Температура жана Нымдуулук Сенсору. Бөлүм: 8 IoT, Үйдү автоматташтыруу

10 -бөлүккө: IoT аркылуу IR алыстан башкаруу. 10 -бөлүк IoT, Үйдү автоматташтыруу

1 -кадам: Районго жалпы сереп

Circuit Overview
Circuit Overview
Circuit Overview
Circuit Overview
Circuit Overview
Circuit Overview
Circuit Overview
Circuit Overview

Обзор

Жогорудагы киришүүдө айтылгандай, жергиликтүү контроллерди күйгүзүү жана өчүрүү үчүн Sonoffтун ESP8266 бортуна киргизүү талап кылынган. Мындай тышкы киргизүүнү киргизүү Sonoff ABS корпусунун бузулушун талап кылат, ошондуктан потенциалдуу шок коркунучун жаратат. Муну жеңүү үчүн мен оптикалык изоляцияны колдондум, андыктан магистралдык контроллер системасынын корпусунун сыртында электр энергиясынын таасири болбойт.

Кийинки нерсе опто-изоляциялоо схемасынын сүрөттөмөсү (жогоруда 1-сүрөттө).

Райондук маалымат

Опто-изоляциялоочу схема анын жабдууларын түзмөккө колдонулган тармактан алат. 240VAC RMS, J1 аркылуу феоникс байланыш MKDSN2, 5/3-5.08 полиамиддүү 3-Way терминалы 16А 400Вда 2.5А (кв) CSA жана F1 500мА 20мм кабелин көтөрө алган контакте/изоляциялоочу трансформаторго колдонулат. тез сактандыргыч. TR1дин экинчи оромунда жеткиликтүү 6VAC диод көпүрөсү B1 менен толукталган толкун.

Бул толук толкундун оңдолгон чыгарылышы андан кийин стабилдештирилет жана C1, C2 C3, R3 жана IC1 тарабынан 7805L сериясындагы шунт жөнгө салгыч менен жөнгө салынат.

5v темир жолу J1 аркылуу туташкан сырттан орнотулган ак SPST баскычы аркылуу OK1 a TIL111 опто-изоляторуна кирүүнү көзөмөлдөө үчүн колдонулат. 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 аппаратын интеграциялоо үчүн кээ бир ретроспективдүү өзгөртүүлөрдү киргизүү зарыл.

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

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

Экинчи өзгөртүү SPI Flash түзмөгүнүн өлчөмүн демейки 1МБайттан 4МБайтка чейин көбөйтүү, бул IoT веб -серверинин файлдарын SPIFFSте кармоо үчүн жетиштүү орунду берүү.

Мен SMD SPI флеш -аппаратын (W25Q32FVSIG) Ebayден бул жерден сатып алдым

Жарыкты алмаштыруу үчүн, SMD түзмөгүнө жакшыраак кирүү үчүн, 4 -сүрөттөгүдөй эле Sonoff LEDын убактылуу алып салдым. Жарыкты өчүрүү үчүн мен жогорудагы 5-сүрөттө көрсөтүлгөндөй жылуулук тапанчасын колдондум. Андан кийин 4MBte Flash жана LED экөө тең кайра ширетилген (pic 6).

3 -кадам: Курулуш жана Монтаждын чоо -жайы

Курулуш жана монтаждоо деталдары
Курулуш жана монтаждоо деталдары
Курулуш жана монтаждоо деталдары
Курулуш жана монтаждоо деталдары
Курулуш жана монтаждоо деталдары
Курулуш жана монтаждоо деталдары
Курулуш жана монтаждоо деталдары
Курулуш жана монтаждоо деталдары

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

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

Экинчи штаммды басаңдатуу ашыкча чыңалуу колдонулганда жана кабель түйүнү иштебей калса, кабелге салынган бир сыдырма галстук аркылуу болгон, сыдырма галстук кабелди сактап калат.

Кабелдик бездерге жана Sonoff жана opto-изоляциялык электрониканы орнотууга жетиштүү орун берүү үчүн, мен жогоруда көрсөтүлгөндөй ички PCB монтаж кабыргаларын сыйрып алдым (Pic 2).

Бардык электроника корпустун сырты менен изоляцияны сактоо үчүн M3 нейлон CS бурамалары аркылуу коопсуз орнотулган. Оптикалык изоляциялоочу электроника 5 бекитүүчү чекит менен орнотулган, эгерде агрегат түшсө, анда механикалык күчтүүлүктү камсыз кылат, ошону менен изоляциялоочу трансформатордун массасы верборддун схемасын бузууга жол бербейт.

Бөлүмгө жеткирүү Улуу Британиянын стандарт түстүү коддолгон ак 3 негизги ПВХ изоляцияланган көп тармактуу (32/0.2мм кв) кабели 1мм (кв) CSA аркылуу ишке ашты. 10А көтөрүүгө жөндөмдүү 7.2 мм OD менен.

Бул түзмөк Улуу Британиянын электр тармагына (240VAC RMS) бекитилген стандарттуу 3 пин коопсуздук сайгычы (BS 1363/A) аркылуу туташкан. Штепсель 5Ада бириктирилген.

Opto-изоляция схемасына бардык магистралдык кабельдер pheonix контакт MKDSN2 аркылуу туташтырылган, 5А/3-5.08 полиамиддик терминалдар 16Ада 400Вда 2.5мм (кв) CSA кабелин көтөрө алат, ошону менен эки кабель үчүн жетиштүү кубаттуулукту камсыз кылат. ар бир позиция.

Эч кандай магистралдык кабелдер калай болгон эмес, жөн гана туташтыргыч блогуна киргизүүдөн мурун өзөктөрдүн жайылып кетпеши үчүн бурулган. Кабелдерди калайлоо - бул коркунучтуу практика, анткени убакыттын өтүшү менен ширетүүчү "бошоңдойт", акыры кабелдин туташтыргыч блогунда жоголуп кетишине алып келет.

Эскертүү:

  • OD = Сырткы диаметри.
  • VAC = Вольт өзгөрмө ток
  • RMS = Root Mean Square
  • CSA = Cross Sectional Area
  • CS = Counter Sunk

4 -кадам: Sonoff программалоо адаптери

Sonoff программалоо адаптери
Sonoff программалоо адаптери
Sonoff программалоо адаптери
Sonoff программалоо адаптери
Sonoff программалоо адаптери
Sonoff программалоо адаптери
Sonoff программалоо адаптери
Sonoff программалоо адаптери

Sonoff 10Aны Arduino IDE аркылуу кайра программалоодо эки жагын эске алуу керек;

  1. ESP8266ны программалоо үчүн Arduino IDEди конфигурациялоо,
  2. Аппаратты программалоо аракети.

ESP8266ны программалоо үчүн Arduino IDEди конфигурациялоо

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 аркылуу кайра программаласа болот.

Иштерди бир аз жеңилдетүү үчүн мен SK1… 3 кабелдик байламтасы аркылуу Сонофф менен туташкан программалоо түзмөгүн (3 жана 4 -сүрөттөрдү) түздүм (ушул Нускамалык 1 -кадамда сүрөттөлгөндөй). Бул ESP8266 программасын жеңилдетүүгө мүмкүндүк берди. Ал ошондой эле R1 жана 4K7 каршылыгын жана S1 баскычын колдонуу аркылуу киргизүү катары GPIO14 тестирлөө каражатын берди.

Жогорудагы программалоо түзмөгүн колдонуу (Pics 3 & 4) Программалоо кадамдары,

  1. Sonoffтун кайра жаркылдоо баскычын басып кармап туруңуз,
  2. 3v3 менен камсыздоону бир аздан кийин S2 басып,
  3. Кайра жаркылдоо баскычын коё бериңиз,
  4. Эми түзмөктү программалоого болот.

ЭСКЕРТҮҮ - ЭСКЕРТҮҮ

Эч кандай шартта, энергияны Sonoff кайра программалоо учурунда Mains аркылуу берүү керек

5 -кадам: Программалык камсыздоо тутумуна сереп

Программалык камсыздоо системасына сереп
Программалык камсыздоо системасына сереп
Программалык камсыздоо системасына сереп
Программалык камсыздоо системасына сереп

Бул IoT Mains Controller түзмөгү көбүнчө Instructable WiFi IoT Температура жана Нымдуулук Сенсорундагыдай алты негизги программалык компоненттерди камтыйт. Бөлүм: 8 IoT, Home Automation жана кээ бир ыңгайлаштыруу менен 1 -сүрөттө көрсөтүлгөн.

SPIFFS

Бул (4МБайтка чейин жаңыртылган) борттогу SPI Flash берүү системасы жана төмөнкү маалыматты кармоо үчүн колдонулат (2-сүрөттү караңыз);

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

Эскертүү: Түзмөктү алгач орнотуу үчүн, бул жерде Arduino IDE менен SPIFFSти колдонуу боюнча толук маалымат алуу үчүн бул жерден караңыз.

mDNS Server

Бул функция IoT түзмөгү сиздин WiFi тармагыңызга WiFi станциясы катары туташа албай калганда, анын ордуна ички 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 Web Server

Жогоруда айтылгандай, эгер IoT түзмөгү SSID, P/W ж.б. SPIFFSте сакталган Коопсуздук маалыматы файлында аныкталган WiFi тармагына туташа албаса, анда түзмөк Кирүү чекитине айланат. Кирүү түйүнү камсыз кылган WiFi тармагына туташкандан кийин, HTTP веб -серверинин болушу түзмөккө түз туташууга жана анын конфигурациясын HTTP веб -браузери аркылуу өзгөртүүгө мүмкүндүк берет, анын максаты 'Mains Controller конфигурациясын тейлөө. Башкы баракчанын веб -баракчасы, ал SPIFFSте да бар.

WiFi бекети

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

WiFi кирүү чекити

WiFi кирүү чекити болуу жөндөмү - бул IoT түзмөгү ага туташууга жана WiFi станциясы жана браузер аркылуу конфигурацияны өзгөртүүгө мүмкүнчүлүк берүүчү каражат (мисалы, Apple iPadдеги Safari сыяктуу). Бул кирүү чекити SSID = "MAINSCON" + IOT түзмөгүнүн MAC дарегинин акыркы 6 цифрасын таратат. Бул жабык тармактын сырсөзү элестетүү менен "PASSWORD" деп аталат.

6 -кадам: Программаны карап чыгуу

Программалык камсыздоо
Программалык камсыздоо
Программалык камсыздоо
Программалык камсыздоо
Программалык камсыздоо
Программалык камсыздоо
Программалык камсыздоо
Программалык камсыздоо

PreambleTo бул булак кодун ийгиликтүү түзүү үчүн сизге төмөнкү кошумча китепканалар керек болот;

PubSubClient.h

  • Автору: Nick O'Leary
  • Максаты: Берилген Брокер менен MQTT темаларын жарыялоого же жазылууга түзмөктү иштетет
  • Кимден:

Bounce2.h

  • Автор: Томас О Фредерикс
  • Максаты: Программалык камсыздоону киргизүү баскычы
  • Кимден:

Code Overview

Программа жогоруда 1-сүрөттө көрсөтүлгөндөй мамлекеттик машинаны колдонот (булактын толук көчүрмөсү төмөндө). Төмөндөгүдөй 5 негизги мамлекет бар;

  • ИЧИНДЕ

    Бул инициализация абалы күйгүзүлгөндөн кийин киргизилген биринчи абал

  • NOCONFIG

    Бул абал күйгүзүлгөндөн кийин жараксыз же жок secvals.txt файлы аныкталса киргизилет

  • NW күтүлүүдө

    Бул абал убактылуу, Wi -Fi тармагы жок болгон учурда киргизилген

  • MQTT күтүлүүдө

    Бул абал убактылуу, WiFi тармагына туташкандан кийин киргизилген жана ал тармакта MQTT брокери менен эч кандай байланыш жок

  • АКТИВДҮҮ

    Бул кадимки ыкчам абал, WiFi тармагына туташуу жана MQTT Брокери байланышы орнотулгандан кийин киргизилет. Дал ушул учурда Mains Controller MQTT Brokerге жарыялап, жазылган темалар аркылуу буйруктарды алат

Мамлекеттер ортосундагы өткөөлдөрдү көзөмөлдөгөн окуялар жогорудагы 1 -сүрөттө сүрөттөлгөн. Мамлекеттердин ортосундагы өткөөлдөр SecValsтын төмөнкү параметрлери менен да жөнгө салынат;

  • 1st MQTT Broker IP дареги. AAA. BBB. CCC. DDD чекиттүү ондук түрүндө
  • 2 -MQTT брокердик порт. Бүтүн түрүндө.
  • 3rd MQTT Broker байланышы STA режиминен AP режимине өтүүдөн мурун жасоого аракет кылат. Бүтүн түрүндө.
  • 4 -WiFi WiFi тармагы SSID. Эркин формада текст.
  • 5th WiFi тармагынын сырсөзү. Эркин формада текст.

Жогоруда айтылгандай, эгер IoT түзмөгү WiFi станциясына WiFi тармагына туташа албаса, анда SSID жана P/W SPIFFSте сакталган secvals.txtте аныкталган, түзмөк Кирүү чекитине айланат. Бул кирүү чекитине туташкандан кийин, ал 2 -сүрөттө көрсөтүлгөндөй "Mains Controller Configuration Home Page" кызматын аткарат (браузерлериңиздин URL дарек тилкесине "MAINSCON.local" же 192.168.4.1ди киргизүү менен). Бул башкы баракча HTTP браузери аркылуу тармак контроллерин кайра конфигурациялоого мүмкүндүк берет.

MQTT Теманы атоо конвенциясы

Жогорудагы 3 -сүрөттө көрсөтүлгөн MQTT темалары үчүн колдонулган атоо конвенциясы жана менин мурунку Инструкциямда колдонулган үлгүгө шайкеш келет (бул жерде 5 -кадам).

Бул IoT түзмөгү колдонгон MQTT темалары

Түшүнүктүү болуш үчүн, мен бул түзмөк жарыялаган/жазылуучу темаларды жана байланышкан билдирүүлөрдүн тизмегин документтештирдим (4 -сүрөт). Сүрөттө ошондой эле корпустун сыртындагы ак башкаруу баскычы менен болгон өз ара аракеттенишүү чагылдырылган (бирок тамашалуу түрдө баскыч кызыл менен көрсөтүлгөн).

ACTIVE абалында алыстан конфигурациялоо мүмкүнчүлүгү

MQTT Брокерине туташкандан кийин, MQTT тема публикациялары аркылуу түзмөктүн коопсуздук параметрлерин алыстан конфигурациялоого болот. Байланышкан secvals.txt файлында жазууга гана уруксат бар.

Колдонуучунун мүчүлүштүктөрүн оңдоо

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

  • 1 Кыска жарк: SPIFFS (secvals.txt) жайгашкан Config файлы жок,
  • 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 LEDди башкарууга жана кайра жаркылдоо баскычынын статусун жарыялоого мүмкүндүк берет. Булар мүчүлүштүктөрдү оңдоо процессинде гана мааниге ээ болсо да, кадимки иштөө учурунда колдонуучуга эч кандай таасирин тийгизбейт.

7 -кадам: OpenHAB конфигурациясы

OpenHAB конфигурациясы
OpenHAB конфигурациясы
OpenHAB конфигурациясы
OpenHAB конфигурациясы
OpenHAB конфигурациясы
OpenHAB конфигурациясы

Тестирлөө максатында мен үйүмдүн "Конок бөлмөсүнө" эки электр контроллерин атайын жайгаштырууну чечтим. Бул OpenHAB баракчасына pic 1дегидей башкы сайттын баракчасы аркылуу жетүүгө болот.

Мен мурунку Instructable (бул жерде) берилген OpenHAB.сайт картасынын конфигурациясын өзгөртүп, 'Mains Controller 1' жана 'Mains Controller 2' үчүн жеке жазууларды коштум (жогорудагы 2 -сүрөт). Мен ошондой эле жазууларды кошуп койдум (Living Room Mains Cont. 1 & 2) RSSI Trendsди көрсөтүү үчүн эки жаңы IoT түзмөгүнүн ресиверинде (pic 3).

Акырында, Sonoffтун динамикалык абалын синхрондоштурууга жана которуу графигиндеги менин начар аракетимди жаңыртууга/жандандырууга уруксат берүү үчүн.rules and.items файлдарына жазууларды коштум (которгуч активдүү болгондо жабылат жана активдүү эмес болгондо ачылат). Pic 2 MC1 активдүү жана MC2 активдүү эмес экенин мисал келтирет.

Эскертүү 1: Эгерде сиз OpenHABты кантип колдонууну билбесеңиз, бул жерден "OpenHAB орнотуу жана конфигурациялоо" бөлүмүн караңыз. 6 -бөлүк: IoT, Home Automation '

Эскертүү 2: Өзгөртүлгөн сайттын картасынын, эрежелердин жана пункттардын файлдарынын, Icons ж.б. көчүрмөсү төмөнкү zip файлында берилген.

Эскертүү 3: RSSI = Сигналдын Күчтүү Көрсөтмөсү. Бул IoT түзмөгү сиздин WiFi тармагыңызды канчалык жакшы көрө ала тургандыгынын көрсөткүчү.

8 -кадам: IoT түзмөгүңүздү текшерүү

Image
Image
Сиздин IoT түзмөгүңүздү текшерүү
Сиздин IoT түзмөгүңүздү текшерүү

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

Негизги программалык камсыздоонун мамлекеттик машинасы (жогорудагы 6 -кадам) мурунку Инструкциядан (Бөлүм: 8) мураска калгандыктан, программалык камсыздоону WiFi N/W жана MQTT Брокерине туташтырса болот, бул туура иштеп жатат деп божомолдонгон.

Толук системалык деңгээлдеги тестирлөө тармак контролери жана IoT инфраструктурасы (1 -сүрөт) менен аяктады, бул жолу IoT түзмөгү менен өз ара аракеттенүүнү көзөмөлдөө үчүн OpenHAB колдонулду. IoT жабдууларын жана жасалма жүктөөнү жогорудагы 2 -сүрөттөн көрүүгө болот.

Видео системалык тесттердин толук маалыматын берет жана реалдуу убакытта OpenHAB түзмөктөрүнүн (PC/Chrome жана iPad/OpenHAB APP) ортосунда синхрондоштурууну так көрсөтөт. Ал ошондой эле MQTTSpy аркылуу Mains Controls үчүн жандуу билдирүүлөрдү көрсөтөт (MQTT брокерин орнотуу жөнүндө көбүрөөк маалымат алуу үчүн бул жерди караңыз. 2 -бөлүк: IoT, Home Automation) жана PuTTY SSH туташуусу аркылуу малина pi серверинен OpenHAB куйруктуу тутум журналы (мындан ары көрүү үчүн бул жерди караңыз) чоо -жайы OpenHABты орнотуу жана конфигурациялоо. 6 -бөлүк: IoT, Үйдү автоматташтыруу).

Эскертүү: Мүчүлүштүктөрдү ташуу программалык камсыздоонун акыркы чыгарылышы үчүн түзүлдү.

9 -кадам: Жыйынтык

General

Долбоор салыштырмалуу оңой эле бүткөн жана жакшы иштеген. Камтылган программалык камсыздоону өндүрүү оңой эле, бул сериядагы 8 -бөлүктүн температура жана нымдуулук сенсорлору үчүн колдонулган коддун кыскартылган версиясы.

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

Sonoff 10A түзмөгү

Мен Sonoff түзмөгүнүн акылга сыярлык оң жана терс жактары деп эсептеген нерселеримди төмөндө келтирдим

Pros

  • Арзан.
  • Жакшы коомчулук колдоосу.
  • Arduino IDE аркылуу кайра программаласа болот.

Cons

  • Жабык корпус.
  • Минималдуу I/O (жарактуу туташтыргычтарга чыгарылган).
  • Ал тынч абалда ысык иштейт.
  • Бир гана борттогу SPI жарыгы бар.
  • Бир жолу зым менен орнотулганда кайра программалоо үчүн PITA болуп саналат.
  • Жаңы кодду Sonoffтун тестирлөөсүнө киргизүүдө реленин жабылышы көйгөй жараткан, анткени реле 5v жана Sonoffко программалоо үчүн колдонулган жабдуу 3v3. Релени иштетүү кулакка гана көрүнөт.

Тынчсыздануу

  • Бул Нейтралдык линияны алмаштырбайт. SPST релесин колдонот.
  • Эритилген эмес.
  • Кабелдин начарлашы начар.
  • ПКБ Sonoff корпусунда корголгон эмес.

Инженердик дизайн боюнча комментарий

Бул IoT түзмөгү Улуу Британиянын тирүү электр тармагын (240VAC RMS) колдонуу үчүн колдонулушу керек экенин эске алып, мен жакшы механикалык жана электрдик дизайн тажрыйбасын аткардым жана электр өткөргүч материалдарды ачыкка чыгарбоо менен шок коркунучу минималдуу болушун камсыз кылдым. Чыгуу жүктөмү, Электр тармагынын контролеруна жана Оптого кошулган суб-системага сактандыруучу коргоону колдонуу, жакшы үзүлбөгөн жерге кошуу жана оптикалык/гальваникалык изоляцияны колдонуу.

Мүмкүн болгон жакшыртуу

Көз жүгүртүү менен, тармак көзөмөлдөгүчүнүн активдүү болгонун көрсөтүүчү көрсөткүчтү киргизүү пайдалуу болмок (LED же Неон). Күнүмдүк колдонууда көйгөй болбосо да, кандайдыр бир тейлөө жүргүзүлөр алдында жүктү жабдуулардан бөлүп алуу стандарттуу практикада, же жергиликтүү башкаруу баскычын басуу лампа туташтырылганда күйүп турган учурда чыгууну которот.

Акыркы эскертүү

Эгерде сиз электр энергиясы менен иштөө боюнча өтө начар эки мисалды көргүңүз келсе, төмөнкү шилтемелерди караңыз. Алардын Дарвин сыйлыктары жакында постто болот, мен ишенем;

  • Mad Scientist узартуу зымы
  • Коомчулуктун пикири 03 - Электр энергиясынын коопсуздугу боюнча тынчсыздануу!

10 -кадам: Колдонулган шилтемелер

Мен бул Нускаманы чогуу коюу үчүн төмөнкү булактарды колдондум;

PubSubClient.h

  • Автору: Nick O'Leary
  • Максаты: Берилген Брокер менен 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 Circuit диаграммасы

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 Opto-изолятор маалымат таблицасы

Сунушталууда: