
Version 1.0.0
センサー LSM9DS1 これは、 加速度計、ジャイロスコープ、磁力計、すべてが 1 つのチップに統合されています。このセンサーは汎用性が高く、3 次元空間での動きと方向の測定を必要とするプロジェクトで使用されます。これは、ナビゲーション デバイス、ロボットのモーション コントロール、拡張現実システムなどのアプリケーションでよく使用されます。
このガイドでは、それがどのように機能するか、どのように統合するかについて詳しく説明します。 Arduinoの 読み取った内容を解釈する際に考慮すべき点について説明します。さらに、その機能を最大限に活用するために、特定のライブラリを使用してプログラミングする方法を学習します。
LSM9DS1センサーの特徴
LSM9DS1はセンサーです 9自由度(9DOF)つまり、3 つの異なるセンサーを使用して 3 軸の動きを測定できるということです。
- 加速度計: X、Y、Z 軸の加速度を測定し、傾きと速度を検出します。
- ジャイロスコープ: 3 つの軸すべてで角速度を測定します。方向の変化を検出するのに役立ちます。
- 磁力計: デジタルコンパスとして機能し、地球の磁場の方向を判定することができます。
このモジュールはマイクロコントローラと通信し、 I2C または SPI 各センサーごとに異なる測定範囲を提供します。
- 加速度計: ±2g、±4g、±8g、±16g
- ジャイロスコープ: ±245 dps、±500 dps、±2000 dps
- 磁力計: ±4ガウス、±8ガウス、±12ガウス、±16ガウス
LSM9DS1をArduinoに接続する
LSM9DS1センサーを使用するには Arduinoの適切な通信プロトコルを使用して物理的な接続を確立する必要があります。このセンサーでは、次の 2 つの接続方法が可能です。
I2C経由での接続
インターフェースを使うと I2Cセンサーピンを次のように接続します。
- VCC:3.3V
- GND:GND
- SDA: ATmega4Pベースのボード上のA328(Arduino Uno、ナノなど)
- SCL: ATmega5Pボード上のA328
SPI経由の接続
使用する場合 SPIは次のように接続されます。
- VCC:3.3V
- GND:GND
- MOSI:D11
- 味噌:D12
- SCLK:D13
- CS: 選択可能なデジタルピン
ライブラリと最初のコードのインストール
使用を容易にするために LSM9DS1Arduinoには公式ライブラリがあり、 図書館管理者。検索するだけ 「Arduino_LSM9DS1」 そしてそれをインストールします。
インストールしたら、次のテスト コードを読み込むことができます。
#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);}
このコードは、 磁場 磁力計によって検出され、シリアルモニターに表示されます。
得られた値の解釈
によって得られたデータは、 LSM9DS1 これらは実際の物理的な測定値を表す数値です。
- 加速度計 値をg(地球の重力)単位で返します。
- ジャイロスコープ 角速度をdps(度/秒)で測定します。
- 磁力計 磁場の強度をマイクロテスラ (µT) 単位で測定します。
このデータを実際のプロジェクトに統合するには、カルマン フィルターまたは補完フィルターを使用したセンサー フュージョンなどの手法を適用することをお勧めします。
LSM9DS1の用途
このセンサーは、次のようなさまざまなプロジェクトで使用できます。
- デジタルコンパス: 磁力計の値を使用して方向を決定します。
- ナビゲーションシステム: 加速度計とジャイロスコープを組み合わせて変位を測定します。
- 移動制御: ロボット工学や VR デバイスで傾きや回転を検出するために使用されます。
その多用途性のおかげで、 LSM9DS1 これは、動きと方向に関する正確な知識を必要とするプロジェクトの設計における重要なツールです。
LSM9DS1 は、動きと方向を高精度で測定するのに最適です。との統合 Arduinoの 特定のライブラリのおかげで、リアルタイムのデータを取得できます。 加速, 回転 y 磁場。適切な調整とデータ解釈により、ロボット工学、ナビゲーション、環境との相互作用における高度なアプリケーションを開発できます。