Агуулгын хүснэгт:
- Алхам 1: хангамж
- Алхам 2: Цахилгааны утас
- Алхам 3: Юу хийхээ тохируулах
- Алхам 4: Код бичих ба ажиллуулах
- Алхам 5: Туршилт
- Алхам 6: суурилуулах
2024 Зохиолч: John Day | [email protected]. Хамгийн сүүлд өөрчлөгдсөн: 2024-01-30 11:04
Хүмүүс хаалга руу нэвтэрч байна уу эсвэл хэзээ орж байна гэж та бодож байсан уу? Хаалганы хөдөлгөөнийг хянах ухаалаг, хямд, хурдан арга замыг хүсч байна уу? Цааш харах хэрэггүй! Энэхүү хялбаршуулсан төхөөрөмж нь хөдлөх хаалганаас гарсан чичиргээг хянаж, хэрэглэгчид заасан имэйл хаягаар имэйлээр мэдээлэх болно.
Энэхүү төсөл нь танд Flask, Raspberry Pis, GPIO мэдрэгч, Mandrill API -ийг ашиглах боломжийг олгоно. Зөвхөн бүтээх нь хөгжилтэй төдийгүй маш их ашиг тустай байдаг. Халдлага үйлдэгчид болгоомжил …
Алхам 1: хангамж
Энэ зөрчилдөөнийг бий болгохоор төлөвлөж байна уу? Энд танд хэрэгтэй зүйл байна:
- Raspberry Pi 3
- Микро SD карт
- Эмэгтэй-эмэгтэй 3 утас
- 1 чичиргээ мэдрэгч
- Эрчим хүчний банк
- Командын зурвасууд
Хэрэв та энэ төслийг олон хаалгаар бүтээхээр төлөвлөж байгаа бол хангамж тус бүрийг хэдэн төхөөрөмж хэрэгтэй байгаагаар үржүүлээрэй.
Хэрэв та энэ төхөөрөмжийг бүтээх/турших гэж байгаа бол дараахь зүйлийг авах шаардлагагүй … гэхдээ энэ нь үнэхээр тустай байх болно.
- Компьютерийн дэлгэц
- USB гар
- Микро USB цэнэглэх хэрэгсэл
Алхам 2: Цахилгааны утас
Raspberry Pi бол олон төрлийн мэдрэгч, дагалдах хэрэгслүүд дагалддаг гоёмсог төхөөрөмж боловч бид шаардлагатай хэмжилтийг хийхийн тулд Pi -ийн утаснуудад үндсэн мэдрэгчийг нэмэх шаардлагатай болдог. Энэхүү төсөлд ашигласан гол мэдрэгчийг дээрх зураг дээрээс харж болно - энэ бол өндөр мэдрэмжтэй чичиргээ мэдрэгч юм. Бид энэ мэдрэгчийг байрлуулж, утсаа дамжуулахын тулд талхны самбар эсвэл бусад холбох хэрэгслийг ашиглаж болох боловч бид үүнийг эмэгтэй-эмэгтэй утсаар шууд Raspberry Pi төхөөрөмжийн зүү рүү холбосон.
Утасны схемийг дээрээс олж болно (https://www.piddlerintheroot.com/vibration-sensor/ -ээс гаралтай). Энэ утсан дээрх бүх утсыг холбоход л хангалттай бөгөөд таны чичиргээ мэдрэгч ажиллахад тохиромжтой байх болно. Мөн энэ төслийн хувьд танд эцэст нь батерейны багц хэрэгтэй болно гэдгийг анхаарна уу, гэхдээ хэрэв та туршиж байгаа бол төхөөрөмжийг хананы залгуурт залгах нь тустай байж магадгүй юм.
Алхам 3: Юу хийхээ тохируулах
Баяр хүргэе! Та өнөөг хүртэл амжилтанд хүрсэн. Үргэлжлүүлцгээе!
Бид одоо Pi -тай шууд ажиллаж эхлэх гэж байна. Дараахь бүх зүйлийг төхөөрөмж дээр гар, дэлгэц ашиглан хийж болно (эсвэл хэрэв та тухтай байвал SSH -ээр дамжуулан).
Аливаа GPIO мэдрэгчийг Pi болон колботой ажиллахын тулд маш их урьдчилсан тохиргоо хийгдсэн байдаг. Тэвчээр бол давуу тал. Python -ийн хэд хэдэн номын санг та эхлээд суулгах хэрэгтэй болно. Үүнийг Python -ийн номын сан/багцын менежер Pip ашиглан хийж болно. Ашиглахын тулд `pip install` гэж бичээд танд хэрэгтэй зарим номын санг нэрлэхийн тулд:
- хүсэлтүүд
- RPi. GPIO
- колбо
- сав
- flask_wtf
- wtforms
- имэйл илгээх
- mandrill
Тэдгээрийг суулгахыг хүлээх зуураа та кофе уумаар байна. Энэ нь бага зэрэг хугацаа шаардагдана.
Таны бүх номын санг суулгасны дараа та колбо төслөө эхлүүлэхэд бэлэн боллоо. Колбо нь ажиллаж байгаа төхөөрөмжөөс хуудсуудад үйлчилдэг хөнгөн хүрээ юм. Энэ тохиолдолд Raspberry Pi нь сервер болдог. Хөөрхөн юм, тийм үү? Та эндээс маш энгийн Flask програмыг хэрхэн тохируулах талаар сурах боломжтой. Үүний дараа зааврыг оролдохоос өмнө үүнийг хий.
Алхам 4: Код бичих ба ажиллуулах
Үүнийг дуусгасны дараа та төслийн файлуудыг боловсруулж эхлэхэд бэлэн байна. Би танд хэрэгтэй бүх файлыг доор оруулсан болно - магадгүй та кодыг дахин бичих хэрэгтэй бөгөөд зөвхөн файлуудыг хуулаад зогсохгүй (ТА ИЛҮҮ МЭДЭЭЛНЭ!).
Лавлах байгууллагууд ямар байх ёстойг энд харуулав.
+- ioapp | +- appFolder | +- загварууд | +- индекс.html | +- _init_.py | +- хэлбэрүүд.py | +- mcemail.py | +- чиглүүлэлтүүд.py | +- iotapp.py | +- vibes.py
Эдгээр бүх файлыг зөв дарааллаар байрлуулснаар та төслөө богино хугацаанд ажиллуулах боломжтой болно. Фласк серверээ ажиллуулахын тулд та үндсэн директор руу очих хэрэгтэй. Дараа нь та бичих ёстой:
$ экспорт FLASK_APP = iotapp.py
$ python -m колбонд ажиллуулах -хост 0.0.0.0
Үүний тусламжтайгаар та сервер ажиллаж байгааг илтгэх мессеж хүлээн авах ёстой бөгөөд та хуудсыг төхөөрөмжөөс сүлжээнд байгаа өөр төхөөрөмж рүү дамжуулах боломжтой байх ёстой.
Одоо файлуудаа үзэж, код юу хийж байгааг олж мэдэхийг оролдоход тохиромжтой үе байх болно. Мэдээжийн хэрэг, кодуудын аль нь ч чулуугаар тогтоогдоогүй байна … бүгдийг төслийн онцлогт нийцүүлэн шинэчлэх/өөрчлөх боломжтой. Жишээлбэл, яг одоогийн байдлаар төхөөрөмж чичиргээ мэдрэгчийн оролтыг хүлээн авсны дараа POST хийх үед оролт хэзээ болсон тухай цаг хугацааны тамга илгээдэг. Гэсэн хэдий ч сервер энэ өгөгдлийг хадгалдаггүй. Хэрэв хэрэглэгч түүхэн мэдээллийг хадгалахыг илүүд үзэж, хаа нэг газар үзүүлэхийг хүсч байвал үүнийг хийж болно.
Таны анзаарах нэг зүйл бол КОД БҮРЭН БИШЭЭГҮЙ байна. Энэ төсөл нь чичиргээ (хаалга онгойлгох) үед мэдэгдэл имэйл илгээх гадаад API ашигладаг. Үүнийг тохируулахын тулд та Mandrill данс үүсгэж, API түлхүүр үүсгэх шаардлагатай болно.
Та өөрийн илгээж буй домэйныг баталгаажуулж, API түлхүүртэй болсны дараа түлхүүрээ mcemail.py файлд байрлуулж, илгээх мэдээллийг тохируулах боломжтой (нэг файл дахь үндсэн параметрийг өөрчлөх эсвэл дамжуулах замаар) `route.py` файл дахь өөр имэйлээр. Хэрэв та Mandrill болон түүнийг хэрхэн ашиглах талаар илүү их баримт бичиг авахыг хүсвэл эндээс олж болно.
Алхам 5: Туршилт
Төхөөрөмжийг байнгын байрлалд суулгахаасаа өмнө хийж буй бүх зүйлийг туршиж үзэх нь зүйтэй болов уу. Үүнийг хэрхэн яаж ажиллуулахыг энд харуулав.
Төхөөрөмж нь үнэндээ хоёр програмыг ажиллуулж байна: vibes.py` ба Flask сервер. Эхнийх нь эхлээд арын дэвсгэр дээр ажиллах ёстой бөгөөд дараа нь Flask серверийг ажиллуулж болно. `vibes.py` гэдэг нь зүгээр л сервер рүү POST хийх бөгөөд сервер нь POST хүсэлтийг тайлбарладаг.
$ python vibes.py &
$ python -m колбонд ажиллуулах -хост 0.0.0.0
Дараа нь та зөв URI/IP рүү очиж, бүх мэдэгдлээ илгээхийг хүсч буй имэйл хаягаа тохируулах боломжтой байх ёстой. Та туршилтын имэйл илгээж, төсөл ажиллаж байгаа эсэхийг шалгахын тулд чичиргээ мэдрэгч дээр дарах хэрэгтэй.
Бүх зүйл сайхан харагдаж байна уу? За, бид бизнес хийхэд бэлэн байна!
Алхам 6: суурилуулах
Төхөөрөмжийг суурилуулах нь өөрөө маш ойлгомжтой байдаг. Үндсэндээ та төхөөрөмжийг батерейны багцад холбосон эсэхийг шалгаж, командын тууз ашиглан төхөөрөмжийг хаалган дээр бэхлэх хэрэгтэй.
Анхаарна уу: төхөөрөмж нь хаалганы хөдөлгөөнийг мэдрэхийн тулд чичиргээ мэдрэгчийг хаалганы перпендикуляр байрлуулах ёстой
Үүнийг дуусгасны дараа та төхөөрөмж рүү SSH нэвтрүүлж, өмнөх алхамд дурдсан програмуудыг ажиллуулж, халдагчдыг хүлээх ёстой!
Нэмэлт оноо авахын тулд утас/төхөөрөмжийг нуухыг оролдоорой, ингэснээр халдагчид таны ухаалаг төхөөрөмжийг сэжиглэхгүй байх болно!… Эсвэл шилэн хаалган дээр бүү тавь. ¯ / _ (ツ) _/¯
Зөвлөмж болгож буй:
Garage Door Status Light Hack: 3 алхам
Гаражийн хаалганы статусын гэрэл хакердах: Би гаражийн хаалга онгорхой эсвэл хаалттай байгаа эсэхийг харахад амаргүй байшинд амьдардаг. Бид байшинд товчлууртай боловч хаалга нь харагдахгүй байна. Өндөр өртөгтэй тул ямар нэгэн унтраалга, цахилгаан хангамжийг инженерчлэх тухай бодох нь хүсээгүй юм
Усны түвшний индикатор Cum Notifier: 4 алхам
Усны түвшний үзүүлэлт индикатор: усны түвшний индикатор нь усны сав дахь усны түвшинг тасралтгүй хянаж, шаардлагатай бол танд мэдэгдэх төхөөрөмж юм. Энэ нь танк дүүрсэн эсвэл хоосон байгаа эсэхийг танд мэдэгдэх бөгөөд ингэснээр та насосыг асааж, унтрааж болно
YouTube Desktop Notifier: 11 алхам (зурагтай)
YouTube Desktop Notifier: Та YouTube -ийн захиалагчаа алдах тухай хар дарсан зүүд зүүдэлдэг үү? Хэрэв тийм бол та ганцаараа биш юм. Аз болоход би үүнийг " YouTube Desktop Notifier " Миний сувгуудын захиалагч, тоонуудыг үзэх талаар намайг байнга шинэчилж байхын тулд. Энэхүү маш энгийн DIY төсөл
Blüp: Bubble Notifier: 11 алхам (зурагтай)
Blüp: Bubble Notifier: Би чичиргээ, дуу, гэрэлд суурилсан мэдэгдэлээс илүү зөөлөн, гэнэтийн мэдэгдэх системийг хайж байсан. Би энэ шалгуурт нийцсэн зүйл олж чадаагүй тул өөрөө хийхээр шийдсэн. Цаашилбал, би өөрийн шийдлийг хувийн мэдээллээ оруулахыг хүсч байсан
ESP - Remote Ambiance Notifier: 8 алхам
ESP-Remote Ambiance Notifier: Энэхүү прототип нь алдартай IOT чип ESP8266 дээр үндэслэсэн болно. Процессор: L106 32 битийн RISC