[H8-ML(2883)] RE: [H8-ML(2882)] Re: ラジコンのサーボについて
From: "Kazuhiro Nonaka" <non@xxxxxxxxxxxxx>
Date: 2003年03月01日(土)17時00分41秒
野中です。

> 参考ですが、信号線のパルス周期ですが、厳密に16msecを
> 守る必要はありません。
> 全体のスループットに影響するかも知れませんから、周期を
> どの程度まで伸ばして良いか確認されることをお勧めします。
> 経験的には20msec〜25msecでも実用上問題ないはずです。

そうですね。30msecぐらいなら問題ないでしょう。
それより長くなると、振動が発生するそうですね。
短い場合も8msecぐらいまでは問題ありません。
要は、Highの時間が大事なようです。

> それから、サーボの位置決めが負荷が掛かると思ったほど
> 精度がでないとか?どのくらいですか?

1個のサーボモータに実験回路を作り、
ある角度にPWM幅を一定にして、手で力を加えてみると3度から
5度くらいは動くようです。
また、重りをのせて、5kgcmぐらいの状態にすると、
(S3801のトルクは14kgcmです。重りが回転軸の上にきたとき
負荷の回転力は0、+−90度のときが最大)
重りを載せない時はPWM幅と回転角は、ほぼリニアなグラフを描く
ことができましたが、重りを載せた場合は、+−90度で1.6%の
誤差を生じています。角度でいえば2度ぐらいですね。
実際はもっと、負荷がかかりますので
3%〜5%の誤差を生じていると思います。

フィードバックをかけないでロボットを動かす場合は、常に
この誤差の分を補正するように値を与えなければいけないわけですが、
足をおろしている状態から片足をあげようとした場合など、その足に
どれだけ負荷がかかっているかに応じて、誤差を変えてやらないと
倒れてしまうのでやっかいです。


> 尚、負荷が掛かってもサーボの変移をゼロにすることはどの
> ラジコンサーボでもできないと思います。

そうですね。まだ、実験用のプログラムが完成していないので
どれくらい目標値に近づけられるかわかりません。
計算上はトルクに余裕がありますから、指定した角度にならない
場合は、その変移の分のPWMの幅を調整するプログラムです。

> ラジコンはスティックの微妙な操作をサーボで実現する必要
> がありますから、からなり優秀だと思いますが・・以前どこかの
> サイトでパルス幅と角度を実際に計測した方のグラフを見
> たことがあります。

前途しましたように無負荷の状態の直線性はたいしたものです。

> 少し気になるのは、サーボの位置決め精度を補正しようと
> して外部にポテンシオを増設しても、指令信号の微小な変化
> に対してサーボがキチンと反応してくれなければ意味がない
> ように思います。所定の負荷状態で、僅かにパルス幅を変
> 化させたとき、サーボが反応してくれる限界があると思いま
> すので、これを先に調べておくことが先決かと思います。

PWMのHighの時間を調整するカウンタ値は
90度を動かすのに、1857〜3215でした。
そのときのAD値は 505〜795です。
従って指令信号である角度を1度変更すると、PWMのカウンタ値は
15.09変化し、AD値では3.222変化します。
PWM値を20づつ変化させて、そのときのAD値を計測すると、
PWM値        AD値
2000		765
2020	         	761
2040		758
2060		752  以下略
のように反応しているのがわかりました。
AD値の増分が一定でないけど、大丈夫でしょう。
ということで、PWMの幅を補正すれば1度以内の誤差には
押さえられるはずだとは思っているのです。

でも、問題は補正するプログラムなんですよね。
ただ、単に誤差の分だけPWM幅を変えればいいとうものでは
ないですからね。今どちらの方向に動いているのか、誤差は
広がっているのか狭まっているのかを考慮しなくてはいけません
からね。

立ち上がり特性と周波数特性のグラフぐらいを計測して、
あとは、試行錯誤ですね。
なんか上手い方法はないですかね。
PDI制御まではいかなくてもいいですから。



スレッド概略
[2849(R)](起点)
 └[2882(U)]
   └[表示中]
     └[2884(1)]


投稿順に移動
[←前の記事へ(P)]
[→次の記事へ(N)]


リスト表示へ
[このスレッド(T)]
[本記事の前後(L)]