Daftar Isi:

AtmoScan: 7 Langkah (dengan Gambar)
AtmoScan: 7 Langkah (dengan Gambar)

Video: AtmoScan: 7 Langkah (dengan Gambar)

Video: AtmoScan: 7 Langkah (dengan Gambar)
Video: What is Dolby Atmos? Everything You Need To Know 2024, November
Anonim
Image
Image
Sensor
Sensor

**********************************************************************************************

BERITA

Buka GitHub saya untuk:

- Beberapa perubahan perangkat keras kecil meningkatkan desain, termasuk kemampuan untuk mematikan dirinya sendiri dari perangkat lunak, memperbaiki salah satu kelemahan terbesar dari desain - cara menangani baterai rendah.

- Desain PCB v2 sekarang diterbitkan bersama dengan panduan untuk menerapkan perubahan dengan mudah ke papan V1.0.

- File CAD untuk enklosur lengkap

Selungkup baru terlihat seperti gambar di atas… yah, tanpa karet gelang

****************************************************************************************

ATMOSCAN adalah perangkat multisensor yang ditujukan untuk memantau kualitas udara dalam ruangan. Sementara banyak proyek telah diterbitkan yang memiliki tujuan serupa, yang satu ini adalah sistem lengkap dalam paket mandiri yang ringkas yang merangkum semuanya. Ini memiliki layar warna LCD, ini adalah waktu & lokasi sadar, itu adalah gerakan dikendalikan dan posting ke ThingSpeak (atau orang lain) melalui MQTT, tetapi benar dapat menangani operasi terputus dan rekoneksi. Dengan baterai isi ulang yang tertanam, baterai ini bertahan seharian penuh saat terputus dari daya.

Ini menggunakan kerangka kerja kooperatif multitasking dan sangat responsif terhadap input pengguna saat mengambil sampel sensor, menangani UI, memposting ke MQTT. Sebenarnya itu sedikit meremas dari ESP8266 kecil. Ia melakukannya dengan mengintegrasikan sejumlah perpustakaan sumber terbuka dan memanfaatkan layanan web internet.

Kredit untuk perpustakaan diberikan kepada sejumlah kontributor, lihat nanti.

Musik dalam video dapat ditemukan DI SINI

Langkah 1: Sensor

Atmoscan mengukur sejumlah variabel:

  • Suhu
  • Kelembaban
  • Tekanan
  • CO2
  • BERSAMA
  • NO2
  • VOC (Senyawa organik volatil, indikator Kualitas Udara)
  • PM 01
  • PM25
  • PM10
  • Radiasi

Untuk melakukannya, ini mengintegrasikan sejumlah sensor terpisah

  • BME280 (mis. Tautan)
  • PMS7003 (mis. Tautan)
  • MH-Z19 (mis. Tautan)
  • HDC1080 (mis. Tautan)
  • MiCS6814 (Tautan)
  • MP503 (Tautan)
  • Tabung Geiger LND-712 (Tautan, saya menemukannya di Eropa di sini Tautan atau di sini Tautan) dengan modul tegangan tinggi (Tautan)

Lembar Data DI SINI.

Langkah 2: Elektronik

Elektronik
Elektronik
Elektronik
Elektronik
Elektronik
Elektronik

Atmoscan dapat dengan mudah dibangun dengan NodeMCU atau papan ESP8266 lainnya dan beberapa komponen yang tersedia, seperti pemindah level dan pengatur tegangan, jika Anda menyerah pada pengisi daya baterai terintegrasi.

Sementara saya membuat prototipe dengan komponen terpisah, untuk versi terakhir saya merancang papan khusus yang mengintegrasikan semua fungsi dan menyediakan konektor yang rapi untuk sensor, LED untuk status (Biru= catu daya terhubung; Merah = pengisian).

File PCB Eagle tersedia DI SINI.

Secara khusus, dewan mengintegrasikan:

  • Sirkuit pengisian berdasarkan MAX8903A (Tautan)
  • Logika hidup/mati satu tombol
  • Modul ESP12E
  • logika pemrograman
  • Pemindah level
  • Driver lampu latar LCD
  • Regulator Tegangan Step-Up/Step-Down 3.3V berdasarkan Pololu S7V8F3 (Tautan)
  • Regulator Tegangan Step-Up 5V berdasarkan Pololu U1V10F5 (Tautan)
  • Pengukur Bahan Bakar LiPo berdasarkan SparkFun TOL10617 (Tautan)

Layarnya berukuran 2,8 TFT 320x240 berdasarkan chip ILI9341 (Tautan).

