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

WiFi IoT -ийн температур ба чийгшил мэдрэгч. Хэсэг: 8 IoT, гэрийн автоматжуулалт: 9 алхам
WiFi IoT -ийн температур ба чийгшил мэдрэгч. Хэсэг: 8 IoT, гэрийн автоматжуулалт: 9 алхам

Видео: WiFi IoT -ийн температур ба чийгшил мэдрэгч. Хэсэг: 8 IoT, гэрийн автоматжуулалт: 9 алхам

Видео: WiFi IoT -ийн температур ба чийгшил мэдрэгч. Хэсэг: 8 IoT, гэрийн автоматжуулалт: 9 алхам
Видео: Arduino Nano, BME280 и SSD1306 OLED-метеостанция 2024, Арваннэгдүгээр
Anonim
WiFi IoT -ийн температур ба чийгшил мэдрэгч. Хэсэг: 8 IoT, гэрийн автоматжуулалт
WiFi IoT -ийн температур ба чийгшил мэдрэгч. Хэсэг: 8 IoT, гэрийн автоматжуулалт

Оршил

Энэхүү нийтлэл нь анхны IoT WiFi төхөөрөмжийг "дээрэлхэх" зааварчилгааны практик бэхжилт, цаашдын хөгжлийг баримтжуулсан болно. 4 -р хэсэг: IoT, Гэрийн автоматжуулалт нь дотоодын гэрийн орчинд амжилттай байршуулах боломжийг олгодог програм хангамжийн бүх функцийг багтаасан болно.

Танилцуулга

Дээр дурдсанчлан энэхүү зааварчилгаа нь практик хэрэглээний тохиолдлуудыг амжилттай шийдвэрлэх боломжийг олгодог найдвартай системийн загвар бүхий IoT -ийн өмнөх жишээг нэгтгэхийг тайлбарласан болно. Гэнэтийн цахилгаан алдагдал, MQTT брокерын алдаа, WiFi N/W -ийн эвдрэл, алсын мэдрэгчийг дахин тохируулах, сүлжээний ачааллыг бууруулах, мэдрэгчийн тохиргоог тохируулах тайлагнах стратеги.

Нийт 6 унтраалттай төхөөрөмжийг бүтээсэн (дээрх зураг 1 -ийг үзнэ үү) миний гэрт тарааж, анхны IoT мэдрэгчийн сүлжээг бий болгосон.

Зааварчилгаа нь IoT Home Automation -ийн анхны цувралд ашигласан MQTT нэршлийн конвенцийн тоймыг харж, илүү IoT төхөөрөмжийн орчинд IoT урсгалыг хялбархан дибаг хийх боломжийг олгодог илүү тэнцвэртэй, практик бүтэцтэй болно.

Дараахь зүйл бол IoT мэдрэгчийн дизайны дэлгэрэнгүй мэдээлэл юм. барилга байгууламж, эх код, туршилтын стратеги ба OpenHAB -ийн тохиргоо.

Надад ямар хэсгүүд хэрэгтэй вэ?

  1. 1 хөнгөлөлт ESP8266-01,
  2. 2 унтраах 1uF электролитийн конденсатор,
  3. 3 унтраалттай 10K резистор,
  4. 1 унтраалттай 330R резистор,
  5. 1 мм 3 мм диаметртэй. LED,
  6. 1 хөнгөлөлт LD1117-33v, 3v3 LDO VReg. (Фарнелл энд),
  7. DHT22 -ийн 1 температур, чийгшил мэдрэгч,
  8. 1 унтраалга Хос 4 замтай 0.1 "холбогч,
  9. CAMDENBOSS RX2008/S-5 хуванцар хашлага, савны хайрцаг, ABS, 38 мм, 23 мм (энд Фарнел),
  10. 1 унтраалттай DC цахилгаан холбогч, залгуур, 1 А, 2 мм, самбар холбох (энд Фарнелл),
  11. TO-220 халаагуур 24.4 ° C/Вт (Фарнел энд)
  12. Төрөл бүрийн дулаан агшаагч хоолой (шар, энд Ebay),
  13. Төрөл бүрийн урттай IDC тууз кабель,
  14. Дулаан шингээгчийн нэгдэл,
  15. Веробоард,
  16. ESP8266-01 програмчлалын төхөөрөмж. Эндээс үзнэ үү; Туузан самбар бүхий практик хэлхээний барилга, 9 -р алхам.

Надад ямар програм хангамж хэрэгтэй вэ?

  1. Arduino IDE 1.6.9
  2. Arduino IDE нь ESP8266-01 програмчлахаар тохируулагдсан. Эндээс үзнэ үү; ESP8266-01 програмчлах Arduino IDE-ийг тохируулах

Надад ямар хэрэгсэл хэрэгтэй вэ?

  1. Гагнуурын төмөр,
  2. Өрөмдлөг ба төрөл бүрийн бит,
  3. Файлууд,
  4. Hacksaw,
  5. Бат бөх дэд,
  6. Дулааны буу,
  7. DMM.

Надад ямар ур чадвар хэрэгтэй вэ?

  1. Электроникийн хамгийн бага ойлголт,
  2. Arduino болон түүний IDE -ийн талаархи мэдлэг,
  3. Үйлдвэрлэлийн анхан шатны ур чадвар (гагнах, цоолох, хөрөөдөх, өрөмдөх, өрөмдөх гэх мэт),
  4. Зарим тэвчээр,
  5. Гэрийн сүлжээний талаархи зарим ойлголт.

Хамрах сэдвүүд

  1. Хэлхээний тойм
  2. Програм хангамжийн системийн тойм
  3. Програм хангамжийн тойм
  4. Мэдрэгчийн шалгалт тохируулга
  5. MQTT сэдвийг нэрлэх конвенц
  6. OpenHAB тохиргоо
  7. Дизайныг туршиж байна
  8. Дүгнэлт
  9. Ашигласан лавлагаа

Цувралын холбоосууд

7 -р хэсэгт: Судалгааны гэрэл хянагч (дахин боловсруулсан). 7 -р хэсэг: IoT, гэрийн автоматжуулалт

9 -р хэсэгт: IoT сүлжээний хянагч. 9 -р хэсэг: IoT, гэрийн автоматжуулалт

Алхам 1: Хэлхээний тойм

Хэлхээний тойм
Хэлхээний тойм
Хэлхээний тойм
Хэлхээний тойм
Хэлхээний тойм
Хэлхээний тойм
Хэлхээний тойм
Хэлхээний тойм

Дээрх зураг 1 нь IoT мэдрэгчийн бүрэн хэлхээний загварыг харуулж байна.

IoT төхөөрөмжийн гол цөм нь ESP8266-01 бөгөөд DHT22 температур/чийгшлийн мэдрэгчийг 10K татах эсэргүүцэлээр GPIO2 руу холбодог. Гадны 5V-ийг шилжүүлсэн горимын тэжээлээр хангаж, төхөөрөмжийг 2мм тогтмол гүйдлийн самбартай холбох залгуураар тэжээж, LZ1117-33v, 3v3 LDO хүчдэлийн зохицуулагчийг BZP M3 хайрцагны толгой боолт, самар бүхий гадаад дулаан шингээгч дээр суурилуулсан..

Энэхүү загвар нь GPIO0 -тэй холбогдсон 3 мм -ийн улаан гэрлийг агуулдаг бөгөөд энэ нь IoT төхөөрөмжийн статусыг асаах явцад эсвэл дараагийн алдааны нөхцөл байдлыг орон нутгийн түвшинд харуулдаг. Үүнийг openHAB интерфэйсээр гараар идэвхжүүлэх замаар төхөөрөмжийг танихад ашиглаж болно.

Бүтэн загвар нь 2 -р зурагт үзүүлсэн шиг ABS савны хайрцагт нямбай нийцдэг бөгөөд орон нутгийн халаалтын нөлөөнөөс болж хэвийхээс урьдчилан сэргийлэхийн тулд мэдрэгчийг зохицуулагчаас аль болох хол байлгахын тулд тусгайлан байрлуулсан болно (дээрх зураг 7).

Хэлхээний самбар нь нэг хэсэг veroboard бөгөөд хэлбэр дүрсээ хайчилж аваад хашлага дотор багтаасан болно (дээрх зураг 3). Энэхүү самбарыг M3 тоолууртай нейлон шураг, хоёр самараар байрлуулсан бөгөөд энэ нь мэдрэгчийн доод хэсэгт наалддаг тул хавтгай гадаргуу дээр суух боломжийг олгодог.

Зураг 4… 6 нь барилгын янз бүрийн төлөв байдлыг харуулдаг.

Алхам 2: Програм хангамжийн системийн тойм

Програм хангамжийн системийн тойм
Програм хангамжийн системийн тойм
Програм хангамжийн системийн тойм
Програм хангамжийн системийн тойм

Энэхүү IoT -ийн температур, чийгшил мэдрэгч төхөөрөмж нь дээрх 1 -р зурагт үзүүлсэн програм хангамжийн зургаан үндсэн бүрэлдэхүүн хэсгээс бүрдэнэ.

SPIFFS

Энэ бол самбар дээрх SPI Flash файлын систем бөгөөд дараахь мэдээллийг хадгалахад ашиглагддаг (дээрх зураг 2-ийг үзнэ үү);

  • Icons ба 'Sensor Configuration Home Page' html: Таны IoT WiFi сүлжээнд холбогдох боломжгүй үед (ихэвчлэн аюулгүй байдлын буруу мэдээллээс болж) IoT төхөөрөмжөөр үйлчилдэг бөгөөд хэрэглэгчид мэдрэгчийг алсаас тохируулах хэрэгслээр хангадаг. дахин SPIFFS агуулгыг дахин програмчлах эсвэл байршуулах.
  • Аюулгүй байдлын мэдээлэл: Энэ нь таны IoT WiFi сүлжээ болон MQTT зуучлагчтай холбогдохын тулд IoT төхөөрөмжийг асаахад ашигладаг мэдээллийг агуулдаг. 'Мэдрэгчийн тохиргооны нүүр хуудас' -аар илгээсэн мэдээллийг энэ файлд бичсэн болно ('secvals.txt').
  • Тохируулгын мэдээлэл: Энэ файл доторх мэдээллийг ('calvals.txt') шаардлагатай бол онгоцны температур/чийгшлийн мэдрэгчийг тохируулахад ашигладаг. Калибровкын тогтмолыг зөвхөн IQT төхөөрөмж дээр MQTT брокерын MQTT командыг ашиглан бичиж болно.

Тэмдэглэл: Төхөөрөмжийг анх тохируулахын тулд SPIFFS -ийг Arduino IDE -тэй хэрхэн ашиглах талаар дэлгэрэнгүй мэдээллийг эндээс үзнэ үү.

mDNS сервер

Энэ функц нь IoT төхөөрөмж нь WiFi сүлжээнд WiFi станц болж холбогдоогүй бөгөөд дотоодын WiFi чиглүүлэгчтэй төстэй WiFi хандалтын цэг болсон үед ашиглагддаг. Ийм чиглүүлэгчийн хувьд та ихэвчлэн хөтчийнхөө URL талбарт 192.168.1.1 (ихэвчлэн хайрцагт наасан шошгон дээр хэвлэгддэг) гэх мэт IP хаягийг оруулах замаар холбогдож, нэвтрэх хуудсыг хүлээн авах болно. хэрэглэгчийн нэр, нууц үг нь төхөөрөмжийг тохируулах боломжийг танд олгоно.

ESP8266 -ийн AP горимд (Хандалтын цэгийн горим) төхөөрөмж нь анхдагчаар 192.168.4.1 IP хаягийг өгдөг, гэхдээ mDNS сервер ажиллаж байгаа тохиолдолд та хөтөчийн URL мөрөнд зөвхөн хүнд тохирсон 'SENSORSVR.local' нэрийг оруулах ёстой. "Мэдрэгчийн тохиргооны нүүр хуудас".

MQTT үйлчлүүлэгч

MQTT үйлчлүүлэгч нь шаардлагатай бүх функцийг хангадаг; IoT сүлжээний MQTT брокертой холбогдож, сонгосон сэдвүүдээ захиалж, өгөгдсөн сэдвээр ачааллыг нийтлээрэй. Товчхондоо энэ нь IoT -ийн үндсэн функцийг хангаж өгдөг.

HTTP вэб сервер

Дээр дурдсанчлан хэрэв IoT төхөөрөмж нь SSIF, P/W гэх мэтийг SPIFFS -д хадгалагдсан Аюулгүй байдлын мэдээллийн файлд тодорхойлсон WiFi сүлжээнд холбогдох боломжгүй бол төхөөрөмж хандалтын цэг болно. Хандалтын цэгээр хангагдсан WiFi сүлжээнд холбогдсоны дараа HTTP вэб сервер байгаа нь төхөөрөмж рүү шууд холбогдож, HTTP вэб хөтөч ашиглан тохиргоогоо өөрчлөх боломжийг олгоно. Хуудасны вэб хуудас мөн SPIFFS дээр хадгалагддаг.

WiFi станц

Энэхүү функц нь IoT төхөөрөмжид Аюулгүй байдлын мэдээллийн файл дахь параметрүүдийг ашиглан дотоодын WiFi сүлжээнд холбогдох боломжийг олгодог бөгөөд ингэхгүй бол таны IoT төхөөрөмж MQTT брокерт бүртгүүлэх/нийтлэх боломжгүй болно.

WiFi хандалтын цэг

WiFi хандалтын цэг болох чадвар нь IoT төхөөрөмж нь WiFi станц, хөтөч ашиглан (Apple iPad дээрх Safari гэх мэт) түүнтэй холбогдох, тохиргоог өөрчлөх боломжийг олгодог хэрэгсэл юм.

Энэ хандалтын цэг нь SSID = "SENSOR" + IoT төхөөрөмжийн MAC хаягийн сүүлийн 6 цифрийг цацдаг. Энэхүү хаалттай сүлжээний нууц үгийг төсөөллийн дагуу 'PASSWORD' гэж нэрлэсэн болно.

Алхам 3: Програм хангамжийн тойм

Програм хангамжийн тойм
Програм хангамжийн тойм
Програм хангамжийн тойм
Програм хангамжийн тойм

Энэ эх кодыг амжилттай эмхэтгэхийн тулд танд дараах нэмэлт номын сан хэрэгтэй болно;

PubSubClient.h

  • Оруулсан: Ник О'Лири
  • Зорилго: Төхөөрөмжийг өгөгдсөн брокероор MQTT сэдвийг нийтлэх эсвэл захиалах боломжийг олгодог
  • Хаанаас:

DHT.h

  • Оруулсан: Adafruit
  • Зорилго: DHT -ийн температур/чийгшил мэдрэгчийн номын сан
  • Хаанаас:

Кодын тойм

Програм хангамж нь 1-р зурагт үзүүлсэн шиг төрийн машиныг ашигладаг (доорх эх сурвалжийн бүрэн хуулбар). Доорх 5 үндсэн муж байдаг;

  • ҮҮН ДОТОР

    Энэхүү эхлүүлэх төлөв нь хүчийг асаасны дараа оруулсан анхны төлөв юм

  • NOCONFIG

    Энэ төлөвийг асаасны дараа хүчингүй эсвэл байхгүй secvals.txt файл илэрсэн тохиолдолд оруулна

  • ХҮГЭЭЖ БАЙНА

    Энэ төлөв нь түр зуурын шинж чанартай бөгөөд Wi -Fi сүлжээнд холбогдоогүй байхад орсон байна

  • MQTT хүлээгдэж байна

    Энэ төлөв нь түр зуурын шинж чанартай бөгөөд WiFi сүлжээний холболт хийсний дараа ордог бөгөөд энэ сүлжээнд MQTT брокертой холбогдоогүй байна

  • Идэвхтэй

    Энэ бол WiFi сүлжээний холболт болон MQTT брокерын холболтыг байгуулсны дараа оруулдаг ердийн үйлдлийн төлөв юм. Энэ үед мэдрэгчийн температур, чийгшлийн функцийг MQTT брокерт нийтэлдэг

