Data Ketinggian untuk Navigasi Drone: Sensor Tekanan Barometrik Padat dan Termometer dari Bosch

ScanEagle, Drone Canggih Milik Skadron Udara 700 TNI AL Pengintai Kapal Asing (Julai 2019).

$config[ads_text] not found
Anonim

Data Ketinggian untuk Navigasi Drone: Sensor Tekanan Barometrik Padat dan Termometer dari Bosch


Artikel ini melihat dengan lebih dekat pada sensor tekanan barometrik MEMS digital Bosch-Sensortec. Mengukur 2mm x 2mm x 0.8mm, komponen ini direka bentuk untuk menjadi kuasa rendah dan bunyi rendah.

BMP388 Bosch-Sensortec adalah kombinasi barometer / termometer yang sangat kecil yang menggunakan sedikit sebanyak 3.4 μA (dengan kemas kini 1 Hz). Ia direka untuk memberikan ketinggian maklumat kepada instrumen navigasi dengan ketepatan ± 0.66 m.

Gabungan termometer / barometer perlu dibuktikan berguna di stesen cuaca rumah, pembesaran sistem navigasi, dan dron. Ia menyokong kedua-dua antara muka SPI dan I 2 C.

Peranti yang serupa, BMP380, memberikan tekanan mutlak untuk pengiraan ketinggian (dalam ± 0.5 m), dan BME680 menggabungkan gas, tekanan, kelembapan, dan sensor suhu dalam satu pakej.

Ketepatan ± 0.66 m mungkin tidak terdengar sangat baik pada mulanya-tetapi tahu bahawa Bosch memetik spesifikasi ralatnya di seluruh julat sensor. Peranti ini mampu mengesan perbezaan tekanan yang lebih kecil yang bersesuaian dengan ~ 10 cm perubahan ketinggian, dan apabila sensor ini digabungkan dengan sensor lain, cukup untuk membolehkan mesin untuk bergerak tanpa bergerak di langit dengan idea yang sangat baik ketinggian mutlak.

Rajah BMP388 blok dari datasheet

Sensor menyokong SPI (3-wire atau 4-wire) serta interfacing I 2 C. Penampan FIFO 512-byte membolehkan data yang diambil dalam pecahan selepas gangguan yang boleh dikonfigurasikan menunjukkan "FIFO penuh, " "data siap, " atau "tahap penyimpanan FIFO melebihi" (AKA "tanda air" mengganggu). Konfigurasi dilakukan melalui daftar onboard, dan Bosch telah menyediakan kod sumber untuk mengawal sensor.

Penapisan Data dengan Penapis IIR

BMP388 termasuk penapis tindak balas impuls (IIR) tak terhingga yang membolehkan ia menyaring perubahan mendadak dalam tekanan yang mungkin disebabkan oleh bunyi alam sekitar. Contohnya, perubahan mendadak dalam tekanan udara tertutup yang disebabkan oleh seseorang yang menutup pintu atau menembak senapang. Jenis-jenis kejadian ini menyebabkan tekanan barometrik meningkat dan jangka pendek.

Untuk menyaring gangguan sementara yang tiba-tiba ini, BMP388 boleh menghantar data pengukuran tekanan melalui IIR yang boleh dikonfigurasi, atau ia boleh menghantar data secara langsung ke mikropengaji tuan rumah untuk diproses.

Rajah rajah pengukuran (diubah dari datasheet)

Penapis IIR menggabungkan hasil pengukuran semasa dengan yang sebelumnya untuk membantu mengurangkan sebarang perubahan atau bunyi yang tiba-tiba. Jika anda melaksanakan penapis IIR di dalam peranti anda, anda perlu membuang titik data pertama yang dikumpulnya, kerana ia tidak dapat diproses oleh algoritma.

$$ \ text {data} _ {\ text {filtered}} = \ frac {\ text {data} _ {\ text {filtered-old}} \ cdot {\ text { } _ {\ text {adc}}} {\ text {filter-coefficient} +1} $$

Persamaan yang diambil dari datasheet, halaman 14

Maklum balas langkah dengan pekali penapis IIR yang berbeza dari datasheet .

Mod dan Penggunaan Kuasa

Selain kuasa penuh, peranti mempunyai tiga mod. Selepas kuasa dibekalkan ke pin digital dan analog, peranti memasuki mod tidur. Mengubah dari mod tidur ke mod pengukuran lain dicapai dengan menetapkan bit tertentu dalam daftar "pwr_ctrl".

Mod tidur

Dalam mod tidur, peranti tidak mengambil apa-apa ukuran. Penggunaan semasa ialah 2 μA. Kawalan dan daftar data boleh diakses menerusi SPI atau I 2 C. Dari mod tidur, peranti boleh memasuki mod biasa atau mod yang dipaksa.

Mod paksa

Dalam mod yang dipaksa, peranti melakukan satu kitaran pengukuran, menyimpan data, dan kembali ke mod tidur.

Mod biasa

Dalam mod biasa, peranti akan berulang kali melakukan pengukuran. Kadar pengukuran ditentukan oleh penetapan daftar "odr_sel". Data itu kemudiannya diproses dengan penapis IIR atau disimpan secara langsung dalam buffer FIFO. Penggunaan semasa peranti bergantung kepada kadar pengukuran, dengan kadar yang lebih rendah yang memerlukan kurang semasa.

Rajah rajah (dimodifikasi dari datasheet)

Bagaimana Drones Mempertahankan Ketinggian "// www.allaboutcircuits.com/technical-articles/how-sensor-fusion-works/" target = "_ blank"> sensor fusion: menggabungkan maklumat barometer dan maklumat pecutan dengan pelengkap (atau lain-lain ) penapis.

Data pendailometer boleh diintegrasikan untuk menyediakan data halaju, dan data halaju boleh disepadukan untuk menyediakan data kedudukan. Malangnya, kesilapan integrasi terkumpul dari masa ke masa, dengan menyediakan kedudukan yang semakin tidak sesuai dengan masa berlalu. Sebaliknya, mereka sangat tepat pada jangka masa yang singkat. Barometer menyediakan pengukuran ketinggian kasar yang boleh disempurnakan dengan data pecutan.

Penapis komplementer menggabungkan ukuran barometer dan pecutan untuk memberikan data halaju menegak dan ketinggian menegak yang sangat tepat. Tidak seperti penapis Kalman yang lebih rumit, matematik penapis pelengkap adalah cukup mudah yang dapat dilakukan pada mikrokontroler 8-bit.

Adakah anda mempunyai sebarang pemikiran mengenai sensor tekanan yang sangat kecil ini? Atau adakah anda menggunakan barometer yang berbeza di salah satu projek anda? Beri tahu kami di bahagian komen di bawah.