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

Raspberry Pi Door Notifier: 6 алхам (зурагтай)
Raspberry Pi Door Notifier: 6 алхам (зурагтай)
Anonim
Raspberry Pi хаалганы мэдээлэгч
Raspberry Pi хаалганы мэдээлэгч

Хүмүүс хаалга руу нэвтэрч байна уу эсвэл хэзээ орж байна гэж та бодож байсан уу? Хаалганы хөдөлгөөнийг хянах ухаалаг, хямд, хурдан арга замыг хүсч байна уу? Цааш харах хэрэггүй! Энэхүү хялбаршуулсан төхөөрөмж нь хөдлөх хаалганаас гарсан чичиргээг хянаж, хэрэглэгчид заасан имэйл хаягаар имэйлээр мэдээлэх болно.

Энэхүү төсөл нь танд 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 нэвтрүүлж, өмнөх алхамд дурдсан програмуудыг ажиллуулж, халдагчдыг хүлээх ёстой!

Нэмэлт оноо авахын тулд утас/төхөөрөмжийг нуухыг оролдоорой, ингэснээр халдагчид таны ухаалаг төхөөрөмжийг сэжиглэхгүй байх болно!… Эсвэл шилэн хаалган дээр бүү тавь. ¯ / _ (ツ) _/¯

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