Sensor gerakan didasarkan pada chip PAJ7620U2 (Link), jauh lebih baik daripada APDS9960 murah yang menghasilkan interupsi terus menerus dan tidak dapat bekerja melalui plexiglas.

Sensornya agak haus daya, jadi untuk menjamin otonomi setidaknya 24 jam, saya membuat paket dengan baterai LiPo 105575 3 x 5000mAh (Tautan). Bahkan, 2 sudah cukup. Pengisi daya MAX8903 berjuang untuk mengisi daya paket 15.000 mAh yang dihasilkan.

CATATAN - SEPERTI YANG TERLIHAT PADA GAMBAR:

  • Posisi konektor ditampilkan
  • Slot kartu SD harus disolder dari layar jika Anda ingin memasukkannya ke dalam enklosur
  • Anda perlu membuat takik kecil di PCB agar tidak mengganggu kipas (takik sedang populer setelah iPhone X). Dikoreksi di PCB V2

Singkatan konektor pada PCB adalah sebagai berikut:

  • PRS: Sensor Tekanan Barometrik (berdasarkan BME280) CATATAN: dipasang langsung pada PCB
  • VOC: Grove - Sensor kualitas udara v1.3 (berdasarkan MP503)
  • TMP: Sensor Suhu dan Kelembaban Digital Akurasi Tinggi (berdasarkan HDC1080)
  • PMS: PMS7003 Sensor konsentrasi partikel digital
  • GAS: Grove - Sensor Gas Multisaluran (berdasarkan MiCS6814)
  • GES: Grove – Sensor gerakan(berdasarkan PAJ7620U2)
  • RAD: Tabung Geiger (melalui Modul Catu Daya Driver Geiger Probe Tegangan Tinggi 400V / 500V dengan Output Pulsa Digital TTL)
  • CO2: Sensor gas CO2 inframerah MH-Z19
  • U1V10F: 5V Step-Up Voltage Regulator berdasarkan Pololu
  • U1V10F5 S7V8V3: Regulator Tegangan Step-Up/Step-Down 3.3V berdasarkan Pololu S7V8F3
  • TOL10617: Pengukur Bahan Bakar Sparkfun LiPo
  • LCD: layar ILI9341

Langkah 3: Kandang

Lampiran
Lampiran
Lampiran
Lampiran
Lampiran
Lampiran

Enklosur berasal dari wadah kubus plexiglas 10x10x10 cm yang saya beli di ebay dan dimaksudkan untuk penggunaan yang sama sekali berbeda. Itu memiliki slot ventilasi yang bagus yang persis seperti yang dibutuhkan. Volume pada prinsipnya cukup untuk mengemas seluruh rangkaian, kecuali bahwa itu tidak mudah … beberapa upaya awal berdasarkan maket kardus gagal total jadi saya menyerah dan membuang beberapa jam dengan CAD 3D dan saya memiliki dukungan laser potong internal. Ruang internal dibagi dalam kompartemen sehingga sensor suhu sejauh mungkin dari sumber panas internal. Sementara penutup luar terbuat dari bahan 3mm, bagian atasnya terbuat dari lembaran 2+1mm. Trik ini memungkinkan sensor gerakan hanya ditutupi dengan akrilik 1mm dan ini cukup untuk membuatnya berfungsi.

Beberapa modifikasi harus dilakukan dengan perkakas tangan pada penutup aslinya, seperti kipas, sakelar, dan lubang USB. Hasilnya tetap layak!

File CAD ada DI SINI.

Langkah 4: Perakitan Mekanik

Perakitan Mekanik
Perakitan Mekanik
Perakitan Mekanik
Perakitan Mekanik
Perakitan Mekanik
Perakitan Mekanik

Paketnya sangat padat tetapi berkat desain cad 3D saya memiliki sedikit kejutan saat merakitnya.

Sirkulasi udara (dari atas ke bawah) dipastikan dengan kipas kecil. Setelah membeli sejumlah besar di Aliexpress / eBay, saya menyadari bahwa kebisingan kipas murah tidak tertahankan untuk perangkat dalam ruangan. Saya akhirnya membeli Papst 255M (Tautan) yang agak mahal dan lambat berputar dan saya memberinya kurang dari 5V melalui beberapa dioda. Hasilnya agak bagus dan cukup diam untuk tidak diperhatikan (bahkan disetujui oleh istri, sertifikasi yang paling sulit).

Langkah 5: Perangkat Lunak

Perangkat lunak
Perangkat lunak
Perangkat lunak
Perangkat lunak
Perangkat lunak
Perangkat lunak
Perangkat lunak
Perangkat lunak

