Агуулгын хүснэгт:

Гэрийн автоматжуулалтанд зориулсан ESP8266-01 IoT ухаалаг таймер: 9 алхам (зурагтай)
Гэрийн автоматжуулалтанд зориулсан ESP8266-01 IoT ухаалаг таймер: 9 алхам (зурагтай)

Видео: Гэрийн автоматжуулалтанд зориулсан ESP8266-01 IoT ухаалаг таймер: 9 алхам (зурагтай)

Видео: Гэрийн автоматжуулалтанд зориулсан ESP8266-01 IoT ухаалаг таймер: 9 алхам (зурагтай)
Видео: Программирование модуля датчика температуры и влажности ESP8266 ESP01 DHT11 | удаленныйXY | ФЛПрог 2024, Арваннэгдүгээр
Anonim
ESP8266-01 Гэрийн автоматжуулалтанд зориулсан IoT ухаалаг таймер
ESP8266-01 Гэрийн автоматжуулалтанд зориулсан IoT ухаалаг таймер
ESP8266-01 Гэрийн автоматжуулалтын IoT ухаалаг таймер
ESP8266-01 Гэрийн автоматжуулалтын IoT ухаалаг таймер
ESP8266-01 Гэрийн автоматжуулалтанд зориулсан IoT ухаалаг таймер
ESP8266-01 Гэрийн автоматжуулалтанд зориулсан IoT ухаалаг таймер

ШИНЭЧЛЭХ

2018-09-30: Firmware -ийг Ver 1.09 болгон шинэчилсэн. Одоо Sonoff -ийн үндсэн дэмжлэгтэй

2018-10-01: Програм хангамжийн хувилбар 1.10-ийн туршилтыг ESP8266-01 дээр туршиж үзэх боломжтой

Internet Of Things (IoT) болон Гэрийн автоматжуулалт гэсэн шинэ үгсийг ашигласнаар би ямар нэгэн төхөөрөмжөөр удирддаг гэрийнхээ болон эргэн тойрныхоо одоогийн эд зүйлсийг харахаар шийдлээ. Онцлох зүйлүүд нь дараахь зүйлүүд юм.

  • Усан бассейн насос
  • Усан бассейны ус дүүргэгч
  • Усан бассейн болон эргэн тойрны гэрэл
  • ТВ/Үзвэр үйлчилгээний системийн кабинетийн гэрэл

Эдгээр төхөөрөмжийг хянахад ашигладаг нийтлэг зүйл бол стандарт хананы залгуур таймер юм. Төхөөрөмж бүр өөрийн гэсэн цаг хэмжигчээр тоноглогдсон бөгөөд бүгд өөр өөр байршилд байрладаг. Би яагаад эдгээр зүйлийг Интернетийн юмс эсвэл гэрийн автоматжуулалтын төслүүдээс эхлүүлэхээр сонгосон юм бэ гэж та асууж магадгүй юм.

Өмнөд Африкт амьдарч байгаа нь цахилгаан тасрах нь байнга тохиолддог үзэгдэл юм. Гэрийнхээ статистик мэдээллээр би өнгөрсөн онд 35 цахилгаан тасалдсан бөгөөд нийтдээ 40 цаг ажилласан. Энэ нь ихэвчлэн асуудал биш юм, учир нь одоогоор суулгасан бүх таймерууд нь цахилгаан тасарсан үед цагийг хадгалах нөөц батерейгаар тоноглогдсон байдаг. Гэхдээ зарим асуудал байна:

  • Эдгээр нөөц батерей нь ердөө нэг, хоёр жил л үйлчилдэг тул таймерыг солих шаардлагатай болдог. Таймеруудыг дотоод Ni-Cad батерейнд нэвтрэхийн тулд таймерыг устгах шаардлагатай тул бүтээсэн болно.
  • Цахилгаан тасрах тоолонд эвдэрсэн батерейтай таймеруудыг дахин програмчилж, цагийг тохируулах шаардлагатай болдог.
  • Таймерын физик байршил нь хананы залгуурт залгагдсан тохиолдолд таймерыг дээрээс харж буй lcd дэлгэцийг унших бараг боломжгүй юм. Энэ нь таймерыг салгах шаардлагатай байна, эсвэл цахилгаан тасарсны дараа таймерыг тохируулах эсвэл тохируулахын тулд би шалан дээр хэвтэх ёстой гэсэн үг юм.

