Daftar Isi:

Menggunakan Pimoroni Enviro+ FeatherWing Dengan Adafruit Feather NRF52840 Express: 8 Langkah
Menggunakan Pimoroni Enviro+ FeatherWing Dengan Adafruit Feather NRF52840 Express: 8 Langkah

Video: Menggunakan Pimoroni Enviro+ FeatherWing Dengan Adafruit Feather NRF52840 Express: 8 Langkah

Video: Menggunakan Pimoroni Enviro+ FeatherWing Dengan Adafruit Feather NRF52840 Express: 8 Langkah
Video: 3D Hangouts – подсказки, синтезаторы и шлемы 2024, Juli
Anonim
Menggunakan Pimoroni Enviro+ FeatherWing Dengan Adafruit Feather NRF52840 Express
Menggunakan Pimoroni Enviro+ FeatherWing Dengan Adafruit Feather NRF52840 Express
Menggunakan Pimoroni Enviro+ FeatherWing Dengan Adafruit Feather NRF52840 Express
Menggunakan Pimoroni Enviro+ FeatherWing Dengan Adafruit Feather NRF52840 Express
Menggunakan Pimoroni Enviro+ FeatherWing Dengan Adafruit Feather NRF52840 Express
Menggunakan Pimoroni Enviro+ FeatherWing Dengan Adafruit Feather NRF52840 Express

Pimoroni Enviro+ FeatherWing adalah papan yang penuh dengan sensor yang dirancang untuk bekerja dengan rangkaian papan Adafruit Feather. Ini adalah tempat yang berguna untuk memulai bagi siapa saja yang tertarik dengan pemantauan lingkungan, polusi atmosfer, dan pengumpulan data. Ini fitur:

  • Bosch BME280 - sensor suhu, tekanan, kelembaban;
  • Lite-On LTR-559 - sensor cahaya dan jarak;
  • SensorTech MiCS-6814 - gas pengoksidasi, pereduksi gas dan sensor amonia;
  • Mikrofon analog - mengukur polusi suara;
  • Konektor untuk sensor partikel PMS5003 Plantower (tidak termasuk).

Trio sensor oksida logam pada MiCS-6814 termasuk sensor yang kurang umum untuk gas pengoksidasi. Ini berguna karena kepekaannya terhadap nitrogen dioksida (NO2), polutan yang umum di kota-kota dan di dekat jalan-jalan utama.

Pimoroni merekomendasikan Adafruit

  • Feather M4 Express (120MHz, ram 192kB) atau
  • Bulu nRF52840 Express (64MHz, 256kB ram).

nRF52840 dipilih untuk panduan ini karena mendukung Bluetooth Low Energy (BLE) yang memberi papan potensi untuk mengirim data ke perangkat lain.

Feather dan FeatherWing keduanya hadir dengan header jantan yang tidak terikat. Header wanita diharuskan untuk menumpuk papan. Panduan ini menunjukkan penggunaan "header susun" yang memungkinkan papan Feather juga dimasukkan ke dalam papan tempat memotong roti yang memfasilitasi eksperimen dengan sensor tambahan. Header perlu disolder ke papan tetapi ini cukup mudah.

Enviro+ FeatherWing memiliki satu perbedaan halus dibandingkan dengan sepupunya, Kualitas Udara Enviro+ untuk Raspberry Pi. Versi FeatherWing tampaknya dirancang untuk bekerja dengan tegangan di bawah 5V yang memungkinkan baterai lithium polimer (LiPo) tunggal yang menghasilkan 3.7V-4.3V untuk digunakan. Ini memiliki konverter DC-DC untuk menyediakan 5V untuk PMS5003 opsional dan mungkin memberi daya pemanas internal MiCS-6814 secara individual untuk menangani tegangan yang lebih rendah ini.

Gambar utama menunjukkan Enviro+ FeatherWing menampilkan data PM2.5 dan PM10 dari PMS5003. Pertandingan Swan Vestas telah dilakukan di tengah jalan untuk menyalakan lilin.

Artikel kedua mencakup Merencanakan Tingkat Karbon Dioksida Dengan Pimoroni Enviro+ FeatherWing dan Adafruit SCD-30.

