Isi kandungan:

Bina Stesen Cuaca Raspberry Pi SUPER: 8 Langkah (dengan Gambar)
Bina Stesen Cuaca Raspberry Pi SUPER: 8 Langkah (dengan Gambar)

Video: Bina Stesen Cuaca Raspberry Pi SUPER: 8 Langkah (dengan Gambar)

Video: Bina Stesen Cuaca Raspberry Pi SUPER: 8 Langkah (dengan Gambar)
Video: Cultivating the Supreme Dantian EP 1-98 MULTI SUB 1080P 2024, Julai
Anonim
Image
Image

Mari kita hadapi, kita manusia banyak membincangkan cuaca ⛅️. Rata-rata orang bercakap mengenai cuaca empat kali sehari, selama 8 minit dan 21 saat. Lakukan matematik dan jumlahnya adalah 10 bulan dalam hidup anda yang akan anda habiskan untuk mengira cuaca. Cuaca dianggap sebagai topik utama # 1 untuk permulaan perbualan dan pemutus keheningan yang tidak selesa. Sekiranya kita ingin membicarakannya, kita mungkin akan meningkatkan kepercayaan cuaca kita ke tahap yang baru. Projek yang sangat menyeronokkan dan mudah ini akan memanfaatkan Internet of Things (IoT) dan Raspberry Pi untuk melakukannya.

Kami akan membina papan pemuka IoT cuaca hiper-tempatan kami sendiri, menangkap cuaca di dalam dan di luar rumah kami dari masa ke masa. Kali berikutnya seseorang bertanya kepada anda "bagaimana dengan cuaca akhir-akhir ini?", Anda akan dapat mengeluarkan telefon anda dan membiarkannya terengah-engah dengan kemahiran analisis cuaca gila anda ☀️.

Apa yang anda perlukan untuk mengikuti kursus ini: 1. Raspberry Pi dengan sambungan internet

2. Raspberry Pi SenseHAT

3. Kabel Sambungan 6-Pin IDE Lelaki hingga Wanita 6 (pilihan untuk ketepatan suhu)

4. Akaun Negeri Permulaan

5. Itu sahaja!

Tahap projek: Permulaan

Masa anggaran untuk diselesaikan: 20 minit

Faktor keseronokan anggaran: Di luar carta

Dalam tutorial langkah demi langkah ini, anda akan: belajar bagaimana menggunakan integrasi Weatherstack API di Initial State untuk mendapatkan cuaca luar tempatan di kawasan anda

