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

Raspberry Pi ашиглан температур ба чийгшлийн хяналт: 6 алхам (зурагтай)
Raspberry Pi ашиглан температур ба чийгшлийн хяналт: 6 алхам (зурагтай)

Видео: Raspberry Pi ашиглан температур ба чийгшлийн хяналт: 6 алхам (зурагтай)

Видео: Raspberry Pi ашиглан температур ба чийгшлийн хяналт: 6 алхам (зурагтай)
Видео: BTT - Manta M4P - TMC2130 SPI with Sensorless Homing 2024, Долдугаар сарын
Anonim
Raspberry Pi ашиглан температур ба чийгшлийн хяналт
Raspberry Pi ашиглан температур ба чийгшлийн хяналт
Raspberry Pi ашиглан температур ба чийгшлийн хяналт
Raspberry Pi ашиглан температур ба чийгшлийн хяналт

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

Би Raspberry Pi 1 самбар, DHT22 мэдрэгч ашиглаж байна. Та үүнийг Интернет, GPIO, Python бүхий ямар ч компьютер дээр хийж болно. Хамгийн хямд DHT11 мэдрэгч бас сайн ажилладаг.

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

Тоног төхөөрөмж бэлтгэх
Тоног төхөөрөмж бэлтгэх
Тоног төхөөрөмж бэлтгэх
Тоног төхөөрөмж бэлтгэх

Би Raspberry Pi -ээ удаан ашиглаагүй тул эхнээс нь эхэлье.

Бидэнд хэрэгтэй болно:

  • Raspberry Pi самбар (эсвэл IoT-д чиглэсэн бусад платформ).
  • SD эсвэл microSD карт (платформоос хамааран).
  • Микро USB-ээр 5V/1A.
  • Интернэт холболтыг хангадаг LAN кабель.
  • HDMI дэлгэц, RCA дэлгэц эсвэл UART порт (SSH -ийг идэвхжүүлэхийн тулд).

Эхний алхам бол Raspbian програмыг татаж авах явдал юм. Би дэлгэцийн оронд SSH -ийг ашиглах гэж байгаа тул Lite хувилбарыг сонгосон бөгөөд хамгийн сүүлд хийснээс хойш бүх зүйл өөрчлөгдсөн: одоо Etcher нэртэй маш сайн шатаж буй програм хангамж байдаг бөгөөд энэ нь төгс ажилладаг бөгөөд гайхалтай дизайнтай..

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

Алхам 2: SSH -ийг идэвхжүүлэх

SSH -ийг идэвхжүүлж байна
SSH -ийг идэвхжүүлж байна
SSH -ийг идэвхжүүлж байна
SSH -ийг идэвхжүүлж байна
SSH -ийг идэвхжүүлж байна
SSH -ийг идэвхжүүлж байна

SSH нь анхдагчаар идэвхгүй болсон байдаг. Би UART-USB хөрвүүлэгчийг ашиглаж болно, эсвэл бүрхүүлд хандаж, SSH-ийг идэвхжүүлэхийн тулд дэлгэцийг холбож болно.

Дахин ачаалсны дараа би эцэст нь орж байна. Юуны өмнө шинэчлэх болно:

sudo apt update && sudo apt upgrade -y

Одоо энэ шинэ төхөөрөмжийг Cloud -тэй холбож үзье.

Алхам 3: Cloud4RPi суулгах

Cloud4RPi суулгаж байна
Cloud4RPi суулгаж байна

IoT -д зориулагдсан Cloud4RPi нэртэй үүл платформыг туршиж үзэхээр шийдлээ.

Баримт бичгийн дагуу үүнийг ажиллуулахын тулд бидэнд дараах багцууд хэрэгтэй болно.

sudo apt install git python python -pip -y

Үйлчлүүлэгчийн номын санг нэг тушаалаар суулгаж болно.

sudo pip cloud4rpi суулгана уу

Үүнийг ажиллуулахын тулд бидэнд одоо жишээ код хэрэгтэй байна.

git clone https://github.com/cloud4rpi/cloud4rpi-raspberrypi-python && cd cloud4rpi-raspberrypi-python git clone https://gist.github.com/f8327a1ef09ceb1ef142fa68701270de.git e && mv e/mv e && rmdir -re

Би minimal.py ажиллуулахаар шийдсэн боловч хуурамч мэдээлэлд дургүй. Аз болоход би энэ жишээн дээр оношлогооны өгөгдлийг бодит болгох хялбар аргыг олж харлаа. Импортын хэсэгт өөр нэг импорт нэмнэ үү.

rpi импортоос *

Дараа нь хуурамч өгөгдөл өгдөг эдгээр функцийг устгаарай (rpi.py тэдгээрийг одоо тодорхойлдог):

def cpu_temp ():

return 70 def ip_address (): return '8.8.8.8' def host_name (): return 'hostname' def os_name (): return 'osx'

Одоо бидэнд Cloud4RPi төхөөрөмжүүдийг данстай холбох боломжийг олгодог жетон хэрэгтэй байна. Үүнийг авахын тулд cloud4rpi.io дээр данс үүсгээд энэ хуудсан дээрх Шинэ төхөөрөмж товчийг дарна уу. Minimal.py файл дахь _YOUR_DEVICE_TOKEN_ мөрийг төхөөрөмжийнхөө тэмдгээр сольж, файлыг хадгална уу. Одоо бид анхны хөөрөлтөд бэлэн байна.

python minimal.py

Төхөөрөмжийн хуудсыг нээгээд өгөгдөл байгаа эсэхийг шалгана уу.

Одоо бодит мэдээлэл рүү шилжье.

Алхам 4: Мэдрэгчийг холбох

Мэдрэгчийг холбох
Мэдрэгчийг холбох

Бидэнд хэрэгтэй болно:

  • DHT22 эсвэл DHT11 чийгшил мэдрэгч
  • Татах эсэргүүцэл (5-10 кОм)
  • Утас

DHT22 мэдрэгч нь температур, чийгшлийг нэгэн зэрэг хэмждэг. Харилцааны протокол нь стандартчилагдаагүй тул бид үүнийг raspi -config -д идэвхжүүлэх шаардлагагүй - энгийн GPIO зүү хангалттай байх болно.

Өгөгдөл олж авахын тулд би Adafruit -ийн DHT мэдрэгчийн гайхалтай номын санг ашиглах болно, гэхдээ энэ нь ажиллахгүй байж магадгүй юм. Би нэг удаа кодын хачирхалтай тасалдлыг олж мэдсэн бөгөөд энэ нь миний техник хангамжид ажиллаагүй бөгөөд хоёр жилийн дараа миний татах хүсэлт хүлээгдэж байна. Би BCM2835 бүхий Raspberry Pi 1 -ийг Raspberry Pi 3 гэж гайхмаар илрүүлсэн тул самбарыг илрүүлэх тогтмолуудыг өөрчилсөн. Энэ үнэн байсан ч болоосой гэж хүсч байна … Тиймээс би сэрээгээ ашиглахыг зөвлөж байна. Хэрэв танд үүнтэй холбоотой асуудал гарвал анхны репозиторыг туршиж үзээрэй, магадгүй энэ нь хэн нэгэнд тохирсон байж магадгүй, гэхдээ би тэдний нэг биш.

git clone https://github.com/Himura2la/Adafruit_Python_DHT…. Adafruit_Python_DHT

Номын сан нь C хэл дээр бичигдсэн тул эмхэтгэл шаарддаг тул танд build-essential болон python-dev багц хэрэгтэй болно.

sudo apt install build-essential python-dev -ysudo python setup.py install

Багцуудыг суулгаж байх үед DHT22 -ийг зураг дээр үзүүлсэн шиг холбоно уу.

Тэгээд туршиж үзээрэй:

cd ~ python -c "Adafruit_DHT -ийг d хэлбэрээр оруулах; d.read_retry хэвлэх (d. DHT22, 4)"

Хэрэв та (39.20000076293945, 22.600000381469727) гэх мэт зүйлийг олж харвал энэ нь Цельсийн хувийн чийгшил, температур юм.

За, одоо бүх зүйлийг хамтдаа хийцгээе!

Алхам 5: Мэдрэгчийн уншилтыг Cloud руу илгээх

Мэдрэгчийн уншилтыг Cloud руу илгээх
Мэдрэгчийн уншилтыг Cloud руу илгээх

Би minimal.py -ийг суурь болгон ашиглаж, түүнд DHT22 харилцан үйлчлэлийг нэмж оруулах болно.

cd cloud4rpi-raspberrypi-python

cp minimal.py ~/cloud_dht22.py cp rpi.py ~/rpi.py cd vi cloud_dht22.py

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

Adafruit_DHT импортлох

temp, hum = None, None last_update = time.time () - 20 def update_data (): global last_update, hum, temp if time.time () - last_update> 10: hum, temp = Adafruit_DHT.read_retry (Adafruit_DHT. DHT22, 4) last_update = time.time () def get_t (): update_data () буцах тойрог (temp, 2) хэрэв temp биш бол өөр биш бол үгүй get get_h (): update_data () буцах тойрог (hum, 2) Өөр хэн ч үгүй

Энэ кодыг одоо байгаа импортын дараа оруулаад хувьсагчдын хэсгийг шинэ функцүүдийг ашиглахаар засна уу.

хувьсагч = {

'DHT22 Temp': {'type': 'numeric', 'bind': get_t}, 'DHT22 Rumidity': {'type': 'тоон', 'bind': get_h}, 'CPU Temp': {'төрөл ':' тоон ',' холбох ': cpu_temp}}

Мэдээлэл дамжуулах ажлыг эхлүүлэхийн тулд улаан товчийг дарна уу.

python cloud_dht22.py

Дараа нь та төхөөрөмжийн хуудсыг шалгаж болно.

Та үүнийг байгаагаар нь үлдээж болно, гэхдээ би бүх зүйлд үйлчилгээ үзүүлэхийг илүүд үздэг. Энэ нь скрипт үргэлж ажиллаж байгааг баталгаажуулдаг. Бүрэн автомат скриптээр үйлчилгээ үүсгэх:

wget -O https://github.com/cloud4rpi/cloud4rpi-raspberrypi-python/blob/master/service_install.sh | sudo bash -s cloud_dht22.py

Үйлчилгээг эхлүүлж байна:

sudo үйлчилгээ cloud4rpi эхлэх

Тэгээд шалгаж байна:

pi@raspberrypi: ~ $ sudo үйлчилгээ cloud4rpi статус -l

● cloud4rpi.service-Cloud4RPi демон Ачаалагдсан: ачаалагдсан (/lib/systemd/system/cloud4rpi.service; идэвхжсэн) Идэвхтэй: Лхагва гарагаас хойш идэвхтэй (ажиллаж байгаа) 2017-05-17 20:22:48 UTC; 1 минутын өмнө Үндсэн PID: 560 (python) CGroup: /system.slice/cloud4rpi.service └─560/usr/bin/python /home/pi/cloud_dht22.pyМай 17 17:22:51 raspberrypi python [560]: Хэвлэх -hub/messages: {'type': 'config', 'ts': '2017-05-17T20… y'}]} 5-р сарын 17 20:22:53 raspberrypi python [560]: iot-hub/зурвасуудыг нийтэлж байна: {'type': 'data', 'ts': '2017-05-17T20: 2… 40'}} 5-р сарын 17 20:22:53 raspberrypi python [560]: iot-hub/messages нийтлэх: {'төрөл': 'систем', 'ts': '2017-05-17T20….4'}}

Хэрэв бүх зүйл хүлээгдэж буй шиг ажиллавал бид үргэлжлүүлэн Cloud4RPi платформын өгөгдлийг удирдах боломжийг ашиглаж болно.

Алхам 6: График ба дохиолол

График ба дохиолол
График ба дохиолол
График ба дохиолол
График ба дохиолол
График ба дохиолол
График ба дохиолол

Юуны өмнө хувьсагчдыг хэрхэн яаж өөрчлөгдөж байгааг харахын тулд график зурцгаая. Үүнийг шинэ хяналтын самбар нэмж, шаардлагатай диаграмыг оруулах замаар хийж болно.

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

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

Та Cloud4RPi -г Python програмыг ажиллуулах боломжтой ямар ч техник хэрэгслээр үнэгүй ашиглах боломжтой. Миний хувьд одоо би агаар чийгшүүлэгчийг хэзээ асаахаа үргэлж мэддэг бөгөөд үүнийг Cloud4RPi -ээр дамжуулан алсын удирдлагатай реле рүү холбож өгдөг. Би халуунд бэлэн байна! Тавтай морилно уу, Зун!

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