メインコンテンツまでスキップ

DM-J4340P-2EC 減速モーター

原文の使用説明書(中国語)

本サイト全体のライセンスはApache License 2.0ですが、本資料および原文の資料にはライセンスを設定しません。

日付バージョン変更内容
2023.11.16V1.0初版作成

免責事項

達妙科技 ™DAMIAO ™DM-J4340P-2EC 減速モーター(以下「本製品」といいます)をご購入いただき、誠にありがとうございます。 本製品をご使用になる前に、本文書および達妙科技が提供するすべての安全ガイドラインを注意深くお読みいただき、遵守してください。 そうしない場合、お客様や周囲の方々に危害が及んだり、本製品や周囲の物品が損傷する可能性があります。 本製品を使用することにより、お客様は本文書を精読し、本文書および本製品に関連するすべての文書の条項と内容を理解、承認、承諾したものとみなされます。 お客様は本製品を正当な目的でのみ使用することを約束します。 お客様は本製品の使用およびそれにより生じる可能性のある結果について全責任を負うことを約束します。 達妙科技は、本製品の直接的または間接的な使用によって生じた損害、傷害、およびいかなる法的責任についても責任を負いません。

DAMIAOは深セン市達妙科技有限公司の商標です。 本文中に登場する製品名、ブランド名は、各社の商標です。 本製品及びマニュアルの著作権は深セン市達妙科技有限公司に帰属します。 許可なくいかなる形式でも複製・転載を禁じます。 本文書及び本製品に関連する全ての文書の最終的な解釈権は深セン市達妙科技有限公司に帰属します。 更新がある場合、別途通知いたしません。

注意事項

  1. モーターは規定の作業環境及び巻線許容最高温度範囲内で厳密に使用してください。これに従わない場合、製品に永久的で不可逆的な損傷が生じる可能性があります。
  2. 異物が回転子内部に入るのを避けてください。さもないと回転子の異常動作を引き起こす可能性があります。
  3. 使用前に各部品の健全性を確認してください。部品の欠落、劣化、損傷などが認められた場合は使用を中止してください。
  4. 配線を正しく接続し、モーターが正しく確実に設置されていることを確認してください。
  5. 使用中は電子ローター部分に触れないでください。事故を防止するためです。モーターが高トルク出力時には発熱が生じる場合がありますので、やけどに注意してください。
  6. ユーザーによるモーターの分解は禁止です。分解すると制御精度が低下し、モーターの異常動作を引き起こす可能性があります。

モーターの特徴

  1. デュアルエンコーダ搭載により、出力軸の1回転あたりの絶対位置を検出。電源断時でも絶対位置情報を保持します。
  2. モーターとドライバーの一体型設計により、コンパクトで高集積化を実現します。
  3. 上位機による可視化デバッグをサポートし、ファームウェアアップグレードに対応しています。
  4. CANバス経由でモーター速度・位置・トルク・温度等の情報をフィードバックできます。
  5. 二重温度保護機能を搭載しています。
  6. 位置モードではトラペゾイド加減速をサポートしています。

物品リスト

1、モーター(駆動装置含む)×1 2、電源(CAN通信端子含む)接続ケーブル:XT30(2+2)-Fプラグ片端接続ケーブル(100mm)×1 3、デバッグ用シリアル信号ケーブル:GH1.25接続ケーブル-3ピン(異形、300mm)×1

インターフェース及び配線順序の説明

名称-番号インターフェース表記説明
電源インターフェース-1
(CAN通信端子を含む)
  1. XT30(2+2)-Fプラグの電源接続ケーブルで電源に接続し、定格電圧24Vでモーターに給電します。
  2. CAN通信端子を介して外部制御装置を接続することで、CAN制御コマンドを受信し、モーターの状態情報をフィードバックできます。
  3. モーターには2つの電源インターフェースが搭載されており、いずれのインターフェースも単独で使用できます。 複数台を直列接続することもでき、配線作業を容易にします。