Мужийн хоорондох шилжилтийг хянадаг үйл явдлуудыг дээрх 1 -р зурагт тайлбарласан болно. Муж хоорондын шилжилтийг мөн SecVals -ийн дараах параметрүүдээр зохицуулдаг;

  • 1 -р MQTT брокерын IP хаяг. AAA. BBB. CCC. DDD аравтын бутархай хэлбэрээр
  • 2 -р MQTT брокерын боомт. Бүтэн хэлбэрээр.
  • 3 -р MQTT брокерын холболт нь STA горимоос AP горимд шилжихээс өмнө хийхийг оролддог. Бүтэн хэлбэрээр.
  • 4 -р WiFi сүлжээний SSID. Чөлөөт хэлбэрээр текст.
  • 5 -р WiFi сүлжээний нууц үг. Чөлөөт хэлбэрээр текст.

Дээр дурдсанчлан хэрэв IoT төхөөрөмж нь WiFi сүлжээнд SSID болон P/W -ийг WiFi сүлжээнд холбогдож чадахгүй бол SPIFFS -д хадгалагдсан secvals.txt файлд IoT төхөөрөмж хандалтын цэг болно. Энэ хандалтын цэгт холбогдсоны дараа дээрх зураг 2 -т үзүүлсэн шиг "Мэдрэгчийг тохируулах нүүр хуудас" -ыг ажиллуулах болно ('SENSORSVR.local' эсвэл 192.168.4.1 хөтчийн URL хаягийн мөрөнд оруулна уу). Энэхүү нүүр хуудас нь HTTP хөтөч ашиглан мэдрэгчийг дахин тохируулах боломжийг олгодог.

Идэвхтэй төлөвт байх үед алсын хандалт

MQTT брокерт холбогдсоны дараа төхөөрөмжийг MQTT сэдвээр нийтлэх замаар дахин тохируулах, дахин тохируулах боломжтой болно. Calvals.txt файл нь R/W хандалттай бөгөөд secvals.txt нь зөвхөн бичих хандалттай байна.

Хэрэглэгчийн дибаг хийх

Ачаалах дарааллын үед IoT төхөөрөмж удирдсан нь дараах дибаг хийх санал хүсэлтийг өгдөг

  • 1 Богино флаш: SPIFFS (secvals.txt) дээр байрлах Config файл байхгүй байна
  • 2 Богино анивчих: IoT төхөөрөмж WiFi сүлжээнд холбогдохыг оролдож байна
  • Тасралтгүй гэрэлтүүлэг: IoT төхөөрөмж MQTT брокертой холбогдохыг оролдож байна
  • Унтраалттай: төхөөрөмж идэвхтэй байна
  • Тэмдэглэл 1: "Мэдрэгчийн тохиргооны нүүр хуудас" нь аюулгүй залгуур ашигладаггүй тул таны сүлжээ аюулгүй байхаас хамаарна.
  • Тэмдэглэл 2: IoT төхөөрөмж бүрийг програмчлахын тулд MQTT мөрийг татаж авахаас өмнө засварлах шаардлагатай болно. Учир нь мэдрэгчийн дугаарыг MQTT сэдвийн мөрөнд суулгасан болно. өөрөөр хэлбэл. Миний 6 төхөөрөмжийн хувьд 'WFD/THSen/100/HumdStatus/1' нь тус бүр 1… 6 гэсэн дугаартай байдаг.

Алхам 4: Мэдрэгчийн шалгалт тохируулга

Мэдрэгчийн шалгалт тохируулга
Мэдрэгчийн шалгалт тохируулга
Мэдрэгчийн шалгалт тохируулга
Мэдрэгчийн шалгалт тохируулга

