10: 2010-11-26 (金) 02:01:17 sho ソース 現: 2017-09-07 (木) 00:58:18 takaboo ソース
Line 1: Line 1:
-TITLE:Dynamixelコントロールテーブル +TITLE:Dynamixel Control Table 
-**コントロールテーブル [#m54c6bba] +**適用 [#u16883a0] 
-Dynamixelの機能及び設定は次のメモリマップ上に1バイトないし2バイトのアイテムとして割り当てられ、インストラクションパケットを使用して操作します。~+以下のDynamixelに共通のコントロールテーブルです。 
 +-DX-113 
 +-DX-116 
 +-DX-117 
 +-RX-10 
 +-[[RX-24F]] 
 +-[[RX-28>BTX031 Dynamixel RX-28]] 
 +-[[RX-64>BTX029 Dynamixel RX-64]] 
 +-AX-12 
 +-[[AX-12+]] 
 +-[[AX-12A]] 
 +-AX-18F 
 +-[[AX-18A]] 
 + 
 +**アイテム一覧 [#m54c6bba] 
 +Dynamixelの機能及び設定は次のメモリマップ上に1バイトないし2バイト(リトルエンディアン)のアイテムとして割り当てられ、インストラクションパケットを使用して操作します。~
2バイトに渡るアイテムは1つのインストラクションパケットにおいて同時に書き込まれる必要があります。 2バイトに渡るアイテムは1つのインストラクションパケットにおいて同時に書き込まれる必要があります。
-| Address | Item | Access | Initial Value | Range | +|=''Address''|=''Item''|=''Access''|=''Default Value''|=''Range''|
-|0 (0x0)|[[Model Number>#f9679b00]]| R |-| | +|CENTER:|LEFT:|CENTER:|CENTER:|CENTER:|c​ 
-|1 (0x1)|~|~|~|~| +|0|BGCOLOR(beige):[[Model Number>#f9679b00]]|R|-|uint16
-|2 (0x2)|[[Version of Firmware>#c0b99f75]]| R |-| | +|1|~|~|~|~| 
-|3 (0x3)|[[ID>#afcb4273]]| R/W |1 (0x01)| 0~253 | +|2|BGCOLOR(beige):[[Version of Firmware>#c0b99f75]]|R|?|uint8
-|4 (0x4)|[[Baudrate>#a99cb9a8]]| R/W |34 (0x22)| 0~254 | +|3|BGCOLOR(seashell):[[ID>#afcb4273]]|R/W (NVM)|1|uint8&br;0~253| 
-|5 (0x5)|[[Return Delay Time>#h9279b18]]| R/W |250 (0xFA)| 0~254 | +|4|BGCOLOR(seashell):[[Baudrate>#a99cb9a8]]|R/W (NVM)|34&br;(AXシリーズは1)|uint8&br;0~254| 
-|6 (0x6)|[[CW Angle Limit>#r26ada5a]]| R/W |0 (0x00)| 0~1023 | +|5|BGCOLOR(seashell):[[Return Delay Time>#h9279b18]]|R/W (NVM)|250|uint8&br;0~254| 
-|7 (0x7)|~|~|~|~| +|6|BGCOLOR(seashell):[[CW Angle Limit>#r26ada5a]]|R/W (NVM)|0|uint16&br;0~1023| 
-|8 (0x8)|[[CCW Angle Limit>#r26ada5a]]| R/W |1023 (0x3FF)| 0~1023 | +|7|~|~|~|~| 
-|9 (0x9)|~|~|~|~| +|8|BGCOLOR(seashell):[[CCW Angle Limit>#r26ada5a]]|R/W (NVM)|1023|uint16&br;0~1023| 
-|10 (0xA)|(Reserved)| - | - | | +|9|~|~|~|~| 
-|11 (0xB)|[[Highest Limit Temperature>#pf1cedb0]]| R/W |80 (0x50)| 10~99 | +|10|BGCOLOR(silver):(Reserved)|-|-|uint8
-|12 (0xC)|[[Lowest Limit Voltage>#p813d1f0]]| R/W |60 (0x3C)| 50~250 | +|11|BGCOLOR(seashell):[[Highest Limit Temperature>#pf1cedb0]]|R/W (NVM)|80|uint8&br;10~99| 
-|13 (0xD)|[[Highest Limit Voltage>#p813d1f0]]| R/W |190 (0xBE)| 50~250 | +|12|BGCOLOR(seashell):[[Lowest Limit Voltage>#p813d1f0]]|R/W (NVM)|60|uint8&br;50~250| 
-|14 (0xE)|[[Max Torque>#sa69d1ab]]| R/W |1023 (0x3FF)| 0~1023 | +|13|BGCOLOR(seashell):[[Highest Limit Voltage>#p813d1f0]]|R/W (NVM)|190|uint8&br;50~250| 
-|15 (0xF)|~|~|~|~| +|14|BGCOLOR(seashell):[[Max Torque>#sa69d1ab]]|R/W (NVM)|1023|uint16&br;0~1023| 
-|16 (0x10)|[[Status Return Level>#fc051727]]| R/W |2 (0x02)| 0~2 | +|15|~|~|~|~| 
-|17 (0x11)|[[Alarm LED>#m1f363e1]]| R/W |36 (0x24)| 0~127 | +|16|BGCOLOR(seashell):[[Status Return Level>#fc051727]]|R/W (NVM)|2|uint8&br;0~2| 
-|18 (0x12)|[[Alarm Shutdwon>#aa4c7882]]| R/W |36 (0x24)| 0~127 | +|17|BGCOLOR(seashell):[[Alarm LED>#m1f363e1]]|R/W (NVM)|0x24|uint8&br;0~127| 
-|19 (0x13)|(Reserved)| - | - | | +|18|BGCOLOR(seashell):[[Alarm Shutdwon>#aa4c7882]]|R/W (NVM)|0x24|uint8&br;0~127| 
-|20 (0x14)|[[Down Calibration>#d4af5057]]| R |?| | +|19|BGCOLOR(silver):(reserved)|-|-|uint8
-|21 (0x15)|~|~|~|~| +|20|BGCOLOR(beige):[[Down Calibration>#d4af5057]]|R|?|uint16
-|22 (0x16)|[[Up Calibration>#d4af5057]]| R |?| | +|21|~|~|~|~| 
-|23 (0x17)|~|~|~|~| +|22|BGCOLOR(beige):[[Up Calibration>#d4af5057]]|R|?|uint16
-|24 (0x18)|[[Torque Enable>#m041ac16]]| R/W |0 (0x00)| 0~1 | +|23|~|~|~|~| 
-|25 (0x19)|[[LED>#k6f31590]]| R/W |0 (0x00)| 0~1 | +|24|BGCOLOR(lightcyan):[[Torque Enable>#m041ac16]]|R/W|0|uint8&br;0~1| 
-|26 (0x1A)|[[CW Compliance Margin>#ac00ee58]]| R/W |1 (0x01)| 0~254 | +|25|BGCOLOR(lightcyan):[[LED>#k6f31590]]|R/W|0|uint8&br;0~1| 
-|27 (0x1B)|[[CCW Compliance Margin>#ac00ee58]]| R/W |1 (0x01)| 0~254 | +|26|BGCOLOR(lightcyan):[[CW Compliance Margin>#ac00ee58]]|R/W|1|uint8&br;0~254| 
-|28 (0x1C)|[[CW Compliance Slope>#ac00ee58]]| R/W |32 (0x20)| 1~254 | +|27|BGCOLOR(lightcyan):[[CCW Compliance Margin>#ac00ee58]]|R/W|1|uint8&br;0~254| 
-|29 (0x1D)|[[CCW Compliance Slope>#ac00ee58]]| R/W |32 (0x20)| 1~254 | +|28|BGCOLOR(lightcyan):[[CW Compliance Slope>#ac00ee58]]|R/W|32|uint8&br;1~254| 
-|30 (0x1E)|[[Goal Position>#ee2d2463]]| R/W |[Addr36]value| 0~1023 | +|29|BGCOLOR(lightcyan):[[CCW Compliance Slope>#ac00ee58]]|R/W|32|uint8&br;1~254| 
-|31 (0x1F)|~|~|~|~| +|30|BGCOLOR(lightcyan):[[Goal Position>#ee2d2463]]|R/W|[Addr36]value|uint16&br;0~1023| 
-|32 (0x20)|[[Moving Speed>#i69bf70b]]| R/W |0 (0x00)| 0~1023 +|31|~|~|~|~| 
-|33 (0x21)|~|~|~|~| +|32|BGCOLOR(lightcyan):[[Moving Speed>#i69bf70b]]|R/W|0|uint16&br;0~2047
-|34 (0x22)|[[Torque Limit>#sa69d1ab]]| R/W |[Addr14]value| 0~1023 | +|33|~|~|~|~| 
-|35 (0x23)|~|~|~|~| +|34|BGCOLOR(lightcyan):[[Torque Limit>#sb02896b]]|R/W|[Addr14]value|uint16&br;0~1023| 
-|36 (0x24)|[[Present Position>#g40fd002]]| R |?| | +|35|~|~|~|~| 
-|37 (0x25)|~|~|~|~| +|36|BGCOLOR(beige):[[Present Position>#g40fd002]]|R|-|uint16
-|38 (0x26)|[[Present Speed>#ra254ee8]]| R |?| | +|37|~|~|~|~| 
-|39 (0x27)|~|~|~|~| +|38|BGCOLOR(beige):[[Present Speed>#ra254ee8]]|R|-|uint16
-|40 (0x28)|[[Present Load>#k921f4f9]]| R |?| | +|39|~|~|~|~| 
-|41 (0x29)|~|~|~|~| +|40|BGCOLOR(beige):[[Present Load>#k921f4f9]]|R|-|uint16
-|42 (0x2A)|[[Present Voltage>#o9dde163]]| R |?| | +|41|~|~|~|~| 
-|43 (0x2B)|[[Present Temperature>#yb6e508c]]| R |?| | +|42|BGCOLOR(beige):[[Present Voltage>#o9dde163]]|R|-|uint8
-|44 (0x2C)|[[Registered Instruction>#x5982be7]]| R/W |0 (0x00)| 0~1 | +|43|BGCOLOR(beige):[[Present Temperature>#yb6e508c]]|R|-|uint8
-|45 (0x2D)|(Reserved)| - | - | | +|44|BGCOLOR(beige):[[Registered Instruction>#x5982be7]]|R|0|uint8&br;0~1| 
-|46 (0x2E)|[[Moving>#jf0f3fa1]]| R |0 (0x00)| | +|45|BGCOLOR(silver):(reserved)|-|-|uint8
-|47 (0x2F)|[[Lock>#bb3a2a7c]]| R/W |0 (0x00)| 1~1 | +|46|BGCOLOR(beige):[[Moving>#jf0f3fa1]]|R|0|uint8
-|48 (0x30)|[[Punch>#f79fd083]]| R/W |32 (0x20)| 0~1023 | +|47|BGCOLOR(lightcyan):[[Lock>#bb3a2a7c]]|R/W|0|uint8&br;0~1| 
-|49 (0x31)|~|~|~|~|+|48|BGCOLOR(lightcyan):[[Punch>#f79fd083]]|R/W|32|uint16&br;0~1023| 
 +|49|~|~|~|~| 
 +-データ幅が16bitのアイテムはリトルエンディアン(データの下位バイトから順に格納)。 
 +-Accessに(NVM)とあるアイテムは不揮発メモリとなっており、電源を切っても値が保持される。また頻繁な書き換えは想定されていないため、書き換えは必要最低限にとどめること。 
 +-Accessに(NVM)とあるアイテムとIndirect Addressを変更する場合は、Torque Enalbeが0でなくてはならない。 
 +-(reserve)はシステムで予約され、読み出した値に有効性はない。また、書き込みを行ってはならない。 
 +-Default Valueは出荷時ないしファクトリーリセットを行った際の値。又、ファームウェアのバージョンによって値が変更される場合がある。
-**各アイテムの詳細 [#bb158fce] +***各アイテム詳細 [#bb158fce]
-***Model Number [#f9679b00] +
-モデルナンバーです。+
-***Version of Firmware [#c0b99f75+****0~1: Model Number [#f9679b00
-ファームウェアのバージョンです。+モデル固有の値を保持します。異なる種類のDynamixelを混在して使用する際の個体識別などに使用できます。
-***ID [#afcb4273+****2: Version of Firmware [#c0b99f75
-各Dynamixelを特定するための固有のIDナンバーです。同じネットワークの各Dynamixelに異なるIDが必要です。+内蔵されるCPUに書き込まれたプログラムのバージョンです。ファームウェアの更新を行った際に合わせて自動的に変更されます。
-0~253まで設定可能。254はブロードキャストIDで全てのDynamixelへパケットを送信する際に使用します。+****3: ID [#afcb4273] 
 +各Dynamixelを特定するための固有の値で0~253の範囲の数値で設定します。同一ネットワーク内に存在するDynamixelには各々異なるIDが要求されます。
-***Baudrate [#a99cb9a8] +****4: Baudrate [#a99cb9a8] 
-通信速度を決定します。以下の公式で計算します。+通信速度を決める分周値で、通信速度は次式で導かれます。
-Baudrate[bps]=2000000 / (Value + 1)~+ Baudrate[bps] = 2000000[bps] / (Value + 1)
-参考値 +主なBaudrate~ 
-| Value |<| Baudrate [bps] |<| Error※ [%] | +| Value | Actual Baudrate[bps] | Specified Baudrate[bps] | Error[%] |h 
-| (Dec) | (Hex) | (Real) | (Target) |~| +| 1| 1000000.0| 1000000| 0.000| 
-| 1| 0x01 | 1000000.0| (1000000)| 0.000| +| 3| 500000.0| 500000| 0.000| 
-| 3| 0x03 | 500000.0| (500000)| 0.000| +| 4| 400000.0| 400000| 0.000| 
-| 4| 0x04 | 400000.0| (400000)| 0.000| +| 7| 250000.0| 250000| 0.000| 
-| 7| 0x07 | 250000.0| (250000)| 0.000| +| 9| 200000.0| 200000| 0.000| 
-| 9| 0x09 | 200000.0| (200000)| 0.000| +| 16| 117647.1| 115200| -2.124| 
-| 16| 0x10 | 117647.1| (115200)| -2.124| +| 34| 57142.9| 57600| 0.794| 
-| 34| 0x22 | 57142.9| (57600)| 0.794| +| 103| 19230.8| 19200| -0.160| 
-| 103| 0x67 | 19230.8| (19200)| -0.160| +| 207| 9615.4| 9600| -0.160| 
-| 207| 0xCF | 9615.4| (9600)| -0.160| +※ホストとのボーレートの誤差は±2%以下が要求されます。
-注意: ±3%以下の許容誤差が一般に通信可能な範囲です。+
-***Return Delay Time [#h9279b18] +****5: Return Delay Time [#h9279b18] 
-インストラクションパケットを受信した後、ステータスパケットを返信するまでの時間です。遅延時間は 2u[sec] * Address5 の値です。+インストラクションパケットが送られた後、ステータスパケットを返すまでの待ち時間を設定します。~ 
 +ホストにおいて半二重のバス制御のタイミングに合わせて調整しますが、[[DXHUB]]を使用する限りでは0を設定しても問題ありません。 
 + Delay Time [us] = Value * 2 [us]
-***CW Angle Limit, CCW Angle Limit [#r26ada5a] +****6~7: CW Angle Limit [#r2daa6da] 
-Dynamixelの動作角を設定します。Goal Positionは以下の範囲にある必要があります。~+****8~9: CCW Angle Limit [#r26ada5a] 
 +動作角の範囲です。[[Goal Position>#ee2d2463]]は以下の範囲に設定する必要があります。~
CW Angle Limit <= Goal Position <= CCW Angle Limit~ CW Angle Limit <= Goal Position <= CCW Angle Limit~
Goal Positionが動作角のリミットを越えると、Angle Limit Errorが起こります。 Goal Positionが動作角のリミットを越えると、Angle Limit Errorが起こります。
-CW Angle Limit及びCCW Angle Limitを両方0に設定すると[[Endless Turnモード>#j6a51fa3]]になります。+CW Angle Limit及びCCW Angle Limitを両方0に設定すると[[Endless Turn>#j6a51fa3]]モードになります。
-***Highest Limit Temperature [#pf1cedb0] +****11: Highest Limit Temperature [#pf1cedb0] 
-Dynamixelの動作温度の上限です。Dynamixelの内部温度がこの値より高くなるとOverheating Errorが起こります。単位は℃です。+[[Present Temperature>#yb6e508c]]がこの値を超えるとOverheating Errorの該当ビットがONになります。
-80より高く設定しないでください。故障の原因となります。+ Temperature [degC] = Value * 1 [degC]
-***Lowest Limit Voltage, Highest Limit Voltage [#p813d1f0] +****12: Lowest Limit Voltage [#zb0073ac] 
-Dynamixelの動作電圧の上限下限です。現在の電圧(Address42)が指定した範囲から出ると、Input Voltage Errorが起こります。値は実際の電圧の10倍です。例えばAddress12が80なら、電圧の下限は8Vに設定されます。+****13: Highest Limit Voltage [#p813d1f0] 
 +[[Present Voltage>#o9dde163]]がこの値の範囲を超えるとInput Voltage Errorの該当ビットはONになります。 
 + Voltage [V] = Value * 0.1 [V]
-***Max Torque, Torque Limit [#sa69d1ab] +****14~15: Max Torque [#sa69d1ab] 
-Dynamixelの最大トルク出力です。この値が0に設定されるとDynamixelはトルクがかかっていないFree Runモードになります。EEPROM(Address14, 15)とRAM(Address34, 35)の2つに最大トルクが定義されます。電源を入れるとEEPROMの最大トルク値がRAMの最大トルク値にコピーされます。DynamixelのトルクはRAM(Address34, 35)の値によって制限されます。+最大出力トルクの初期値です。起動直後にこの値が[[Torque Limit>#sb02896b]]へコピーされ、以後使用されません。~ 
 +単位は最大出力に対する割合です。Max Torqueが512なら最大出力対比約50%、1023なら100%が出力の上限となります。
-***Status Return Level [#fc051727] +****16: Status Return Level [#fc051727] 
-インストラクションパケットを受けた後にDynamixelがステータスパケットを返すかどうかを決定します。 +ステータスパケットを返信するインストラクションパケットを選択します。 
-| Value || +|CENTER:|LEFT:|c 
-| 0 |PING以外のインストラクションには応答しない+|Value|CENTER:Instruction to respond|h 
-| 1 |READ_DATAだけに応答する+|0|Ping
-| 2 |すべてのインストラクションに応答する| +|1|Ping, Read
-Broadcast ID(0xFE)を使ったインストラクションの場合は、Valueの値に関わらずステータスパケットを返しません。+|2|Ping, Read, Write, Reg Write, Reset |
-0に設定すると、+****17: Alarm LED [#m1f363e1] 
 +対応するビットを1に設定すると、エラーが発生した時にステータスLEDが点滅します。~ 
 +すべてのビットのOR論理演算に従って動作します。例えば0x05が設定されていたら、Input Voltage ErrorかOverheating Errorが起こったときにLEDが点滅します。 
 +| Bit | Name | Description |h 
 +|=7| - | - | 
 +|=6| Instruction Error |未定義のインストラクションが指定された、もしくはreg_writeなしでactionが指定された| 
 +|=5| Overload Error |指定された最大トルクで現在の負荷を制御できない| 
 +|=4| Checksum Error |インストラクションパケットのチェックサムが正しく無い| 
 +|=3| Range Error |パラメータの設定範囲を超えた| 
 +|=2| Overheating Error |内部温度が設定温度を超えた| 
 +|=1| Angle Limit Error |Angle Limitの範囲外にGoal Positionが指定された| 
 +|=0| Input Voltage Error |電源電圧が指定動作電圧の範囲を超えた|
-***Alarm LED [#m1f363e1+****18: Alarm Shutdown [#aa4c7882
-対応するBitが1に設定されると、Errorが起こったときにステータスLEDが点滅します。 +対応するビットを1に設定すると、エラーが発生した時にTorque Limitを0に設定し、モータの出力を遮断します。~ 
-|Bit|Function+エラーが発生した後、正常状態に戻ってもTorque Limitは0が維持されますので、[[Torque Limit>#m041ac16]]に値を再設定する必要があります。 
-|Bit7|0+| Bit | Name | Description |h 
-|Bit6|1に設定されていたら、Instruction Errorが起こるとLEDが点滅します+|=7| - | -
-|Bit5|1に設定されていたら、Overload Errorが起こるとLEDが点滅します+|=6| Instruction Error |未定義のインストラクションが指定された、もしくはreg_writeなしでactionが指定された
-|Bit4|1に設定されていたら、Checksum Errorが起こるとLEDが点滅します+|=5| Overload Error |指定された最大トルクで現在の負荷を制御できない
-|Bit3|1に設定されていたら、Range Errorが起こるとLEDが点滅します+|=4| Checksum Error |インストラクションパケットのチェックサムが正しく無い
-|Bit2|1に設定されていたら、Overheating Errorが起こるとLEDが点滅します+|=3| Range Error |パラメータの設定範囲を超えた
-|Bit1|1に設定されていたら、Angle Errorが起こるとLEDが点滅します+|=2| Overheating Error |内部温度が設定温度を超えた
-|Bit0|1に設定されていたら、Input Voltage Errorが起こるとLEDが点滅します| +|=1| Angle Limit Error |Angle Limitの範囲外にGoal Positionが指定された
-すべてのビットのOR論理演算に従って動作します。例えば0x05が設定されていたら、Input Voltage ErrorかOverheating Errorが起こったときにLEDが点滅します。エラー状態から正常状態に戻るとLEDは2秒後に点滅を止めます。+|=0| Input Voltage Error |電源電圧が指定動作電圧の範囲を超えた|
-***Alarm Shutdown [#aa4c7882+****20~21: Down Calibration [#za300029
-対応するビットが1に設定されていて、エラーが発生するとDynamixelのトルクがオフになります。Alarm LEDとは異なり、Errorが発生した後、正常状態に戻ってもトルクオフの状態が維持されます。復帰するためにはTorque Enable(Address24)を1に再設定しなければなりません。 +****22~23: Up Calibration [#d4af5057] 
-|Bit|Function| +ポテンショメータの誤差を補うのに使用されるデータです。ユーザは変更できません。
-|Bit7|0| +
-|Bit6|1に設定されていたら、Instruction Errorが起こるとトルクをオフにします| +
-|Bit5|1に設定されていたら、Overload Errorが起こるとトルクをオフにします| +
-|Bit4|1に設定されていたら、Checksum Errorが起こるとトルクをオフにします| +
-|Bit3|1に設定されていたら、Range Errorが起こるとトルクをオフにします| +
-|Bit2|1に設定されていたら、Overheating Errorが起こるとトルクをオフにします| +
-|Bit1|1に設定されていたら、Angle Errorが起こるとトルクをオフにします| +
-|Bit0|1に設定されていたら、Input Voltage Errorが起こるとトルクをオフにします|+
-***Down Calibration, Up Calibration [#d4af5057+****24: Torque Enable [#m041ac16
-Dynamixelで使用されるPotentiomerterの誤差を補うのに使用されるデータです。ユーザーはこのデータを変更できません。+電源を入れた時、出力軸はフリーの状態です。Torque Enableを1に設定するとトルクが有効になります。 
 +[[Goal Position>#ee2d2463]]を指定した場合も1になります。
-以下はRAMエリアです。~+****25: LED [#k6f31590] 
 +本体に装備されたLEDを点灯ないし消灯します。 
 +|CENTER:|LEFT:|c 
 +|Value|CENTER:Description|h 
 +|0|消灯| 
 +|1|点灯|
-***Torque Enable [#m041ac16+****26: CW Compliance Margin [#u3d18477
-最初に電源を入れるとDynamixelはTorque Free Run(ゼロトルク)になります。Address24に1を設定するとトルクが有効になります。+****27: CCW Compliance Margin [#y5859c4a] 
 +****28: CW Compliance Slope [#ubd4963c] 
 +****29: CCW Compliance Slope [#ac00ee58] 
 +Dynamixelはコンプライアンスを設定することで出力軸に柔軟性を持たせます。グラフはポジションと出力の相関を表し、A~Dは各コンプライアンス値です。 
 +#ref(DxCntTable1.png,100%) 
 +A : CCW Compliance Slope~ 
 +B : CCW Compliance Margin~ 
 +C : CW Compliance Margin~ 
 +D : CW Compliance Slope~ 
 +E : Punch~
-***LED [#k6f31590+****30~31: Goal Position [#ee2d2463
-1が設定されるとLEDが点灯し、0が設定されると消灯します。+出力軸の位置を設定します。出力軸0~300°に対し、0~1023の値を与えます。 
 +[[Endless Turn>#j6a51fa3]]モードでは使用しません。 
 +#ref(DxCntTable2.png)
-***CW Compliance Margin, CCW Compliance Margin, CW Compliance Slope, CCW Compliance Slope [#ac00ee58+****32~33: Moving Speed [#i69bf70b
-Dynamixelのコンプライアンスは、コンプライアンスのMarginとSlopeを設定することで定義されます。この特徴は出力軸で衝撃を吸収するのに利用します。下のグラフはそれぞれのコンプライアンス値(A、B、C、Dの長さ)がポジションエラーと適用されたトルクによってどう定義されるかを示します。 +出力軸が動く際の回転数を指定します。 
-#ref(DxCntTable1.png,90%) + Velocity [rpm] = Value * 0.111 [rpm] 
-A : CCW Compliance Slope(Address29)~ +但し該当モデルの最大回転数以上では動作しません。0に設定すると供給電圧で可能な最大速度になります。
-B : CCW Compliance Margin(Address27)~ +
-C : CW Compliance Margin(Address26)~ +
-D : CW Compliance Slope(Address 28)~ +
-E : Punch(Address48, 49)~+
-***Goal Position [#ee2d2463] +Endless Turnモードで使用する場合は[[Endless Turn>#j6a51fa3]]参照。
-Dynamixelの出力角の位置を要求します。0x3ffを設定すると出力軸が300°の位置まで動きます。 +
-#ref(DxCntTable2.png,80%)+
-***Moving Speed [#i69bf70b+****34~35: Torque Limit [#sb02896b
-出力軸がGoal Positionへ動く時の角速度です。0に設定すると速度調節が適用されない供給電圧で可能な最大の速度になります。+最大出力の上限値です。 
 +単位は最大出力に対する割合です。Max Torqueが512なら最大出力対比約50%、1023なら100%が出力の上限となります。~ 
 +電源を入れると[[Max Torque>#sa69d1ab]]の値を初期値として使用します。
-***Present Position [#g40fd002] +****36~37: Present Position [#g40fd002] 
-出力軸の現在の角度です。+出力軸の現在位置です。出力軸0~300°に対し、0~1023の値をとります。
-***Present Speed [#ra254ee8] +[[Endless Turn>#j6a51fa3]]モードでは300~360°の間は不定値となります。
-出力軸の現在の角速度です。+
-***Present Load [#k921f4f9+****38~39: Present Speed [#ra254ee8
-操作するDynamixelの負荷の大きさです。ビット10は負荷の向きです。 +出力軸の現在の角速度です。10番目のビットは回転方向を表します。
-| Bit | 15~11 | 10 | 9~0 | + Present Speed [rpm] = Value * 0.111 [rpm]
-| Value | 0 | Load Direction | Load Value | +
-Load Direction = 0 : CCW Load, Load Direction = 1 : CW Load+
-***Present Voltage [#o9dde163] +Endless Turnモードの場合は[[Endless Turn>#j6a51fa3]]参照。
-現在のDynamixelに供給されている電圧です。値は実際の電圧の10倍です。例えば、10Vは100(0x64)と表します。+
-***Present Temperature [#yb6e508c] +|BGCOLOR(#d0d8e0): Bit | 15~11 | 10 | 9~0 | 
-Dynamixelの内部温度()です。+|BGCOLOR(#d0d8e0): Value | 0 | Direction | Speed | 
 +Direction = 0 : CCW, Direction = 1 : CW
-***Registered Instruction [#x5982be7+****40~41: Present Load [#k921f4f9
-REG_WRITEコマンドでインストラクションが格納されたとき1が設定され、ACTIONコマンドによって格納されたインストラクションが完了したら0が設定されます。+出力に基づいて算出された負荷の大きさです。10番目のビットは負荷の方向です。~ 
 +単位は最大出力に対する割合です。512ならCCW方向に最大出力対比約50%、1023なら100%の負荷となります。 
 +|BGCOLOR(#d0d8e0): Bit | 15~11 | 10 | 9~0 | 
 +|BGCOLOR(#d0d8e0): Value | 0 | Direction | Load | 
 +Direction = 0 : CCW, Direction = 1 : CW
-***Moving [#jf0f3fa1+****42: Present Voltage [#o9dde163
-Dynamixelが供給された電力で動いているときに1が設定されます。+現在供給されている電圧です。値は電圧(V)の10倍値です。例えば10Vは100となります。
-***Lock [#bb3a2a7c+****43: Present Temperature [#yb6e508c
-1が設定されるとAddress24からAddress35以外のエリアが書き換え不能となります。ロックを解除する方法は、電源を切る以外にありません。+内部温度(℃)です。例えば30℃は30です。
-***Punch [#f79fd083+****44: Registered Instruction [#x5982be7
-操作時にモータに供給される最小の電流です。初期値は0x20に設定されていて、最大値は0x3ffです。+REG_WRITEコマンドでインストラクションが格納されたとき1になり、ACTIONコマンドでインストラクションが完了したら0になります。
-***Endless Turn [#j6a51fa3+****46: Moving [#jf0f3fa1
-Address 6(0x06)~9(0x09)のCW Angle Limit、CWW Angle Limitを0に設定し、Address 0x20,0x21に以下の通りMoving Speedを設定するとEndless Turnモードになります。車輪のような役割で使用する際にこのモードに設定します。~ +供給された電力で出力軸が回転しているときに1、それ以外は0が設定されます。外力によって出力軸が動いても1にはなりません。
-+
-Moving Speedの設定 +
-| BIT | 15~11 | 10 | 9~0 | +
-| Value | 0 | Turn Direction | Speed Value |+
-Trun Direction = 0 : CCW, Trun Direction = 1 : CW+****47: Lock [#bb3a2a7c] 
 +1を設定するとコントロールテーブルの不揮発エリア(アドレス0~23)が書き換え不能になります。ロックの解除するには電源を入れ直す必要があります。
-**RAM EEPROM [#ub0b5828+****48~49: Punch [#f79fd083
-Address0から23はEEPROMエリア、Address24から49まではRAMエリアです。RAMエリアのデータは電源を入れたときに常に初期値に設定されます。EEPROMのデータは電源を切ってもその時の値が残ります。~ +''現バージョンのファームウェアでは使用していません。'' 
-コントロールテーブルの右側のInitial ValueはEEPROMエリアデータの製造時の初期値と、RAMエリアデータの電源を入れた時の初期値です。~ + 
-EEPROMエリアデータの書き換え回数には制限があります。必要な時のみ書き換えられるような運用を行って下さい。~+操作時にモータに供給される最小の電流です。 
 + 
 +****Endless Turn [#j6a51fa3] 
 +[[CW Angle Limit>#r2daa6da]]と[[CWW Angle Limit>#r26ada5a]]を0に設定することで、車輪のような役割として使用できるEndless Turnモードになります。[[Moving Speed>#i69bf70b]]で回転速度を指定します。 
 + 
 +Endless TurnモードでのMoving Speed及び[[Present Speed>#ra254ee8]]は、最大出力に対する出力の割合です。512ならCCW方向に最大出力対比約50%、1023なら100%の出力で制御します。負荷の大きさによって回転速度は変わります。 
 + 
 +Moving Speedの設定 
 +|BGCOLOR(#d0d8e0): Bit | 15~11 | 10 | 9~0 | 
 +|BGCOLOR(#d0d8e0): Value | 0 | Turn Direction | Speed | 
 +Trun Direction = 0 : CCW, Trun Direction = 1 : CW


トップ   差分 リロード印刷に適した表示   全ページ一覧 単語検索 最新ページの一覧   最新ページのRSS 1.0 最新ページのRSS 2.0 最新ページのRSS Atom