Სარჩევი:
- ნაბიჯი 1: დახრის მონაცემების მიღება პითონში
- ნაბიჯი 2: მოწყობილობის დაკავშირება ღრუბელთან
- ნაბიჯი 3: მონაცემების გაგზავნა ღრუბელში
- ნაბიჯი 4: საბოლოო შედეგი
ვიდეო: როგორ გააკონტროლოთ ლუდის დუღილის ტემპერატურა და სიმძიმე თქვენი სმარტფონიდან: 4 ნაბიჯი (სურათებით)
2024 ავტორი: John Day | [email protected]. ბოლოს შეცვლილი: 2024-01-30 10:20
როდესაც ლუდი დუღს, ყოველდღიურად უნდა აკონტროლოთ მისი სიმძიმე და ტემპერატურა. ამის დავიწყება ადვილია და შეუძლებელია, თუ შორს ხარ.
გუგლის შემდეგ, მე ვიპოვე რამდენიმე გადაწყვეტილება გრავიტაციის ავტომატური მონიტორინგისთვის (ერთი, ორი, სამი). ერთ -ერთი მათგანი, ძალიან ჭკვიანური კონცეფციით, სახელწოდებით Tilt. Tilt მიედინება თქვენს ლუდში და ზომავს საკუთარ დახრის კუთხეს. ეს კუთხე დამოკიდებულია სითხის სიმკვრივეზე და, შესაბამისად, შეუძლია გაზომოს ლუდის სიმძიმე.
Tilt– ს გააჩნია მობილური აპლიკაცია, რომელიც აკავშირებს მას და შეუძლია მონაცემების განთავსება ნებისმიერ ვებ სერვისზე. პრობლემა ის არის, რომ თქვენ უნდა იყოთ შორს Tilt– დან, რომ შეძლოთ ამის გაკეთება. ასევე არსებობს Raspberry Pi პროგრამა, რომელიც მუშაობს Tilt– ით.
ნაბიჯი 1: დახრის მონაცემების მიღება პითონში
მე უკვე ვიყენებ Raspberry Pi– ს სარდაფის ტემპერატურის მონიტორინგისთვის და ღრუბლის მართვის პანელის სერვისს cloud4rpi.io. თუ ტილტს შეუძლია ისაუბროს Raspberry Pi– სთან, შესაძლებელი უნდა იყოს cloud4rpi– სთან დაკავშირება. Tilt იყენებს უკაბელო პროტოკოლს, ასე რომ თქვენ დაგჭირდებათ Raspberry Pi უკაბელო ჩიპით (Rasbperry Pi 3 ან Zero W).
საბედნიეროდ, არსებობს GitHub repo Tilt პროგრამისთვის რამდენიმე ნიმუშით. Https://github.com/baronbrew/tilt-scan– ის დათვალიერებისას თქვენ ხედავთ, რომ Tilt სხვებს უყურებს როგორც BLE iBeacon, „ფერი“კოდირებულია UUID– ში, ხოლო ტემპერატურა და სიმძიმე არის ძირითად და უმცირეს ბაიტებში.
მათი ნიმუშის კოდი არის Node.js– ისთვის და მე მაქვს პითონის კონტროლის პროგრამა cloud4rpi შაბლონზე დაფუძნებული
ასე რომ, მე უნდა მივიღო Tilt მონაცემები პითონში. გუგლის შემდეგ, ვიპოვე https://github.com/switchdoclabs/iBeacon-Scanner-- პითონის iBeacon სკანერი. ეს არის პროგრამა და არა ბიბლიოთეკა, ამიტომ მე შევცვალე ის, რათა სტრიქონის ნაცვლად დავიბრუნო ლექსიკონი. მე ასევე დავწერე Tilt- ის სპეციფიკური მოდული, რომ მივიღო პირველი ნაპოვნი Tilt- ის ფერი, ტემპერატურა და სიმძიმე (მე მაქვს მხოლოდ ერთი) და მარტივი სატესტო პროგრამა, რათა შევამოწმო, შეუძლია თუ არა ჩემი დახრის ნახვა:
იმპორტის დროიმპორტი იმპორტი დახრილობა
მართალია:
res = tilt.getFirstTilt () ბეჭდვა res time.sleep (2)
გაუშვით და შეამოწმეთ რომ მუშაობს. ახლა შემიძლია ჩავრთო ის ჩემს საკონტროლო პროგრამაში. მე უკვე მაქვს პითონის პროგრამა, რომელიც დაკავშირებულია cloud4rpi.io– სთან, მაგრამ ნება მომეცით ვაჩვენო როგორ გავაკეთო ეს ნულიდან.
ნაბიჯი 2: მოწყობილობის დაკავშირება ღრუბელთან
ჯერ შედით cloud4rpi.io– ში, შემდეგ შექმენით ახალი მოწყობილობა.
თქვენ მოგეცემათ მოწყობილობის ნიშანი და ინსტალაციის ინსტრუქცია. Raspberry Pi– სთვის მიჰყევით ინსტრუქციას აქ https://docs.cloud4rpi.io/start/rpi/-დარწმუნდით, რომ თქვენი სისტემა განახლებულია:
sudo apt განახლება && sudo apt განახლება
დააინსტალირეთ წინაპირობები:
sudo apt დააინსტალირეთ git python python-pip
დააინსტალირეთ cloud4rpi პითონის პაკეტები:
sudo pip დააინსტალირეთ cloud4rpi
შემდეგ მიიღეთ Raspberry Pi– ს პითონის აპლიკაციის ნიმუში (საკონტროლო საქაღალდეში):
git კლონი https://github.com/cloud4rpi/cloud4rpi-raspberryp… კონტროლი
cd კონტროლი
შეცვალეთ control.py - მიუთითეთ თქვენი მოწყობილობის ნიშანი ხაზში
DEVICE_TOKEN = '_YOUR_DEVICE_TOKEN_'
ამოიღეთ არასაჭირო ჩანაწერები მოწყობილობის ცვლადი დეკლარაციიდან, დატოვეთ მხოლოდ CPUTemp მოწყობილობის კავშირის შესამოწმებლად:
# განათავსეთ ცვლადი დეკლარაციები ცვლადი = {'CPU Temp': {'type': 'numeric', 'bind': rpi.cpu_temp}}
ახლა გააკეთე საცდელი გაშვება:
sudo python control.py
თუ ყველაფერი წესრიგშია, თქვენი მოწყობილობის გვერდი დაუყოვნებლივ განახლდება დიაგნოსტიკური მონაცემებით.
ნაბიჯი 3: მონაცემების გაგზავნა ღრუბელში
ახლა ჩვენ უნდა შევცვალოთ კონტროლი. Py Tilt– ის ფერის, ტემპერატურისა და სიმძიმის წასაკითხად და ანგარიშისთვის. შედეგი ასე გამოიყურება:
os იმპორტიდან uname დან სოკეტიდან იმპორტი gethostname იმპორტი sys იმპორტი დრო იმპორტი cloud4rpi იმპორტი rpi იმპორტი დახრილი
# განათავსეთ თქვენი მოწყობილობის ნიშანი აქ. ნიშნის მისაღებად, # დარეგისტრირდით https://cloud4rpi.io და შექმენით მოწყობილობა. DEVICE_TOKEN = '_YOUR_DEVICE_TOKEN_'
# მუდმივები
DATA_SENDING_INTERVAL = 60 # წმ DIAG_SENDING_INTERVAL = 600 # წმ POLL_INTERVAL = 0.5 # 500 ms
შუქურა = {}
def F2C (გრადუსი F):
დაბრუნება (გრადუსი F - 32) / 1.8
def getTemp ():
დაბრუნება F2C (int (შუქურა ['Temp']))) თუ შუქურა სხვა არცერთი
def getGravity ():
დაბრუნების შუქურა ['გრავიტაცია'] თუ სხვა შუქურა არ არის
def main ():
# განათავსეთ ცვლადი დეკლარაციები აქ
ცვლადები = {'გრავიტაცია': {'ტიპი': 'რიცხვითი', 'bind': getGravity}, 'ლუდის ტემპერატურა': {'type': 'numeric', 'bind': getTemp}}
დიაგნოსტიკა = {
"CPU Temp": rpi.cpu_temp, "IP მისამართი": rpi.ip_address, "მასპინძელი": gethostname (), "ოპერაციული სისტემა": "". შეერთება (უსახელო ())}
მოწყობილობა = cloud4rpi.connect (DEVICE_TOKEN)
device.declare (ცვლადები) device.declare_diag (დიაგნოსტიკა)
device.publish_config ()
# დასძენს 1 წამიანი შეფერხება მოწყობილობის ცვლადების შექმნის უზრუნველსაყოფად
დრო. ძილი (1)
სცადე:
data_timer = 0 diag_timer = 0 ხოლო True: თუ data_timer <= 0: global beacon beacon = tilt.getFirstTilt () device.publish_data () data_timer = DATA_SENDING_INTERVAL
თუ diag_timer <= 0: device.publish_diag () diag_timer = DIAG_SENDING_INTERVAL
დრო. ძილი (POLL_INTERVAL)
diag_timer -= POLL_INTERVAL data_timer -= POLL_INTERVAL
გარდა კლავიატურის უწყვეტი:
cloud4rpi.log.info ("კლავიატურის შეფერხება მიღებულია. გაჩერება …")
გამონაკლისის გარდა e:
error = cloud4rpi.get_error_message (e) cloud4rpi.log.error ("ERROR! %s %s", error, sys.exc_info () [0])
საბოლოოდ:
sys.exit (0)
თუ _name_ == '_ მთავარი_':
მთავარი ()
ახლა გაუშვით ხელით, რომ ნახოთ მუშაობს თუ არა:
sudo python control.py
თუ ყველაფერი კარგადაა, თქვენ იხილავთ თქვენს ცვლადებს ინტერნეტში.
სისტემის გაშვებისას control.py სისტემის გაშვებისას დააინსტალირეთ როგორც სერვისი. Cloud4rpi გთავაზობთ ინსტალაციის სკრიპტს service_install.sh ამისათვის. მე ჩავრთე ის ჩემს რეპოში. Control.py- ს, როგორც სერვისის დასაყენებლად, გაუშვით
sudo bash service_install.sh control.py
ახლა თქვენ შეგიძლიათ დაიწყოთ | stop | გადატვირთეთ ეს სერვისი ბრძანების გაშვებით
sudo systemctl დაწყება cloud4rpi.service
სერვისი ინარჩუნებს თავის წინა მდგომარეობას ენერგიაზე, ასე რომ, თუ ის მუშაობდა, ის იმუშავებს გადატვირთვის ან ენერგიის დაკარგვის შემდეგ.
ნაბიჯი 4: საბოლოო შედეგი
ეს არის ის, ახლა მე მაქვს ჩემი Tilt პარამეტრები, რომლებიც იგზავნება ღრუბელში, ასე რომ შემიძლია დავაყენო ლამაზი ღრუბლოვანი პანელი. გადადით https://cloud4rpi.io/control-panels და შექმენით ახალი მართვის პანელი, დაამატეთ ვიჯეტი და შეარჩიეთ/Gravity და ლუდის ტემპერატურა, როგორც მონაცემთა წყარო. ახლა შემიძლია დავაკვირდე რა ხდება მაშინაც კი, თუ სახლიდან შორს ვარ.
კოდი, რომელიც მე გადავიწერე და დავწერე, აქ არის: https://github.com/superroma/tilt-cloud4rpi. ის შორს არის სრულყოფილებისაგან, ის მუშაობს მხოლოდ ერთი დახრით, მას არ აინტერესებს მოწყობილობის "ფერი", რაც არ უნდა იყოს ის და მე საერთოდ არ ვარ პითონის ბიჭი, ამიტომ მისასალმებელია შესწორებები, წინადადებები ან ჩანგლები !
გირჩევთ:
ლუდის გამხსნელი და პურერი: 7 ნაბიჯი (სურათებით)
ლუდის გამხსნელი და პურერი: ამ პროექტისთვის მოთხოვნა იყო გამოგონების ან უკვე გამოგონილი სისტემის შემუშავება, მაგრამ რომელიც საჭიროებდა გარკვეულ გაუმჯობესებას. როგორც ზოგიერთმა შეიძლება იცოდეს, ბელგია ძალიან პოპულარულია თავისი ლუდით. ამ პროექტში, გამოგონება, რომელიც საჭიროებდა გარკვეულ
როგორ დააკავშიროთ და გააკონტროლოთ ლამპა ZigBee მოდულის საშუალებით Dragonboard– ზე: 5 ნაბიჯი
როგორ დააკავშიროთ და გააკონტროლოთ ლამპა ZigBee მოდულის საშუალებით Dragonboard– ზე: ეს ინსტრუქცია ასწავლის მომხმარებელს როგორ დააკავშიროს და სწორად დააინსტალიროს ZigBee მოდული Dragonboard– ზე და დაუკავშირდეს მას ZigBee კონტროლირებად ნათურას (OSRAM), რაც ZigBee IOT ქსელს ქმნის. : Dragonboard 410c; CC2531 USB დონგლი; ტ
როგორ გააკეთოთ თქვენი საკუთარი WIFI კარიბჭე თქვენი Arduino– ს IP ქსელთან დასაკავშირებლად?: 11 ნაბიჯი (სურათებით)
როგორ გააკეთოთ თქვენი საკუთარი WIFI კარიბჭე თქვენი Arduino– ს IP ქსელთან დასაკავშირებლად?: როგორც ბევრი ადამიანი ფიქრობთ, რომ Arduino არის ძალიან კარგი გამოსავალი სახლის ავტომატიზაციისა და რობოტის გასაკეთებლად! მაგრამ კომუნიკაციის თვალსაზრისით Arduinos მხოლოდ სერიული ბმულებით მოდის. მე ვმუშაობ რობოტზე, რომელიც მუდმივად უნდა იყოს დაკავშირებული სერვერთან, რომელიც მუშაობს
GPS ველოსიპედის ან მანქანის თვალყურის დევნება სმარტფონიდან: 9 ნაბიჯი
GPS ველოსიპედი ან მანქანის თვალყური SMARTPHONE– დან: გამარჯობა, კეთილი იყოს თქვენი მობრძანება კრეატიულ Buzz– ში. აქ მე გაჩვენებთ როგორ თვალყურს ადევნებთ თქვენს ველოსიპედს ან მანქანას. თქვენ შეგიძლიათ თვალყური ადევნოთ ველოსიპედის ადგილმდებარეობას ამ ტექნიკის გამოყენებით
აკონტროლეთ საყოფაცხოვრებო ტექნიკა თქვენი სმარტფონიდან ბლინკის აპლიკაციით და ჟოლოს პი: 5 ნაბიჯი (სურათებით)
აკონტროლეთ საყოფაცხოვრებო ტექნიკა თქვენი სმარტფონიდან Blynk აპლიკაციით და Raspberry Pi: ამ პროექტში ჩვენ ვაპირებთ ვისწავლოთ როგორ გამოვიყენოთ Blynk აპლიკაცია და Raspberry Pi 3 საყოფაცხოვრებო ტექნიკის გასაკონტროლებლად (ყავის მადუღარა, ნათურა, ფანჯრის ფარდა და სხვა … ) .მოწყობილობის კომპონენტები: Raspberry Pi 3 Relay Lamp Breadboard Wires პროგრამული უზრუნველყოფის პროგრამები: Blynk A