pysmartweatherudp
Modul Python 2 dan 3 untuk berinteraksi melalui UDP dengan stasiun cuaca pintar dari weatherflow
Modul ini berkomunikasi dengan stasiun cuaca rumah yang cerdas dari Company Weatherflow menggunakan UDP API. Ini mengambil data cuaca saat ini dari unit terlampir. Saat ini ada tiga jenis unit:
- Udara - Unit ini mengukur suhu, kelembaban, tekanan, dan serangan petir
- Sky - Unit ini mengukur curah hujan, angin, iluminasi dan UV
- Tempest - Unit ini menggabungkan unit udara dan langit menjadi satu perangkat.
Mereka semua melekat pada hub pusat, yang menyiarkan data melalui UDP dan mengirimkan data ke database cloud yang dikelola oleh Weatherflow. Modul ini mengambil data dengan mendengarkan siaran UDP di jaringan lokal.
Ada beberapa siaran yang dikirim tergantung pada stasiun. Modul ini memproses empat siaran:
- Rapid_wind - Ini berisi kecepatan angin dan bantalan saat ini, dan diperbarui setiap 3 detik
- obs_air - Di sini kita mendapatkan suhu, kelembaban, tekanan, dan sambaran petir. Ini mengirimkan data setiap menit
- Obs_sky - Di sinilah kita mendapatkan curah hujan, angin, iluminasi dan UV. Juga disiarkan setiap menit.
- obs_st - Ini untuk badai baru semua di satu stasiun cuaca dan menggabungkan data udara/langit menjadi satu pesan yang dikirim setiap menit.
Catatan: Unit Tempest akan mengembalikan tegangan baterai di kedua sensor Skybattery dan Airbattery.
Fungsi ini dibangun secara khusus untuk digunakan dengan asisten rumah, sehingga data diformat agar sesuai dengan itu. Tetapi mungkin dengan mudah dimodifikasi untuk tujuan lain.
Fungsi
Modul ini memperlihatkan fungsi -fungsi berikut:
Swreceiver (host, port, unit)
Ini akan mengembalikan kelas data dengan semua data yang dikumpulkan dari stasiun tertentu.
tuan rumah
(String) (Opsional) Alamat IP untuk didengarkan.
Nilai default: 0.0.0.0 (semua alamat IP)
pelabuhan
(Integer) (Opsional) Port siaran untuk didengarkan. Weatherflow hanya mengirimkan data ke port 50222
Nilai default: 50222
unit
(String) (Opsional) Sistem unit untuk digunakan. Metrik atau kekaisaran
Nilai default: Metrik
Definisi kelas data
- Timestamp - Waktu Pembaruan Terakhir dalam Waktu Masa
- Suhu - Suhu saat ini. Catatan: Karena modul ini dirancang untuk digunakan dengan asisten rumah, tidak ada konversi suhu yang akan terjadi, bahkan jika unit disediakan saat memanggil modul. Suhu akan selalu menjadi Celcius.
- Feels_ Like - Bagaimana suhu terasa seperti. Kombinasi indeks panas dan angin dingin
- Heat_index - Pengukuran suhu yang menggabungkan kelembaban dan suhu. Betapa panasnya rasanya. Hanya digunakan saat suhu di atas 26,67 ° C (80 ° F)
- Wind_chill - betapa dinginnya rasanya. Hanya digunakan jika suhu di bawah 10 ° C (50 ° F)
- DewPoint - DewPoint. Suhu atmosfer (bervariasi sesuai tekanan dan kelembaban) di bawah tetesan air mulai mengembun dan embun dapat terbentuk
- wind_speed - kecepatan angin rata -rata untuk menit terakhir
- wind_speed_rapid - kecepatan angin saat ini
- wind_gust - kecepatan angin tertinggi di menit terakhir
- wind_lull - kecepatan angin terendah di menit terakhir
- Wind_beating - Bantalan angin rata -rata dalam derajat untuk menit terakhir (Contoh: 287 °)
- wind_bearing_rapid - bantalan angin saat ini dalam derajat (Contoh: 287 °)
- Wind_direction - Bantalan angin sebagai teks terarah (Contoh: NNW)
- Curah hujan - curah hujan sejak tengah malam. Karena sifat data UDP, angka ini dihitung dalam memori. Jadi jika modul restart, konter kembali ke 0. Sayangnya tidak mungkin untuk mengejar data setelah restart
- presipitasi_rate - laju curah hujan saat ini - 0 jika tidak hujan
- Kelembaban - Kelembaban Saat Ini dalam %
- Tekanan - Tekanan barometrik saat ini, mempertimbangkan posisi stasiun
- UV - Indeks UV
- Solar_radiation - Radiasi matahari saat ini diukur dalam W/m2
- Illuminance - Menunjukkan kecerahan dalam lux
- Lightning_count - menunjukkan jumlah serangan kilat untuk menit terakhir.
- Airbattery - Tegangan arus unit udara
- Skybattery - Tegangan arus dari unit langit