サーボモータそのものを制御します。電子回路と接点になる部分です。サーボモータ制御の最下位層になります。
◀ この記事の前に: Servomotor driver( 概要 )
▶ この記事の次に: Servomotor driver( コード )
目 的
Servomotor driverは、個々のサーボモータの操作をおこないます。Motion interpreter や Motion sequencer、アプリケーションや指示により動作を開始します。
操作の概要は以下のとおりです。
- 個々のサーボモータの軸を目標角度にする
- 個々のサーボモータの軸の角速度を設定する
- サーボモータの電源を ON / OFFする

サーボモータの速度
サーボモータの動作の基準となる速度です。サンプルプログラムはサーボモータの加減速制御を伴わない定速制御を行っています。角速度は設定により変更できます。
ポジション( 角度 )
ポジションとはサーボモータそのものの角度でなく、個々のサーボモータの取付位置や方向を考慮したロボットの部位としての角度です。サーボモータそのものの角度と分けるために「ポジション」と呼びます。単位は「度」になります。小数点以下の設定はできません。
サーボモータは部位ごとにサーボモータそのものの角度や回転方向、可動範囲を Servomotor driverで定めています。
詳細はこちらをご覧ください。
操作方法
操作指示( Servomotor driver )は以下のとおりです。
サーボモータの角度設定( 動作開始 )
Start servomotor
概 要:
指定したサーボモータを指示した角度まで動かします。
操 作:
setSVposition( int svNo, int position ) で、サーボモータの動作開始を指示する。
・int svNo: 対象とするサーボモータ
・int position: 回転後の軸の角度( ポジション表記 )
強制開始」を使用します。例えば二足歩行中を中断してすぐに停止(直立不動の姿勢)にしたい場合などが挙げられます。この場合は直立不動の姿勢が安定しているため、その姿勢に移行できますが、基底速度を高くしている場合などは慣性力が働くためバランスを崩すことがあります。
サーボモータの速度設定
Set servomotor speed
概 要:
サーボモータの基底速度を設定する。
操 作:
void setSpeedSV( int speed ) で、サーボモータの基底速度を設定する。
・int speed: 設定するサーボモータの基底速度
参考情報
サイトで参考になる情報は以下のとおりです。
このホームページ内
- Motion Interpreter( 概要 ): サーボモータ制御の最上位、Motion Interrupter の概要です。
- Motion Interpreter( 操作説明 ): アプリケーションからの操作方法です。( API )
- Motion Interpreter( コード ): コードの詳細を説明します。
- Motion sequencer( 概要 ): サーボモータの協調運動制御の概要です。
- Motion sequencer( 操作説明 ): シーケンスの開始・停止等の操作方法です。( API )
- Motion sequencer( コード ): コードの詳細を説明します。
- シーケンスデータ: シーケンスデータの仕様と作成方法です。
- Servomotor Driver( 概要 ): サーボモータそのものの制御です。( API )
- Servomotor Driver( 操作説明 ): 個々のサーボモータを制御する方法です。
- Servomotor Driver( コード ): コードの詳細を説明します。
- サーボモータの制御( コード詳説 ): バックグラウンド処理の分散化の実現方法です。
- サーボモータ: サーボモータの回路です。ハードウエアの説明です。