IoT төхөөрөмж асах үед ачаалах дарааллын нэг хэсэг болох SPIFFS -ээс 'cavals.txt' нэртэй файлыг уншдаг. Энэ файлын агуулга нь дээр дурдсан 1 -р зурагт заасан шалгалт тохируулгын тогтмолууд юм. Эдгээр тохируулгын тогтмолууд нь лавлагааны төхөөрөмжтэй нийцүүлэхийн тулд мэдрэгчээс олж авсан уншилтыг тохируулахад ашиглагддаг. Төхөөрөмжийн тайлагнах стратегийг тодорхойлдог өөр нэг үнэ цэнэ байдаг бөгөөд мэдрэгчийг тохируулах журмын хамт доор тайлбарласан болно.

Тайлагнах стратеги Энэ параметр нь алсын мэдрэгч нь тухайн орчны параметрийн өөрчлөлтийг хэрхэн мэдээлдэгийг тодорхойлдог. Хэрэв 0 гэсэн утгыг сонгосон бол алсын мэдрэгч нь мэдрэгчийг унших бүртээ температур эсвэл чийгшлийн утганд гарсан өөрчлөлтийг нийтлэх болно (ойролцоогоор 10 секунд тутамд). Бусад утга нь өөрчлөлтийг нийтлэх хугацааг 1… 60 минутын хугацаагаар хойшлуулах болно. Энэ параметрийг өөрчлөх нь MQTT сүлжээний урсгалыг оновчтой болгох боломжийг олгодог.

Температурын шалгалт тохируулга

Мэдрэгчийг тохируулахын тулд тэдгээрийг бие биетэйгээ ойрхон байрлуулсан бөгөөд дээрх зургийг 2 -р зурагт үзүүлэв. Тэдний хажууд би шалгалт тохируулагдсан термопарыг суурилуулсан DMM байрлуулсан (Fluke 87 V), дараа нь төхөөрөмж тус бүрийн гаралтыг OpenHAB температураар хянадаг. Температурыг сайн өөрчлөхийн тулд нэг өдрийн турш чиг хандлагын хуудас. Статик офсет (тэг "С" өндөр) ба тохируулагдсан термопараас авсан утгатай харьцуулахад төхөөрөмж бүрийн өөрчлөлтийн хурд ('M' графын налуу) эсвэл хоёуланг нь тэмдэглэв. Дараа нь би энгийн y = mx+c хамаарлыг тооцоолсон (энэ нь шулуун шугамын графиктай ойролцоо байх хангалттай шугаман байсныг олж мэдсэн) MQTTSpy -ээр тохируулгын тогтмол байдалд шаардлагатай залруулгыг програмчилсан.

Дараа нь шалгалт тохируулга амжилттай болсон эсэхийг шалгахын тулд төхөөрөмжийг 24 цагийн турш хянаж байв. OpenHAB -ийн температурын чиг хандлагын хуудсан дээрх температурын мөрүүд нь бүгд бие биенийхээ дээр байв.

Мэдээжийн хэрэг, хэрэв та зөвхөн температурын ойролцоо байдлыг сонирхож байгаа бол тохируулгын бүх утгыг анхдагчаар үлдээж болно.

Чийгийн шалгалт тохируулга

Орон нутгийн чийгшлийг үнэн зөв бүртгэх, хянах ямар ч арга байхгүй тул мэдрэгчийг тохируулахын тулд би дээрх бүх аргыг бие биетэйгээ ойрхон байрлуулж (Зураг 2) ашиглан OpenHAB -ээр дамжуулан гаралтыг нь хянаж үзсэн. Чийглэг сайтай хуудас. Дараа нь би шалгалт тохируулгын лавлагаа болгон No1 төхөөрөмжийг сонгож, үүнтэй холбоотой бүх төхөөрөмжийг тохируулав.

Алхам 5: MQTT сэдвийг нэрлэх конвенц

MQTT сэдвийг нэрлэх конвенц
MQTT сэдвийг нэрлэх конвенц
MQTT сэдвийг нэрлэх конвенц
MQTT сэдвийг нэрлэх конвенц

