動きブロックは、入力として使用できる3軸の加速度センサーを 1 つ備えています。
ブロックの制御に使用する特性(characteristic)は MESH ブロックの機能利用を、具体的な接続の流れは接続方法を参照してください。
動きブロックの加速度計算について
x方向加速度・y方向加速度・z方向加速度
動きブロックのセンサーから通知される値と加速度の関係式は以下で表されます。センサー値は2の補数です。通知される値は16ビット幅ありますが、センサーの精度が12bitのため、加速度が正の値の場合と負の場合で取り得る値の範囲は以下のとおりです。
-
加速度が正の場合:加速度 = センサー値 / 1,024
-
加速度が負の場合:加速度 = (センサー値 - 65,536) / 1,024
表記 |
値の範囲 |
---|---|
10進数 |
0 ~ 2,047(0 ~ 1.999 G の範囲) 63,488 ~ 65,535(-2 ~ -0.001 G の範囲) |
16進数 |
0x0000 ~ 0x07FF(0 ~ 1.999 G の範囲) 0xF800 ~ 0xFFFF(-2 ~ -0.001 G の範囲) |
通知
Event Type ID 一覧
Event Type ID |
通知イベントの種類 |
説明 |
---|---|---|
0x00 |
タップイベント検知 |
振動を感知したら通知 |
0x01 |
シェイクイベント検知 |
振られたときに通知 |
0x02 |
フリップイベント検知 |
ひっくり返されたときに通知 |
0x03 |
オリエンテーションイベント検知 |
向きが変わったときに通知 |
タップイベント検知
動きブロックが振動を感知したら通知します。
データ位置 |
内容 |
例(下線 は固定値) |
---|---|---|
0 |
0x01 |
|
1 |
0x00 (タップイベント検知) |
|
2 - 3 |
使用しません |
- |
4 |
LSB 0xE8、MSB 0x03(0.976 G) |
|
5 |
||
6 |
LSB 0xDB、MSB 0xFF(0.036 G) |
|
7 |
||
8 |
LSB 0x00、MSB 0x00(0.000 G) |
|
9 |
||
10 - 15 |
使用しません |
- |
16(最終データ) |
|
LSBおよびMSBに関しては、リトルエンディアンを参照してください。
シェイクイベント検知
動きブロックが振られた時に通知します。
データ位置 |
内容 |
例(下線 は固定値) |
---|---|---|
0 |
0x01 |
|
1 |
0x01 (シェイクイベント検知) |
|
2 - 3 |
使用しません |
ー |
4 |
LSB 0xE8、MSB 0x03(0.976 G) |
|
5 |
||
6 |
LSB 0xDB、MSB 0xFF(0.036 G) |
|
7 |
||
8 |
LSB 0x00、MSB 0x00(0.000 G) |
|
9 |
||
10~15 |
使用しません |
ー |
16(最終データ) |
|
LSBおよびMSBに関しては、リトルエンディアンを参照してください。
フリップイベント検知
動きブロックがひっくり返された時に通知します。
データ位置 |
内容 |
例(下線 は固定値) |
---|---|---|
0 |
0x01 |
|
1 |
0x02 (フリップイベント検知) |
|
2 - 3 |
使用しません |
- |
4 |
LSB 0xE8、MSB 0x03(0.976 G) |
|
5 |
||
6 |
LSB 0xDB、MSB 0xFF(0.036 G) |
|
7 |
||
8 |
LSB 0x00、MSB 0x00(0.000 G) |
|
9 |
||
10~15 |
使用しません |
ー |
16(最終データ) |
|
LSBおよびMSBに関しては、リトルエンディアンを参照してください。
オリエンテーションイベント検知
ブロックの向きが変わった時に、上を向いている面を通知します。
データ位置 |
内容 |
例(下線 は固定値) |
---|---|---|
0 |
0x01 |
|
1 |
0x03 |
|
2 |
0x01(1面) |
|
3 |
使用しません |
ー |
4 |
LSB 0xE8、MSB 0x03(0.976 G) |
|
5 |
||
6 |
LSB 0xDB、MSB 0xFF(0.036 G) |
|
7 |
||
8 |
LSB 0x00、MSB 0x00(0.000 G) |
|
9 |
||
10~15 |
使用しません |
ー |
16(最終データ) |
|
LSBおよびMSBに関しては、リトルエンディアンを参照してください。
上を向いている面
値 |
状態 |
説明 |
---|---|---|
0x00 |
不定 |
|
0x01 |
1面 |
左面が上 |
0x02 |
2面 |
下面が上 |
0x03 |
3面 |
表面が上 |
0x04 |
4面 |
裏面が上 |
0x05 |
5面 |
上面が上 |
0x06 |
6面 |
右面が上 |