Skip to main content

加速度計の使い方

note

この文書は AI によって翻訳されています。内容に不正確な点や改善すべき点がございましたら、文書下部のコメント欄または以下の Issue ページにてご報告ください。
https://github.com/Seeed-Studio/wiki-documents/issues

加速度計の使い方

このリポジトリでは、Wio Terminalから加速度計の値を読み取る方法を示します。

3軸デジタル加速度計の初期化

Wio Terminalで加速度計を初期化するには以下を行います:

  • 出力データレートの設定: lis.setOutputDataRate()、1Hzから5kHzまで設定可能。

  • スケール範囲の設定: lis.FullScaleRange()、2gから16gまで設定可能。

#include"LIS3DHTR.h"
LIS3DHTR<TwoWire> lis;

void setup() {
...
lis.begin(Wire1);
lis.setOutputDataRate(LIS3DHTR_DATARATE_25HZ); // 出力データレートを25Hzに設定、最大5kHzまで設定可能
lis.setFullScaleRange(LIS3DHTR_RANGE_2G); // スケール範囲を2gに設定、2,4,8,16gから選択可能
...
}

加速度計の値を読み取る

Wio Terminalで各軸の加速度計の値を読み取るには、以下の手順に従います:

void loop() {
float x_values, y_values, z_values;
x_values = lis.getAcceleratationX();
y_values = lis.getAcceleratationY();
z_values = lis.getAcceleratationZ();
delay(50); // 一度に大量のデータを読み取るのを避けるための遅延
...
}

注意: 一度に大量のデータを読み取るのを避けるために、遅延を入れることを強く推奨します。

サンプルコード

この例では、加速度計の3軸すべての値をシリアルモニターに出力します。

#include"LIS3DHTR.h"
LIS3DHTR<TwoWire> lis;

void setup() {
Serial.begin(115200);
lis.begin(Wire1);

if (!lis) {
Serial.println("ERROR");
while(1);
}
lis.setOutputDataRate(LIS3DHTR_DATARATE_25HZ); // データ出力レート
lis.setFullScaleRange(LIS3DHTR_RANGE_2G); // スケール範囲を2gに設定
}

void loop() {
float x_values, y_values, z_values;
x_values = lis.getAccelerationX();
y_values = lis.getAccelerationY();
z_values = lis.getAccelerationZ();

Serial.print("X: "); Serial.print(x_values);
Serial.print(" Y: "); Serial.print(y_values);
Serial.print(" Z: "); Serial.print(z_values);
Serial.println();
delay(50);
}
Loading Comments...