Სარჩევი:
- მარაგები
- ნაბიჯი 1: აპარატურის მომზადება
- ნაბიჯი 2: დააინსტალირეთ Cloud4RPi
- ნაბიჯი 3: სენსორის დაკავშირება
- ნაბიჯი 4: სენსორული მონაცემების გაგზავნა ღრუბელში
- ნაბიჯი 5: დიაგრამები და სიგნალიზაცია
ვიდეო: ტენიანობა ღრუბელში: 5 ნაბიჯი
2024 ავტორი: John Day | [email protected]. ბოლოს შეცვლილი: 2024-01-30 10:17
ზაფხული მოდის და ის, ვინც კონდიციონერის გარეშეა, მზად უნდა იყოს ატმოსფეროს ხელით გასაკონტროლებლად. ამ პოსტში მე აღწერს თანამედროვე გზას ადამიანის კომფორტისთვის ყველაზე მნიშვნელოვანი პარამეტრების გაზომვის: ტემპერატურა და ტენიანობა. ეს შეგროვებული მონაცემები იგზავნება ღრუბელში და დამუშავებულია იქ.
მარაგები
მე ვიყენებ ჟოლოს დაფს და DHT22 სენსორს. იგივე შეგიძლიათ გააკეთოთ ნებისმიერ კომპიუტერზე, რომელსაც აქვს ინტერნეტი, GPIO და პითონი. იაფი DHT11 სენსორიც კარგად მუშაობს.
ნაბიჯი 1: აპარატურის მომზადება
დავიწყოთ თავიდანვე, რადგან მე არ გამოვიყენე ჩემი Raspberry Pi საკმაოდ დიდი ხნის განმავლობაში.
ჩვენ დაგვჭირდება:
- Raspberry Pi დაფა (ან სხვა IoT ორიენტირებული პლატფორმა).
- SD ან microSD ბარათი (დამოკიდებულია პლატფორმაზე).
- 5V/1A მიკრო USB. LAN კაბელის საშუალებით, რომელიც უზრუნველყოფს ინტერნეტ კავშირს.
- HDMI დისპლეი, RCA დისპლეი ან UART პორტი (SSH- ის გასააქტიურებლად).
პირველი ნაბიჯი არის Raspbian– ის ჩამოტვირთვა. მე ავირჩიე Lite ვერსია, რადგან ვაპირებ გამოვიყენო SSH დისპლეის ნაცვლად.
ყველაფერი შეიცვალა მას შემდეგ, რაც მე ეს გავაკეთე: ახლა არის დიდი დამწვარი პროგრამა, რომელსაც ეწოდება Etcher, რომელიც მშვენივრად მუშაობს და აქვს განსაცვიფრებელი დიზაინი.
სურათის დაწვის დასრულების შემდეგ, ჩავწერე SD ბარათი ჩემს Pi- ში, ჩავრთე LAN და დენის კაბელები და გარკვეული პერიოდის შემდეგ, ჩემმა როუტერმა დაარეგისტრირა ახალი მოწყობილობა.
დიდი! მოდით გავაგრძელოთ და SSH მასში.
უსაფრთხოება ნორმალურია, მე მომწონს, მაგრამ ეს საქმეს ცოტა ართულებს. მე გამოვიყენებ UART-USB ადაპტერს გარსზე წვდომისთვის და SSH- ის გასააქტიურებლად…
UART– ის ნაცვლად ჩვენების გამოყენება ამარტივებს მას.
გადატვირთვის შემდეგ, მე საბოლოოდ შევდივარ.
პირველ რიგში, განვაახლოთ:
sudo apt განახლება && sudo apt განახლება -y
ახლა მოდით დავუკავშიროთ ეს ახალი მოწყობილობა ღრუბელს.
ნაბიჯი 2: დააინსტალირეთ Cloud4RPi
მე გადავწყვიტე გამოვცადო ღრუბლოვანი პლატფორმა სახელწოდებით Cloud4RPi, რომელიც განკუთვნილია IoT– სთვის.
დოკუმენტების თანახმად, ჩვენ გვჭირდება შემდეგი პაკეტები მის გასაშვებად:
sudo apt დააინსტალირეთ git python3 python3 -pip -y
კლიენტის ბიბლიოთეკა შეიძლება დამონტაჟდეს ერთ ბრძანებაში:
sudo pip3 დააინსტალირეთ cloud4rpi
ახლა ჩვენ გვჭირდება კოდის ნიმუში.
git კლონი https://github.com/cloud4rpi/cloud4rpi-raspberrypi-python && cd cloud4rpi-raspberrypi-python
შესრულებადი სკრიპტი არის control.py.
ჩვენ გვჭირდება ნიშანი, რომელიც Cloud4RPi- ს საშუალებას აძლევს დააკავშიროს მოწყობილობები ანგარიშებთან. ერთი რომ მიიღოთ, შექმენით ანგარიში cloud4rpi.io– ზე და დააჭირეთ ამ გვერდზე ახალ მოწყობილობის ღილაკს. შეცვალეთ _YOUR_DEVICE_TOKEN_ სტრიქონი control.py ფაილში თქვენი მოწყობილობის ნიშნით და შეინახეთ ფაილი. ახლა ჩვენ მზად ვართ პირველი გაშვებისთვის.
sudo python3 control.py
გახსენით მოწყობილობის გვერდი და შეამოწმეთ, რომ მონაცემები იქ არის.
ახლა მოდით გადავიდეთ რეალურ მონაცემებზე.
ნაბიჯი 3: სენსორის დაკავშირება
ჩვენ დაგვჭირდება:
- ტენიანობის სენსორი DHT22 ან DHT11
- გამწევი რეზისტორი (5-10 KΩ)
- მავთულები
DHT22 სენსორი ერთდროულად ზომავს ტემპერატურასა და ტენიანობას. საკომუნიკაციო პროტოკოლი არ არის სტანდარტიზებული, ამიტომ ჩვენ არ გვჭირდება მისი ჩართვა raspi -config - მარტივი GPIO pin საკმარისზე მეტია.
მონაცემების მოსაპოვებლად, მე გამოვიყენებ ადაფრუტის დიდ ბიბლიოთეკას DHT სენსორებისთვის, მაგრამ ის შეიძლება არ იმუშაოს ისე, როგორც არის. ერთხელ აღმოვაჩინე უცნაური მუდმივი შეფერხება კოდში, რომელიც არ მუშაობდა ჩემს აპარატურაზე, და ორი წლის შემდეგ ჩემი გაყვანის მოთხოვნა ჯერ კიდევ არ არის გათვალისწინებული. მე ასევე შევცვალე დაფის გამოვლენის მუდმივები, რადგან ჩემი Raspberry Pi 1 BCM2835 საოცრად გამოვლინდა როგორც Raspberry Pi 3. ვისურვებდი რომ ეს სიმართლე ყოფილიყო… ამრიგად, მე გირჩევთ გამოიყენოთ ჩემი ჩანგალი. თუ რაიმე პრობლემა შეგექმნებათ, გთხოვთ სცადოთ ორიგინალური საცავი, იქნებ ის ვინმესთვის მუშაობს, მაგრამ მე არ ვარ მათ შორის.
git კლონი https://github.com/Himura2la/Adafruit_Python_DHT.gitcd Adafruit_Python_DHT
როგორც ბიბლიოთეკა დაწერილია C- ში, ის მოითხოვს შედგენას, ასე რომ თქვენ გჭირდებათ მშენებლობის აუცილებელი და პითონ-დევის პაკეტები.
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), უნდა იცოდეთ, რომ ეს არის ტენიანობა პროცენტებში და ტემპერატურა ცელსიუსში.
ახლა, შევიკრიბოთ ყველაფერი ერთად!
ნაბიჯი 4: სენსორული მონაცემების გაგზავნა ღრუბელში
მე გამოვიყენებ control.py როგორც ბაზას და მასში დავამატებ DHT22 ურთიერთქმედებას.
cp cloud4rpi-raspberrypi-python/control.py./cloud_dht22.pycp cloud4rpi-raspberrypi-python/rpi.py./rpi.pyvi cloud_dht22.py
ამოიღეთ კოდის ნიმუში, როგორც ზემოთ მოცემულ სურათზე.
რადგან DHT22 დააბრუნებს როგორც ტემპერატურას, ასევე ტენიანობას ერთ ზარში, მე ვაპირებ მათ გლობალურად შენახვას და მხოლოდ ერთხელ განვაახლებ მოთხოვნას, თუ ვარაუდობენ, რომ მათ შორის შეფერხება 10 წამზე მეტია. განვიხილოთ შემდეგი კოდი, რომელიც იძენს DHT22 მონაცემებს:
იმპორტი Adafruit_DHT
temp, hum = არცერთი, არცერთი
last_update = დრო. დრო () - 20
def update_data ():
გლობალური 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 () დაბრუნების რაუნდი (ტემპი, 2) თუ ტემპერატურა არ არის სხვა არავინ def get_h (): update_data () დაბრუნების რაუნდი (hum, 2) თუ hum არ არის სხვა არავინ
ჩადეთ ეს კოდი არსებული იმპორტის შემდეგ და შეცვალეთ ცვლადების განყოფილება, რათა ის გამოიყენოს ახალი ფუნქციები:
ცვლადები = {'DHT22 Temp': {'type': 'numeric', 'bind': get_t}, 'DHT22 Humidity': {'type': 'numeric', 'bind': get_h}, 'CPU Temp': {'type': 'numeric', 'bind': cpu_temp}}
თუ აღმოაჩენთ, რომ მანიპულაციები დამაბნეველია, აითვისეთ ამ ფაილის საბოლოო ვერსია. დააჭირეთ მონაცემთა გადაცემის დასაწყებად წითელ ღილაკს:
ამის შემდეგ შეგიძლიათ შეამოწმოთ მოწყობილობის გვერდი.
python3 cloud_dht22.py
ამის შემდეგ შეგიძლიათ შეამოწმოთ მოწყობილობის გვერდი.
თქვენ შეგიძლიათ დატოვოთ ის, როგორც არის, მაგრამ მე მირჩევნია ყველაფერზე მქონდეს მომსახურება. ეს უზრუნველყოფს, რომ სკრიპტი ყოველთვის მუშაობს. სერვისის შექმნა სრულად ავტომატიზირებული სკრიპტით, რომელიც თქვენ უკვე გაქვთ cloud4rpi-raspberrypi-python დირექტორიაში:
service_install.sh cloud_dht22.py
სამსახურის დაწყება:
sudo სერვისის დაწყება cloud4rpi
და შეამოწმე:
pi@raspberrypi: ~ $ sudo service cloud4rpi status -l ● cloud4rpi.service -Cloud4RPi daemon Loaded: loaded (/lib/systemd/system/cloud4rpi.service; enabled) აქტიური: აქტიური (გაშვებული) ოთხშაბათიდან 2017-05-17 20: 22: 48 UTC; 1 წუთის წინ მთავარი PID: 560 (პითონი) CGroup: /system.slice/cloud4rpi.service └─560/usr/bin/python /home/pi/cloud_dht22.py
17 მაისი 20:22:51 ჟოლოსფერი პითონი [560]: iot-hub/შეტყობინებების გამოქვეყნება: {'type': 'config', 'ts': '2017-05-17T20… y'}]}
17 მაისი 20:22:53 ჟოლოსფერი პითონი [560]: iot-hub/შეტყობინებების გამოქვეყნება: {'type': 'data', 'ts': '2017-05-17T20: 2… 40'}} 17 მაისი 20 20: 22:53 raspberrypi python [560]: iot-hub/შეტყობინებების გამოქვეყნება: {'type': 'system', 'ts': '2017-05-17T20….4'}}
თუ ყველაფერი მუშაობს ისე, როგორც მოსალოდნელი იყო, ჩვენ შეგვიძლია გავაგრძელოთ და გამოვიყენოთ Cloud4RPi პლატფორმის შესაძლებლობები მონაცემებით მანიპულირებისთვის.
ნაბიჯი 5: დიაგრამები და სიგნალიზაცია
უპირველეს ყოვლისა, მოდით დავხატოთ ცვლადები, რომ ნახოთ როგორ შეიცვლება ისინი. ეს შეიძლება გაკეთდეს ახალი პანელის დამატებით და მასში ჩარტების შეყვანით.
კიდევ ერთი რამ, რისი გაკეთებაც ჩვენ შეგვიძლია აქ არის გაფრთხილების დაყენება. ეს ფუნქცია საშუალებას გაძლევთ დააკონფიგურიროთ ცვლადის უსაფრთხო დიაპაზონი. როგორც კი დიაპაზონი გადააჭარბებს, ის აგზავნის ელ.ფოსტის შეტყობინებას. საკონტროლო პანელის რედაქტირების გვერდზე შეგიძლიათ გადახვიდეთ შეტყობინებებზე და დააყენოთ ერთი.
ამის შემდეგ, ჩემს ოთახში ტენიანობა სწრაფად შემცირდა ყოველგვარი შესამჩნევი მიზეზის გარეშე და განგაში მალევე მოჰყვა.
თქვენ შეგიძლიათ გამოიყენოთ Cloud4RPi უფასოდ ნებისმიერი აპარატურით, რომელსაც შეუძლია Python- ის შესრულება. რაც შეეხება ჩემთვის, ახლა მე ყოველთვის ვიცი როდის ჩავრთო ჰაერის დამატენიანებელი და შემიძლია მასაც კი დავუკავშირო დისტანციური მართვის სარელეო Cloud4RPi- ს საშუალებით. ვემზადები სიცხისთვის! Კეთილი იყოს შენი მობრძანება ზაფხულო!
Cloud4RPi– ით შეგიძლიათ აკონტროლოთ თქვენი Raspberry Pi და სხვა IoT მოწყობილობები დისტანციურად რეალურ დროში. ეწვიეთ ჩვენს საიტს და შეუერთეთ შეუზღუდავი მოწყობილობები უფასოდ.
გირჩევთ:
M5STACK როგორ გამოვხატოთ ტემპერატურა, ტენიანობა და წნევა M5StickC ESP32 Visuino– ს გამოყენებით - ადვილია: 6 ნაბიჯი
M5STACK როგორ გამოვხატოთ ტემპერატურა, ტენიანობა და წნევა M5StickC ESP32– ზე Visuino– ს გამოყენებით - ადვილი გასაკეთებელი: ამ გაკვეთილში ჩვენ ვისწავლით თუ როგორ უნდა დავპროგრამოთ ESP32 M5Stack StickC Arduino IDE– ით და Visuino– ით ტემპერატურის, ტენიანობის და წნევის ჩვენების მიზნით ENV სენსორის გამოყენებით (DHT12, BMP280, BMM150)
აკონტროლეთ ტემპერატურა და ტენიანობა AM2301– ით NodeMCU– სა და ბლინკში: 3 ნაბიჯი
ტემპერატურისა და ტენიანობის მონიტორინგი AM2301– ით NodeMCU & Blynk– ზე: ეს ძალიან ცნობილი ფაქტია, რომ ინდუსტრიის უმეტეს ნაწილში ვერტიკალები, ტემპერატურა, ტენიანობა, წნევა, ჰაერის ხარისხი, წყლის ხარისხი და ა.შ. განგაშის სისტემები უნდა არსებობდეს, როდესაც ფასეულ
როგორ გავხადოთ ტენიანობა და ტემპერატურა რეალურ დროში მონაცემთა ჩამწერი Arduino UNO და SD ბარათით - DHT11 მონაცემთა მრიცხველის სიმულაცია Proteus– ში: 5 ნაბიჯი
როგორ გავხადოთ ტენიანობა და ტემპერატურა რეალურ დროში მონაცემთა ჩამწერი Arduino UNO და SD ბარათით | DHT11 მონაცემთა მრიცხველის სიმულაცია Proteus- ში: შესავალი: გამარჯობა, ეს არის Liono Maker, აქ არის YouTube ბმული. ჩვენ ვაკეთებთ შემოქმედებით პროექტს Arduino– სთან და ვმუშაობთ ჩამონტაჟებულ სისტემებზე. Data-Logger: მონაცემთა მრიცხველი (ასევე მონაცემების ჩამწერი ან მონაცემთა ჩამწერი) არის ელექტრონული მოწყობილობა, რომელიც დროთა განმავლობაში აფიქსირებს მონაცემებს
როგორ გავაგზავნოთ მონაცემები ღრუბელში Arduino Ethernet– ით: 8 ნაბიჯი
როგორ გავაგზავნოთ მონაცემები ღრუბელში Arduino Ethernet– ით: ეს ინსტრუქცია გიჩვენებთ თუ როგორ უნდა გამოაქვეყნოთ თქვენი მონაცემები AskSensors IoT პლატფორმაზე Arduino Ethernet Shield– ის გამოყენებით. Ethernet Shield თქვენს Arduino- ს საშუალებას აძლევს ადვილად დაუკავშირდეს ღრუბელს, გაგზავნოს და მიიღოს მონაცემები ინტერნეტ კავშირით. რაც ჩვენ
სათბურის ავტომატიზაცია LoRa– ით! (ნაწილი 1) -- სენსორები (ტემპერატურა, ტენიანობა, ნიადაგის ტენიანობა): 5 ნაბიჯი
სათბურის ავტომატიზაცია LoRa– ით! (ნაწილი 1) || სენსორები (ტემპერატურა, ტენიანობა, ნიადაგის ტენიანობა): ამ პროექტში მე გაჩვენებთ როგორ ავტომატიზირებულია სათბური. ეს იმას ნიშნავს, რომ მე გაჩვენებთ თუ როგორ ავაშენე სათბური და როგორ შევაერთე ელექტროენერგიის სიმძლავრე და ავტომატიზაცია. ასევე მე გაჩვენებთ თუ როგორ უნდა დაპროგრამდეს Arduino დაფა, რომელიც იყენებს L