メカトロ・システム機器の進化には分散処理が欠かせない ――ロボットに学ぶ分散処理の基本概念と課題

羅 志偉,平野慎也

tag: 組み込み

技術解説 2006年5月11日

●○● Column ●○●
分散処理と分散制御の違い

 誤解を避けるために,「分散処理」と「分散制御」の単語の取り扱いについて説明しておきます.「分散処理」というと,関連するキーワードとして,例えば,計算機・情報工学では「並列分散処理」や「ネットワーク」,「分散人工知能」または最近の「グリッド・コンピューティング」や「ユビキタス」が連想されます.一方,システム制御工学では,これに近い概念として「分散制御」や「自律分散」といった研究がなされています.

 一般にロボットの動きを1台のCPUではなく,関節ごとに配置したCPUで制御することを「分散制御」と呼び,大量のセンサ入力から運動に必要な感覚情報を抽出するための計算処理を「分散処理」と区別して考えることが多いようです.ただし,本稿ではこの両面を区別せず,まとめて「ロボットの分散処理」という一つの枠組みの中で議論を進めていきます.

 情報工学の立場から見れば,「並列分散処理」は,複数のプロセスを物理的に分散している計算資源上で実行させ,互いに情報交換をしながら目的となるアプリケーションを処理する技術です.
1) タスク分割・多重化,
2) スケジューリング,
3) 計算処理,
4)各プロセス間の通信
が基本的な操作となっています.ここでは,スケジューリングを適切に行うことによって通信負荷と計算負荷のトレードオフ評価を行い,これによって処理速度の改善や計算機設備資源の有効活用,コスト削減,信頼性確保,情報伝達の広域化などを実現することが重要な課題となります.今までの技術例として,メッセージ・パッシングや共有メモリを使ったプロセス間通信,ネットワークOS,分散透過性を提供する分散OS,分散型データベースが挙げられます.また,最近では情報の緊急度に応じた分散リアルタイム・システム技術(5) も提案されています.

 一方,制御理論で取りあげられている「分散制御」は,集中制御との対比から生まれた概念です.集中制御では制御対象のすべての情報を1ヵ所に集約して利用することによって制御入力を決定するのに対して,分散制御は制御対象の各部分から得られた局所情報だけでその部分の状態を制御し,全体の制御目的を達成しようとします.

 ロボットの分散処理は,情報工学における分散処理技術と制御工学でいう分散制御技術の双方を完全に包含する関係にあり,また,ロボットの運動や作業の実現などの点でより具体性を持っています.ここでは,ロボットの機構構造に則した制御装置の構造化と膨大な情報の実時間並列分散処理を同時に要求しています.

 これに加えて,両者をさらに作業実現という統一の目標に向けて統合させることも重要です.よって,未知なる環境の変化に対して,迅速に対応できる機構と機能の分割と統合が中心課題となっています.また,物理原理に従って動くロボットのリンク機構が実世界において実時間内に目的の作業を実現する1点に絞られることから,各運動自由度をいかに環境条件に応じて協調させながら動作させるかを考えなければなりません.

組み込みキャッチアップ

お知らせ 一覧を見る

電子書籍の最新刊! FPGAマガジン No.12『ARMコアFPGA×Linux初体験』好評発売中

FPGAマガジン No.11『性能UP! アルゴリズム×手仕上げHDL』好評発売中! PDF版もあります

PICK UP用語

EV(電気自動車)

関連記事

EnOcean

関連記事

Android

関連記事

ニュース 一覧を見る
Tech Villageブログ

渡辺のぼるのロボコン・プロモータ日記

2年ぶりのブログ更新w

2016年10月 9日

Hamana Project

Hamana-8最終打ち上げ報告(その2)

2012年6月26日