- Pelajari cara menggunakan Raspberry Pi dengan Sense HAT (https://www.raspberrypi.org/products/sense-hat/) untuk menangkap data cuaca di dalam rumah anda

- Bina papan pemuka cuaca hiper-tempatan anda sendiri yang boleh anda akses dari mana-mana penyemak imbas web pada komputer riba atau peranti mudah alih anda

- Cubalah ahli meteorologi anda untuk mendapatkan wang mereka

Bekalan

Apa yang anda perlukan untuk mengikuti kursus ini:

1. Kesambungan Raspberry Pi dengan internet

2. Raspberry Pi SenseHAT

3. Kabel Sambungan 6-Pin IDE Lelaki hingga Wanita 6 (pilihan untuk ketepatan suhu)

4. Akaun Negeri Permulaan

5. Itu sahaja!

Langkah 1: Bermula

Kami telah membuat banyak usaha untuk anda menyusun kodnya dan menyusun maklumat. Kami hanya memerlukan anda membuat beberapa penyesuaian.

Untuk mendapatkan semula semua perkara yang kami sediakan untuk anda, anda perlu mengklon repositori dari GitHub. Github adalah perkhidmatan hebat yang membolehkan kami menyimpan, menyemak dan menguruskan projek seperti ini. Untuk mengkloning repositori, semua yang perlu kita lakukan adalah masuk ke terminal Pi kita, atau terminal komputer anda yang SSH masukkan ke dalam pi anda dan ketik perintah ini:

$ git klon

Tekan enter dan anda akan melihat maklumat ini:

pi @ raspberrypi ~ $ git clone

Pengklonan menjadi 'wunderground-sensehat' …

jarak jauh: Membilang objek: 28, selesai.

jarak jauh: Jumlah 28 (delta 0), digunakan semula 0 (delta 0), pek digunakan semula 28

Membongkar objek: 100% (28/28), selesai.

Memeriksa sambungan … selesai.

Setelah anda melihatnya, selamat berjaya mengklon Github Repo dan mempunyai semua fail yang diperlukan untuk membina Super Weather Station anda. Sebelum kita melangkah ke langkah seterusnya, mari luangkan sedikit masa untuk menjelajahi sekitar direktori ini dan mempelajari beberapa perintah baris perintah asas.

Taipkan arahan di bawah ke terminal anda:

$ ls

Perintah ini menyenaraikan semua yang ada di direktori yang sedang anda masuki. Daftar ini menunjukkan bahawa Github Repo kami telah berjaya diklon ke dalam direktori kami dengan nama "wunderground-sensehat." Mari kita lihat apa yang ada dalam direktori itu. Untuk menukar direktori, yang perlu anda lakukan ialah ketik "cd" dan kemudian taipkan nama direktori yang ingin anda kunjungi.

Dalam kes ini, kami akan menaip:

$ cd wunderground-sensehat

Sebaik sahaja kita tekan enter, anda akan melihat bahawa kita sekarang berada di direktori wunderground-sensehat. Mari kita ketik sekali lagi untuk melihat fail apa yang telah kita pasang pada pi.

README.md sensehat.py sensehat_wunderground.py wunderground.py

Di sini kita melihat dokumen readme kita, dan beberapa fail python yang berbeza. Mari kita lihat sensehat.py. Daripada melompat ke fail dengan perintah cd seperti yang kami lakukan untuk direktori, kami akan menggunakan perintah nano. Perintah nano membolehkan kita membuka editor teks nano di mana kita mempunyai semua kod python untuk setiap segmen projek ini. Teruskan dan taip:

$ nano sensehat.py

Di sini anda dapat melihat semua kod yang telah kami sediakan untuk anda untuk projek ini. Kami belum akan membuat perubahan pada dokumen ini, tetapi jangan ragu untuk melihat-lihat dan melihat apa yang akan kami lakukan nanti dalam tutorial ini.

Langkah 2: Keadaan Awal

Keadaan awal
Keadaan awal

Kami ingin mengalirkan semua data cuaca kami ke perkhidmatan cloud dan meminta perkhidmatan itu mengubah data kami menjadi papan pemuka yang bagus yang dapat kami akses dari komputer riba atau peranti mudah alih kami. Data kami memerlukan destinasi. Kami akan menggunakan Negeri Permulaan sebagai tujuan tersebut.

Langkah 1: Daftar untuk akaun Negeri Permulaan

Pergi ke https://www.initialstate.com/app#/register/ dan buat akaun baru.

Langkah 2: Pasang ISStreamer

Pasang modul Initial State Python ke Raspberry Pi anda: Pada prompt arahan (jangan lupa SSH ke Pi anda terlebih dahulu), jalankan arahan berikut:

$ cd / rumah / pi /

$ / curl -sSL https://get.initialstate.com/python -o - | sudo bash

Nota Keselamatan: Perintah di atas mempunyai beberapa anatomi penting yang harus diketahui pengguna.

1) Terdapat / sebelum ikal. Ini penting untuk memastikan tidak ada alias curl yang dijalankan sekiranya dibuat. Ini membantu mengurangkan risiko perintah melakukan lebih daripada yang diharapkan.

2) Perintah itu adalah perintah piped, jadi ketika berjalan, Anda memasukkan output dari skrip yang diambil dari https://get.initialstate.com/python ke perintah sudo bash. Ini dilakukan untuk mempermudah pemasangan, namun, perlu diperhatikan bahawa https penting di sini untuk membantu memastikan tidak ada manipulasi skrip pemasangan dari man-in-the-middle, terutama karena skrip dijalankan dengan hak istimewa yang tinggi. Ini adalah cara biasa untuk mempermudah pemasangan dan penyediaan, tetapi jika anda sedikit lebih berhati-hati ada beberapa alternatif yang kurang senang: anda boleh memecah perintah menjadi dua langkah dan menyiasat sendiri skrip bash yang dimuat dari perintah curl untuk memastikan itu kesetiaan ATAU anda boleh mengikuti arahan pip, anda tidak akan mendapat skrip contoh yang dihasilkan secara automatik.

Langkah 3: Buat beberapa Automagik

Selepas Langkah 2, anda akan melihat sesuatu yang serupa dengan output berikut ke skrin:

pi @ raspberrypi ~ $ / curl -sSL https://get.initialstate.com/python -o - | sudo bash

Kata Laluan: Memulakan Pemasangan Mudah ISStreamer Python!

Ini mungkin memerlukan beberapa minit untuk memasang, ambil kopi:)

Tetapi jangan lupa untuk kembali, saya akan mempunyai soalan kemudian!

Find easy_install: setuptools 1.1.6

Pip dijumpai: pip 1.5.6 dari /Library/Python/2.7/site-packages/pip-1.5.6- py2.7.egg (python 2.7)

versi utama pip: 1

versi minor pip: 5

ISStreamer dijumpai, mengemas kini …

Keperluan sudah terkini: ISStreamer di /Library/Python/2.7/site-packages Membersihkan…

Adakah anda mahu mendapatkan skrip contoh secara automatik? [y / T]

(outputnya mungkin berbeza dan memakan masa lebih lama jika anda tidak pernah memasang modul streaming Initial State Python sebelum ini)

Apabila diminta untuk mendapatkan skrip contoh secara automatik, ketik y.

Ini akan membuat skrip ujian yang dapat kita jalankan untuk memastikan bahawa kita dapat mengalirkan data ke Status Permulaan dari Pi kita. Anda akan diminta:

Di mana anda mahu menyimpan contohnya? [lalai:./is_example.py]:

Anda boleh menaip jalan tempatan khusus atau tekan enter untuk menerima lalai. Anda akan diminta untuk nama pengguna dan kata laluan yang baru anda buat semasa mendaftarkan akaun Negeri Permulaan anda. Masukkan keduanya dan pemasangan akan selesai.

Langkah 4: Kekunci Akses

Mari kita lihat contoh skrip yang telah dibuat. Jenis:

$ nano is_example.py

Pada baris 15, anda akan melihat garis yang bermula dengan streamer = Streamer (bucket_…. Garis ini membuat baldi data baru bernama "Python Stream Contoh" dan dikaitkan dengan akaun anda. Perkaitan ini berlaku kerana access_key = "…" parameter pada baris yang sama. Siri huruf dan nombor yang panjang itu adalah kunci akses akaun Negeri Permulaan anda. Sekiranya anda masuk ke akaun Negeri Permulaan di penyemak imbas web anda, klik nama pengguna anda di kanan atas, kemudian pergi ke "akaun saya", anda akan menemui kunci akses yang sama di bahagian bawah halaman di bawah "Kekunci Akses Streaming".

Setiap kali anda membuat aliran data, kunci akses itu akan mengarahkan aliran data tersebut ke akaun anda (jadi jangan bagikan kunci anda dengan siapa pun).

Langkah 5: Jalankan Contoh

Jalankan skrip ujian untuk memastikan kami dapat membuat aliran data ke akaun Negeri Permulaan anda.

Jalankan perkara berikut:

$ python is_example.py

Langkah 6: Keuntungan

Kembali ke akaun Keadaan Awal anda di penyemak imbas web anda. Baldi data baru yang disebut "Contoh Python Stream" seharusnya muncul di sebelah kiri di rak log anda (anda mungkin perlu memuat semula halaman). Klik pada baldi ini dan kemudian klik pada ikon Gelombang untuk melihat data ujian.

Anda ingin mengikuti tutorial Waves untuk membiasakan diri dengan cara menggunakan alat visualisasi data ini. Seterusnya, lihat data di Tiles untuk melihat data yang sama ini dalam bentuk papan pemuka.

Anda kini sudah bersedia untuk memulakan streaming data sebenar dari Wunderground dan banyak lagi.

Langkah 3: Rasa HAT

Rasa HAT
Rasa HAT
Rasa HAT
Rasa HAT
Rasa HAT
Rasa HAT

Sense HAT adalah papan tambahan untuk Raspberry Pi yang penuh dengan sensor, LED, dan joystick kecil. Apa yang sangat hebat mengenai tambahan kecil ini ialah pemasangan dan penggunaannya sangat mudah berkat perpustakaan Python yang hebat yang dapat anda pasangkan dengan cepat. Untuk projek ini, kami akan menggunakan sensor suhu, kelembapan, dan tekanan barometrik pada Sense HAT. Mari siapkan.

Langkah pertama dalam menggunakan Sense HAT adalah memasangnya secara fizikal ke dalam Pi anda. Dengan Pi dimatikan, pasangkan HAT seperti yang ditunjukkan dalam gambar.

Hidupkan Pi anda. Kita perlu memasang pustaka Python untuk memudahkan membaca nilai sensor dari Sense HAT. Pertama, anda perlu memastikan bahawa segala-galanya terkini pada versi Raspbian anda dengan menaip:

$ sudo apt-get kemas kini

Seterusnya, pasang perpustakaan Sense HAT Python:

$ sudo apt-get install sense-hat

Reboot Pi anda

Kami bersedia untuk menguji Sense HAT dengan membaca data sensor darinya dan menghantar data tersebut ke Status Permulaan.

Mari uji Sense HAT kami untuk memastikan semuanya berfungsi. Kami akan menggunakan skrip yang terdapat dihttps://github.com/InitialState/wunderground-sensehat/blob/master/sensehat.py. Anda boleh menyalin skrip ini ke fail di Pi anda atau mengaksesnya dari repositori Github yang kami kloning sebelumnya. Tukar ke direktori wunderground-sensehat anda dan kemudian nano ke dalam fail sensehat.py anda dengan menaip:

$ nano sensehat.py

Perhatikan pada baris pertama bahawa kita mengimport perpustakaan SenseHat ke dalam skrip. Sebelum anda menjalankan skrip ini, kami perlu menetapkan parameter pengguna kami.

# --------- Tetapan Pengguna --------- CITY = "Nashville"

BUCKET_NAME = ": partly_sunny:" + CITY + "Cuaca"

BUCKET_KEY = "sensehat"

ACCESS_KEY = "Your_Access_Key"

SENSOR_LOCATION_NAME = "Pejabat"

MINUTES_BETWEEN_SENSEHAT_READS = 0.1

# ---------------------------------

Secara khusus, anda perlu menetapkan ACCESS_KEY ke kunci akses akaun Negeri Permulaan anda. Perhatikan betapa mudahnya membaca data dari Sense HAT dalam satu baris Python (mis. Sense.get_temperature ()). Pada prompt arahan pada Pi anda, jalankan skrip:

$ sudo python sensehat.py

Pergi ke akaun Negeri Permulaan anda dan lihat baldi data baru yang dibuat oleh Sense HAT.

Sekarang, kami bersedia untuk mengumpulkan semuanya dan membuat papan pemuka cuaca hiper-tempatan kami!

Langkah 4: Papan Pemuka Cuaca Tempatan Hyper

Papan Pemuka Cuaca Hyper Local
Papan Pemuka Cuaca Hyper Local
Papan Pemuka Cuaca Hyper Local
Papan Pemuka Cuaca Hyper Local

Langkah terakhir dalam projek ini adalah dengan menggabungkan Data Cuaca dan skrip Sense HAT kami ke dalam Dashboard tunggal. Untuk melakukan ini, kita akan menggunakan Integrasi Keadaan Awal dengan Weatherstack untuk menambahkan data cuaca ke papan pemuka Sensehat yang kami buat pada langkah terakhir.

Menggunakan API Weatherstack sangat mudah. Pada masa lalu pada tutorial ini, kami meminta Anda membuat dan menjalankan skrip untuk menarik data dari api data cuaca, tetapi sejak awal tutorial ini, Initial State telah membuat Data Integrasi Marketplace. Data Integrasi Marketplace memberi anda kekuatan untuk mengakses dan streaming API ke papan pemuka Status Permulaan tanpa kod. Secara harfiah hanya beberapa klik tetikus dan BAM: data cuaca. Di Medium, saya telah menulis tutorial yang lebih mendalam mengenai cara menggunakan integrasi Weatherstack dan membuat amaran cuaca, tetapi saya akan segera menyenaraikan cara memulakannya di bawah.

Menggunakan Integrasi Weatherstack

1. Log masuk ke akaun Negeri Permulaan anda

2. Klik butang perincian pada kotak Weatherstack pada halaman integrasi. Halaman ini akan memberitahu anda semua maklumat asas mengenai integrasi dan apa yang diperlukan untuk menggunakannya. Dalam kes ini, anda hanya memerlukan poskod (atau garis lintang & garis bujur) dari lokasi yang anda ingin pantau cuaca, dan anda harus tahu unit mana yang anda mahu melihat data tersebut di (metrik, saintifik atau imperial AS).

3. Klik butang Permulaan Persediaan dan anda akan melihat mod timbul dari sebelah kanan skrin anda. Hanya ada beberapa langkah mudah yang harus diambil sebelum kita dapat mula melihat data cuaca bergulir di:

4. Beri nama pada papan pemuka baru anda. Saya menamakan milik saya Nashville Weather. Pro tip: Saya suka menggunakan emoji dalam nama papan pemuka saya untuk memberi mereka sedikit lebih banyak. Cara cepat untuk menarik emoji pada Mac ialah Ctrl + Command + Space bar. Untuk Windows tahan butang Windows dan sama ada titik (.) Atau titik koma (;). 2 5. Taipkan lokasi anda. Saya menggunakan Poskod kawasan yang ingin saya jejak, tetapi anda juga boleh meletakkan Latitud dan Bujur untuk lebih spesifik. Mudah untuk mencari garis lintang dan garis bujur kawasan anda hanya dengan pergi ke peta google, mencari tempat dan kemudian menyalin garis lintang & garis bujur dari penyemak imbas dan menempelkannya ke dalam borang. Hanya lokasi AS, UK dan Kanada yang dapat digunakan pada masa ini.

6. Pilih unit anda. Saya memilih US / Imperial kerana saya tinggal di Amerika Syarikat.

7. Pilih untuk membuat baldi baru atau kirimkan data Weatherstack anda ke baldi yang ada. Dalam tutorial ini, jika anda sudah menyiapkan Sense Hat anda untuk streaming ke Keadaan Awal (pada langkah terakhir) maka hantarkan data Weatherstack ke baldi itu.

8. Pilih sama ada anda mahu semua data yang dikirimkan oleh Weatherstack atau jika anda hanya mahu data cuaca tertentu dihantar ke papan pemuka anda. Anda boleh menghantar semua data dan mengeluarkan beberapa jubin kemudian.

9. Pilih seberapa kerap anda mahu papan pemuka anda dikemas kini dengan keadaan cuaca. Anda boleh memilih antara setiap 15 minit atau jam demi jam. Perlu diingat bahawa menghantar data setiap 15 minit memerlukan token tambahan berbanding menghantarnya setiap jam. Oleh itu, jika anda ingin menggunakan integrasi lain di pasar pada masa yang sama, maka anda mungkin mahu membuat tinjauan setiap jam. Anda boleh berhenti menghantar data dari integrasi dan memulakannya semula, atau mengubah kekerapan anda menghantar data kemudian. Walau bagaimanapun, jika anda menghentikannya dan memulakannya semula, akan ada jurang dalam data anda.

10. Klik Mula Integrasi. Sekarang anda mengalirkan data dari Weatherstack! Klik butang "Lihat di Aplikasi IoT" untuk melihat titik data pertama dilancarkan.

11. Sesuaikan papan pemuka anda. Sekiranya anda melakukan streaming ke keranjang baru, kami telah menyediakan templat untuk anda memulakannya. Walau bagaimanapun, anda harus menjadikannya milik anda sendiri! Tekan anak panah ke bawah di tengah atas papan pemuka anda untuk menurunkan garis masa, klik Edit Jubin, gerakkan beberapa jubin di sekitar, ubah saiznya dan ubah latar belakang. Jadikan papan pemuka dengan cara yang anda inginkan sehingga mudah bagi anda untuk mengambil data yang ingin dikumpulkan. Anda juga boleh menggunakan templat Weatherstack lain yang kami buat untuk anda di sini. Untuk menambahkan lebih banyak konteks ke papan pemuka anda, anda juga dapat menambahkan peta yang menunjukkan lokasi di mana anda memantau cuaca. Papan pemuka anda mungkin kelihatan sedikit kosong pada mulanya, tetapi berikan sedikit masa dan ia akan dipenuhi dengan data cuaca bersejarah yang indah.

Langkah 5: Tambahkan Peta ke Papan Pemuka Anda (Bonus)

Tambahkan Peta ke Papan Pemuka Anda (Bonus)
Tambahkan Peta ke Papan Pemuka Anda (Bonus)
Tambahkan Peta ke Papan Pemuka Anda (Bonus)
Tambahkan Peta ke Papan Pemuka Anda (Bonus)
Tambahkan Peta ke Papan Pemuka Anda (Bonus)
Tambahkan Peta ke Papan Pemuka Anda (Bonus)

Kami dapat menambahkan jubin peta dengan mudah ke papan pemuka kami yang menunjukkan lokasi aliran cuaca kami. Anda boleh mengetahui lebih lanjut mengenai paparan peta interaktif dalam jubin https://https://support.initialstate.com/knowledgebase/articles/800232-tiles-map-view. Kami hanya boleh menambah pernyataan streamer.log baru dalam skrip Python kami (dan saya akan menerangkan bagaimana anda boleh melakukannya pada akhir bahagian ini). Sebagai gantinya, kami akan mengambil kesempatan ini untuk menunjukkan cara yang berbeza untuk menghantar data ke papan pemuka anda.

Langkah 1: Dapatkan Koordinat Lintang / Bujur Lokasi Anda

Anda perlu mendapatkan koordinat garis lintang / garis bujur lokasi anda. Salah satu cara untuk melakukannya adalah dengan pergi ke Peta Google, mencari lokasi anda, dan memperbesar lokasi anda yang tepat. Dalam URL, anda akan melihat koordinat garis lintang / garis bujur anda. Dalam contoh di atas, koordinat saya ialah 35.925298, -86.8679478.

Salin koordinat anda (anda memerlukannya pada langkah 2), dan pastikan anda tidak menyalin watak tambahan dari URL secara tidak sengaja.

Langkah 2: Bina URL untuk Menghantar Data ke Papan Pemuka Anda

Klik pada pautan "tetapan" di bawah nama baldi di rak baldi. Ini akan memaparkan skrin di atas. Salin teks di bahagian Titik Akhir API dan tampal di editor teks kegemaran anda. Kami akan menggunakannya untuk membina URL yang dapat kami gunakan untuk menghantar data ke dalam baldi dan papan pemuka yang ada. Dalam baldi saya, teks yang saya salin kelihatan seperti: https://groker.initialstate.com/api/events?accessKey=bqHk4F0Jj4j4M4CrhJxEWv6ck3nfZ79o&bucketKey=shwu1 URL anda akan mempunyai aksesKey dan bucketKey anda. Kita perlu menambahkan nama dan nilai aliran ke parameter URL untuk melengkapkan URL.

Tambahkan "& MapLocation = YOUR_COORDINATES_FROM_STEP1" ke URL anda

(masukkan koordinat dari Langkah 1, tanpa ruang dan jangan salin milik saya !!)

Inilah rupa saya: https://groker.initialstate.com/api/events?accessKey=bqHk4F0Jj4j4M4CrhJxEWv6ck3nfZ79o&bucketKey=shwu1&MapLocation=35.925298, -86.8679478

Tampal URL lengkap anda ke bar alamat penyemak imbas anda dan tekan enter (atau gunakan perintah 'curl' pada prompt arahan) untuk menghantar koordinat peta anda ke aliran, "MapLocation", di keranjang baru anda.

Sekiranya anda melihat papan pemuka anda di Tiles sekarang (anda mungkin perlu menyegarkan diri jika anda tidak sabar), Tile baru bernama MapLocation seharusnya kelihatan diperbesar ke lokasi anda sekarang.

Langkah 2 Alternatif: Ubah Skrip Anda

Sekiranya anda benar-benar tidak menyukai Langkah 2 di atas, anda boleh menambahkan pernyataan streamer.log yang lain ke skrip Python anda. Cukup tambah baris

streamer.log ("MapLocation", "YOUR_COORDINATES_FROM_STEP1")

di suatu tempat di dalam def main (): fungsi skrip sensehat_wunderground.py (perhatikan lekukan b / c Python menghendaki anda mengikuti peraturan lekukan yang ketat). Sebagai contoh, saya menambah streamer.log ("MapLocation", "35.925298, -86.8679478") tepat selepas baris 138.

Langkah 6: Memperbaiki Bacaan Suhu Topi Sense

Memperbaiki Bacaan Suhu Topi Sense
Memperbaiki Bacaan Suhu Topi Sense
Memperbaiki Bacaan Suhu Topi Sense
Memperbaiki Bacaan Suhu Topi Sense
Memperbaiki Bacaan Suhu Topi Sense
Memperbaiki Bacaan Suhu Topi Sense

Anda mungkin menyedari bahawa bacaan suhu Sense HAT anda kelihatan agak tinggi - itu kerana ia berlaku. Pelakunya adalah haba yang dihasilkan dari CPU Pi yang memanaskan udara di sekitar Sense HAT ketika duduk di atas Pi.

Untuk menjadikan sensor suhu berguna, kita perlu menjauhkan HAT dari Pi (yang akan menghilangkan faedah penting menjadi penyelesaian padat) atau cuba menentukur bacaan sensor suhu. CPU adalah penyebab utama haba parasit mempengaruhi sensor suhu kita, jadi kita perlu mengetahui korelasi. Ketika meninjau Enviro pHAT untuk Pi Zero, kami membuat persamaan untuk memperhitungkan suhu CPU yang mempengaruhi pembacaan suhu topi. Kami hanya memerlukan suhu CPU dan faktor skala untuk mengira suhu yang dikalibrasi:

temp_calibrated = temp - ((cpu_temp - temp) / FAKTOR)

Kita dapat mencari faktornya dengan mencatat suhu sebenar dan menyelesaikannya. Untuk mengetahui suhu sebenar di dalam bilik, kami memerlukan penyediaan sensor suhu yang berbeza. Dengan menggunakan sensor DHT22 (arahan persediaan di sini dan skrip di sini), kami dapat merakam dan memvisualisasikan kedua-dua suhu secara serentak:

Hasilnya menunjukkan bahawa bacaan Sense HAT dimatikan sebanyak 5-6 darjah Fahrenheit dengan cukup konsisten. Menambah suhu CPU ke dalam campuran (dengan skrip ini), yang pertama menunjukkan bahawa ia sangat panas, dan yang kedua mendedahkan semacam gelombang yang ditiru oleh pengukuran Sense HAT.

Setelah merakam selama kira-kira 24 jam, saya menyelesaikan faktor tersebut dengan menggunakan enam bacaan berbeza pada enam titik yang berbeza dalam satu masa. Rata-rata nilai faktor memberikan nilai faktor akhir 5.466. Mengaplikasikan persamaan

temp_calibrated = temp - ((cpu_temp - temp) /5.466)

suhu yang dikalibrasi mencapai satu darjah bacaan suhu sebenar:

Anda boleh menjalankan pembetulan penentukuran ini pada Pi itu sendiri, di dalam skrip wunderground_sensehat.py.

Langkah 7: Bonus: Konfigurasikan Makluman Cuaca Anda Sendiri

Bonus: Konfigurasikan Makluman Cuaca Anda Sendiri
Bonus: Konfigurasikan Makluman Cuaca Anda Sendiri
Bonus: Konfigurasikan Makluman Cuaca Anda Sendiri
Bonus: Konfigurasikan Makluman Cuaca Anda Sendiri

Mari buat amaran SMS setiap kali suhu turun di bawah suhu beku.

Kami akan mengikuti proses penyediaan pemberitahuan Pencetus yang dijelaskan di halaman sokongan.

Pastikan baldi data cuaca anda dimuat.

Klik pada tetapan baldi di rak data (di bawah namanya).

Klik pada tab Pencetus.

Pilih aliran data yang akan dicetuskan (anda boleh menggunakan senarai drop-down untuk memilih dari aliran yang ada setelah baldi data dimuat atau anda boleh memasukkan nama / kunci aliran secara manual; * perhatikan Safari tidak menyokong senarai drop-down HTML5). Dalam tangkapan skrin contoh saya di atas, saya memilih Suhu (F).

Pilih operator bersyarat, dalam kes ini '<'.

Pilih nilai Pencetus yang akan mencetuskan tindakan (taipkan nilai yang diinginkan secara manual). Dalam kes ini, taipkan 32 seperti yang ditunjukkan di atas.

Klik butang '+' untuk menambah keadaan Pencetus.

Pilih tindakan (tindakan semasa yang tersedia diberitahu melalui SMS atau e-mel).

Klik butang '+' untuk menambahkan tindakan. Masukkan sebarang kod pengesahan jika menambahkan nombor telefon atau e-mel baru untuk menyelesaikan persediaan.

Pencetus anda kini disiarkan dan akan dipadamkan apabila syaratnya dipenuhi. Klik selesai untuk kembali ke skrin utama.

SMS PIR

Apabila suhu turun di bawah 32, anda akan mendapat pesanan teks. Anda menetapkan amaran pada apa sahaja di baldi data cuaca anda (* perhatikan bahawa anda perlu menggunakan token emoji, bukan emoji sebenarnya).

Contohnya, setiap kali hujan

: awan: Keadaan Cuaca =: payung:

Bila-bila masa berangin

: dash: Kelajuan Angin (MPH)> 20

dan lain-lain.

Langkah 8:

Peraduan Internet of Things 2016
Peraduan Internet of Things 2016
Peraduan Internet of Things 2016
Peraduan Internet of Things 2016

Hadiah Kedua dalam Peraduan Internet of Things 2016

Disyorkan: