Daftar Isi:
2025 Pengarang: John Day | [email protected]. Terakhir diubah: 2025-01-13 06:57
Suhu dan kelembaban adalah titik data penting di dunia industri saat ini. Pemantauan data lingkungan untuk ruang server, freezer komersial, dan jalur produksi diperlukan untuk menjaga semuanya berjalan lancar. Ada banyak solusi di luar sana mulai dari yang dasar hingga yang kompleks dan tampaknya sangat membingungkan untuk apa yang dibutuhkan bisnis Anda dan dari mana harus memulai.
Kami akan membahas cara memantau suhu dengan Raspberry Pi dan berbagai sensor suhu yang dapat Anda gunakan. Ini adalah tempat yang baik untuk memulai karena solusi ini tidak mahal, mudah dilakukan, dan memberi Anda dasar untuk membangun pemantauan lingkungan lainnya.
Perlengkapan
- Raspberry Pi (3, 4, atau Nol WH)
- Sensor Suhu (DHT2, DSB18B20, BME280, atau Sense HAT)
- 6" 40-Pin IDE Kabel Ekstensi Pria ke Wanita (Solusi Sense HAT)
- Resistor 10K, Breadboard, Papan Breakout 40-Pin + Kabel Pita, Kabel (Untuk Solusi DSB18B20)
Langkah 1: Raspberry Pi
Raspberry Pi adalah komputer papan tunggal murah yang memungkinkan Anda terhubung ke sensor suhu dan mengalirkan data ke perangkat lunak visualisasi data. Raspberry Pi dimulai sebagai alat pembelajaran dan telah berkembang menjadi alat tempat kerja industri. Kemudahan penggunaan dan kemampuan untuk membuat kode dengan Python, bahasa pemrograman yang paling cepat berkembang, telah menjadikannya sebagai solusi.
Anda akan menginginkan Raspberry Pi yang memiliki WiFi bawaan, yaitu model 3, 4, dan nol W/WH. Di antara mereka yang dapat Anda pilih berdasarkan harga dan fitur. Zero W/WH adalah yang termurah tetapi jika Anda membutuhkan lebih banyak fungsionalitas, Anda dapat memilih antara 3 dan 4. Anda hanya dapat membeli satu Zero W/WH pada satu waktu karena batasan oleh Raspberry Pi Foundation. Apa pun Pi yang Anda pilih, pastikan untuk membeli pengisi daya karena itulah cara Anda memberi daya pada Pi dan kartu SD dengan Raspbian untuk membuat pemasangan sistem operasi semudah mungkin.
Ada komputer papan tunggal lain yang dapat berfungsi dengan baik, tetapi itu untuk lain waktu dan artikel lain.
Langkah 2: Sensor
Ada tiga sensor yang kami sarankan untuk digunakan karena harganya murah, mudah dihubungkan, dan memberikan pembacaan yang akurat; DSB18B20, DHT22, dan Raspberry Pi Sense HAT.
DHT22 - Sensor suhu dan kelembaban ini memiliki akurasi suhu +/- 0,5 C dan kisaran kelembaban dari 0 hingga 100 persen. Sangat mudah untuk menghubungkan ke Raspberry Pi dan tidak memerlukan resistor pull up.
DSB18B20 - Sensor suhu ini memiliki output digital, yang bekerja dengan baik dengan Raspberry Pi. Ini memiliki tiga kabel dan membutuhkan papan tempat memotong roti dan resistor untuk koneksi.
BME280 - Sensor ini mengukur suhu, kelembaban, dan tekanan udara. Ini dapat digunakan di SPI dan I2C.
Sense HAT - Ini adalah tambahan untuk Raspberry Pi yang memiliki LED, sensor, dan joystick kecil. Ini terhubung langsung ke GPIO pada Raspberry Pi tetapi menggunakan kabel pita memberi Anda pembacaan suhu yang lebih akurat.
Langkah 3: Pengaturan Raspberry Pi
Jika ini adalah pertama kalinya mengatur Raspberry Pi Anda, Anda harus menginstal Sistem Operasi Raspbian dan menghubungkan Pi Anda ke WiFi. Ini akan membutuhkan monitor dan keyboard untuk terhubung ke Pi. Setelah Anda menjalankannya dan terhubung ke WiFI, Pi Anda siap digunakan.
Langkah 4: Akun Negara Awal
Anda memerlukan tempat untuk mengirim data Anda untuk menyimpan log historis dan melihat aliran data waktu nyata sehingga kami akan menggunakan Status Awal. Buka https://iot.app.initialstate.com dan buat akun baru atau masuk ke akun Anda yang sudah ada.
Selanjutnya, kita perlu menginstal modul Initial State Python ke Pi Anda. Pada prompt perintah (jangan lupa untuk SSH ke Pi Anda terlebih dahulu), jalankan perintah berikut:
$ cd /rumah/pi/
$ \curl -sSL https://get.initialstate.com/python -o - | sudo bash
Setelah Anda memasukkan perintah curl di command prompt, Anda akan melihat sesuatu yang mirip dengan output berikut di layar:
pi@raspberrypi ~
$ \curl -sSL https://get.initialstate.com/python -o - | sudo bash Sandi: Memulai Instalasi Mudah ISStreamer Python! Ini mungkin memerlukan beberapa menit untuk menginstal, ambil kopi:) Tapi jangan lupa untuk kembali, saya akan memiliki pertanyaan nanti! Ditemukan easy_install: setuptools 1.1.6 Ditemukan pip: pip 1.5.6 dari /Library/Python/2.7/site-packages/pip-1.5.6- py2.7.egg (python 2.7) pip versi utama: 1 pip versi minor: 5 ISStreamer ditemukan, memperbarui… Persyaratan sudah diperbarui: ISStreamer di /Library/Python/2.7/site-packages Membersihkan… Apakah Anda ingin mendapatkan contoh skrip secara otomatis? [y/T] Di mana Anda ingin menyimpan contoh? [default:./is_example.py] Silakan pilih aplikasi Status Awal yang Anda gunakan: 1. app.initialstate.com 2. [BARU!] iot.app.initialstate.com Masukkan pilihan 1 atau 2: Masukkan iot.app.initialstate.com nama pengguna: Masukkan kata sandi iot.app.initialstate.com:
Saat diminta untuk mendapatkan skrip contoh secara otomatis, ketik y. Ini akan membuat skrip pengujian yang dapat kita jalankan untuk memastikan bahwa kita dapat mengalirkan data ke Status Awal. Prompt berikutnya akan menanyakan di mana Anda ingin menyimpan file contoh. Anda dapat mengetikkan jalur lokal khusus atau menekan enter untuk menerima lokasi default. Terakhir, Anda akan ditanya aplikasi Status Awal mana yang Anda gunakan. Jika Anda baru saja membuat akun, pilih opsi 2, masukkan nama pengguna dan kata sandi Anda. Setelah itu instalasi akan selesai.
Mari kita lihat contoh script yang telah dibuat.
$ nano is_example.py
Pada baris 15, Anda akan melihat baris yang dimulai dengan streamer = Streamer(bucket_ …. Baris ini membuat data baru bucket bernama “Python Stream Example” dan dikaitkan dengan akun Anda. Asosiasi ini terjadi karena access_key="…” parameter pada baris yang sama. Rangkaian huruf dan angka yang panjang itu adalah kunci akses akun Status Awal Anda. Jika Anda masuk ke akun Status Awal di browser web Anda, klik nama pengguna Anda di kanan atas, lalu buka "pengaturan saya", Anda akan menemukan kunci akses yang sama di sini di bawah “Streaming Access Keys”.
Setiap kali Anda membuat aliran data, kunci akses itu akan mengarahkan aliran data itu ke akun Anda (jadi jangan bagikan kunci Anda dengan siapa pun).
Jalankan skrip pengujian untuk memastikan kami dapat membuat aliran data ke akun Status Awal Anda. Jalankan yang berikut ini:
$ python is_example.py
Kembali ke akun Status Awal Anda di browser web Anda. Keranjang data baru yang disebut "Contoh Aliran Python" seharusnya muncul di sebelah kiri di rak log Anda (Anda mungkin harus menyegarkan halaman). Klik ember ini lalu klik ikon Gelombang untuk melihat data pengujian
Jika Anda menggunakan Python 3, Anda dapat menginstal Modul Streamer Status Awal yang dapat Anda instal menggunakan perintah berikut:
pip3 instal ISStreamer
Sekarang kita siap untuk mengatur sensor suhu dengan Pi untuk mengalirkan suhu ke dasbor.
Langkah 5: Solusi DHT22
DHT22 akan memiliki tiga pin - 5V, Gnd, dan data. Harus ada label pin untuk daya pada DHT22 (misalnya '+' atau '5V'). Hubungkan ini ke pin 2 (pin kanan atas, 5V) dari Pi. Pin Gnd akan diberi label '-' atau 'Gnd' atau yang setara. Hubungkan ini ke pin 6 Gnd (dua pin di bawah pin 5V) pada Pi. Pin yang tersisa pada DHT22 adalah pin data dan akan diberi label 'out' atau 's' atau 'data'. Hubungkan ini ke salah satu pin GPIO pada Pi seperti GPIO4 (pin 7). Setelah ini terhubung, nyalakan Pi Anda.
Instal modul Adafruit DHT Python pada prompt perintah untuk membuat pembacaan data sensor DHT22 menjadi sangat mudah:
$ sudo pip install Adafruit_DHT
Dengan sistem operasi kami yang diinstal bersama dengan dua modul Python kami untuk membaca data sensor dan mengirim data ke Status Awal, kami siap untuk menulis skrip Python kami. Skrip berikut akan membuat/menambahkan ke bucket data Status Awal, membaca data sensor DHT22, dan mengirimkan data tersebut ke dasbor waktu nyata. Yang perlu Anda lakukan adalah memodifikasi baris 6–11.
impor Adafruit_DHT
dari ISStreamer. Streamer mengimpor Streamer waktu impor# --------- Pengaturan Pengguna --------- SENSOR_LOCATION_NAME = "Kantor" BUCKET_NAME = ":partly_sunny: Suhu Kamar" BUCKET_KEY = "rt0129" ACCESS_KEY = "TEMPATKAN KUNCI AKSES NEGARA AWAL DI SINI" MINUTES_BETWEEN_READS = 10METRIC_UNITS = False # --------------------------------- streamer = Streamer(bucket_name=BUCKET_NAME, bucket_key=BUCKET_KEY, access_key=ACCESS_KEY) sementara True: kelembaban, temp_c = Adafruit_DHT.read_retry(Adafruit_DHT. DHT22, 4) jika METRIC_UNITS: streamer.log(SENSOR_LOCATION_NAME + " temp_(C) else",: temp_f = format(temp_c * 9.0 / 5.0 + 32.0, ".2f") streamer.log(SENSOR_LOCATION_NAME + " Suhu(F)", temp_f) kelembaban = format(kelembaban, ".2f") streamer.log(SENSOR_LOCATION_NAME + " Kelembaban(%)", kelembaban) streamer.flush() waktu.tidur(60*MINUTES_BETWEEN_READS)
- Baris 6 - Nilai ini harus unik untuk setiap node/sensor suhu. Ini bisa berupa nama kamar node sensor Anda, lokasi fisik, pengidentifikasi unik, atau apa pun. Pastikan itu unik untuk setiap node untuk memastikan bahwa data dari node ini masuk ke aliran datanya sendiri di dasbor Anda.
- Baris 7 - Ini adalah nama keranjang data. Ini dapat diubah kapan saja di UI Status Awal.
- Baris 8 - Ini adalah kunci ember Anda. Itu harus menjadi kunci keranjang yang sama untuk setiap simpul yang ingin Anda tampilkan di dasbor yang sama.
- Baris 9 - Ini adalah kunci akses akun Status Awal Anda. Salin dan tempel kunci ini dari akun Status Awal Anda.
- Baris 10 - Ini adalah waktu antara pembacaan sensor. Ubah sesuai.
- Baris 11 - Anda dapat menentukan satuan metrik atau imperial pada baris 11.
Setelah Anda mengatur baris 6–11 dalam skrip Python di Pi Anda, simpan dan keluar dari editor teks. Jalankan skrip dengan perintah berikut:
$ python tempsensor.py
Sekarang Anda akan memiliki pengiriman data ke dasbor Status Awal. Buka bagian terakhir artikel ini untuk detail tentang cara menyesuaikan dasbor Anda.
Langkah 6: Solusi DSB18B20
Kabel pita terhubung ke pin GPIO pada Pi. DS18B20 memiliki tiga kabel. Kabel merah terhubung ke 3.3V. Kabel biru/hitam terhubung ke ground. Kabel kuning terhubung ke resistor/pin pull-up 4. Setelah kabel terpasang, hidupkan Pi Anda.
Versi terbaru Raspbian (kernel 3.18) memerlukan tambahan file /boot/config.txt agar Pi dapat berkomunikasi dengan DS18B20. Jalankan yang berikut ini untuk mengedit file ini:
$ sudo nano /boot/config.txt
Jika baris berikut belum ada di file ini (jika ada, kemungkinan ada di bagian bawah file), tambahkan dan simpan file.
dtoverlay=w1-gpio, gpiopin=4
Mulai ulang Pi Anda agar perubahan diterapkan.
$ sudo reboot
Untuk memulai antarmuka pembacaan sensor suhu, kita perlu menjalankan dua perintah. Buka prompt perintah di Pi Anda atau SSH ke Pi Anda. Ketik perintah berikut:
$ sudo modprobe w1-gpio$ sudo modprobe w1-therm
Output dari sensor suhu Anda sekarang sedang ditulis ke file di Pi Anda. Untuk menemukan file itu:
$ cd /sys/bus/w1/devices
Di direktori ini, akan ada sub-direktori yang dimulai dengan “28-“. Apa yang muncul setelah "28-" adalah nomor seri sensor Anda. cd ke direktori itu. Di dalam direktori ini, file bernama w1_slave berisi output dari sensor Anda. Gunakan nano untuk melihat konten file. Setelah Anda masuk ke dalam file, itu akan terlihat seperti ini:
a2 01 4b 46 7f ff 0e 10 d8: crc=d8 YESa2 01 4b 46 7f ff 0e 10 d8 t=26125
Angka setelah “t=” adalah angka yang kita inginkan. Ini adalah suhu dalam 1/1000 derajat Celcius (pada contoh di atas, suhu adalah 26,125 C). Kami hanya membutuhkan program sederhana yang membaca file ini dan mem-parsing nomor tersebut. Kita akan mendapatkannya hanya dalam satu detik.
Semuanya sekarang siap untuk kita mulai streaming data. Untuk membuka editor teks ketik berikut ini di command prompt:
$ nano temperature.py
Salin dan tempel kode di bawah ini ke dalam editor teks.
impor os
import glob import waktu dari ISStreamer. Streamer import Streamerstreamer = Streamer(bucket_name="Temperature Stream", bucket_key="piot_temp_stream031815", access_key="PUT_YOUR_ACCESS_KEY_HERE") os.system('modprobe w1-gpio') os.system('modprobe w1 -therm') base_dir = '/sys/bus/w1/devices/' device_folder = glob.glob(base_dir + '28*')[0] device_file = device_folder + '/w1_slave' def read_temp_raw(): f = open(device_file, 'r') lines = f.readlines() f.close() mengembalikan baris def read_temp(): lines = read_temp_raw() while lines[0].strip()[-3:] != 'YA': time.sleep(0.2) lines = read_temp_raw() equals_pos = lines[1].find('t=') if equals_pos != -1: temp_string = lines[1][equals_pos+2:] temp_c = float(temp_string) / 1000.0 mengembalikan temp_c while True: temp_c = read_temp() temp_f = temp_c * 9.0 / 5.0 + 32.0 streamer.log("temperature (C)", temp_c) streamer.log("temperature (F)", temp_f) time.sleep (.5)
Anda harus meletakkan kunci akses Status Awal Anda pada baris 6 sebagai ganti PUT_YOUR_ACCESS_KEY_HERE (salin kunci streaming ke clipboard Anda dari 'Akun Saya' dan tempelkan ke kode dalam nano di terminal Anda).
Baris 6 akan membuat ember bernama "Aliran Suhu" di akun Status Awal Anda (dengan asumsi Anda menentukan access_key Anda dengan benar pada baris yang sama ini). Baris 8 hingga 30 dari skrip ini hanya berinteraksi dengan sensor DS18B20 untuk membaca suhunya dari file w1_slave yang telah kita bahas sebelumnya. Fungsi read_temp_raw() pada baris 15 membaca file w1_slave mentah. Fungsi read_temp() pada baris 21 mem-parsing suhu dari file itu. Baris 34 memanggil fungsi-fungsi ini untuk mendapatkan suhu saat ini. Baris 35 mengubah suhu dari Celcius ke Fahrenheit. Baris 35 dan 36 mengalirkan suhu ke akun Keadaan Awal Anda. Baris 37 menjeda skrip selama 0,5 detik, mengatur seberapa sering sensor suhu akan dibaca dan dialirkan.
Kami siap untuk memulai streaming. Jalankan perintah berikut:
$ sudo python temperature.py
Kembali ke akun Status Awal Anda di browser web Anda dan cari ember data baru yang disebut Aliran Suhu. Anda akan melihat streaming data suhu secara langsung. Variasikan suhu sensor dengan memegangnya di tangan Anda atau memasukkannya ke dalam segelas es.
Sekarang Anda akan memiliki pengiriman data ke dasbor Status Awal. Buka bagian akhir artikel ini untuk detail tentang cara menyesuaikan dasbor Anda.
Langkah 7: Solusi BME280
Anda memerlukan yang berikut ini untuk membangun solusi ini:
-BME280 Sensor Tekanan, Suhu, & Kelembaban
Sensor ini dilengkapi dengan pin yang harus Anda solder pada sensor. Saya sarankan menggunakan papan tempat memotong roti dengan pin sisi panjang ke bawah ke papan tempat memotong roti untuk membuat penyolderan lebih mudah. Setelah Anda menyelesaikan ini, kita perlu menghubungkan sensor ke Pi.
Hubungkan pin VIN pada sensor ke 3.3V pin 1 pada Pi. Hubungkan pin GND pada sensor pin ground 6 pada Pi. Hubungkan pin SCK pada sensor ke pin SCL 5 pada Pi. Hubungkan pin SDI pada sensor ke pin 3 SDA pada Pi. Anda harus menggunakan Python 3 untuk solusi ini dan menginstal modul Initial State Streamer menggunakan metode instal pip3.
Anda juga perlu menginstal beberapa pustaka Adafruit Python.
pip3 instal adafruit-blinkapip3 instal pureio pip3 instal spidev pip3 instal adafruit-GPIO pip3 instal adafruit-circuitpython-bme280
Untuk menggunakan sensor kita perlu mengaktifkan I2C pada Pi.
sudo raspi-config
Ini akan membuka Alat Konfigurasi Perangkat Lunak Raspberry Pi. Pergi ke Opsi 5 Opsi Antarmuka. Dari sini pergi ke I2C. Ini akan menanyakan apakah Anda ingin mengaktifkan I2C, Pilih Ya dan Selesai. Sekarang Anda telah mengaktifkan I2C untuk berkomunikasi dengan sensor.
Kita dapat menguji ini dengan menjalankan yang berikut ini:
sudo i2cdetect -y 1
Ini akan memverifikasi bahwa Pi Anda melihat sensor. Dalam cara terhubung, itu harus menunjukkan sensor di alamat 77. Jika Anda tidak mendeteksi sensor, reboot Pi Anda, aktifkan kembali opsi antarmuka I2C pada Pi Anda, dan coba lagi. Setelah sensor Anda terdeteksi, saatnya untuk menjalankan kode utama kita yang akan mengirimkan data ke Initial State. Buat file bernama bme280sensor.py dengan perintah nano. Salin dan tempel kode dari Gist ke editor teks. Anda harus membuat perubahan pada baris 12–19.
waktu impor
import board import busio import adafruit_bme280 dari ISStreamer. Streamer import Streamer # Buat objek library menggunakan Bus I2C porti2c = busio. I2C(board. SCL, board. SDA) bme280 = adafruit_bme280. Adafruit_BME280_I2C(i2c) # ------- -- Pengaturan Pengguna --------- SENSOR_LOCATION_NAME = "Kantor" BUCKET_NAME = ":partly_sunny: Suhu Kamar" BUCKET_KEY = "temp1" ACCESS_KEY = "KUNCI AKSES ANDA DI SINI" # ubah ini agar sesuai dengan tekanan lokasi (hPa) di permukaan laut bme280.sea_level_pressure = 1013.25 MINUTES_BETWEEN_READS = 10 METRIC_UNITS = Salah # --------------------------------- # ATAU buat objek perpustakaan menggunakan port SPI Bus kami #spi = busio. SPI(board. SCK, board. MOSI, board. MISO) #bme_cs = digitalio. DigitalInOut(board. D10) #bme280 = adafruit_bme280. Adafruit_BME280_SPI(spi, bme_cs) streamer = Streamer(bucket_name=BUCKET_NAME, bucket_key=BUCKET_KEY, access_key=ACCESS_KEY) while True: kelembaban = format(bme280.humidity, ".1f") pressure = format(bme280.pressure, ".1f") temp_c = bme280.temperatu jika METRIC_UNITS: streamer.log(SENSOR_LOCATION_NAME + "Temperature(C)", temp_c) else: temp_f = format(temp_c * 9.0 / 5.0 + 32.0, ".1f") streamer.log(SENSOR_LOCATION_NAME + " Temperature(F)", temp_f) streamer.log(SENSOR_LOCATION_NAME + "Humidity(%)", kelembaban) streamer.log(SENSOR_LOCATION_NAME + "Pressure(hPA)", tekanan) streamer.flush() time.sleep(60*MINUTES_BETWEEN_READS)
- Baris 12- Nilai ini harus unik untuk setiap node/sensor suhu. Ini bisa berupa nama kamar node sensor Anda, lokasi fisik, pengidentifikasi unik, atau apa pun. Pastikan itu unik untuk setiap node untuk memastikan bahwa data dari node ini masuk ke aliran datanya sendiri di dasbor Anda.
- Baris 13- Ini adalah nama dari data bucket. Ini dapat diubah kapan saja di UI Status Awal.
- Baris 14- Ini adalah kunci ember Anda. Itu harus menjadi kunci keranjang yang sama untuk setiap simpul yang ingin Anda tampilkan di dasbor yang sama.
- Baris 15- Ini adalah kunci akses akun Status Awal Anda. Salin dan tempel kunci ini dari akun Status Awal Anda.
- Baris 17- Ini adalah tekanan lokasi Anda (hPa) di permukaan laut. Anda dapat menemukan informasi ini di sebagian besar situs web cuaca.
- Baris 18 - Ini adalah waktu antara pembacaan sensor. Ubah sesuai. Baris 19- Di sini Anda dapat menentukan satuan metrik atau imperial.
Setelah Anda mengatur baris 12–19 dalam skrip Python Anda di Pi Zero WH Anda, simpan dan keluar dari editor teks. Jalankan skrip dengan perintah berikut:
$ python3 bme280sensor.py
Sekarang Anda akan memiliki pengiriman data ke dasbor Status Awal. Buka bagian akhir artikel ini untuk detail tentang cara menyesuaikan dasbor Anda.
Langkah 8: Rasakan HAT
Langkah pertama dalam menggunakan Sense HAT adalah menginstalnya secara fisik ke Pi Anda. Dengan Pi dimatikan, pasang HAT seperti yang ditunjukkan pada gambar.
Jika Anda memutuskan untuk menggunakan solusi seperti yang ditunjukkan di atas, Anda mungkin memperhatikan bahwa pembacaan suhu Sense HAT Anda akan sedikit tinggi - itu karena memang demikian. Penyebabnya adalah panas yang dihasilkan dari CPU Pi yang memanaskan udara di sekitar Sense HAT saat berada di atas Pi. Untuk membuat sensor suhu berguna, kita perlu menjauhkan HAT dari Pi atau mencoba mengkalibrasi pembacaan sensor suhu. Solusi yang baik untuk menjauhkan sensor dari Pi adalah kabel yang memungkinkan Sense HAT menjuntai menjauh dari Pi. A 6 , 40-pin IDE kabel ekstensi laki-laki ke perempuan akan melakukan trik.
Setelah Anda memutuskan dua opsi, nyalakan Pi Anda. Kita perlu menginstal library Python untuk memudahkan membaca nilai sensor dari Sense HAT. Pertama, Anda perlu memastikan bahwa semuanya mutakhir pada versi Raspbian Anda:
$ sudo apt-get update
Selanjutnya, instal perpustakaan Sense HAT Python:
$ sudo apt-get install sense-hat
Nyalakan ulang Pi Anda. Kami siap untuk menguji HAT Sense dengan membaca data sensor darinya dan mengirimkan data tersebut ke Status Awal.
Buat file bernama sensehat dan buka di editor teks dengan memasukkan perintah berikut di prompt perintah:
$ nano sensehat.py
Salin dan tempel kode di bawah ini di editor teks.
dari sense_hat impor SenseHat
import time import sys from ISStreamer. Streamer import Streamer # --------- Pengaturan Pengguna --------- BUCKET_NAME = "Office Weather" BUCKET_KEY = "sensehat" ACCESS_KEY = "Your_Access_Key" SENSOR_LOCATION_NAME = " Office" MINUTES_BETWEEN_SENSEHAT_READS = 0.1 # --------------------------------- streamer = Streamer(bucket_name=BUCKET_NAME, bucket_key=BUCKET_KEY, access_key=ACCESS_KEY) sense = SenseHat() while True: # Baca sensor temp_c = sense.get_temperature() kelembaban = sense.get_humidity() pressure_mb = sense.get_pressure() # Format data temp_f = temp_c * 9.0 / 5.0 + 32.0 temp_f = float("{0:.2f}".format(temp_f)) kelembaban = float("{0:.2f}".format(humidity)) pressure_in = 0.03937008*(pressure_mb) pressure_in = float("{ 0:.2f}".format(pressure_in)) # Cetak dan streaming print SENSOR_LOCATION_NAME + " Suhu(F): " + str(temp_f) print SENSOR_LOCATION_NAME + " Kelembaban(%): " + str(kelembaban) cetak SENSOR_LOCATION_NAME + " Tekanan(IN): " + str(tekanan_masuk) streamer.log(":cerah: " + SEN SOR_LOCATION_NAME + " Suhu(F)", temp_f) streamer.log(":sweat_drops: " + SENSOR_LOCATION_NAME + " Kelembaban(%)", kelembaban) streamer.log(":cloud: " + SENSOR_LOCATION_NAME + " Tekanan(IN)", pressure_in) streamer.flush() waktu.tidur(60*MINUTES_BETWEEN_SENSEHAT_READS)
Perhatikan pada baris pertama bahwa kita mengimpor library SenseHat ke dalam skrip. Sebelum Anda menjalankan skrip ini, kami perlu mengatur parameter pengguna kami.
# --------- Pengaturan pengguna ---------
BUCKET_NAME = "Cuaca Kantor"BUCKET_KEY = "sensehat"ACCESS_KEY = "Your_Access_Key"SENSOR_LOCATION_NAME = "Kantor"MINUTES_BETWEEN_SENSEHAT_READS = 0.1# ------------------------- --------
Secara khusus, Anda perlu menyetel ACCESS_KEY ke kunci akses akun Status Awal Anda. Anda dapat mengubah BUCKET_NAME dan SENSOR_LOCATION_NAME ke lokasi sensor yang sebenarnya. Simpan dan keluar dari editor teks.
Pada prompt perintah di Pi Anda, jalankan skrip:
$ sudo python sensehat.py
Sekarang Anda akan memiliki pengiriman data ke dasbor Status Awal. Buka bagian akhir artikel ini untuk detail tentang cara menyesuaikan dasbor Anda.
Langkah 9: Sesuaikan Dasbor Status Awal Anda
Buka akun Status Awal Anda dan lihat data Anda. Anda dapat mengklik kanan pada Tile untuk mengubah jenis bagan dan klik Edit Tiles untuk mengubah ukuran dan memindahkan Tiles Anda. Saya akan merekomendasikan menggunakan termostat pengukur untuk suhu dan tingkat cairan pengukur untuk kelembaban. Anda dapat membuat grafik garis untuk suhu dan kelembaban untuk melihat perubahan dari waktu ke waktu. Anda juga dapat menambahkan gambar latar belakang ke dasbor Anda.
Anda dapat mengatur peringatan Pemicu sehingga Anda bisa mendapatkan SMS atau email jika suhu turun di bawah atau di atas ambang batas tertentu. Buka keranjang data Anda dan klik pengaturan. Dari sana, buka tab Pemicu. Masukkan kunci aliran yang ingin Anda pantau, operator yang ingin Anda gunakan, dan nilai ambang batas. Klik tanda plus untuk menambahkan Pemicu. Kemudian Anda akan memasukkan email atau nomor telepon Anda untuk menerima peringatan di dan klik tanda plus. Setelah Anda mengatur semua Pemicu, klik tombol Selesai di bagian bawah.
Sekarang setelah Anda membuat monitor suhu menggunakan sensor suhu dan Raspberry Pi, Anda dapat mulai memikirkan data lingkungan apa lagi yang dapat Anda pantau selanjutnya.