Talaan ng mga Nilalaman:
- Hakbang 1: Paghahanda ng Hardware
- Hakbang 2: Paganahin ang SSH
- Hakbang 3: Pag-install ng Cloud4RPi
- Hakbang 4: Pagkonekta sa Sensor
- Hakbang 5: Pagpapadala ng Mga Pagbasa ng Sensor sa Cloud
- Hakbang 6: Mga Tsart at Alarma
Video: Pagsubaybay sa Temperatura at Humidity Gamit ang Raspberry Pi: 6 Hakbang (na may Mga Larawan)
2024 May -akda: John Day | [email protected]. Huling binago: 2024-01-30 13:12
Darating ang tag-init, at ang mga walang air conditioner ay dapat maging handa na kontrolin ang kapaligiran sa loob ng manu-mano. Sa post na ito, inilalarawan ko ang modernong paraan upang masukat ang pinakamahalagang mga parameter para sa ginhawa ng tao: temperatura at halumigmig. Ang nakolektang data na ito ay ipinadala sa cloud at naproseso doon.
Gumagamit ako ng isang board na Raspberry Pi 1 at ang sensor ng DHT22. Maaari mong gawin ang pareho sa anumang computer na mayroong Internet, GPIO, at Python. Gumagana din ang mas murang sensor ng DHT11.
Hakbang 1: Paghahanda ng Hardware
Magsimula tayo sa simula pa lamang, dahil hindi ko ginamit ang aking Raspberry Pi sa mahabang panahon.
Kakailanganin namin ang:
- Board na Raspberry Pi (o iba pang platform na naka-orient sa IoT).
- SD o microSD card (depende sa platform).
- 5V / 1A sa pamamagitan ng micro-USB.
- LAN cable, na nagbibigay ng koneksyon sa Internet.
- Pagpapakita ng HDMI, pagpapakita ng RCA, o port ng UART (upang paganahin ang SSH).
Ang pinakaunang hakbang ay ang pag-download ng Raspbian. Pinili ko ang bersyon ng Lite, dahil gagamitin ko ang SSH sa halip na ipakita. Ang mga bagay ay nagbago mula noong huling oras na ginawa ko ito: ngayon mayroong isang mahusay na nasusunog na software na tinatawag na Etcher, na gumagana nang perpekto, at may isang nakamamanghang disenyo.
Matapos makumpleto ang pagkasunog ng imahe, ipinasok ko ang SD card sa aking Pi, isinaksak ang LAN at mga kable ng kuryente, at makalipas ang ilang sandali, nairehistro ng aking router ang bagong aparato.
Hakbang 2: Paganahin ang SSH
Ang SSH ay hindi pinagana bilang default. Maaari kong gamitin ang alinman sa UART-USB converter o ikonekta lamang ang isang display upang ma-access ang shell at paganahin ang SSH.
Pagkatapos ng pag-reboot, sa wakas ay nakapasok na ako. Mga unang bagay muna, i-update natin:
sudo apt update && sudo apt upgrade -y
Ikonekta natin ngayon ang sariwang aparato sa Cloud.
Hakbang 3: Pag-install ng Cloud4RPi
Napagpasyahan kong subukan ang cloud platform na tinatawag na Cloud4RPi, na idinisenyo para sa IoT.
Ayon sa mga doc, kailangan namin ang mga sumusunod na pakete upang mapatakbo ito:
sudo apt install git python python-pip -y
Ang client library ay maaaring mai-install sa isang solong utos:
sudo pip install cloud4rpi
Ngayon kailangan namin ng ilang sample code upang matiyak na gumagana ito.
git clone https://github.com/cloud4rpi/cloud4rpi-raspberrypi-python && cd cloud4rpi-raspberrypi-python git clone https://gist.github.com/f8327a1ef09ceb1ef142fa68701270de.git e && mv e / minimal.py minimal.py && rmdir -re
Napagpasyahan kong magpatakbo ng minimal.py, ngunit hindi ko gusto ang pekeng data. Sa kabutihang palad, napansin ko ang isang madaling paraan upang gawing totoo ang data ng diagnostic sa halimbawang ito. Magdagdag ng isa pang pag-import sa seksyon ng mga pag-import:
mula sa rpi import *
Pagkatapos tanggalin ang mga pagpapaandar na ito na nagbibigay ng pekeng data (ang rpi.py ay tumutukoy sa kanila ngayon):
def cpu_temp ():
ibalik ang 70 def ip_address (): ibalik ang '8.8.8.8' def host_name (): ibalik ang 'hostname' def os_name (): ibalik ang 'osx'
Ngayon kailangan namin ng isang token, na nagbibigay-daan sa Cloud4RPi na mai-link ang mga aparato sa mga account. Upang makakuha ng isa, lumikha ng isang account sa cloud4rpi.io at pindutin ang pindutan ng Bagong Device sa pahinang ito. Palitan ang _YOUR_DEVICE_TOKEN_ string sa minimal.py file sa token ng iyong aparato at i-save ang file. Handa na kami para sa unang paglulunsad.
sawa minimal.py
Buksan ang pahina ng aparato at suriin na ang data ay naroroon.
Lumipat tayo ngayon sa data ng totoong mundo.
Hakbang 4: Pagkonekta sa Sensor
Kakailanganin namin ang:
- DHT22 o DHT11 kahalumigmigan sensor
- Pull-up risistor (5-10 KΩ)
- Mga wire
Sinusukat ng sensor ng DHT22 ang temperatura at halumigmig nang sabay-sabay. Ang pamamahala ng komunikasyon ay hindi na-standardize, kaya hindi namin kailangan itong paganahin sa raspi-config - isang simpleng GPIO pin ay higit sa sapat.
Upang makuha ang data, gagamitin ko ang mahusay na library ng Adafruit para sa mga sensor ng DHT, ngunit maaaring hindi ito gumana tulad ng dati. Natagpuan ko minsan ang isang kakaibang pare-pareho na pagkaantala sa code, na hindi gumana para sa aking hardware, at makalipas ang dalawang taon ay nakabinbin pa rin ang aking kahilingan sa paghila. Binago ko rin ang mga Constant na pagkakita ng board dahil ang aking Raspberry Pi 1 na may BCM2835 ay nakakagulat na nakita bilang Raspberry Pi 3. Nais kong totoo ito … Kaya, inirerekumenda kong gamitin ang aking tinidor. Kung nakakaranas ka ng anumang mga problema dito, mangyaring subukan ang orihinal na imbakan, marahil ito gumagana para sa isang tao, ngunit hindi ako isa sa kanila.
git clone https://github.com/Himura2la/Adafruit_Python_DHT…. Adafruit_Python_DHT
Tulad ng aklatan na nakasulat sa C, nangangailangan ito ng compilation, kaya't kailangan mo ng build-vital at python-dev packages.
sudo apt install install-importanteng python-dev -ysudo python setup.py install
Habang nag-i-install ang mga pakete, ikonekta ang DHT22 tulad ng ipinakita sa larawan.
At subukan ito:
cd ~ python -c "import Adafruit_DHT as d; print d.read_retry (d. DHT22, 4)"
Kung nakakita ka ng tulad ng (39.20000076293945, 22.600000381469727), dapat mong malaman na ito ang halumigmig sa mga percents at temperatura sa Celsius.
Ngayon, tipunin natin ang lahat nang sama-sama!
Hakbang 5: Pagpapadala ng Mga Pagbasa ng Sensor sa Cloud
Gagamitin ko ang minimal.py bilang isang batayan at idaragdag dito ang pakikipag-ugnay ng DHT22.
cd cloud4rpi-raspberrypi-python
cp minimal.py ~ / cloud_dht22.py cp rpi.py ~ / rpi.py cd vi cloud_dht22.py
Tulad ng pagbabalik ng DHT22 ng parehong temperatura at halumigmig sa isang solong tawag, iniimbak ko sila sa buong mundo at nag-i-update lamang nang isang beses sa isang kahilingan, sa pag-aakalang ang pagkaantala sa pagitan nila ay higit sa 10 segundo. Isaalang-alang ang sumusunod na code, na kumukuha ng data ng DHT22:
i-import ang Adafruit_DHT
temp, hum = Wala, Wala last_update = time.time () - 20 def update_data (): global last_update, hum, temp kung time.time () - last_update> 10: hum, temp = Adafruit_DHT.read_retry (Adafruit_DHT. DHT22, 4) last_update = time.time () def get_t (): update_data () return round (temp, 2) kung ang temp ay wala Walang iba Wala def get_h (): update_data () return round (hum, 2) kung hum ay hindi Wala nang iba Wala
Ipasok ang code na ito pagkatapos ng umiiral na mga pag-import at i-edit ang seksyon ng mga variable upang magamit nito ang mga bagong pag-andar:
variable = {
'DHT22 Temp': {'type': 'numeric', 'bind': get_t}, 'DHT22 Humidity': {'type': 'numeric', 'bind': get_h}, 'CPU Temp': {'type ':' numeric ',' bind ': cpu_temp}}
Itulak ang pulang pindutan upang simulan ang paglipat ng data:
python cloud_dht22.py
Pagkatapos ay maaari mong suriin ang pahina ng aparato.
Maaari mong iwanan ito tulad ng dati, ngunit mas gusto ko ang pagkakaroon ng isang serbisyo para sa lahat. Tinitiyak nito na palaging tumatakbo ang script. Lumilikha ng isang serbisyo gamit ang ganap na awtomatikong script:
wget -O https://github.com/cloud4rpi/cloud4rpi-raspberrypi-python/blob/master/service_install.sh | sudo bash -s cloud_dht22.py
Simula sa serbisyo:
sudo serbisyo cloud4rpi magsimula
At suriin ito:
pi @ raspberrypi: ~ $ sudo serbisyo cloud4rpi katayuan -l
● cloud4rpi.service - Cloud4RPi daemon Loaded: load (/lib/systemd/system/cloud4rpi.service; pinagana) Aktibo: aktibo (tumatakbo) mula Wed 2017-05-17 20:22:48 UTC; 1min na nakalipas Main PID: 560 (python) CGroup: /system.slice/cloud4rpi.service └─560 / usr / bin / python /home/pi/cloud_dht22.pyMay 17 20:22:51 raspberrypi python [560]: Publishing iot -hub / mga mensahe: {'type': 'config', 'ts': '2017-05-17T20… y'}]} Mayo 17 20:22:53 raspberrypi python [560]: Pag-publish ng iot-hub / mga mensahe: {'type': 'data', 'ts': '2017-05-17T20: 2… 40'}} Mayo 17 20:22:53 raspberrypi python [560]: Pag-publish ng iot-hub / mga mensahe: {'type': 'system', 'ts': '2017-05-17T20….4'}}
Kung ang lahat ay gumagana tulad ng inaasahan, maaari kaming magpatuloy at magamit ang mga kakayahan ng platform ng Cloud4RPi upang manipulahin sa data.
Hakbang 6: Mga Tsart at Alarma
Una sa lahat, balangkasin natin ang mga variable upang makita kung paano sila nagbabago. Maaari itong magawa sa pamamagitan ng pagdaragdag ng isang bagong Control Panel at paglalagay ng mga kinakailangang tsart dito.
Ang isa pang bagay na magagawa natin dito ay ang pagtatakda ng isang Alerto. Pinapayagan ka ng tampok na ito na mai-configure ang ligtas na saklaw para sa isang variable. Sa sandaling lumampas ang saklaw, nagpapadala ito ng isang abiso sa email. Sa pahina ng pag-edit ng Control Panel, maaari kang lumipat sa Mga Alerto at i-set up ang isa.
Kaagad pagkatapos nito, ang halumigmig sa aking silid ay nagsimulang mabawasan nang mabilis nang walang anumang kapansin-pansin na dahilan, at agad na sumunod ang alarma.
Maaari mong gamitin ang Cloud4RPi nang libre sa anumang hardware na nakapagpatupad ng Python. Tulad ng sa akin, ngayon palagi kong alam kung kailan bubukas ang air humidifier, at maaari ko rin itong ikonekta sa isang relay para sa remote control sa pamamagitan ng Cloud4RPi. Handa ako sa init! Maligayang pagdating, Tag-araw!
Inirerekumendang:
Pagsubaybay sa Temperatura at Humidity ng DHT Gamit ang ESP8266 at ang AskSensors IoT Platform: 8 Hakbang
Pagsubaybay sa Temperatura at Humidity ng DHT Gamit ang ESP8266 at ang AskSensors IoT Platform: Sa isang nakaraang itinuro, nagpakita ako ng isang sunud-sunod na gabay upang makapagsimula sa ESP8266 nodeMCU at ang AskSensors IoT platform. Sa tutorial na ito, kumokonekta ako sa isang sensor ng DHT11 sa node MCU. Ang DHT11 ay isang karaniwang ginagamit na Temperatura at humidi
Pagsubaybay sa Temperatura at Humidity Gamit ang ESP-01 & DHT at ang Cloud ng AskSensors: 8 Mga Hakbang
Pagsubaybay sa Temperatura at Humidity Gamit ang ESP-01 & DHT at ang AskSensors Cloud: Sa natuturo na ito malalaman natin kung paano subaybayan ang temperatura at mga pagsukat ng halumigmig gamit ang board ng IOT-MCU / ESP-01-DHT11 at ang AskSensors IoT Platform Pinipili ko ang module na IOT-MCU ESP-01-DHT11 para sa application na ito dahil
Pagsubaybay sa Temperatura at Humidity Gamit ang Blynk: 6 Mga Hakbang
Pagsubaybay sa Temperatura at Humidity Gamit ang Blynk: Sa tutorial na ito, pupunta sa Monitoring Temperatura at Humidity gamit ang DHT11 at ipadala ang Data sa cloud gamit ang BlynkComponents na Kinakailangan para sa Tutorial na ito: Arduino UnoDHT11 Temperature and Humidity SensorESP8266-01 WiFi Module
Pagsubaybay sa Temperatura at Humidity Gamit ang SHT25 at Raspberry Pi: 5 Hakbang
Pagsubaybay sa Temperatura at Humidity Gamit ang SHT25 at Raspberry Pi: Kamakailan-lamang na nagtrabaho kami sa iba't ibang mga proyekto na nangangailangan ng pagsubaybay sa temperatura at halumigmig at pagkatapos ay napagtanto namin na ang dalawang mga parameter na ito ay talagang may mahalagang papel sa pagkakaroon ng isang pagtatantya ng kahusayan ng pagtatrabaho ng isang system. Parehong sa indus
Temperatura, Kamag-anak na Humidity, Atmospheric Pressure Logger Gamit ang Raspberry Pi at TE Connectivity MS8607-02BA01: 22 Mga Hakbang (na may Mga Larawan)
Temperatura, Kamag-anak na Humidity, Atmospheric Pressure Logger Gamit ang Raspberry Pi at TE Connectivity MS8607-02BA01: Panimula: Sa proyektong ito ipapakita ko sa iyo kung paano bumuo ng pag-set up sa pamamagitan ng hakbang ng isang sistema ng pag-log para sa temperatura ng halumigmig at presyon ng atmospera. Ang proyektong ito ay batay sa Raspberry Pi 3 Model B at TE Connectivity environment sensor chip MS8607-02BA