Members
(readonly) connectType :KMMotorCommandKMOne.KM_CONNECT_TYPE
- Source:
- Inherited From:
接続方式
Type:
(readonly) deviceInfo :KMDeviceInfo
- Source:
- Inherited From:
デバイス情報
Type:
(readonly) EVENT_TYPE :string
- Source:
- Inherited From:
Properties:
Name | Type | Description |
---|---|---|
init |
string | 初期化完了時 |
connect |
string | 接続時 |
disconnect |
string | 切断時 |
connectFailure |
string | 接続に失敗時 |
motorMeasurement |
string | モーター回転情報受信時 |
imuMeasurement |
string | モーターIMU情報受信時 |
motorLog |
string | モーターログ情報受信時 |
イベントタイプ定数
Type:
- string
(readonly) isConnect :boolean
- Source:
- Inherited From:
モーターとの接続が有効か
Type:
- boolean
name
- Source:
- Inherited From:
モーター名
Methods
cmdAcc(acc)
モーターの加速度を設定する
- Source:
- Inherited From:
acc は、モーションコントロール ON の場合、加速時に使用されます。(加速時の直線の傾き)
Parameters:
Name | Type | Default | Description |
---|---|---|---|
acc |
number |
0
|
float 加速度 0-200 [radian / second^2](正の値) |
cmdCurveType(cmdCurveType_CURVE_TYPE)
加減速曲線を指定する(モーションコントロールの設定)
- Source:
- Inherited From:
Parameters:
Name | Type | Default | Description |
---|---|---|---|
cmdCurveType_CURVE_TYPE |
KMMotorCommandKMOne.cmdCurveType_CURVE_TYPE |
0
|
int 加減速カーブオプション |
cmdDec(dec)
モーターの減速度を設定する
- Source:
- Inherited From:
dec は、モーションコントロール ON の場合、減速時に使用されます。(減速時の直線の傾き)
Parameters:
Name | Type | Default | Description |
---|---|---|---|
dec |
number |
0
|
float 減速度 0-200 [radian / second^2](正の値) |
cmdDisable()
モーター動作を不許可とする(上位命令)
- Source:
- Inherited From:
安全用:この命令を入れるとモーターは動作しない
コマンドはタスクセットに記録することは不可
cmdDisableIMUMeasurement()
IMU(ジャイロ)の値取得(通知)を停止する
- Source:
- Inherited From:
cmdEnable()
モーター動作を許可する(上位命令)
- Source:
- Inherited From:
安全用:この命令を入れるとモーターは動作可能となる
モーター起動時は disable 状態のため、本コマンドで動作を許可する必要があり
コマンドはタスクセットに記録することは不可
cmdEnableCheckSum(isEnabled)
チェックサム(CRC16) 有効化
- Source:
- Inherited From:
コマンド(タスク)のチェックサムを有効化する
Parameters:
Name | Type | Description |
---|---|---|
isEnabled |
number | 0:Disbled, 1:Enabled |
cmdEnableIMUMeasurement()
IMU(ジャイロ)の値取得(通知)を開始する (BLE専用コマンド)
- Source:
- Inherited From:
本コマンドを実行すると、IMUのデータはBLEのキャラクタリスティクスMOTOR_IMU_MEASUREMENTに通知される
MOTOR_IMU_MEASUREMENTのnotifyはイベントタイプ KMMotorCommandKMOne.EVENT_TYPE.imuMeasurement に通知
cmdEnterDeviceFirmwareUpdate()
ファームウェアアップデートモードに入る
- Source:
- Inherited From:
ファームウェアをアップデートするためのブートローダーモードに入る。(システムは再起動される。)
cmdEraseAllMotion()
全てのモーションを消去する
- Source:
- Inherited From:
cmdEraseAllTaskset()
全てのタスクセットを消去する
- Source:
- Inherited From:
cmdEraseMotion(index)
指定したインデックスのモーションを消去する
- Source:
- Inherited From:
KM-1 の場合、インデックスの値は 0~19 (計20個記録)となる
Parameters:
Name | Type | Default | Description |
---|---|---|---|
index |
number |
0
|
int インデックス |
cmdEraseTaskset(index)
指定のインデックスのタスクセットを消去する
- Source:
- Inherited From:
Parameters:
Name | Type | Default | Description |
---|---|---|---|
index |
number |
0
|
int インデックス |
cmdFree()
モーターの励磁を停止する(感触は残ります)
- Source:
- Inherited From:
完全フリー状態を再現する場合は、 cmdFree().cmdDisable() として下さい。
cmdHoldTorque(torque)
トルク制御を行う
- Source:
- Inherited From:
速度や位置を同時に制御する場合は、モーター設定の 0x0E: maxTorque と 0x60: runForward 等を併用して下さい。
Parameters:
Name | Type | Description |
---|---|---|
torque |
number | float トルク 単位:N・m [-X ~ + X Nm] 推奨値 0.3-0.05 |
cmdIMUMeasurementByDefault(isEnabled)
6軸センサー(加速度・ジャイロ)の値の通知をデフォルトで開始する
- Source:
- Inherited From:
isEnabled = true の場合、enableIMU() を送信しなくても起動時に自動で通知が開始される
Parameters:
Name | Type | Description |
---|---|---|
isEnabled |
number | 0:Disbled, 1:Enabled |
cmdIMUMeasurementInterval(cmdIMUMeasurementInterval_IMU_MEAS_INTERVAL)
6軸センサー(加速度・ジャイロ)測定値の取得間隔
- Source:
- Inherited From:
有線(USB, I2C)のみ有効。BLEでは固定 100ms 間隔で通知される。
Parameters:
Name | Type | Default | Description |
---|---|---|---|
cmdIMUMeasurementInterval_IMU_MEAS_INTERVAL |
KMMotorCommandKMOne.cmdIMUMeasurementInterval_IMU_MEAS_INTERVAL |
4
|
enum 加速度・ジャイロ測定値の取得間隔 |
cmdInterface(bitFlg)
モーター制御手段(インターフェイス)の設定
- Source:
- Inherited From:
uint8_t flags ビットにより、含まれるパラメータを指定する(1の場合含む・0の場合含まない)
Parameters:
Name | Type | Description |
---|---|---|
bitFlg |
number | bit7 bit6 bit5 bit4 bit3 bit2 bit1 bit0 物理 有線 有線 無線 ボタン * * I2C USB * * BLE デフォルト デフォルト デフォルト デフォルト |
cmdLed(cmdLed_LED_STATE, red, green, blue)
LEDの点灯状態をセットする
- Source:
- Inherited From:
Parameters:
Name | Type | Description |
---|---|---|
cmdLed_LED_STATE |
KMMotorCommandKMOne.cmdLed_LED_STATE | int 点灯状態 |
red |
number | int 0-255 |
green |
number | int 0-255 |
blue |
number | int 0-255 |
cmdMaxSpeed(maxSpeed)
モーターの最大速さを設定する
- Source:
- Inherited From:
Parameters:
Name | Type | Description |
---|---|---|
maxSpeed |
number | float 最大速さ [radian / second](正の値) |
cmdMaxTorque(maxTorque)
モーターの最大トルク(絶対値)を設定する
- Source:
- Inherited From:
maxTorque を設定することにより、トルクの絶対値が maxTorque を超えないように運転します。
maxTorque = 0.1 [Nm] の後に runForward (正回転)を行った場合、0.1 Nm を超えないようにその速度をなるだけ維持する。
ただし、トルクの最大値制限により、システムによっては制御性(振動)が悪化する可能性がある。
Parameters:
Name | Type | Description |
---|---|---|
maxTorque |
number | float 最大トルク [N*m](正の値) |
cmdMinSpeed(maxSpeed)
モーターの最小速さを設定する
- Source:
- Inherited From:
minSpeed は、blePreparePlaybackMotion 実行の際、開始地点に移動する速さとして使用される。通常時運転では使用されない。
Parameters:
Name | Type | Description |
---|---|---|
maxSpeed |
number | float 最小速さ [radian / second](正の値) |
cmdMotorMeasurementByDefault(isEnabled)
モーター測定値の取得設定
- Source:
- Inherited From:
isEnabled = 1 の場合、(位置・速度・トルク)の通知を行う(起動後、interface の設定で優先される通信経路に、自動的に通知が開始される)
Parameters:
Name | Type | Description |
---|---|---|
isEnabled |
number | 0:Disbled, 1:Enabled |
cmdMotorMeasurementInterval(cmdMotorMeasurementInterval_MOTOR_MEAS_INTERVAL)
モーター測定値の取得間隔設定
- Source:
- Inherited From:
有線(USB, I2C)のみ有効。BLEでは固定 100ms 間隔で通知される。
Parameters:
Name | Type | Default | Description |
---|---|---|---|
cmdMotorMeasurementInterval_MOTOR_MEAS_INTERVAL |
KMMotorCommandKMOne.cmdMotorMeasurementInterval_MOTOR_MEAS_INTERVAL |
4
|
enum モーター測定値の取得間隔 |
cmdMoveByDistance(distance, speed)
相対位置に移動する
- Source:
- Inherited From:
速さは cmdSpeed で保存された速度が採用される
Parameters:
Name | Type | Default | Description |
---|---|---|---|
distance |
number |
0
|
float 角度:radians[左:+radians 右:-radians] |
speed |
number |
null
|
float 速度の大きさ 単位:角度(ラジアン)/秒 [0-X rps] (正の数) |
cmdMoveToPosition(position, speed)
絶対位置に移動する
- Source:
- Inherited From:
速さは cmdSpeed で保存された速度が採用される
Parameters:
Name | Type | Default | Description |
---|---|---|---|
position |
number | float 角度:radians |
|
speed |
number |
null
|
float 速度の大きさ 単位:角度(ラジアン)/秒 [0-X rps] (正の数) |
cmdOwnColor(red, green, blue)
モーターの起動時固有LEDカラーを設定する
- Source:
- Inherited From:
ownColor はアイドル時の固有LEDカラー。
saveAllSettingsを実行し、再起動後に初めて反映される。
この設定値を変更した場合、BLEの Device Name の下3桁が変更される。
Parameters:
Name | Type | Description |
---|---|---|
red |
number | int 0-255 |
green |
number | int 0-255 |
blue |
number | int 0-255 |
cmdPauseQueue()
キューを一時停止する
- Source:
- Inherited From:
cmdPlaybackInterval(interval)
記憶再生時の再生間隔
- Source:
- Inherited From:
記憶再生時の再生間隔
Parameters:
Name | Type | Description |
---|---|---|
interval |
number | ms(2-1000 0, 1msはエラーとなる) |
cmdPositionP(positionP)
モーターの位置PIDコントローラのP(比例)ゲインを設定する
- Source:
- Inherited From:
Parameters:
Name | Type | Description |
---|---|---|
positionP |
number | float 位置Pゲイン(正の値) |
cmdPresetPosition(position)
位置のプリセットを行う(原点設定)(単位系:ラジアン)
- Source:
- Inherited From:
Parameters:
Name | Type | Default | Description |
---|---|---|---|
position |
number |
0
|
float 絶対角度:radians |
cmdQCurrentD(qCurrentD)
モーターのq軸電流PIDコントローラのD(微分)ゲインを設定する
- Source:
- Inherited From:
Parameters:
Name | Type | Description |
---|---|---|
qCurrentD |
number | float q電流Dゲイン(正の値) |
cmdQCurrentI(qCurrentI)
モーターのq軸電流PIDコントローラのP(比例)ゲインを設定する
- Source:
- Inherited From:
Parameters:
Name | Type | Description |
---|---|---|
qCurrentI |
number | float q電流Iゲイン(正の値) |
cmdQCurrentP(qCurrentP)
モーターのq軸電流PIDコントローラのP(比例)ゲインを設定する
- Source:
- Inherited From:
Parameters:
Name | Type | Description |
---|---|---|
qCurrentP |
number | float q電流Pゲイン(正の値) |
cmdReadAllRegister() → {Promise.<array>}
- Source:
- Inherited From:
モーターの全てのレジスタ値の取得
Returns:
- Type
- Promise.<array>
cmdReadDeviceInfo() → {Promise.<any>}
デバイス情報の取得
- Source:
- Inherited From:
デバイスインフォメーションを読み取る
Returns:
- Type
- Promise.<any>
cmdReadDeviceName() → {Promise.<(int|Array)>}
デバイスネームの取得
- Source:
- Inherited From:
デバイスネームを読み取る
Returns:
- Type
- Promise.<(int|Array)>
cmdReadPositionOffset() → {Promise.<(int|Array)>}
位置のプリセットに関するOFFSET量
- Source:
- Inherited From:
位置のオフセット量(presetPositionで設定した値に対応)を読み取る
Returns:
- Type
- Promise.<(int|Array)>
cmdReadRegister(registers) → {Promise.<(int|array)>}
指定した設定値を取得 (BLE専用コマンド)
- Source:
- Inherited From:
Parameters:
Name | Type | Description |
---|---|---|
registers |
number | array |
Returns:
取得した値
registersがint=レジスタ値のプリミティブ値
registersがArray=レジスタ値のオブジェクト
- Type
- Promise.<(int|array)>
cmdReadStatus() → {Promise.<(int|Array)>}
モーターの状態を読み取る (read専用)
- Source:
- Inherited From:
Returns:
- Type
- Promise.<(int|Array)>
cmdReboot()
システムを再起動する
- Source:
- Inherited From:
BLEに接続していた場合、切断してから再起動
cmdResetAllRegisters()
全てのレジスタをファームウェアの初期値にリセットする
- Source:
- Inherited From:
bleSaveAllRegistersを実行しない限り、リセット値はモーターに永久的に保存されない(再起動で消える)
cmdResetPID()
全てのPIDパラメータをリセットしてファームウェアの初期設定に戻す
- Source:
- Inherited From:
qCurrentP, qCurrentI, qCurrentD, speedP, speedI, speedD, positionP をリセットします
cmdResetQueue()
キューをリセットする
- Source:
- Inherited From:
cmdResetRegister(register)
指定したレジスタをファームウェアの初期値にリセットする
- Source:
- Inherited From:
Parameters:
Name | Type | Description |
---|---|---|
register |
KMMotorCommandKMOne.cmdReadRegister_COMMAND | 初期値にリセットするコマンド(レジスタ)値 |
cmdResumeQueue()
キューを再開する(蓄積されたタスクを再開)
- Source:
- Inherited From:
cmdRunForward()
正回転する(反時計回り)
- Source:
- Inherited From:
cmdSpeed で保存された速度で、正回転
cmdRunReverse()
逆回転する(時計回り)
- Source:
- Inherited From:
cmdSpeed で保存された速度で、逆回転
cmdSaveAllRegisters()
全ての設定値をフラッシュメモリに保存する
- Source:
- Inherited From:
本コマンドを実行しない限り、設定値はモーターに永久的に保存されない(再起動で消える)
cmdSetI2CSlaveAddress(address)
I2Cスレーブアドレス
- Source:
- Inherited From:
I2Cから制御する場合のスレーブアドレス(0x00-0xFF)を設定する
Parameters:
Name | Type | Description |
---|---|---|
address |
number | アドレス |
cmdSetTasksetName()
タスクセットの記録名設定
- Source:
- Inherited From:
タスクセットの記録名を設定する。(これから記録するものに対して)
cmdSpeed(speed)
速度の大きさをセットする(単位系:ラジアン)
- Source:
- Inherited From:
Parameters:
Name | Type | Default | Description |
---|---|---|---|
speed |
number |
0
|
float 速度の大きさ 単位:角度(ラジアン)/秒 [0-X rps] (正の数) |
cmdSpeed_rpm(speed_rpm)
速度の大きさをセットする(単位系:RPM)
- Source:
- Inherited From:
Parameters:
Name | Type | Default | Description |
---|---|---|---|
speed_rpm |
number |
0
|
float [0-X rpm] (正の数) |
cmdSpeedD(speedD)
モーターの速度PIDコントローラのD(微分)ゲインを設定する
- Source:
- Inherited From:
Parameters:
Name | Type | Description |
---|---|---|
speedD |
number | float 速度Dゲイン(正の値) |
cmdSpeedI(speedI)
モーターの速度PIDコントローラのI(積分)ゲインを設定する
- Source:
- Inherited From:
Parameters:
Name | Type | Description |
---|---|---|
speedI |
number | float 速度Iゲイン(正の値) |
cmdSpeedP(speedP)
モーターのq軸電流PIDコントローラのD(微分)ゲインを設定する
- Source:
- Inherited From:
Parameters:
Name | Type | Description |
---|---|---|
speedP |
number | float 速度Pゲイン(正の値) |
cmdStartDoingTaskset(index, repeating)
記憶したタスク(命令)のセットを実行する
- Source:
- Inherited From:
KM-1 は index: 0~49 まで。(50個のメモリバンク 各8128 Byte まで制限あり)
タスクセットの記録は、コマンド(タスクセット)を参照下さい。 https://document.keigan-motor.com/motor-control-command/taskset.html
Parameters:
Name | Type | Default | Description |
---|---|---|---|
index |
number |
0
|
int タスクセット番号(0~65535) |
repeating |
number |
1
|
int 繰り返し回数 0は無制限 |
cmdStartPlaybackMotion(index, repeating, start_position)
モーションを再生(準備なし)
- Source:
- Inherited From:
モーションのプレイバックを(準備なしで)プレイバック開始する
Parameters:
Name | Type | Default | Description |
---|---|---|---|
index |
number |
0
|
int モーション番号(0~65535) |
repeating |
number |
0
|
int 繰り返し回数 0は無制限 |
start_position |
KMMotorCommandKMOne.cmdPreparePlaybackMotion_START_POSITION |
0
|
int スタート位置の設定 |
cmdStartRecordingTaskSet(index)
タスク(命令)のセットの記録を開始する
- Source:
- Inherited From:
記憶するインデックスのメモリはコマンド:eraseTaskset により予め消去されている必要があり
Parameters:
Name | Type | Default | Description |
---|---|---|---|
index |
number |
0
|
int インデックス KM-1 の場合、インデックスの値は 0~49 (計50個記録) |
cmdStartTeachingMotion(index, time)
ダイレクトティーチング開始(準備なし)
- Source:
- Inherited From:
KM-1 の場合、インデックスの値は 0~19 (計20個記録)となる。記録時間は 65408 [msec] を超えることはできない 記憶するインデックスのメモリはbleEraseMotion により予め消去されている必要がある
Parameters:
Name | Type | Default | Description |
---|---|---|---|
index |
number |
0
|
int インデックス [0-19] |
time |
number | int 記録時間 [msec 0-65408] |
cmdStop()
モーターを速度ゼロまで減速し停止する
- Source:
- Inherited From:
rpm = 0 となる。
cmdStopDoingTaskset()
タスクセットを停止
- Source:
- Inherited From:
タスクセットの再生を停止する
cmdStopRecordingTaskset()
タスクセットの記録を停止する
- Source:
- Inherited From:
cmdStopTeachingMotion()
実行中のティーチングを停止する
- Source:
- Inherited From:
cmdTeachingInterval(interval)
ダイレクトティーチングのサンプリング間隔
- Source:
- Inherited From:
ティーチング・プレイバックの実行間隔
Parameters:
Name | Type | Description |
---|---|---|
interval |
number | ms(2-1000 0, 1msはエラーとなる) |
cmdWaitQueue(time)
キューを指定時間停止し再開する
- Source:
- Inherited From:
cmdPause(キュー停止)を実行し、指定時間(ミリ秒)経過後、自動的に cmdResume(キュー再開) を行います。
Parameters:
Name | Type | Default | Description |
---|---|---|---|
time |
number |
0
|
停止時間[msec] |
connect()
- Source:
モーターと接続する
disConnect()
- Source:
モーターと切断