Ako používať Adafruit 9-DOF s Arduino: Kompletný sprievodca

  • 9-DOF senzor ponúka akcelerometer, magnetometer a gyroskop na jednom čipe na detekciu 3D pohybov.
  • Podporuje pripojenie I2C aj SPI a vyžaduje špecifické knižnice nainštalované na Arduino.
  • Konfigurácia a použitie snímača sa líši v závislosti od modelu, zdieľanie presnej orientácie a informácií o rotácii je však bežnou funkciou.

adafruit 9-dof

Ak chcete do svojich projektov Arduino integrovať snímač 9 stupňov voľnosti (9-DOF), ste na správnom mieste. Tieto zariadenia sú mimoriadne užitočné na meranie orientácie, zrýchlenia a rotácie v trojrozmernom priestore. V tomto článku dôkladne preskúmame, ako používať Adafruit 9-DOF, jeho pripojenia a konfiguráciu s Arduino.

9-DOF senzory kombinujú tri rôzne typy senzorov: akcelerometre, magnetometre a gyroskopy. To z nich robí nevyhnutné nástroje na presné sledovanie orientácií a pohybov. S týmito pokynmi môžete začať používať svoj senzor Adafruit 9-DOF s Arduinom rýchlo a efektívne.

Čo je to senzor 9 stupňov voľnosti (9-DOF)?

9-DOF senzor má tri senzory v jednom: a akcelerometer, magnetometer a gyroskop. Akcelerometer meria zrýchlenie v troch osiach, čo mu umožňuje zistiť orientáciu vzhľadom na gravitáciu. Magnetometer detekuje magnetické pole, čo je užitočné na určenie smeru magnetického severu. Nakoniec gyroskop meria uhlovú rotáciu.

Tieto tri senzory sa kombinujú a ponúkajú a trojrozmerné vnímanie pohybu a orientáciu, vďaka čomu je ideálny pre aplikácie ako robotika, drony alebo nositeľné zariadenia.

Pripojenie 9-DOF senzora k Arduinu

Keď máte senzor, ďalším krokom je pripojenie k vašej Arduino doske. Ak plánujete použiť I2C rozhranie, ktorý je najbežnejší, má senzor Adafruit 9-DOF predvolenú I2C adresu 0x69. Môžete ho však zmeniť aj na 0x68 pripojením pinu adresy ku GND.

Pripojenie cez I2C

Proces pripojenia je jednoduchý. S použitím STEMMA QT konektora alebo a nepájkovaná doska na krájanie, musíte jednoducho zladiť napájacie a dátové piny. Ak používate konektor STEMMA, musíte ho pripojiť iba k I2C pinom (SCL a SDA).

Použite 9-DOF snímač s SPI

Ak uprednostňujete používanie rozhrania SPI, budete musieť povoliť kolíky CS, SCK, MOSI a MISO pre pripojenie, ako aj špecifikovať nastavenia v kóde.

Nainštalujte potrebné knižnice na Arduino

Arduino IDE, dátové typy, programovanie

Aby váš senzor Adafruit správne fungoval s Arduinom, budete musieť nainštalovať niekoľko knižníc. Prvá vec, ktorú potrebujete, je Knižnica Adafruit ICM20X, ktorý je kompatibilný so snímačmi ICM20948 a ICM20649. Ak ho chcete nainštalovať, otvorte Správca knižnice v Arduino IDE a vyhľadajte „Adafruit ICM20X“.

Okrem toho budete musieť nainštalovať Knižnica Adafruit BusIO a Zjednotená knižnica senzorov Adafruit.

Príklad kódu pre senzor Adafruit 9-DOF

Keď máte všetko pripojené a potrebné knižnice nainštalované, môžete načítať jeden z príkladov a skontrolovať, či všetko funguje správne. Prejsť na Súbor -> Príklady -> Adafruit ICM20X a vyberte test, ktorý je kompatibilný s vaším snímačom.

Tento príklad vytlačí hodnoty ako teplota, ako aj hodnoty na osiach X, Y a Z gyroskopu, akcelerometra a magnetometra. Výsledok môžete skontrolovať na sériovom monitore nastavenom na 115200 baudov.

Základný príklad pre merania s ICM20948

#include <Adafruit_ICM20X.h>#include <Adafruit_ICM20948.h>#include <Adafruit_Sensor.h>#include <Wire.h>

Kód uvedený v príkladoch knižnice vám umožní získať udalosti z rôznych senzorov. Pre pokročilejšie projekty však môžete upraviť nastavenia rozsahu citlivosti akcelerometra aj gyroskopu podľa vašich potrieb.

Ako fungujú hlásenia rotácie na snímači BNO085

Ak okrem snímačov ICM20948 používate aj 9-stupňový snímač, ako je napr BNO085, to vám umožní generovať správy o rotácii, dôležité pre získanie podrobnejších údajov o orientácii v zložitých pohyboch.

Dôležitým detailom, ktorý by ste mali mať na pamäti, je, že tento senzor vyžaduje mikrokontrolér väčšia kapacita pamäteako je SAMD21, SAMD51 alebo nRF52. Používanie základných dosiek Arduino, ako sú Uno alebo Leonardo, sa neodporúča, pretože nemajú dostatok pamäte RAM.

Okrem toho BNO085 využíva špeciálnu implementáciu I2C, ktorá nie je podporovaná všetkými systémami. Napríklad tento snímač nefunguje korektne s čipmi ako napr ESP32 alebo s I2C multiplexermi. Jeho fungovanie je však celkom spoľahlivé na platformách ako napr RP2040, STM32F4 alebo SAMD51.

Dizajn a funkcie breakoutu LSM9DS1

Snímač LSM9DS9 1-DOF je ideálny na sledovanie orientácie a pohybu s prijateľnejšou cenou v porovnaní s inými podobnými snímačmi. Integruje niekoľko meracích rozsahov, ktoré vám umožňujú nastaviť úroveň presnosti potrebnú pre váš projekt.

Tento snímač má a I2C rozhranie y SPI, vďaka čomu je všestranný pre rôzne vývojové platformy. Môžete ho ľahko pripojiť k Arduinu, poskytujúcemu napätie medzi 3 a 5V a pripojením I2C pinov na SCL y SDA.

Rozdiely s LSM9DS0

Jeden z hlavných rozdielov spočíva v rozsahy akcelerometra, ktoré v LSM9DS1 sú ±2, ±4, ±8 a ±16 g, zatiaľ čo iné snímače, ako napríklad LSM9DS0, zahŕňajú dodatočný rozsah ±6 g.

Čo môžete robiť so snímačom Adafruit 9-DOF?

Tento typ snímačov je ideálny pre vývoj projektov ako napr autonómne robotynavigačné systémy a zariadenia založené na gestách. S informáciami o zrýchlení, rotácii a orientácii, ktoré poskytuje, môžete zostaviť zariadenie, ktoré presne sleduje zložité pohyby.


Buďte prvý komentár

Zanechajte svoj komentár

Vaša e-mailová adresa nebude zverejnená. Povinné položky sú označené *

*

*

  1. Zodpovedný za údaje: Miguel Ángel Gatón
  2. Účel údajov: Kontrolný SPAM, správa komentárov.
  3. Legitimácia: Váš súhlas
  4. Oznamovanie údajov: Údaje nebudú poskytnuté tretím stranám, iba ak to vyplýva zo zákona.
  5. Ukladanie dát: Databáza hostená spoločnosťou Occentus Networks (EU)
  6. Práva: Svoje údaje môžete kedykoľvek obmedziť, obnoviť a vymazať.