Mundarija:
- Ta'minotlar
- 1 -qadam: Kod
- 2 -qadam: xarita
- 3 -qadam: Issiq yopishqoq partiyasi
- 4 -qadam: Tayyor mahsulot
Video: ESP32 qirg'ich-tahlilchi-pochta jo'natuvchisi va Live Mapper: 4 qadam (rasmlar bilan)
2024 Muallif: John Day | [email protected]. Oxirgi o'zgartirilgan: 2024-01-30 13:23
Salom Dunyo! Bu mening birinchi ko'rsatma! Men Grosseto Italiyadan bo'lgan Marko'man, men dasturchi emasman, elektron muhandis emasman, lekin men mahalliy tabiiy bog'imizda (Maremma tabiiy bog'i) atrof -muhit bo'yicha qo'llanma.
Mening kooperativimizda biz kanoeda ekskursiyalar, Ombrone daryosida tabiiy va sokin sayohatlar, qushlarni kuzatish va biroz hordiq chiqarish uchun ishlaymiz.
Ammo Ombrone daryosi o'ziga xos oqim turi bilan ham mashhur: yozdan "noldan" kuz-qishgacha soatiga bir necha ming kubometr suv oqadi.
Shu sababli, Ombrone daryosi ajoyib mintaqaviy gidrometrik xizmat (SIR) tomonidan doimiy ravishda kuzatib boriladi, bu ajoyib sayt bilan to'plangan ma'lumotlarni taqdim etadi.
Endi biz mavsum tugashini va birinchi kuzgi suv toshqinlarini kutmoqdamiz, bort va kanolarni olib tashlash uchun …
Ammo esp32ing va boshqalarni ajratish haqida gapira boshlaganimizda? yana bir lahza
Italiyani blokirovka qilish paytida men birinchi arduino miltillash darsini o'tkazdim, salqin … va men sensorlar va arduino C bilan o'ynashni davom ettirdim, shuning uchun agar siz mening kodimni qo'pol yoki bema'nilik mantiqiy bo'shliqlarga to'la deb hisoblasangiz, buni ko'rib chiqing!
Men vaqtni behuda sarflash uchun ko'p ish qildim, lekin men doimo suv toshqini xavfi ostida qandaydir ajoyib ishni qilishga qaror qildim: "qiyin" deb o'ylaganim uchun bir necha oylar davomida o'ralgan arduino formali ESP32 (Wemos d1 r32) tufayli., Men haqiqatan ham juda ko'p qoniqishlarga ega bo'ldim:
Men SIR veb-sahifasidan ma'lumotlarni olib keladigan va tahlil qiladigan, i2c LCD displeyida olingan o'zgaruvchilarni ko'rsatadigan va haqiqiy xaritada ba'zi LEDlarda yorqinlik chastotasi yonib turadigan qirg'ichni qildim.
agar tog 'tomondan suv toshqini kelsa, men xaritadagi LEDlarning yorqinligi (darajadagi o'zgarish) va chastotaning oshishi (bir soat ichida darajaning o'zgarishi) bilan ogohlantirilaman … lekin ESP32 elektron pochta xabarlarini ham yuborishi mumkin! Xo'sh, nima uchun bu vazifani bajarmaysiz?
Endi quyidagi kodni ko'rish uchun boramiz!
Ta'minotlar
- ESP32 asosidagi taxtasi: Men Wemos d1 r32 ni ishlatganman, u erda ayol pinlari bor va ularni boshqarish osonroq
- Led, qizil rang "ogohroq" kabi
- I2C 16x2 LCD faqat ko'k rangga ega, lekin yashil rang yanada zamonaviy
- arzon mantar taxtasi
- tungi vaqt (ixtiyoriy)
1 -qadam: Kod
Internetda men faqat tashqi saytlarni ma'lumotlarni tahlil qilish uchun ishlatadigan bug'li darsliklarni topdim, shuning uchun men ma'lumotlarni to'g'ridan -to'g'ri taxtada tahlil qiladigan esp32 yadrolarining kuchini sinab ko'rishga harakat qildim … muammosiz!
Shunday qilib, agar siz SIR sahifasining manbasini ko'rsangiz, u qanday ishlashini tushunishi mumkin: Yaxshiyamki, ular o'z ma'lumotlarini ko'rsatish uchun "vergul bilan ajratilgan" kabi qiymatlardan foydalanadilar, shuning uchun men ushbu kod bilan gidrografik stantsiyani (TOSnumber kodi) qidiraman va vergullar sonini hisoblayman (ajratuvchi sifatida) kerakli qiymatni o'z ichiga oladi (va uni o'zgarmaydigan qilib saqlang), keyin uni "o'zgaruvchanlik darajasi" yonib -o'chib turadigan milisaniyadagi LED yorqinligi va vaqti sifatida qayta o'rnating.
Ushbu qirg'ichning yadrosi http tabida:
ind = payload.indexOf ("TOSstation_number"); // vergulni sanashni boshlagan joyni (ind) oling
String my_var = getValue_ind (yuk, ',', 8); // bu erda 8 - vergul bilan belgilangan sakkizinchi katak (ajratuvchi)
"foydali yuk" - bu ilgari "tirnoq" va "& nbsp" dan tozalangan Internetdan oladigan narsam;
va asosiy oynada joylashgan getValue_ind funktsiyasi
String getValue_ind (String ma'lumotlari, char ajratuvchi, int indeksi) {
int topildi = 0; int strIndex = {0, -1}; int maxIndex = data.length () - 1; for (int i = ind; i <= maxIndex && found <= index; i ++) {// ind holatdan, agar (data.charAt (i) == ajratuvchi || i == maxIndex) {topilgan ++; strIndex [0] = strIndex [1] + 1; strIndex [1] = (i == maxIndex)? i + 1: i; }} qaytish topildi> indeks? data.substring (strIndex [0], strIndex [1]): ""; }
stackoverflow.com/a/14824108 dan moslashtirilgan
kod har 15 daqiqada sahifani so'raydi, bu taxminan 44 Kb, menimcha, serverlar va ESP32 uchun katta yuk emas. Men juda ko'p aylanmaslik uchun dasturni turli funktsiyalarga ajratdim, sharhlarni o'qing.
bu erda kodni joylashtirish chindan ham tartibsizlikdir..ino fayllarini to'g'ridan -to'g'ri qo'yaman
Men arduino IDE yorliqlari xususiyatidan foydalandim, shuning uchun menda turli.ino fayllari bor
bu kodning oxirgi versiyasi (?), ko'p harakat bor, shuning uchun har qanday taklifni qadrlayman!
- past qiymatlar uchun LED yorqinligini to'g'rilash uchun, - o'zgaruvchan nuqta o'zgaruvchilari uchun "xarita" funktsiyasi uchun - ESP32 -dagi ikkinchi yadrodan foydalanish uchun, - sprintfI -ga ega bo'lgan satrdan HTML -pochtani qanday chop etish kerakligini tushunish uchun. ko'p haqiqiy "asabiy vaqt" o'tkazdi, shuning uchun.ino fayllari yoki github -dagi sharhlarni o'qing!
yuklash sozlamalari sifatida men asboblardan foydalanganman: bo'linish sxemasi: bu ulkan kod uchun ko'proq joy bo'lishi uchun OTA yo'q
maza qiling
github kodini bilish uchun shu erni bosing
2 -qadam: xarita
Bu tut ESP32 kodiga kiritilgan, shuning uchun men sizga faqat ba'zi kalit so'zlar, havolalar va ishlatilgan vositalarni bera olaman:
Openstreetmap -dan vektorli maydonlarni ajratish uchun ajoyib xizmat
- ularni hazm qilish uchun "ostik" QGis
- xaritangizni soddalashtirish uchun atributlar jadvalini qidiring
- bosib chiqarish tartibini yarating va xaritani A3 formatida svg formatida eksport qiling
- "silliq" tasvirchi bilan dam oling
- chop eting
3 -qadam: Issiq yopishqoq partiyasi
Shunday qilib, men mantar taxtasiga o'rnatmasdan oldin, qog'oz va displey uchun teshiklarni kesishni taklif qila olaman
simlar, albatta, oddiy va men tomonidan yomon bajarilgan: P.
Mening lehim darajam: kaptar
koddan ko'rinib turibdiki, LEDlar IO pinlariga o'tadi
#define LED_PIN0 14 // si #LED_PIN1 27 ni aniqlang // buon #define LED_PIN2 16 // sass #define LED_PIN3 17 // tur #define LED_PIN4 25 // ist #define LED_PIN5 26 // berr
tushunish uchun ESP32 pinoutini qidiring
4 -qadam: Tayyor mahsulot
shuning uchun bu rasm eng zo'r emas, lekin biz daryo toshqini bo'lganida, men yaxshi video qo'yaman!
Tavsiya:
Okeaniya Midi boshqaruvchisi (shovqin 0-qirg'oq va boshqa sintezlar uchun): 6 qadam (rasmlar bilan)
Oceania Midi Controller (shovqin 0-qirg'oq va boshqa sintezlar uchun): So'nggi bir necha yil ichida bir qator sintezator ishlab chiqaruvchilari "yarim stolli ish stoli" chiqaradilar. asboblar. Ular, odatda, Eurorack modulli sintezator formati bilan bir xil shakl faktorini oladi va ko'pchiligi, ehtimol, g
Quyosh qirg'og'i: 4 qadam (rasmlar bilan)
Quyosh qirg'og'i: Yura Parkining ramziy manzarasi mashinada paydo bo'ldi, u erda bir stakan suv T-Rex (spoyler) yaqinlashayotgan qadamlari bilan aks sado berdi. Asl sahna veb -bloglar ma'lumotlariga ko'ra, kimdir musiqiy torli attasheni diqqat bilan silkitgan
CityCoaster - O'zingizning biznesingiz uchun kengaytirilgan reallik qirg'og'ini yarating (TfCD): 6 qadam (rasmlar bilan)
CityCoaster - O'zingizning biznesingiz uchun kengaytirilgan reallik qirg'og'ini yarating (TfCD): Kubokingiz ostidagi shahar! CityCoaster - bu Rotterdam Gaaga aeroporti uchun mo'ljallangan mahsulot bo'lib, u shaharning o'ziga xosligini ifoda eta oladigan, dam olish maskanining mijozlarini kengaytirilgan haqiqat bilan zavqlantiradigan mahsulot haqida o'ylaydi. Bunday muhitda
Disko ichimliklar qirg'og'i: 4 qadam (rasmlar bilan)
Disco Drinks Coaster: Garchi biz Buyuk Britaniyaning Kembrij tashqarisida yashasak -da, xotinim fojiali tarzda Las -Vegasdagi hamma narsaga qaram bo'lgan. So'nggi tashrifimizdan qariyb olti oy o'tdi, u yorqin chiroqlar va kokteyllar uchun yig'iladi. Ba'zi narsalar ichimlikni boshqalarga qaraganda yoqimli qiladi
8 Ft Wingspan Coroplast RC Piper Cub 25cc begona o'tlarni qirg'ich bilan oqadi: 27 qadam (rasmlar bilan)
8 Ft Wingspan Coroplast RC Piper Cub 25cc begona o'tlarni kesish moslamasi bilan uchadi: Men radio boshqariladigan samolyotlarni yaxshi ko'raman va balzadan tortib to shu plastmassaga qadar bir nechta turlarni yasaganman. Bu 25,00 dollarlik plastmassadan yasalgan bo'lib, men uni imo -ishora kompaniyasida sotib olganman. Plastmassa - bu Coroplast yoki gofrirovka qilingan plastmassa, uning eng arzon