本文へ移動

tf-2md3-devel@t-frog.com

Re: __Re:_ダ イレクト

Date:
Wed, 31 Aug 2016 18:06:53 +0900
From:
Atsushi Watanabe <
atsushi dot w at ieee dot org
>
To:
tf-2md3-devel <
tf-2md3-devel at t-frog dot com
>
Subject:
[00139] Re: __Re:_ダ イレクト
細田さま

回答が遅くなり申し訳ありません。

下記の設定は行いましたか?

>> また、ファームウェアは devel_v0.1.4_rc5 以降を使用してください。
>> 上記の設定は、モータドライバのUSBポートを、ターミナルソフトで開いて、
>> $HFREQENC1
>> $RELYHALL1
>> $EEPROMSAVE
>> と入力することで有効化できます。(行頭の$も入力してください。)
>> 入力しても何も表示されない場合、改行コードが異なっている可能性がありますので、
>> 改行コードの設定を変更して設定の有効化からやり直す必要があります。
>> また、
>> PP
>> と入力したときの出力で、OPTION:欄にRELYHALL, HFREQENCと
>> 表示されていることを確認してください。
>>

また、パラメータファイルには下記を追加してください。

ENCODER_DIV 1


yp-spurで算出した軸角度は、
YP_get_wheel_ang 関数、
もしくは、ypspur-interpreter コマンド内で
get_wheel_ang と入力すると確認できます。
こちらも確認をお願いします。
(yp-spurの単位は全てSI単位系なので、角速度はrad/s、角度はradで表示されます。)


// Atsushi WATANABE
// Assistant Professor
// Field Robotics Laboratory
// 6-6-10, Aramaki-Aoba, Aoba-ku, Sendai, 980-8579, Japan
// Phone: [Telephone number removed] / E-mail:
atsushi dot w at ieee dot org




2016/08/25 午後4:57 "HOSODA YUUKI" <
ee33080 at meiji dot ac dot jp
>:
>
>
> 渡辺さま
>
>
> いつもお世話になっています.
>
> 明治大学の細田です.
>
>
> モータの件ありがとうございました.
>
> 度々の質問になって申し訳ないのですが,エンコーダから送られてくるパルスのカウント値を受け取り,その値からモータの現在の角度を得ようと考えています.現在はypspur内のodometry.cにある関数のodometry_receiveのcnt[0]の値を使用してモータの角度を算出しています.しかし,この値を利用すると30rpm程度で回転させてもエンコーダの読み飛ばしが発生してしまいます.
>
>
> 現在はファームウェアとしてdevel_v0.1.4_rc4を使用しており,yp-spurはv1.15.0-rc3を使用しています.また,モータのパラメータには以前渡辺さんに調整していただいたパラメータを利用しております.
>
>
> 以前モータを調整していただいた際には,90rpm以下なら読み飛ばしが発生しないとの解答をいただいているので,どの値を参考にするとエンコーダの値を正しく受け取れるのか教えてくださると助かります.
>
>
> お手数ですが,よろしくお願いします.
>
>
> 以下が現在使用しているパラメータです.
>
> VERSION 4
> VOLT 16
> CONTROL_CYCLE 0.02
> TORQUE_FINENESS 0.00000001
>
> MOTOR_PHASE 3
> COUNT_REV 162000
> ENCODER_TYPE 2
> CYCLE 0.001
> MOTOR_R 1.8
> TORQUE_MAX 0.0413
> TORQUE_LIMIT 0.113
> MOTOR_VC 550
> MOTOR_TC 0.016
> PHASE_OFFSET 4.188
>
> GEAR 8
> TREAD 1
> RADIUS[0] 0.3
> RADIUS[1] -0.3
>
> MASS 0.1
> MOMENT_INERTIA 0
> TIRE_M_INERTIA 0.0
> MOTOR_M_INERTIA 0.000000124
>
> L_C1 0.01
> L_K1 800
> L_K2 300
> L_K3 200
> L_DIST 0.6
>
>
> MAX_VEL 1
> MAX_W 2
> MAX_ACC_V 2
> MAX_ACC_W 4
> MAX_CENTRI_ACC 1.96
>
> GAIN_KP 10
> GAIN_KI 1000
> INTEGRAL_MAX 0.05
> TORQUE_NEWTON 0
> TORQUE_VISCOS 0
>
> -------------------------
>
> 明治大学
>
> ロボット工学研究室
>
> 細田 佑樹
>
> -------------------------
>
> ________________________________
> 差出人: Atsushi Watanabe <
atsushi dot w at ieee dot org
>
> 送信日時: 2016年8月8日 22:45:48
> 宛先: tf-2md3-devel
> 件名: [tf-2md3-devel:00136] Re: __Re:_ダ イレクト ] ] ] ] ドラ イブモータの パラメータ設 定に ] ついて
>
> 渡辺です。
>
> YP-Spurを、v1.15.0-rc3 ブランチにする必要があります。
> 手順は、下記のwikiの「開発中バージョンを試す」の項目にあります。
> https://openspur.org/redmine/projects/ypspur/wiki/Table_of_Contents
>
> 以上、お試し下さい。
>
> // Atsushi WATANABE
> // Assistant Professor
> // Field Robotics Laboratory, Tohoku University
> // 6-6-10, Aramaki-Aoba, Aoba-ku, Sendai, 980-8579, Japan
> // Phone: [Telephone number removed] / E-mail:
atsushi dot w at ieee dot org

>
>
> 2016年8月8日 22:33 HOSODA YUUKI <
ee33080 at meiji dot ac dot jp
>:
> > 渡辺さま
> >
> >
> > いつもお世話になっております.
> >
> > 明治大学の細田です.
> >
> >
> > 本日モータドライバに新しいファームウェアのv0.1.4-rc5を書き込んでypspur-coordinatorを実行したところ以下のようなエラーが発生してしまいます.
> >
> > ypspur-coordinator -d /dev/ttyACM0 -p yp-robot-params/robot-params/aaa.param
> > ++++++++++++++++++++++++++++++++++++++++++++++++++
> > YamabicoProject-Spur
> > Ver. 1.14.0
> > ++++++++++++++++++++++++++++++++++++++++++++++++++
> > Device Information
> > Port : /dev/ttyACM0
> > Error: Device doesn't have available YP protocol version.
> > 試しにv0.1.4-rc4を書き込んでも同じ現象が発生してしまいます.
> >
> > (まだ,FPGAの書き換えは行っていません)
> >
> > ファームウェアの書き込み自体は成功しているようなので,原因がわかりません.
> >
> > また,ファームウェアを以前使用していたヴァージョンに戻すと問題なく使えます.
> >
> > 何が原因かわかりますでしょうか?
> >
> >
> > お手数お掛けしますがよろしくお願いします.
> >
> > ________________________________
> > 差出人: Atsushi Watanabe <
atsushi dot w at ieee dot org
>
> > 送信日時: 2016年8月6日 21:24:37
> > 宛先: tf-2md3-devel
> > 件名: [tf-2md3-devel:00129] Re: __Re:_ダ イレクト ] ] ] ドラ イブモータの パラメータ設 定につ いて
> >
> > 一点忘れていました。
> >
> > 前のメールで説明したとおり、このモータでは300rpm以上では、
> > 通信上のエンコーダ値がオーバーフローします。
> > yp-spur側を、v1.15.0-rc3以降にして、パラメータファイルに
> > ENCODER_DIV n
> > のように記載すると、通信上のエンコーダ値を 2^n で割って扱います。
> >
> > オドメトリなどは、適切に換算して計算するようになっています。
> >
> > // Atsushi WATANABE
> > // Assistant Professor
> > // Field Robotics Laboratory, Tohoku University
> > // 6-6-10, Aramaki-Aoba, Aoba-ku, Sendai, 980-8579, Japan
> > // Phone: [Telephone number removed] / E-mail:
atsushi dot w at ieee dot org

> >
> >
> > 2016年8月6日 20:20 Atsushi Watanabe <
atsushi dot w at ieee dot org
>:
> >> 明治大学 細田さま、黒田先生
> >>
> >> 渡辺です。
> >>
> >> エンコーダ信号のフィルタ周波数を高くしたところ、
> >> 元の4倍程度(2000kP/s)程度までは、何とか読めることがわかりました。
> >> (理論値で、このモータ換算で最大500rpmくらい)
> >>
> >> ドライバのEEPROMに保存されている設定を変更することで、
> >> エンコーダのサンプリング周波数を上げられるようにしました。
> >> (ノイズ耐性も下がるので、デフォルト設定は、元のままにしています。)
> >> この設定により、300rpm弱までは、制御が可能になります。
> >>
> >> 加えて、300rpmぐらいの領域から、エンコーダから受け取っているパルス波形の
> >> 歪みが大きくなり、パルスの読み飛ばしが発生します。
> >> 現行のファームウェアでは、磁気式のホール素子の特性を考慮して、
> >> 電気角速度10Hz(このモータだと機械角速度1.25Hz = 75rpm)以上では、
> >> UVW信号を使わず、パルスエンコーダのみを使用するようにしています。
> >> そのため、300rpm以上では、読み飛ばしにより電気角がずれてしまい、
> >> 無効電流が大きくなってしまいます。
> >> こちらも、新たに設定を追加して、常にUVW信号を信頼できるようにしました。
> >> これにより、オドメトリは少しずれますが、モータ制御への影響は無くなり、
> >> 400rpm弱までは制御が可能です。
> >>
> >> 現状400rpm以上では読み飛ばしの量が非常に大きくなり、制御できなくなります。
> >> 原因であるパルス波形の歪みは、エンコーダの配線の問題で発生しているようです。
> >> このエンコーダは差動ライン出力だと思いますので、
> >> ドライバの近くにラインレシーバICを追加することをおすすめします。
> >>
> >>
> >> これらの変更点のドライバへの適用ですが、
> >> AlteraのFPGAに、アクティブシリアルモードで書き込めるダウンロードケーブル
> >> (ALTERA USB Blasterなど)はお持ちでしょうか?
> >> もしあるようでしたら、マニュアルのピン配置図に従って、ダウンロードケーブルを
> >> 接続すれば書き込めますので、ファイルをお送りします。
> >>
> >> また、ファームウェアは devel_v0.1.4_rc5 以降を使用してください。
> >> 上記の設定は、モータドライバのUSBポートを、ターミナルソフトで開いて、
> >> $HFREQENC1
> >> $RELYHALL1
> >> $EEPROMSAVE
> >> と入力することで有効化できます。(行頭の$も入力してください。)
> >> 入力しても何も表示されない場合、改行コードが異なっている可能性がありますので、
> >> 改行コードの設定を変更して設定の有効化からやり直す必要があります。
> >> また、
> >> PP
> >> と入力したときの出力で、OPTION:欄にRELYHALL, HFREQENCと
> >> 表示されていることを確認してください。
> >>
> >> // Atsushi WATANABE
> >> // Assistant Professor
> >> // Field Robotics Laboratory, Tohoku University
> >> // 6-6-10, Aramaki-Aoba, Aoba-ku, Sendai, 980-8579, Japan
> >> // Phone: [Telephone number removed] / E-mail:
atsushi dot w at ieee dot org

> >>
> >>
> >> 2016年8月2日 23:28 HOSODA YUUKI <
ee33080 at meiji dot ac dot jp
>:
> >>> 渡辺さま
> >>>
> >>>
> >>> いつもお世話になっております.
> >>>
> >>> 細田です.
> >>>
> >>>
> >>> お忙しい中での検証ありがとうございます.
> >>>
> >>> こちらで想定している回転数としては,通常時100rpm,高速回転時300rpmを想定しています.
> >>>
> >>>
> >>> ご迷惑をおかけしますが,よろしくお願いします.
> >>>
> >>> ーーーーーーーーーーーーーー
> >>>
> >>> 明治大学
> >>>
> >>> ロボット工学研究室
> >>>
> >>> 細田 佑樹
> >>>
> >>>
> >>> E-mail:
ee33080 at meiji dot ac dot jp

> >>>
> >>> ーーーーーーーーーーーーーー
> >>>
> >>>
> >>> ________________________________
> >>> 差出人: Atsushi Watanabe <
atsushi dot w at ieee dot org
>
> >>> 送信日時: 2016年8月1日 17:55:49
> >>> 宛先: tf-2md3-devel
> >>> 件名: [tf-2md3-devel:00125] Re: __Re:_ダ イレクト ] ] ドラ イブモータの パラメータ設 定について
> >>>
> >>> 明治大 細田さま、黒田先生
> >>>
> >>> 渡辺です。
> >>>
> >>> お借りしたモータで、ファームウェア上の
> >>> カウンタのオーバーフローの問題は一応解決しました。
> >>> (PCからドライバのパラメータ送信のビット数はもともと32bitだったのですが、
> >>> 内部で保持する変数が16bitだった点と、制御の計算式中でのオーバーフローが
> >>> あった点を修正しました。)
> >>>
> >>> ファームウェアを、devel_v0.1.4_rc4 にアップデートし、
> >>> yp-spur を、v1.15.0-rc2 ブランチにして実行すると、
> >>> とりあえず制御は可能になります。
> >>>
> >>> パラメータファイルの生成に関して、
> >>> 製品のデータシートの表記の解釈が若干難しいのですが、
> >>> 600 rpm は、機械的な許容最大回転数で、
> >>> 等価誘起電圧定数から計算すると無負荷最大回転数は 3000 rpm になります。
> >>>
> >>> 具体的には、16 V/krpm = 62.5 rpm/V
> >>> 無負荷最大回転数@48V = 3000 rpm
> >>> パラメータとしては、62.5 rpm/V * 8 極 = 500
> >>>
> >>> また、モータと極センサのUVW相の配線(?)が違っているようで、
> >>> PHASE_OFFSETのパラメータを指定する必要がありました。
> >>> (-120度なので、センサの配線が1つずつシフトしている?)
> >>>
> >>> 加えて、現状では以下2点の制約があります。
> >>>
> >>> 1. エンコーダパルスが、ノイズフィルタの周波数以上になってしまう
> >>>
> >>> FPGA上で、3 MHz, 3 bit median filter をかけているため、
> >>> High、Low それぞれ 1 us 以上ホールドする必要があります。
> >>> これより、A,B各相の最大周波数は 500 kP/s
> >>>
> >>> モータ仕様は 324 kP/R なので
> >>> 1.5 Hz = 90 rpm 以上の回転数ではエンコーダの読み飛ばしが発生します。
> >>>
> >>> この制約は、FPGAのファームウェアによる物で、
> >>> 3 MHz のところを最大 48 MHz まで大きくできますが、
> >>> ノイズフィルタとの兼ね合いなので、しっかり検証する必要があります。
> >>>
> >>> このファームウェア書き換えは、基板上のUSBコネクタからは行えません。
> >>> 一方、マイコンのファームウェアとは独立に変更を加えられるので、
> >>> ひとまずこのモータ用に使っているドライバのFPGAだけ、
> >>> 高速仕様に変更するのは行い易いです。
> >>>
> >>>
> >>> 2. パルス数を送る通信がオーバーフロー
> >>>
> >>> マイコン-PC間のオドメトリ計算用の5msごとの通信が
> >>> 16bit signed なので ±32,768 cnt/5ms 未満の必要あり。
> >>> 6,553,600 cnt/s = 1,638,400 P/s より
> >>> 5.1 Hz = 303 rpm 以上の回転数ではエンコーダ値が取れなくなります。
> >>>
> >>> こちらは、オドメトリ計算上はここまでのパルス数は不要なので、
> >>> 通信する値を 1/n にするような設定を用意するのが妥当かと考えています。
> >>> (現状、1番目の制約が強いので、未着手です。)
> >>>
> >>> また、ドライバ内のマイコン-FPGA間の通信にも同じ問題がありますが、
> >>> こちらは 50 us ごとの通信なので、上記の100倍の余裕があるため考慮する必要はなさそうです。
> >>>
> >>>
> >>>
> >>> 現状、約90rpm以下であれば、モータドライバの、通常のファームウェア書き換え
> >>> のみで対応できますが、それ以上の回転数は、
> >>> FPGAの書き換えが必要になり、もう少し検証が必要です。
> >>>
> >>>
> >>> 調整したパラメータは下記のとおりです。
> >>>
> >>> -------
> >>> VERSION 4
> >>> VOLT 16
> >>> CONTROL_CYCLE 0.02
> >>> TORQUE_FINENESS 0.00000001
> >>>
> >>> MOTOR_PHASE 3
> >>> COUNT_REV 162000
> >>> ENCODER_TYPE 2
> >>> CYCLE 0.001
> >>> MOTOR_R 1.8
> >>> TORQUE_MAX 0.0413
> >>> TORQUE_LIMIT 0.113
> >>> MOTOR_VC 550
> >>> MOTOR_TC 0.016
> >>> PHASE_OFFSET 4.188
> >>>
> >>> GEAR 8
> >>> TREAD 1
> >>> RADIUS[0] 0.3
> >>> RADIUS[1] -0.3
> >>>
> >>> MASS 0.1
> >>> MOMENT_INERTIA 0
> >>> TIRE_M_INERTIA 0.0
> >>> MOTOR_M_INERTIA 0.000000124
> >>>
> >>> L_C1 0.01
> >>> L_K1 800
> >>> L_K2 300
> >>> L_K3 200
> >>> L_DIST 0.6
> >>>
> >>> MAX_VEL 1
> >>> MAX_W 2
> >>> MAX_ACC_V 2
> >>> MAX_ACC_W 4
> >>> MAX_CENTRI_ACC 1.96
> >>>
> >>> GAIN_KP 10
> >>> GAIN_KI 1000
> >>> INTEGRAL_MAX 0.05
> >>> TORQUE_NEWTON 0
> >>> TORQUE_VISCOS 0
> >>> -------
> >>>
> >>>
> >>>
> >>> // Atsushi WATANABE
> >>> // Assistant Professor
> >>> // Field Robotics Laboratory, Tohoku University
> >>> // 6-6-10, Aramaki-Aoba, Aoba-ku, Sendai, 980-8579, Japan
> >>> // Phone: [Telephone number removed] / E-mail:
atsushi dot w at ieee dot org

> >>>
> >>> 2016年7月28日 14:07 HOSODA YUUKI <
ee33080 at meiji dot ac dot jp
>:
> >>>> 細田です.
> >>>>
> >>>>
> >>>> モータ送ることができるので,修正の件よろしくお願いします.
> >>>>
> >>>> モータを送るにつきまして,宛名を教えていただいてもよろしいでしょうか?
> >>>>
> >>>> ________________________________
> >>>> 差出人: Atsushi Watanabe <
atsushi dot w at ieee dot org
>
> >>>> 送信日時: 2016年7月28日 11:10:02
> >>>> 宛先: tf-2md3-devel
> >>>> 件名: [tf-2md3-devel:00123] Re: __Re:_ダ イレクト ] ドラ イブモータの パラメータ設 定について
> >>>>
> >>>> 黒田先生
> >>>>
> >>>> 渡辺です。
> >>>> 手元に該当するようなモータが無いため、このままだと手探りでの修正になり、時間がかかってしまいます。
> >>>> モータをお借りすると早いのですが、可能でしょうか?
> >>>>
> >>>> // Atsushi WATANABE
> >>>> // Assistant Professor
> >>>> // Field Robotics Laboratory, Tohoku University
> >>>> // 6-6-10, Aramaki-Aoba, Aoba-ku, Sendai, 980-8579, Japan
> >>>> // Phone: [Telephone number removed] / E-mail:
atsushi dot w at ieee dot org

> >>>>
> >>>>
> >>>> 2016年7月27日 23:33 黒田洋司 <
ykuroda at meiji dot ac dot jp
>:
> >>>>> 渡辺さん
> >>>>>
> >>>>> 黒田です.ご確認有難うございます.カウンタがオーバーフローしているなら
> >>>>> あの挙動は納得できます.実は大変に急いでおります.最悪でもお盆になる前に
> >>>>> なんとかなると有難いのですが.
> >>>>>
> >>>>> 黒田
> >>>>>
> >>>>>
> >>>>>> 2016/07/27 19:14、Atsushi Watanabe <
atsushi dot w at ieee dot org
> のメール:
> >>>>>>
> >>>>>> 細田さま
> >>>>>>
> >>>>>> 渡辺です。
> >>>>>>
> >>>>>> 原因はドライバ内でエンコーダ分解能のパラメータを16bitで扱っている為とわかりました。
> >>>>>> これは、PCからドライバにパラメータを送るプロトコルが16bit仕様なことに起因しています。
> >>>>>> (カウント自体は32bitで行っているので、制御系そのものには問題ありません。)
> >>>>>>
> >>>>>> 現在、ファームウェアのメジャーアップデートの準備をしており、この修正も含めたいと思います。
> >>>>>> すみませんが、少々お待ちください。
> >>>>>> (ちなみに、どのくらい急いでいますか?)
> >>>>>>
> >>>>>> 2016/07/25 午後10:53 "HOSODA YUUKI" <
ee33080 at meiji dot ac dot jp
>:
> >>>>>>
> >>>>>> 細田です.
> >>>>>>
> >>>>>>
> >>>>>>> パラメータ生成の極数欄でいうと、N極が8, S極が8で、8になるかもしれません。
> >>>>>>> モータを回したときの、UVW矩形波のパルス数を見ると確実です。
> >>>>>>
> >>>>>> UVW短形波を確認したところ,パルスの数は8でした.
> >>>>>>
> >>>>>> パラメータ生成を極数8にして何度かパラメータをいじってみましたが,モータの挙動は前回同様不規則な回転と停止になってしまいました.このような場合どのように対処すればいいでしょうか
> >>>>>>
> >>>>>>
> >>>>>> 現在のパラメータです.
> >>>>>>
> >>>>>> VERSION 4
> >>>>>> VOLT 24
> >>>>>> CONTROL_CYCLE 0.02
> >>>>>> TORQUE_FINENESS 0.000001
> >>>>>>
> >>>>>> MOTOR_PHASE 3
> >>>>>> COUNT_REV 162000
> >>>>>> ENCODER_TYPE 2
> >>>>>> CYCLE 0.001
> >>>>>> MOTOR_R 8
> >>>>>> TORQUE_MAX 41.25
> >>>>>> TORQUE_LIMIT 125
> >>>>>> MOTOR_VC 100
> >>>>>> MOTOR_TC 0.0955
> >>>>>>
> >>>>>> GEAR 8
> >>>>>> RADIUS[0] 0.159
> >>>>>> RADIUS[1] -0.159
> >>>>>>
> >>>>>> MASS 3
> >>>>>> TIRE_M_INERTIA 0.0379
> >>>>>> MOTOR_M_INERTIA 0.938
> >>>>>>
> >>>>>> L_C1 0.01
> >>>>>> L_K1 800
> >>>>>> L_K2 300
> >>>>>> L_K3 200
> >>>>>> L_DIST 0.6
> >>>>>>
> >>>>>> MAX_CENTRI_ACC 1.96
> >>>>>>
> >>>>>> GAIN_KP 0
> >>>>>> GAIN_KI 0
> >>>>>> INTEGRAL_MAX 0.05
> >>>>>> TORQUE_NEWTON 0
> >>>>>> TORQUE_VISCOS 0
> >>>>>>
> >>>>>>
> >>>>>> よろしくお願いします
> >>>>>>
> >>>>>> ________________________________
> >>>>>> 差出人: Atsushi Watanabe <
atsushi dot w at ieee dot org
>
> >>>>>> 送信日時: 2016年7月25日 15:03:20
> >>>>>> 宛先: tf-2md3-devel
> >>>>>> 件名: [tf-2md3-devel:00119] Re: ダイレクトドライ ブモータのパラメータ設定について
> >>>>>>
> >>>>>> 明治大学 細田さま
> >>>>>>
> >>>>>> 渡辺です。
> >>>>>>
> >>>>>> ダイレクトドライブモータの制御自体は、私も以前に使っていたので大きな問題はないはずです。
> >>>>>> (ただし、モータの極数の関係で、パラメータの設定が若干難しいです)
> >>>>>>
> >>>>>> データシートを見ると、磁極が16となっているので、
> >>>>>> パラメータ生成の極数欄でいうと、N極が8, S極が8で、8になるかもしれません。
> >>>>>> モータを回したときの、UVW矩形波のパルス数を見ると確実です。
> >>>>>>
> >>>>>> // Atsushi WATANABE
> >>>>>> // Assistant Professor
> >>>>>> // Field Robotics Laboratory, Tohoku University
> >>>>>> // 6-6-10, Aramaki-Aoba, Aoba-ku, Sendai, 980-8579, Japan
> >>>>>> // Phone: [Telephone number removed] / E-mail:
atsushi dot w at ieee dot org

> >>>>>>
> >>>>>>
> >>>>>> 2016年7月21日 18:47 HOSODA YUUKI <
ee33080 at meiji dot ac dot jp
>:
> >>>>>>> お世話になっております.
> >>>>>>>
> >>>>>>>
> >>>>>>> 明治大学機械工学科の細田と申します.
> >>>>>>>
> >>>>>>>
> >>>>>>>
> >>>>>> 現在,t-frogのドライバを使用してモータの制御を試みようとしているのですが,パラメータ調整がうまくいかず,速度指令を与えてもうまく回転しません.具体的には,不規則な回転と停止を繰り返します.また,速度指令を与えるのを止めると,指令していた方向と反対の方向に回転し始めてしまいます.パラメータはyp-spur用パラメータ生成でできたものをベースに使用しています.使用しているモータはDDモータになっており,ダイレクトドライブのためギア比が1のためうまくいってないのではないかと思っているのですが,どうでしょうか?
> >>>>>>>
> >>>>>>>
> >>>>>>> 現在使用しているモータの情報とパラメータを載せておきます.
> >>>>>>>
> >>>>>>> 使用モータ:mtlのマイクロDDモータの MDH-40になります.
> >>>>>>>
> >>>>>>> URL http://www.mtl.co.jp/products/motor/mds_mdh_40.html
> >>>>>>>
> >>>>>>> 【モータの仕様】
> >>>>>>> ・3相ブラシレスモーター
> >>>>>>> ・駆動電源電圧24V
> >>>>>>> ・無負荷回転数/無負荷電流値:600rpm
> >>>>>>> ・最大トルク:1000 N・m
> >>>>>>> ・1:1(減速比1)
> >>>>>>>
> >>>>>>> <http://www.mtl.co.jp/products/motor/mds_mdh_40.html
> >>>>>>> 現在使用しているパラメータは以下のようになっています.
> >>>>>>>
> >>>>>>> VERSION 4.00000000
> >>>>>>>
> >>>>>>> VOLT 24.0000000 #[V]
> >>>>>>>
> >>>>>>> CYCLE 0.00100000 #[s]
> >>>>>>>
> >>>>>>> CONTROL_CYCLE 0.02000000 #[s]
> >>>>>>>
> >>>>>>> TORQUE_FINENESS 0.00000100
> >>>>>>>
> >>>>>>>
> >>>>>>> RADIUS[0] -0.15900000 #[m]
> >>>>>>>
> >>>>>>> RADIUS[1] 0.15900000 #[m]
> >>>>>>>
> >>>>>>> TREAD 1.00000000 #[m]
> >>>>>>>
> >>>>>>> MASS 3.0000001
> >>>>>>>
> >>>>>>> TIRE_M_INERTIA 0.10000001
> >>>>>>>
> >>>>>>> MOMENT_INERTIA 0.10000000
> >>>>>>>
> >>>>>>> TORQUE_VISCOS 0.00000000
> >>>>>>>
> >>>>>>> TORQUE_NEWTON 0.00000000
> >>>>>>>
> >>>>>>> TORQUE_MAX 20.50000000
> >>>>>>>
> >>>>>>> TORQUE_LIMIT 62.00000000
> >>>>>>>
> >>>>>>>
> >>>>>>> MOTOR_PHASE 3.00000000 #3相DC
> >>>>>>>
> >>>>>>> COUNT_REV 81000.00000000 #[Counts/rev] 324000/16極*4
> >>>>>>>
> >>>>>>> ENCODER_TYPE 2.0000
> >>>>>>>
> >>>>>>> GEAR 16.00000000 #[in/out] 1*16極
> >>>>>>>
> >>>>>>> MOTOR_VC 300.00000000 #逆起電力係数[rpm/V] rmax/V ... V:定格電圧[24]
> >>>>>> rmax:Vでの無負荷最大回転数[600]
> >>>>>>>
> >>>>>>> MOTOR_TC 0.04780000 #トルク係数[Nm/A] 60/2/Pi/Ke ...
> >>>>>> Ke:逆起電力係数MOTOR_VC
> >>>>>>>
> >>>>>>> MOTOR_R 8.00000000 #[ohm]:モータの端子間抵抗*3/4
> >>>>>>>
> >>>>>>> MOTOR_M_INERTIA 0.11700001
> >>>>>>>
> >>>>>>> GAIN_KP 0.00000000
> >>>>>>>
> >>>>>>> GAIN_KI 0.00000000
> >>>>>>>
> >>>>>>> INTEGRAL_MAX 0.05000000 #[rev]
> >>>>>>>
> >>>>>>>
> >>>>>>> MAX_VEL 1.00000000 #[m/s]
> >>>>>>>
> >>>>>>> MAX_W 20.28000000 #[rad/s]
> >>>>>>>
> >>>>>>> MAX_ACC_V 20.00000000 #[m/ss]
> >>>>>>>
> >>>>>>> MAX_ACC_W 41.89000000 #[rad/ss]
> >>>>>>>
> >>>>>>> MAX_CENTRI_ACC 1.95000000 #0.25G
> >>>>>>>
> >>>>>>>
> >>>>>>> L_C1 0.01000000 #
> >>>>>>>
> >>>>>>> L_K1 800.00000000 #
> >>>>>>>
> >>>>>>> L_K2 300.00000000 #
> >>>>>>>
> >>>>>>> L_K3 200.00000000 #
> >>>>>>>
> >>>>>>> L_DIST 0.60000000 #
> >>>>>>>
> >>>>>>>
> >>>>>>> STOP_LINEAR 0.01000000
> >>>>>>>
> >>>>>>> SPIN_LINEAR 0.05000000
> >>>>>>>
> >>>>>>> WHEEL_ANG_LINEAR 0.05000000
> >>>>>>>
> >>>>>>> このようになっています.
> >>>>>>>
> >>>>>>>
> >>>>>>> お手数おかけしますが,ご回答のほどよろしくお願いします.
> >>>>>>>
> >>>>>>> ----------------------------------
> >>>>>>>
> >>>>>>> 明治大学
> >>>>>>>
> >>>>>>> 理工学部機械工学科 4年生
> >>>>>>>
> >>>>>>> ロボット工学研究室
> >>>>>>>
> >>>>>>>
> >>>>>>> 細田佑樹
> >>>>>>>
> >>>>>>>
> >>>>>>> E-mail:
ee33080 at meiji dot ac dot jp

> >>>>>>>
> >>>>>>> ----------------------------------
> >>>>>>>
> >>>>>>>
> >>>>>>> <http://www.mtl.co.jp/products/motor/mds_mdh_40.html>
> >>>>>>>
> >>>>>>> <
> >>>>>> http://www.mtl.co.jp/dcms_media/other/%CE%BCDD%E3%83%A2%E3%83%BC%E3%82%BF%E3%82%AB%E3%82%BF%E3%83%AD%E3%82%B0.pdf
> >>>>>>> <http://www.mtl.co.jp/products/motor/mds_mdh_40.html><
> >>>>>> http://www.mtl.co.jp/products/motor/mds_mdh_40.html><
> >>>>>> http://www.mtl.co.jp/products/motor/mds_mdh_40.html><
> >>>>>> http://www.mtl.co.jp/products/motor/mds_mdh_40.html><
> >>>>>> http://www.mtl.co.jp/products/motor/mds_mdh_40.html><
> >>>>>> http://www.mtl.co.jp/products/motor/mds_mdh_40.html><
> >>>>>> http://www.mtl.co.jp/products/motor/mds_mdh_40.html><
> >>>>>> http://www.mtl.co.jp/products/motor/mds_mdh_40.html><
> >>>>>> http://www.mtl.co.jp/products/motor/mds_mdh_40.html>
> >>>>>
> >>>>> ----
> >>>>> Yoji KURODA, Dr.E
> >>>>> Professor
> >>>>> Director of Autonomous Mobile Systems Laboratory
> >>>>> Department of Mechanical Engineering,
> >>>>> School of Science & Technology, Meiji University
> >>>>> http://www.isc.meiji.ac.jp/~amslab/racing
> >>>>> http://www.isc.meiji.ac.jp/~amslab/
> >>>>> Access Map: http://g.co/maps/tws8y
> >>>>>
> >>>>> ?????
> >>>>>
> >>>>>
> >>>>>
> >>>>>
> >>>>>
> >>>>>

References