Олон туршилт, алдааны дараа би дээрх зураг 1 -д дурдсан сэдвийг нэрлэх конвенц дээр шийдсэн.

Тухайлбал, 'AccessMethod/DeviceType/whichDevice/Action/SubDevice'

Энэ нь төгс биш боловч өгөгдлийн параметрийн утгын бүх мэдрэгчийн гаралтыг харахын тулд ашигтай шүүлтүүр ашиглах боломжийг олгодог бөгөөд ингэснээр MQTTSpy -ийн дээрх 2 -р зураг дээрх шиг хялбар харьцуулах боломжтой болно. Энэ нь өгөгдсөн IoT төхөөрөмжийн функциональ боломжийн өргөтгөсөн логик бүлгүүдийг дэмждэг.

Эдгээр сэдвүүдийг програм хангамжид хэрэгжүүлэхдээ би RAM -г хэмнэж, гүйцэтгэлийг өндөр байлгахын тулд сэдвүүдийг ажиллуулах явцад динамикаар үүсгэхээс ялгаатай нь төхөөрөмж бүрийн хувьд тогтмол, суулгагдсан тоон тодорхойлогч бүхий хатуу кодчилсон сэдвийг ашигласан.

Тэмдэглэл: Хэрэв та MQTTSpy -ийг хэрхэн ашиглахаа мэдэхгүй байгаа бол эндээс MQTT брокерийг тохируулахыг үзнэ үү. 2 -р хэсэг: IoT, гэрийн автоматжуулалт

Алхам 6: OpenHAB -ийн тохиргоо

OpenHAB тохиргоо
OpenHAB тохиргоо
OpenHAB тохиргоо
OpenHAB тохиргоо
OpenHAB тохиргоо
OpenHAB тохиргоо

Би өмнөх зааварчилгаандаа (энд) өгсөн OpenHAB тохиргоог өөрчилж, хувь хүний оруулганд нэмсэн;

  • Гараж,
  • Холл,
  • Зочны өрөө,
  • Гал тогоо
  • Зочны унтлагын өрөө
  • Гол унтлаганы өрөө

Сайтын газрын зураг дээрх 1 -р зургийг үзнэ үү.

Эдгээр оруулга бүрийн хувьд би орон нутгийн орчны үнэ цэнийг харуулсан сайтын газрын зургийг нэмж оруулсан болно (дээрх зураг 2 -ийг үзнэ үү);

  • Температур
  • Чийгшил
  • Дулааны индекс

Би мөн мэдрэгчийн дотор суурилуулсан локал удирдагчийг удирдах түлхүүрийг оруулсан.

3… 5 -р зураг нь температур, чийгшил, RSSI (хүлээн авсан дохионы хүч чадлын үзүүлэлт, үндсэндээ мэдрэгч нь WiFi сүлжээг хэр сайн харж байгааг харуулсан үзүүлэлт) -ийн 24 цагийн турш бие даасан амьд ул мөрийг харуулдаг.

Зураг 6 нь долоо хоногийн туршид чийгшлийн урт хугацааны чиг хандлагын жишээг харуулж байна.

Тэмдэглэл 1: Хэрэв та OpenHAB -ийг хэрхэн ашиглахаа мэдэхгүй байгаа бол "OpenHAB -ийг тохируулах, тохируулах" хэсгийг эндээс үзнэ үү. 6 -р хэсэг: IoT, гэрийн автоматжуулалт

Тэмдэглэл 2: Өөрчилсөн сайтын зураг, дүрэм, зүйлийн файлууд, дүрс тэмдэг гэх мэт хуулбарыг доор өгөв.

Алхам 7: Дизайныг турших

Дизайныг туршиж байна
Дизайныг туршиж байна
Дизайныг туршиж байна
Дизайныг туршиж байна

