Բովանդակություն:

Ինչպես վերահսկել գարեջրի խմորման ջերմաստիճանը և ծանրությունը ձեր սմարթֆոնից. 4 քայլ (նկարներով)
Ինչպես վերահսկել գարեջրի խմորման ջերմաստիճանը և ծանրությունը ձեր սմարթֆոնից. 4 քայլ (նկարներով)

Video: Ինչպես վերահսկել գարեջրի խմորման ջերմաստիճանը և ծանրությունը ձեր սմարթֆոնից. 4 քայլ (նկարներով)

Video: Ինչպես վերահսկել գարեջրի խմորման ջերմաստիճանը և ծանրությունը ձեր սմարթֆոնից. 4 քայլ (նկարներով)
Video: Շերտավոր խմոր. եռման ջրով/գրքի պես բացվող. միշտ շքեղ արդյունքներ 2024, Նոյեմբեր
Anonim
Ինչպես վերահսկել գարեջրի խմորման ջերմաստիճանը և գրավիտացիան ձեր սմարթֆոնից
Ինչպես վերահսկել գարեջրի խմորման ջերմաստիճանը և գրավիտացիան ձեր սմարթֆոնից

Երբ գարեջուրը խմորում է, դուք պետք է ամեն օր վերահսկեք դրա ծանրությունն ու ջերմաստիճանը: Հեշտ է մոռանալ դա անելը, և անհնար է, եթե դու հեռու ես:

Որոշակի googling- ից հետո ես գտա մի քանի լուծում ինքնահոս ձգողության մոնիտորինգի համար (մեկ, երկու, երեք): Նրանցից մեկը, շատ խելացի հայեցակարգով, կոչվում է Tilt: Թեքությունը լողում է ձեր գարեջրի մեջ և չափում է իր թեքության անկյունը: Այս անկյունը կախված է հեղուկի խտությունից և, հետևաբար, կարող է չափել խմորվող գարեջրի ծանրությունը:

Tilt- ն ունի բջջային հավելված, որը միանում է դրան և կարող է տվյալներ տեղադրել ցանկացած վեբ ծառայության համար: Խնդիրն այն է, որ դուք պետք է Tilt- ից ոչ հեռու լինեք, որպեսզի կարողանաք դա անել: Կա նաև Raspberry Pi ծրագիր, որն աշխատում է Tilt- ի հետ:

Քայլ 1. Թեք տվյալների ստացում Python- ում

Թեք տվյալների ստացում Python- ում
Թեք տվյալների ստացում Python- ում

Ես արդեն օգտագործում եմ Raspberry Pi- ն նկուղի ջերմաստիճանը վերահսկելու և ամպային կառավարման վահանակի ծառայություն cloud4rpi.io: Եթե Tilt- ը կարող է խոսել Raspberry Pi- ի հետ, ապա պետք է հնարավոր լինի միացնել cloud4rpi- ն դրան: Tilt- ը օգտագործում է անլար արձանագրություն, այնպես որ ձեզ հարկավոր կլինի Raspberry Pi անլար չիպով (Rasbperry Pi 3 կամ Zero W):

Բարեբախտաբար, կա GitHub ռեպո Tilt ծրագրակազմի համար `որոշ նմուշներով: Նայելով https://github.com/baronbrew/tilt-scan- ին ՝ կարող եք տեսնել, որ Tilt- ը մյուսներին նայում է որպես BLE iBeacon, «Գույն» կոդավորված UUID- ում, իսկ ջերմաստիճանը և ծանրությունը մեծ և փոքր բայթերում են:

Նրանց նմուշի կոդը նախատեսված է Node.js- ի համար, և ես ունեմ Python- ի վերահսկման ծրագիր ՝ հիմնված cloud4rpi ձևանմուշի վրա

Այսպիսով, ես պետք է Python- ում Tilt- ի տվյալներ ստանամ: Գուգլինգից հետո ես գտա https://github.com/switchdoclabs/iBeacon-Scanner-- Python iBeacon սկաներ: Սա ծրագիր է, այլ ոչ թե գրադարան, ուստի այն փոփոխեցի ՝ տողի փոխարեն բառարան վերադարձնելու համար: Եվ ես նաև գրել եմ Tilt- ի համար հատուկ մոդուլ `առաջին հայտնաբերված Tilt- ի գույնը, ջերմաստիճանը և ծանրությունը ստանալու համար (ես ունեմ միայն մեկը) և պարզ թեստային ծրագիր` ստուգելու, արդյոք այն կարող է տեսնել իմ Tilt- ը.

ներմուծել ժամանակ ներմուծել թեքություն

իսկ ճշմարիտ:

res = tilt.getFirstTilt () տպել res time.sleep (2)

Գործարկեք և ստուգեք, որ այն աշխատում է: Այժմ ես կարող եմ այն միացնել իմ կառավարման ծրագրին: Ես արդեն ունեմ python ծրագիր, որը կապված է cloud4rpi.io- ի հետ, բայց թույլ տվեք ցույց տալ, թե ինչպես դա անել զրոյից:

Քայլ 2: Սարքը ամպին միացնելը

Սարքը միացնելով ամպին
Սարքը միացնելով ամպին
Սարքը միացնելով ամպին
Սարքը միացնելով ամպին

Նախ մուտք գործեք cloud4rpi.io, այնուհետև ստեղծեք նոր սարք:

Ձեզ կտրվի սարքի նշան և տեղադրման հրահանգներ: Raspberry Pi- ի համար հետևեք հրահանգներին այստեղ ՝ https://docs.cloud4rpi.io/start/rpi/-համոզվեք, որ ձեր համակարգը արդիական է.

sudo apt update && sudo apt upgrade

Տեղադրեք նախադրյալներ.

sudo apt տեղադրեք git python python-pip

Տեղադրեք cloud4rpi python փաթեթներ.

sudo pip- ը տեղադրել cloud4rpi

ապա ստացեք Raspberry Pi- ի համար նախատեսված Python հավելվածի օրինակ (կառավարման պանակում).

git clone https://github.com/cloud4rpi/cloud4rpi-raspberryp… հսկողություն

cd հսկողություն

modify control.py - նշեք ձեր սարքի նշանը տողում

DEVICE_TOKEN = '_YOUR_DEVICE_TOKEN_'

Հեռացրեք սարքի փոփոխական հայտարարություններից ավելորդ գրառումները, սարքի կապը ստուգելու համար թողեք միայն CPUTemp- ը.

# Տեղադրեք փոփոխականների հայտարարագրերն այստեղ փոփոխականներ = {'CPU Temp': {'type': 'numeric', 'bind': rpi.cpu_temp}}

Այժմ կատարեք փորձնական վազք.

sudo python control.py

Եթե ամեն ինչ կարգին է, ձեր սարքի էջը անմիջապես կթարմացվի ախտորոշիչ տվյալներով:

Քայլ 3: Տվյալների ուղարկում ամպին

Տվյալների ուղարկում ամպին
Տվյալների ուղարկում ամպին

Այժմ մենք պետք է փոփոխենք control.py ՝ Tilt- ի գույնը, ջերմաստիճանը և ծանրությունը կարդալու և հաղորդելու համար: Արդյունքն այսպիսին է.

os ներմուծումից unamefrom վարդակից ներմուծում 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 մվ

փարոս = {}

def F2C (աստիճաններ F):

վերադարձ (աստիճաններ F - 32) / 1.8

def getTemp ():

վերադարձնել F2C (int (beacon ['Temp']))), եթե փարոս այլ ոչ

def getGravity ():

return beacon ['Gravity'] if beacon else Ոչ մեկը

def main ():

# Տեղադրեք այստեղ փոփոխական հայտարարագրեր

variables = {'Gravity': {'type': 'numeric', 'bind': getGravity}, 'Beer Temp': {'type': 'numeric', 'bind': getTemp}}

ախտորոշում = {

'CPU Temp': rpi.cpu_temp, 'IP Address': rpi.ip_address, 'Host': gethostname (), 'Operating System': "".. Join (uname ())}

սարք = cloud4rpi.connect (DEVICE_TOKEN)

device.declare (փոփոխականներ) device.declare_diag (ախտորոշում)

device.publish_config ()

# Ավելացնում է 1 վայրկյան ուշացում ՝ սարքի փոփոխականների ստեղծումն ապահովելու համար

ժամանակ. քուն (1)

փորձել:

data_timer = 0 diag_timer = 0 իսկ ճշմարիտ. եթե 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

time.sleep (POLL_INTERVAL)

diag_timer -= POLL_INTERVAL data_timer -= POLL_INTERVAL

բացառությամբ Ստեղնաշարի

cloud4rpi.log.info ('Ստեղնաշարի ընդհատումը ստացվել է: Դադարեցվում է …')

բացառությամբ որպես e:

սխալ = cloud4rpi.get_error_message (ե) cloud4rpi.log.error ("ՍԽԱԼ! %s %s", սխալ, 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

Serviceառայությունը պահպանում է իր նախկին վիճակը միացված վիճակում, այնպես որ, եթե այն աշխատում էր, այն կաշխատի վերագործարկումից կամ էներգիայի կորուստից հետո:

Քայլ 4: Վերջնական արդյունք

Վերջնական արդյունք
Վերջնական արդյունք

Սա այն է, հիմա ես ունեմ իմ Tilt պարամետրերը, որոնք ուղարկվում են ամպ, այնպես որ կարող եմ դրա համար ստեղծել գեղեցիկ ամպային կառավարման վահանակ: Գնացեք https://cloud4rpi.io/control-panels և ստեղծեք նոր կառավարման վահանակ, ավելացրեք widget և ընտրեք/Gravity and Beer Temp որպես տվյալների աղբյուր: Այժմ ես կարող եմ վերահսկել, թե ինչ է կատարվում, նույնիսկ եթե տնից բացակայեմ:

Իմ պատճենած և գրած կոդը հասանելի է այստեղ ՝ https://github.com/superroma/tilt-cloud4rpi: Այն հեռու է կատարյալ լինելուց, այն աշխատում է միայն մեկ թեքությամբ, նրան չի հետաքրքրում սարքի «Գույնը», ինչ էլ որ այն նշանակի, և ես ընդհանրապես Python- ի տղա չեմ, այնպես որ շտկումները, առաջարկները կամ պատառաքաղները ողջունելի են: !

Խորհուրդ ենք տալիս: