Isi kandungan:
- Langkah 1: Mendapatkan Data Kecondongan di Python
- Langkah 2: Menyambungkan Peranti ke Awan
- Langkah 3: Menghantar Data ke Awan
- Langkah 4: Keputusan Akhir
Video: Cara Mengawal Suhu dan Graviti Fermentasi Bir Dari Telefon Pintar Anda: 4 Langkah (dengan Gambar)
2024 Pengarang: John Day | [email protected]. Diubah suai terakhir: 2024-01-30 11:12
Semasa bir ditapai, anda harus memantau graviti dan suhunya setiap hari. Sangat mudah untuk melupakannya, dan mustahil jika anda berada jauh.
Selepas beberapa googling, saya menemui beberapa penyelesaian untuk pemantauan graviti automatik (satu, dua, tiga). Salah satunya, dengan konsep yang sangat pintar, dipanggil Tilt. Tilt mengambang di bir anda dan mengukur sudut kecondongannya sendiri. Sudut ini bergantung pada ketumpatan cecair, dan oleh itu dapat mengukur graviti bir penapaian.
Tilt dilengkapi dengan aplikasi mudah alih, yang menghubungkannya dan dapat menghantar data ke mana-mana perkhidmatan web. Masalahnya ialah anda perlu berada jauh dari Tilt untuk dapat melakukannya. Terdapat juga program Raspberry Pi yang berfungsi dengan Tilt.
Langkah 1: Mendapatkan Data Kecondongan di Python
Saya sudah menggunakan Raspberry Pi untuk memantau suhu bilik bawah tanah, dan perkhidmatan panel kawalan awan cloud4rpi.io. Sekiranya Tilt dapat bercakap dengan Raspberry Pi, mungkin sambungkan cloud4rpi dengannya. Tilt menggunakan protokol tanpa wayar, jadi anda memerlukan Raspberry Pi dengan cip tanpa wayar (Rasbperry Pi 3 atau Zero W).
Nasib baik, ada repo GitHub untuk perisian Tilt dengan beberapa sampel. Melihat https://github.com/baronbrew/tilt-scan anda dapat melihat bahawa Tilt memandang orang lain sebagai BLE iBeacon, dengan "Warna" dikodkan dalam UUID, dan suhu dan graviti berada dalam bait utama dan kecil.
Contoh kod mereka adalah untuk Node.js, dan saya mempunyai program kawalan Python berdasarkan templat cloud4rpi
Oleh itu, saya perlu mendapatkan data Tilt di Python. Selepas beberapa googling, saya dapati https://github.com/switchdoclabs/iBeacon-Scanner- - Python iBeacon scanner. Ini adalah program, bukan perpustakaan, jadi saya mengubahnya untuk mengembalikan kamus dan bukannya rentetan. Dan saya juga menulis modul khusus Tilt untuk mendapatkan warna, suhu dan graviti Tilt pertama yang dijumpai (saya hanya mempunyai satu), dan program ujian mudah untuk memeriksa sama ada ia dapat melihat Tilt saya:
import condong masa import
Walaupun Betul:
res = tilt.getFirstTilt () mencetak masa res. tidur (2)
Jalankan dan periksa bahawa ia berfungsi. Sekarang saya boleh memasangkannya ke program kawalan saya. Saya sudah mempunyai program python yang disambungkan ke cloud4rpi.io, tetapi izinkan saya menunjukkan cara melakukannya dari awal.
Langkah 2: Menyambungkan Peranti ke Awan
Pertama, log masuk ke cloud4rpi.io, kemudian buat peranti baru.
Anda akan diberi token dan arahan pemasangan peranti. Untuk Raspberry Pi ikuti arahan di sini https://docs.cloud4rpi.io/start/rpi/ - pastikan sistem anda terkini:
sudo apt update && sudo apt upgrade
Pasang prasyarat:
sudo apt pasang git python python-pip
Pasang pakej python cloud4rpi:
sudo pip pasang cloud4rpi
kemudian dapatkan contoh aplikasi python untuk Raspberry Pi (ke dalam folder kawalan):
git clone https://github.com/cloud4rpi/cloud4rpi-raspberryp… kawalan
kawalan cd
ubah suai control.py - tentukan token peranti anda di baris
DEVICE_TOKEN = ‘_YOUR_DEVICE_TOKEN_’
Keluarkan entri yang tidak perlu dari pernyataan pemboleh ubah peranti, biarkan CPUTemp hanya untuk menguji sambungan peranti:
# Masukkan pernyataan pemboleh ubah di sini pemboleh ubah = {'CPU Temp': {'type': 'numeric', 'bind': rpi.cpu_temp}}
Sekarang jalankan ujian:
sudo python control.py
Sekiranya semuanya baik-baik saja, halaman peranti anda akan segera dikemas kini dengan data diagnostik.
Langkah 3: Menghantar Data ke Awan
Sekarang kita perlu mengubah suai control.py untuk membaca dan melaporkan warna, suhu dan graviti Tilt. Hasilnya kelihatan seperti ini:
dari os import unamedari soket import gethostname import sys import time import cloud4rpi import rpi import tilt
# Letakkan token peranti anda di sini. Untuk mendapatkan token, # daftar di https://cloud4rpi.io dan buat peranti. DEVICE_TOKEN = '_YOUR_DEVICE_TOKEN_'
# Pemalar
DATA_SENDING_INTERVAL = 60 # saat DIAG_SENDING_INTERVAL = 600 # saat POLL_INTERVAL = 0.5 # 500 ms
suar = {}
def F2C (darjahF):
pulangan (darjahF - 32) / 1.8
def getTemp ():
kembalikan F2C (int (suar ['Temp'])) jika suar lain Tiada
def getGravity ():
mengembalikan suar ['Gravity'] jika suar lain Tiada
def utama ():
# Masukkan pernyataan pemboleh ubah di sini
pemboleh ubah = {'Gravity': {'type': 'numeric', 'bind': getGravity}, 'Beer Temp': {'type': 'numeric', 'bind': getTemp}}
diagnostik = {
'CPU Temp': rpi.cpu_temp, 'Alamat IP': rpi.ip_address, 'Host': gethostname (), 'Sistem Operasi': "".join (uname ())}
device = cloud4rpi.connect (PERANTI_TOKEN)
device.declare (variables) device.declare_diag (diagnostik)
device.publish_config ()
# Menambah kelewatan 1 saat untuk memastikan pemboleh ubah peranti dibuat
masa. tidur (1)
cuba:
data_timer = 0 diag_timer = 0 while True: if data_timer <= 0: global beacon beacon = tilt.getFirstTilt () device.publish_data () data_timer = DATA_SENDING_INTERVAL
jika diag_timer <= 0: device.publish_diag () diag_timer = DIAG_SENDING_INTERVAL
time.sleep (POLL_INTERVAL)
diag_timer - = POLL_INTERVAL data_timer - = POLL_INTERVAL
kecuali KeyboardInterrupt:
cloud4rpi.log.info ('Gangguan papan kekunci diterima. Berhenti …')
kecuali Pengecualian sebagai e:
error = cloud4rpi.get_error_message (e) cloud4rpi.log.error ("KESALAHAN!% s% s", ralat, sys.exc_info () [0])
akhirnya:
sys.exit (0)
jika _nama_ == '_main_':
utama ()
Sekarang jalankan secara manual untuk melihat apakah ia berfungsi:
sudo python control.py
Sekiranya semuanya baik, anda akan melihat pemboleh ubah anda dalam talian.
Untuk menjalankan control.py pada permulaan sistem, pasangkannya sebagai perkhidmatan. Cloud4rpi menyediakan skrip pemasangan service_install.sh untuk melakukannya. Saya memasukkannya ke dalam repo saya. Untuk memasang control.py sebagai perkhidmatan, jalankan
sudo bash service_install.sh control.py
Sekarang anda boleh memulakan | berhenti | mulakan semula perkhidmatan ini dengan menjalankan perintah
sudo systemctl mulakan perkhidmatan cloud4rpi.service
Perkhidmatan mengekalkan keadaan sebelumnya semasa dihidupkan, jadi jika ia berjalan, ia akan berjalan setelah reboot atau kehilangan kuasa.
Langkah 4: Keputusan Akhir
Ini dia, sekarang saya mempunyai parameter Tilt saya dihantar ke awan, jadi saya boleh menyediakan panel kawalan awan yang bagus untuknya. Pergi ke https://cloud4rpi.io/control-panels dan buat panel kawalan baru, tambahkan widget dan pilih / Gravity dan Beer Temp sebagai sumber data. Sekarang saya dapat memantau apa yang berlaku walaupun saya jauh dari rumah.
Kod yang saya salin dan tulis boleh didapati di sini: https://github.com/superroma/tilt-cloud4rpi. Ini jauh dari sempurna, ia hanya berfungsi dengan satu Tilt, ia tidak peduli dengan "Warna" peranti, apa pun maksudnya, dan saya sama sekali bukan lelaki Python, jadi pembaikan, cadangan atau garpu dialu-alukan !
Disyorkan:
Cara Menggunakan Sensor Suhu DHT11 Dengan Arduino dan Cetak Suhu Panas dan Kelembapan: 5 Langkah
Cara Menggunakan Sensor Suhu DHT11 Dengan Arduino dan Cetak Suhu Panas dan Kelembapan: Sensor DHT11 digunakan untuk mengukur suhu dan kelembapan. Mereka adalah penggemar elektronik yang sangat popular. Sensor kelembapan dan suhu DHT11 menjadikannya sangat mudah untuk menambahkan data kelembapan dan suhu ke projek elektronik DIY anda. Per
Mengawal Relay Dari Telefon Anda Menggunakan Blynk: 4 Langkah
Mengendalikan Relay Dari Telefon Anda Menggunakan Blynk: Dalam arahan ini saya akan menunjukkan kepada anda bagaimana anda boleh menghidupkan / mematikan geganti dari telefon pintar anda
Cara Mengawal Suis Pintar Asas Sonoff Berasaskan ESP8266 Dengan Telefon Pintar: 4 Langkah (dengan Gambar)
Cara Mengawal Suis Pintar Asas Sonoff Berasaskan ESP8266 Dengan Telefon Pintar: Sonoff adalah barisan peranti untuk Rumah Pintar yang dibangunkan oleh ITEAD. Salah satu peranti yang paling fleksibel dan murah dari talian tersebut adalah Sonoff Basic. Ia adalah suis berkemampuan Wi-Fi berdasarkan cip hebat, ESP8266. Artikel ini menerangkan cara menyiapkan Cl
Kawal Peralatan Rumah Tangga Dari Telefon Pintar Anda Dengan Aplikasi Blynk dan Raspberry Pi: 5 Langkah (dengan Gambar)
Kawal Peralatan Rumah Tangga Dari Telefon Pintar Anda Dengan Aplikasi Blynk dan Raspberry Pi: Dalam projek ini, kami akan belajar bagaimana menggunakan aplikasi Blynk dan Raspberry Pi 3 untuk mengendalikan perkakas rumah (Pembuat kopi, Lampu, tirai tingkap dan banyak lagi … Komponen perkakasan: Kabel Breadboard Lampu Relay Raspberry Pi 3 Aplikasi apl perisian: Blynk A
SENSOR SUHU DENGAN LCD DAN LED (Membuat Sensor Suhu Dengan LCD dan LED): 6 Langkah (dengan Gambar)
SENSOR SUHU DENGAN LCD DAN LED (Membuat Sensor Suhu Dengan LCD dan LED): hai, saya. Ini adalah bacaan suhu dengan reka bentuk saya sendiri, dengan sensor ini dan