« PATA仕様の1.8インチSSD急騰 | トップページ | スキューズさんちの手ロボくん »

2008.02.03

MicroMGとの付き合い方

最近二足歩行ロボを始めた高校生ハンさんからMicorMG(台湾のGWS社のサーボ。正式にはMicro 2BBMG。)に関しての質問のお便りをいただきました。

先日のわんだほ~にWheelerで参加されていた方です。

質問は「MicroMGのガタ対策にどんなことをしていますか?」ということでしたが、私自身はガタというかバックラッシ軽減を目的とした対策はほとんどしていないので、代わりにMicroMGと付き合っていく上でこれまで私が気をつけたこと全般に関しての返信をいたしました。

まあ、最近では二足用のパーツも充実してきてはいますが、ローコストで二足歩行やろうとすると、MicroMGはまだまだ外せないサーボです。

個人的に調べたり苦労したことなので間違ってることもあるかもしれませんが、これからMicroMGを使って二足歩行ロボをやろうとしている方の参考になればと思いまして、ハンさんにも許可をいただきその内容を公開いたします。

以下、返信メールです。
(少し修正したところもあります。)

ハンさんこんにちは。
いずみかわです。

> 今まで作っていた二足のガタがひどいので作り直すことにしました。
> フレーム等のガタは何とかなるにしてもサーボ本体のガタはなんともなりません。
>
> そこでいずみかわさんはガタをとる為に何かしていることはありますか?
> あれば教えていただきたいです。

 Blogの方のコメントに書こうかと思った矢先にメールが来ていたので、とりあえず
こちらに返信しておきますね。
 長文になりますし。

 私の感じているところで、MicroMGを使うにあたって、KO等の国内メーカ製
デジタルサーボ(まあ国内メーカといっても製造自体は台湾やマレーシアの工場
だったりはしますが)と比べて気をつけなければいけない点がいくつかあります。

■ギアのバックラッシ(平たく言うとサーボのガタですね。)

 これはよく言われていることですが、MicroMGと付き合っていく
上で避けては通れません。
 対策ですが、サーボに何か細工をして...ということはあまり出来ません。
 
 機体設計上では、ハンさんのBlogでコムムスさんやB.Wさんのおっしゃって
いるようにゴムやスプリングで一定方向にテンションを掛けてやるということ
で低減は出来ると思います。
 加えて、サーボトルクの不足をアシストするようにしてやればいいかと思います。

 私の場合は、昔のAsso Di Fioriのケースでは
http://izm.way-nifty.com/robo/2005/09/_20050912_5c2d.html
にあるような感じでやっていました。
 ただ、実際の目的としてはひざの部分は伸ばす方向にテンションを掛けて
やることで、屈伸から伸ばす時のトルク不足を補うことを第一に考えていました。
 バックラッシに関してはモモ部のサーボの影響の方が大きいのですが、
こちらは未対策でしたし。

 ガタ対策はともかくとして、ヒロムロボでもトルク不足を補うため、脚は
スプリングによるアシストを行っています。

 実際のところサーボのバックラッシや機体のガタの呪縛からは逃れ
られないと思います。

 なので最近ではガタはあるものとして、それでも大丈夫なように考えていく
方向でやっててそれが理想かなと思っています。

 そんな感じなので、ヒロムロボの場合、はっきりいってガタだらけです
(故意の設計も含め)。
 下半身のロール軸は、スプリングによるパッシブなものなので、まあ、
ほんとに誇張無くプラプラしてますし。

 足を平行リンクにした理由もサーボにバックラッシがあって、脚の角度が
変わっても足裏は常に平行を保つようにするためでした。
(子供用にお手軽&安価にするためサーボを減らす目的もありましたが。)
 最近平行リンク脚が増えてきたのは皆さんそのことに気がついてきたからでは
ないかと思います。
 代わりに柔軟性や動作の自由度は制限されますが、割り切りですね。


■サーボ自体の個体差(個体によってパルス幅と角度の関係に違いがある)
 MicroMGはサーボの個体によって角度特性に違いがあります。

 私はこの問題の方がギアのバックラッシより深刻ではないかと思っています。

 どういうことかと言うと、同じパルス幅を与えても個体によって角度が
結構違うということです。

 私の場合、対策としては、各個体ごとに特性を記録しておき、それを使って
物理的なパルス幅を補正しています。

 どういうことかというと、
 1.各個体にIDを振り、左90度~右90度まで、30度毎(7点)のPWMの
   パルス幅を記録。
 2.各関節にどのIDのサーボが使われているかを設定。
 3.モーションエディタ上では関節角度論理的な角度で指定。
 4.実際のパルス幅は論理角度から1で記録したパルス幅を使って計算を行う。
   例えば左30度であれば、パルス幅としてその個体の左30度の値を使う。
   右50度であれば右30度と右60度の値から計算する。
 といった感じです。

 この仕組みによってMicroMGだけでなく、別製品を使う場合でもその個体特性データ
があれば、関節に紐付けたサーボの個体IDを差し替えるだけで、自動的にそのサーボに
合った物理的なPWMのパルス幅を計算できます。

 サーボ特性は初期のころは左90度、中立、右90度の3点で管理していましたが、
これでは不足を感じたので、現在の7点での測定としました。

 後で聞いた話ですが、昔MicroMGをメインに使っておられたSISOさんもほぼ
同様のことをやっていたそうです。

 私が本格的に触りだした最初のサーボがMicroMGだったので、他のサーボも
みんなそんなものだろうと思っていたのですが、KHR-1ユーザに聞いてみると
そんなこと気にしたこともないということでした....

 ヒロムロボではこのあたりは結構いい加減にやってても大丈夫ですが、
Asso Di Fioriはちゃんとやらないと歩きませんでした。


■ポテンションとファイナルギアの間のパーツ(ジョイントピース)の精度不足
 これは既に過去の話かもしれません。
 昔のMicroMGはポテンションとファイナルギアの間のパーツ(ジョイントピース)が
金属製で、かなり隙間がありました。
 そのため、ファイナルをちょっと廻してもポテンションが廻らないような
感じで制御精度が著しく低下していました。

 つまり中立になるはずのパルスを送っても、「右から中立」と「左から
中立」でズレが出てくるわけです。

 そのため、過去にはZIPPONさんが
http://izm.way-nifty.com/robo/2004/11/post_2.html
このようなパーツを作成されたりしていましたが、最近売られている
MicroMGはジョイントピースが樹脂製となり改善されているようです。


■MicroMGにリポ7.4Vは危険。
 そのまま繋ぐと負荷がかかるとすぐに焼けて危険です。
 私はMicroMGを繋ぐときは抵抗やダイオード等で減圧して使っています。


 まあこんな感じで。
 
 ではでは。

|

« PATA仕様の1.8インチSSD急騰 | トップページ | スキューズさんちの手ロボくん »

コメント

この記事へのコメントは終了しました。