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

Температур, чийгшлийн хяналт - Arduino Mega + Ethernet W5100: 5 алхам
Температур, чийгшлийн хяналт - Arduino Mega + Ethernet W5100: 5 алхам

Видео: Температур, чийгшлийн хяналт - Arduino Mega + Ethernet W5100: 5 алхам

Видео: Температур, чийгшлийн хяналт - Arduino Mega + Ethernet W5100: 5 алхам
Видео: Обзор TPMS контроль давления и температуры в шин 2024, Долдугаар сарын
Anonim
Температур, чийгшлийн хяналт - Arduino Mega + Ethernet W5100
Температур, чийгшлийн хяналт - Arduino Mega + Ethernet W5100

Модуль 1 - FLAT - тоног төхөөрөмж:

  • Arduino Mega 2560
  • Wiznet W5100 Ethernet бамбай
  • OneWire автобус дээрх 8x DS18B20 температур мэдрэгч - 4 OneWire автобусанд хуваагддаг (2, 4, 1, 1)
  • 2х дижитал температур ба чийгшлийн мэдрэгч DHT22 (AM2302)
  • 1х температур ба чийгшлийн мэдрэгч SENSIRION SHT21 (Si7021)
  • 1x BOSCH BME280 температур ба чийгшил (ба агаарын даралт) мэдрэгч
  • Бүх мэдрэгчээс өгөгдлийг хэдхэн минутын дотор илгээдэг (өөрчлөх боломжтой)

Модуль 2 - Бойлер - тоног төхөөрөмж:

  • Arduino Mega 2560
  • Wiznet W5100 Ethernet бамбай
  • OneWire автобус дээрх 16x DS18B20 температур мэдрэгч - OneWire -ийн 7 автобусанд хуваагддаг (2, 2, 2, 2, 2, 2, 4, 4)
  • 8х дижитал оролт
  • 8х дижитал гаралт - ороомог / релений хувьд
  • Бүх мэдрэгчээс өгөгдлийг хэдхэн минутын дотор илгээдэг (өөрчлөх боломжтой)
  • Энэ нь вэб интерфэйсээс гарсан гаралтын төлөв байдлыг уншиж, тэдгээрийг ашигладаг Тоон оролтын төлөвийг илгээдэг

Алхам 1: Танилцуулга

Танилцуулга
Танилцуулга
Танилцуулга
Танилцуулга
Танилцуулга
Танилцуулга

Өнөөдөр би функциональ байдал, ашигласан мэдрэгчийн тоо, Arduino самбар, ашигласан мэдээллийн автобусны хувьд нэлээд төвөгтэй хамгийн сүүлд хэрэгжүүлсэн төслийг дэлгэрэнгүй танилцуулах болно. Төсөл нь хоёр модулиас бүрдэнэ. Физик байдлаар модуль бүр нь тусдаа Arduino Mega 2560, W5100 Ethernet бамбай (R3 нийцтэй) болон ашигладаг мэдрэгчээс бүрдэнэ.

Модуль бүр нь интернэт дэх вэб интерфэйстэй HTTP POST хүсэлтээр холбогддог бөгөөд үүгээр вэб сервер өгөгдлийг зардаг эсвэл зарим өгөгдлийг хүсдэг, жишээлбэл POST хүсэлтээр (зөвхөн модуль 2). Вэб интерфэйс нь нэвтрэх системээр дууссан бөгөөд бүхэл бүтэн гэр бүл систем, нэр, нууц үгээрээ бүртгүүлж болно. Энэ нь гэр бүлийн гишүүн бүр модулийг хоёуланг нь харуулсан бөгөөд өөр өөр үйлдлүүдийг хийх боломжтой олон талт хэрэглэгчийн програм юм. Лавлах температур, хяналтын термометр гэх мэтийг тохируулах. Вэб интерфэйсийг PHP дээр програмчилсан, өгөгдлийг MySQL мэдээллийн санд хадгалдаг. Модуль бүр өгөгдлийн санд тусдаа хүснэгт байдаг. Бие даасан модулийг илүү нарийвчлан авч үзье.

Алхам 2: Модуль 1 - FLAT

Модуль 1 - FLAT
Модуль 1 - FLAT
Модуль 1 - FLAT
Модуль 1 - FLAT

