ソフトウエア

Motion interpreter( 概要 )

サーボモータの制御処理で最も高位のモジュールです。単独にサーボモータを動かすコマンドや、順序に従ってサーボモータを動かすシーケンス制御を統合しています。

◀ この記事の前に: サーボモータ制御の階層化
▶ この記事の次に: Motion interpreter( 操作説明 )

目 的

Motion interpreterは、サーボモータの操作を文字列(コマンド)により統合的に行います。信号( 言葉 )により動作を制御します。個々のサーボモータの単独制御、協調運動制御、協調運動制御の手順の書き込み、全体速度( テンポ )の設定、強制停止など、運動に関わるものを一元的に制御します。下位にMotion Sequencer( 協調運動制御 )があります。

Design Considerations  文字列で操作する意味
Motion interpreterは、サーボモータ制御の最上位にありアプリケーションとやりとりを行います。ヒューマノイドは多彩な機能を持つことを想定しています。その場合、高位の情報はやりとりが汎用的であることが望まれます。( 低位の情報はその量や速度から異なる場合があります。)リモートコントロールを含む通信や、他のシステムとの情報のやりとりも文字を使用することにより柔軟に対応することができます。そのため、高位のインタフェースを担う Motion Interpreterは文字にしています。
高速度の対応が必要な場合は、Motion Sequencer や Servomotor driver など各階層のインタフェースを使用します。これらは目的に適したデータ型でやりとりを行います。

機 能

Motion interpreterは、以下の機能を持ちます。

  • 個々のサーボモータを即時操作する
  • モーションシーケンサを制御する(指定、起動、停止)
  • モーションシーケンスを読み込む
  • 基底速度を変更する

説 明

文字でサーボモータを操作できるため、この処理に文字列を与える方法を変更することにより他の機能との柔軟な連携が実現できます。
例) スマートフォンからBLEなどで文字列を送信することによりスマートフォンをリモコンとして使用できる。
例) 歩行など一連の動作はシーケンスとして文字列で保管してシーケンスを選択指示することにより動作を託せる。

機 能

Motion interpreterは、以下の機能を持ちます。

  • シーケンスの実行 / Execute sequence MI: サーボモータのシーケンスを強制実行する
    下位制御: Motion sequencer
  • サーボモータの操作 / Move servomotor: 指定したサーボモータの目標位置(角度)に動作指示する
    下位制御: Servomotor controller
  • 速度の操作 / Set speed servomotor: サーボモータの基底速度に変更する
    下位制御: Servomotor controller
  • シーケンスの書き込み / Write sequence: サーボモータを順序立てて動かすシーケンス(データ)の一部は動的に変更ができる

Arduino IDEによる直接制御

試験用に Arduino IDEのモニタから Motion interpreterを制御できます。
Motion interpreterは文字列で制御できるため、PC上の Arduino IDEのモニタにサーボモータの動作指示を入力します。USBを介して Qumcum Lab. に入力した動作指示は Motion interpreterに渡されサーボモータの制御を行います。このしくみはデバッグ時の動作確認に便利です。

参考情報

参考になる情報は以下のとおりです。

このホームページ内

他のWebサイト

カテゴリー
最近の記事 おすすめ記事

記事一覧を表示するには、カスタム投稿「ブログ」にて、4つ以上記事を作成してください。

記事一覧を表示するには、カスタム投稿「ブログ」にて、4つ以上記事を作成してください。

TOP