Ихэнх тохиолдолд би IQT төхөөрөмжийг MQTT Spy ашиглан MQTT холболтоор туршиж үзсэн бөгөөд цуваа интерфэйс дээр гарсан гаралт, дибаг хийх урсгалыг хянаж үзсэн. Энэ нь надад байгаа захиалсан бүх сэдвүүдийг ашиглах, нийтлэгдсэн хариултуудыг шалгах боломжийг олгосон юм. Хэдийгээр үүнийг гараар хийж, заримдаа жаахан уйтгартай болсон ч хамрах хүрээг 100% хангаж чадсан.

Гэсэн хэдий ч Wi -Fi сүлжээ байгаа эсэхээс үл хамааран үндсэн параметрийн багц шаардлагатай байдаг тул үндсэн төрийн машиныг турших нь нэлээд төвөгтэй байсан. Үүний тулд гэрийн сүлжээг ашиглах нь практик биш юм.

Энэ асуудлыг шийдэхийн тулд би 'DummyNet1' ба 'DummyNet2' SSID-тэй хандалтын цэгүүд (зураг 1) болгон тохируулсан ESP8266-01 ашиглан өөрийн хувийн дамми сүлжээг үүсгэсэн. Зураг дээрх 2 -р зураг дээрх хэлхээг ашиглан IoT төхөөрөмж холбогдсон эсэхийг харуулав. Энэ нь туршилтын төгс шийдэл биш байсан ч (өөрөөр хэлбэл эдгээр хуурамч WiFi сүлжээ бүр MQTT сервер агуулаагүй байсан) төрийн машиныг бүрэн туршиж үзэх боломжтой байсан.

Би эх кодын хуулбарыг доор орууллаа.

Алхам 8: Дүгнэлт

Ерөнхий

IoT төхөөрөмжүүдийн програм хангамж нь олон сарын турш найдвартай ажиллаж байсан бөгөөд одоо гэр ахуйн цахилгаан тасалдлын улмаас сэргээгдэж байна (голчлон миний буруу). Ерөнхийдөө эдгээр нь тогтмол, үнэн зөв мэдээлэл өгдөг нэлээд хүчирхэг төхөөрөмж юм.

Сайжруулалт

SPIFFS -д унших, бичих програм хангамжийн горимыг боловсруулахдаа би санаснаасаа арай илүү дэвшилтэт байж болох кодыг бичсэн. Энэ нь маш уян хатан бөгөөд ажлаа сайн хийдэг ч гэсэн дараагийн удаа би үүнийг арай хялбар болгохын тулд ConfigFile.ino -ийн дагуу JSON -ийг ашиглаж болно.

  • Arduino GIT HUB Core

    https://github.com/esp8266/Arduino

  • ConfigFile.ino эх сурвалж

    https://github.com/esp8266/Arduino/tree/master/libraries/esp8266/examples/ConfigFile

Хүслийн жагсаалт

Би брокертой холбогдохын тулд mDNS клиент ашиглахаар төлөвлөж байсан боловч номын сан хэтэрхий ширүүн байсан. Ийм учраас MQTT Broker -ийн IP хаягийг 'MQTTSVR.local' -ээс ялгаатай нь зааж өгөх шаардлагатай болдог. Хэрэв mDNS номын сан цаашид тогтвортой ажиллах юм бол би энэ чадварыг төхөөрөмжид нэмж оруулах болно.

Мэдрэгчийг тохируулахын тулд орчны чийгшлийг нарийвчлан хянах, хянах аль алиныг нь хийх нь сайхан байх болно. Гэсэн хэдий ч сонгосон шалгалт тохируулгын арга нь харьцангуй сайн уншилт өгдөг бөгөөд DHT22 мэдээллийн хуудсан дахь техникийн үзүүлэлтүүдийн дагуу үнэн зөв харагдаж байна.

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

Алхам 9: Ашигласан лавлагаа

Энэхүү зааврыг нэгтгэхийн тулд би дараах эх сурвалжуудыг ашигласан;

PubSubClient.h

  • Оруулсан: Ник О'Лири
  • Хаанаас:

DHT.h

  • Оруулсан: Adafruit
  • Хаанаас:

DHT22 мэдээллийн хуудас

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