1- FLAT модуль нь зөвхөн өрөөний температурыг хянах үүргийг гүйцэтгэдэг бөгөөд өөр үүрэг гүйцэтгэдэггүй. DHT22 мэдрэгчийг угаалгын өрөөний чийгийг бүртгэхийн тулд тохиромжтой 10 кохын эсэргүүцэл ашиглан холын зайд ашигласан. BME280 ба SHT21 нь I2C автобусаар дамждаг тул автобусны жолоочийн уртын хувьд нэлээд хязгаарлагдмал байдаг тул өрөөнүүдэд Arduino -ийн ойролцоо мэдрэгч ашигладаг.

DS18B20 температур мэдрэгчийг 4 автобусанд хуваасан бөгөөд хоёр гаднах мэдрэгчийг ашигладаг тул Arduino -ийн салангид хэсгүүдэд холбоход хялбар бөгөөд мэдрэгч унасан тохиолдолд функцийг нь алдагдуулдаггүй тул солиход хялбар байдаг. системийн тухай.

Жишээлбэл, эдгээр OneWire автобуснуудын хувьд 4 мэдрэгчийг индексжүүлдэг. Индекс нь термометрийн физик хаягтай холбогддог тул хэрэв мэдрэгчийн аль нэгийг солих юм бол шинэ мэдрэгч индекс дээр 0 - анхны, бүр 2, 3 эсвэл сүүлчийн гарч ирнэ. Тиймээс автобусны мэдрэгчийн тоог бууруулснаар мэдрэгчийг солих үед үүсч болзошгүй ийм хүндрэлээс зайлсхийх боломжтой юм.

Алхам 3: Модуль 2 - Бойлер

Модуль 2 - Бойлер
Модуль 2 - Бойлер
Модуль 2 - Бойлер
Модуль 2 - Бойлер
Модуль 2 - Бойлер
Модуль 2 - Бойлер

Хяналтын функцээс гадна 2 - BOILER модуль нь илүү чухал үүрэг гүйцэтгэдэг, тухайлбал ороомог буюу радиаторын хавхлагыг хянах реле. Модуль нь дотоодын халаалтаас үл хамааран ажилладаг. Модуль нь халаалт эсвэл бойлерыг асаахгүй. Модуль нь зөвхөн өрөөний температур тогтоосон хэмжээнээс доогуур / өндөр байвал радиаторын хавхлагыг нээх, хаах ажлыг хариуцдаг. лавлах температур. Радиаторын хавхлагыг хянадаг өрөө бүрт 2 -р модулийн тусгай термометрийг оноож өгч болно. Үүнээс гадна автомат горимд хавхлагыг вэб интерфейсээс гараар хязгааргүй нээх / хаах гарын авлагын горим бас байдаг. Тоон оролтыг Arduina -ийн хүсэлтээр ороомог / реле / хавхлага нээгдсэн / хаагдсан эсэхийг шалгахад ашиглаж болно - гаралт нь оролттой тэнцүү эсэхийг харьцуулах боломжтой.

Алхам 4: Вэб интерфэйс юу санал болгодог вэ?

Вэб интерфэйс юу санал болгодог вэ?
Вэб интерфэйс юу санал болгодог вэ?
Вэб интерфэйс юу санал болгодог вэ?
Вэб интерфэйс юу санал болгодог вэ?

Хоёр модулийн хувьд бие даасан хувьсагчдыг хөгжүүлэх шугаман диаграмын график дүрслэл байдаг - температур, чийгшил 24 цаг, 7 хоног. Вэб интерфэйс нь термометр / гигрометр тус бүрт 7 хоногийн дотор 24 цагийн дотор хамгийн их / хамгийн бага, дундаж утгыг харах боломжийг олгодог. Модуль 1 -т хос SHT21 мэдрэгчийг анх авч үзсэн боловч I2C хаягийг өөрчлөх боломжгүй тул I2C хаягтай хоёр мэдрэгчийн нэг автобусны холболтод мультиплексор ашиглах шаардлагатай болно. Мэдрэгчийн өгөгдөл буруу гарсан тохиолдолд мэдрэгчийн нэрийг бүртгэлд хадгалдаг бөгөөд системийн администратор хүссэн үедээ OneWire автобусанд үйлчилгээ үзүүлж, алдаатай мэдрэгчийг сольж болно.

Watchdog нь Arduino програмуудад хэрэгжсэн бөгөөд хэрэв буруу эхлүүлэх, "хөлдөөх" тохиолдолд өөр алдаа аюулгүйгээр дахин асч, програмын эхэнд вэб интерфэйстэй холбогдох хүртэл бүх гаралтыг унтрааж, бүрэн синхрончлох болно. гаралтын нөхцөл, дараа нь хэрэгжих болно.

Илүү олон төслүүдийг эндээс олж болно: https://arduino.php5.sk?lang=en Илүү их жишээг хандивлаарай:

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