JP2008083761A - ロボットコントローラおよびロボット - Google Patents
ロボットコントローラおよびロボット Download PDFInfo
- Publication number
- JP2008083761A JP2008083761A JP2006260002A JP2006260002A JP2008083761A JP 2008083761 A JP2008083761 A JP 2008083761A JP 2006260002 A JP2006260002 A JP 2006260002A JP 2006260002 A JP2006260002 A JP 2006260002A JP 2008083761 A JP2008083761 A JP 2008083761A
- Authority
- JP
- Japan
- Prior art keywords
- computer
- instruction input
- data
- robot controller
- drive control
- 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.)
- Pending
Links
Images
Landscapes
- Numerical Control (AREA)
- Manipulator (AREA)
- Programmable Controllers (AREA)
Abstract
【課題】複数のコンピュータが並存する状態で、リアルタイムで外部I/O機器の情報を得ることができるロボットコントローラを提供する。
【解決手段】本発明は、駆動制御コンピュータ202と、指示入力コンピュータ201と、駆動制御コンピュータ202と指示入力コンピュータ201との両方からデータが書き込まれ、または両方からデータが読み出されることが可能な制御レジスタ210を備え、外部I/O機器105を接続して制御レジスタ210へアクセスすることにより外部I/O機器105のI/O制御を行うI/O制御部207と、駆動制御コンピュータ202と指示入力コンピュータ201との両方に接続され、制御レジスタ210へのデータの書き込み可否を制御するアクセス制御部206と、を備えることを特徴とするロボットコントローラ106Aである。
【選択図】図2
【解決手段】本発明は、駆動制御コンピュータ202と、指示入力コンピュータ201と、駆動制御コンピュータ202と指示入力コンピュータ201との両方からデータが書き込まれ、または両方からデータが読み出されることが可能な制御レジスタ210を備え、外部I/O機器105を接続して制御レジスタ210へアクセスすることにより外部I/O機器105のI/O制御を行うI/O制御部207と、駆動制御コンピュータ202と指示入力コンピュータ201との両方に接続され、制御レジスタ210へのデータの書き込み可否を制御するアクセス制御部206と、を備えることを特徴とするロボットコントローラ106Aである。
【選択図】図2
Description
本発明は、複数のコンピュータを備えた分散型のロボットコントローラ、および当該ロボットコントローラを備えたロボットに関する。
従来、ロボットコントローラは、コンピュータを1個だけ用いる集中型のものが一般的であったが、最近は、ロボットシステムの高度化、複雑化および大規模化に伴い、コンピュータを複数個利用する分散型のロボットコントローラが使用されるようになってきた。
分散型のロボットコントローラにおいては、各々が独立して処理を実行しているが、相互に共有すべきデータに関しては、コンピュータ間に設けたバスによる通信や、共有メモリを介したデータ送受でデータの共有を実現している。
例えば、図7に示すように、指示入力機器710からの指示に従い、ロボットの動作内容を決定する指示入力コンピュータ701と、指示入力コンピュータ701からの動作指示に従い、センサ720からのセンサ情報をもとにモータ730の駆動制御をする駆動制御コンピュータ702とを備えているロボットコントローラ700においては、指示入力コンピュータ701と駆動制御コンピュータ702の2個のコンピュータを実装することにより、分散制御を実現している。
図7においては、指示入力コンピュータ701のバス703に接続されたI/O制御部707の入出力状態を、駆動制御コンピュータ702が取得するためには、指示入力コンピュータ701と駆動制御コンピュータ702間をつなぐバス705を経由するか、あるいは、バス703とバス704との両方からアクセス可能な共有メモリ706を介したデータ転送を実行している(例えば、特許文献1参照)。
特開2001−92795号公報
図8(a)に、駆動制御コンピュータ702が、指示入力コンピュータ701のバス703に接続されたI/O制御部707の入出力状態を、コンピュータ間のバス705を使って取得する場合のフローチャートを示す。
S801では、駆動制御コンピュータ702が、I/O制御部707における入出力状態の取得を、バス705経由で、指示入力コンピュータ701に要求する。
S802では、要求を受けた指示入力コンピュータ701がバス703経由でI/O制御部707に入出力状態の読み出しアクセスをする。
S803では、指示入力コンピュータ701がI/O制御部707の入出力状態を取得する。
S804では、指示入力コンピュータ701が、I/O制御部707における入出力状態を、バス705経由で、駆動制御コンピュータ702に送信する。
このように、バス705を経由する場合には、指示入力コンピュータ701と駆動制御コンピュータ702間のデータ通信時間分の遅延時間が発生するため、I/O制御部707の入出力状態の取得に時間遅れが発生する。さらに、指示入力コンピュータ701のI/O制御部707に読み出しアクセスしている処理時間が時間遅れを増加させる。
図8(b)に、駆動制御コンピュータ702が、指示入力コンピュータ701のバス703に接続されたI/O制御部707の入出力状態を、共有メモリ706を使って取得する場合のフローチャートを示す。
S805では、指示入力コンピュータ701がバス703経由でI/O制御部707に入出力状態の読み出しアクセスをする。
S806では、指示入力コンピュータ701がI/O制御部707の入出力状態を取得する。
S807では、指示入力コンピュータ701が、I/O制御部707における入出力状態を共有メモリ706へ書き込む。
S808では、駆動制御コンピュータ702が、I/O制御部707における入出力状態を共有メモリ706から読み出す。
このように、図8(a)と同様に、共有メモリ706を介した場合にも、指示入力コンピュータ701がその都度、共有メモリ706にI/O制御部707の入出力状態を書き込まなければならないため、その分、時間遅れと処理時間の増加が発生する。指示入力コンピュータ701が、駆動制御コンピュータ702のバス704に接続されたI/O制御部708の入出力状態を取得する場合も、同様である。
そこで、本発明は、複数のコンピュータが並存する状態で、リアルタイムで外部I/O機器の情報を得ることができるロボットコントローラ、および当該ロボットコントローラを備えるロボットを提供することを目的とする。
上記課題を解決するために、請求項1に記載のロボットコントローラは、駆動部に所定動作を行わせるために制御出力を行う駆動制御コンピュータと、駆動制御コンピュータに所定動作を行うように指示するための指示入力コンピュータと、駆動制御コンピュータと指示入力コンピュータとの両方からデータが書き込まれ、または両方からデータが読み出されることが可能な制御レジスタを備え、外部I/O機器を接続して制御レジスタへアクセスすることにより外部I/O機器のI/O制御を行うI/O制御部と、駆動制御コンピュータと指示入力コンピュータとの両方に接続され、制御レジスタへのデータの書き込み可否を制御するアクセス制御部と、を備えることを特徴とする。
請求項2に記載の発明は、上記請求項1に記載のロボットコントローラにおいて、アクセス制御部が、制御レジスタへのデータの書き込みを、駆動制御コンピュータと指示入力コンピュータとのうちいずれか一方からに限定することを特徴とする。
請求項3に記載の発明は、上記請求項1に記載のロボットコントローラにおいて、アクセス制御部が、制御レジスタへのデータの書き込みを駆動制御コンピュータと指示入力コンピュータとの両方に許可するか、または、一方のみに許可するかを切り替えることが可能なモード切替フラグを備えることを特徴とする。
請求項4に記載の発明は、上記請求項1〜3のいずれか1項に記載のロボットコントローラにおいて、駆動制御コンピュータと指示入力コンピュータとの両方からデータが書き込まれ、または両方からデータが読み出されることが可能であり、アクセス制御部により、データの書き込み可否が制御される共有メモリをさらに備えることを特徴とする。
請求項5に記載の発明は、上記請求項4に記載のロボットコントローラにおいて、外部機器からの情報を取得して共有メモリに格納する情報取得部をさらに備えることを特徴とする。
請求項6に記載の発明は、上記請求項4に記載のロボットコントローラにおいて、モータの回転位置の変位をカウントし、カウントした値を共有メモリに格納するカウンタをさらに備えることを特徴とする。
請求項7に記載のロボットは、上記請求項1〜6のいずれか1項に記載のロボットコントローラを備えることを特徴とする。
請求項1に記載の発明においては、駆動制御コンピュータと指示入力コンピュータとの両方からデータが書き込まれ、または両方からデータが読み出されることが可能な制御レジスタを備えることにより、外部I/O機器の情報をコンピュータ間で通信したりする必要がなくなり、時間遅れと処理時間の増加を防ぐことができる。さらに、駆動制御コンピュータと指示入力コンピュータとの両方に接続されたアクセス制御部を備えることにより、制御レジスタへのデータの書き込み可否を制御することができる。すなわち、制御レジスタへのデータの書き込みと、それに伴う外部I/O機器の制御とを一方のコンピュータからに限定することができ、また、両コンピュータから制御レジスタの同じアドレス領域への書き込みアクセスが発生した場合にも、要求アドレス領域に対する書き込みアクセスをいずれのコンピュータに許可するかを制御できる。そのため、外部I/O機器の制御に生じる不具合を低減でき、外部I/O機器に安定した動作を行わせることができる。
請求項2に記載の発明においては、アクセス制御部が、制御レジスタへのデータの書き込みを一方のコンピュータからに限定するので、外部I/O機器の制御に生じる不具合を低減することができ、外部I/O機器に安定した動作を行わせることができる。
請求項3に記載の発明においては、アクセス制御部が、制御レジスタへのデータの書き込みを両コンピュータに許可するか、または、どちらか一方のみに許可するかを切り替えることが可能なモード切替フラグを備えることにより、汎用性の高いロボットコントローラとすることができる。
請求項4に記載の発明においては、共有メモリは、アクセス制御部により両コンピュータからのデータの書き込み可否を制御されるので、その効率性を高めることができる。
請求項5に記載の発明においては、情報取得部は、外部機器からの情報を取得し、当該情報が共有メモリに格納されることにより、駆動制御コンピュータと指示入力コンピュータとが、外部機器の情報を共有することができるので、どのコンピュータからもリアルタイムで外部機器の情報を得ることができ、また、コンピュータ間のトラフィックを低減することができる。
請求項6に記載の発明においては、カウンタは、モータの回転位置の変位をカウントし、カウントした値を共有メモリに格納するので、駆動制御コンピュータと指示入力コンピュータとが、コンピュータ間の通信手段を使わずに、カウンタがカウントした値を読み出すことができ、モータの回転位置や回転速度などを即座に算出できる。つまり、ロボット自体の位置や移動速度も認識することができる。モータの情報は、両コンピュータで必要となる場合が多いので、コンピュータ間の通信手段を使わないことにより、コンピュータ間のトラフィックを低減することができる。
請求項7に記載の発明においては、上記請求項1〜6のいずれか1項に記載のロボットコントローラを備えることにより、不具合が少ない、汎用性の高いロボットとすることができる。
以下に説明するロボットは、コンピュータを複数個利用する分散型のロボットコントローラを備えるロボットであり、分散型のロボットコントローラは、例えば、自律移動ロボット、自動掃除ロボットや案内ロボットなどの一般的なロボットのみならず自動車などにも適用できる。
(実施形態1)
図1に、本発明のロボットコントローラを備えたロボットを示す。図1(a)は、正面から見た図であり、図1(b)は、側面から見た図である。
(実施形態1)
図1に、本発明のロボットコントローラを備えたロボットを示す。図1(a)は、正面から見た図であり、図1(b)は、側面から見た図である。
ロボット100は、図1(a)に示すように、指示入力機器101(例えば、タッチパネルモニター)と、移動用車輪102と、駆動部であるモータ103と、エンコーダ104と、外部I/O機器105(例えば、段差検出センサ)と、ロボットコントローラ106と、センサ107(例えば、レーザーレーダーセンサやジャイロセンサ)と、外部機器108(例えば、センサ自己診断器)と、を基本構成としている。
指示入力機器101は、ユーザーからの指令を受け取り、その情報をロボットコントローラ106へ伝える。
移動用車輪102は、モータ103の回転によって駆動される。ロボット100が倒れないように、補助輪109を設けるとよい。また、ロボット100が倒れないように、移動用車輪102は、キャタピラーのようなものでもよい。
モータ103は、ロボットコントローラ106からの速度指令に従った回転速度で回転し、移動用車輪102を駆動する。
エンコーダ104は、モータ103の回転位置の変位情報をパルス信号として出力し、ロボットコントローラ106へ伝える。
外部I/O機器105として、例えば、段差検出センサは、ロボット100が乗り越えられないような段差や、落下する危険があるような段差を検出し、デジタル信号としてロボットコントローラ106に伝える。
ロボットコントローラ106は、指示入力機器101を通したユーザーからの指示に従い、動作内容を決定した上で、外部I/O機器105とエンコーダ104とからの情報をもとにモータ103を制御してロボット100を動作させる。
センサ107として、例えば、レーザーレーダーセンサは、ロボット100の周辺物体までの距離を測定し、その情報をロボットコントローラ106に伝える。
外部機器108として、例えば、センサ自己診断器は、レーザーレーダーセンサなどのセンサが故障して正常動作ができなくなった場合に、故障状態をパルス信号として、ロボットコントローラ106に伝える。
図2に、図1のロボットコントローラ106の内部構成の一例を示す。
ロボットコントローラ106Aは、図2に示すように、指示入力コンピュータ201と、駆動制御コンピュータ202と、アクセス制御部206と、I/O制御部207と、共有メモリ208と、情報取得部209と、を基本構成としている。
指示入力コンピュータ201は、指示入力機器101からの指示入力を受けてロボットの動作内容を決定し、駆動制御コンピュータ202に指示を出す。また、バス203を通して制御レジスタ210にデータを書き込み、外部I/O機器105への制御命令を出す。
駆動制御コンピュータ202は、指示入力コンピュータ201が処理した内容に対して、センサ107からのセンサ情報をもとにモータ103の駆動制御を実行する。また、駆動制御コンピュータ202は、バス204を通して制御レジスタ210にデータを書き込み、外部I/O機器105に制御命令を出す。なお、地図記憶部、位置記憶部や経路生成部(図示せず)は駆動制御コンピュータ202に備わっている。
アクセス制御部206は、指示入力コンピュータ201と駆動制御コンピュータ202とから、I/O制御部207の制御レジスタ210または共有メモリ208への書き込みアクセスを調停して、しかるべき制御レジスタ210または共有メモリ208とのアクセスを仲介する。
アクセス制御部206は、指示入力コンピュータ201および駆動制御コンピュータ202からI/O制御部207の制御レジスタ210へのデータの書き込み許可制御機能を持っており、両コンピュータにデータの書き込みアクセスを許可することも、どちらか一方のみにデータの書き込みアクセスを許可することも可能である。
モード切替フラグ211は、アクセス制御部206におけるデータの書き込み許可制御機能を切り替えるためのフラグであり、制御レジスタ210または共有メモリ208へのデータの書き込みアクセスを両コンピュータから可能とするマルチアクセスモードか、一方のコンピュータのみからに限定する限定アクセスモードかを切り替える。モード切替フラグ211は、各コンピュータより制御できる、書き換え可能なレジスタである。
モード切替フラグ211は、制御レジスタ210用と共有メモリ208用とを別々に備えている。さらに、制御レジスタ210が複数ある場合は、制御レジスタ210と同じ数だけ備えてあり、個々の制御レジスタ210において、データの書き込み許可制御機能の切り替えが可能である。
I/O制御部207は、指示入力コンピュータ201および駆動制御コンピュータ202からの命令により、アクセス制御部206経由で外部I/O機器105の入出力を制御する。
共有メモリ208は、アクセス制御部206経由で、指示入力コンピュータ201および駆動制御コンピュータ202の両コンピュータからデータが書き込まれ、または両コンピュータからデータが読み出されることが可能である。
情報取得部209は、外部機器108からの情報を取得し、取得した情報を指示入力コンピュータ201および駆動制御コンピュータ202が読み出すデータに変化させ、共有メモリ208に格納する。
ここで、コンピュータは、指示入力コンピュータ201と駆動コンピュータ202との2個だけでならない必要はなく、アクセス制御部206に接続されていれば、3個以上の構成でも良い。
また、情報取得部209への入力は、外部機器108からの入力に限られず、例えば、指示入力コンピュータ201または駆動制御コンピュータ202からの入力でもよい。
なお、図4に示すように、指示入力コンピュータ201および駆動制御コンピュータ202からの信号を受け取り、それぞれの状態を監視するウォッチドッグタイマー409を備え付け、ウォッチドッグ結果を共有メモリ208の特定のアドレス領域に格納しておけば、指示入力コンピュータ201および駆動制御コンピュータ202が、お互いの状態を、共有メモリ208へ読み出しアクセスすることにより、認識することができる。
次に、図2、および、図3(a)(b)にもとづいて、実施形態1のロボットコントローラ106Aの動作について説明する。
図3(a)は、指示入力コンピュータ201と駆動制御コンピュータ202の両コンピュータから、あるいは、どちらか一方から、制御レジスタ210または共有メモリ208に対してアクセスが発生した場合のフローチャートを示す。
S301では、指示入力コンピュータ201、駆動制御コンピュータ202の両方から、あるいは、どちらか一方から、バス203、バス204を介して、制御レジスタ210または共有メモリ208へのデータの書き込みアクセス、あるいは制御レジスタ210または共有メモリ208からのデータの読み出しアクセスが発生する。
S302では、アクセス制御部206は、アクセス要求のあったコンピュータがどちらか一方なのか、両方なのかを判断し、両方の場合は、S303へ進み、どちらか一方の場合は、S315へと進む。
S303では、アクセス制御部206は、両コンピュータがアクセスするアドレス領域が、同じか、異なるかを判断し、同じ場合は、S304へ進み、異なる場合は、S315へと進む。
S304では、アクセス制御部206は、両コンピュータにおけるアクセスの種類が、書き込みなのか、読み出しなのかを判断し、書き込みの場合は、S305へ進み、読み出しの場合には、S313へ進む。
S305では、モード切替フラグ211が、マルチアクセスモードなのか、限定アクセスモードなのかを判断し、マルチアクセスモードの場合は、S306へ進み、限定アクセスモードの場合はS311へ進む。
S306は、両方のコンピュータから、同じアドレス領域に対する書き込みアクセスが発生しており、モード切替フラグ211がマルチアクセスモードになっているときに分岐してくる処理部分となる。S306では、アクセス制御部206は、両コンピュータからのアクセスに対して、アクセス順、優先順位などから、要求アドレス領域に対するアクセス権をいずれのコンピュータに開放するかを調停する。
S307では、アクセス制御部206は、S306でアクセス権を獲得したコンピュータに対して、バスを開放し、要求アドレス領域に対して書き込み動作を許可する。
同時に、アクセス権を獲得できなかったコンピュータに対しては、書き込み動作を禁止し、待機させる。
S308では、アクセス権を獲得したコンピュータは、要求アドレス領域に対する書き込みを完了する。
S309では、アクセス制御部206は、待機させていたコンピュータに対して、バスを開放し、要求アドレス領域に対して書き込みアクセスを許可する。
S310では、2番目にアクセス権を獲得したコンピュータは、要求アドレス領域に対する書き込みを完了する。
S311は、両方のコンピュータから、同じアドレス領域に対して書き込みアクセスが発生しており、モード切替フラグ211が限定アクセスモードになっているときに分岐してくる処理部分となる。S311では、アクセス制御部206は、限定アクセスモードにおいて、書き込みが許可されているコンピュータにのみバスを開放し、書き込み可能とする。
S312では、書き込みを許可されたコンピュータは、要求アドレス領域に対する書き込みを完了する。
S313は、両方のコンピュータから、同じアドレス領域からの読み出しアクセスが発生しているときに分岐してくる処理となる。S313では、アクセス制御部206は、アクセスのあったコンピュータすべてにバスを開放し、読み出し可能とする。
S314では、読み出しを許可されたコンピュータは、要求アドレス領域に対する読み出しを完了する。
S315は、一方のコンピュータから、書き込みまたは読み出しのアクセスがあったとき、あるいは、両方のコンピュータから、異なるアドレス領域に対して書き込みまたは読み出しのアクセスがあったときに分岐してくる処理となる。
S315では、アクセス制御部206は、アクセスをしたコンピュータすべてにバスを開放し、書き込みまたは読み出しを可能とする。
S316では、書き込みまたは読み出しを許可されたコンピュータは、要求アドレス領域に対する書き込みまたは読み出しを完了する。
図3(b)は、情報取得部209が、外部機器108から所定時間毎に情報を取得して共有メモリ208に格納する場合のフローチャートを示す。
S317では、情報取得部209は、外部機器108から出てくる信号を受け取る。
S318では、情報取得部209は、取得した情報を指示入力コンピュータ201および駆動制御コンピュータ202が読み出すデータに変化させる処理をする。
S319では、情報取得部209は、処理した結果のデータを共有メモリ208の決められたアドレス領域に格納する。
それと並行して、指示入力コンピュータ201および駆動制御コンピュータ202は、図3(a)のフローチャートと同様のフローで、随時、情報取得部209が共有メモリ208に格納したデータを読み出す。
したがって、駆動制御コンピュータ202と指示入力コンピュータ201とが制御レジスタ210を共用することにより、駆動制御コンピュータ202または指示入力コンピュータ201が外部I/O機器105の情報を得る際に、コンピュータ間で通信したり、共有メモリ208を使用したりする必要がなくなるので、時間遅れと処理時間の増加を防ぐことができる。
アクセス制御部206は、制御レジスタ210へのデータの書き込みを一方のコンピュータからに限定することができるので、外部I/O機器105の制御に生じる不具合を低減することができ、外部I/O機器105に安定した動作を行わせることができる。
アクセス制御部206が、制御レジスタ210へのデータの書き込みを両コンピュータに許可するか、または、どちらか一方のみに許可するかを切り替え可能なモード切替フラグ211を備えることにより、汎用性の高いロボットコントローラとすることができる。
なお、共有メモリ208は、アクセス制御部206により両コンピュータからのデータの書き込み可否を制御されるので、その効率性を高めることができる。
また、情報取得部209は、外部機器108からの情報を取得し、当該情報が共有メモリ208に格納されることにより、駆動制御コンピュータ202と指示入力コンピュータ201とが、外部機器108の情報を共有することができるので、どのコンピュータからもリアルタイムで外部機器108の情報を得ることができ、また、コンピュータ間のトラフィックを低減することができる。
(実施形態2)
ロボット100の基本構成については、実施形態1と同様である(図1参照)。
(実施形態2)
ロボット100の基本構成については、実施形態1と同様である(図1参照)。
図5に、図1のロボットコントローラ106の内部構成の別の例を示す。
ロボットコントローラ106Cは、図5に示すように、指示入力コンピュータ201と、駆動制御コンピュータ202と、アクセス制御部206と、I/O制御部207と、共有メモリ208と、モータ103の回転位置の変位をカウントするカウンタであるパルスカウンタ509と、を基本構成としている。
図2に示す実施形態1とは、情報取得部209がパルスカウンタ509に置き換えられている点で異なる。パルスカウンタ509はエンコーダ104に接続されている。
パルスカウンタ509は、エンコーダ104から出力され、モータ103の回転位置の変位に伴ったパルス信号を受け取って、カウントし、カウントした値を共有メモリ208へ順次格納する。なお、パルスの数からモータ103の回転位置がわかり、パルスの幅からモータ103の回転速度がわかる。
ここで、モータ103とエンコーダ104とパルスカウンタ509とは、それぞれ一個ずつである必要はなく、モータ103とエンコーダ104とパルスカウンタ509とが同じ数ずつあれば、複数個あっても良い。
次に、図5および図6にもとづいて、実施形態2のロボットコントローラ106Cの動作について説明する。
図6は、パルスカウンタ509が、エンコーダ104からモータ103の回転位置の変位に伴ったパルス信号を取得して、パルス数をカウントし、共有メモリ208に格納する場合のフローチャートを示す。
S601では、パルスカウンタ509が、エンコーダ104から出力され、モータ103の回転位置の変位に伴ったパルス信号を取得する。
S602では、パルスカウンタ509が、受け取ったパルス信号のパルス数を、随時、カウントし、パルスカウント値を算出する。
S603では、パルスカウンタ509が、パルスカウント値をレジスタなどに保持する。
S604では、パルスカウンタ509が、レジスタなどに保持されたパルスカウント値を共有メモリ208の決められたアドレス領域に格納する。
それと並行して、指示入力コンピュータ201および駆動制御コンピュータ202は、図3(a)のフローチャートと同様のフローで、随時、パルスカウンタ509が共有メモリ208へ格納したデータを読み出す。
したがって、駆動制御コンピュータ202と指示入力コンピュータ201とが、コンピュータ間の通信手段を使わずに、モータ103の回転位置の変位に伴ったパルスカウント値を、共有メモリ208から読み出すことができるので、モータ103の回転位置や回転速度などを即座に算出できる。つまり、ロボット100自体の位置や移動速度も認識することができる。モータ103の情報は、両コンピュータで必要となる場合が多いので、コンピュータ間の通信手段を使わないことにより、コンピュータ間のトラフィックを低減することができる。
100 ロボット
101,710 指示入力機器
102 移動用車輪
103,730 モータ
104 エンコーダ
105,760 外部I/O機器
106,106A,106B,106C,700 ロボットコントローラ
107,720 センサ
108 外部機器
109 補助輪
201,701 指示入力コンピュータ
202,702 駆動制御コンピュータ
203,204,205,703,704,705 バス
206 アクセス制御部
207,707,708 I/O制御部
208,706 共有メモリ
209 情報取得部
210 制御レジスタ
211 モード切替フラグ
409 ウォッチドッグタイマー
509 パルスカウンタ
101,710 指示入力機器
102 移動用車輪
103,730 モータ
104 エンコーダ
105,760 外部I/O機器
106,106A,106B,106C,700 ロボットコントローラ
107,720 センサ
108 外部機器
109 補助輪
201,701 指示入力コンピュータ
202,702 駆動制御コンピュータ
203,204,205,703,704,705 バス
206 アクセス制御部
207,707,708 I/O制御部
208,706 共有メモリ
209 情報取得部
210 制御レジスタ
211 モード切替フラグ
409 ウォッチドッグタイマー
509 パルスカウンタ
Claims (7)
- 駆動部に所定動作を行わせるために制御出力を行う駆動制御コンピュータと、
前記駆動制御コンピュータに前記所定動作を行うように指示するための指示入力コンピュータと、
前記駆動制御コンピュータと前記指示入力コンピュータとの両方からデータが書き込まれ、または両方からデータが読み出されることが可能な制御レジスタを備え、外部I/O機器を接続して前記制御レジスタへアクセスすることにより前記外部I/O機器のI/O制御を行うI/O制御部と、
前記駆動制御コンピュータと前記指示入力コンピュータとの両方に接続され、前記制御レジスタへのデータの書き込み可否を制御するアクセス制御部と、
を備えることを特徴とするロボットコントローラ。 - 前記アクセス制御部が、前記制御レジスタへのデータの書き込みを、前記駆動制御コンピュータと前記指示入力コンピュータとのうちいずれか一方からに限定することを特徴とする請求項1に記載のロボットコントローラ。
- 前記アクセス制御部が、前記制御レジスタへのデータの書き込みを前記駆動制御コンピュータと前記指示入力コンピュータとの両方に許可するか、または、一方のみに許可するかを切り替えることが可能なモード切替フラグを備えることを特徴とする請求項1に記載のロボットコントローラ。
- 前記駆動制御コンピュータと前記指示入力コンピュータとの両方からデータが書き込まれ、または両方からデータが読み出されることが可能であり、前記アクセス制御部により、データの書き込み可否が制御される共有メモリをさらに備えることを特徴とする請求項1〜3のいずれか1項に記載のロボットコントローラ。
- 外部機器からの情報を取得して前記共有メモリに格納する情報取得部をさらに備えることを特徴とする請求項4に記載のロボットコントローラ。
- モータの回転位置の変位をカウントし、カウントした値を前記共有メモリに格納するカウンタをさらに備えることを特徴とする請求項4に記載のロボットコントローラ。
- 請求項1〜6のいずれか1項に記載のロボットコントローラを備えることを特徴とするロボット。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
JP2006260002A JP2008083761A (ja) | 2006-09-26 | 2006-09-26 | ロボットコントローラおよびロボット |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
JP2006260002A JP2008083761A (ja) | 2006-09-26 | 2006-09-26 | ロボットコントローラおよびロボット |
Publications (1)
Publication Number | Publication Date |
---|---|
JP2008083761A true JP2008083761A (ja) | 2008-04-10 |
Family
ID=39354625
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
JP2006260002A Pending JP2008083761A (ja) | 2006-09-26 | 2006-09-26 | ロボットコントローラおよびロボット |
Country Status (1)
Country | Link |
---|---|
JP (1) | JP2008083761A (ja) |
Cited By (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JP6419400B1 (ja) * | 2018-01-18 | 2018-11-07 | 三菱電機株式会社 | Plc、ネットワークユニット、cpuユニット、及びデータ転送方法 |
Citations (4)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JPS5316176A (en) * | 1976-07-30 | 1978-02-14 | Toshiba Corp | Nc device loaded with sequential controller |
JPS6238901A (ja) * | 1985-08-14 | 1987-02-19 | Yaskawa Electric Mfg Co Ltd | プログラマブルコントロ−ラ |
JPH04360202A (ja) * | 1991-06-06 | 1992-12-14 | Yokogawa Electric Corp | 分散形制御装置 |
JPH11110015A (ja) * | 1997-10-06 | 1999-04-23 | Yokogawa Electric Corp | Cpuモジュール間のデータ交換装置 |
-
2006
- 2006-09-26 JP JP2006260002A patent/JP2008083761A/ja active Pending
Patent Citations (4)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JPS5316176A (en) * | 1976-07-30 | 1978-02-14 | Toshiba Corp | Nc device loaded with sequential controller |
JPS6238901A (ja) * | 1985-08-14 | 1987-02-19 | Yaskawa Electric Mfg Co Ltd | プログラマブルコントロ−ラ |
JPH04360202A (ja) * | 1991-06-06 | 1992-12-14 | Yokogawa Electric Corp | 分散形制御装置 |
JPH11110015A (ja) * | 1997-10-06 | 1999-04-23 | Yokogawa Electric Corp | Cpuモジュール間のデータ交換装置 |
Cited By (5)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JP6419400B1 (ja) * | 2018-01-18 | 2018-11-07 | 三菱電機株式会社 | Plc、ネットワークユニット、cpuユニット、及びデータ転送方法 |
WO2019142288A1 (ja) * | 2018-01-18 | 2019-07-25 | 三菱電機株式会社 | Plc、ネットワークユニット、cpuユニット、及びデータ転送方法 |
CN110278716A (zh) * | 2018-01-18 | 2019-09-24 | 三菱电机株式会社 | Plc、网络单元、cpu单元、以及数据传送方法 |
US10656615B2 (en) | 2018-01-18 | 2020-05-19 | Mitsubishi Electric Corporation | PLC, network unit, CPU, and data transfer method |
CN110278716B (zh) * | 2018-01-18 | 2020-10-27 | 三菱电机株式会社 | Plc、网络单元、cpu单元、以及数据传送方法 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
JP5923726B2 (ja) | 表示制御装置、及び、表示制御システム | |
US20050235084A1 (en) | Bus system and access control method | |
JP2000276127A (ja) | 情報処理装置及び表示制御装置 | |
SE444236B (sv) | Databehandlingsanleggning innefattande en masterdator och minst tva slavdatorer | |
CN103975315A (zh) | 用于提高车辆计算平台中的响应性的方法和系统 | |
JP2008083761A (ja) | ロボットコントローラおよびロボット | |
JP4727721B2 (ja) | マルチプロセッサシステムおよびそれを備えた表示装置 | |
CN101482853A (zh) | 直接存储器访问系统及方法 | |
US20050080966A1 (en) | Communication steering for use in a multi-master shared resource system | |
US20040268020A1 (en) | Storage device for a multibus architecture | |
JP2006178832A (ja) | モータ駆動用パルス出力ic、および電子カム制御システム | |
JP3778181B2 (ja) | ディスプレイ制御装置 | |
US20050080961A1 (en) | Communication steering for use in a multi-master shared resource system | |
JP2008097367A (ja) | 車載電子機器 | |
JP2008117068A (ja) | 情報処理システム | |
JP4880241B2 (ja) | 分配装置及び分配方法 | |
JPH05282244A (ja) | 情報処理装置 | |
KR19990075990A (ko) | 데이터 처리 시스템 | |
WO2022102114A1 (ja) | 車両制御システム | |
JP2000181855A (ja) | Dma転送システム | |
JP2008287571A (ja) | 共有メモリ切替え回路と切替え方法 | |
JPH04256883A (ja) | クラッタマップ制御方式 | |
JP3743975B2 (ja) | 記憶装置システム | |
JP2671743B2 (ja) | マイクロコンピュータ | |
JPS6354648A (ja) | バストレ−サメモリ格納停止方式 |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
A621 | Written request for application examination |
Free format text: JAPANESE INTERMEDIATE CODE: A621 Effective date: 20090519 |
|
A977 | Report on retrieval |
Free format text: JAPANESE INTERMEDIATE CODE: A971007 Effective date: 20110324 |
|
A131 | Notification of reasons for refusal |
Free format text: JAPANESE INTERMEDIATE CODE: A131 Effective date: 20110329 |
|
A02 | Decision of refusal |
Free format text: JAPANESE INTERMEDIATE CODE: A02 Effective date: 20110809 |