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

Raspberry Pi -ийн хяналттай өрөөний температурын хяналт, Gnuplot зургийн гаралт, имэйлийн дохиоллын чадвар: 7 алхам
Raspberry Pi -ийн хяналттай өрөөний температурын хяналт, Gnuplot зургийн гаралт, имэйлийн дохиоллын чадвар: 7 алхам

Видео: Raspberry Pi -ийн хяналттай өрөөний температурын хяналт, Gnuplot зургийн гаралт, имэйлийн дохиоллын чадвар: 7 алхам

Видео: Raspberry Pi -ийн хяналттай өрөөний температурын хяналт, Gnuplot зургийн гаралт, имэйлийн дохиоллын чадвар: 7 алхам
Видео: МОЯ ИДЕЯ/НОВЫЙ ПАСХАЛЬНЫЙ ЦВЕТОК/ВЫПЕЧКА ВОЗДУШНАЯ/ТЕСТО КАК ПУХ/MEINE IDEE/MY IDEA/FLOWER BREAD 2024, Оны зургадугаар сарын
Anonim
Gnuplot зургийн гаралт, имэйлийн дохиоллын чадвартай Raspberry Pi -ийн хяналттай өрөөний температурын хяналт
Gnuplot зургийн гаралт, имэйлийн дохиоллын чадвартай Raspberry Pi -ийн хяналттай өрөөний температурын хяналт

Миний ажилладаг газарт маш олон тооны компьютер байрладаг маш чухал өрөө байдаг. Эдгээр системийн ажиллагааг оновчтой болгохын тулд өрөөний орчны температур маш хүйтэн байх ёстой. Энэ өрөөнд агааржуулагчтай ямар нэг зүйл буруу байгааг мэдэгдэх цөөн хэдэн хүмүүст ямар нэгэн дохио өгөх чадвартай хяналтын системийг бий болгохыг надаас хүссэн юм. USB -ийн температур ба чийгшлийн мэдрэгч. Хяналтын хувьд би Gnuplot -ийг ашиглан гурван температурын график зурж, эдгээр графикуудын зургийг бүтээсэн. Дараа нь би Raspberry pi дээр байрлуулах зориулалттай HTML хуудсыг үүсгэсэн тул өнөөгийн нөхцөл байдал, gnuplot гаралтын зургийг манай сүлжээнд байгаа вэб хуудаснаас хянах боломжтой болно. Линукс Хэрэглэгчийн сэтгүүлээс би жишээ код олсон. (Мэдээжийн хэрэг, шаардлагатай портын даалгаврыг мэддэг бол та ямар ч имэйл сервер ашиглаж болно.) Үүний тулд би эдгээр анхааруулгад зориулагдсан Gmail имэйл данс үүсгэсэн. Нэмэлт функцын хувьд, сэрэмжлүүлэг өгөх үед би имэйлд нэг график хавсаргадаг бөгөөд ингэснээр имэйл хүлээн авч буй хүн энэ дохио хэр их нэмэгдсэнийг олж мэдэх боломжтой болно.

Алхам 1: Тоног төхөөрөмжийн тохиргоо

Тоног төхөөрөмжийн тохиргоо
Тоног төхөөрөмжийн тохиргоо

Тоног төхөөрөмжийг тохируулахад тийм ч их зүйл байхгүй. Raspberry pi нь Raspian хэл дээр ажилладаг бөгөөд USB температур мэдрэгч нь USB портуудын аль нэгэнд шууд залгагддаг. Энэхүү мэдрэгчийн эрчим хүчний хэрэглээ хамгийн бага бөгөөд үүний үр дүнд би үүнийг Raspberry pi -ээс шууд асаасан. Гэсэн хэдий ч бага зэрэг илүү эрчим хүч зарцуулдаг USB төхөөрөмжүүдийн хувьд би Raspberry pi -ийн USB портоос шууд биш харин тэжээлтэй USB төвөөр тэжээхийг зөвлөж байна. Температур мэдрэгчийг асаасны дараа температур, одоогийн нөхцөл байдлын чийгшлийн үзүүлэлтүүд. температур = 20.9 ° C чийгшил = 62.7% шүүдэр цэг = 13.0 ° CA python скрипт нь энэ мөрийг задлан шинжилж, температур, чийгшлийн утгыг таван минут тутамд гурван текст файл болгон хадгалдаг; өдөр тутмын, 24 цаг, 48 цагийн текст файлууд (ялгааг дараа нь HTML хэсэгт хэлэлцэх болно). Эдгээр файлуудаас Gnuplot нь график, дараа нь файл бүрийн өгөгдлийн багцын зургийг гаргах болно. Питон скриптийг хэлэлцэхээс өмнө би Raspberry pi бэлтгэх талаар ярих болно. Хяналт онлайнаар хийгдэх тул вэб сервер суулгах шаардлагатай байна. Би тэдний хэдийг нь Raspberry pi дээр туршиж үзсэн боловч арай том боловч би Apache -ийг илүүд үздэг. Apache-ийг Raspberry pi дээрээ суулгахын тулд та зүгээр л бичнэ үү: sudo apt-get install apache2 Энэ нь суулгахаасаа өмнө танд "y" товчийг дарж өгөх бөгөөд таны бөөрөлзгөнө pi-ээс хамаарч Apache-ийг хэдхэн минутын дараа суулгах болно. Үүнийг хийсний дараа та хоёр python залгаасыг суулгах хэрэгтэй: python-serial ба python-gnuplot plug. (Хэдийгээр би саяхан Raspian-ийн бүтээсэн төхөөрөмжүүд нь питон серийн залгаасын стандарттай боловч аюулгүй байх ёстой гэдгийг ойлгосон.) Бичсэн зүйлээ суулгахын тулд: sudo apt-get install python-serial python-gnuplotСанал хүсэлтийг хүлээн зөвшөөрсний дараа дахин нэг удаа залгаарай. -оруулах болно. Үүний дагуу тоног төхөөрөмжийн тохиргоо дууссан болно.

Алхам 2: Програм хангамжийн тохиргоо - Имэйлийн тохиргоо ба хүлээн авагчид

Имэйл хаягаа үүсгэхээс өмнө имэйл хаягаа имэйлээр илгээхийн тулд Gmail акаунт үүсгээрэй. (Энэ жишээ нь GMail -ийг ашигладаг боловч smtp портын тохиргоог мэдсэний дараа ямар ч имэйл серверийг ашиглаж болно) Python код нь маш энгийн боловч шаардлагатай импорт нь маш чухал юм. Тэдгээргүйгээр юу ч ажиллахгүй. Мэдээжийн хэрэг, бид имэйл хүлээн авагчдыг нэмэх ёстой. Имэйл хаяг бүрийг хувьсагч хэлбэрээр хадгална.

Алхам 3: Програм хангамжийн тохиргоо - Цуваа тохиргоо ба задлан шинжлэх

Дараа нь бид цуваа тохиргоог харах болно, энэ бол мэдрэгчийн цуваа гаралттай тохирох параметрүүдийг тохируулах явдал юм. Мэдрэгч нь стандарт формат болох 9600 8 N 1 дээр цуваа мөр гаргадаг. Мөрийг хүлээн авсны дараа энэ мөрийг python дээр задлах хэд хэдэн арга байдаг бөгөөд магадгүй илүү найдвартай байдаг. Миний хийдэг арга бол цуваа мөрөөс "temp" тэмдэгтүүдийг хайх явдал юм. Байршсаны дараа дараагийн 46 цуврал тэмдэгтийг мөр болгон уншихад л хангалттай. Цуглуулсан мөрийг одоо массивын элементүүд шиг хандаж болно. Хүссэн өгөгдлийг мөрнөөс задалж, харгалзах хугацааны тамгатай хамт гурван файлд хадгална. Timestamp = strftime ("%d%b%Y%H:%M:%S", localtime ())

Алхам 4: Програм хангамжийн тохиргоо - Gnuplot

Програм хангамжийн тохиргоо - Gnuplot
Програм хангамжийн тохиргоо - Gnuplot
Програм хангамжийн тохиргоо - Gnuplot
Програм хангамжийн тохиргоо - Gnuplot
Програм хангамжийн тохиргоо - Gnuplot
Програм хангамжийн тохиргоо - Gnuplot

Gnuplot бол тушаалын мөрийн график хэрэгсэл юм. Та үндсэн ойлголтуудыг олж мэдсэний дараа энэ нь өгөгдлийн багцыг графикаар харуулах маш хүчирхэг хэрэгсэл байж болох юм. Gnuplot нь форматлагдсан текст файлаас шууд зураг зурах боломжтой байдаг. Өгөгдөл файлд хаана байгааг gnuplot -д зааж өгсний дараа бид хүссэн утгыг зурж болно. Би X тэнхлэгт цаг, Y тэнхлэгт бидний температурыг ашиглах болно. Миний туршлагаас харахад цагийг төлөвлөх нь хамгийн хэцүү байдаг, учир нь та текст файлын форматтай нийцэхийн тулд gnuplot форматтай байх ёстой. Графикийн бүх сонголтууд дууссаны дараа Gnuplot энэ графикийн дүрсийг үүсгэж болно. Энэ бол дараа нь вэб хуудсандаа ашиглах зураг байх болно. Би-p.webp

Алхам 5: Програм хангамжийн тохиргоо - Босго тохиргоо ба имэйл илгээх

Анхааруулга өгөх босгыг таны тохиргооны туршилт, алдааны дагуу хийх ёстой. системтэй өрөөнд цонх байхгүй тул агааржуулагч зогссоны дараа маш хурдан халах болно. Эхэндээ би хэдэн өдрийн турш өгөгдлийн багцыг харж, 30 градусын сэрэмжлүүлгийн утгыг тогтоохоос өмнө температурын өөрчлөлтийг ажиглав. Үүнийг питон скрипт дотор хувьсагч болгон тохируулсан болно. Энэ нь тийм ч өндөр биш мэт санагдаж магадгүй ч сэрэмжлүүлэг өгсний дараа та асуудлыг шийдвэрлэхээс өмнө өөрийгөө засах цаг өгөхийг хүсч байна.

Илүү хялбар болгохын тулд би имэйлийн жагсаалтад бие даасан имэйл илгээж байна. Захидлын жагсаалт богино тул би хэд хэдэн хүлээн авагчид нэг имэйл илгээх талаар огт санаа зовдоггүй. Энд нэг зүйлийг тэмдэглэх хэрэгтэй, би энэ скриптийг 5 минут тутамд cron ажиллуулдаг тул та босго идэвхжсэний дараа 5 минут тутамд имэйл илгээхийг хүсэхгүй байна. Үүнийг даван туулахын тулд би сэрэмжлүүлгийн огноо, цагийг файлд бичиж, имэйл илгээхээсээ өмнө энэ файлыг шалгаж, систем аль хэдийн сэрэмжтэй байдалд байгаа эсэхийг шалгаарай. Сэрэмжлүүлгийн горимд шилжсэний дараа, энэ нь систем идэвхжсэн, сэрэмжтэй байх хугацаандаа зөвхөн эхний триггерийн дараа цаг тутамд л имэйлийг илгээх болно. Ингэснээр Gmail таны имэйлийг богино хугацаанд хэт их имэйл илгээхийг хориглодоггүй.

Алхам 6: Програм хангамжийн тохиргоо - HTML

Системийг бүхэлд нь хянах ажлыг вэб хуудсаар дамжуулан хийдэг бөгөөд үүнд маш энгийн html скрипт шаардлагатай болно. Gnuplot -ийн бүтээсэн зургууд нь зургийн ижил хэмжээсийг ашиглахад л хангалттай. Миний дэлгэцэн дээр хамгийн сайн тохирсон эдгээр зургуудын хувьд ойролцоогоор 3 хэмжээтэй хийсэн гэж би бодож байна. Html скриптийг үүсгэхийн өмнө үүнд зориулж хавтас үүсгэцгээе. Анхдагч байдлаар вэб хостинг хавтас/var/www/дээр байрладаг. Хэдийгээр энэ Raspberry pi -ийн цорын ганц зорилго бол энэ өрөөг хянах, имэйлийн анхааруулга өгөх явдал юм. Энэ фолдер нь үндсэн хэрэглэгчийнх тул та энэ байршилд хавтас үүсгэхийн тулд sudo ашиглах хэрэгтэй болно. Энэ жишээнд би температурыг хавтасны нэр болгон ашигласан боловч та энд дурын нэрийг ашиглаж болно, гэхдээ энэ хуудсыг үзэхийн тулд хаягийн мөрөнд оруулах ёстой гэдгийг санаарай. Энэ замыг python скрипт дотор хувьсагч хэлбэрээр хадгална. Хостинг байршлыг өөрчлөх эсвэл өөр системд зориулсан скриптийг өөрчлөх шаардлагатай байсан ч гэсэн энэ байрлалаас өөрчилж болно, одоо бид энэ фолдерт html скриптээ үүсгэж болно. энд гүйцэтгэхийг хүсч байна. Энэ хуудсыг хайж олоход хялбар болгохын тулд html скриптийг "index.html" гэж нэрлэхийг зөвлөж байна. Хамгийн чухал зүйл бол зургийн хэмжээ нь Gnuplot -ийн зургийн хэмжээтэй ижил байгаа эсэхийг шалгах явдал юм., Та зүгээр л Raspberry Pi -ийн IP хаягийг /температурыг (эсвэл фолдероо юу гэж нэрлэснийг) оруулах хэрэгтэй, би янз бүрийн зүйлийг хянадаг хэд хэдэн системтэй бөгөөд тэдгээр нь бүгд үр дүнгийнхээ график гаралтыг гаргадаг. Тиймээс би эдгээр бүх хуудсуудын линктэй хуудсыг үүсгэсэн тул эдгээр хуудсуудад хандахыг хүссэн үедээ хаягаа оруулах талаар санаа зовох хэрэггүй болно.

Алхам 7: Би амьд байна …

Би үүнийг компьютерийн өрөөний температурыг хянахын тулд ашигласан боловч энэ нь ямар ч эх сурвалжаас авсан мэдээлэл байж болох юм. Үүнийг текст файлд хадгалах боломжтой бөгөөд Gnuplot -ийн форматыг мэддэг бол үлдсэнийг нь хийж болно. Миний саяхан энэ төсөлд нэмж оруулсан зүйл бол "зүрхний цохилт" төрлийн имэйл илгээх явдал юм. Энэ нь сарын эхний өглөөний 9 цагт надад систем байгаа шиг ажиллаж байгаа бөгөөд бүх зүйл өрөөнд байгаа эсэхийг тэдэнд мэдэгдэхийн тулд захидлын жагсаалтыг имэйлээр илгээдэг скрипт байна.

Cronjob жагсаалтыг дараах байдлаар ашиглана уу.

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