MX-106T / MX-106R

部品の写真

  

[MX-106T]                                   [MX-106R]

 

コントロールテーブルのコンプライアンス設定部分がPID設定に取り替えられました。使用時にご注意ください。

Control tablePID順序が0x1Eバージョン以降からDIPに変更されました。使用時にご参照ください。

MX-106TTTL)とMX-106RRS485)は通信方式のみ違って 性能と機能は同じです。

 

主な仕様一覧

§       関節モード(0°〜360°)

§       車輪モード(無限回転)

 

 

電源供給時の注意項目!

-安定的な電源供給のためにロボティズ制御器、またSMPS2Dyanamixelを通じて電源供給することをおすすめします。  

-電源が入ってない状態でダイナミクセルと電源を連結、スウィーツでON/OFFしてください。

 

 

Control Table

Control Tableはダイナミクセルの内部に存在する値で、ダイナミクセルの現在の状態と駆動に関するDataで構成されています。

ユーザーは、Instruction Packetを通じてControl Tableのデータを変更することにより、ダイナミクセルを制御することができます。

EEPROM and RAM

RAM Areaのデータは、電源が印加されるごとに再度初期値に設定されます。しかし、EEPROM Area データ場合、値を設定すると電源がOffになってもその値が保存されます。

Address

Addressは、データの位置です。ダイナミクセルにデータの書き込みや読み取りをするためには、PacketにそのデータがあるAddressを指定しなければなりません。

アクセス

ダイナミクセルデータには、読み取り専用(R)と読み書きが可能なもの(RW)の2つがあります。読み取り専用(R)は、主にセンシング用に使用されるデータであり、
読み書きが可能なもの(RW)は、駆動のためのデータです。

初期値

Control Tableの右に表示される初期値は、EEPROM領域のデータの場合、工場出荷値であり、RAM Areaデータの場合は、電源が印加された時の初期値です。

上位バイト/下位バイト

ControlTableには、名称は同じでありますが、(L)と(H)が後ろについてAddressが区分されているものがあります。これは、16bitが必要なデータを8bitずつ
各Address(low、High)に分けて表現したものです。この2つのAddressは、1つのInstruction Packetに同時にwriteされなければなりません。

 

 

Area

アドレス(16進数)

名称

意味

アクセス

初期値(16進数)

E

E

P

R

O

M

0 (0X00)

Model Number(L)

モデル番号の下位バイト

R

64 (0X40)

1 (0X01)

Model Number(H)

モデル番号の上位バイトr

R

1 (0X01)

2 (0X02)

Version of Firmware

ファームウェアバージョンの情報

R

-

3 (0X03)

ID

ダイナミクセルのID

RW

1 (0X01)

4 (0X04)

Baud Rate

ダイナミックセルの通信速度

RW

34 (0X22)

5 (0X05)

Return Delay Time

応答遅延時間

RW

250 (0XFA)

6 (0X06)

CW Angle Limit(L)

時計回りの限界角値の下位バイト

RW

0 (0X00)

7 (0X07)

CW Angle Limit(H)

時計回りの限界角度値の上位バイト

RW

0 (0X00)

8 (0X08)

CCW Angle Limit(L)

反時計回りの限界角度値の下位バイト

RW

255 (0XFF)

9 (0X09)

CCW Angle Limit(H)

反時計回りの限界角度値の上位バイト

RW

15 (0X0F)

10 (0X0A)

Drive Mode

ドライブモード設定

RW

0(0X00)

11 (0X0B)

the Highest Limit Temperature

内部限界温度

 RW

80 (0X50)

12 (0X0C)

the Lowest Limit Voltage

最低限界値電圧

RW

60 (0X3C)

13 (0X0D)

the Highest Limit Voltage

最高限界値電圧

RW

160 (0XA0)

14 (0X0E)

Max Torque(L)

トルク限界値の下位バイト

RW

255 (0XFF)

15 (0X0F)

Max Torque(H)

トルク限界値の上位バイト

RW

3 (0X03)

16 (0X10)

Status Return Level

応答レベル

RW

2 (0X02)

17 (0X11)

Alarm LED

アラーム用LEDの機能

RW

36 (0X24)

18 (0X12)

Alarm Shutdown

アラーム用シャットダウン(Shut down)機能

RW

36 (0X24)

19 (0X14)

Multi Turn Offset(L)

マルチターンオフセットの下位バイト

RW

0 (0X00)

20 (0X15)

Multi Turn Offset(H)

マルチターンオフセットの上位バイト

RW

0 (0X00)

21 (0X16)

Resolution Divider

レゾリューションディバイダー

RW

1 (0X01)

R

A

M

24 (0X18)

Torque Enable

トルクのOn / Off

RW

0 (0X00)

25 (0X19)

LED

LED On/Off

RW

0 (0X00)

26 (0X1A)

D Gain

Derivative Gain

RW

0 (0X00)

27 (0X1B)

I Gain

Integral Gain

RW

0 (0X00)

28 (0X1C)

P Gain

Proportional Gain

RW

32 (0X20)

30 (0X1E)

Goal Position(L)

目標位置値の下位バイト

RW

-

31 (0X1F)

Goal Position(H)

目標位置値の上位バイト

RW

-

32 (0X20)

Moving Speed(L)

目標速度値の下位バイト

RW

-

33 (0X21)

Moving Speed(H)

目標速度値の上位バイト

RW

-

34 (0X22)

Torque Limit(L)

トルク限界値の下位バイト

RW

ADD14

35 (0X23)

Torque Limit(H)

トルク限界値の上位バイト

RW

ADD15

36 (0X24)

Present Position(L)

現在位置値の下位バイト

R

-

37 (0X25)

Present Position(H)

現在位置値の上位バイト

R

-

38 (0X26)

Present Speed(L)

現在速度値の下位バイト

R

-

39 (0X27)

Present Speed(H)

現在速度値の上位バイト

R

-

40 (0X28)

Present Load(L)

現在荷重値の下位バイト

R

-

41 (0X29)

Present Load(H)

現在荷重値の上位バイト

R

-

42 (0X2A)

Present Voltage

現在の電圧

R

-

43 (0X2B)

Present Temperature

現在の温度

R

-

44 (0X2C)

Registered

Instructionの登録状況

R

0 (0X00)

46 (0X2E)

Moving

移動の有無

R

0 (0X00)

47 (0X2F)

Lock

EEPROMのロック

RW

0 (0X00)

48 (0X30)

Punch(L)

Punch値の下位バイト

RW

0 (0X00)

49 (0X31)

Punch(H)

Punch値の上位バイト

RW

0 (0X00)

68 (0X44)

Current(L)

モータが消費している電流量の下位バイト

R

-

69 (0X45)

Current(H)

モータが消費している電流量の上位バイト

R

-

70 (0X46)

Torque Control Mode Enable

トルク制御モード

RW

0 (0X00)

71 (0X47)

Goal Torque(L)

目標トルク値の下位バイト

RW

0 (0X00)

72 (0X48)

Goal Torque(H)

目標トルク値の上位バイト

RW

0 (0X00)

73 (0X49)

Goal Acceleration

目標加速度値

RW

0 (0X00)

 

 

Address Function Help

EEPROM Area

Model Number

ダイナミクセルのモデル番号です。

 

Firmware Version

ダイナミクセルファームウェアのバージョンです。

 

ID

ダイナミクセルを識別するための固有の番号です。

0〜253(0xFD)まで使用可能で、254(0xFE)はブロードキャスト(Broadcast)のIDとして特別に使用されます。

Instruction packetを送信するとき、ブロードキャストのIDを使用すると、すべてのダイナミクセルに命令を下すことができます。

接続されたダイナミクセルのIDが重複しないように注意してください。

 

Baud Rate

コントローラと通信するための通信速度です。

0〜254(0xFE)まで使用可能です。

 

Valueの値が0〜249の場合:

Baudrate(BPS)  = 2000000 / (Data + 1)

Value