Дээрх шалтгааны улмаас би өөрийн дотоод сүлжээнд холбогдсон IoT Smart Timer ашиглан таймерыг солих боломжийг туршиж үзэхээр шийдлээ.

Энэхүү санаа нь:

  • Интернет ашиглан одоогийн цагийг автоматаар тохируулах (IoT)
  • Хэрэглэгчийн ямар ч үйлдэлгүйгээр ажилладаг (Ухаалаг)
  • Тодорхой хугацааны дагуу гаралтыг асаах/унтраах (Таймер)
  • Сүлжээгээр дамжуулан програмчлах, хянах боломжтой (гэрийн автоматжуулалт)

Алхам 1: ESP8266-01 дизайн

ESP8266-01 загвар
ESP8266-01 загвар
ESP8266-01 загвар
ESP8266-01 загвар

Энэхүү загварыг ESP8266-01 WiFi модулийг ашиглан хийсэн бөгөөд энэ нь надад байгаа юм. ESP8266-01 нь хамгийн энгийн хэлбэрээр дөрвөн I/O зүүтэй байдаг.

  • GPIO0
  • GPIO2
  • TX
  • RX

ESP8266-01 Цахилгаан хангамжийн горимууд

Оролт/гаралтын логик төлөвийг ESP8266-01 аль горимд ачаалах болохыг тодорхойлоход ашигладаг. Эхний алхам бол гаралтын релеийг удирдахын тулд оролт/гаралтын аль тээглүүрийг ашиглаж болохыг тодорхойлох явдал байв.

  • Энгийн хүчийг асаахын тулд GPIO0 ба GPIO2 -ийг HIGH логикоор тохируулсан байх ёстой. Тиймээс эдгээр хоёр тээглүүрийг дижитал гаралт болгон ашиглах боломжгүй нь тодорхой байна.
  • Tx зүү нь тэжээлийг асаахад гаралт гэж тохируулагдсан бөгөөд гаралтыг өндөр түвшинд тохируулсан болно. Энэхүү Tx зүү нь асаах явцад зарим цуваа өгөгдлийг дамжуулдаг. Тиймээс энэ зүүг гаралт болгон ашиглах боломжгүй юм.

Үлдсэн цорын ганц зүү бол Rx зүү юм. Энэ зүүг асаах үед оролт болгон тохируулсан бөгөөд асаах үед өндөр татах шаардлагагүй болно. Энэ зүү нь гаралтын зүү болгон ашиглахад хамгийн тохиромжтой юм.

Ачаалах

Цахилгаан асаах явцад ESP8266-01-ийн зөв ачаалах горимыг хангахын тулд 10К резистор ашиглан дараах тээглүүрүүдийг өндөр татаж авдаг.

  • GPIO0
  • GPIO2
  • RST
  • CH_PD

Энэ нь төхөөрөмж бүрийг зөв асаах боломжийг олгодог.

Гаралтын реле

RX бол гаралт болгон ашиглахад тохиромжтой цорын ганц зүү юм. Энэ зүү нь NPN транзистороор гаралтын релеийг жолоодоход ашиглагддаг. Стандарт flywheel диод ба транзисторын суурь резисторыг нэмсэн.

MODE/SET товчлуур

Товчлуур нь GPIO2 -тэй холбогдсон бөгөөд товчлуурыг суллахад 10K эсэргүүцэл нь GPIO2 -ийг өндөрт татах болно. Товчлуурыг дарахад GPIO2 нь 0V хүртэл татагдана.

