JP3764150B2 - ロボットコントローラ - Google Patents

ロボットコントローラ Download PDF

Info

Publication number
JP3764150B2
JP3764150B2 JP2003072725A JP2003072725A JP3764150B2 JP 3764150 B2 JP3764150 B2 JP 3764150B2 JP 2003072725 A JP2003072725 A JP 2003072725A JP 2003072725 A JP2003072725 A JP 2003072725A JP 3764150 B2 JP3764150 B2 JP 3764150B2
Authority
JP
Japan
Prior art keywords
controller
slave
master controller
communication
robot
Prior art date
Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
Expired - Fee Related
Application number
JP2003072725A
Other languages
English (en)
Other versions
JP2004276186A (ja
Inventor
英昭 橋本
文夫 尾崎
広和 佐藤
準治 大明
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
Toshiba Corp
Original Assignee
Toshiba Corp
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by Toshiba Corp filed Critical Toshiba Corp
Priority to JP2003072725A priority Critical patent/JP3764150B2/ja
Publication of JP2004276186A publication Critical patent/JP2004276186A/ja
Application granted granted Critical
Publication of JP3764150B2 publication Critical patent/JP3764150B2/ja
Anticipated expiration legal-status Critical
Expired - Fee Related legal-status Critical Current

Links

Images

Landscapes

  • Manipulator (AREA)

Description

【0001】
【発明の属する技術分野】
本発明は、マスタコントローラと、マスタコントローラと通信で結ばれ、マスタコントローラからの情報による再構成、又はスレーブコントローラ自身の自律的な判断による再構成が可能なスレーブコントローラと、マスタコントローラに接続されたソフトウェア開発装置とで構成され、スレーブコントローラが、ソフトウェア開発装置からバーチャルにマスタコントローラの一部として扱えるようにしたロボットコントローラに関する。
【0002】
【従来の技術】
従来のロボットコントローラは、CPUを1個だけ用いる集中型のものが一般的であったが、最近のロボットシステムの高度化、複雑化、大規模化に伴い、CPUを複数個利用する分散型のロボットコントローラが使われるようになってきた(例えば特許文献1参照)。
【0003】
また、多様な用途に対応できるようにFPGA(Field Programmable Gate Array)を利用し、用途に応じてコントローラ部を再構成可能にしたものもある(例えば特許文献2参照)。
【0004】
【特許文献1】
特開2001−92795号公報
【0005】
【特許文献2】
特開2001−322078号公報
【0006】
【発明が解決しようとする課題】
しかしながら、こうした分散型のロボットコントローラは、集中型のものに比べて処理能力が向上し、フレキシビリティもアップするが、大規模化に伴い開発時に全体を統一的に管理することが困難になる場合が多い。そのため、システムにトラブルが発生した際、その原因やソフトウェアのバグを見つけるまでに従来の集中型のものより長い時間を必要とするという問題があった。
【0007】
本発明は、このような点に鑑みてなされたものであり、その目的は、ハード的には再構成可能な分散型の構成を採りながら、開発環境は集中型として管理することのできるロボットコントローラを提供することにある。
【0008】
【課題を解決するための手段】
本発明は上記課題を解決するものであって、請求項1に係る発明は、マスタコントローラと、通信手段で前記マスタコントローラに接続され、コントロール対象となる機器の状態に応じて自律的に再構成可能なスレーブコントローラと、前記マスタコントローラに接続されたソフトウェア開発装置とを備え、前記ソフトウェア開発装置は、前記通信手段を隠蔽し、スレーブコントローラが自律的に再構成した結果がマスタコントローラを通じてソフトウェア開発装置に情報伝達されることで、スレーブコントローラがバーチャルにマスタコントローラの一部として認識されるように構成したロボットコントローラである。
【0014】
請求項に係る発明は、請求項1に記載のロボットコントローラにおいて、スレーブコントローラの通信部分はマスタコントローラからの再構成情報に応じて再構成し、以降の通信でマスタコントローラから送られてくるデータを再構成した状態でデシリアライズしてスレーブコントローラの処理部に渡すロボットコントローラである。
【0016】
請求項に係る発明は、請求項2に記載のロボットコントローラにおいて、マスタコントローラとスレーブコントローラ間の通信部分はマスタコントローラからのリセット信号に応じて再構成し、標準通信構成に復帰できるロボットコントローラである。
【0018】
請求項に係る発明は、請求項1に記載のロボットコントローラにおいて、何らかの入出力デバイスを取り扱うスレーブコントローラでは、動作時に実際の入出力デバイスが無いときに入出力動作を模擬的に生成するように再構成するロボットコントローラである。
【0019】
請求項に係る発明は、請求項1に記載のロボットコントローラにおいて、何らかの入出力デバイスを取り扱うスレーブコントローラでは、動作時に実際の入出力デバイスが無いときに入出力動作のデータ部分のみを模擬的に生成するように再構成するロボットコントローラである。
【0023】
【発明の実施の形態】
以下、本発明に係るロボットコントローラについて、図面を参照しながら具体的に説明する。
【0024】
図4は、本発明のロボットコントローラの実施の対象例である移動ロボット401を示し、この移動ロボット401は、CCDカメラ402、モータで駆動されるカメラ用雲台部403、音声マイク404、超音波センサ405、及び、モータで駆動される移動用車輪406,407で構成されている。
【0025】
図1は、図4に示す移動ロボット401のコントロールシステムを、本発明のロボットコントローラで構成したときのブロック図である。このロボットコントローラ100は、ソフトウェア開発装置としての開発用PC(すなわちマンマシンインタフェース)101と、マスタコントローラ(すなわちマスタボード又はマスタLSIチップ)102と、スレーブコントローラ(すなわちスレーブボード又はスレーブLSIチップ)201a、201b、201c、201dとで構成される。
【0026】
開発用PC101は、マスタコントローラ102に設けられた通信部103によってマスタコントローラ102と接続されている。
【0027】
マスタコントローラ102は、通信部103に繋がるマスタCPUコア104を備えている。マスタCPUコア104には音声信号処理部110が設けられ、この音声信号処理部110は、音声マイク111(移動ロボット401の音声マイク404に相当)から入力される音声信号の信号処理を行う。
【0028】
マスタコントローラ102は、マスタCPUコア104に繋がるマスタコントローラ内部バス105を備えている。また、マスタコントローラ102は、スレーブコントローラ201a用のIEEE1394通信部106、スレーブコントローラ201b用のCAN通信部107、およびスレーブコントローラ201c、201d用のUSB2.0通信部108を備えていて、これらの通信部106、107、108もマスタコントローラ内部バス105に繋がっている。これにより、通信部106、107、108からマスタコントローラ内部バス105を介してマスタCPUコア104に通信情報が伝達され、さらに、マスタCPUコア104から通信部103を介して開発用PC101に通信情報が伝達される。
【0029】
スレーブコントローラ201aは、マスタコントローラ102の通信部106と接続されたIEEE1394通信部202aを備えていて、この通信部202aを介してマスタコントローラ102と通信する。また、スレーブコントローラ201aは、通信部202aに繋がるCPUコア付きFPGA部203aを備えていて、CCDカメラ204a(移動ロボット401のCCDカメラ402に相当)の信号は、画像前処理用に再構成されたCPUコア付きFPGA部203aで画像前処理され、その結果がマスタコントローラ102に送られる。
【0030】
スレーブコントローラ201bは、マスタコントローラ102の通信部107と接続されたCAN通信部202bを備えていて、この通信部202bを介してマスタコントローラ102と通信する。また、スレーブコントローラ201bは、通信部202bに繋がるCPUコア付きFPGA部203bを備えていて、超音波センサ204b(移動ロボット401の超音波センサ405に相当)の信号は、センサ信号処理用に再構成されたCPUコア付きFPGA部203bで信号処理され、その結果がマスタコントローラ102に送られる。
【0031】
スレーブコントローラ201cは、USB2.0通信バス109を介してマスタコントローラ102の通信部108と接続されたUSB2.0通信部202cを備えていて、この通信部202cを介してマスタコントローラ102と通信する。また、スレーブコントローラ201cは、通信部202cに繋がるCPUコア付きFPGA部203cを備えていて、カメラ雲台204c(移動ロボット401のカメラ用雲台部403に相当)は、雲台制御用に再構成されたCPUコア付きFPGA部203cで制御される。すなわち、スレーブコントローラ201cのCPUコア付きFPGA部203cは、マスタコントローラ102から雲台制御用の目標値を受信してカメラ雲台204cのモータ出力などを制御する一方、コマンド終了や異常状態などの通信をマスタコントローラ102に対して行う。
【0032】
スレーブコントローラ201dは、USB2.0通信バス109を介してマスタコントローラ102の通信部108と接続されたUSB2.0通信部202dを備えていて、この通信部202dを介してマスタコントローラ102と通信する。また、スレーブコントローラ201dは、通信部202dに繋がるCPUコア付きFPGA部203dを備えていて、車輪駆動機構204d(移動ロボット401のモータで駆動される移動用車輪406,407に相当)は、車輪駆動制御用に再構成されたCPUコア付きFPGA部203dで制御される。すなわち、スレーブコントローラ201cのCPUコア付きFPGA部203dは、マスタコントローラ102から車輪駆動制御用の目標値を受信して車輪駆動機構204dのモータ出力などを制御する一方、コマンド終了や異常状態などの通信をマスタコントローラ102に対して行う。
【0033】
図2は、図1で示したロボットコントローラ100のハードウェア構成において、全てのスレーブコントローラ201a、201b、201c、201dの機能がバーチャルにマスタコントローラ102上に存在するごとく開発用PC101から見えるようにしたときの仮想ブロック図である。
【0034】
図2に示すようなブロック構成によれば、仮想的な画像前処理部205a、仮想的なセンサ信号処理部205b、仮想的な雲台制御部205c、および仮想的な車輪駆動制御部205dは、開発用PC101上に構成されたソフトウェア開発環境においては、それぞれがマスタCPUコア104のひとつの処理ルーチンとして扱える。
【0035】
この方法としては、ソフトウェア的に、IEEE1394通信部106、202a、CAN通信部107、202b、USB2.0通信部108、202c、202dを隠蔽し、開発者に通信部を意識させずに開発環境を構築する方法がある。この方法はソフトウェアのみの対応で良いため、簡便であるというメリットがある。
【0036】
これに対し、実際のロボットに組み込んだ組込システムではハード的なタイミングが重要になる。そこで、マスタコントローラ102もFPGAなどの再構成可能なものにし、スレーブコントローラ201a、201b、201c、201dと同様のハードウェアをマスタコントローラ102自身に構成するという方法もある。この方法は、スレーブコントローラが未完の場合など、初期のシステム開発時に有効である。
【0037】
また、開発時には、スレーブコントローラ201a、201b、201c、201dに接続されるデバイス204a、204b、204c、204dなどが未完の場合もある。そこで、スレーブコントローラ201a、201b、201c、201dにおいてこれらのデバイスを模擬するような再構成を行うことも有効である。この場合、デバイス204a、204b、204c、204dそのものを再構成で模擬する方法や、デバイスそのものは模擬せずデータのみを模擬する方法がある。
【0038】
図1のスレーブコントローラ201a、201b、201c、201dにおいて、予め接続されるデバイス204a、204b、204c、204dが既知の場合は、スレーブコントローラ用のコンフィグレーションファイルは、マスタコントローラ102や開発用PC101などの上位系からシステム立ち上げ時に送られたものを利用できる。または、スレーブコントローラ201a、201b、201c、201dにSRAMなどの記憶部を持たせ、これにコンフィグレーションファイルを保存しておき、立ち上げ時にそこから読み出して再構成することができる。
【0039】
また、デバイス204a、204b、204c、204d自身と、スレーブコントローラ201a、201b、201c、201dとの間で、PCにおけるUSB機器のようにプラグアンドプレイ的なハードウェア、ソフトウェア構成を持たせるようにすれば、先に示したSRAMなどに保存されているコンフィグレーションファイルから、又は、デバイス情報を基に上位系へ問い合わせ、検索してコンフィグレーションファイルをダウンロードすることで、自律的にスレーブコントローラ201a、201b、201c、201dが再構成可能となる。
【0040】
ロボットのような組込システムでは、作業の内容によって、実時間で制御則、制御演算を切り換える必要がある。そこで、制御則や制御演算に最適化したスレーブコントローラ201a、201b、201c、201dのコンフィグレーションファイルを、制御則、制御演算実行時に先に示したSRAMなどから持ってきて、実時間で再構成を可能にすることで、演算時間や回路規模を効率化したスレーブコントローラハードウェアを構成できる。
【0041】
マスタコントローラ102とスレーブコントローラ201a、201b、201c、201d間の通信部において、通信初期化時又は通信内容変更時にマスタ側から以降の通信内容に最適化したスレーブ通信部コンフィグレーションファイルを送り、これによりスレーブ通信部を再構成することで効率的な通信が可能になる。
【0042】
すなわち、スレーブコントローラ201a、201b、201c、201dの通信部202a、202b、202c、202dを、マスタコントローラ102からの再構成情報に応じて再構成する。これにより、スレーブコントローラ201a、201b、201c、201dの通信部202a、202b、202c、202dは、以降の通信でマスタコントローラ102から送られてくるデータを、再構成した状態でデシリアライズして、CPUコア付きFPGA部203a、203b、203c、203dに渡すことができる。
【0043】
また、マスタコントローラ102の通信部106、107、108、および、スレーブコントローラ201a、201b、201c、201dの通信部202a、202b、202c、202dを、マスタコントローラ102の再構成情報に応じていずれも再構成する。これにより、以降の通信では、マスタコントローラ102の通信部106、107、108は再構成した状態でデータをシリアライズし、一方、スレーブコントローラ201a、201b、201c、201dの通信部202a、202b、202c、202dは再構成した状態でデータをデシリアライズして、CPUコア付きFPGA部203a、203b、203c、203dに渡すことができる。
【0044】
図3は、図1に示した車輪駆動制御用のスレーブコントローラ201dを、子コントローラ[すなわち孫コントローラ付きスレーブコントローラ(孫コントローラ付きスレーブボード又はスレーブLSIチップ)]211と、孫コントローラ(すなわち孫ボード又は孫LSIチップ)301a、301bとで構成したブロック図である。
【0045】
子コントローラ(孫コントローラ付きスレーブコントローラ)211は、USB2.0通信バス109を介してマスタコントローラ102の通信部108と接続された上位系通信部212を備えていて、この上位系通信部212を介してマスタコントローラ102と通信する。また、子コントローラ211は、上位系通信部212に繋がる再構成コア部213を備えている。再構成コア部213はジャイロ信号処理部216を備えていて、このジャイロ信号処理部216でジャイロセンサ217からの信号を処理する。また、再構成コア部213は下位系通信部218を備えていて、この下位系通信部218が、下位系通信バス219を介して孫コントローラ301a、301bと通信する。
【0046】
孫コントローラ301aは、下位系通信バス219を介して子コントローラ211と通信する通信部302aと、右モータ制御用に再構成された右モータ用制御回路部303aとを備えている。そして、右モータ用制御回路部303aは、右モータ用ドライバ304aおよび右モータ用回転角センサ306aによって右モータ305aを制御する。一方、孫コントローラ301bは、下位系通信バス219を介して子コントローラ211と通信する通信部302bと、左モータ制御用に再構成された左モータ用制御回路部303bとを備えている。そして、左モータ用制御回路部303bは、左モータ用ドライバ304bおよび左モータ用回転角センサ306bによって左モータ305bを制御する。
【0047】
このように、ロボットシステムの構成によっては、図1に示すマスタコントローラ102およびスレーブコントローラ201a、201b、201c、201dと同様な関係を多層に構成することで、システムのハードウェア製作が一層容易になる場合がある。この場合も、開発用PC101からはマスタコントローラ102上に全てのスレーブ側が存在するような仮想化を行うことで、開発の視認性を上げることができ、開発効率やデバッグ時に有効である。
【0048】
また、再構成の内容によっては、スレーブコントローラ201a、201b、201c、201dと外部デバイスとの入出力信号が変更されることもある。スレーブコントローラの内部素子を破壊することなくこの入出力方向の切換を実施する方法を図5に示す。すなわち、スレーブコントローラの外部との入出力部(CPU側信号ライン506とデバイス側信号ライン507間)に入出力バッファ部を用意し、そこに内蔵された入出力切換回路504(1チャネル分を示す)を入出力方向制御信号(モードコントロール信号)505によって切り換える。図5において、入出力バッファ部501は、入出力方向制御信号505が出力モードのときの入出力切換回路504の状態を示し、入出力バッファ部502は、入出力方向制御信号505が遷移モードのときの入出力切換回路504の状態を示し、入出力バッファ部503は、入出力方向制御信号505が入力モードのときの入出力切換回路504の状態を示す。このように、入出力バッファ部の入出力切換回路504は、入出力方向制御信号505により切換時でも常にハイインピーダンスが保たれるようにしている。
【0049】
なお、図1では、スレーブコントローラ201a、201b、201c、201dの再構成部203a、203b、203c、203dはCPUコア付きFPGAの例を示したが、FPGAは通常のカスタムLSIより高価で動作クロックも上げられないという弱点を持つ。そこで、ロボット用のハードIPコアを予め用意しておき、コア間の接続情報のみで再構成させるようにすれば、カスタムLSIと同等の価格と速度を実現できる。
【0050】
上記のように、このロボットコントローラ100は、マスタコントローラ102と、通信手段でマスタコントローラに接続され、マスタコントローラ側からの情報で再構成可能な機能を持つスレーブコントローラ201a、201b、201c、201dと、マスタコントローラに接続されたソフトウェア開発装置としての開発用PC101とを備え、開発用PC101は、通信手段を隠蔽することで、スレーブコントローラ201a、201b、201c、201dがバーチャルにマスタコントローラ102の一部として認識される。
【0051】
また、このロボットコントローラ100は、マスタコントローラ102と、通信手段でマスタコントローラに接続され、コントロール対象となる機器の状態に応じて自律的に再構成可能なスレーブコントローラ201a、201b、201c、201dと、マスタコントローラに接続されたソフトウェア開発装置としての開発用PC101とを備え、開発用PC101は、通信手段を隠蔽し、スレーブコントローラ201a、201b、201c、201dが自律的に再構成した結果がマスタコントローラ102を通じて開発用PC101に情報伝達されることで、スレーブコントローラがバーチャルにマスタコントローラ102の一部として認識される。
【0052】
また、このロボットコントローラ100は、マスタコントローラ102とスレーブコントローラとを繋ぐ通信手段はルーティング機能を持つため、複数個のスレーブコントローラ201a、201b、201c、201dを接続可能であり、この接続はプラグアンドプレイが可能で、開発用PC101は、スレーブコントローラがプラグアンドプレイで接続された情報により、複数個のスレーブコントローラ201a、201b、201c、201dがバーチャルにマスタコントローラ102の一部として認識され、集中型のコントローラとして処理できる。
【0053】
また、このロボットコントローラ100は、マスタコントローラ102とスレーブコントローラ201a、201b、201c、201d間の通信、およびスレーブコントローラの再構成は、システムで規定された時間間隔内でリアルタイムに実行される。
【0054】
また、このロボットコントローラ100は、マスタコントローラ102の通信は複数の仕様に対応していて、通信タイプの違う複数のスレーブコントローラ201a、201b、201c、201dが接続可能であり、これら複数のスレーブコントローラがバーチャルにマスタコントローラ102の一部として認識され、集中型のコントローラとして処理できる。
【0055】
また、このロボットコントローラ100は、マスタコントローラ102が再構成可能である。
【0056】
また、このロボットコントローラ100は、スレーブコントローラ201a、201b、201c、201dの通信部分はマスタコントローラ102からの再構成情報に応じて再構成し、以降の通信でマスタコントローラ102から送られてくるデータを再構成した状態でデシリアライズしてスレーブコントローラの処理部に渡すことができる。
【0057】
また、このロボットコントローラ100は、マスタコントローラ102の通信部分およびスレーブコントローラ201a、201b、201c、201dの通信部分は、マスタコントローラ102の再構成情報に応じていずれも再構成し、以降の通信ではマスタコントローラ102側の通信部分は再構成した状態でデータをシリアライズし、スレーブコントローラ201a、201b、201c、201d側では再構成した状態でデシリアライズしてデータをスレーブコントローラの処理部に渡すことができる。
【0058】
また、このロボットコントローラ100は、マスタコントローラ102とスレーブコントローラ201a、201b、201c、201d間の通信部分はマスタコントローラ102からのリセット信号に応じて再構成し、標準通信構成に復帰できる。
【0059】
また、このロボットコントローラ100は、スレーブコントローラ201a、201b、201c、201dの再構成結果と同等の再構成がマスタコントローラで実行され、スレーブコントローラ201a、201b、201c、201dの動作をマスタコントローラ102内で模擬することができる。
【0060】
また、このロボットコントローラ100は、何らかの入出力デバイスを取り扱うスレーブコントローラ201a、201b、201c、201dでは、動作時に実際の入出力デバイスが無いときに入出力動作を模擬的に生成することができる。
【0061】
また、このロボットコントローラ100は、何らかの入出力デバイスを取り扱うスレーブコントローラ201a、201b、201c、201dでは、動作時に実際の入出力デバイスが無いときに入出力動作のデータ部分のみを模擬的に生成するように再構成することができる。
【0062】
また、このロボットコントローラ100は、内部回路の再構成で、現構成回路から別の回路に変更する場合、該当コントローラの入出力信号ピンをハイインピーダンスに保ち、又は入力モードに変更してから、内部回路構成を変更することができる。
【0063】
また、このロボットコントローラ100は、再構成の単位を、ロボットの構造、モータの種類、センサの種類、通信方法などに最適化されたハード的なブロックから選択することができる。
【0064】
さらに、このロボットコントローラ100は、スレーブコントローラを、マスタコントローラ102と通信可能な子コントローラ211と、再構成可能な孫コントローラ301a、301bとで構成することができる。
【0065】
【発明の効果】
以上詳細に説明したように、本発明によれば、ハード的には再構成可能な分散型の構成を採ることで、ロボットのハードウェアに適した分散コントローラ構成を簡単に実現できるとともに、開発環境は集中型として管理することで、煩雑になる分散コントローラのソフトウェア開発を集中型コントローラと同様の手法で簡単に実現できる。
【図面の簡単な説明】
【図1】本発明によるロボットコントローラのハードウェアの一構成例を示すブロック図である。
【図2】図1のロボットコントローラにおける開発装置から見た仮想的なコントローラ構成を示すブロック図である。
【図3】図1のロボットコントローラにおけるスレーブコントローラを、子コントローラと孫コントローラとで構成したブロック図である。
【図4】図1のロボットコントローラの実施の対象例である移動ロボットを示す概略図である。
【図5】入出力の切換方法を示すバッファ回路の動作遷移図である。
【符号の説明】
100 ロボットコントローラ
101 開発用PC(マンマシンインタフェース)
102 マスタコントローラ(マスタボード又はマスタLSIチップ)
103 通信部
104 マスタCPUコア
105 マスタコントローラの内部バス
106 IEEE1394通信部
107 CAN通信部
108 USB2.0通信部
109 USB2.0通信バス
110 音声信号処理部
111 音声マイク
201a、201b、201c、201d スレーブコントローラ(スレーブボード又はスレーブLSIチップ)
202a IEEE1394通信部
202b CAN通信部
202c、202d USB2.0通信部
203a 画像前処理用に再構成されたCPUコア付きFPGA部
203b センサ信号処理用に再構成されたCPUコア付きFPGA部
203c 雲台制御用に再構成されたCPUコア付きFPGA部
203d 車輪駆動制御用に再構成されたCPUコア付きFPGA部
204a CCDカメラ
204b 超音波センサ
204c カメラ雲台
204d 車輪駆動機構
205a 開発装置からみた仮想的な画像前処理部
205b 開発装置からみた仮想的なセンサ信号処理部
205c 開発装置からみた仮想的な雲台制御部
205d 開発装置からみた仮想的な車輪駆動制御部
211 子コントローラ[孫コントローラ付きスレーブコントローラ(孫コントローラ付きスレーブボード又はスレーブLSIチップ)]
212 上位系通信部
213 再構成コア部
216 ジャイロ信号処理部
217 ジャイロセンサ
218 下位系通信部
219 下位系通信バス
301a、301b 孫コントローラ(孫ボード又は孫LSIチップ)
302a、302b 子コントローラとの通信部
303a 再構成された右モータ用制御回路部
303b 再構成された左モータ用制御回路部
304a 右モータ用ドライバ
304b 左モータ用ドライバ
305a 右モータ
305b 左モータ
306a 右モータ用回転角センサ
306b 左モータ用回転角センサ
401 移動ロボット
402 CCDカメラ
403 カメラ用雲台部
404 音声マイク
405 超音波センサ
406 移動用車輪(右車輪)
407 移動用車輪(左車輪)
501 出力モード時の入出力バッファ部
502 遷移モード時の入出力バッファ部
503 入力モード時の入出力バッファ部
504 入出力切換回路
505 入出力方向制御信号(モードコントロール信号)
506 CPU側信号ライン
507 デバイス側信号ライン

Claims (5)

  1. マスタコントローラと、通信手段で前記マスタコントローラに接続され、コントロール対象となる機器の状態に応じて自律的に再構成可能なスレーブコントローラと、前記マスタコントローラに接続されたソフトウェア開発装置とを備え、前記ソフトウェア開発装置は、前記通信手段を隠蔽し、スレーブコントローラが自律的に再構成した結果がマスタコントローラを通じてソフトウェア開発装置に情報伝達されることで、スレーブコントローラがバーチャルにマスタコントローラの一部として認識されるように構成したことを特徴とするロボットコントローラ。
  2. 請求項1に記載のロボットコントローラにおいて、スレーブコントローラの通信部分はマスタコントローラからの再構成情報に応じて再構成し、以降の通信でマスタコントローラから送られてくるデータを再構成した状態でデシリアライズしてスレーブコントローラの処理部に渡すことを特徴とするロボットコントローラ。
  3. 請求項2に記載のロボットコントローラにおいて、マスタコントローラとスレーブコントローラ間の通信部分はマスタコントローラからのリセット信号に応じて再構成し、標準通信構成に復帰できることを特徴とするロボットコントローラ。
  4. 請求項1に記載のロボットコントローラにおいて、何らかの入出力デバイスを取り扱うスレーブコントローラでは、動作時に実際の入出力デバイスが無いときに入出力動作を模擬的に生成するように再構成することを特徴とするロボットコントローラ。
  5. 請求項1に記載のロボットコントローラにおいて、何らかの入出力デバイスを取り扱うスレーブコントローラでは、動作時に実際の入出力デバイスが無いときに入出力動作のデータ部分のみを模擬的に生成するように再構成することを特徴とするロボットコントローラ。
JP2003072725A 2003-03-17 2003-03-17 ロボットコントローラ Expired - Fee Related JP3764150B2 (ja)

Priority Applications (1)

Application Number Priority Date Filing Date Title
JP2003072725A JP3764150B2 (ja) 2003-03-17 2003-03-17 ロボットコントローラ

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
JP2003072725A JP3764150B2 (ja) 2003-03-17 2003-03-17 ロボットコントローラ

Related Child Applications (1)

Application Number Title Priority Date Filing Date
JP2005349515A Division JP2006088330A (ja) 2005-12-02 2005-12-02 ロボットコントローラ

Publications (2)

Publication Number Publication Date
JP2004276186A JP2004276186A (ja) 2004-10-07
JP3764150B2 true JP3764150B2 (ja) 2006-04-05

Family

ID=33288842

Family Applications (1)

Application Number Title Priority Date Filing Date
JP2003072725A Expired - Fee Related JP3764150B2 (ja) 2003-03-17 2003-03-17 ロボットコントローラ

Country Status (1)

Country Link
JP (1) JP3764150B2 (ja)

Families Citing this family (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
KR100945884B1 (ko) 2007-11-14 2010-03-05 삼성중공업 주식회사 내장형 로봇 제어 시스템
JP5895420B2 (ja) 2011-09-21 2016-03-30 セイコーエプソン株式会社 ロボット制御装置、及びロボットシステム
JP6799900B2 (ja) * 2015-03-27 2020-12-16 三菱重工業株式会社 制御装置、移動体、制御方法及びプログラム

Also Published As

Publication number Publication date
JP2004276186A (ja) 2004-10-07

Similar Documents

Publication Publication Date Title
WO2002077835A1 (fr) Dispositif a semi-conducteurs de commande de communication et systeme d'interface
CN111274183A (zh) 多路高速协议接口动态可重构系统及实现方法
JP2003532165A (ja) 入出力デバイスを動的に再構成する装置及び方法
KR20190058704A (ko) Usb 허브들을 이용한 자동차 시스템들로의 유연한 모바일 디바이스 접속성
JP2001506785A (ja) Dfp用のioおよびメモリバスシステムならびにプログラミング可能な2次元または多次元のセル構造を有するユニット
CN110888767B (zh) 一种接口复用模块验证平台架构及快速扩展实现方法
RU96123900A (ru) Специализированный процессор и способ его конструирования
JP2007034398A (ja) 制御システム及び通信方法
JP2003162303A (ja) 制御ユニットをプログラミングする方法および装置
CN104903800A (zh) 运动控制器和使用这种运动控制器的机器人控制系统
JP3764150B2 (ja) ロボットコントローラ
JP2006088330A (ja) ロボットコントローラ
CN110750490A (zh) 可编程边缘计算芯片模组及数据处理方法
JP4598086B2 (ja) 通信プロトコル・エミュレーションを持つ機器及びコンポーネント
JPS60256860A (ja) 論理集積回路
Rios-Navarro et al. A 20Mevps/32Mev event-based USB framework for neuromorphic systems debugging
WO2003050705A3 (en) Method and system for managing hardware resources to implement system acquisition using an adaptive computing architecture
CN112446117B (zh) 一种直流电机虚拟机及其实现方法
JP2003127080A (ja) 組込み型制御用計算機
CN104750638B (zh) 一种接口适配器及与Wishbone兼容的裁剪方法
JP2001092517A (ja) Faネットワーク及びロボットコントローラ
Fiack et al. Dynamic parallel reconfiguration for self-adaptive hardware architectures
CA2511812A1 (en) System and method for scalable interconnection of adaptive processor nodes for clustered computer systems
EP1080410A1 (en) Vlsi emulator comprising processors and reconfigurable circuits
JP2007508620A5 (ja)

Legal Events

Date Code Title Description
A977 Report on retrieval

Free format text: JAPANESE INTERMEDIATE CODE: A971007

Effective date: 20050726

A131 Notification of reasons for refusal

Free format text: JAPANESE INTERMEDIATE CODE: A131

Effective date: 20051004

A521 Written amendment

Free format text: JAPANESE INTERMEDIATE CODE: A523

Effective date: 20051202

TRDD Decision of grant or rejection written
A01 Written decision to grant a patent or to grant a registration (utility model)

Free format text: JAPANESE INTERMEDIATE CODE: A01

Effective date: 20060104

A61 First payment of annual fees (during grant procedure)

Free format text: JAPANESE INTERMEDIATE CODE: A61

Effective date: 20060118

FPAY Renewal fee payment (event date is renewal date of database)

Free format text: PAYMENT UNTIL: 20100127

Year of fee payment: 4

FPAY Renewal fee payment (event date is renewal date of database)

Free format text: PAYMENT UNTIL: 20110127

Year of fee payment: 5

FPAY Renewal fee payment (event date is renewal date of database)

Free format text: PAYMENT UNTIL: 20120127

Year of fee payment: 6

FPAY Renewal fee payment (event date is renewal date of database)

Free format text: PAYMENT UNTIL: 20130127

Year of fee payment: 7

FPAY Renewal fee payment (event date is renewal date of database)

Free format text: PAYMENT UNTIL: 20130127

Year of fee payment: 7

FPAY Renewal fee payment (event date is renewal date of database)

Free format text: PAYMENT UNTIL: 20140127

Year of fee payment: 8

LAPS Cancellation because of no payment of annual fees