Përmbajtje:
- Hapi 1: Marrja e të dhënave të pjerrëta në Python
- Hapi 2: Lidhja e pajisjes me renë
- Hapi 3: Dërgimi i të dhënave në re
- Hapi 4: Rezultati Përfundimtar
Video: Si të kontrolloni temperaturën dhe gravitetin e fermentimit të birrës nga smartphone juaj: 4 hapa (me fotografi)
2024 Autor: John Day | [email protected]. E modifikuara e fundit: 2024-01-30 12:28
Kur birra po fermentohet, ju duhet të monitoroni gravitetin dhe temperaturën e saj çdo ditë. Easyshtë e lehtë të harrosh ta bësh këtë, dhe e pamundur nëse je larg.
Pas një kërkimi në googling, gjeta disa zgjidhje për monitorimin e automatizuar të gravitetit (një, dy, tre). Njëri prej tyre, me koncept shumë të zgjuar, i quajtur Tilt. Tilt po noton në birrën tuaj dhe po mat këndin e vet të pjerrësisë. Ky kënd varet nga dendësia e lëngut, dhe për këtë arsye mund të masë gravitetin e birrës që fermenton.
Tilt vjen me një aplikacion celular, që lidhet me të dhe mund të postojë të dhëna në çdo shërbim në internet. Problemi është se ju duhet të jeni jo shumë larg nga Tilt për të qenë në gjendje ta bëni këtë. Ekziston edhe një program Raspberry Pi që punon me Tilt.
Hapi 1: Marrja e të dhënave të pjerrëta në Python
Unë tashmë jam duke përdorur Raspberry Pi për të monitoruar temperaturën e bodrumit dhe një shërbim të panelit të kontrollit cloud cloud4rpi.io. Nëse Tilt mund të flasë me Raspberry Pi, duhet të jetë e mundur të lidhni cloud4rpi me të. Tilt po përdor një protokoll pa tel, kështu që do t'ju duhet Raspberry Pi me një çip pa tel (Rasbperry Pi 3 ose Zero W).
Për fat të mirë, ekziston një repo GitHub për programin Tilt me disa mostra. Duke parë https://github.com/baronbrew/tilt-scan mund të shihni që Tilt u duket të tjerëve si BLE iBeacon, me "Color" të koduar në UUID, dhe temperatura dhe graviteti janë në byte të mëdha dhe të vogla.
Kodi i tyre i mostrës është për Node.js, dhe unë kam një program kontrolli Python të bazuar në modelin cloud4rpi
Kështu që më duhet të marr të dhëna Tilt në Python. Pas disa kërkimeve në Google, gjeta https://github.com/switchdoclabs/iBeacon-Scanner-- skaner Python iBeacon. Ky është një program, jo një bibliotekë, kështu që e modifikova për të kthyer një fjalor në vend të vargut. Dhe unë gjithashtu shkrova modul specifik për Tilt për të marrë ngjyrën, temperaturën dhe gravitetin e Tilt-it të parë të gjetur (kam vetëm një), dhe një program të thjeshtë testimi për të kontrolluar nëse mund të shohë Pjerrësinë time:
importim prirje kohore importuese
ndërsa e vërtetë:
res = tilt.getFirstTilt () printo res res.sleep (2)
Drejtoni dhe kontrolloni që funksionon. Tani mund ta lidh me programin tim të kontrollit. Unë tashmë kam një program python të lidhur me cloud4rpi.io, por më lejoni të tregoj se si ta bëj këtë nga e para.
Hapi 2: Lidhja e pajisjes me renë
Së pari, regjistrohuni në cloud4rpi.io, pastaj krijoni një pajisje të re.
Do t'ju jepet një shenjë e pajisjes dhe udhëzimet e instalimit. Për Raspberry Pi ndiqni udhëzimet këtu https://docs.cloud4rpi.io/start/rpi/-sigurohuni që sistemi juaj të jetë i përditësuar:
sudo apt update && sudo apt upgrade
Instaloni parakushtet:
sudo apt instaloni git python python-pip
Instaloni paketat cloud4rpi python:
sudo pip instaloni cloud4rpi
pastaj merrni një aplikacion mostër python për Raspberry Pi (në dosjen e kontrollit):
git clone https://github.com/cloud4rpi/cloud4rpi-raspberryp… kontroll
cd kontroll
modifikoni control.py - specifikoni shenjën e pajisjes tuaj në linjë
DEVICE_TOKEN = '_YOUR_DEVICE_TOKEN_'
Hiqni shënimet e panevojshme nga deklaratat e ndryshueshme të pajisjes, lini vetëm CPUTemp për të testuar lidhjen e pajisjes:
# Vendosni deklaratat e ndryshoreve këtu variablat = {'Temp CPU': {'type': 'numeric', 'bind': rpi.cpu_temp}}
Tani bëni një provë:
sudo python control.py
Nëse gjithçka është në rregull, faqja e pajisjes tuaj do të azhurnohet menjëherë me të dhëna diagnostikuese.
Hapi 3: Dërgimi i të dhënave në re
Tani duhet të modifikojmë control.py për të lexuar dhe raportuar ngjyrën, temperaturën dhe gravitetin e Tilt. Rezultati duket kështu:
nga os import unamefrom socket import gethostname import sys import import kohë import cloud4rpi import rpi import tilt
# Vendosni shenjën e pajisjes tuaj këtu. Për të marrë shenjën, # regjistrohuni në https://cloud4rpi.io dhe krijoni një pajisje. DEVICE_TOKEN = '_YOUR_DEVICE_TOKEN_'
# Konstantet
DATA_SENDING_INTERVAL = 60 # sekonda DIAG_SENDING_INTERVAL = 600 # sekonda POLL_INTERVAL = 0.5 # 500 ms
fener = {}
def F2C (gradë F):
kthimi (gradëF - 32) / 1.8
def getTemp ():
ktheje F2C (int (fener ['Temp']))) nëse fener tjetër Asnjë
def getGravity ():
fener kthimi ['Graviteti'] nëse fener tjetër Asnjë
def kryesore ():
# Vendosni deklarata të ndryshueshme këtu
variablat = {'Graviteti': {'type': 'numerike', 'bind': getGravity}, 'Birra Temp': {'type': 'numerike', 'bind': getTemp}}
diagnostifikim = {
'Temp CPU': rpi.cpu_temp, 'Adresa IP': rpi.ip_address, 'Host': gethostname (), 'Operating System': "". Bashkohuni (uname ())}
pajisje = cloud4rpi.connect (DEVICE_TOKEN)
pajisje.deklaro (variablat) pajisje.declare_diag (diagnostifikim)
device.publish_config ()
# Shton një vonesë 1 sekondë për të siguruar krijimin e variablave të pajisjes
koha. gjumi (1)
provo:
data_timer = 0 diag_timer = 0 ndërsa True: nëse data_timer <= 0: global beacon beacon = tilt.getFirstTilt () device.publish_data () data_timer = DATA_SENDING_INTERVAL
nëse diag_timer <= 0: device.publish_diag () diag_timer = DIAG_SENDING_INTERVAL
koha. gjumi (POLL_INTERVAL)
diag_timer -= POLL_INTERVAL kohëzgjatja e të dhënave -= POLL_INTERVAL
përveç KeyboardIntruptrupt:
cloud4rpi.log.info ('Ndërprerja e tastierës u mor. Po ndalet …')
përveç Përjashtimit si e:
gabim = cloud4rpi.get_error_message (e) cloud4rpi.log.error ("ERROR! %s %s", gabim, sys.exc_info () [0])
me ne fund:
sys.exit (0)
nëse _name_ == '_majt_':
kryesore ()
Tani drejtojeni manualisht për të parë nëse funksionon:
sudo python control.py
Nëse gjithçka është mirë, do t'i shihni variablat tuaja në internet.
Për të ekzekutuar control.py në fillimin e sistemit, instalojeni atë si shërbim. Cloud4rpi siguron një script script install_install.sh për ta bërë këtë. E kam përfshirë në repon time. Për të instaluar control.py si shërbim, ekzekutoni
sudo bash service_install.sh control.py
Tani mund të filloni | ndaloni | rinisni këtë shërbim duke ekzekutuar komandën
sudo systemctl start cloud4rpi.service
Shërbimi mban gjendjen e tij të mëparshme të ndezur, kështu që nëse ishte duke funksionuar, do të funksionojë pas rindezjes ose humbjes së energjisë.
Hapi 4: Rezultati Përfundimtar
Kjo është ajo, tani kam parametrat e mi të Tilt që dërgohen në re, kështu që unë mund të krijoj një panel të mirë kontrolli cloud për të. Shkoni te https://cloud4rpi.io/control-panels dhe krijoni panel të ri kontrolli, shtoni widget dhe zgjidhni/Gravity and Beer Temp si burim të dhënash. Tani mund të monitoroj se çfarë po ndodh edhe nëse jam larg shtëpisë.
Kodi që kam kopjuar dhe shkruar është i disponueshëm këtu: https://github.com/superroma/tilt-cloud4rpi. Farshtë larg nga e përsosura, funksionon vetëm me një Tilt të vetëm, nuk i intereson "Ngjyra" e pajisjes, çfarëdo që të thotë, dhe unë nuk jam aspak një djalë Python, kështu që rregullimet, sugjerimet ose pirunët janë të mirëseardhura !
Recommended:
Android Home (kontrolloni shtëpinë tuaj nga telefoni juaj): 4 hapa
Android Home (kontrolloni shtëpinë tuaj nga telefoni juaj): Plani im përfundimtar është të kem shtëpinë time në xhep, çelsat, sensorët dhe sigurinë e saj. dhe pastaj bashkojeni automatikisht Hyrje: Përshëndetje Ich bin zakriya dhe kjo " Android shtëpi " është projekti im, ky projekt është i pari nga katër udhëzime të ardhshme, në
Monitoroni dhe regjistroni temperaturën me Bluetooth LE dhe RaspberryPi: 9 hapa (me fotografi)
Monitoroni dhe Regjistroni Temperaturën Me Bluetooth LE dhe RaspberryPi: Ky udhëzues ka të bëjë me mënyrën e krijimit të një sistemi monitorimi të temperaturës me shumë nyje me defektin e sensorit Bluetooth LE nga Blue Radios (BLEHome) dhe RaspberryPi 3B Falë zhvillimit të standardit Bluetooth LE, ekziston tani në dispozicion
Kontrolloni temperaturën në shtëpi me PID dhe Labview: 4 hapa
Kontrolloni Temperaturën Shtëpi Me PID dhe Labview: PID merupakan suatu sistem pengontrolan yang biasa digunakan pada dunia indusri yang telah bukti keandalannya disini kita akan mengimplementasikan kontrolloer PID pada pengatur suhu ruangan menggunakan labview
Kontrolloni LED nga Rrjeti juaj WiFi! SPEEEduino V1.1: 4 hapa (me fotografi)
Kontrolloni LED nga Rrjeti juaj WiFi! SPEEEduino V1.1: Çfarë është SPEEEduino? SPEEEduino është një bord mikrokontrollues i aktivizuar me Wi-Fi i bazuar në ekosistemin Arduino, i ndërtuar për edukatorët. SPEEEduino kombinon faktorin e formës dhe mikrokontrolluesin e Arduino me ESP8266 Wi-Fi SoC, duke bërë
Kontrolloni pajisjet shtëpiake nga telefoni juaj i mençur me aplikacionin Blynk dhe Raspberry Pi: 5 hapa (me fotografi)
Kontrolloni pajisjet shtëpiake nga telefoni juaj i mençur me aplikacionin Blynk dhe Raspberry Pi: Në këtë projekt, ne do të mësojmë se si të përdorim aplikacionin Blynk dhe Raspberry Pi 3 në mënyrë që të kontrollojmë pajisjet shtëpiake (krijues kafeje, llambë, perde dritareje dhe më shumë … ). Komponentët e harduerit: Raspberry Pi 3 Relay Lamp Breadboard Wires Aplikacionet e softuerit: Blynk A