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

DIY - Цэцэрлэгийн автомат усжуулалт - (Arduino / IOT): 9 алхам (зурагтай)
DIY - Цэцэрлэгийн автомат усжуулалт - (Arduino / IOT): 9 алхам (зурагтай)

Видео: DIY - Цэцэрлэгийн автомат усжуулалт - (Arduino / IOT): 9 алхам (зурагтай)

Видео: DIY - Цэцэрлэгийн автомат усжуулалт - (Arduino / IOT): 9 алхам (зурагтай)
Видео: Unwavering Automatic Scent Dispenser #MOSTASeries 2024, Долдугаар сарын
Anonim
DIY - Цэцэрлэгийн автомат усжуулалт - (Arduino / IOT)
DIY - Цэцэрлэгийн автомат усжуулалт - (Arduino / IOT)
DIY - Цэцэрлэгийн автомат усжуулалт - (Arduino / IOT)
DIY - Цэцэрлэгийн автомат усжуулалт - (Arduino / IOT)
DIY - Цэцэрлэгийн автомат усжуулалт - (Arduino / IOT)
DIY - Цэцэрлэгийн автомат усжуулалт - (Arduino / IOT)

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

Урьдчилсан нөхцөл

  • Arduino -ийн талаархи мэдлэг, наад зах нь Arduino болон гагнуурын үндсэн кодчилол.
  • 1х даралттай цэцэрлэгийн цорго

Билл материал

  • Цэцэрлэгийн усалгааны поли хоолой, тийрэлтэт онгоц, дусаагуур гэх мэт.
  • Хоёр залгах электрон цорго таймер (жишээ нь: Aqua Systems электрон дижитал цорго таймер)
  • Цоргоны даралт бууруулагч 300kpa
  • Ардуино Уно
  • Лора Ардуино Шилд
  • Лора гарц (Хэрэв танд орон нутгийн Things Network гарц байгаа бол шаардлагагүй)
  • DHT11 Температурын чийгшил мэдрэгч
  • 5в реле
  • Утасны кабель
  • Кабелийн холболт
  • Автомашины хуваасан Атираат хоолой
  • Автомашины терминалын холбогч тууз
  • 2х цайрдсан хадаас
  • 1х резистор
  • Цахиур / кальци
  • PVC цемент
  • PVC праймер
  • PVC хоолой 32 мм өргөн х 60 мм урт
  • PVC хоолой 90 мм өргөн х 30 см урт
  • 3х PVC түлхэх таг 90 мм
  • 1x PVC эрэгний төгсгөлийн таг 90 мм
  • 1х PVC урсгалтай 90 мм хэмжээтэй холбох хэрэгсэл
  • 1х PVC түлхэх төгсгөлийн таг 32 мм
  • 1х 3.2V тэжээлийн эх үүсвэр (цорго таймер) [батерей, олон хувьсах гүйдлийн адаптер]
  • 1х 6-12В тэжээлийн эх үүсвэр (arduino) [батерей, USB, USB-ээс AC адаптер]
  • утас битүүмжлэх соронзон хальс
  • цахилгаан соронзон хальс

Алхам 1: Цэцэрлэгийн усжуулалтыг суурилуулах

Цэцэрлэгийн усжуулалтыг суурилуулах
Цэцэрлэгийн усжуулалтыг суурилуулах
Цэцэрлэгийн усжуулалтыг суурилуулах
Цэцэрлэгийн усжуулалтыг суурилуулах

Полимер хоолойн байрлал, тийрэлтэт онгоц, дуслын шугам, дусаагуур. Услалтын хянагч нь ямар ч усалгааны тохируулгатай ажиллах болно. Гол нь хөрсний чийгийн уншилтыг хэмжих, хөрс хэт хуурай бол усны тоолуурыг идэвхжүүлэх явдал юм. Хяналтын тохиргоог хийж, ханалтын доод цэгийг тохируулах боломжтой бөгөөд цорго таймерыг хэр удаан асаах, хянагч ханалтыг хэр олон удаа шалгаж байх ёстой.

Эдгээр тохиргоог arduino дээр өөрчилж EPROM санах ойд хадгалах боломжтой. IOT -ийн интеграцийг ашиглан тохиргоог шинэчилж болно. Энэхүү төсөл нь хянагчийг дөрвөн цаг тутамд ажиллуулж, хөрс хэт хуурай байвал цоргыг 3 минутын турш асаах болно. Хуурай/халуун эсвэл өдөрт нэг эсвэл хоёр удаа хийхгүй бол хэд хэдэн удаа дараалан ажиллуулж болно.

Алхам 2: Fit Tap Timer

Fit Tap Timer
Fit Tap Timer

Цорго таймерыг тохируулж, тохируулгатай залгуур ашиглан туршилт хийж, усжуулалтын ажилд хамгийн сайн тохирох давтамж, ажиллах хугацааг тооцоолоорой. Бид таймерыг арилгаж, Arduino -тэй ажиллахаар өөрчлөх болно.

Алхам 3: Arduino Build

Arduino бүтээх
Arduino бүтээх
Arduino бүтээх
Arduino бүтээх
Arduino бүтээх
Arduino бүтээх
Arduino бүтээх
Arduino бүтээх

Утасны диаграммыг барилгын ажилд гарын авлага болгон ашигла. Зураг дээр утасны кабелийн утас ашигласан бөгөөд уулзварын цэгүүдийн терминал туузыг шургуулжээ. Зарим гагнуур хийх шаардлагатай.

Таймерын өөрчлөлтийг товшино уу

Цоргоны таймерыг болгоомжтой салга. Бид тохируулж болох хоёр залгах утсыг хатуу холбох болно, ингэснээр тэдгээрийг гарын авлагын оронд arduino хянах боломжтой болно. Зүүн давтамжийн залгуурыг дахин тохируулах байрлал руу хатуу утсаар холбож, баруун залгах товчийг асаах/унтраах хооронд шилжүүлж болно. Баруун залгах товч нь зураг дээр үзүүлсэн шиг төвийн баруун ба гадна талын контактаас нэг утастай байх болно. Анхдагч байдлаар таймер унтраах байрлалд байх болно. Хэрэв хоёр утас хүрвэл таймер асах болно. 5В релетэй холбогдсон хоёр утсаар arduino хоёр утсыг холбож, нээж болно. Нийтлэг реле терминал дахь нэг утас, нөгөө хаалттай терминал дээр arduino унтрах үед таймер унтрах болно. Релений зүүг HIGH болгож тохируулснаар таймер асах болно; LOW болгож тохируулснаар таймер унтрах болно.

Хөрсний шинжилгээ

Энэхүү төслийн хувьд хоёр хадаасыг шураг терминалуудтай холбосон утсаар гагнаж байна. Нэг хадаасны терминал шууд газарт очдог. Нөгөө нь arduino дахь аналог оролт ба резистортой холбогддог. Резистор нь arduinos 5v дохио руу холбогддог. Бэхэлгээний диаграммд үзүүлэв.

Температур/чийгшил мэдрэгч

DHT11 Temp/чийгшлийн мэдрэгчийг arduino -ийн 5V, газардуулга, arduino дээрх дижитал зүү рүү залгасан болно.

Лора бамбай

Энэ төсөлд мөн Dragino Lora Shield (утас диаграммд харуулаагүй) ашигласан болно.

PVC суурь

Энэхүү төсөлд ашигласан arduino -ийн PVC суурийг температур/чийгшлийн мэдрэгчийг ил гаргах боломжтой байхаар зохион бүтээсэн бөгөөд бусад бүх эд ангиудыг ус нэвтэрдэггүй PVC бүрхүүл дотор бэхэлсэн байна. Мэдрэгчийн хувьд жижиг нүх өрөмдөж/хайчилж, чийгийг ардуинод хүрэхийг зогсоохын тулд цахиураар байрлуулна. Диаграммд үзүүлэв.

