Visas LSM9DS1 jutiklio su Arduino vadovas: akselerometras, giroskopas ir magnetometras

  • LSM9DS1 yra 9DOF jutiklis, matuojantis pagreitį, sukimąsi ir magnetizmą.
  • Jis gali būti prijungtas prie Arduino per I2C arba SPI, priklausomai nuo projekto poreikių.
  • Arduino_LSM9DS1 biblioteka leidžia lengvai naudotis ir integruoti į projektus.
  • Tai idealiai tinka navigacijai, judesio valdymui ir papildytos realybės programoms.
LSM9DS1

Versija 1.0.0

Jutiklis LSM9DS1 Tai sudėtingas inercinio matavimo modulis, kuriame yra a akselerometras, giroskopas ir magnetometras, viskas viename luste. Šis jutiklis yra labai universalus ir naudojamas projektuose, kuriuose reikia matuoti judesį ir orientaciją trimatėje erdvėje. Tai įprasta tokiose programose kaip navigacijos įrenginiai, judesio valdymas robotikoje ir papildytos realybės sistemos.

Šiame vadove mes išsamiai išnagrinėsime, kaip jis veikia, kaip jį integruoti Arduino ir į kokius aspektus reikia atsižvelgti interpretuojant savo skaitymus. Be to, išmoksime jį programuoti naudodami konkrečias bibliotekas, kad išnaudotume visas jo galimybes.

LSM9DS1 jutiklio savybės

LSM9DS1 yra jutiklis 9 laisvės laipsniai (9DOF), tai reiškia, kad jis gali matuoti judėjimą trimis ašimis, naudodamas tris skirtingus jutiklius:

  • Akselerometras: Matuoja pagreitį X, Y ir Z ašyse, leidžiančią aptikti posvyrį ir greitį.
  • Giroskopas: matuoja kampinį greitį visose trijose ašyse, naudinga nustatant orientacijos pokyčius.
  • Magnetometras: Tai leidžia nustatyti Žemės magnetinio lauko kryptį, veikiant kaip skaitmeninis kompasas.

Šis modulis palaiko ryšį su mikrovaldikliu per I2C arba SPI ir kiekvienam jutikliui siūlo skirtingus matavimo diapazonus:

  • Akselerometras: ±2g, ±4g, ±8g, ±16g
  • Giroskopas: ±245 dps, ±500 dps, ±2000 dps
  • Magnetometras: ±4 gauss, ±8 gauss, ±12 gauss, ±16 gauss

LSM9DS1 prijungimas prie Arduino

Norėdami naudoti jutiklį LSM9DS1 su Arduino, turime užmegzti fizinį ryšį naudodami atitinkamą ryšio protokolą. Šis jutiklis leidžia prijungti du būdus:

Ryšys per I2C

Jei naudosime sąsają I2C, mes sujungsime jutiklio kaiščius taip:

  • VCC: 3.3V
  • GND:GND
  • gamtos turtai: A4 ant ATmega328P plokščių (Arduino Uno, nano ir kt.)
  • LAT: A5 ant ATmega328P plokščių

Ryšys per SPI

Naudojimo atveju SPI, bus prijungtas taip:

  • VCC: 3.3V
  • GND:GND
  • DAWDLE: D11
  • Sojų pasta: D12
  • SCLK: D13
  • CS: pasirenkamas skaitmeninis kaištis

Bibliotekos ir pirmojo kodo įdiegimas

Kad būtų lengviau naudotis LSM9DS1, Arduino turi oficialią biblioteką, kurią galime įdiegti iš Bibliotekos administratorė. Tiesiog ieškok „Arduino_LSM9DS1“ ir įdiekite.

Įdiegę galime įkelti šį testo 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);}

Šis kodas nuskaito magnetinis laukas aptinkamas magnetometro ir rodomas serijiniame monitoriuje.

Gautų verčių aiškinimas

Duomenys, gauti pagal LSM9DS1 Tai yra skaitinės vertės, atspindinčios tikrus fizinius matavimus:

  • Akselerometras grąžina reikšmes g (Žemės gravitacija).
  • Giroskopas matuoja kampinį greitį dps (laipsniais per sekundę).
  • Magnetometras matuoja magnetinio lauko intensyvumą mikroteslomis (µT).

Norint integruoti šiuos duomenis į realų projektą, patartina taikyti tokius metodus kaip jutiklių suliejimas naudojant Kalman arba Complementary filtrus.

LSM9DS1 programos

Šis jutiklis gali būti naudojamas įvairiuose projektuose, pavyzdžiui:

  • Skaitmeniniai kompasai: magnetometro verčių naudojimas krypčiai nustatyti.
  • navigacinės sistemos: akselerometro ir giroskopo derinys poslinkiams matuoti.
  • Judėjimo valdymas: robotikoje ir VR įrenginiuose, kad būtų galima aptikti pakreipimą ir sukimąsi.

Dėl savo universalumo, LSM9DS1 Tai pagrindinė priemonė kuriant projektus, kuriems reikia tikslių judėjimo ir orientacijos žinių.

LSM9DS1 yra puikus pasirinkimas judesiui ir orientacijai matuoti dideliu tikslumu. Jo integracija su Arduino Tai paprasta dėl konkrečių bibliotekų, kurios leidžia gauti duomenis realiuoju laiku pagreitis, sukimasis y magnetinis laukas. Tinkamai kalibruojant ir interpretuojant duomenis, galima sukurti pažangias robotikos, navigacijos ir sąveikos su aplinka programas.


Būkite pirmas, kuris pakomentuos

Palikite komentarą

Jūsų elektroninio pašto adresas nebus skelbiamas. Privalomi laukai yra pažymėti *

*

*

  1. Atsakingas už duomenis: Miguel Ángel Gatón
  2. Duomenų paskirtis: kontroliuoti šlamštą, komentarų valdymą.
  3. Įteisinimas: jūsų sutikimas
  4. Duomenų perdavimas: Duomenys nebus perduoti trečiosioms šalims, išskyrus teisinius įsipareigojimus.
  5. Duomenų saugojimas: „Occentus Networks“ (ES) talpinama duomenų bazė
  6. Teisės: bet kuriuo metu galite apriboti, atkurti ir ištrinti savo informaciją.