電源インターフェース-2
(CAN通信端子付き)
デバッグ用シリアルポート-3

GH1.25接続ケーブル-3ピンを介し、USB-CANデバッグツール(または汎用USB-シリアル変換モジュール)でPCに接続します。 DAMIAOデバッグアシスタントによるモーターパラメータ設定やファームウェア更新が可能です。

モーター寸法及び取付

モーター取付穴のサイズと位置を参照し、対応する装置にモーターを取り付けてください。


インジケーターランプの状態

正常状態緑色ランプが点灯ERRビットが1の場合、イネーブルモードを示し、正常動作状態です。
赤ランプ常時点灯ERRビットが0の場合、無効モードです。
異常状態赤ランプ点滅

故障です。対応する故障タイプは以下の通りです:

  • 8------過圧;
  • 9------低圧;
  • A------過電流;
  • B------MOS過熱;
  • C------モーターコイル過熱;
  • D------通信断;
  • E------過負荷;

フィードバックフレームまたはDAMIAOデバッグアシスタントインターフェースを通じて、発生した故障の種類を確認できます。

動作モード

MITモード

MITモードはオリジナルMITモードとの互換性を考慮して設計されており、シームレスな切り替えを実現すると同時に、制御範囲(P_MAX、V_MAX、T_MAX)を柔軟に設定可能です。 ESCは受信したCANデータを制御変数に変換して演算し、トルク値を電流ループの電流指令値として算出します。 電流ループはその制御法則に基づき、最終的に所定のトルク電流に到達します。その制御フロー図は以下の通りです:

MITモデルから様々な制御モードを導出できます。 例えばKp=0、Kd≠0の場合、v_desを指定すれば等速回転を実現できます。 Kp=0、Kd=0の場合、t_ffを指定すれば所定のトルク出力を実現できます。

注意:位置制御を行う場合、Kdに0を設定してはいけません。そうするとモーターの振動を引き起こし、制御不能に陥る可能性があります。

位置速度モード

位置カスケード制御は三環連鎖制御モードであり、位置ループが最外周ループとして機能し、その出力が速度ループの指令値です。 速度ループの出力は内側電流ループの指令値として用いられ、実際の電流出力を制御します。制御ブロック図は下図の通りです:

p_desは制御目標位置、v_desは動作過程における最大絶対速度値を制限するパラメータです。

位置カスケード制御モードは、デバッグアシスタントが推奨する制御パラメータを使用することで、良好な制御精度と比較的滑らかな制御プロセスを実現できますが、応答時間は比較的長くなります。設定可能な関連パラメータは v_desのほか、加減速度の設定があります。 制御プロセス中に余分な振動が発生した場合は、加減速度を上げることで改善できます。

注意:p_des、v_desの単位はそれぞれrad 、rad/sであり、データ型はfloatです。 ダンピング係数は必ず0以外の正の数に設定してください。速度モードの注意事項を参照してください。

速度モード

速度モードはモーターを設定速度で安定運転させることができ、その制御ブロック図は以下の通りです:

注意:v_desの単位はrad/s、データ型はfloatです。 デバッグアシスタントによる自動パラメータ計算を利用する場合、減衰係数を0以外の正の数(通常2.0~10.0の範囲)に設定する必要があります。 減衰係数が小さすぎると速度の振動や大きなオーバーシュートが発生し、大きすぎると立ち上がり時間が長くなります。推奨設定値は4.0です。

力と位置の混合制御モード

このモードは、位置速度モード制御を基盤として出力トルクの大きさを動的に制御するもので、その制御ブロック図は以下の通りです:

速度ループの出力指令の後に電流指令飽和段を追加し、電流ループの指令値を所定範囲内に制限します。

使用

制御にはCAN標準フレームフォーマットを使用し、固定ボーレートは1Mbpsです。 機能別に受信フレームとフィードバックフレームに分類され、受信フレームは受信した制御データでモーターのコマンド制御を実現し、フィードバックフレームはモーターが上位コントローラに送信する状態データです。 モーターで選択されたモードに応じて、受信フレームのフォーマット定義とフレームIDはそれぞれ異なりますが、各種モードにおけるフィードバックフレームは共通です。

フィードバックフレーム

フィードバックフレームIDはデバッグアシスタントで設定され(Master ID)、デフォルトは0です。 主にモーターの位置、速度、トルク情報をフィードバックし、そのフレームフォーマットは以下のように定義されます:

フィードバックメッセージD[0]D[1]D[2]D[3]D[4]D[5]D[6]D[7]
MST_IDID|ERR<<4POS[15:8]POS[7:0]VEL[11:4]VEL[3:0]|T[11:8]T[7:0]T_MOST_Rotor

以下のように定義されます:

ID はコントローラのIDを表し、CAN_IDの下位8ビットを取ります。

ERR は故障を示し、対応する故障タイプは以下の通りです:

  • 0------無効;
  • 1------有効;
  • 8------過圧;
  • 9------低電圧;
  • A------過電流;
  • B------MOS過熱;
  • C------モーターコイル過熱;
  • D------通信断;
  • E------過負荷;

  • POSはモーターの位置情報を示す
  • VELはモーターの速度情報を示す
  • Tはモーターのトルク情報を示す
  • T_MOS はドライバ上の MOS の平均温度(単位:℃)
  • T_Rotor はモーター内部コイルの平均温度(単位:℃)

位置、速度、トルクは線形マッピング関係を用いて浮動小数点データを符号付き固定小数点データに変換します。 位置は16ビットデータ、速度とトルクは12ビットを使用します。

MITモードにおける制御フレーム

制御メッセージD[0]D[1]D[2]D[3]D[4]D[5]D[6]D[7]
IDp_des[15:8]p_des[7:0]v_des[11:4]v_des[3:0]|Kp[11:8]Kp[7:0]Kd[11:4]Kd[3:0]|t_ff[11:8]t_ff[7:0]

フレームIDが設定されたCAN ID値と等しいです。

  • p_des:位置指令値
  • v_des:速度指令値
  • Kp:位置比例係数
  • Kd:位置微分係数
  • t_ff:トルク指令値

各パラメータは前節のマッピング関係に準拠し、p_des、v_des、t_ffの範囲はデバッグアシスタントで設定できます。

Kpの範囲は[0,500]、Kdの範囲は[0,5]です。

標準CANデータフレームは8バイトのみであり、MITの制御コマンドフォーマットではPosition、Velocity、Kp、Kd、Torqueの5つのパラメータを8バイトにビット単位で組み合わせます。 内訳:Positionが2バイト(16ビット)、Velocityが12ビット、Kpが12ビット、Kdが12ビットを占めます。

位置速度モードにおける制御フレーム

制御メッセージD[0]D[1]D[2]D[3]D[4]D[5]D[6]D[7]
0x100+IDp_desv_des

フレームIDは設定されたCAN ID値に0x100をオフセットした値です。

  • p_des:位置指令、浮動小数点型。低位バイトが先頭、高位バイトが後ろに並ぶデータ配置(リトルエンディアン)
  • v_des:速度指令、浮動小数点型。低位バイトが先頭、高位バイトが後ろに並ぶデータ配置(リトルエンディアン)

ここで送信するコマンドのCAN IDは 0x100+ID です。 速度指令は台形加速度動作時の最高速度、すなわち等速区間の速度値です。

速度モード制御フレーム

制御メッセージD[0]D[1]D[2]D[3]
0x200+IDv_des

フレームIDは設定されたCAN ID値に0x200のオフセットを加えた値です。

  • v_des:速度指令、浮動小数点型。低位バイトが先頭、高位バイトが後ろに並ぶデータ配置(リトルエンディアン)

ここで送信するコマンドのCAN IDは0x200+ID です。

力と位置の混合制御モードの制御フレーム

制御メッセージは次のとおりです:

制御メッセージD[0]D[1]D[2]D[3]D[4]D[5]D[6]D[7]
0x300+IDp_desv_desi_des
  • p_des
    • 位置指定値、単位はrad、浮動小数点型。低位バイトが先頭、高位バイトが後ろに並ぶデータ配置(リトルエンディアン)
  • v_des
    • 速度制限値、単位はrad/s、100倍増幅、符号なし16ビット型。低位バイトが先頭、高位バイトが後ろに並ぶデータ配置(リトルエンディアン)
    • 範囲は0~10000。10000を超えると10000に制限されるため、対応する実際の速度制限振幅は0~100rad/s。
  • i_des
    • トルク電流制限基準値、10000倍増幅、符号なし16ビット型。低位バイトが先頭、高位バイトが後ろに並ぶデータ配置(リトルエンディアン)
    • 範囲は0~10000で、10000を超えると10000に制限され、対応する実際の電流の基準値振幅は0~1.0。
    • 電流基準値:実際の電流値を最大電流値で除した値。DM-J4340P-2ECの最大電流は10.26A。

パラメータを読み取る

メッセージID属性D[0]D[1]D[2]D[3]
0x7FFSTDCANID_LCANID_H0x33RID

RID はレジスタアドレスです。詳細は「付録:レジスタ一覧と範囲」を参照してください。

読み取り成功後、当該レジスタのデータが返されます。フレーム形式は以下の通りです:

メッセージID属性D[0]D[1]D[2]D[3]D[4]D[5]D[6]D[7]
MST_IDSTDCANID_LCANID_H0x33RIDデータ

データは浮動小数点型データまたは符号なし整数型であり、32ビット(合計4バイト)を占有します。 最下位ビットはD4、最上位ビットはD7です。以下も同様です。

パラメータを書き込む

メッセージID属性D[0]D[1]D[2]D[3]D[4]D[5]D[6]D[7]
0x7FFSTDCANID_LCANID_H0x55RIDデータ

RIDは上記のように、書き込み成功後には書き込みデータが返され、フレーム形式は送信時と同じです。

メッセージID属性D[0]D[1]D[2]D[3]D[4]D[5]D[6]D[7]
MST_IDSTDCANID_LCANID_H0x55RIDデータ

レジスタへの書き込みは即時有効となりますが、保存はできず、電源断後に失われます。変更したパラメータを全てチップ内に書き込むには、保存パラメータコマンドを送信する必要があります。

パラメータを保存する

メッセージID属性D[0]D[1]D[2]D[3]
0x7FFSTDCANID_LCANID_H0xAA0x01

書き込み成功後、以下の形式で返します:

メッセージID属性D[0]D[1]D[2]D[3]
MST_IDSTDCANID_LCANID_H0xAA0x01

注意:

  1. 保存されたパラメータは、無効化モードでのみ有効になります。
  2. パラメータを保存する際には、すべてのパラメータが一括で保持されます。
  3. この操作はパラメータをオンチップフラッシュに書き込みます。各操作の最大所要時間は30msです。十分な時間を確保してください。
  4. フラッシュメモリの書き換え回数は約1万回です。「パラメータ保存」コマンドを頻繁に送信しないでください。

モード切替

複数のモード間の切り替えをサポートしており、現在サポートされている制御モードは以下の通りです:

エンコーディングモード
1MIT
2位置速度
3速度
4力と位置の混合制御

モードレジスタ(0x0A)の値を変更することでモードを変更できます。 モード切替時、モーターはまず指令値をクリアします。 これには位置、速度、およびMITモードにおけるトルクフィードフォワードとKp、Kdの値が含まれます。

あるモードから位置制御モードに切り替える際、衝撃を防止するため、まず正確な位置(レジスタ0x50の値)を読み取り、その後切り替えを検討することを推奨します。 可能な限りモーターがゼロ速度の状態で切り替えを行ってください。

モード変更後はフラッシュメモリに保存されず、電源断で失われます。 再通電後、制御モードは前回フラッシュメモリに保存されたモードに設定されます。

CANのボーレート変更

ボーレートレジスタ(アドレス 0x23)に特定のデータを書き込むことで、現在のCAN通信ボーレートを変更できます。 特定のボーレート変更をサポートしており、現在サポートされているボーレートは以下の通りです:

エンコーディングボーレート
0125K
1200K
2250K
3500K
41M
52M
62.5M
73.2M
84M
95M

ボーレート変更成功後、ドライバはまず元のボーレートでデータをフィードバックし、その後新しいボーレートで通信を行います。 電源投入後、モーターはまず保存されているボーレートを判定し、5Mbpsを超える場合は自動的に1Mbpsに設定されます。 1Mbpsを超える場合(1Mbpsは除く)は自動的にCAN FD機能に切り替わります。 ボーレートが1Mbps以下の場合は自動的にCAN 2.0Bに切り替わります。 CAN FDに設定されたモーターはCAN 2.0Bデータフレームを受信可能ですが、フィードバックフレーム送信時にはCAN FDを使用するため、上位コントローラはフィードバックデータを受信できず、ドライバは継続的にエラーを報告します。 CAN 2.0BコントローラでID設定を誤った場合でも、ボーレート変更コマンドによりボーレートを復元可能です。

DAMIAOデバッグアシスタントを使用

DAMIAO USB-CAN デバッグツールを使用し、PCとモーターを接続します。 DAMIAOアシスタントでモーターのパラメータ設定およびファームウェア更新ができます。

モーターデバッグ用シリアルポートはGH1.25接続ケーブル-3ピンでPCに接続します。 モーター電源インターフェースのCAN通信端子はXT30(2+2)-Fプラグ接続ケーブルでUSB-CANデバッグツールに接続します。 DAMIAOデバッグアシスタントでモーターのパラメータ設定やファームウェア更新などができます。

モーターのシリアルポート、CANポート、電源インターフェースを接続後、PC側でDAMIAOデバッグアシスタントを起動し、対応するシリアルデバイスを選択してシリアルポートを開きます。 この状態でモーターに電源を供給すると、シリアルポートに情報が表示され、Control Modeが現在の駆動モードを示します。

特性パラメータ

以下のパラメータに基づいてモーターを適切にご使用ください。

タイプ特性パラメータDM-J4340P-2EC(24V)DM-J4340P-2EC(48V)
モーターパラメータ定格電圧24V48V
定格電流2.5A2.5A
ピーク電流8A8A
定格トルク9NM9NM
ピークトルク27NM27NM
定格回転数36rpm36rpm
無負荷時最高回転数52rpm100rpm
モーター特性値減速比40:140:1
極対数1414
相インダクタンス360μH360μH
相抵抗880mΩ880mΩ
構造と重量外径57mm57mm
高さ56.5mm56.5mm
モーター重量約375g約375g
エンコーダエンコーダビット数14ビット14ビット
エンコーダ個数22
エンコーダタイプ磁気式(シングルターン)磁気式(シングルターン)
通信制御インターフェースCAN@1Mbps
パラメータ設定インターフェースUART@921600bps
制御と保護制御モードMITモード
速度モード
位置モード
力と位置の混合制御モード
保護

駆動過熱保護、保護温度:120℃、過熱モーターは動作を停止する「イネーブルモード」になります。

モーター過熱保護、使用要件に基づき設定、推奨上限温度は100℃を超えないことを推奨します。 過熱時はモーターが「イネーブルモード」を解除します。

モーター過電圧保護は、使用要件に基づいて設定し、32Vを超えないことを推奨します。 過電圧時は「イネーブルモード」を解除します。

モーター過電圧保護は、使用要件に基づいて設定し、52Vを超えないことを推奨します。 過電圧時は「イネーブルモード」を解除します。

通信切断保護:設定周期内にCAN指令を受信しない場合、自動的に「イネーブルモード」を解除します。

モーター過電流保護:使用要件に基づき設定、推奨上限は9.8Aを超えないことを推奨します。 過電流時は「イネーブルモード」を解除します。

モーターの低電圧保護。電源電圧が設定値を下回った場合、「イネーブルモード」を解除します。電源電圧は15V以上を推奨します。

モーターの低電圧保護。電源電圧が設定値を下回った場合、「イネーブルモード」を解除します。電源電圧は15V以上を推奨します。

付録: レジスタ一覧と範囲

アドレス
(HEX)
アドレス
(DEC)
変数説明読み書き範囲タイプ
0x000UV_Value低電圧保護値RW(10.0,fmax]float
0x011KT_Valueトルク係数RW[0.0,fmax]float
0x022OT_Value過熱保護値RW[80.0,200)float
0x033OC_Value過電流保護値RW(0.0,1.0)float
0x044ACC加速度RW(0.0,fmax)float
0x055DEC減速度RW[-fmax,0.0)float
0x066MAX_SPD最大速度RW(0.0,fmax]float
0x077MST_IDフィードバックIDRW[0,0x7FF]uint32
0x0A8ESC_ID受信IDRW[0,0x7FF]uint32
0x099TIMEOUTタイムアウトアラート時間RW[0,2^32-1]uint32
0x0A10CTRL_MODE制御モードRW[0,4]uint32
0x0B11ダンピングモーター粘性係数RO/float
0x0C12慣性モーター回転慣性モーメントRO/float
0x0D13hw_ver予約RO/uint32
0x0E14sw_verソフトウェアバージョン番号RO/uint32
0x0F15SN予約RO/uint32
0x1016NPPモーター極対数RO/uint32
0x1117Rsモーター相抵抗RO/float
0x1218Lsモーター相インダクタンスRO/float
0x1319Fluxモーター磁束値RO/float
0x1420Grギア減速比RO/float
0x1521PMAX位置マッピング範囲RW(0.0,fmax]float
0x1622VMAX速度マッピング範囲RW(0.0,fmax]float
0x1723TMAXトルクマッピング範囲RW(0.0,fmax]float
0x1824I_BW電流ループ制御帯域幅RW[100.0,1.0e4]float
0x1925KP_ASR速度ループ KpRW[0.0,fmax]float
0x1A26KI_ASR速度ループ KiRW[0.0,fmax]float
0x1B27KP_APR位置ループ KpRW[0.0,fmax]float
0x1C28KI_APR位置ループ KiRW[0.0,fmax]float
0x1D29OV_Value過電圧保護値RWTBDfloat
0x1E30GREFギヤトルク効率RW(0.0,1.0]float
0x1F31Deta速度ループ減衰係数RW[1.0,30.0]float
0x2032V_BW速度ループフィルタ帯域幅RW(0.0,500.0)float
0x2133IQ_c1電流ループ増幅係数RW[100.0,1.0e4]float
0x2234VL_c1速度ループ増幅係数RW(0.0,1.0e4]float
0x2335can_brCANボーレートコードRW[0,4]uint32
0x2436sub_verサブバージョン番号RO/uint32
0x3250u_offu相オフセットRO/float
0x3351v_offv相オフセットRO/float
0x3452k1補償係数1RO/float
0x3553k2補償係数2RO/float
0x3654m_off角度オフセットRO/float
0x3755dir方向RO/float
0x5080p_mモーター現在位置RO/float
0x5181xout出力軸位置RO/float
  • RW:読み書き可能
  • RO:読み取り専用