Алхам 4: Arduino програмчлал

Arduino програмчлал
Arduino програмчлал

Бүрэлдэхүүн хэсгүүдийг програмчлах, турших талхны самбар эсвэл терминал туузаар холбоно

EPROM тохиргоо

Эхлээд бид тохиргооны хувьсагчдыг EPROM санах ойд бичих хэрэгтэй. Дараах кодыг arduino дээрээ ажиллуулна уу.

Github дээр код авах боломжтой

Энд DRY_VALUE -ийг 960 гэж тохируулсан байна. 1024 гэдэг нь хөрс бүрэн хуурай, 0 нь бүрэн ханасан гэсэн үг, 960 нь эсэргүүцэл, кабелийн урт, хадаасны ханалтын түвшин сайн байсан гэсэн үг юм. Энэ нь өөрийн тохиргооноос хамааран өөр өөр байж болно.

VALVE_OPEN -ийг 180000 милисекунд (3 минут) болгож тохируулсан. Цахилгаан тоолуурыг асаахад 3 минутын турш нээлттэй байлгана.

RUN_INTERVAL -ийг 14400000 милисекунд (4 цаг) болгож тохируулсан болно. Энэ нь хянагч хөрсний чийгийг дөрвөн цаг тутамд шалгаж, ханалт бага байвал (960 -аас дээш) цоргоны таймерыг 3 минутын турш асаана гэсэн үг юм.

Дээрх кодыг хүссэн үедээ өөрчилж, эдгээр утгыг өөрчилж болно.

Програмын код

Github дээр код авах боломжтой

Хараат байдал:

  • Хугацаатай арга хэмжээ
  • Радио дарга

Энэ жишээнд Драгино Лора бамбай, ялангуяа Лорагийн бамбайг Драгино Лора гарцтай шууд холбосон жишээ ашигласан болно.

Үүнийг Things Network -ийг ашиглахын тулд "BEGIN: lora vars" хэсгийн кодыг хасч, програмыг дараах Dragino жишээг оруулахаар өөрчилж эсвэл бусад радио/wifi бамбайтай ажиллахад тохируулан өөрчилж болно.

Нийлүүлсэн код нь DHT11_PIN нь дижитал зүү 4, RELAY_PIN нь дижитал зүү 3, хөрсний чийгийн аналог зүү нь аналог оролт 0 гэж үздэг.

Дебаг хийх хувьсагчийг үнэн болгож тохируулах боломжтой бөгөөд ингэснээр цуваа дибаг хийх мессежийг baudrate 9600 дээр бүртгэх боломжтой болно.

Алхам 5: Хашаа барих

Хашаа барих
Хашаа барих

PVC хоолойг цорго таймер болон Arduino сууринд тохируулан хайчилж ав. Цорго таймерын цорго, хоолойг холбох цооног өрөмдөх. Хоолойн цооногийг автомашины дамжуулах хоолойд хангалттай өргөн өрөмдөж, хоолойн 10 см урттай нүхэнд шургуулж, arduino болон цорго таймераас утсыг хайчилж ав. Үүнд:

Arduino -аас

  • Цахилгаан хангамжийн утас ба/эсвэл USB кабелийг arduino USB портоос авна уу.
  • Хөрсний чийглэг кабель (VCC, GND, A0)
  • Сүлжээний холболт ба релений нийтлэг шураг терминалуудаас хоёр утас

Цорго таймераас

  • Цахилгаан хангамжийн кабель
  • Баруун залгах контактуудаас хоёр утас

Алхам 6: Цавуу хийхээс өмнө хяналтын хянагч

Цавуу хийхээс өмнө туршилтын хянагч
Цавуу хийхээс өмнө туршилтын хянагч
Цавуу хийхээс өмнө туршилтын хянагч
Цавуу хийхээс өмнө туршилтын хянагч

Бүх зүйлийг битүүмжлэхээс өмнө бүх зүйл ажиллаж байгаа эсэхийг шалгаарай.