Perlengkapan:

  • Pimoroni Enviro+ FeatherWing - Pimoroni | Adafruit - (papan serupa lainnya ada untuk Raspberry Pi)
  • Adafruit nRF52840 Feather Express - Pimoroni | Adabuah
  • Header Susun Bulu - Pimoroni | Adafruit - header wanita normal atau doubler/tripler FeatherWing juga bisa digunakan
  • Pateri
  • Opsional: Sensor partikel PMS5003 Plantower - Pimoroni | Adabuah

Langkah 1: Meningkatkan Bootloader

Papan Feather dapat diperiksa sebelum disolder dengan menghubungkannya ke komputer menggunakan USB. Ini adalah waktu yang berguna untuk memeriksa bootloader - versi lama dapat menghasilkan kesalahan yang membingungkan tetapi tidak berbahaya pada Windows.

Mengklik dua kali tombol reset Feather menyebabkan drive yang disebut FTHR840BOOT ditampilkan ke komputer host. File bernama INFO_UF2. TXT dapat dibuka untuk memeriksa versi, contoh di bawah ini menunjukkan konten yang menunjukkan versi 0.2.6:

F2 Bootloader 0.2.6 lib/nrfx (v1.1.0-1-g096e770) lib/tinyusb (legacy-525-ga1c59649) s140 6.1.1

Model: Adafruit Feather nRF52840 Express Board-ID: NRF52-Bluefruit-v0 Bootloader: s140 6.1.1 Tanggal: 21 Des 2018

Versi sebelum 0.2.9 mengalami bug yang disebutkan di atas. Proses peningkatan yang sedikit rumit dijelaskan di Adafruit Pelajari: Memperkenalkan Adafruit nRF52840 Feather: Perbarui Bootloader dan dibahas di Forum Adafruit: Kesalahan Windows menyalin CircuitPython UF2 ke FTHR840BOOT.

Langkah 2: Menyolder Header

Menyolder Header
Menyolder Header
Menyolder Header
Menyolder Header
Menyolder Header
Menyolder Header

Enviro+ FeatherWing membutuhkan header pria yang terpasang dan Feather membutuhkan header wanita susun yang terpasang.

Teknik umum untuk menemukan pin pada posisi yang benar saat menyolder adalah dengan memasukkannya ke papan tempat memotong roti. Diperlukan kehati-hatian dengan FeatherWing ini karena konektor picoblade di bagian bawah lebih tinggi daripada spacer plastik di header. Hal ini dapat menyebabkan papan disolder secara tidak sengaja pada suatu sudut. Gambar di atas menunjukkan sudut. Ini mudah diselesaikan dengan menaikkan header secara seragam sebesar 2-3mm (0,1 inci) dari papan tempat memotong roti.

Header perempuan susun harus tegak lurus dengan papan. Hal ini dapat dicapai dengan menempatkannya pada permukaan yang rata dan memastikan papan Bulu ditekan dengan kuat pada papan tersebut. Gambar di atas menunjukkan tekanan yang diterapkan dengan pensil dengan perangkat tangan penolong yang tidak tepat yang memberi beban pada pensil. Beberapa header cadangan menyediakan beberapa bantuan tambahan dalam menjaga jarak.

Lembar data MiCS-6814 menyatakan:

Sensor harus disolder ulang dalam suasana netral, tanpa uap fluks menyolder. Sensor tidak boleh terkena pelarut organik konsentrasi tinggi, uap silikon atau asap rokok untuk menghindari keracunan lapisan sensitif.

Sepotong kecil selotip yang menutupi sensor gas adalah tindakan pencegahan yang bijaksana selama penyolderan dan pembersihan fluks. Pelindung layar juga dapat dibiarkan menyala pada tahap ini untuk menangani percikan fluks kecil yang tak terhindarkan dari penyolderan dengan setrika. Mikrofon juga akan mendapat manfaat dari perlindungan dengan selotip selama pembersihan fluks.

Baris panjang pin dapat dengan mudah ditekuk saat melepasnya dari papan tempat memotong roti atau soket lainnya. Berhati-hatilah untuk menghindari mengangkat papan di salah satu ujungnya.

Adafruit memiliki panduan tentang menyolder header susun, Pimoroni memiliki panduan solder umum yang mencakup header dan ada video bagus di YouTube yang menunjukkan cara menyolder header ke papan gaya serupa, GurgleApps: Raspberry Pi Pico Upgrade Number1 - Pin Header Snazzy!

Langkah 3: Memasang Contoh CircuitPython dan Gabungan Plotter

Memasang Contoh CircuitPython dan Plotter Gabungan
Memasang Contoh CircuitPython dan Plotter Gabungan

Jika Anda tidak terbiasa dengan CircuitPython maka ada baiknya membaca panduan Selamat Datang di CircuitPython terlebih dahulu.

Langkah-langkah penginstalan di bawah ini didasarkan pada README pimoroni / EnviroPlus-FeatherWing dan panduan Memulai dengan pustaka yang lebih baru untuk memenuhi CircuitPython 6.x.

  1. Instal versi terbaru CircuitPython (6.0.0 pada Desember 2020) dari https://circuitpython.org/ - proses ini dijelaskan di CircuitPython untuk Feather nRF52840.
  2. Verifikasi instalasi dengan menghubungkan ke konsol serial melalui USB. Prompt REPL menunjukkan versi. Versi juga dapat diperiksa dengan memeriksa boot_out.txt pada drive CIRCUITPY.
  3. Instal pustaka ini dari bundel dari https://circuitpython.org/libraries ke direktori lib di CIRCUITPY:

    1. adafruit_bus_device
    2. adafruit_bme280 (bukan adafruit_bmp280)
    3. adafruit_st7735r (bukan adafruit_st7735)
    4. adafruit_display_text
  4. Instal pustaka ini dari file EnviroPlus-FeatherWing-1.0.zip dari GiHub: pimoroni/EnviroPlus-FeatherWing: Versi 1.0 ke direktori lib di CIRCUITPY:

    1. i2cdevice (jangan bingung dengan perpustakaan i2c_device Adafruit)
    2. pimoroni_envirowing
    3. pimoroni_ltr559
    4. pimoroni_physical_feather_pins
    5. pimoroni_pms5003
    6. Jangan instal pimoroni_circuitpython_adapter dari sini
  5. Instal pustaka adaptor Pimoroni CircuitPython terbaru dengan mengunduh file _init_.py ke dalam direktori lib/pimoroni_circuitpython_adapter yang baru dibuat di CIRCUITPY.
  6. Unduh program contoh plotter gabungan ke CIRCUITPY dengan mengklik Simpan tautan sebagai… di plotters_combined.py
  7. Ganti nama atau hapus file code.py yang ada di CIRCUITPY, lalu ganti nama plotters_combined.py menjadi code.py. File ini dijalankan ketika interpreter CircuitPython dimulai atau dimuat ulang.

Versi yang digunakan untuk panduan ini adalah:

  • SirkuitPython 6.0.0
  • Bundel pustaka CircuitPython adafruit-circuitpython-bundle-6.x-mpy-20201208.zip
  • Pustaka EnviroPlus-FeatherWing Versi 1.0
  • pimoroni_circuitpython_adapter library 9-Des-2020 f062036

Langkah 4: Plotter Gabungan

Plotter Gabungan
Plotter Gabungan

Plotter gabungan memiliki empat layar:

  1. Suara dan Cahaya.
  2. PM2.5 dan PM10.
  3. Suhu, tekanan dan kelembaban.
  4. OX, MERAH dan NH3.

Layar particulate matter (PM) hanya muncul jika Plantower PMS5003 terpasang. Program memeriksa keberadaannya di awal dan mencetak pesan informasi ini jika tidak terhubung:

Batas Waktu Baca PMS5003: Gagal membaca awal byte bingkai

Anda mungkin tidak memiliki pms5003 yang terhubung, melanjutkan tanpa partikulat logging

Interval plot diatur ke 540 detik di bagian atas program. Ini dapat disesuaikan untuk mengontrol laju plot.

Langkah 5: Pin Enviro+ FeatherWing

Enviro+ Pin Sayap Bulu
Enviro+ Pin Sayap Bulu
Enviro+ Pin Sayap Bulu
Enviro+ Pin Sayap Bulu