Энэ товчлуурыг хоёр функцэд ашигладаг:

  • Төхөөрөмжийг орон нутгийн WiFi сүлжээнд холбохын тулд анхны тохиргоог хийсэн
  • Ердийн үйл ажиллагааны явцад гаралтыг гараар хянах

Заагч LED

LED нь GPIO0 -т холбогдсон бөгөөд дараахь зүйлийг заана.

  • Анх асаахад WiFi -г тохируулах горимыг харуулахын тулд хурдан хурдан асах болно
  • Төхөөрөмжийн цагийг тохируулаагүй үед удаан анивчдаг
  • гаралтын реле асаах/унтраах статусыг заана

Алхам 2: Цахилгаан хангамж

Цахилгаан хангамж
Цахилгаан хангамж
Цахилгаан хангамж
Цахилгаан хангамж
Цахилгаан хангамж
Цахилгаан хангамж

Би IoT Smart Timer -ийг өөр өөр хүчдэлийн түвшинд ашиглах тул цахилгаан хангамжийн хоёр сонголт байна.

12 - 24В тогтмол гүйдэл

Ашигласан DC-DC хөрвүүлэгч нь 28V тогтмол гүйдэл хүртэлх тэжээлд тохиромжтой. Хөрвүүлэгчийн гаралтыг тохируулах боломжтой бөгөөд 5V хүртэл тохируулсан болно. Үүнийг ESP8266 модулийг холбохоос өмнө хийх хэрэгтэй.

Нийлүүлэлтийн оролт дээрх урвуу туйлшралаас хамгаалах зорилгоор диод нэмсэн.

Энэ сонголтын хувьд би eBay дээр 220V/5V унтраалгатай жижиг цахилгаан тэжээл авах боломжтой болсон.

Оролтын хүчдэлээс үл хамааран IoT Smart Timer нь хоёр тэжээлийн хангамжтай байх ёстой.

5V төмөр зам

Хоёр сонголтын хувьд 5V DC -ийг шугаман зохицуулагч биш харин шилжүүлсэн горимын тэжээлээс авдаг. Энэ нь цахилгаан хангамжаас хамгийн бага дулаан ялгардаг гэсэн үг юм. 5V нь гаралтын реле жолоодоход хэрэглэгддэг

3.3V төмөр зам

ESP8266-01-ийн 3.3V-ийг ASM1117 3.3 зохицуулагчаас авдаг. ASM1117 3.3 нь шугаман зохицуулагч бөгөөд 500 мА хүртэл ажиллах чадвартай. Гэсэн хэдий ч үйлдвэрлэсэн дулааныг ASM1117 -ийн оролтын хүчдэлээр тодорхойлно. Дулааныг бууруулахын тулд ASM1117 нь 5V төмөр замаас тэжээгддэг.

Дуу чимээг шүүх

ESP8266-01 хүртэлх хүчдэлийн долгионыг бууруулахын тулд 3.3V төмөр замд 100 - 1000uf конденсатор суурилуулсан болно. 5V ба 3.3V төмөр замыг хоёуланг нь 0.1uf конденсатороор өндөр давтамжийн хөндлөнгийн оролцооноос хамгаалдаг.

Алхам 3: PC самбарыг угсрах

PC самбарыг угсрах
PC самбарыг угсрах
PC самбарыг угсрах
PC самбарыг угсрах
PC самбарыг угсрах
PC самбарыг угсрах

PC самбарыг Eagle -ийн үнэгүй хувилбарыг ашиглан бүтээсэн болно. Энэ бол нэг талт самбар бөгөөд тонер дамжуулах аргыг ашиглан гэртээ хялбархан хийх боломжтой.

PC -ийн самбарыг хийсний дараа PC -ийн хавтанг дараах дарааллаар угсарна.

  • ASM1117 зохицуулагч ба 0.1F SMD -ийн гурван бүрэлдэхүүн хэсгийг самбарын гагнуурын талд гагнана
  • Ганц холбогчийг самбарын бүрэлдэхүүн хэсэгт нэмнэ
  • Резистор ба диодыг гагнах
  • ESP8266-01 модулийн толгой хэсгийг нэмнэ үү
  • LED болон товчлуурын толгойн зүүг нэмнэ үү
  • Шураг терминалуудыг нэмнэ үү
  • Толгойн зүү ашиглан DC/DC хөрвүүлэгчийг самбар дээр холбоно уу.
  • Реленийг гагнах
  • Транзистор ба 100uf конденсаторыг гагнах замаар самбарыг бөглөнө үү.

Бүх бүрэлдэхүүн хэсгүүдийг самбар дээр гагнаж дууссаны дараа бүх гагнуурын цэгүүдийг шалгаж, дэвсгэр хооронд богино холболт үүсэхгүй эсэхийг шалгаарай.

! ! ! ЧУХАЛ ТАЙЛБАР! ! ! Компьютерийн самбар нь гаралтын контактууд дээр их хэмжээний гүйдэл дамжуулах чадвартай байхын тулд реле контактууд ба шураг терминалуудын хоорондох замуудад зохих хэмжээний гагнуур хийнэ

Алхам 4: PC -ийн самбарыг турших

PC самбарыг турших
PC самбарыг турших

! ! ! Эрчим хүч хэрэглэхээс өмнө! ! !

ESP8266-01 модулийг нэгжээс салга. Энэ нь 5V тэжээлийг тохируулахаас өмнө ASM1117 зохицуулагчийн хэт халалтаас сэргийлэх зорилготой юм.

Угсарсны дараа хийж болох олон тооны туршилт байдаггүй. Хамгийн чухал алхам бол хүчдэлийн зөв түвшинг хангах явдал юм.

  • Төхөөрөмжид 12-24 вольтын тогтмол гүйдэл оруулна.
  • DC/DC хөрвүүлэгчийн гаралтын хүчдэлийг хэмжинэ
  • Хөрвүүлэгчийн гаралтыг 5.0 -аас 5.5 В хүртэл тохируулна уу.
  • Дараа нь 3.3V хүчдэлийг хэмжинэ.
  • Хэрэв хангамж хэвийн байгаа бол төхөөрөмжөөс тэжээлийг салга

Та одоо ESP8266-01 модулийг өгсөн толгой хэсэгт оруулах боломжтой.

! ! ! Анхаарна уу!

Та IoT таймерыг туршиж үзээд ажиллаж байгаа бол PC хавтангийн гагнуурын талыг таглахын тулд тунгалаг лак ашиглана уу. Энэ нь замыг исэлдүүлэхээс сэргийлж, реле контактууд болон хэлхээний бусад хэсгүүдийн хооронд нэмэлт дулаалга өгөх болно

Алхам 5: Хашаа

Хашаа
Хашаа
Хашаа
Хашаа
Хашаа
Хашаа

Компьютерийн самбар болон бүх утаснууд нь цэвэр, аюулгүйгээр бэхлэгдсэн тохиолдолд хашлага нь тийм ч чухал биш юм.

Барилга угсралтын ажлыг хөнгөвчлөхийн тулд би LED болон MODE/SETUP товчлууртай холбогдсон кабель хийсэн. Энэ нь LED болон товчлуурыг хашлагад холбоход илүү уян хатан байдлыг надад өгсөн юм. Энэ кабелийг дараа нь компьютерийн самбар дээрх толгой хэсэгт залгана.

Гэрэл зургууд нь LED гэрэлд ашигладаг 12V нэгжийн нэгийг харуулж байна.

Алхам 6: ESP8266-01/NodeMCU програмчлах