Дээрх зургуудад хөрсний чийгийн датчикийг тогоонд хийж, цорго хэмжигчийг зөөлөн ундааны савнаас усаар хангаж өгсөн харанхуй дахь дээжийн тохиргоог харуулав.

Цоргоны таймерд нэг дусаагуур суурилуулсан.

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

Энэ жишээг хянагчийг тохируулахын тулд шаардлагатай болтол ажиллуулж болно.

Алхам 7: Цавуу / ус нэвтэрдэггүй хаалт

Цавуу / ус нэвтэрдэггүй хаалт
Цавуу / ус нэвтэрдэггүй хаалт

Төгсгөлийн таг, холболтыг бэхлэхийн тулд PVC праймер ба PVC цемент ашиглана уу.

Авто хоолой ба цорго таймерын холбох хэрэгслийн эргэн тойрон дахь цоорхойг бөглөхийн тулд бөглөх/цахиур ашиглана уу.

Энд хүртээмжтэй байхын тулд arduino хашлага дээр боолттой таг хэрэглэдэг.

Алхам 8: Суулгах

Суулгах
Суулгах
Суулгах
Суулгах
Суулгах
Суулгах

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

Хянагчийг цэцэрлэгийн цорго байрладаг ба хөрсний датчикийг байрлуулах хооронд байрлуулна.

Цорго таймерыг тохируулаад суулгалт дуустал хүчдэлгүй байгаа эсэхийг шалгаарай.

Хөрсний датчикийг тохируулна уу.

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

Бүх терминалууд болон бусад ил гарсан хэсгүүдийг утас, дараа нь цахилгаан соронзон хальсаар битүүмжилнэ.

Хуваах хоолойн сул эсвэл ил гарсан хэсгийг утас битүүмжлэх соронзон хальс, дараа нь цахилгаан соронзон хальсаар битүүмжилнэ.

Таймерыг 3.2 вольтын тэжээлийн эх үүсвэрт холбоно уу. Батерейны багц эсвэл 3.2V DC - AC адаптер нь сүлжээнд ажилладаг.

Arduino-г 6-12V тогтмол гүйдлийн тэжээлийн эх үүсвэрт холбоно уу. Батерейны багц эсвэл цахилгаан залгуурт ажилладаг USB / DC-AC адаптер.

Асаах ба турших!

Алхам 9: ThingsBoard -ийн интеграци - Хяналт, тайлагнал

ThingsBoard Integration - Хяналт, тайлагнал
ThingsBoard Integration - Хяналт, тайлагнал

Энэ жишээнд Dragino Lora гарцтай холбогдсон Dragino Lora Shield ашигласан болно. Энэхүү тохиргоог ашиглаж байгаа эсэхээс үл хамааран өөр Лора тохиргоо эсвэл бусад IOT холболтыг усалгааны хянагчийн цуглуулсан өгөгдлийг Thingsboard гэх мэт IOT платформ руу дамжуулж болно. Анхдагч байдлаар, програм нь тэмдэгт бүрийн байтыг hex кодчилсон дараах өгөгдлийн мөрийг дамжуулдаг.

TXXXHXXXXXXXXRX

Т -ийн дараа температур, H -ийн дараа чийгшил, S -ийн ханалтын түвшин, R -ийн дараа нэг гүйдлийн интервалд ямар үйлдэл хийсэнтэй холбоотой нэг оронтой тоо орно. Энэ нь 0-5 байж болно, цифр бүр нь дараахь утгыг илэрхийлнэ.

0: Хөтөлбөрийг эхлүүлж байна1: Температур мэдрэгчийн гэмтэл2: Температурыг ажиллуулахад хэт бага байсан3: Хөрсний чийг хэт хуурай байгаа тул цорго таймерыг идэвхжүүлсэн4: Хөрсний чийг нарийн байгаа тул цоргоны таймер идэвхжээгүй5: Услалтын хянагч идэвхгүй болсон

