Kui soovite integreerida 9 vabadusastme (9-DOF) andurit oma Arduino projektidesse, olete jõudnud õigesse kohta. Need seadmed on äärmiselt kasulikud orientatsiooni, kiirenduse ja pöörlemise mõõtmiseks kolmemõõtmelises ruumis. Selles artiklis uurime põhjalikult, kuidas kasutada Adafruit 9-DOF-i, selle ühendusi ja konfiguratsiooni Arduinoga.
9-DOF andurid ühendavad kolme erinevat tüüpi andureid: kiirendusmõõturid, magnetomeetrid ja güroskoobid. See muudab need oluliseks tööriistaks suundade ja liikumiste täpseks jälgimiseks. Nende juhiste abil saate oma Adafruit 9-DOF andurit Arduinoga kiiresti ja tõhusalt kasutama hakata.
Mis on 9 vabadusastme (9-DOF) andur?
9-DOF anduril on kolm andurit ühes: a kiirendusmõõtur, Üks magnetomeeter ja güroskoop. Kiirendusmõõtur mõõdab kiirendust kolmel teljel, võimaldades tuvastada orientatsiooni gravitatsiooni suhtes. Magnetomeeter tuvastab magnetvälja, mis on kasulik magnetilise põhjasuuna määramiseks. Lõpuks mõõdab güroskoop nurkpööret.
Need kolm andurit pakuvad a kolmemõõtmeline liikumise taju ja orientatsiooni, muutes selle ideaalseks selliste rakenduste jaoks nagu robootika, droonid või kantavad seadmed.
9-DOF-anduri ühendamine Arduinoga
Kui teil on andur olemas, on järgmine samm ühendada see oma Arduino plaadiga. Kui kavatsete kasutada I2C liides, mis on kõige levinum, on Adafruit 9-DOF anduri I2C vaikeaadress 0x69. Kuid saate selle muuta ka 0x68-ks, ühendades aadressi viigu GND-ga.
Ühendus I2C kaudu
Ühendusprotsess on lihtne. Kasutades STEMMA QT pistikut või a jootevaba leivalaud, peate lihtsalt toite- ja andmekontaktid sobitama. Kui kasutate STEMMA pistikut, peate selle ühendama ainult I2C tihvtidega (SCL ja SDA).
Kasutage SPI-ga 9-DOF-andurit
Kui eelistate kasutada SPI-liidest, peate ühenduse jaoks lubama CS-, SCK-, MOSI- ja MISO-viigud ning määrama koodis sätted.
Installige Arduinosse vajalikud teegid
Selleks, et teie Adafruiti andur Arduinoga korralikult töötaks, peate installima mitu teeki. Esimene asi, mida vajate, on Adafruit ICM20X raamatukogu, mis ühildub ICM20948 ja ICM20649 anduritega. Selle installimiseks avage Raamatukogu juhataja Arduino IDE-s ja otsige "Adafruit ICM20X".
Lisaks sellele peate installima ka Adafruit BusIO raamatukogu ja Adafruit Unified Sensor Library.
Näidiskood Adafruit 9-DOF andurile
Kui kõik on ühendatud ja vajalikud teegid installitud, saate laadida ühe näidetest, et kontrollida, kas kõik töötab hästi. Mine aadressile Fail -> Näited -> Adafruit ICM20X ja valige test, mis teie anduriga ühildub.
See näide prindib väärtused nagu temperatuur, samuti telgede väärtused X, Y ja Z güroskoop, kiirendusmõõtur ja magnetomeeter. Tulemust saate kontrollida jadamonitorilt, mille sagedus on 115200 XNUMX boodi.
Põhinäide mõõtmiseks ICM20948-ga
#include <Adafruit_ICM20X.h>#include <Adafruit_ICM20948.h>#include <Adafruit_Sensor.h>#include <Wire.h>
Teegi näidetes toodud kood võimaldab teil saada sündmusi erinevatelt anduritelt. Täpsemate projektide puhul saate aga vastavalt oma vajadustele muuta nii kiirendusmõõturi kui ka güroskoobi tundlikkusvahemiku sätteid.
Kuidas pöörlemisaruanded töötavad anduril BNO085
Kui lisaks ICM20948 anduritele kasutate 9-DOF-andurit, näiteks BNO085, see võimaldab teil luua rotatsiooniaruanded, mis on oluline täpsemate andmete saamiseks keeruliste liikumiste korral orienteerumise kohta.
Oluline detail, mida peaksite meeles pidama, on see, et selle anduri jaoks on vaja mikrokontrollerit suurem mälumaht, nagu SAMD21, SAMD51 või nRF52. Elementaarsemate Arduino plaatide, nagu Uno või Leonardo, kasutamine pole soovitatav, kuna neil pole piisavalt muutmälu.
Lisaks kasutab BNO085 spetsiaalset I2C-rakendust, mida kõik süsteemid ei toeta. Näiteks see andur ei tööta korralikult kiipidega nagu ESP32 või I2C multiplekseritega. Selle töö on aga üsna usaldusväärne sellistel platvormidel nagu RP2040, STM32F4 või SAMD51.
LSM9DS1 läbimurde disain ja omadused
LSM9DS9 1-DOF andur sobib ideaalselt orientatsiooni ja liikumise jälgimiseks soodsama hinnaga võrreldes teiste sarnaste anduritega. See integreerib mitu mõõtmisvahemikku, mis võimaldavad teil kohandada oma projekti jaoks vajalikku täpsustaset.
Sellel anduril on a I2C liides y SPI, muutes selle mitmekülgseks erinevate arendusplatvormide jaoks. Saate selle hõlpsasti ühendada Arduinoga, pakkudes pinget vahemikus 3 kuni 5 V ja ühendades I2C tihvtid SCL y SDA.
Erinevused LSM9DS0-st
Üks peamisi erinevusi seisneb selles kiirendusmõõturi vahemikud, mis LSM9DS1-s on ±2, ±4, ±8 ja ±16 g, samas kui teised andurid, näiteks LSM9DS0, sisaldavad täiendavat vahemikku ±6 g.
Mida saate teha Adafruit 9-DOF anduriga?
Seda tüüpi andurid sobivad ideaalselt selliste projektide arendamiseks nagu autonoomsed robotid, navigatsioonisüsteemid ja žestipõhised seadmed. Selle pakutava kiirenduse, pööramise ja orientatsiooni teabe abil saate ehitada seadme, mis jälgib täpselt keerulisi liikumisi.