ESP8266-01/NodeMCU програмчлах
ESP8266-01/NodeMCU програмчлах
ESP8266-01/NodeMCU програмчлах
ESP8266-01/NodeMCU програмчлах
ESP8266-01/NodeMCU програмчлах
ESP8266-01/NodeMCU програмчлах

ESP8266-01 програмчлахын тулд та эхлээд Arduino IDE-ийг тохируулах хэрэгтэй. Энэ сэдвээр маш олон сайн зааварчилгаа байгаа тул би энэ талаар дэлгэрэнгүй ярихгүй байна. Би зохиогчдод ямар нэгэн тодорхой захиалга өгөхгүйгээр Instructables дээрх лавлах линкүүдийг сонгосон. Хувь хүний зааварчилгаанд баярлалаа.

ESP8266 ба Arduino IDE -ийг дагаж ESP8266 модульд Arduino IDE -ийг тохируулна уу.

Дараа нь танд ESP8266 програмчлах програмист хэрэгтэй болно. Энд хоёр холбоос байна:

Arduino Uno ашиглаж байна

DIY програмчлалын самбар

Номын сан

Кодыг эмхэтгэхийн тулд нэмэлт номын сан суулгах шаардлагатай болно. Дахин хэлэхэд энэ зааврыг үзнэ үү.

Arduino номын санг суулгаж ашиглах

Би ямар номын санг суулгах ёстойгоо санахгүй байна, гэхдээ WiFiManager -ийг тусад нь татаж авах ёстойг би мэднэ. Би эдгээрийг Libraries.zip файлд оруулсан болно.

Алхам 7: Анхны тохиргоо

Анх удаа тохируулах
Анх удаа тохируулах
Анх удаа тохируулах
Анх удаа тохируулах
Анх удаа тохируулах
Анх удаа тохируулах

Анх удаа ашиглахдаа IoT Smart Timer нь WiFi сүлжээнд холбогдсон байх шаардлагатай. Энэ ажлыг WiFiManager номын санг ашиглан хийдэг тул кодонд SSID эсвэл нууц үг оруулах шаардлагагүй болно.

Эдгээр хэдэн алхамыг дагана уу:

  • Төхөөрөмжийг асаах
  • LED нь хурдан анивчиж эхэлнэ
  • MODE/SETUP товчийг дарна уу
  • LED унтрах үед товчлуурыг суллана уу
  • Хэдэн секунд хүлээгээд ухаалаг гар утас эсвэл төхөөрөмжийн WiFi холболтыг нээнэ үү
  • IoT Timer нэртэй шинэ WiFi сүлжээний үг харагдах болно
  • Энэ хандалтын цэгийг сонгоно уу
  • IoT таймер руу нэвтрэх (нууц үг шаардлагагүй)
  • Таны төхөөрөмжийг IoT Timer сүлжээнд холбогдох хүртэл хүлээнэ үү
  • Аливаа интернет хөтчийг нээнэ үү
  • Хаягийн мөрөнд дараах IP хаягийг оруулна уу - 192.168.4.1
  • WiFiManager консол нээгдэнэ
  • WiFi -г тохируулахыг сонгоно уу
  • Боломжтой WiFi сүлжээний цэгүүдийн жагсаалт гарч ирнэ
  • Шаардлагатай WiFi сүлжээг сонгоод нууц үгээ оруулна уу
  • Дараа нь IoT таймертай холбогдохын тулд ашиглахыг хүсч буй IP хаягаа оруулна уу
  • Анхдагч гарцын IP хаягийг оруулаад дараа нь маск оруулна уу
  • Бүх тохиргоог хийсний дараа Хадгалах товчийг дарна уу
  • Шинэ итгэмжлэл хадгалагдсан эсэхийг баталгаажуулах шинэ цонх нээгдэнэ
  • Хөтөчөө хаагаарай

Хадгалсны дараа IoT Timer сүлжээ унтрах бөгөөд төхөөрөмж таны WiFi сүлжээнд холбогдохыг оролдох болно.

  • Ухаалаг утас эсвэл төхөөрөмжөө IoT Timer -т ашигладаг ижил WiFi сүлжээнд холбоно уу.
  • Хөтөчөө нээнэ үү
  • Хаягийн мөрөнд IoT таймерынхаа IP хаягийг оруулна уу
  • IoT таймерын тохиргооны хуудас нээгдэнэ

Таны IoT таймер одоо ашиглахад бэлэн боллоо

Алхам 8: IoT таймерыг тохируулах

IoT таймерыг тохируулах
IoT таймерыг тохируулах
IoT таймерыг тохируулах
IoT таймерыг тохируулах
IoT таймерыг тохируулах
IoT таймерыг тохируулах
IoT таймерыг тохируулах
IoT таймерыг тохируулах

IoT таймерын вэб хуудас нь таван хэсгээс бүрдэнэ.

Статус

Энэ нь төхөөрөмжийн нэр, таймерын одоогийн цаг, гаралтын байдлыг харуулна

Үүнээс гадна таймерын ажиллах горимыг энэ хэсэгт тохируулсан болно. Гурван горим байдаг:

  • Автомат гаралтыг янз бүрийн таймер програмууд хянадаг
  • Асаалттай - Гаралтыг асаах бөгөөд горимыг өөрчлөх хүртэл асаалттай байх болно
  • Унтраах - Гаралтыг унтраасан бөгөөд горимыг өөрчлөх хүртэл унтрах болно.

Хөтөлбөрүүд

Энэ хэсэгт таймерын асаах, унтраах хугацааг багтаасан болно. Долоон програм байдаг бөгөөд хөтөлбөр бүрийг дангаар нь тохируулж болно.

Дараагийн програмыг өөрчлөхөөс өмнө Хадгалах товчийг дарж одоогийн програмд оруулсан өөрчлөлтийг хадгална уу.

Товчлуурын функц

MODE/SETUP товчлуурыг ердийн ажиллагааны үед гаралтын релеийг удирдах боломжтой. Энд товчлуур дарагдсан үед юу хийх ёстойг сонгоно уу.

Шинэ тохиргоог хадгалахын тулд Хадгалах товчийг дарахаасаа өмнө "Update Button Function" хайрцгийг чагтална уу.

Тохиргоо

Эндээс та IoT таймерын нэрийг өөрчилж болно. Энэ нь олон таймеруудын хооронд ялгахад хялбар болгодог.

Нэгжийн ажиллах хугацааг интернэтээс NTP цагийн серверээр дамжуулан авдаг. Зөв цагийг харуулахын тулд цагийн бүсээ бүс нутагтаа шинэчилнэ үү.

Хэрэв та өөр NTP цагийн сервер ашиглахыг хүсч байвал шинэ IP хаягийг заасан хэсэгт оруулна уу.

Шинэ тохиргоог хадгалахын тулд Хадгалах товчийг дарахаас өмнө "Тохиргоог шинэчлэх" хайрцгийг чагтална уу.

ТАЙЛБАР

Цагийн бүсийг өөрчлөхдөө шинэ цагийг зөвхөн дараагийн асуулгын явцад зөв тохируулах болно. Төхөөрөмжийг 5 минут тутамд шинэчилж байхаар тохируулсан болно.

Цаг тохируулах

Заримдаа NTP цагийн сервер асуулга бүрт хариу өгөхгүй байх тохиолдол гардаг. Хэрэв NTP серверээр дамжуулан тохируулах хугацаа хэтэрхий урт байвал та цаг, огноог гараар оруулж болно.

Шинэ цаг, огноог хадгалахын тулд "Хадгалах" товчийг дарахаас өмнө "Шинэчлэх цаг" хайрцгийг чагтална уу.

Цагийн синхрончлол

Хуудасны сүүлийн хэсэг нь NTP цагийн серверээр сүүлийн удаа синхрончлогдсон цаг, огноог заана.

Зөвлөмж болгож буй: