Daftar Isi:

Ekstensi Sensor Nodemcu ESP8266 untuk Weewx: 8 Langkah (dengan Gambar)
Ekstensi Sensor Nodemcu ESP8266 untuk Weewx: 8 Langkah (dengan Gambar)

Video: Ekstensi Sensor Nodemcu ESP8266 untuk Weewx: 8 Langkah (dengan Gambar)

Video: Ekstensi Sensor Nodemcu ESP8266 untuk Weewx: 8 Langkah (dengan Gambar)
Video: Review PZEM-004T with Arduino ESP32 ESP8266 Python & Raspberry Pi : PDAControl 2024, Juli
Anonim
Sensor Ekstensi Nodemcu ESP8266 untuk Weewx
Sensor Ekstensi Nodemcu ESP8266 untuk Weewx

Ini adalah instruksi untuk menambahkan Sensor ke perangkat lunak stasiun cuaca weewx.

Jika Anda belum weewx, Anda dapat mempelajari beberapa hal dalam tutorial ini.

Anda memerlukan pengetahuan dasar tentang kode Arduino dan cara mengunggah di perangkat.

Anda menemukan informasi weewx di sini:

Apa yang Anda bangun adalah 2 Perangkat:

1 Perangkat mengirim Suhu dan Kelembaban ke perangkat lunak weewx.

1 Perangkat mengirim Suhu Tanah dari kedalaman tanah yang berbeda ke perangkat lunak weewx.

Perangkat pertama kami adalah sensor BME 280.

Perangkat kedua kami adalah rantai 3 sensor Temperatur DS18B20. (Anda dapat menambahkan lebih banyak jika Anda suka).

Ayo mulai:

Langkah 1: Yang Anda Butuhkan…

Apa yang kau butuhkan…
Apa yang kau butuhkan…
Apa yang kau butuhkan…
Apa yang kau butuhkan…
Apa yang kau butuhkan…
Apa yang kau butuhkan…

Weewx aktif dan berjalan + akses ke server weewx. (misalnya raspberry PI 3).

2 modul Nodemcu ESP8266

3 atau lebih Sensor DS18B20

1 Sensor kombo BME 280

1 Pipa aluminium atau sejenisnya dengan diameter 10mm dan ketebalan dinding 1mm dan ca. Panjang 1 Meter

1 Kasing tahan air dengan kelenjar kabel dan mur pengunci.

1 Sumber daya 5V (Misalnya loader seluler).

Beberapa kabel dan barang solder.

Anda menemukan sensor BME280 dan modul Nodemcu di ebay.

Untuk pipa Aluminium saya memilih toko perangkat keras lokal

Untuk casing DS18B20 dan waterproof saya menggunakan www.reichelt.de

www.reichelt.de/DS-18B20/3/index.html?ACTI…

www.reichelt.de/EL-FK-110/3/index.html?ACT…

dan kelompok kelenjar kabel dengan mur pengunci

www.reichelt.de/Kabelverschraubungen-Bopla…

Untuk bme280 Anda dapat menggunakan kaleng bercabang secara opsional

www.reichelt.de/Installationsmaterial/EL-D…

Langkah 2: Mulai Dengan Pengaturan Perangkat Keras Sensor BME 280

Mulai Dengan Pengaturan Perangkat Keras Sensor BME 280
Mulai Dengan Pengaturan Perangkat Keras Sensor BME 280

Solder strip di BME280.

Kemudian kabel BME ke Nodemcu:

BME VIN ke 3.3V

BME GND ke GND

SCL ke D4

SDA ke D3

Jika Anda suka, Anda dapat memasukkan Perangkat ke dalam wadah, tetapi pastikan bahwa ada beberapa lubang di dalam wadah, sehingga nilai kelembaban dan suhu benar.

Langkah 3: Kode BME 280 Nodemcu ESP8266

Kode BME 280 Nodemcu ESP8266
Kode BME 280 Nodemcu ESP8266
Kode BME 280 Nodemcu ESP8266
Kode BME 280 Nodemcu ESP8266
Kode BME 280 Nodemcu ESP8266
Kode BME 280 Nodemcu ESP8266

Untuk kode, Anda dapat menggunakan repositori github saya:

github.com/Landixus/BME280_TO_SERVER_WEEWX

File ino membutuhkan beberapa sisipan dari Anda:

Alamat IP server atau URL weewx Anda

dan rute tempat Anda memiliki file php, pastikan area tersebut dapat ditulis.

saya memilih dir public_html karena ini adalah server rumah.

jika Anda ingin mengkloning repositori git, dan telah menginstal git di server Anda, Anda dapat mengkloning dengan perintah:

"git clone"https://github.com/Landixus/BME280_TO_SERVER_WEEWX"

Sekarang kita perlu melakukan beberapa hal di server weewx kita.

Anda perlu membuat jalur ke pengaturan Anda!

di dalam

/home/weewx/public_html

buat folder datanya

di folder data buat bme.txt misalnya dengan:

nano bme.txt

file harus kosong.

membuatnya dapat ditulis dengan:

chmod -R 777 bme.txt

(Anda tidak pernah melakukan ini di server yang dapat diakses internet!)

dalam folder

/home/weewx/public_html

Anda meletakkan bme.php dari repo github saya.

Caranya adalah file INO mengirim nilai ke bme.php dan bme.php menulis data di bme.txt

Selanjutnya kita perlu menambahkan layanan di weewx

letakkan bme.py di folder

/home/weewx/bin/pengguna

buka weewx.conf Anda di folder

/rumah/weewx

itu selalu baik untuk memiliki cadangan sebelum mengedit file ini!

turun ke Line Engine dan buat garis terlihat seperti milik saya:

[Mesin]

# Bagian ini menentukan layanan yang harus dijalankan. Mereka

# dikelompokkan berdasarkan jenis, dan urutan layanan dalam setiap grup

# menentukan urutan layanan yang akan dijalankan.

data_services = user.pond. PondService, user.bme.bme

mulai ulang weewx dengan:

sudo /etc/init.d/weewx stop

sudo /etc/init.d/weewx start

dengan perintah

tail -f /var/log/syslog

anda dapat melihat di file log untuk kesalahan atau keberhasilan, cari output bme: found value of…

Berikan server Anda beberapa menit untuk menghasilkan, di weewx.conf "saya" setiap 5 menit muncul sebuah output.

Jika Anda memiliki pesan kesalahan, periksa jalur Anda.

Jika Anda memiliki nilai, Anda dapat menunjukkannya di halaman web:

buka skin.conf di

/home/weewx/skins/Standar

pergi ke:

# Yang ini mungkin khusus untuk stasiun saya! tambahkan

extraTemp3 = BME1 SuhuextraHumid1 = BME1 Kelembaban

simpan file dan buka di folder yang sama

index.html.tmpl

mencari garis:

#jika $hari.extraTemp..

#berakhir jika

setelah #end pertama jika Anda menemukan, letakkan Sensor BME Anda dengan:

^^ maaf tapi tidak mungkin untuk menempatkan ini sebagai teks:(simpan file dan keluar.

tidak perlu me-restart weewx.

Sekarang Anda perlu memberi makan NODEMCU ESP8266 dengan file Arduino.

Jangan lupa untuk mengatur wifi dan alamat Anda di file.

Setelah memuat periksa output serial untuk kesalahan.

Setelah beberapa saat, Anda akan melihat nilai di situs web weewx Anda.

Langkah 4: Sukses Perangkat Sensor BME280 + Pemecahan Masalah

Sukses Perangkat Sensor BME280 + Pemecahan Masalah
Sukses Perangkat Sensor BME280 + Pemecahan Masalah
Sukses Perangkat Sensor BME280 + Pemecahan Masalah
Sukses Perangkat Sensor BME280 + Pemecahan Masalah

Beberapa tips untuk Anda:

Buka lebih dari 1 konsol melalui dempul

di 1 konsol buat perubahan Anda, dan di konsol lain baca syslog Anda secara langsung dengan:

tail -f /var/log/syslog

Jika Anda memiliki kesalahan, lihat file log Anda terlebih dahulu.

Output Anda akan terlihat mirip dengan milik saya:

Langkah 5: Pengaturan Perangkat Keras Sensor Tanah

Pengaturan Perangkat Keras Sensor Tanah
Pengaturan Perangkat Keras Sensor Tanah
Pengaturan Perangkat Keras Sensor Tanah
Pengaturan Perangkat Keras Sensor Tanah
Pengaturan Perangkat Keras Sensor Tanah
Pengaturan Perangkat Keras Sensor Tanah

Untuk Sensor DS18B20 kita perlu membuat Sistem bus dengan beberapa kabel dan solder.

Periksa DS18B20 Anda

DATA, GND, VCC

Antara VCC dan DATA Anda memerlukan Resistor 4.7K. Cukup jika Anda memiliki resistor di DS18B20. pertama

DS18B20 lainnya sejajar satu sama lain.

Ukur panjang untuk kebutuhan Anda. Solder rantai bersama-sama, saya telah mengamankan pin dengan tabung menyusut.

Untuk TEST Anda menghubungkan DATA ke D3 dan VCC ke VCC(3.3V) dan GND ke GND.

Untuk opsi tidur nyenyak, Anda perlu memasang jembatan antara RST dan D0 (GPIO16)

Anda tidak harus meletakkan rantai di tabung Aluminium sekarang, lakukan tes Anda sebelumnya!

Langkah 6: Kode DS18B20 Nodemcu ESP8266

Kode DS18B20 Nodemcu ESP8266
Kode DS18B20 Nodemcu ESP8266

Untuk kode, Anda dapat menggunakan repositori GITHUB saya:

github.com/Landixus/multipleDS18B20WeeWX

Juga file ino memerlukan beberapa sisipan dari Anda: Alamat IP server atau URL weewx Anda dan rute tempat Anda meletakkan file php, pastikan area tersebut dapat ditulisi saya memilih dir public_html karena ini adalah server rumah.

Jika Anda ingin mengkloning repositori git dan menginstal git di server Anda, Anda dapat mengkloning dengan perintah git clone

Sekarang kita perlu melakukan beberapa hal yang semuanya berfungsi di server weewx kita.

Anda perlu membuat jalur ke pengaturan Anda di

/home/weewx/public_html

buat folder "data" di folder data buat ds18b20.txt misalnya nano ds18b20.txt maka txt harus kosong. membuatnya dapat ditulis dengan chmod -R 777 ds18b20.txt (Anda tidak pernah melakukan ini pada server yang dapat diakses internet!) di folder /home/weewx/public_html Anda meletakkan ground.php dari perwakilan github saya. Caranya adalah file INO mengirim nilai ke ground.php dan ground.php menulis data di ds18b20.txt selanjutnya kita perlu menambahkan layanan di weewx letakkan ds18b20.py di folder /home/weewx/bin/ pengguna

buka weewx.conf Anda di folder /home/weewx

itu selalu baik untuk memiliki cadangan sebelum mengedit file ini!

turun ke baris:

[Mesin]

# dikelompokkan berdasarkan jenis, dan urutan layanan dalam setiap grup

# menentukan urutan layanan yang akan dijalankan.

prep_services = weewx.engine. StdTimeSynch, data_services = user.pond. PondService, user.bme.bme, user.ds18b20.ds18b20 tambahkan inline setelah koma

"user.ds18b20.ds18b20" akan terlihat seperti baris atas^^

mulai ulang weewx dengan:

sudo /etc/init.d/weewx stop

sudo /etc/init.d/weewx start

dengan perintah tail -f /var/log/syslog Anda dapat melihat di logfile untuk kesalahan atau sukses mencari output ds18b20: menemukan nilai Beri server Anda beberapa menit untuk menghasilkan, di weewx.conf saya setiap 5 menit keluar taruh. Jika Anda memiliki pesan kesalahan, periksa jalur Anda. Jika Anda memiliki nilai, Anda dapat menunjukkannya di halaman: buka

skin.conf di /home/weewx/skins/Standard pergi ke:

# Yang ini mungkin khusus untuk stasiun saya!

Menambahkan

tanahTemp1 = DS18B201

tanahTemp2 = DS18B202

tanahTemp3 = DS18B203

simpan file dan buka di folder yang sama index.html.tmpl cari baris:

#jika $day.extraTemp.. …

#berakhir jika

setelah #end pertama jika Anda menemukan, letakkan Sensor GroundSensor Anda dengan:

^^ maaf tapi tidak mungkin untuk menempatkan ini sebagai teks:(simpan file dan keluar. tidak perlu me-restart weewx. Sekarang Anda perlu memberi makan NODEMCU ESP8266 dengan file Arduino.

Jangan lupa untuk mengatur wifi dan alamat Anda di file. Setelah memuat periksa output serial untuk kesalahan.

Setelah beberapa saat, Anda akan melihat nilai di situs web weewx Anda.

Langkah 7: Sukses Soilsensor dan Pemecahan Masalah

Sukses Soilsensor dan Pemecahan Masalah
Sukses Soilsensor dan Pemecahan Masalah

Jika Anda memiliki semua yang berfungsi dan melihat nilainya, maka pergilah ke luar dan letakkan pipa Aluminium di tanah.

Cara yang baik adalah dengan menempatkan lem panas di 1 sisi pipa dan kemudian tekan tabung bersama-sama, maka Anda memiliki bagian atas yang bagus untuk membuatnya lebih mudah di tanah.

Letakkan dulu pipa Anda di tanah, Anda bisa memalu lembut dengan papan kayu.

Jika pipa cukup dalam, Anda dapat memasukkan rantai ds18b20 dan kabel daya ke dalam kotak tahan air.

Pastikan wifi Anda berfungsi di tempat ini!

Jika Anda tidak tahu seberapa dalam sensor itu, ada 2 kemungkinan.

Saya menguji fase menempatkan 1 ds18b20 di antara jari Anda, suhunya lebih tinggi untuk yang satu ini.

Ketika pipa sudah di tanah maka normaly adalah nilai tertinggi titik terdalam.

Langkah 8: Selesai

Menyelesaikan
Menyelesaikan

Hanya akhir

Posting pertanyaan Anda dan tunjukkan suhu tanah Anda di komentar!

Untuk bantuan lebih lanjut, bergabunglah dengan weewx google Groups di:

groups.google.com/forum/#!forum/weewx-user

Direkomendasikan: