もくじ
KeiganMotor サービス
KeiganMotor の制御を司る独自のサービスです。
Service UUID: f140ea35-8936-4d35-a0ed-dfcd795baa8c
アドバタイズしている、KeiganMotor のスキャン(絞り込み)には、上記のUUIDを使用して下さい。
| Characteristics | UUID (128bit) |
|---|---|
| Motor Control KeiganMotorへの設定、制御命令を取り扱う |
f1400001-8936-4d35-a0ed-dfcd795baa8c |
| Motor LED KeiganMotorのLEDを取り扱う |
f1400003-8936-4d35-a0ed-dfcd795baa8c |
| Motor Measurement モーターの位置・速度・トルク等測定値を取り扱う |
f1400004-8936-4d35-a0ed-dfcd795baa8c |
| Motor IMU Measurement KeiganMotorの加速度・ジャイロセンサー(IMU)を取り扱う |
f1400005-8936-4d35-a0ed-dfcd795baa8c |
| Motor Settings KeiganMotorの設定値を取り扱う |
f1400006-8936-4d35-a0ed-dfcd795baa8c |
KeiganMotor Service の各キャラクタリスティクス
read
write
write_without_response
Characteristics UUID: f1400001-8936-4d35-a0ed-dfcd795baa8c
本キャラクタリスティクスに、以下の コマンド (無線-有線共通)を書き込むことにより、KeiganMotorを制御します。
read
write
write_without_response
Characteristics UUID: f1400003-8936-4d35-a0ed-dfcd795baa8c
本キャラクタリスティクスに、以下の形式でデータを書き込むと、LEDを制御します。
| byte | [0] | [1] | [2] | [3] |
|---|---|---|---|---|
| 値 | uint8_t ledState | uint8_t red | uint8_t green | uint8_t blue |
| 説明 | 点灯モード (下記) |
red 強度 0-255 |
green 強度 0-255 |
blue 強度 0-255 |
typedef enum ledState =
{
LED_STATE_OFF = 0, // LED消灯
LED_STATE_ON_SOLID = 1, // LED点灯(点灯しっぱなし)
LED_STATE_ON_FLASH = 2, // LED点滅(一定間隔で点滅)
LED_STATE_ON_DIM = 3 // LEDがゆっくり明滅する
}
:DisConnectted
read
notify
Characteristics UUID: f1400004-8936-4d35-a0ed-dfcd795baa8c
本キャラクタリスティクスに、モーターの位置、速度、トルクの測定値が通知されます。
データの形式は下記となります。
| byte | [0][1][2][3] | [4][5][6][7] | [8][9][10][11] |
|---|---|---|---|
| 値 | float position | float velocity | float torque |
| 説明 | 絶対位置 [radian] |
角速度 [radian/second] |
トルク [N*m] |
read
notify
Characteristics UUID: f1400005-8936-4d35-a0ed-dfcd795baa8c
本キャラクタリスティクスに、IMU(加速度・ジャイロセンサー)の測定値が通知されます。
ジャイロセンサーは各軸周りの角速度を出力します。データの形式は下記となります。
| byte | [0][1] | [2][3] | [4][5] | [6][7] | [8][9] | [10][11] | [12][13] |
|---|---|---|---|---|---|---|---|
| 値 | int16_t accel-x | int16_t accel-y | int16_t accel-z | int16_t temp | int16_t gyro-x | int16_t gyro-y | int16_t gyro-z |
| 説明 | 加速度(x) -32,768 – 32,767 |
加速度(y) -32,768 – 32,767 |
加速度(z) -32,768 – 32,767 |
温度 -32,768 – 32,767 |
角速度(x) -32,768 – 32,767 |
角速度(y) -32,768 – 32,767 |
角速度(z) -32,768 – 32,767 |
各値については以下にて単位変換を行ってください。読み取った生の値を raw_value, 変換した値を value と定義します。
- 加速度
value [G] = raw_value * 2 / 32,767 - 温度
value [℃] = raw_value / 333.87 + 21.00 - 角速度
value [degree/second] = raw_value * 250 / 32,767
value [radians/second] = raw_value * 0.00013316211
※ 1.0 G = 9.80665 m/s^2
read
write
write_without_response
Characteristics UUID: f1400006-8936-4d35-a0ed-dfcd795baa8c
本キャラクタリスティクスに、コマンド(モーター設定) を書き込むことにより、モーターの設定(レジスタ)を読み書きします。
(無線-有線共通コマンド)
