■CurieIMU.getDetectionDuration関数
CurieIMU.hライブラリの CurieIMU.getDetectionDuration関数は、検出時間の値を返します。
■使用例
CurieIMU.getDetectionDuration関数を使ったArduinoIDEのプログラム例は図1の通りです。このプログラムを実行すると指定した機能に設定された検出時間をms単位で取得し、その値を図2の様にシリアルモニタ上に出力します。
#include "CurieIMU.h" void setup() { Serial.begin(9600); // シリアル通信を初期化 while (!Serial); // シリアルポートが開くのを待つ // デバイスの初期化 Serial.println("Initializing IMU device..."); CurieIMU.begin(); // 加速度計の範囲を2Gに設定する CurieIMU.setAccelerometerRange(2); } void loop() { float ax, ay, az; //スケールされた加速度計の値 // デバイスからの加速度計測定値を設定された範囲にスケール CurieIMU.readAccelerometerScaled(ax, ay, az); // タブで区切られた加速度計のx / y / z値を表示する Serial.print("getDetectionDuration_CURIE_IMU_TAP:"); Serial.print(CurieIMU.getDetectionDuration(CURIE_IMU_TAP)); Serial.println("ms"); Serial.print("getDetectionDuration_CURIE_IMU_TAP_QUIET:"); Serial.print(CurieIMU.getDetectionDuration(CURIE_IMU_TAP_QUIET)); Serial.println("ms"); Serial.print("getDetectionDuration_CURIE_IMU_DOUBLE_TAP:"); Serial.print(CurieIMU.getDetectionDuration(CURIE_IMU_DOUBLE_TAP)); Serial.println("ms"); Serial.print("getDetectionDuration_CURIE_IMU_ZERO_MOTION:"); Serial.print(CurieIMU.getDetectionDuration(CURIE_IMU_ZERO_MOTION)); Serial.println("ms"); delay(5000); }
図1:プログラム例
図2:プログラム実行結果
■「CurieIMU.setDetectionDuration(feature)」のパラメータ
feature:指定した表1に示すいずれかの機能に設定された検出閾値を返します。
項目 | 内容 |
CURIE_IMU_FREEFALL | 落下の判定 |
CURIE_IMU_SHOCK | 衝突の判定 |
CURIE_IMU_MOTION | 動くの判定 |
CURIE_IMU_ZERO_MOTION | 止まるの判定 |
CURIE_IMU_TAP | 叩くの判定 |
■その他関数
Curie IMUライブラリに関するその他関数については、コチラをご覧ください。
励みになりますのでよければクリック下さい(^o^)/