Arsitektur perangkat lunak didasarkan pada kerangka kerja Berorientasi Objek yang menjalankan beberapa proses (kooperatif) yang menangani UI, sensor, dan MQTT. Ini adalah lokasi dan sadar waktu tetapi dapat menangani pemutusan / koneksi ulang ke WiFI.

Kerangka kerja terbuka dan dapat mengelola sejumlah layar, selama kode dan sumber dayanya sesuai dengan memori Flash. Kerangka kerja aplikasi menangani gerakan dan meneruskannya ke layar, untuk penanganan lebih lanjut atau pembatalan jika diperlukan. Gestur yang dikelola oleh framework adalah:

  • Geser ke kiri / kanan - Ubah layar
  • (Jari) Putaran searah jarum jam - Putar layar
  • (Jari) Putaran berlawanan arah jarum jam - Aktifkan layar pengaturan
  • (Tangan) Dari jauh ke dekat - Matikan tampilan

Layar mewarisi dari kelas dasar dan dikelola melalui model peristiwa berikut:

  • aktifkan - dipecat sekali, saat layar dibuat
  • perbarui - dipanggil secara berkala untuk memperbarui layar
  • nonaktifkan - dipanggil sekali, sebelum layar ditutup
  • onUserEvent - dipanggil saat sensor gerakan dipicu. Memungkinkan untuk merespons dan juga mengesampingkan penanganan acara default, mis. batalkan gesek untuk mengubah layar

Setiap layar mendeklarasikan kemampuannya dengan memberikan informasi berikut:

  • getRefreshPeriod - seberapa sering layar perlu disegarkan
  • getRefreshWithScreenOff - jika layar ingin disegarkan bahkan saat lampu latar mati. misalnya untuk grafik
  • getScreenName - nama layar
  • isFullScreen - ambil kendali penuh atas tampilan, atau izinkan bilah atas dengan tanggal/waktu/lokasi/pengukur baterai/pengukur wifi

Kerangka kerja ini dapat membuat instance dan membatalkan alokasi layar melalui pabrik kelas deklaratif. Alokasi dinamis menghemat RAM dan membuat perangkat mudah diperluas. Kerangka aplikasi keseluruhan juga dapat digunakan kembali untuk proyek lain.

Layar yang saat ini diterapkan di Atmoscan adalah:

  • Nilai sensor
  • Geiger meter / grafik semilog
  • Status sistem
  • Catatan eror
  • Stasiun cuaca
  • Pengintai Pesawat
  • Mempersiapkan
  • Baterai lemah

Layar Pengaturan memungkinkan pengaturan kredensial Wifi, saluran MQTT, server Syslog.

BARU di v2.0: semua kunci layanan web sekarang dapat dikonfigurasi melalui portal konfigurasi. Satu-satunya nilai yang masih di-hardcode adalah kata sandi OTA (ATMOSCAN huruf besar).

CATATAN 1: Pemrograman pertama harus dilakukan dengan kabel USB-Serial yang terhubung ke konektor pemrograman. Karena port serial ditempati oleh sensor, debugging dan pemrograman dengan cara itu tidak praktis setelah perakitan karena akan membutuhkan pelepasan sensor. Oleh karena itu perangkat lunak ini mendukung debugging SYSLOG dan pembaruan OTA.

CATATAN 2: Biner ATMOSCAN lebih dari 700Kb dan ArduinoOTA membutuhkan ruang program setidaknya dua kali ukuran gambar, yang mengesampingkan opsi "4M (3M SPIFFS)". Namun, opsi standar "4M (1M SPIFFS)" juga tidak cocok karena partisi SPIFFS tidak akan cukup untuk sumber daya grafis yang terkait dengan stasiun cuaca, pengintai pesawat, dan untuk file konfigurasi. Oleh karena itu, konfigurasi khusus "4M (2M SPIFFS)" telah dibuat untuk mengatasi masalah tersebut. Penjelasan di sini.

Dokumentasi dan kode sumber lengkap tersedia di sini.

KREDIT TERMASUK KODE & PERPUSTAKAAN DARI

  • Adabuah
  • Arcao
  • Bblanchon
  • Bodmer
  • Kubus Tertutup
  • Gmag11
  • Knollary
  • Lucadentella
  • Benih
  • Squix78
  • Tzapu
  • Penyihir97

mengintegrasikan LAYANAN WEB DARI

  • Adsbexchange.com
  • GeoNames.org
  • Google.com
  • Mylnikov.org
  • Timezonedb.com
  • Wunderground.com

Langkah 6: Jadikan Lebih Baik

Membuatnya lebih baik!
Membuatnya lebih baik!

Hasilnya tidak buruk sama sekali! Perangkat lunak terlihat bagus dan dapat diandalkan, sementara itu dapat diperluas dengan fitur-fitur baru dan mungkin dibersihkan sedikit untuk membuat kerangka kerja aplikasi benar-benar dapat digunakan kembali untuk proyek lain. Kalibrasi beberapa sensor tidak bagus, tetapi peralatan laboratorium uji akan dibutuhkan. Waktu sangat berharga dan saya tidak punya banyak, jadi kemajuannya lambat. Pada saat saya selesai, dukungan yang layak untuk ESP32 telah tersedia. Jika saya memulainya sekarang, saya akan menggunakannya dan mengintegrasikan sensor eksternal melalui bluetooth.

Siapa pun?

CATATAN: Saya masih memiliki beberapa PCB jadi jika ada yang tertarik tersedia dengan harga nominal / ongkos kirim.

Langkah 7: Pertanyaan & Jawaban

pertanyaan
pertanyaan
pertanyaan
pertanyaan

Pertama-tama, TERIMA KASIH atas komentar Anda yang sangat positif. Sejujurnya saya tidak mengharapkan minat sebanyak itu.

Saya menerima sejumlah pertanyaan baik melalui komentar atau pesan pribadi, jadi saya berpikir untuk mengumpulkan jawabannya di sini. Jika lebih banyak datang, saya akan menambahkan.

Saya menemukan di belakang laci 8 PCB yang tersedia - dan mereka sedang dalam perjalanan ke Belgia, Jerman, India, AS, Kanada, Inggris, Australia. Wah, 3 benua! Luar biasa.

Apa yang harus saya masukkan ke halaman konfigurasi ATMOSCAN?

Halaman konfigurasi Atmoscan memerlukan parameter berikut:

  • SSID dan kata sandi jaringan WiFi yang ingin Anda sambungkan
  • Server MQTT yang Anda gunakan. Misalnya, saya menggunakan mqtt.thingspeak.com
  • String koneksi untuk topik MQTT yang digunakan. Misalnya, topik Thingspeak MQTT dalam format: channels/CHANNEL-ID/publish/WRITE-API (CONTOH: channels/123456/publish/567890)
  • Server syslog: IP server syslog yang Anda gunakan untuk masuk
  • Kunci Google untuk Maps Static API. Dapatkan kunci dari https://console.cloud.google.com/apis/dashboard. Buat proyek; API yang digunakan Atmoscan adalah https://maps.googleapis.com/maps/api/staticmap. Buat kunci untuk API ini di proyek google yang baru saja Anda buat, gunakan di sini
  • Kunci Weather Underground. Buat akun di www.wunderground.com, buka WEATHER API (tautan di bagian bawah halaman beranda, buka PENGATURAN KUNCI, buat kunci, gunakan di sini
  • Akun Geoname. Buat akun di https://www.geonames.org/ aktifkan untuk menggunakan layanan web gratis dan masukkan nama pengguna di sini
  • Kunci TimeZoneDB. Buat akun di https://timezonedb.com/, buat kunci, taruh di sini

Bagaimana cara mengkonfigurasi Thingspeak?

Anda membutuhkan 3 saluran Thingspeak. Field yang digunakan adalah sebagai berikut:

CHANNEL 1 bidang

  1. SUHU
  2. KELEMBABAN
  3. TEKANAN
  4. PM01
  5. PM2.5
  6. PM10
  7. BPS
  8. RADIASI

SALURAN 2 bidang

  1. BERSAMA
  2. CO2
  3. NO2
  4. VOC

CHANNEL 3 bidang (Saluran sistem)

  1. UPTIME DALAM MENIT
  2. HEAP GRATIS DALAM byte
  3. WIFI RSSI (SINYAL DI DBM)
  4. TEGANGAN BATERAI
  5. LINEAR SOC (STATASI PENGISIAN BATERAI % - perhitungan linier, sebanding dengan tegangan)
  6. NATIVE SOC (BATTERY STATE OF CHARGE% - seperti yang dilaporkan oleh pengukur. seperti yang dibaca dari pengukur. CATATAN: pengukur mengatakan 0% ketika mencapai 3.6v sementara baterai dapat dikosongkan sedikit lebih jauh, katakanlah di atas 3v. Batas bawah, di mana ATMOSCAN mati sendiri, adalah #define dalam file globaldefinitions.h)
  7. SUHU SISTEM (dari bme280, dipasang langsung ke papan)
  8. KELEMBABAN SISTEM (dari bme280, dipasang langsung ke papan)

PCB sangat kompak. Bagaimana cara menyolder perangkat SMD, terutama IC MAX8903A?

Pertama, saya sarankan Anda bertanya pada diri sendiri apakah Anda ingin masuk ke SMD atau hanya sekali- Jika yang terakhir, mungkin minta seseorang untuk melakukannya untuk Anda. Jika Anda ingin mengambil tantangan SMD, investasikan sedikit dan dapatkan alat yang tepat (solder, fluks, besi kecil alkohol isopropil, pistol panas, pinset, kamera USB murah, dudukan PCB). Jaman sekarang barang murah. Kemudian tonton video YouTube – ada setengah juta – dan luangkan waktu dengan PCB lama yang dapat Anda korbankan dan de-solder / bersihkan / solder beberapa komponen. Anda tidak akan percaya betapa instruktifnya ini, untuk mempelajari apa yang diharapkan, mendapatkan suhu yang tepat, dll. Berbicara dari pengalaman… Saya mulai SMD mengubah konektor layar di iPod touch dan saya mematikan yang pertama!

Memang PCB Atmoscan itu kompak dan IC itu tidak mudah. Sekali lagi, saya tidak menyarankan Anda melakukan ini sebagai penyolderan SMD pertama Anda. QFN bukan paket yang ramah meskipun saya sudah menyolder nomor sekarang. Anda tidak pernah yakin Anda melakukannya dengan benar…

Di Atmoscan saya menyoldernya terlebih dahulu, lalu komponen di sekitarnya sehingga saya dapat menguji apakah bagian pengisian papan berfungsi, lalu saya menyelesaikan sisanya. Dari gambar terlampir Anda harus dapat menyimpulkan orientasi komponen. Saya menggunakan pustaka komponen domain publik dan orientasinya tidak terlalu jelas di layar sutra.

Cara saya: Saya pertama-tama menaruh beberapa solder pada bantalan dengan setrika. Kemudian banyak fluks (khusus SMD) dan saya dengan hati-hati memposisikan IC dengan pinset. Kemudian panaskan semuanya hingga sekitar 200/220C (di bawah titik leleh) untuk menghindari ketegangan akibat pemanasan yang tidak merata. Kemudian saya menaikkan suhu ke 290C atau lebih dan di sekitar IC. Jika Anda meletakkan sedikit solder pada bantalan terdekat, Anda akan melihat saat suhu berada pada titik leleh, karena akan bersinar.

Setelah itu saya membersihkannya dengan alkohol isopropil dan memeriksanya dengan hati-hati dengan kamera USB murah. Masalah umum adalah keselarasan dan jumlah solder, karena beberapa pin mungkin tidak terhubung. Dalam beberapa kasus saya harus kembali ke sana dengan besi solder kecil untuk menambahkan beberapa solder ke beberapa pin, karena IC ini memiliki bantalan termal di bawahnya yang perlu disolder juga. Ini membuatnya agak sulit untuk menebak jumlah solder dan mungkin terjadi bahwa terlalu banyak solder di bawahnya dapat menaikkannya sehingga pin tidak menyentuh PCB.

Karena itu, saya tidak ingin menakut-nakuti Anda. Saya menyelesaikan 3 papan dan saya tidak pernah membunuh IC ini… Saya bahkan harus menghapusnya, membersihkan dan memulai kembali dari awal tetapi pada akhirnya berhasil. Sekali lagi, tidak super mudah tetapi bisa dilakukan.

Beli komponennya dimana?

Sebagian besar di eBay dan Aliexpress. Namun, yang bermerek adalah asli (Seeed, Pololu, Sparkfun).

Beberapa link INDIKATIF mengikuti. Catatan: lihat-lihat, Anda mungkin menemukan penawaran yang lebih murah…

www.aliexpress.com/item/ESP8266-Remote-Ser…

www.aliexpress.com/item/PLANTOWER-Laser-PM…

www.aliexpress.com/item/High-Accuracy-BME2…

www.aliexpress.com/item/Free-shipping-HDC1…

www.aliexpress.com/item/J34-F85-Free-Shipp…

www.aliexpress.com/item/30pcs-A11-Tactile-…

www.aliexpress.com/item/10PCS-IRF7319TRPBF…

www.aliexpress.com/item/120PC-Lot-0805-SMD…

www.aliexpress.com/item/100pcs-sma-1N5819-…

www.aliexpress.com/item/Free-Shipping-100P…

www.aliexpress.com/item/Chip-Capacitor-080…

www.aliexpress.com/item/92valuesX50pcs-460…

www.aliexpress.com/item/170valuesX50pcs-85…

www.aliexpress.com/item/Si2305-si2301-si23…

www.aliexpress.com/item/100pcs-lot-SI2303-…

www.aliexpress.com/item/20pcs-XH2-54-2-54m…

www.aliexpress.com/item/10pcs-SMD-Power-In…

Pemrograman pertama Papan Atmoscan menyertakan sirkuit pemrograman yang sejalan dengan NodeMCU. Koneksi serial biasanya digunakan untuk pemrograman pertama. Setelah itu, pemrograman OTA melalui wifi adalah pilihan yang lebih disukai, karena dapat dilakukan dengan unit yang telah dirakit sepenuhnya. Jangan lupa bahwa port serial biasanya digunakan oleh sensor partikel!

Untuk memprogram papan dengan serial, adaptor USB-Serial (misalnya FTDI232 atau serupa) harus dihubungkan ke konektor J7 (di sebelah tombol reset) mengikuti pinout dalam skema. Program dapat diunggah tanpa sensor terhubung, kecuali bahwa jalur interupsi dari sensor geiger harus terhubung ke GND, jika tidak, papan tidak akan boot (untuk melakukannya, sambungkan pin 1 dan 3 di dalam konektor RAD). Cara termudah untuk menguji papan tanpa menggunakan sketsa utama - tanpa kerumitan sensor - adalah dengan mengunggah program sederhana INI melalui kabel serial. Ini menciptakan titik akses wifi yang memungkinkan flashing lebih lanjut dengan program utama.

PENTING: Jangan lupa untuk menggunakan konfigurasi SPIFFS 4M/2M sesuai instruksi, jika tidak program utama tidak akan muat. Papan harus diinisialisasi melalui pemrograman serial dengan konfigurasi itu, jika tidak, Anda mungkin memiliki masalah dengan OTA nanti.

Sayangnya beberapa sensor inisialisasi memblokir jika sensor tidak ada (tergantung pada penyedia perpustakaan). Salah satu contohnya adalah perpustakaan sensor multigas. Untuk memastikan Atmoscan melakukan booting dengan benar dengan firmware lengkap, Anda dapat menonaktifkan proses terkait, lihat poin Tanya Jawab terkait. Cara sederhana untuk menonaktifkan SEMUA sensor untuk pengujian adalah dengan mengomentari baris #define ENABLE_SENSORS dalam file GlobalDefinitions.h.

Ketika papan mem-boot sketsa utama untuk pertama kalinya, ia harus mengenali bahwa itu tidak dikonfigurasi dan harus membuka hotspot wifi, yang dapat Anda sambungkan dan atur. Di antara pengaturan, ada server syslog yang sangat membantu debugging. Anda juga dapat meningkatkan level logging dengan menghapus komentar #define DEBUG_SYSLOG di file GlobalDefinitions.h. Harap dicatat bahwa dalam file yang sama ada juga #define DEBUG_SERIAL yang digunakan selama debugging awal. Jika tidak dikomentari, itu akan menghasilkan _some_ residual logging, tetapi minimal. Item ToDo selalu membuat logging seragam dan dapat dipilih tetapi saya tidak pernah punya waktu untuk membersihkannya.

Sudahkah Anda memodifikasi perpustakaan yang Anda gunakan, apakah ada konfigurasi yang diperlukan? (sebagai lawan mengunduh & kompilasi)

Pertanyaan bagus, saya lupa menyebutkan poin itu. Memang ada beberapa mod/konfigurasi yang dibutuhkan:

  • Perpustakaan https://github.com/Seeed-Studio/Mutichannel_Gas_Sensor - pernyataan debug serial. Perlu dikomentari, karena port serial digunakan untuk sensor!
  • Pustaka https://github.com/Bodmer/TFT_eSPI - memerlukan file konfigurasi tempat penetapan pin dan frekuensi SPI ditentukan
  • Perpustakaan https://github.com/lucadentella/ArduinoLib_MAX1704… - Melihat komentar dan permintaan tarik saya perhatikan ada perbaikan bug yang tidak pernah digabungkan

Sejauh yang saya ingat seharusnya begitu. Beri tahu saya jika ada masalah.

CATATAN: Silakan merujuk ke komentar di kode sumber terbaru - berisi tautan ke semua perpustakaan yang diperlukan dan selalu diperbarui

Mengapa beberapa sensor membaca merah dan beberapa hijau di video/gambar?

Warna menunjukkan tren. Mulainya putih dan jika naik berwarna merah, jika turun berwarna hijau.

Bagaimana Anda menangani penyimpangan sensor dari waktu ke waktu? Seberapa baik sensor ini? Apa yang bisa saya lihat dengan sensor ini?

Sejujurnya ini bukan alat pengukuran ilmiah. Untuk mengkalibrasi saya membutuhkan peralatan yang tidak saya miliki. Ini benar-benar proyek hewan peliharaan. Saya mencoba beberapa sensor. Partikel, CO2, suhu, kelembaban, tekanan, Geiger agak bagus menurut saya. Pada NO2 saya memiliki reservasi pada kalibrasi dan desain keseluruhan, tetapi tidak banyak tersedia. Secara keseluruhan, mereka adalah sensor arus utama.

Namun, kombinasinya cukup bagus untuk menunjukkan hal-hal yang tidak Anda duga.

Dengan Atmoscan di ruang tamu dan dapur yang berjarak satu ruangan, ia mendeteksi puncak partikel yang sangat besar ketika mis. menggoreng barang. Rasanya NO2 dari lalu lintas pagi bahkan dengan jendela tertutup.

Apakah penghitung Geiger benar-benar diperlukan? Apakah itu menunjukkan sesuatu yang berguna?

Untungnya kita belum pernah mengalami insiden nuklir dan perang belum datang… Tetap saja, ada pembangkit nuklir tidak terlalu jauh dan pemerintah membagikan pil yodium untuk anak-anak untuk disimpan di laci jika terjadi insiden… jadi saya curiga. Sejauh ini saya harus mengatakan bahwa bacaannya persis sesuai dengan radiasi latar yang diharapkan (0,12 uSv/jam)

Berapa total biaya perangkat?

Saya sudah memiliki banyak komponen di rumah dan tautan di atas memberi Anda gambaran. Sejujurnya, jika Anda membeli NetAtmo yang sudah jadi atau sejenisnya, Anda menghemat uang. Anda tidak dapat mengalahkan perusahaan China yang melakukan berbagai hal dalam skala besar! Namun, jika Anda menikmati membuat bersama dengan anak-anak Anda, itu sangat berharga. Bagian baiknya adalah saya sudah menguji (dan membuang) sejumlah sensor untuk Anda….

Bagaimana dengan PCB? Bisakah Anda menjual saya satu?

Saya awalnya memiliki 10 di antaranya yang dibuat oleh dirtypcbs.com dan file saya berfungsi dengan baik. Kualitas bagus dan cukup murah, 25USD / 20Euro untuk 10 PCB. Saya menggunakan dua dan saya senang mengirim yang tersisa dengan biaya kosong (2 Euro + pengiriman, tergantung pada lokasi dan preferensi pengiriman). Saya khawatir saya harus memilih yang pertama mengirimi saya pesan pribadi.

Bisakah Anda membuat kampanye kit atau kickstarter?

Menyanjung, tapi sejujurnya saya tidak pernah berpikir itu cukup inovatif… dan selain itu, TIDAK ADA WAKTU!!

Namun, jika seseorang mengambil ide itu, iterasi kedua akan diperlukan. Ada beberapa tepi tajam dalam desain yang layak untuk dikoreksi, tetapi sekali lagi saya tidak pernah punya cukup waktu untuk V2.

Pada Perangkat Keras: Dapatkah saya menambah / menghapus sensor, layar dll untuk memperluas kemampuan / mengurangi konsumsi daya?

Layar terhubung tanpa menggunakan MISO sehingga CPU tidak pernah membaca dari layar. Oleh karena itu Anda tidak dapat menghubungkan semut layar, itu akan berfungsi dengan baik. Karena itu, layar hanya menyala beberapa saat setelah gerakan terakhir terdeteksi sehingga tidak terlalu memengaruhi konsumsi daya.

Sensornya malah haus daya dan semuanya menggunakan 400/500mA dengan mudah. Jangan lupa kipas angin dan juga fakta bahwa sensor partikel juga memiliki kipas built-in. ESP juga tidak masuk ke mode tidur, karena kurangnya pons GPIO. Namun, itu mungkin akan menghemat 20mA…

Perangkat lunak ini bersifat modular dan Anda dapat dengan mudah menambah/menghapus proses dan layar sehingga Anda dapat menambahkan sensor atau menyalakannya dengan menghapus beberapa, jika diinginkan. Satu-satunya batasan adalah jumlah pin GPIO. Namun, sensor dapat dengan mudah ditambahkan jika I2C, atau sebagai alternatif I2C expander dapat digunakan untuk menambahkan GPIO…

Untuk menonaktifkan sensor, misalnya untuk menguji sebagian build, cara terbaik menurut saya adalah tidak memulai proses terkait. Ini dapat dilakukan dengan mengomentari panggilan enable() terkait di fungsi void startProcesses() di file.ino utama. Kecuali jika Anda ingin memodifikasi sistem secara struktural, saya tidak akan menghapus proses sama sekali karena layar dan proses MQTT akan melakukan polling. Dengan cara ini mereka seharusnya mengembalikan nol. Harap dicatat bahwa input interupsi untuk papan geiger harus ditarik ke bawah jika tidak digunakan, jika tidak, papan tidak akan bisa boot.

Apa perbaikan yang akan Anda buat jika Anda punya waktu untuk V2.0?

Tidak dalam urutan tertentu..

  • PCB dapat menghindari tembaga di belakang antena ESP8266. Saya benar-benar lupa dan itu membuat diagram radiasi menjadi non-isotropik
  • Chargernya menurut saya kekecilan untuk baterai sebesar itu / baterainya terlalu besar untuk chargernya. Ada IC lain dan saya akan mencoba yang lain.
  • Ada pengukur baterai yang lebih baik.
  • Saya akan menambahkan sensor ozon
  • Saya akan menggunakan ESP32 untuk lebih banyak GPIO dan sensor Bluetooth dari unit utama.
  • Jika saya memiliki lebih banyak GPIO baik dengan ESP32 atau dengan expander I2C, saya akan menggunakan satu untuk mengontrol kipas dan satu lagi untuk mematikan unit dari perangkat lunak. Sekarang ketika baterai rendah, satu-satunya hal yang dapat dilakukan untuk menampilkan layar baterai rendah. Ini sebenarnya adalah kelemahan terbesar dari desain, karena situasi baterai rendah tidak ditangani dengan baik.

Pada Perangkat Lunak

Butuh waktu lebih lama daripada perangkat keras… Saya pikir itu berisi sejumlah konsep bagus, sayangnya tidak sepenuhnya diterapkan. Secara khusus, saya percaya itu harus dibersihkan, berpotensi diperluas dan kerangka kerja umum untuk aplikasi ESP8266 dapat dengan mudah diturunkan darinya. Tidak ada waktu. Ada yang mau ambil tantangannya?

Bisakah Anda menambahkan kontrol Suara?

Harus layak. Ada sejumlah perpustakaan siap pakai untuk mengontrol ESP8266 dengan Alexa dan saya tidak melihat mengapa integrasi harus menjadi masalah. Pertanyaan yang menarik adalah apa yang ingin Anda lakukan dengannya, dari segi fungsionalitas. Saya tidak memiliki Amazon Echo jadi saya tidak pernah mencobanya.

Bagaimana Anda membuat potongan laser?

Gambar dibuat dengan SketchUp. Program ini bagus tetapi sangat tidak memiliki kemampuan mengekspor. Namun, versi uji coba 30 hari membantu karena memiliki fungsi tambahan. Saya kemudian mengimpornya di Inkscape untuk pemrosesan akhir.

Bisakah Anda mengaktifkan/menonaktifkan sensor untuk menghemat daya, melalui MOSFET?

Ide bagus pada prinsipnya, tetapi sebagian besar sensor ini perlu dinyalakan setiap saat karena memiliki waktu pemanasan. Selain itu… Saya kehabisan GPIO di ESP8266. Saya bahkan harus menggunakan GPIO10 yang secara resmi tidak berfungsi, tetapi berfungsi dengan baik di ESP12E.

Keterampilan apa yang saya butuhkan?

Untuk membangunnya dari awal, Anda memerlukan beberapa latar belakang desain elektronik. Tidak banyak juga, saat ini dengan internet Anda tidak benar-benar perlu membaca lembar data baris demi baris seperti di masa-masa awal saya… Jika Anda menggunakan hasil eksperimen saya, Anda memerlukan beberapa keterampilan menyolder SMD, keterampilan mekanik, dan kesabaran.

Apakah ini proyek pertama Anda?

Ini adalah instruksi pertama saya tetapi bukan proyek pertama saya. Saya banyak bermain-main di masa lalu tetapi saya benar-benar tidak punya banyak waktu saat ini. Saya membangkitkan kembali keterampilan berkarat saya saat saya mencoba untuk mengajarkan sesuatu yang berguna untuk anak-anak saya..! Saya membuat beberapa proyek lagi yang mungkin suatu hari akan saya terbitkan..

Direkomendasikan: