Potpuni vodič za senzor LSM9DS1 s Arduinom: akcelerometar, žiroskop i magnetometar

  • LSM9DS1 je 9DOF senzor koji mjeri ubrzanje, rotaciju i magnetizam.
  • Može se spojiti na Arduino preko I2C ili SPI, ovisno o potrebama projekta.
  • Biblioteka Arduino_LSM9DS1 olakšava korištenje i integraciju u projekte.
  • Idealan je za navigaciju, kontrolu pokreta i aplikacije proširene stvarnosti.
LSM9DS1

Verzija 1.0.0

Senzor LSM9DS1 To je sofisticirani inercijalni mjerni modul koji uključuje a akcelerometar, žiroskop i magnetometar, sve u jednom čipu. Ovaj senzor je vrlo svestran i koristi se u projektima koji zahtijevaju mjerenje kretanja i orijentacije u trodimenzionalnom prostoru. Uobičajen je u aplikacijama kao što su navigacijski uređaji, kontrola kretanja u robotici i sustavi proširene stvarnosti.

U ovom ćemo vodiču detaljno istražiti kako funkcionira, kako ga integrirati s Arduino i koje aspekte treba uzeti u obzir prilikom tumačenja čitanja. Osim toga, naučit ćemo kako ga programirati pomoću specifičnih biblioteka kako bismo maksimalno iskoristili njegove mogućnosti.

Značajke senzora LSM9DS1

LSM9DS1 je senzor 9 stupnjeva slobode (9DOF), što znači da može mjeriti kretanje u tri osi pomoću tri različita senzora:

  • Brzinomjer: Mjeri ubrzanje na X, Y i Z osi, omogućujući otkrivanje nagiba i brzine.
  • Žiroskop: mjeri kutnu brzinu u sve tri osi, korisno za otkrivanje promjena u orijentaciji.
  • Magnetometar: Omogućuje određivanje smjera Zemljinog magnetskog polja, funkcionirajući kao digitalni kompas.

Ovaj modul komunicira s mikrokontrolerom putem I2C ili SPI i nudi različite mjerne raspone za svaki senzor:

  • Brzinomjer: ±2g, ±4g, ±8g, ±16g
  • Žiroskop: ±245 dps, ±500 dps, ±2000 dps
  • Magnetometar: ±4 gausa, ±8 gausa, ±12 gausa, ±16 gausa

Spajanje LSM9DS1 na Arduino

Za korištenje senzora LSM9DS1 s Arduino, moramo uspostaviti fizičku vezu pomoću odgovarajućeg komunikacijskog protokola. Ovaj senzor omogućuje dvije metode povezivanja:

Povezivanje putem I2C

Ako koristimo sučelje I2C, spojit ćemo pinove senzora na sljedeći način:

  • VCC: 3.3V
  • GND:GND
  • SDA: A4 na ATmega328P pločama (Arduino Uno, Nano, itd.)
  • SCL: A5 na ATmega328P pločama

Spajanje preko SPI

U slučaju korištenja SPI, povezat će se na sljedeći način:

  • VCC: 3.3V
  • GND:GND
  • TRAĆITI VRIJEME: D11
  • Miso: D12
  • SCLK: D13
  • CS: Digitalni pin koji se može odabrati

Instaliranje knjižnice i prvog koda

Da biste olakšali korištenje LSM9DS1, Arduino ima službenu biblioteku koju možemo instalirati iz Administrator knjižnice. Samo traži «Arduino_LSM9DS1» i instalirajte ga.

Nakon instaliranja, možemo učitati sljedeći testni kod:

#include void setup() {Serial.begin(115200);while (!Serial);if (!IMU.begin()) {Serial.println("Error al iniciar el IMU.");while (1);}}void loop() {float x, y, z;if (IMU.magneticFieldAvailable()) {IMU.readMagneticField(x, y, z);Serial.print("Campo magnetico: ");Serial.print(x); Serial.print(", ");Serial.print(y); Serial.print(", ");Serial.println(z);}delay(500);}

Ovaj kod glasi magnetsko polje otkriven magnetometrom i prikazan na serijskom monitoru.

Tumačenje dobivenih vrijednosti

Podaci dobiveni od strane LSM9DS1 To su numeričke vrijednosti koje predstavljaju stvarna fizička mjerenja:

  • Akcelerometar vraća vrijednosti u g (Zemljina gravitacija).
  • Žiroskop mjeri kutnu brzinu u dps (stupnjevi u sekundi).
  • Magnetometar mjeri intenzitet magnetskog polja u mikroteslama (µT).

Za integraciju ovih podataka u stvarni projekt, preporučljivo je primijeniti tehnike kao što je fuzija senzora pomoću Kalmanovih ili komplementarnih filtara.

Primjene LSM9DS1

Ovaj senzor se može koristiti u raznim projektima, kao što su:

  • Digitalni kompasi: korištenje vrijednosti magnetometra za određivanje smjera.
  • navigacijski sustavi: kombiniranje akcelerometra i žiroskopa za mjerenje pomaka.
  • Kontrola pokreta: u robotici i VR uređajima za otkrivanje nagiba i rotacije.

Zahvaljujući svojoj svestranosti, LSM9DS1 To je ključni alat u izradi projekata koji zahtijevaju precizno poznavanje kretanja i orijentacije.

LSM9DS1 izvrstan je izbor za mjerenje kretanja i orijentacije s velikom preciznošću. Njegova integracija sa Arduino Jednostavan je zahvaljujući specifičnim bibliotekama, što omogućuje dobivanje podataka u stvarnom vremenu ubrzanje, rotacija y magnetsko polje. Uz odgovarajuću kalibraciju i interpretaciju podataka, mogu se razviti napredne aplikacije u robotici, navigaciji i interakciji s okolinom.


Budite prvi koji će komentirati

Ostavite svoj komentar

Vaša email adresa neće biti objavljen. Obavezna polja su označena s *

*

*

  1. Za podatke odgovoran: Miguel Ángel Gatón
  2. Svrha podataka: Kontrola neželjene pošte, upravljanje komentarima.
  3. Legitimacija: Vaš pristanak
  4. Komunikacija podataka: Podaci se neće dostavljati trećim stranama, osim po zakonskoj obvezi.
  5. Pohrana podataka: Baza podataka koju hostira Occentus Networks (EU)
  6. Prava: U bilo kojem trenutku možete ograničiti, oporaviti i izbrisati svoje podatke.