設定 BPS

目標 BPS

誤差

1

1000000.0

1000000.0

  0.000 %

3

500000.0

500000.0

  0.000 %

4

400000.0

400000.0

  0.000 %

7

250000.0

250000.0

  0.000 %

9

200000.0

200000.0

  0.000 %

16

117647.1

115200.0

 -2.124 %

34

57142.9

57600.0

  0.794 %

103

19230.8

19200.0

 -0.160 %

207

9615.4

9600.0

 -0.160 %

 

Valueの値が250以上の場合:

Value

設定 BPS

目標 BPS

誤差

250

2250000.0

2250000.0

  0.000 %

251

2500000.0

2500000.0

  0.000 %

252

3000000.0

3000000.0

  0.000 %

 

参考:UARTはBaudrate誤差が3%以内であると、通信に支障がありません。

 

Return Delay Time

コントローラからInstruction Packetを受信した後、Status Packetを返還するまでの時間です。

0〜254(0xFE)まで使用可能であり、単位は2usecです。

例えば、値が10の場合、20 usecだけ時間が経過した後にStatus Packetを応答します。

 

CW/CCW Angle Limit

動作が許可される角度を設定することができます。

値の範囲と単位は、Goal Position(Address 30、31)と同じです。

CWとCCWの値によって、次の2つの動作モードを設定することができます。

動作方式

CW / CCW

車輪モード

両方とも0の値

関節モード

両方とも0以外の値

マルチターンモード

両方とも4095の値

車輪モードは、モータが無限回転をするため、車輪型駆動ロボットに使用できます。

関節モードは、特定の角度での制御が可能であり、多関節ロボットに使用できます。

ルチターンモードは関節モードのように特定角度で制御が可能で -28671 まで制御できます。

 

Multi Turn Offset

零点位置調節ができます。この値は Present position(36) に加わります。

Present position = 実際位置 + Multi Turn offset になります。

初期値は0で、値の範囲は -24576 ~ 24576 です。

モーターの実際位置が 2048 である時に Multi Turn offset = 1024 を適用するとモーターは回転しないですが present position の値は 3072 になります。

参考:マルチターンモード(multi turn mode)のみ、この値が適用され、以外のモードではこの値は無視されます。

 


Resoltion Divider

モーターのレゾリューションを変更することが出来ます。

初期値は1で 1~4 まで使用できます。

モーターのレゾリューションを下げて CW、CCW 方向に回転数を増やすことが出来ます。

各方向に最大28回まで回転できます。

Present position = 実際位置 / Resolution Divider

例え、実際位置の値が 2048 の時、Resolution Divider の値が 2 だったら 2048 / 2 = 1024. すなわち Present position の値は 1024 になります。

このように Resolution Divider の値を 2 に変更すると、モーターの一回りのレゾリューションは 2048 になります。

Multi Turn offset と Resolution Divider を共に使用する場合、Present Position は下のように計算出来ます。

Present position = (実際位置 / Resolution Divider) + Multi Turn offset

モーターの実際位置が 2048 である時に Multi Turn offset = 1024、Resolution Divider = 4 を適用するとモーターは回転しないですが Present position の値は 1535 になります。

参考:マルチターンモード(multi turn mode)のみ、この値が適用され、以外のモードではこの値は無視されます。

 

 

Drive Mode

ダイナミクセルのドライブモードを設定します。

 

Bit

名称

内容

Bit 7

N/A

-

Bit 6

N/A

-

Bit 5

N/A

-

Bit 4

N/A

-

Bit 3

N/A

-

Bit 2

N/A

-

Bit 1

マスタ/スレーブモード

0の場合:マスタモード、1の場合:スレーブモード

Bit 0

ノーマル/リバースモード

0の場合:ノーマルモード、1の場合:リバースモード

参考:リバースモードは実際の回転方向を逆に変えるもので、左右対称の関節配置のロボットを構成する際に、

便利に使用することができます。

 

デュアル関節

デュアル関節は2つのモータを同時に制御して1つの関節として使用する方法です。  

デュアル関節を使用するためには、マスタモードに設定された1つのモータとスレーブモードに設定された1つのモータが費用です。

そして、同期化ケーブルを利用してこの2つのモータを接続しなければなりません。

 

一般モード用同期化ケーブル:マスタと同じPWM信号で駆動されます。

リバースモード用同期化ケーブル:反転されたPWM信号駆動されます
 

参考:スレーブは、マスタから同期化ケーブルを通じて直接制御命令を受け同期化されて駆動します。

スレーブモードの場合にも、各通信命令パケットに通信の反応はしますが、モータ駆動と関連したマスタに接続された同期化ケーブルを通じてのみ

動作します。

 

The Highest Limit Temperature

動作温度の上限値です。

使用範囲は10〜99(0x10〜0x63)であり、単位は摂氏温度です。

例えば、値が80であると、80℃です。

内部の温度がこの値を超える場合は、Status PacketのERRORのOver Heating Error Bit(Bit2)が「1」に設定されて返還され、Alram LED / Shutdownのフラグ(flag)のうち、過熱(Overheating)が設定されていると、機能が発揮されます。

             

注意:温度の上限デフォルト値よりも高く設定しないでください。

温度アラームのシャットダウンが発生した場合、20分以上休憩して、ダイナミクセルの温度を十分に下げた後、使用してください。温度が高い状態での使用時に製品が破損する恐れがあります。

 

 

The Lowest (Highest) Limit Voltage

電圧動作範囲の上限と下限値です。

上限と下限はそれぞれ50〜250(0x32〜0x96)まで使用可能であり、単位は0.1Vです。

例えば、値が80であると、8Vです。

現在の電圧の値がこの範囲を超える場合、Status PacketのERRORのVoltage Range Error Bit(Bit0)が「1」に設定されて返還され、Alarm LED/Shutdown

のフラグ(flag)のうち、入力電圧エラー(Input Volatage Error)が設定されていると、機能が発揮されます。

 

Max Torque

モータの最大出力の制限値です。

0〜1023(0x3FF)まで使用可能であり、単位は、約0.1%です。

例えば、値が512であると、約50%であり、最大出力対比50%だけを使用するという意味です。

電源が入るとTorque Limit(Address 34、35)は、この値を初期値として使用します。

 

Status Return Level

状態パケット(Status Packet)の変換方式を決定します。

動作方式

0

  すべての命令に対して変換しない(ただし、PING命令は除く)

1

  READ命令に対してのみ変換する。

2

  すべての命令に対して変換する。

 

参考:命令パケット(Instruction packet)のIDがブロードキャストIDの場合は、この値に関係なく状態パケット(Status Packet)が変換されません。

 

Alarm LED

Alarm Shutdown

ダイナミクセルは、動作中に発生する危険な状況を感知して、自らを保護することができます。

設定することができる危険な状況は、以下の表のとおりです。

 

Bit

名称

内容

Bit 7

0

-

Bit 6

 Instruction Error

  定義されてないInstructionが送信された場合、またはreg_write命令なしでAction命令が渡された場合

Bit 5

  Overload Error

 モータの最大出力で制御することができない荷重が継続的に適用される場合

Bit 4

  CheckSum Error

 送信されたInstruction PacketのCheckSumが合わない場合

Bit 3

  Range Error

該当Addressの値の範囲外の値をInstruction Packetに送信する場合

Bit 2

  OverHeating Error

 内部の温度が設定されて動作温度範囲を超えている場合

Bit 1

  Angle Limit Error

 適用したGoal Positionが設定したCW / CCW Angle Limitit範囲を超えている場合

Bit 0

  Input Voltage Error

 印加された電圧が設定された動作電圧範囲を超えている場合

 

各Bitの機能は、「OR」の論理が適用されるので、重複設定が可能です。つまり、0X05(2進数:00000101)に設定されている場合、Input Voltage ErrorとOverheating Errorの発生、両方をすべて感知することができます。

危険な状況が発生すると、Alarm LEDの場合はLEDを点滅させ、Alarm Shutdownの場合はTorque Limit(Address 34、35)の値を0にすることでモータ出力が0%になるようにします。

      

RAM Area

Torque Enable

意味

0

モータの電源を遮断してTorqueが発生しないようにします。

1

モータに電源を印加してTorqueを発生させます。

 

LED

Meaning

0

 LEDをOFFにします。

1

 LEDをONにします。

 

PID Gain

MXシリーズは、代表的なコントローラの方法としてPID Controllerを使用しています。

P GainはPropotional Gainの値です。

I Gainは、Integral Gainの値です。

D Gainは、Derivative Gainの値です。

値の範囲は0〜254です。

 

PIDとコンプライアンススロープの関係

Slope

P Gain
8 128
16 64
32 32
64 16
128 8

Pゲインが小さいほどすきまが大きくなって、目標位置の近くで出力が弱くなります。

つまり、margineslopeを合わせる概念だと考えます

確かに以前のコンプライアンス概念とマッチングされません。動作の差があっても当然な事です。

PIDに関する説明

一般的なPIDに関する簡略な説明は下のサイトを参照するようにします。

http://en.wikipedia.org/wiki/PID_controller

PID制御論は単純にモーター制御に限ることではなく、すべての制御に適用できる一般的な理論です。

 

Goal Position

移動させようとする所の位置値です。

0~4095 (0xFFF)まで使用可能であり、単位は0.088度です。

CW/CCW Angle Limitから外れた値を使用すると、状態パケット(Status Packet)のうち、ERRORのAngle Limit Error Bit(Bit1)が'1'に設定され変換されます。また、Alarm LED/Shutdownのフラグ(flag)のうち、Angle LimitErrorが設定されていたら機能が発揮されます。

マルチターンモードの時に値の範囲は -28672 ~ 28672 増えることになり、0 から CW、CCW 各方向に 7 回ずつ回転できます。もしかしてResolution Dividerと共に使用すると回転数をもっと増やすことが出来ます。

 

Moving Speed

 

 

参考:関節モードの時に、該当モデルの最大のrpmを確認してください。最大rpm以上を設定してもモータは、それ以上の力を出すことはできません。

 

Torque Limit

モータの最大出力の制限値です。

0〜1023(0x3FF)まで使用可能であり、単位は、約0.1%です。

例えば、値が512であると、約50%であり、最大出力対比50%のみを使用するという意味です。

電源が入ると、Max Torque(Address 14、15)の値を初期値として使用します。

 

参考:AlarmShutdownの機能が発揮されると、この値が0になってモータの力がなくなります。この場合、この値を0以外の値に変更すると、再びモータの出力が発揮されて使用することができます。

 

Present Position

ダイナミクセルの現在位置値です。

値の範囲は0~4095(0xFFF)であり、単位は0.088度です。

マルチターンモードの時に値の範囲は -28672 ~ 28672 で、単位はResolution Divider 値によって(0.088 * Resolution Divider) になります。

 

参考:マルチターンモード(Multi turn mode)の時に実際位置と Present Position の関係は Resolution DividerMulti Turn Offset の値によって変わります。詳しい内容は e-manul の

 

Present Speed

現在の移動速度です。

この値は0〜2047(0X7FF)まで使用されます。

0〜1023の範囲の値の場合、CCW方向に回転するという意味です。

1024〜2047の範囲の値であると、CW方向に回転するという意味です。

つまり、10番目のbitが方向を制御するdirection bitになり、0と1024は同じです。

単位は約0.114rpmです。

例えば、300に設定した場合、CCW方向に約34.33rpmで移動中という意味です。

 

Present Load

現在適用される荷重を意味します。

この値の範囲は1〜2047であり、単位は、約0.1%です。

0〜1023の範囲の値は、CCW方向に荷重が作用するという意味です。

1024〜2047の範囲の値は、CW方向に荷重が作用するという意味です。

つまり、10番目のbitが方向を制御するdirection bitになり、1024は0と同じです。

例えば、値が512であると、CCW方向に最大出力対比約50%で荷重が感知されることを意味します。

 

 

参考:現在の荷重は、Torqueセンサなどを利用した値ではなく、内部の出力値に基づいて類推したものです。

これをもって重量やトルクを測定する目的で使用することができません。また、該当関節のどの方向にどのくらいの力が作用するかを感知する程度でのみ使用しなければなりません。

 

Present Voltage

現在提供されている電圧です。

この値の単位は0.1Vです。例えば、値が100であると、10Vです。

 

Present Temperature

内部の温度です。

この値の単位は摂氏温度です。例えば、値が85の場合、現在の内部温度は85℃です。

 

 

Registered Instruction

意味

0

REG_WRITEに伝達された命令がありません。

1

REG_WRITEに伝達された命令があります。

 

参考:ACTION命令を遂行すると、この値が0に変わります。

 

Moving

意味

0

 Goal position命令遂行を完了しました。

1

 Goal position命令を遂行中です。

 

Lock

意味

0

 EEPROMの領域を修正することができます。

1

EEPROMの領域を修正することができません。

 

注意:Lockが1に設定されると、電源を切ってから入れ直して0に変えることができます。


Punch

駆動時にモーターに与える最小電流量です。

初期値は0x20で最高0x3ffまで設定できます。

 

Current

電流消費がない場合の値は20480x800)です。

もし、電流が陽の方向へ流れると、20480x800)より大きい値が出ます。

もし、電流が陰の方向へ流れると、20480x800)より小さい値が出ます。

電流値を計算する方法は次に成ります。

I = (4.5mA) * (CURRENT2048) (単位 A)

例え、68番目の値が2148なら陽の方向へ450mAが流れている意味です。

 

Torque Control Mode Enable

意味

0

ルクモードをOFFします。関節モードまた車輪モードが実行されます。

1

トルクモードをONします。位置制御及び速度制御は出来なくてトルクだけ制御できます。

Torque Control Mode Enableが1になるとダイナミクセルは次のように行動します。

1. ダイナミクセルは位置及び速度制御をしません。

2. ダイナミクセルはGoal Torqueに書いてあるトルクで制御します。

3. Goal positionGoal speedいても反応しません

4. 位置及び速度制御が出来ないので車輪モードのように行動します。

 

Goal Torque

目指すトルク値です。

0 ~ 2047 (0x7FF) まで使用されて単位は 4.5mA です。

(トルクと電流値は正比例します。)

0~1023 範囲の値を使用するとCCW方向にトルクが加わって0に設定すると止めます。

1024 ~2047 範囲の値を使用するとCW方向にトルクが加わって1024に設定すると止めます。

つまり、10番目のbitが方向を制御するdirection bitに成ります。

Goal TorqueTorque Limit(34,35)より大きくなれません。

 

Goal Acceleration

目標加速度値です。

0 ~ 254 (0XFE)まで使用され、単位は約8.583 Degree / sec^2 です。

0に設定すると加速度制御をしなくモーターの最大化速度で動くと言う意味です。

目標速度が0の場合も加速度制御をしなくモーターの最大加速度で動きます。

254を設定する場合、2180 Degree / sec^2 に成ります。

例え、ダイナミクセルの速度が現在0で、GOAL ACCELERATIONが10の場合、

1秒後のダイナミクセルの速度は14.3 RPMに成ります。

 

 

Option Frame

MX - 106 +のオプションフレームは、次のような種類があります。

FR05-F101_FR08-X101

 

FR05-S101

 

FR08-B101

 

FR08-H101

 

FR08-H110_FR08-D101

 

 

Horn

MX - 106 +のHornは、以下のような種類があります。

HN05-I101

 

HN05-N102

 

 

参考:RX-64用ホーンと多少の違いがあります。混用できないのでご注意ください。

 
 

機構の結合

以下は、オプションフレームとホーンを用いた結合構造の例です。

 

 

 

Dimension

図面の情報  :    ex106plusDimension.pdf

 

関連動画

MX-シリーズのギアの交替