Daftar Isi:
Video: ESP32 Scraper-parser-mailer dan Live Mapper: 4 Langkah (dengan Gambar)
2024 Pengarang: John Day | [email protected]. Terakhir diubah: 2024-01-30 09:53
Halo Dunia! Ini adalah Instruksi pertama saya! Saya Marco dari Grosseto Italia, saya bukan pengembang, saya bukan insinyur elektronik tetapi saya pemandu lingkungan di taman alam lokal kami (taman alam Maremma).
Di koperasi saya, kami banyak bekerja dengan wisata kano, wisata naturalistik dan tenang di sungai Ombrone untuk mengamati burung dan sedikit bersantai.
Tetapi sungai Ombrone juga terkenal dengan jenis alirannya yang khas: dari "nol" musim panas hingga musim gugur-musim dingin, aliran beberapa ribu meter kubik air per jam.
Untuk alasan ini, sungai Ombrone terus dipantau oleh layanan hidrometrik regional (SIR) yang sangat baik, dengan situs yang fantastis yang menyediakan data yang dikumpulkan.
Sekarang kami menunggu akhir musim dan banjir musim gugur pertama untuk memindahkan dermaga dan sampan…
Tetapi ketika kita mulai berbicara tentang scraping parsing esp32ing dll? satu saat lagi
Selama penguncian Italia saya telah melakukan pelajaran berkedip arduino pertama, keren … dan saya terus bermain-main dengan sensor dan arduino C. Jadi jika Anda menemukan kode saya kasar atau penuh dengan celah logis yang tidak masuk akal, pertimbangkan ini!
Saya melakukan banyak hal hanya untuk membuang waktu tetapi dengan risiko banjir yang terus-menerus ini, saya memutuskan untuk melakukan sesuatu yang keren: berkat ESP32 dengan faktor bentuk arduino (Wemos d1 r32) yang saya bungkus selama berbulan-bulan karena saya pikir "sulit", Saya benar-benar mendapatkan banyak kepuasan:
Saya telah melakukan scraper yang membawa dan mengurai data dari halaman web SIR dan menampilkan variabel yang diperoleh pada LCD i2c murah, dan sebagai frekuensi kecerahan yang berkedip pada beberapa led pada peta realistis.
jadi jika banjir datang dari sisi gunung saya akan diperingatkan dengan meningkatnya kecerahan (perubahan level) dan dengan meningkatnya frekuensi (perubahan level dalam satu jam) dari led di peta … tetapi ESP32 juga dapat mengirim email! Jadi mengapa tidak melakukan fungsi untuk ini?
mari kita lihat kode di bawah ini sekarang!
Perlengkapan
- Papan berbasis ESP32: Saya telah menggunakan Wemos d1 r32 karena memiliki pin perempuan dan lebih mudah ditangani
- leds, merah lebih "waspada seperti"
- I2C 16x2 LCD iv'e hanya satu biru tapi hijau lebih bergaya
- papan gabus murah
- waktu malam (opsional)
Langkah 1: Kode
online saya hanya menemukan tutorial uap yang menggunakan situs eksternal untuk mengurai data, jadi saya mencoba menguji kekuatan inti esp32 yang mengurai data langsung di papan… tanpa masalah!
jadi jika Anda melihat sumber halaman SIR dapat memahami cara kerjanya: untungnya mereka menggunakan nilai "seperti dipisahkan koma" untuk menampilkan data mereka, jadi dengan kode ini saya mencari stasiun hidrografi (kode TOSnumber) dan menghitung jumlah koma (sebagai pemisah) yang berisi nilai yang saya inginkan (dan menyimpannya sebagai variabel), lalu memetakannya kembali sebagai kecerahan led dan waktu dalam milis untuk "tingkat variasi" berkedip
Inti dari scraper ini ada di tab
ind = payload.indexOf("TOSstation_number"); //dapatkan posisi (ind) dari mana mulai menghitung koma
String my_var = getValue_ind(payload, ', ', 8); // di mana 8 adalah sel kedelapan yang ditentukan oleh koma (pemisah)
"payload" adalah apa yang saya dapatkan dari web yang sebelumnya dibersihkan dari "quotations" dan " ";
dan fungsi getValue_ind yang ada di tab utama
String getValue_ind(Data string, pemisah karakter, indeks int) {
int ditemukan = 0; int strIndeks = {0, -1}; int maxIndex = data.length() - 1; for (int i = ind; i <= maxIndex && ditemukan <= index; i++) { //dari posisi ind if (data.charAt(i) == separator || i == maxIndex) { ditemukan++; strIndeks[0] = strIndeks[1] + 1; strIndex[1] = (i == maxIndex) ? saya + 1: saya; } } kembali ditemukan> indeks ? data.substring(strIndex[0], strIndex[1]): ""; }
diadaptasi dari
kode meminta halaman setiap 15 menit, itu sekitar 44Kb, saya rasa itu bukan beban besar untuk server dan untuk ESP32.. Untuk menghindari terlalu banyak pengguliran, saya telah membagi program dalam fungsi yang berbeda, baca komentar
di sini kode paste benar-benar berantakan … saya meletakkan file.ino langsung
saya telah menggunakan fitur tab dari IDE arduino jadi saya memiliki file.ino yang berbeda
ini adalah versi terbaru dari kode (?), ada banyak upaya, jadi saya akan menghargai saran apa pun!
- untuk meluruskan kecerahan led untuk nilai rendah, - untuk fungsi "peta" untuk variabel floating point - untuk penggunaan inti kedua pada ESP32, - untuk memahami cara mencetak email html dari string dengan sprintfI punya menghabiskan banyak "waktu kutu buku" yang sebenarnya, jadi bacalah komentar di file.ino atau di github!
sebagai pengaturan unggahan saya telah menggunakan Alat: Skema Partisi: TANPA OTA untuk memiliki lebih banyak ruang untuk kode besar ini
Selamat bersenang-senang
klik di sini untuk kode di github
Langkah 2: Peta
tut ini berpusat pada kode ESP32 sehingga saya hanya dapat memberi Anda beberapa kata kunci, tautan, dan alat yang digunakan:
layanan terbaik untuk mengekstrak area vektor dari openstreetmap
- QG "ostic" untuk mencernanya
- cari tabel atribut untuk menyederhanakan peta Anda
- buat tata letak cetak dan ekspor peta dalam format svg pada format kertas A3
- bersenang-senanglah dengan ilustrator yang "lebih halus"
- cetak ini
Langkah 3: Pesta Lem Panas
jadi saya dapat menyarankan untuk memotong lubang untuk led dan tampilan di atas kertas sebelum memperbaikinya di papan gabus
pengkabelan sangat sederhana dan dan buruk dilakukan oleh saya: P
Level penyolderan saya: Merpati
seperti yang Anda lihat dari kode, led pergi ke pin IO
#define LED_PIN0 14 //si#define LED_PIN1 27 //buon #define LED_PIN2 16 //sass #define LED_PIN3 17 //tur #define LED_PIN4 25 //ist #define LED_PIN5 26 //berr
cari pinout ESP32 untuk dimengerti
Langkah 4: Produk Jadi
jadi foto ini bukan yang terbaik, tetapi ketika kami mendapat banjir sungai, saya akan membuat video yang bagus!
Direkomendasikan:
Kontrol Tirai Dengan ESP8266, Integrasi Google Home dan Openhab dan Kontrol Web: 5 Langkah (dengan Gambar)
Kontrol Tirai Dengan ESP8266, Integrasi Google Home dan Openhab dan Kontrol Web: Dalam Instruksi ini saya menunjukkan kepada Anda bagaimana saya menambahkan otomatisasi ke tirai saya. Saya ingin dapat menambah dan menghapus otomatisasi itu, jadi semua instalasi adalah clip on. Bagian utama adalah: Motor stepper Driver stepper dikendalikan bij ESP-01 Gear dan pemasangan
Cara Membongkar Komputer Dengan Langkah Mudah dan Gambar: 13 Langkah (dengan Gambar)
Cara Membongkar Komputer Dengan Langkah Mudah dan Gambar: Ini adalah instruksi tentang cara membongkar PC. Sebagian besar komponen dasar bersifat modular dan mudah dilepas. Namun penting bahwa Anda diatur tentang hal itu. Ini akan membantu Anda agar tidak kehilangan bagian, dan juga dalam membuat
8 Kontrol Relay Dengan NodeMCU dan Penerima IR Menggunakan WiFi dan IR Remote dan Aplikasi Android: 5 Langkah (dengan Gambar)
8 Kontrol Relay Dengan NodeMCU dan Penerima IR Menggunakan WiFi dan IR Remote dan Aplikasi Android: Mengontrol 8 sakelar relai menggunakan nodemcu dan penerima ir melalui wifi dan ir remote dan aplikasi android.Remote ir bekerja terlepas dari koneksi wifi.INI VERSI TERBARU KLIK DI SINI
Tampilan Suhu dan Kelembaban dan Pengumpulan Data Dengan Arduino dan Pemrosesan: 13 Langkah (dengan Gambar)
Tampilan Suhu dan Kelembaban dan Pengumpulan Data Dengan Arduino dan Pemrosesan: Pendahuluan: Ini adalah Proyek yang menggunakan papan Arduino, Sensor (DHT11), komputer Windows dan program Pemrosesan (dapat diunduh gratis) untuk menampilkan data Suhu, Kelembaban dalam format digital dan bentuk grafik batang, menampilkan waktu dan tanggal dan menjalankan hitungan waktu
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 Devi Rivaldi mahasiswa UNIVERSITAS NUSA PUTRA dari Indonesia, di sini saya akan berbagi cara membuat sensor suhu menggunakan Arduino dengan Output ke LCD dan LED. Ini adalah pembaca suhu dengan desain saya sendiri, dengan sensor ini dan