Thingsboard -ийн хуулбарыг өөрийн төхөөрөмж дээр суулгах хэд хэдэн арга байдаг, эсвэл манай ThingsBoard суулгац дээр үнэгүй данс нээх боломжтой.

Thingsboard дээр төхөөрөмжөө тохируулна уу

Thingsboard дээр "Услалтын хянагч" гэж нэрлэсэн шинэ төхөөрөмж нэмэхийн тулд эдгээр зааврыг дагана уу.

Телеметрийн өгөгдлийг төхөөрөмжөөс түлхэх

MQTT, HTTP эсвэл CoAp -ээр дамжуулан телеметрийн өгөгдлийг төхөөрөмжөөс Thingboard руу түлхэх аргыг тохируулахын тулд эдгээр зааврыг дагана уу.

Манай сервер дээр бид дараах JSON -ийг төхөөрөмж ажиллаж байх үед дөрвөн цаг тутамд https://thingsboard.meansofproduction.tech/api/v1/… руу түлхэж байна (шууд өгөгдөлтэй):

Мөн бид дараах шинж чанаруудыг https://thingsboard.meansofproduction.tech/api/v1/… руу үе үе түлхэж, зангилааг хамгийн сүүлд хэзээ харсан тухай мэдээллийг өгдөг.

Энэ нь төхөөрөмж өгөгдөл дамжуулахаа больсон тохиолдолд дохио өгөхөд ашиглагддаг.

Хяналтын самбар үүсгэх

Энд тайлбарласны дагуу хяналтын самбар үүсгэнэ үү. Манай виджетэд дараахь зүйлс орно.

LastRunResult телеметрийн талбараас бүтээсэн энгийн карт виджет. Температурын телеметрийн талбайн босоо дижитал хэмжигдэхүүн LastRunResult телеметрийн талбараас сүүлийн өдрийн мэдээллийг харуулсан Timeseries хүснэгт, ханасан телеметрийн талбарыг харуулсан хэвтээ баар. Энэ нь өгөгдөл боловсруулах дараах функцийг ашигладаг:

буцааж 1024-утга;

Мөн хамгийн бага ба хамгийн их утгыг 0-100 болгож тохируулна. Ийм байдлаар ханалтын түвшинг хувиар илэрхийлж болно. Агаарын чийгшлийн утгыг харуулах заавар. Хамгийн сүүлийн утгыг харуулахын тулд өнгөрсөн долоо хоногийн 5 цагийн хугацаатай бүлэглэсэн температур, чийгшил, гүйлтийн үр дүнг агуулсан цаг хугацааны цуваа диаграмм.. Энэ нь дөрвөн цагийн гүйлтийн арга хэмжээнд нэг баар өгдөг. Өгөгдөл дамжуулах дараах функц нь усыг ажиллуулсан эсэхээс хамаарч гүйлтийн үр дүнг 0 эсвэл 120 хэлбэрээр илэрхийлэхэд ашигладаг. Энэ нь долоо хоногт хэр олон удаа ус урсаж байгааг харах хялбар дүрслэлийг өгдөг. Цэцэрлэгийн зургийг харуулсан статик HTML карт.

Имэйлийн анхааруулга

Бид усалгааны хянагчийн имэйлийн анхааруулгыг тохируулах дүрмийг ашигласан. Бүгд мессежний шүүлтүүр болон мэйл илгээх үйлдлийн залгаасын үйлдлийг ашигладаг.

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

typeof cs.secondsSinceLastSeen! == 'undefined' && cs.secondsSinceLastSeen> 21600

Хөрс хэт хуурайшсан тохиолдолд имэйл илгээхдээ дараах телеметрийн шүүлтүүрийг ашиглана уу

ханалтын төрөл! = "тодорхойгүй" && ханалт> 1010

Хөрс хэт чийглэг байвал имэйл илгээхдээ дараах телеметрийн шүүлтүүрийг ашиглана уу

ханалтын төрөл! = "тодорхойгүй" && ханалт

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