Isi kandungan:
Video: ESP32 Scraper-parser-mailer dan Live Mapper: 4 Langkah (dengan Gambar)
2024 Pengarang: John Day | [email protected]. Diubah suai terakhir: 2024-01-30 11:07
Hai dunia! Ini adalah Instructable pertama saya! Saya Marco dari Grosseto Itali, saya bukan pemaju, saya bukan jurutera elektronik tetapi saya panduan alam sekitar di taman semula jadi tempatan kami (taman semula jadi Maremma).
Di koperasi saya, kami banyak bekerjasama dengan lawatan kanu, lawatan naturalistik dan tenang di sungai Ombrone untuk menonton burung dan sedikit rasa santai.
Tetapi sungai Ombrone juga terkenal dengan jenis alirannya yang khas: dari musim panas "sifar" hingga aliran musim luruh-musim sejuk beberapa ribu meter padu air per jam.
Atas sebab ini, sungai Ombrone sentiasa dipantau oleh perkhidmatan hidrometrik wilayah (SIR) yang sangat baik, dengan laman web hebat yang menjadikan data yang dikumpulkan tersedia.
Sekarang kita menunggu akhir musim dan banjir musim luruh pertama untuk membuang dermaga dan sampan…
Tetapi apabila kita mula bercakap mengenai mengikis mengurai esp32ing dll? satu saat lagi
Semasa penutupan bahasa Itali, saya telah melakukan pelajaran arduino blink pertama, sejuk… dan saya telah bersambung untuk bermain-main dengan sensor dan arduino C. Oleh itu, jika anda mendapati kod saya kasar atau penuh dengan jurang logik yang tidak masuk akal pertimbangkan ini!
Saya melakukan banyak perkara hanya untuk membuang masa tetapi dengan risiko banjir yang berterusan ini, saya memutuskan untuk melakukan sesuatu yang menarik: terima kasih kepada ESP32 dengan faktor bentuk arduino (Wemos d1 r32) yang saya teruskan berbulan-bulan kerana saya fikir "sukar", Saya benar-benar mendapat banyak kepuasan:
Saya telah melakukan pengikis yang membawa dan menghuraikan data dari laman web SIR dan memaparkan pemboleh ubah yang diperoleh pada LCD i2c yang murah, dan ketika frekuensi kecerahan berkedip pada beberapa petunjuk pada peta yang realistik.
jadi jika banjir datang dari sisi gunung saya akan diberi amaran oleh peningkatan kecerahan (perubahan tahap) dan oleh peningkatan frekuensi (perubahan tahap dalam satu jam) lampu di peta … tetapi ESP32 juga dapat menghantar e-mel! Jadi mengapa tidak melakukan fungsi untuk ini?
mari lihat kod di bawah sekarang!
Bekalan
- Papan berasaskan ESP32: Saya telah menggunakan Wemos d1 r32 kerana mempunyai pin wanita dan lebih mudah dikendalikan
- led, merah lebih "waspada seperti"
- I2C 16x2 LCD iv'e hanya berwarna biru tetapi hijau lebih bergaya
- papan gabus murah
- waktu malam (pilihan)
Langkah 1: Kodnya
secara dalam talian saya hanya menemui tutorial wapourous yang menggunakan laman web luaran untuk menghuraikan data, jadi saya cuba menguji kekuatan inti esp32 yang menguraikan data secara langsung di papan… tanpa masalah!
jadi jika anda melihat sumber halaman SIR dapat memahami cara kerjanya: mujurlah mereka menggunakan nilai "dipisahkan seperti koma" untuk memaparkan data mereka, jadi dengan kod ini saya mencari stesen hidrografi (kod TOSnumber) dan mengira bilangan koma (sebagai pemisah) yang mengandungi nilai yang saya inginkan (dan menyimpannya sebagai pemboleh ubah), kemudian memetakannya semula sebagai kecerahan dipimpin dan masa dalam mil untuk "tahap variasi" berkedip
Inti pengikis ini ada di tab
ind = payload.indexOf ("TOSstation_number"); // dapatkan kedudukan (ind) dari mana mula mengira koma
Rentetan my_var = getValue_ind (muatan, ',', 8); // di mana 8 adalah sel kelapan yang ditentukan oleh koma (pemisah)
"muatan" adalah apa yang saya dapat dari web yang sebelumnya dibersihkan dari "petikan" dan "& nbsp";
dan fungsi getValue_ind yang ada di tab utama
String getValue_ind (String data, char separator, int index) {
int ditemui = 0; int strIndex = {0, -1}; int maxIndex = data.length () - 1; untuk (int i = ind; i <= maxIndex && found <= index; i ++) {// dari kedudukan ind jika (data.charAt (i) == pemisah || i == maxIndex) {found ++; strIndex [0] = strIndex [1] + 1; strIndex [1] = (i == maxIndex)? i + 1: i; }} pulangan dijumpai> indeks? data.substring (strIndex [0], strIndex [1]): ""; }
diadaptasi dari
kod meminta halaman setiap 15min, kira-kira 44Kb, saya rasa ini bukan beban besar untuk pelayan dan untuk ESP32.. Untuk mengelakkan terlalu banyak tatal, saya telah membahagikan program ini dalam pelbagai fungsi, baca komen
di sini pasta kod benar-benar berantakan … saya meletakkan fail.ino secara langsung
Saya telah menggunakan ciri tab dari arduino IDE jadi saya mempunyai fail.ino yang berbeza
ini adalah versi terbaru kod (?), ada banyak usaha, jadi saya akan menghargai sebarang cadangan!
- untuk meluruskan kecerahan dipimpin untuk nilai rendah, - untuk fungsi "peta" untuk pemboleh ubah titik terapung - untuk penggunaan teras kedua pada ESP32, - untuk memahami cara mencetak surat html dari rentetan dengan sprintfSaya menghabiskan banyak masa "nerding" yang benar jadi baca komen pada fail.ino atau di github!
sebagai tetapan muat naik saya telah menggunakan Tools: Partition Scheme: NO OTA untuk mempunyai lebih banyak ruang untuk kod besar ini
berseronok
klik di sini untuk kod di github
Langkah 2: Peta
tut ini diberikan pada kod ESP32 sehingga saya hanya dapat memberi anda beberapa kata kunci, pautan dan alat yang digunakan:
perkhidmatan terbaik untuk mengekstrak kawasan vektor dari openstreetmap
- QGis "ostic" untuk mencerna mereka
- cari jadual atribut untuk memudahkan peta anda
- buat susun atur cetakan dan eksport peta dalam format svg pada format kertas A3
- bergembiralah dengan ilustrator "lebih lancar"
- mencetaknya
Langkah 3: Pesta Lem Panas
jadi saya boleh mencadangkan untuk memotong lubang untuk lekapan dan paparan di atas kertas sebelum memasangnya di papan gabus
pendawaian benar-benar sederhana dan dan buruk dilakukan oleh saya: P
Tahap pematerian saya: Merpati
seperti yang anda dapat lihat dari kod yang dipimpin 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 memahami
Langkah 4: Produk Selesai
jadi foto ini bukanlah yang terbaik, tetapi apabila kita mendapat banjir sungai saya akan meletakkan video yang bagus!
Disyorkan:
Blinds Control Dengan ESP8266, Integrasi Laman Utama Google dan Openhab dan Kawalan Web: 5 Langkah (dengan Gambar)
Blinds Control Dengan ESP8266, Integrasi Rumah dan Openhab Google dan Kontrol Web: Dalam Instruksional ini saya menunjukkan kepada anda bagaimana saya menambah automasi pada tirai saya. Saya mahu dapat menambah dan mengeluarkan automasi, jadi semua pemasangan terpasang. Bahagian utamanya adalah: Motor stepper Driver stepper dikendalikan bij ESP-01 Gear dan pemasangan
Cara Membongkar Komputer Dengan Langkah dan Gambar yang Mudah: 13 Langkah (dengan Gambar)
Cara Membongkar Komputer Dengan Langkah dan Gambar yang Mudah: Ini arahan mengenai cara membongkar PC. Sebilangan besar komponen asas adalah modular dan mudah dikeluarkan. Walau bagaimanapun, adalah penting untuk anda mengaturnya. Ini akan membantu mengelakkan anda kehilangan bahagian, dan juga dalam membuat pemasangan semula
8 Kawalan Relay Dengan Penerima NodeMCU dan IR Menggunakan Aplikasi Jauh dan Android WiFi dan IR: 5 Langkah (dengan Gambar)
8 Kawalan Relay Dengan Penerima NodeMCU dan IR Menggunakan Aplikasi Jauh dan Android WiFi dan IR: Mengendalikan 8 suis relai menggunakan penerima nodemcu dan ir melalui aplikasi wifi dan jauh dan android. Alat kawalan jauhnya tidak bergantung pada sambungan wifi. DI SINI ADALAH KLIK VERSI YANG DIKEMASKINI SINI
Paparan Suhu dan Kelembapan dan Pengumpulan Data Dengan Arduino dan Pemprosesan: 13 Langkah (dengan Gambar)
Paparan Suhu dan Kelembapan dan Pengumpulan Data Dengan Arduino dan Pemprosesan: Pengenalan: Ini adalah Projek yang menggunakan papan Arduino, Sensor (DHT11), komputer Windows dan program Pemprosesan (boleh dimuat turun percuma) untuk memaparkan data Suhu, Kelembapan dalam digital dan borang graf bar, masa dan tarikh paparan dan jalankan waktu mengira
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. Ini adalah bacaan suhu dengan reka bentuk saya sendiri, dengan sensor ini dan