Агуулгын хүснэгт:

Ухаалаг гар утаснаасаа шар айраг исгэх температур, хүндийн хүчийг хэрхэн хянах вэ: 4 алхам (зурагтай)
Ухаалаг гар утаснаасаа шар айраг исгэх температур, хүндийн хүчийг хэрхэн хянах вэ: 4 алхам (зурагтай)

Видео: Ухаалаг гар утаснаасаа шар айраг исгэх температур, хүндийн хүчийг хэрхэн хянах вэ: 4 алхам (зурагтай)

Видео: Ухаалаг гар утаснаасаа шар айраг исгэх температур, хүндийн хүчийг хэрхэн хянах вэ: 4 алхам (зурагтай)
Видео: 양조장 전세캠 I 다시 만난 한국 전통주 소녀 I 정샤크 술 출시할까요 I 경북 상주 캠핑 2024, Долдугаар сарын
Anonim
Ухаалаг гар утаснаасаа шар айраг исгэх температур, хүндийн хүчийг хэрхэн хянах вэ
Ухаалаг гар утаснаасаа шар айраг исгэх температур, хүндийн хүчийг хэрхэн хянах вэ

Шар айраг исгэж байх үед та түүний таталцал, температурыг өдөр бүр хянах хэрэгтэй. Үүнийг хийхээ мартах нь амархан бөгөөд хэрэв та хол байгаа бол боломжгүй юм.

Бага зэрэг googling хийсний дараа би таталцлын автоматжуулалтыг хянах хэд хэдэн шийдлийг олсон (нэг, хоёр, гурав). Тэдний нэг нь маш ухаалаг ойлголттой бөгөөд Tilt гэж нэрлэдэг. Налуу нь таны шар айраг дотор хөвж байгаа бөгөөд өөрийн хазайлтын өнцгийг хэмжиж байна. Энэ өнцөг нь шингэний нягтралаас хамаардаг тул шар айрагны хүндийн хэмжээг хэмжиж чаддаг.

Tilt нь мобайл аппликейшнтэй ирдэг бөгөөд түүнтэй холбогддог бөгөөд ямар ч вэб үйлчилгээнд өгөгдөл оруулах боломжтой. Асуудал нь үүнийг хийхийн тулд та Tilt -ээс холгүй байх хэрэгтэй. Tilt -тэй ажилладаг Raspberry Pi програм бас байдаг.

Алхам 1: Python дээр хазайлтын өгөгдлийг авах

Python дээр хазайлтын өгөгдлийг авах
Python дээр хазайлтын өгөгдлийг авах

Би зоорины температурыг хянах Raspberry Pi болон cloud4rpi.io үүлний хяналтын самбарыг ашиглаж байна. Хэрэв Tilt Raspberry Pi -тэй ярьж чаддаг бол cloud4rpi -ийг түүнтэй холбох боломжтой байх ёстой. Tilt нь утасгүй протокол ашиглаж байгаа тул танд утасгүй чиптэй Raspberry Pi хэрэгтэй болно (Rasbperry Pi 3 эсвэл Zero W).

Аз болоход, зарим дээж бүхий Tilt програм хангамжийн GitHub репо байдаг. Https://github.com/baronbrew/tilt-scan дээрээс харахад Tilt нь бусдад BLE iBeacon шиг харагддаг бөгөөд UUID-д "Өнгө" кодтой, температур ба хүндийн хүч нь том ба жижиг байтаар харагддаг.

Тэдний жишээ код нь Node.js-д зориулагдсан бөгөөд би cloud4rpi загварт суурилсан Python хяналтын програмтай

Тиймээс би Tilt өгөгдлийг Python дээр авах хэрэгтэй. Зарим googling хийсний дараа би https://github.com/switchdoclabs/iBeacon-Scanner-- Python iBeacon сканнер оллоо. Энэ бол номын сан биш програм учраас би үүнийг мөрийн оронд толь бичиг буцааж өгөхөөр өөрчилсөн. Мөн би анхны хазайлтын өнгө, температур, хүндийн хүчийг олж авахын тулд Tilt-ийн тусгай модулийг бичсэн (надад зөвхөн нэг л байна), мөн миний хазайлтыг харж чадах эсэхийг шалгах энгийн тестийн програмыг бичсэн болно.

импортлох цагийг импортлох

үнэн байхад:

res = tilt.getFirstTilt () хэвлэх res time.sleep (2)

Ажиллуулж, ажиллаж байгаа эсэхийг шалгаарай. Одоо би үүнийг хяналтын програмдаа холбож болно. Надад cloud4rpi.io -той холбогдсон питон програм байгаа боловч үүнийг хэрхэн эхнээс нь хийхийг харуулъя.

Алхам 2: Төхөөрөмжийг үүл рүү холбох

Төхөөрөмжийг үүл рүү холбох
Төхөөрөмжийг үүл рүү холбох
Төхөөрөмжийг үүл рүү холбох
Төхөөрөмжийг үүл рүү холбох

Эхлээд cloud4rpi.io руу нэвтэрч, дараа нь шинэ төхөөрөмж үүсгээрэй.

Танд төхөөрөмжийн жетон болон суулгах зааврыг өгөх болно. Raspberry Pi-ийн хувьд энд байгаа зааврыг дагана уу https://docs.cloud4rpi.io/start/rpi/-таны систем шинэчлэгдсэн эсэхийг шалгаарай.

sudo apt update && sudo apt upgrade

Урьдчилсан нөхцлийг суулгах:

sudo apt install 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: Өгөгдлийг үүл рүү илгээх

Үүл рүү өгөгдөл илгээх
Үүл рүү өгөгдөл илгээх

Одоо бид Tilt -ийн өнгө, температур, таталцлыг уншиж, мэдээлэхийн тулд control.py програмыг өөрчлөх хэрэгтэй. Үр дүн нь иймэрхүү харагдаж байна:

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 ms

гэрэлт цамхаг = {}

def F2C (градус F):

буцах (градус F - 32) / 1.8

def getTemp ():

буцах F2C (int (гэрэлт цамхаг ['Темп']))) хэрэв өөр дохио байвал Үгүй

def getGravity ():

буцах гэрэлт цамхаг ['Таталцлын хүч'] хэрэв өөр дохио бол Байхгүй

def main ():

# Хувьсагчийн мэдэгдлийг энд оруулна уу

хувьсагчид = {'Хүндийн хүчний': {'төрөл': 'тоон', 'холбох': getGravity}, 'Шар айрагны температур': {'төрөл': 'тоон', 'холбох': getTemp}}

оношлогоо = {

'CPU Temp': rpi.cpu_temp, 'IP хаяг': rpi.ip_address, 'Host': gethostname (), 'Үйлдлийн систем': "".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

цаг унтах (POLL_INTERVAL)

diag_timer -= POLL_INTERVAL өгөгдлийн_зам -= POLL_INTERVAL

Keyboard тасалдалаас бусад:

cloud4rpi.log.info ('Гарын тасалдал хүлээн авлаа. Зогсоож байна …')

e -ээс бусад онцгой тохиолдлыг эс тооцвол:

алдаа = cloud4rpi.get_error_message (e) cloud4rpi.log.error ("ERROR! %s %s", алдаа, sys.exc_info () [0])

эцэст нь:

sys.exit (0)

хэрэв _name_ == '_main_':

үндсэн ()

Одоо ажиллаж байгаа эсэхийг харахын тулд гараар ажиллуулна уу.

sudo python control.py

Хэрэв бүх зүйл сайн байвал та хувьсагчаа онлайнаар харах болно.

Системийг эхлүүлэх үед control.py програмыг ажиллуулахын тулд үүнийг үйлчилгээ болгон суулгаарай. Cloud4rpi нь үүнийг хийхийн тулд service_install.sh скриптийг өгдөг. Би үүнийг репо номондоо оруулсан. Control.py -ийг үйлчилгээ болгон суулгахын тулд ажиллуулна уу

sudo bash service_install.sh control.py

Одоо та эхлүүлэх | зогсоох | командыг ажиллуулснаар энэ үйлчилгээг дахин эхлүүлж болно

sudo systemctl cloud4rpi.service эхлүүлнэ

Үйлчилгээ нь өмнөх төлөвөө асаалттай байлгадаг тул хэрэв ажиллаж байсан бол дахин ачаалах эсвэл цахилгаан тасарсны дараа ажиллах болно.

Алхам 4: Эцсийн үр дүн

Эцсийн үр дүн
Эцсийн үр дүн

Энэ бол одоо миний Tilt параметрүүдийг үүл рүү илгээж байгаа тул би үүлний хяналтын самбарыг тохируулж өгөх боломжтой. Https://cloud4rpi.io/control-panels руу орж шинэ хяналтын самбар үүсгээд виджет нэмж өгөгдлийн эх үүсвэр болгон/Gravity and Beer Temp-ийг сонгоно уу. Одоо би гэрээсээ хол байсан ч юу болж байгааг хянах боломжтой боллоо.

Миний хуулж бичсэн кодыг эндээс авах боломжтой: https://github.com/superroma/tilt-cloud4rpi. Энэ нь төгс төгөлдөр зүйлээс хол байна, энэ нь зөвхөн нэг хазайлтаар ажилладаг, төхөөрөмжийн өнгө, энэ нь ямар ч хамаагүй, би огт Python хүн биш тул засвар, санал, сэрээг хүлээн авах боломжтой. !

Зөвлөмж болгож буй: