
Hari baik! Jadi sudah waktunya untuk artikel kedua tentang topik ESP. Saya akan memberi tahu Anda tentang perangkat yang memungkinkan Anda menerima informasi tentang iklim mikro di sekitar bunga Anda (jika, tentu saja, Anda memilikinya) dan menerima pemberitahuan bahwa ada sesuatu yang mengancam kehidupan mereka.
Untuk apa?Istri saya menyirami bunga seminggu sekali. Dia melihat tanah dalam pot, melihat atau merasakan bahwa sudah saatnya bunga menyegarkan diri dan air. Bunga-bunga yang kita miliki berbeda, tetapi ternyata bunga-bunga itu mengering dalam waktu yang bersamaan. Pot besar adalah bunga besar, pot kecil adalah bunga kecil, artinya jelas. Semua akan baik-baik saja jika untuk musim panas saya tidak tinggal di rumah sendirian selama beberapa bulan dan tidak lupa menyirami bunga-bunga. Setibanya di akhir Agustus, seorang istri dengan wajah sedih mengeluarkan setek kering dari beberapa pot.
Itu sedikit penyimpangan, sekarang tentang keputusan. Untuk satu ambang jendela, kita perlu 1-2 perangkat untuk melakukan pengukuran dalam pot dengan ukuran berbeda. Hal pertama yang harus dikontrol adalah kelembaban tanah, yang merusak bunga kita (kita tidak akan berurusan dengan PH dan sisa floristry yang tidak bisa dipahami, kita tidak sanggup melakukannya). Selain kelembaban, setelah beberapa musyawarah, kami memutuskan untuk mengukur iluminasi sehingga kami dapat melacak pengaruh siang hari pada tanaman, suhu dan kelembaban lingkungan - ini setelahnya.
Tentu saja, insinyur dari Kerajaan Tengah telah mencoba dan membuat perangkat yang dapat mencicit dan menciak ketika bumi mengering dalam pot, tetapi saya masih ingin memiliki perangkat sendiri dengan roti sendiri, terutama karena biaya perangkat tidak begitu tinggi.
Implementasi perangkat keras dan deskripsi pekerjaanPoin yang paling penting adalah otonomi perangkat dan umur panjang kerjanya (tentu saja, tidak merugikan kualitas pengukuran). Berdasarkan ESP-12E yang sama, dengan satu saluran ADC terpasang. Pengontrol (modul, jika Anda mau) memiliki beberapa mode operasi, dan, karenanya, konsumsi:
Matikan - 0,5uA;
Tidur nyenyak - 10uA;
Tidur ringan - 0,5mA;
Modem sleep - 15mA;
Dalam mode transfer data hingga 170mA (data bervariasi di beberapa sumber bahkan hingga 215mA).
Untuk kebutuhan kita, tiga mode akan diperlukan: Tidur nyenyak, mode tidur dan mode transmisi. Karena semuanya sangat baik, kami akan menggunakan dua baterai AAA untuk daya.
Penerangan diukur dengan fototransistor BPW17N, kelembaban dan suhu sekitar AM2302, kelembaban tanah dengan elektroda yang diencerkan khusus pada papan di bawah pernis. Karena kami memiliki baterai, kami akan mengukur tegangannya. Untuk melakukan ini semua dengan satu ADC, gunakan multiplexer CD74HC4051M96. Pada ESP-12E ADC, Anda dapat memasok tegangan hingga 1V, masing-masing, kami menempatkan pembagi di mana-mana.
Diagram di bawah ini, ada banyak hal untuk mock-up (masih belum ada transistor VT3 di papan solder, dan papan terakhir belum siap).
Diagram perangkatDua baterai menghasilkan tegangan 3-3.3V, multiplexer beroperasi dalam kisaran dari 2V hingga 6V. AM2302 beroperasi di kisaran 3.3-5.5V. ESP-12E membutuhkan tegangan 2.3V atau lebih. Semua ini diverifikasi oleh tes dan diverifikasi dengan lembar data. Menjadi jelas bahwa AM2302 akan berhenti bekerja segera, atau tidak akan bekerja sama sekali, jadi kami membuat "retas" dan meletakkan kapasitor Buck-Boost TPS60240DGKR. Ini memecahkan masalah serius lainnya, karena ketika tegangan turun, parameter yang diukur mengambang (iluminasi dan kelembaban tanah) dan perlu untuk menyesuaikan nilai-nilai pengukuran ADC, dengan mempertimbangkan tegangan, dan ini menyebabkan kesalahan.
Jadi, ternyata sesuatu seperti ini: multiplexer ini ditenagai dan dikendalikan dari kaki ESP (didukung langsung oleh baterai), AM2302, pembagi cahaya dan kelembaban tanah ditenagai dari 3.3V dengan Buck-Boost, yang, pada gilirannya, dikendalikan oleh kaki ESP. Mengayunkan tegangan dari 1.8V ke 3.3V.
Pengukuran kelembaban tanahSaya memutuskan untuk memberikan nilai ini subbagian yang terpisah. Versi pertama perangkat memiliki elektroda telanjang (tidak dilapisi dengan pernis) dan semuanya sederhana di sana, berikan voltase ke satu elektroda - lepaskan dari yang kedua. Semakin tinggi kelembaban, semakin besar tegangan pada ADC.
Gambar 1. Versi elektroda di papan.Semuanya akan baik-baik saja, tetapi bahkan elektroda kaleng rentan terhadap korosi, dan memang tidak terlihat estetis. Oleh karena itu, sirkuit berikut lahir (tersusun): PWM dengan IO15 dipasok ke salah satu "elektroda", dan nilai "diluruskan" dan dihaluskan dibaca dari itu. Ternyata semakin tinggi kelembaban tanah, semakin kecil sinyalnya mencapai ADC, begitu sinyalnya melemahkan.
Gambar 2. Skema membaca kelembaban tanah.Menguji dan bekerjaSaya akan segera mengklarifikasi bahwa tes yang panjang berlanjut, dan yang cepat menunjukkan yang berikut: perangkat bekerja (jangan terburu-buru kecewa) selama empat hari. Pengukuran dilakukan 1 kali per menit (!!!) dengan mengirimkan semua data ke server (sekitar 5700 pengukuran diperoleh). Tidur nyenyak adalah 50-an dari menit ini. Waktu pengoperasian dalam mode tidur Modem adalah beberapa detik (pengukuran diambil dari sensor), kemudian beberapa detik dalam mode transfer data (tes menunjukkan konsumsi sekitar 50mA). Interval waktu masih dapat disesuaikan. Informasi lebih lanjut tentang waktu operasi dalam mode yang berbeda dapat dibaca pada tautan di
sini dan, karenanya, lihat sumber di git di
sini .
Sementara kami berencana untuk melakukan pengukuran setiap 2 jam dengan sejumlah kecil pengukuran di malam hari, menurut perkiraan, lebih dari 1 tahun kerja diperoleh. Perhitungan lebih diekstrapolasi dari hasil, tetapi seperti yang Anda tahu, debit baterai memiliki bentuk yang tidak linier, pengujian yang begitu lama akan menunjukkan apa dan bagaimana.
Gambar 3. Grafik dari parameter yang dikirim.Ada empat parameter pada satu bagan - tidak terlalu nyaman untuk ditonton, tetapi untuk itu informatif. Kegagalan adalah penggantian baterai dan menyiram bunga. Dua puncak adalah iluminasi. Mengisi dengan warna biru adalah kelembaban tanah. Sejauh ini tidak ada penghalusan dan filter telah diterapkan, karena pengujian belum selesai dan saya ingin melihat data mentah. Pada grafik yang diperluas, Anda dapat melihat bagaimana tanah dibasahi, kemudian kelembabannya stabil dan pengeringan lambat terjadi. Kami belum memutuskan apakah perlu mempertimbangkan limpahan pabrik atau menyerahkannya kepada "pengairan".
Gambar 4. Foto perangkat dalam pot.
Gbr. 5. Foto perangkat dari sisi baterai.Pada tata letak, sekrup digunakan untuk mengencangkan kompartemen baterai dan sensor kelembaban, ketika semuanya debugged, kami akan memasang paku keling, seperti:
Gambar 6. Foto paku keling.PerumahanSemuanya sederhana - belum ada kasus, dan mungkin, pada prinsipnya, tidak akan. Kami akan menutup dengan pernis khusus di atas dan pergi.
Biaya penjualanESP-12E - 120p;
CD74HC4051M96 - 14p;
TPS60240DGKR - 180r;
BPW17N - 21p;
AM2302 - 130 gosok;
KLS5-818-B - 15p;
BC817 - 3p;
BAT54JFILM - 3p;
Pasif dan tombol - 20r;
LED, tweeter, dan transistor pada kontrolnya saat melempar.
Tanpa memperhitungkan papan sirkuit dan perakitan tercetak, sekitar 500 rubel diperoleh.
Jadi katakanlah dapat diterima. Tentu saja, jika Anda membuat perangkat seperti itu 10 pcs, maka pencetakan dan perakitan memakan sebagian besar biaya dan perangkat akan menjadi mahal, tetapi sementara kami tidak mengejar harga, kami tidak membuat batch 100k, tetapi hanya menikmati prosesnya.
PaketSeperti disebutkan sebelumnya, pada artikel pertama, direncanakan untuk membuat keluarga sensor yang terintegrasi oleh satu aplikasi. Saat ini ada empat perangkat:
1. OpenWindAir. Sensor karbon dioksida.
2. LifeOfFlowers. Kelembaban tanah dan sensor iklim mikro untuk tanaman.
3. WarningWater. Sensor kebocoran.
4. AirWick_ESP. Configurator untuk penyegar udara AirWick. Ini mungkin lebih untuk bersenang-senang, pikirku pada awalnya. Kenapa tidak
Saya belum menulis apa pun tentang perangkat ini. Saya memiliki alat seperti itu di rumah:
Gambar 7. Foto AirWick.Dan saya benar-benar ingin membuatnya bekerja sesuai jadwal yang saya sendiri dapat atur. Di siang hari, misalnya, hanya ketika mengunjungi kamar kecil, di malam hari, untuk tidur sama sekali, kecuali saya "sombong" di pagi hari sebelum bangun. Saya bahkan membuat papan pada STM32F100, tetapi sesuatu tidak berhasil. Sementara semuanya debug, mengubah ambang batas dan frekuensi operasi, semuanya tetap dalam masa pertumbuhan. Dan kemudian sebuah ide muncul, dan mengapa tidak mengatur parameter dari telepon, terutama jika antarmuka ini sudah di-debug:
- jumlah operasi setelah mematikan lampu (tergantung pada waktu kunjungan);
- jumlah operasi di malam hari (larangan operasi saat lampu menyala);
- mematikan perangkat (misalnya, saat liburan);
- Yah, tentu saja, hitung seberapa sering kita pergi ke toilet dan berapa banyak waktu yang kita habiskan di sana)))). Ketika lampu menyala, radio menyala dan kunjungan mungkin tertunda.
Ya - ini surplus, kata Anda, disetel sekali dan lupa, tetapi tangan kami bukan untuk kebosanan, dan karena itu bayaran dibuat, yang akan saya bicarakan nanti.
Dalam aplikasi untuk perangkat yang berbeda, Anda dapat membuat tab dengan tampilan di bawahnya data dan grafik yang terkait dengan perangkat tertentu.
Gambar 8. Foto aplikasi dengan beberapa tab.PS: Tautan ke artikel dari topik yang sama:
Sistem Akuisisi Data di ESP. Bagian I. CO2Terima kasih atas perhatian anda!