Enviro+ FeatherWing menggunakan sejumlah besar pin Feather. Berikut ini yang digunakan, nama dalam kurung berasal dari skema penamaan Pimoroni:

  • A0 (pin5) - sensor gas amonia MiCS6814
  • A1 (pin6) - MiCS8614 mengurangi sensor gas
  • A2 (pin7) - sensor gas pengoksidasi MiCS6814
  • A3 (pin8) - mikrofon analog
  • A4 (pin9) - MiCS6814 aktifkan
  • D5 (pin19) - Perintah layar bus SPI
  • D6 (pin20) - Pilih chip layar bus SPI
  • D9 (pin21) - lampu latar (PWM)
  • D10 (pin22) - PMS5003 aktif
  • D11 (pin23) - reset PMS5003
  • D12 (pin24) - interupsi LTR-559 (tidak didukung di perpustakaan CircuitPython)
  • SCK (pin11) - jam bus SPI
  • MO (pin12) - SPI bus master out slave in
  • MI (pin13) - master bus SPI masuk budak keluar
  • RX (pin14) - transmisi PMS5003 (diterima oleh Feather)
  • TX (pin15) - penerimaan PMS5003 (transmisi dari Feather)
  • SCL (pin18) - jam I2C
  • SDA (pin 17) - data I2C

Ini membuat A5, D2/DFU dan D13 gratis untuk digunakan.

Langkah 6: Konsumsi Daya

Konsumsi daya
Konsumsi daya

Konsumsi daya masih dalam batas spesifikasi USB meskipun baterai LiPo terpasang dan sedang diisi ulang. Penggunaannya lebih relevan untuk merencanakan perpindahan ke daya baterai. Beberapa pengukuran arus yang sangat mendekati adalah:

  • 100mA menganggur, lampu latar mati;
  • Plotter 100mA berjalan, lampu latar redup;
  • Plotter 120mA berjalan, lampu latar tinggi.

Lembar data untuk Plantower PMS5003 menyatakan arus kurang dari 100mA, ini akan menjadi tambahan dari angka di atas. Penggunaan konverter DC-DC pada Enviro+ FeatherWing mungkin sedikit meningkatkan angka ini.

Papan Feather nRF52840 Express memiliki NeoPixel (LED RGB) tetapi tingkat kecerahan untuk penggunaan defaultnya sebagai indikator status program hanya menambahkan sedikit konsumsi. Papan Feather sendiri di bawah 10mA, FeatherWing adalah papan yang haus daya.

Langkah 7: Menambahkan Sensor Materi Khusus Plantower PMS5003

Menambahkan Sensor Materi Khusus Plantower PMS5003
Menambahkan Sensor Materi Khusus Plantower PMS5003
Menambahkan Sensor Materi Khusus Plantower PMS5003
Menambahkan Sensor Materi Khusus Plantower PMS5003
Menambahkan Sensor Materi Khusus Plantower PMS5003
Menambahkan Sensor Materi Khusus Plantower PMS5003

Met One Instruments BAM 1020 adalah pemandangan umum di seluruh dunia yang mengukur partikel di kota-kota. Tersedia berbagai perangkat yang lebih terjangkau dan Enviro+ FeatherWing dilengkapi dengan konektor untuk sensor partikel Plantower PMS5003.

Kode perpustakaan Pimoroni untuk sensor ini saat ini tampak rapuh. Perbaikan sederhana dan cepat adalah menangkap pengecualian dalam program. Program plotters_combined.py dapat ditingkatkan dengan menambahkan ini di atas:

impor pimoroni_pms5003

Dan mengganti baris ini di loop while utama

#ambil bacaan

pms_reading = pms5003.read()

dengan:

#ambil bacaan

coba: pms_reading = pms5003.read() kecuali pimoroni_pms5003. ChecksumMismatchError: print("checksum error")

Langkah 8: Melangkah Lebih Jauh

Melangkah Lebih Jauh
Melangkah Lebih Jauh

Ada sejumlah area untuk dijelajahi setelah Anda menjalankan Enviro+ FeatherWing.

  • Menambahkan sensor suhu eksternal. Sensor suhu di BME280 tunduk pada pemanasan internal dan pemanasan dari komponen terdekat dan dimaksudkan untuk mengkalibrasi sensor BME280 lainnya. Nilainya dapat diproses untuk memberikan ukuran perkiraan suhu udara sekitar tetapi ada banyak pilihan eksternal yang unggul dan terjangkau.
  • Kalibrasi sensor. Tekanannya mudah menggunakan pengamatan cuaca atau prakiraan jangka pendek (ini akan berada pada 0 ft amsl), sisanya sulit.
  • Memperbaiki output PMS5003 untuk kelembaban relatif. Sebuah formula disajikan di halaman 8 PDF di EPA: PurpleAir PM2.5 Koreksi dan Kinerja AS Selama Peristiwa Asap 4/2020
  • Menambahkan kode untuk menyiarkan data sensor melalui Bluetooth Low Energy ke perangkat lain.
  • Menyelidiki bagaimana meminimalkan konsumsi daya. Beberapa sensor memiliki saluran pengaktif, ini dapat menghilangkan daya dari sensor atau memasukkannya ke mode daya rendah. Untuk sensor dengan waktu pemanasan secara berkala, pengambilan sampel mungkin tidak praktis.
  • Membeli, mengadaptasi, atau membuat casing yang cocok untuk dipasang di luar dengan aliran udara internal yang dirancang dengan cermat dan tindakan pencegahan yang sesuai untuk sinar matahari langsung. Sensor gas SensorTech MiCS-6814 bekerja paling baik dengan aliran udara yang konstan dan laju rendah di atasnya.
  • Meneliti bagaimana kondisi cuaca mempengaruhi polusi di permukaan tanah. Petunjuk: inversi adalah signifikan.
  • Mengkonversi ke tenaga baterai atau tenaga surya dengan tenaga baterai. Tenaga surya lebih menantang daripada sekadar menambahkan panel surya fotovoltaik, lihat bagian Catatan Desain di Adafruit Pelajari: USB, DC & Solar Lipoly Charger.
  • Menambahkan sensor lain untuk mengukur polutan umum seperti Ozon (O3) dan sulfur dioksida (SO2) atau gas rumah kaca seperti karbon dioksida (CO2). Beberapa sensor mengukur "eCO2" dan tidak cocok untuk mengukur CO2 atmosfer. Adafruit sekarang menjual sensor CO2 Sensirion SCD-30 NDIR bernilai tinggi pada papan dengan konektor STEMMA QT i2c.
  • Jika Anda ingin menyelidiki pengiriman data melalui Internet menggunakan Wi-Fi maka papan FeatherS2 dengan mikrokontroler ESP32-S2 tampaknya kompatibel dengan Enviro+ FeatherWing. Ada batasan bermasalah dengan konverter analog ke digital (ADC) ESP32-S2 yang mencegah pengukuran sensor gas yang tepat. Lihat Adafruit Forums: Feather ADC perbandingan termasuk 2.6V terbatas ESP32-S2 untuk informasi lebih lanjut.

Proyek terkait:

  • Adafruit Learn: Perbandingan dan Eksperimen dengan Sensor Gas Mudah Terbakar
  • Adafruit Belajar: Sensor Suhu TMP36

Bacaan lebih lanjut:

  • Pedoman Polusi Udara Organisasi Kesehatan Dunia (WHO)
  • Yayasan Paru-Paru Inggris - Kualitas Udara (PM2.5 dan NO2)
  • Breathe London - jaringan untuk melengkapi London Air Quality Network dengan "sensor kualitas udara yang terjangkau, mudah dipasang, dan dipelihara untuk siapa pun", saat ini menggunakan Clarity Node-S.
  • Indeks Kualitas Udara Dunia - mengumpulkan data dari berbagai sumber dengan tampilan peta dan data historis.
  • Jurnal Suasana: Polusi Udara Dalam Ruangan dari Kompor Perumahan: Meneliti Banjir Partikulat ke Rumah selama Penggunaan Dunia Nyata - ini menggunakan versi Raspberry Pi dari papan Enviro+.
  • Perundang-undangan: Peraturan Standar Kualitas Udara 2010 (Inggris Raya)
  • Pimoroni Blog: Malam Paling Berpolusi Tahun Ini (di Inggris)
  • The Economist: Midnight sky - Pemanasan rumah berbahan bakar batubara Polandia menciptakan polusi yang meluas (Januari 2021)
  • BBC News: Kebisingan lalu lintas mengganggu kemampuan burung penyanyi (polusi suara)
  • Bug Perangkat Lunak di Pustaka Sensor Materi Partikulat - lihat perawatan yang diperlukan untuk menguraikan protokol serial PMS5003 dengan kuat.