ユビキタス鉄道模型
赤外線リモコン戦車
レーザ・グラフィックス
USB加速度センサマウス
ビジョンシステム
リアルタイムOS
LCD表示パネル
相撲ロボット
多自由度ロボット
├ 概要
├ CPUとFPGAの接続
├ サーボモジュールの制御
└ アプリケーション例
 開発事例 TOPへ
 HOMEへ
イエローナビ
 ページTOPへ
 開発事例 TOPへ
 HOMEへ
YellowSoft.com
製品紹介 Q&A ダウンロード 開発事例 ユーザ ご購入 価格表 お問合せ
 多自由度ロボット


  FPGAとラジコンサーボモジュールを使った多自由度ロボットの製作
    T.Yamamoto


  ラジコン用サーボモジュールの制御

このロボットでは、15あるすべての関節にラジコン用に市販されているサーボモジュールを使用しています。ラジコン用サーボモジュールは、モーター、減速装置、位置センサ、位置制御回路、モータアンプが一つのモジュールになったもので、1本の制御信号だけで簡単に位置制御を行う事ができます。実際にどのようなものがあるかはラジコン技術などの雑誌広告を見ていただくのがいいと思いますが、重さ6g〜200g,トルク0.5kg〜10kgとバリエーションは様々です。複数のメーカーから発売されていますので、必要なトルク、大きさに応じて自分の設計にあったものを選択する事ができます。

メーカー毎に若干のコネクタ形状の違いはありますが、基本的には2.54mmピッチの3ピンコネクタですのでユニバーサル基板などに接続するのも簡単です。ピン配置も主用メーカーでは共通になっています。ただしハーネスの色はメーカーによって異なりますので以下は参考程度にしてください。制御回路とモーターの電源は共用ですので電源容量とノイズに少し配慮する必要があるかもしれません。サーボ内部の制御はPD制御をしているようです。サーボの応答特性およびトルクは電源電圧に依存します。

GND (0V) 茶色、黒色
Vcc(3〜6V) 赤色
PWM(制御信号) 燈色


制御信号は左の図のようなPWM波形です。信号レベルは電源に依存しますがかなりフレキシブルです。信号周期はメーカーやモジュール毎に異なりますが、大体10ms〜20msです。

周期が短すぎる場合、サーボが制御位置近傍で発振したり、ノイズが大きくなります。周期が長くなる場合は、サーボの動作がステップ状になりますので用途に応じて最適なところを選択する必要があります。

パルスを全く入れない(Lレベルで固定)場合はサーボがかからないので外力を加えることで回転させることができます。ただし、無理をするとギアが破損するので注意が必要です。Dutyパルスのオンタイム(Hレベル)の時間は1〜3msで、この時間幅がサーボの位置にほぼ比例します。(周期には無関係)したがって、このオンタイムの幅を制御することでロボットの関節の位置を制御する事ができます。


左の図は、Beast2で使用した日本遠隔制御(JR)社製のラジコン用サーボモジュール NES-371(9g)の場合のONタイムの時間幅と制御位置の関係をグラフにした物です。

Onタイムの幅と制御位置の関係は非常に良好で、サーボ毎の傾きのばらつきも少なく、一次関数で近似して使っても問題がありません。サーボ毎のオフセットの修正は必要です。

SH-2のようなワンチップCPUの内臓PWM出力では、周期10〜20msという非常に遅い周期の信号を多数出す事は困難ですが、FPGAを使うことで簡単に制御信号を発生させる事ができます。(ラッチ、カウンタ、コンパレータで簡単に構成することになります。)簡単な実験用や数が少ない場合は74シリーズのICを組み合わせたり、555などのタイマICで構成する事もできますが、CPUからの制御や大きさを考えると、FPGAと組み合わせるのがいいのではないかと思います。



← CPUとFPGAの接続 4/5 アプリケーション例 →