
Агуулгын хүснэгт:
2025 Зохиолч: John Day | [email protected]. Хамгийн сүүлд өөрчлөгдсөн: 2025-01-23 15:00

Энэ төсөл нь манай хүлэмжийн төслийн өмнөх өргөтгөл юм (https://www.instructables.com/id/EAL-EMBEDDED-GREE…).
Энэ төсөлд бид бүх өгөгдлөө бүртгээд дараа нь зангилааны улаан өнгөөр дүрслэн харуулахын тулд мэдээллийн санг нэмж оруулсан болно.
Манай мэдээллийн санд нэвтэрч буй агуулга бол хөрсний чийгшил, температур, чийгшил бөгөөд үүнийг янз бүрийн диаграммд харуулав.
Даталогиноос гадна бид хүлэмжинд аль профайл идэвхтэй байгааг хянах, алсаас удирдах боломжтой.
Дараа нь бид насос, сэнсийг гараар хянах боломжтой болно.
Алхам 1: Суулгах гарын авлага

Эхний алхам бол бүх бүрэлдэхүүн хэсгүүдийг суулгах явдал юм.
Хаалт () дотор бид бүрэлдэхүүн хэсэг хаана холбогдсоныг жагсаасан болно. Жишээлбэл, Arduino нь Raspberry Pi -тэй USB кабелиар холбогддог.
Ашигласан техник хангамж:
- Arduino (Raspberry Pi)
- Raspberry Pi 3 B+
- Хөрсний гигрометр (Arduino)
- DHT11 мэдрэгч (Arduino)
- HG-320 гүний усны насос (буухиа)
- 5V реле (Arduino)
- Компьютерийн фен (буухиа)
- 230V цахилгаан хангамж (насос)
Ашигласан програм хангамж:
- Raspbian (Raspberry Pi -д зориулсан OS)
- Arduino IDE
- Python (Raspberry Pi)- PySerial- MySQLclient
- Node-Red (Raspberry Pi)- Pythonshell- Summariser- MySQL- Хяналтын самбар
- MySQL сервер (freemysqlhosting.net)
Эхлээд та тоног төхөөрөмжийн бүрэлдэхүүн хэсгүүдийг холбох хэрэгтэй болно, ингэснээр хүлэмжийг бий болгохын тулд энэхүү гарын авлагыг дагана уу: Суулгах гарын авлага.
Дараа нь та Raspberry Pi дээрээ Raspbian OS суулгах хэрэгтэй болно. Үүний дараа та Python, дараа нь python номын санг суулгах хэрэгтэй болно.
Дараагийн алхам бол Node-Red-ийг Raspberry Pi дээр суулгаж, дараа нь тавиурын менежерт очиж, өмнө дурдсан модулиудыг суулгах явдал юм.
Дараа нь энэ сайтад үнэгүй MySQL сервер рүү ороод үнэгүй MySQL сервер үүсгээрэй.
Энэ бүгдийг хийсний дараа та питон скриптийг өөрийн Raspberry Pi руу шилжүүлэх, Node-Red скриптийг импортлох, Arduino-ийн кодыг байршуулахад бэлэн байна.
Алхам 2: Хяналтын дэлгэц


Алхам 3: Төсөлд ашигласан эд анги/програм хангамжийн жагсаалт
Бид дараах технологийг ашиглан хүлэмжийн хийц хийсэн
- Ардуино
- Raspberry Pi
- Улаан зангилаа
- Python
- PHPMyAdmin
Алхам 4: I/0 жагсаалт

Алхам 5: Утасны диаграм
Алхам 6: Arduino код
Arduino код нь мэдрэгчээр хэмжсэн өгөгдлийг Raspberry Pi -ээр уншиж өгөгдлийн санд дамжуулах цуваа холболт дээр хэвлэх замаар ажилладаг.
Arduino нь Raspberry Pi -тэй холбогдсон дижитал оролттой бөгөөд Arduino уншдаг бөгөөд хэрэв гурвын аль нэг нь өндөр бол IF мэдэгдлийн улмаас профайл өөрчлөгдөх болно.
Түүнчлэн бид кодыг хоцрохын оронд Millis -ийг ашиглахаар шинэчилсэн бөгөөд энэ нь хуучин хоцролтын интервалын оронд код болон үлдсэн хэсгийг байнга унших боломжийг олгодог.
Алхам 7: Raspberry Pi 3 B+

Бид Arduino -г интернет болон MySQL мэдээллийн баазтай холбохын тулд Raspberry Pi 3 B+ ашигласан. Энэ нь бидэнд мэдрэгчийнхээ өгөгдлийг хадгалах, эцсийн хэрэглэгчдэд харааны интерфэйс хийх боломжийг олгосон юм. Хэрэглэгчийн интерфэйсийн хувьд бид Node-Red-ийг самбарын самбараар ашигласан.
Гэхдээ бид Node-Red дээр мэдрэгчийнхээ мэдээллийг харуулахаас өмнө өгөгдлийг MySQL мэдээллийн баазад байршуулах арга хэрэгтэй байсан бөгөөд үүний тулд бид Raspberry Pi дээр ажилладаг Python скрипт хийсэн.
Алхам 8: Python

Python скриптийг Arduino-ээс ирж буй цуваа холбооноос өгөгдөл хүлээн авахад ашигладаг. Дараа нь скрипт өгөгдлийг MySQL мэдээллийн санд илгээдэг.
Бид pyserial болон mysqlclient гэсэн хоёр номын санг ашигласан.
Тиймээс эхний алхам бол эдгээр хоёр номын санг татаж авах явдал юм.
- PySerial
- MySQLclient
PySerial нь Arduino-аас цуваа холболтоор мэдээлэл цуглуулахад ашиглагддаг.
төхөөрөмж = '/dev/ttyUSB0'
arduino = цуваа. Цуваа (төхөөрөмж, 9600)
Эхний мөрийг манай COM портыг тодорхойлоход ашиглаж байна. Raspberry Pi дээр бид Arduino -д ашигладаг /dev /ttyUSB0 юм. Хоёрдахь мөр нь Arduino руу цуваа портыг нээх зориулалттай. Бид зүгээр л ямар COM порт, ямар хурдаар холболт ажиллаж байгааг тодорхойлдог.
Кодын үлдсэн хэсэг нь хэсэг хугацааны давталтаар ажилладаг.
Дараа нь бид хэд хэдэн Try and Except блокуудыг ашигладаг. Эхлээд код нь Try блок дотор ажиллахыг оролдож байгаа бөгөөд хэрэв амжилтгүй болбол Except блокыг ажиллуулна. Гэхдээ хэрэв Try блок сайн ажиллаж байвал энэ нь Except -ийг ажиллуулахгүй, харин кодын үлдсэн хэсгийг ажиллуулдаг.
Try блокуудын дотор бид цуваа холболтыг уншиж, дараа нь MySQL мэдээллийн санд илгээх кодтой болно.
hygrolist = arduino.readlines (1)
templist = arduino.readlines (2) humidlist = arduino.readlines (3)
Дээрх код нь цуваа холболт дахь мөрүүдийг уншихад зориулагдсан болно. Кодын төгсгөл дэх тоо нь цувралд уншсан мөрийг тодорхойлдог. Тиймээс эдгээр мөрүүдийг янз бүрийн хувьсагчаар ангилж байна.
Arduino -аас өгөгдөл хүлээн авах үед бид өгөгдлийг MySQL сервер рүү илгээх mysqlclient модулийг ашигласан.
db = _mysql.connect (хост = "sql7.freemysqlhosting.net", хэрэглэгч = "sql7256552", passwd = "3ebtbP8FQ2", db = "sql7256552")
Энэ мөр нь манай MySQL мэдээллийн санд холбогдох зориулалттай. Энэ нь сервер, хэрэглэгчийн нэр, нууц үг, сервер дотор ямар өгөгдлийн сантай холбогдохыг зааж өгдөг. Энд та MySQL DB -ийнхээ холболтыг зааж өгөх ёстой.
db.query ("INSERTINTO` TempHumid` (`temp`,` humid`, `hygro`) VALUES (%s, %s, %s)" %(temp, humid, hygro))
Тиймээс бид DB холболтоо аваад SQL асуулга хийж байна. Асуулт нь утгыг "TempHumid" хүснэгтэд оруулаад дараа нь "temp", "чийглэг", "hygro" багануудад оруулах ёстой гэж хэлдэг. "(%S, %s, %s)" гэсэн сүүлийн хэсэг нь мөр форматлах бөгөөд өгөгдлийн санд уншиж болох форматыг өгөхөд ашиглагддаг.
Энэ бүх үйлдлийг хэсэг хугацааны дотор хийдэг бөгөөд ингэснээр бид өгөгдлийг MySQL сервер рүү илгээдэг.
Хэрэв та бүх кодыг үзэхийг хүсч байвал python скриптийг татаж аваарай (TempHumid.py).
Алхам 9: MySQL


MySQL серверийн хувьд бид www.freemysqlhosting.net дээр үнэгүй үйлчилгээ ашигладаг байсан. Бид Raspberry Pi дээр дотооддоо сервер хийж болох байсан ч үүл/интернетэд бүрэн холбогдохын тулд үнэгүй үйлчилгээнд хамрагдсан.
MySQL -д нэвтрэхийн тулд та phpmyadmin.co хаягаар орж freemysqlhosting данснаасаа итгэмжлэлээр нэвтрэх ёстой.
Та дотор байхдаа "TempHumid" нэртэй хүснэгт үүсгэх ёстой бөгөөд энэ хүснэгт дотор "ID", "temp", "humid", "hygro" гэсэн 4 багана үүсгэх ёстой. Эхний багана (ID) нь A_I (Автомат өсөлт) нүдийг чагтална уу. Ингэснээр ID багана нь өгөгдлийн сан бүрт ID өгдөг. Дараах бүх баганыг INT (бүхэл тоо) болгож, стандарт утгыг NULL болгож тохируулах ёстой.
Алхам 10: Улаан зангилаа



Манай төсөлд бид Node-Red-ийг ашиглан график интерфэйс үүсгэсэн. Node-Red нь Raspberry Pi дээр ажилладаг бөгөөд манай MySQL мэдээллийн сангаас мэдээлэл цуглуулдаг бөгөөд эдгээр өгөгдлийг гурилан хэлбэртэй хэмжигч, график диаграмаар харуулдаг бөгөөд ингэснээр эцсийн хэрэглэгч өгөгдлийг хянах боломжтой болно. Node-Red-ийн хамгийн ухаалаг зүйл бол үүнийг ямар ч төхөөрөмж дээр үзэх боломжтой бөгөөд энэ нь тухайн контентыг үзэж буй тухайн төхөөрөмжийн хувьд сайтын хэмжээг өөрчлөх болно гэсэн үг юм.
Манай Node-Red програмыг суулгахын тулд 1-р алхамыг үзээд "Node-Red.docx" нэртэй баримтыг татаж аваарай. Дараа нь текстийг баруун дээд буланд байгаа импортын функцээр Node-Red болгон хуулж буулгана уу.
Үүний дараа MySQL мэдээллийн сангийнхаа мэдээллийн сангийн тохиргоог өөрчилнө үү.
Зөвлөмж болгож буй:
Ikea Socker дээр суурилсан автомат доторх хүлэмж: 5 алхам

Ikea Socker дээр суурилсан автомат доторх хүлэмж: Сайн байна уу, энэ бол миний анхны зааварчилгаа юм. Энэхүү хамтын ажиллагааны хүрээнд би маш их зүйлийг сурсан бөгөөд даруухан санаануудаа буцааж өгөх цаг болсон гэж бодож байна. Би англи хэлнийхээ хувьд уучлаарай, ядуу, гэхдээ би чадах бүхнээ хийх болно. Надад үр тарьж ургуулдаг ширээний хүлэмж хийх санаа байсан
Автомат услах, интернет холболт болон бусад олон зүйл бүхий гайхалтай хүлэмж: 7 алхам (зурагтай)

Автомат услах, интернет холболт болон бусад олон зүйл бүхий гайхалтай хүлэмж: Энэхүү зааварт тавтай морилно уу. Марш эхлэхэд би цэцэрлэгийн дэлгүүрт байсан бөгөөд зарим хүлэмжийг харсан. Ургамал, цахилгаан хэрэгсэлтэй удаан хугацааны турш төсөл хийхийг хүсч байсан тул би урагшаа явж нэгийг худалдаж авлаа: https://www.instagram.com/p
MAG (Бяцхан автомат хүлэмж): 9 алхам

MAG (Miniature Automatic хүлэмж): Ээж маань ихэнхдээ завгүй байдаг. Тиймээс би түүнд хүлэмжийг автоматжуулах замаар туслахыг хүссэн юм. Ийм байдлаар тэр ургамлыг услах шаардлагагүй тул бага зэрэг цаг хэмнэх боломжтой бөгөөд үүнийг MAG (Miniature Automatic Garden) ашиглан хийх боломжтой болно. Үүнтэй адил
IGreenhouse - Ухаалаг хүлэмж: 17 алхам (зурагтай)

IGreenhouse - Ухаалаг хүлэмж: Гэртээ ургуулсан жимс, хүнсний ногоо нь худалдаж авснаасаа илүү сайн байдаг боловч заримдаа хүлэмжээ харахаа больдог. Энэ төсөлд бид ухаалаг хүлэмж хийх болно. Энэхүү хүлэмж нь цонх, хаалгаа автоматаар нээж хаах болно
Ухаалаг хүлэмж: 12 алхам

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