JP2005149376A - 自律移動装置 - Google Patents

自律移動装置 Download PDF

Info

Publication number
JP2005149376A
JP2005149376A JP2003389210A JP2003389210A JP2005149376A JP 2005149376 A JP2005149376 A JP 2005149376A JP 2003389210 A JP2003389210 A JP 2003389210A JP 2003389210 A JP2003389210 A JP 2003389210A JP 2005149376 A JP2005149376 A JP 2005149376A
Authority
JP
Japan
Prior art keywords
control unit
unit
human interface
control program
drive
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.)
Granted
Application number
JP2003389210A
Other languages
English (en)
Other versions
JP4096866B2 (ja
Inventor
Hitoshi Kitano
斉 北野
Tatsuo Sakai
龍雄 酒井
Kazushi Hatake
一志 畠
Hisato Nakajima
久人 中嶋
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.)
Panasonic Electric Works Co Ltd
Original Assignee
Matsushita Electric Works Ltd
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 Matsushita Electric Works Ltd filed Critical Matsushita Electric Works Ltd
Priority to JP2003389210A priority Critical patent/JP4096866B2/ja
Publication of JP2005149376A publication Critical patent/JP2005149376A/ja
Application granted granted Critical
Publication of JP4096866B2 publication Critical patent/JP4096866B2/ja
Anticipated expiration legal-status Critical
Expired - Lifetime legal-status Critical Current

Links

Images

Landscapes

  • Manipulator (AREA)
  • Control Of Position, Course, Altitude, Or Attitude Of Moving Bodies (AREA)

Abstract

【課題】自律走行可能な自律移動装置において、自律移動装置において実行されている制御プログラムが正常に機能しなくなったときでも、自律移動装置の業務自体を停止させることなく、制御プログラムをリセットして再起動させ、業務続行を可能とする
【解決手段】マイクロコンピュータ機能を有する駆動制御部3及びヒューマンインタフェース制御部7により、互いに相手の制御部で実行されている制御プログラムが正常に機能しているか否かをモニタし、いずれか一方の制御部で実行されている制御プログラムが正常に機能してないとき(機能停止)は、その正常に機能していない制御プログラムをリセットして再起動させる。制御プログラムが正常に機能していないときは、所定の信号が出力されないか、又は所定の信号が出力される周期が略一定でなくなるので、制御プログラムの実行中に所定の信号を略一定の周期で出力させ、出力される信号をモニタすることにより、制御プログラムが正常に機能しているか否かを判断することができる。
【選択図】図1

Description

本発明は、自動的に物の搬送、人の先導、人への追従などの業務を遂行する自律移動装置に関し、制御プログラムが正常に機能しなくなったときでも、安全かつ確実にそれらの業務を遂行することが可能な自律移動装置に関する。
従来から、無人状態で自動走行可能な車両などにおいて、複数の動作を同時に制御するために、2つのマイクロコンピュータを用いて、それぞれ制御機能を分担させることが行われている。さらに、例えば特許文献1に記載されているように、これら2つのマイクロコンピュータを用いて、互いにもう1つのマイクロコンピュータが正常に機能しているか否かを診断させ、いずれか一方のマイクロコンピュータが正常に機能していないときは、車両を緊急停止させると共に、正常に機能していないマイクロコンピュータを特定して正常なものと交換することが行われている。
しかしながら、従来の方法によれば、マイクロコンピュータが完全に故障した場合だけでなく、単に制御プログラムが正常に機能しなくなった場合にも車両が緊急停止してしまう。また、単なる制御プログラムの異常で停止した場合であっても、マイクロコンピュータが正常であるか否かを判断した後、車両を再起動させなければ、作業を続行することができないという問題を有していた。
特開平7−36728号公報
本発明は、上記の問題を解決するためになされたものであり、制御プログラムが正常に機能しなくなったときでも、自律移動装置の業務自体を停止させることなく、制御プログラムをリセットして再起動させ、業務続行を可能とする自律移動装置を提供することを目的とする。
上記目的を達成するために請求項1の発明は、自律移動装置であって、自律的に移動するための駆動部と、前記駆動部を制御するための駆動制御部と、自律的に移動可能な範囲の地図を記憶した地図記憶部と、移動の際、経路上及びその近傍に障害物が存在するか否かを検出する計測部と、操作者から指令の入力及び操作者に対して自律移動装置の状態を表示するためのヒューマンインタフェース部と、前記ヒューマンインタフェース部を制御するためのヒューマンインタフェース制御部とを備え、
前記駆動制御部及び前記ヒューマンインタフェース制御部は、それぞれ制御プログラムの実行中に略一定の周期で所定の信号を出力し、前記駆動制御部は、前記ヒューマンインタフェース制御部から出力される信号をモニタし、前記ヒューマンインタフェース制御部で実行されている制御プログラムが正常に機能しているか否かを判断し、前記ヒューマンインタフェース制御部は、前記駆動制御部から出力される信号をモニタし、前記駆動制御部で実行されている制御プログラムが正常に機能しているか否かを判断し、前記駆動制御部又は前記ヒューマンインタフェース制御部で実行されている制御プログラムが正常に機能していないときに、その正常に機能していない制御プログラムをリセットして、再起動させることを特徴とする。
また、請求項2の発明は、自律移動装置であって、自律的に移動するための駆動部と、前記駆動部を制御するための駆動制御部と、自律的に移動可能な範囲の地図を記憶した地図記憶部と、移動の際、経路上及びその近傍に障害物が存在するか否かを検出する計測部と、操作者から指令の入力及び操作者に対して自律移動装置の状態を表示するためのヒューマンインタフェース部と、前記ヒューマンインタフェース部を制御するためのヒューマンインタフェース制御部と、前記駆動制御部及び前記ヒューマンインタフェース制御部で実行されている制御プログラムが正常に機能しているか否かを判断する制御状態判断部を備え、
前記駆動制御部又は前記ヒューマンインタフェース制御部で実行されている制御プログラムは、それぞれ所定のルーチンを繰り返すごとに出力されるハイ状態とロー状態を繰り返す所定のパルス信号を出力し、前記制御状態判断部は、前記駆動制御部及び前記ヒューマンインタフェース制御部から出力される信号をモニタし、前記駆動制御部又はび前記ヒューマンインタフェース制御部から出力される信号が正常に機能していないと判断したときに、その制御プログラムをリセットし、再起動させることを特徴とする。
請求項3の発明は、請求項1又は請求項2の自律移動装置において、前記ヒューマンインタフェース制御部で実行されている制御プログラムが正常に機能していないと判断すると、前記駆動制御部は、前記駆動部を制御して、前記地図記憶部に記憶されている地図上のあらかじめ設定された場所又は前記計測部により障害物の存在が検出されていない場所に移動して、前記ヒューマンインタフェース制御部で実行されている制御プログラムをリセットして、再起動させることを特徴とする。
請求項4の発明は、請求項1乃至請求項3の自律移動装置において、前記ヒューマンインタフェース制御部で実行されている制御プログラムが再起動された後、前記駆動制御部は、前記ヒューマンインタフェース制御部に対して、前記制御プログラムが正常に機能しなくなる直前の状態に復旧させるために、所定の信号又はデータを出力することを特徴とする。
請求項5の発明は、請求項1又は請求項2の自律移動装置において、前記駆動制御部で実行されている制御プログラムが正常に機能していないと判断すると、前記ヒューマンインタフェース制御部は、前記駆動部への電源供給を遮断して移動を停止させると共に、前記駆動制御部で実行されている制御プログラムをリセットして、再起動させることを特徴とする。
請求項6の発明は、請求項5の自律移動装置において、前記駆動制御部で実行されている制御プログラムが再起動された後、前記ヒューマンインタフェース制御部は記憶している最終位置データを前記駆動制御部に出力し、前記駆動制御部は前記最終位置データを用いて前記地図記憶部に記憶されている地図上における自己の現在位置を特定することを特徴とする。
請求項7の発明は、請求項6の自律移動装置において、前記駆動制御部で実行されている制御プログラムが再起動された後、前記駆動制御部は、前記計測部による計測結果と前記特定された地図上における自己の現在位置を照合し、現在位置を修正することを特徴とする。
請求項1の発明によれば、駆動制御部及びヒューマンインタフェース制御部により、互いに相手の制御部で実行されている制御プログラムが正常に機能しているか否かをモニタし、いずれか一方の制御部で実行されている制御プログラムが正常に機能してないとき(機能停止)は、その正常に機能していない制御プログラムをリセットして再起動させるので、マイクロコンピュータなどの故障でなく、単に制御プログラムが正常に機能していないだけのときは、自律移動装置の業務をそのまま続行することができる。また、制御プログラムが正常に機能していないときは、所定の信号が出力されないか、又は所定の信号が出力される周期が略一定でなくなるので、制御プログラムの実行中に所定の信号を略一定の周期で出力させ、出力される信号をモニタすることにより、制御プログラムが正常に機能しているか否かを判断することができる。
請求項2の発明によれば、制御状態判断部を設けて駆動制御部及びヒューマンインタフェース制御部で実行されている制御プログラムが正常に機能しているか否かを判断しているので、請求項1の場合と同様に、マイクロコンピュータなどの故障でなく、単に制御プログラムが正常に機能していないだけのときは、制御プログラムをリセットし再起動させることにより、自律移動装置の業務をそのまま続行することができる。
請求項3の発明によれば、ヒューマンインタフェース制御部で実行されている制御プログラムが正常に機能していないときに、あらかじめ設定された場所又は障害物の存在が検出されていない場所に移動して、制御プログラムをリセットして再起動させるので、制御プログラムが再起動されるまでの間、人や他の自律移動装置などの通行を妨げることを防止することができる。
請求項4の発明によれば、ヒューマンインタフェース制御部で実行されている制御プログラムが再起動された後、例えばリセットされたことを示す信号や他の記憶装置などに記憶されていたバックアップデータなどをヒューマンインタフェース制御部に対して出力し、制御プログラムが正常に機能しなくなる直前の状態に復旧させるので、制御プログラムの再起動後、あたかも制御プログラムのリセットがなかったかのようにして、自律移動装置の業務を続行することができる。
請求項5の発明によれば、駆動制御部で実行されている制御プログラムが正常に機能していないときは、駆動部への電源供給を遮断して移動を停止させ、駆動制御部で実行されている制御プログラムをリセットして再起動させるので、自律移動装置が誤った方向に移動することを防止することができる。
請求項6の発明によれば、さらに、駆動制御部で実行されている制御プログラムが再起動された後、ヒューマンインタフェース制御部に記憶されている最終位置データを用いて地図上における自己の現在位置を特定するので、自律移動装置は、制御プログラムが正常に機能しなくなり停止した位置から業務を再開することができる。
請求項7によれば、駆動制御部で実行されている制御プログラムが再起動された後、計測部による計測結果と特定された地図上における自己の現在位置を照合し、現在位置を修正するので、制御プログラムが機能停止に陥ってから、自律移動装置が停止するまでに移動した距離分を修正することができ、自律移動装置の移動誤差を小さくすることができる。
(第1の実施の形態)
本発明の第1の実施の形態ついて図面を参照して説明する。第1の実施の形態に係る自律移動装置の構成を図1に示す。
自律移動装置1は、一般的に、移動するためのモータを中心に構成された駆動部2と、駆動部2を制御するための駆動制御部3を備える。図1は、車輪により移動する自律移動装置(ロボット)1を例示している。この場合、車輪21を回転させるモータ22にはエンコーダ23が取り付けられている。駆動制御部3は、エンコーダ23からの信号を処理することにより、自律移動装置1の現在位置と進行方向を演算し、演算結果に基づいて目的とする地点へ自律移動装置1を移動させるように、モータ22を制御する。
駆動制御部3には、第1記憶部4及び計測部5が接続されている。第1記憶部4は地図記憶部として機能し、自律移動装置1が自律的に移動可能な範囲の地図を記憶する。また、第1記憶部4は、駆動制御部3で実行される制御プログラムや、所定のデータなどを記憶する。駆動制御部3は、この地図上に、自律移動装置1の現在位置と進行方向の算出結果を重ねることにより、自律移動を制御する。計測部5は、例えば超音波センサやカメラなどのセンサを搭載し、自律移動装置1の走行路上及びその近傍に障害物が存在するか否かなどを計測する。
また、自律移動装置1には、操作者が指示を入力すると共に、自律移動装置1の状態を操作者又は周囲にいる人に表示するためのヒューマンインタフェース部6A及び6Bと、ヒューマンインタフェース部6A及び6Bを制御するヒューマンインタフェース制御部7が設けられている。さらに、ヒューマンインタフェース制御部7には、ヒューマンインタフェース制御部7で実行される制御プログラム、所定のデータ、操作者から入力された指示データなどを記憶するための第2記憶部8が接続されている。ヒューマンインタフェース制御部7と駆動制御部3とは、必要な情報を送受信するように、通信ケーブルや無線通信装置などにより接続されている。
次に、駆動制御部3及びヒューマンインタフェース制御部7の概略構成を図2に示す。駆動制御部3は、CPU、ROM及びRAMなどで構成され、所定の制御プログラムを実行するマイクロコンピュータに相当する第1演算部31と、第1演算部31から出力される所定の信号やデータなどをヒューマンインタフェース制御部7に送信すると共に、ヒューマンインタフェース制御部7から送信される所定の信号やデータなどを受信する入出力インタフェースなどで構成された第1入出力部32とを備えている。同様に、ヒューマンインタフェース制御部7は、CPU、ROM及びRAMなどで構成され、所定の制御プログラムを実行するマイクロコンピュータに相当する第2演算部71と、第2演算部71から出力される所定の信号やデータなどを駆動制御部3に送信すると共に、駆動制御部3から送信される所定の信号やデータなどを受信する入出力インタフェースなどで構成された第2入出力部72とを備えている。第1入出力部32と第2入出力部72とは、前述のように通信ケーブルや無線通信装置などにより接続されている。
駆動制御部3の第1演算部31は、第1記憶部4に記憶されている制御プログラムを読み出して実行する。制御プログラムは、そのプログラムが正常に機能していること示すために、略一定の周期で所定の信号を出力するようにプログラムされている。所定の信号の一例として、第1入出力部32のパラレルポートのうちいずれか1つのポートの出力が、制御プログラムが所定のルーチンを繰返す毎にハイ状態とロー状態を繰返すパルス信号S1とすることができる。パルス信号S1は、ヒューマンインタフェース制御部7の第2入出力部72に入力される。ヒューマンインタフェース制御部7の第2演算部71は、第2入出力部72を介して入力されたパルス信号S1ハイ状態とロー状態の持続時間などを測定しつつ、パルス信号S1をモニタし、第1演算部31で実行されている制御プログラムが正常に機能しているか否かを判断する。例えば、制御プログラムが正常に機能していないときは、パルス信号S1のハイ状態及び/又はロー状態(周期)が異常に長く又は短くなるので、第2演算部71は、第1演算部31で実行されている制御プログラムが正常に機能していないと判断することができる。
同様に、ヒューマンインタフェース制御部7の第2演算部71は、第2記憶部8に記憶されている制御プログラムを読み出して実行する。制御プログラムは、制御プログラムが所定のルーチンを繰返す毎に所定の周期でハイ状態とロー状態を繰返すパルス信号S2を出力し、パルス信号S2は駆動制御部3の第1入出力部32に入力される。駆動制御部3の第1演算部31は、第1入出力部32を介して入力されたパルス信号S2をモニタし、第2演算部71で実行されている制御プログラムが正常に機能しているか否かを判断する。
ヒューマンインタフェース制御部7の第2演算部71は、駆動制御部3の第1演算部31で実行されている制御プログラムが正常に機能していないと判断すると、第2入出力部72を介して第1演算部31にリセット信号を出力する。なお、図2では、駆動制御部3及びヒューマンインタフェース制御部7のそれぞれのリセット端子にリレーの接点を設け、駆動制御部3のパラレルポートの出力を用いてヒューマンインタフェース制御部7側の接点を制御し、ヒューマンインタフェース制御部7のパラレルポートの出力を用いて駆動制御部3側の接点を制御するように構成されている。あるいは、リセット信号を、第1入出力部32を介して第1演算部31に入力してもよい。リセット信号が入力されると、第1演算部31は、現在実行している制御プログラムを中止し、改めて第1記憶部4から制御プログラムを読み出して実行(再起動)する。
同様に、駆動制御部3の第1演算部31は、ヒューマンインタフェース制御部7の第2演算部71で実行されている制御プログラムが正常に機能していないと判断すると、第1入出力部32を介して第2演算部71にリセット信号を出力する。リセット信号が入力されると、第2演算部71は、現在実行している制御プログラムを中止し、改めて第2記憶部8から制御プログラムを読み出して実行(再起動)する。
このように、駆動制御部3の第1演算部31とヒューマンインタフェース制御部7の第2演算部71を用いて、互いに相手方の制御部で実行されている制御プログラムが正常に機能しているか否かをモニタさせることにより、駆動制御部3で実行されている制御プログラム及びヒューマンインタフェース制御部7で実行されている制御プログラムが正常に機能しているか否かを判断することができる。さらに、相手方の制御部で実行されている制御プログラムが正常に機能していないと判断したときに、相手方の制御部にリセット信号を出力して制御プログラムを再起動させるので、自律移動装置1の業務を中止することなく、続行することができる。なお、マイクロコンピュータで構成された第1演算部31又は第2演算部71が故障している場合は、上記制御プログラムをリセットしても正常に機能しないので、所定回数だけリセット作業を繰り返しても制御プログラムが正常に機能しないときは、マイクロコンピュータの故障と判断することができる。
なお、駆動制御部3で実行されている制御プログラムが正常に機能しているときに出力される所定の信号と、ヒューマンインタフェース制御部7で実行されている制御プログラムが正常に機能しているときに出力される所定の信号は同じ信号であってもよいし、異なる信号であってもよい。例えば、所定の信号がパルス信号である場合、パルス信号の周波数(又は周期T1とT2)を変えることにより、後述する第2の実施の形態のように、駆動制御部3及びヒューマンインタフェース制御部7以外の他のマイクロコンピュータ機能を有する制御状態判断部により、どちらの制御部で実行されている制御プログラムが正常に機能しなくなったのかを、正常に機能している制御プログラムから出力される信号の周波数に基づいて判断することができる。
このような構成により、駆動制御部3及びヒューマンインタフェース制御部7のいずれかで実行されている制御プログラムが、何らかの原因により機能停止状態となった場合、もう一方の制御部がそれを検知し、機能停止状態となった方の制御部で実行されている制御プログラムをリセットして再起動させるので、自律移動装置1の全体の機能を停止させることなく、自動的に復旧させることができる。また、誤った指示を受けて駆動部3が動作することを防止することが可能となる。
次に、上記自律移動装置1における制御プログラムのリセット及び再起動動作について説明する。図3のフローチャートは駆動制御部3による動作を示すものであって、自律移動装置1の移動中に、ヒューマンインタフェース制御部7で実行されている制御プログラムが何らかの原因により機能停止し、これを駆動制御部3が検出した場合に、自律移動装置1を所定の場所に待避させて、機能停止した制御プログラムをリセットして再起動させるものである。
第1記憶部(地図記憶部)4に記憶されている地図上には、1ヶ所以上の待避場所があらかじめ設定されている。通常、操作者により自律移動装置1が移動する目的地が設定され(S1)、駆動制御部3は、制御プログラムを実行して駆動部2を制御し、設定された目的地に向かって移動を行う(S2)。自律移動装置1の移動中、駆動制御部3は、ヒューマンインタフェース制御部7で実行されている制御プログラムが正常に機能しているか否かをモニタしている(S3)。そして、エンコーダ23や計測部2の出力などを用いて、目的地に到着する(S4、S5)まで、駆動制御(S2)及び制御プログラムのモニタ(S3)を続ける。
一方、駆動制御部3が、ヒューマンインタフェース制御部7で実行されている制御プログラムが正常に機能していないと判断すると(S3でNO)、駆動制御部3は、現在位置から最も近い待避場所に目的地を変更し(S6)、変更した目的地に向けて移動を開始する。そして、待避地点に到着後(S7でYES)、リセット信号を出力して、ヒューマンインタフェース制御部7で実行されている制御プログラムをリセットして再起動させる(S8)。制御プログラムの再起動後、ステップS1に戻って、当初の目的地に向けて再び移動を開始する。
このように、ヒューマンインタフェース制御部7で実行されている制御プログラムが正常に機能していないときに、あらかじめ設定された待避場所に移動して、制御プログラムをリセットして再起動させるので、制御プログラムが再起動されるまでの間、人や他の自律移動装置などの通行を妨げることを防止することができる。
図4に示す第1変形例では、第1記憶部(地図記憶部)4に記憶されている地図上には、待避場所があらかじめ設定されておらず、自律移動装置1自体の計測部を用いて、障害物の存在しない待避可能な場所を検出し、自律移動装置1を検出した場所に待避させて、機能停止した制御プログラムをリセットして再起動させるものである。なお、ステップS1からS5までは上記図3に示す場合と同じであるので、その説明は省略する。
駆動制御部3が、ヒューマンインタフェース制御部7で実行されている制御プログラムが正常に機能していないと判断すると(S3でNO)、駆動制御部3は、計測部を用いて、障害物の存在しない待避可能な場所を検出する(S11)。そして、検出した場所に目的地を変更し(S12)、変更した目的地に向けて移動を開始する。そして、待避地点に到着後(S13でYES)、ヒューマンインタフェース制御部7で実行されている制御プログラムをリセットして再起動させる(S14)。制御プログラムの再起動後、ステップS1に戻って、当初の目的地に向けて再び移動を開始する。
この第1変形例では待避場所があらかじめ設定されていないので、あらかじめ設定されている待避場所よりも近くに待避可能な場所が存在するときには、待避場所があらかじめ設定されている場合よりも早期に制御プログラムの再起動が可能になる。逆に、待避可能な場所がなかなか検出できないときには、制御プログラムの再起動までに時間が掛かることもあり得る。いずれにしても、制御プログラムが再起動されるまでの間、人や他の自律移動装置などの通行を妨げることを防止することができる。
図5に示す第2変形例では、ヒューマンインタフェース制御部で実行されている制御プログラムが一旦機能停止に陥った後、リセットされ再起動された場合に、ヒューマンインタフェース制御部7の状態を機能停止となる直前の状態に戻すことを可能とするものである。従って、ステップS1からS8までは上記図3に示す場合と同じであるので、その説明は省略する。
第2変形例では、制御プログラムが正常に機能しなくなる直前のヒューマンインタフェース制御部7の状態、例えば操作者により入力された目的地などの指示を、第2記憶部8又は駆動制御部3側の第1記憶部4などにバックアップとして記憶しておく。そして、ステップS8において、ヒューマンインタフェース制御部7で実行されている制御プログラムがリセットされ再起動されると、駆動制御部3は、ヒューマンインタフェース制御部7に対して、制御プログラムが正常に機能しなくなる直前の状態に復旧させるために、所定の信号又はデータを出力する(S9)。ヒューマンインタフェース制御部7は、駆動制御部3からの所定の信号を受信すると、第2記憶部8に記憶されているバックアップデータを読み出し、あるいは、駆動制御部3からバックアップデータが送信されたときには、そのバックアップデータを用いて、制御プログラムが正常に機能しなくなる直前の状態に復旧する(S10)。その結果、制御プログラムの再起動後、あたかも制御プログラムのリセットがなかったかのようにして、自律移動装置1の業務を続行することができる。
図6のフローチャートは、ヒューマンインタフェース制御部7による動作を示すものであって、自律移動装置1の移動中に、駆動制御部3で実行されている制御プログラムが何らかの原因により機能停止し、これをヒューマンインタフェース制御部7が検出した場合に、自律移動装置1の移動をその場所で停止させて、機能停止した制御プログラムをリセットして再起動させるものである。
自律移動装置1が、操作者により指示された目的地に向かって走行しているときは、ヒューマンインタフェース制御部7は、ヒューマンインタフェース部6A又は6Bに対して、自律移動装置1の走行中を示す所定の表示を行わせるように制御を行う(S21)。この制御と並行して、ヒューマンインタフェース制御部7は、駆動制御部3で実行されている制御プログラムが正常に機能しているか否かをモニタしている(S22)。そして、目的地に到着すると(S23でYES)、ヒューマンインタフェース部6A又は6Bに対して、自律移動装置1が目的地に到着したことを示す所定の表示を行わせるように制御を行う(S24)。
ヒューマンインタフェース制御部7が、駆動制御部3で実行されている制御プログラムが正常に機能していないと判断すると(S22でNO)、ヒューマンインタフェース制御部7は、駆動部2のモータ22への電源供給を遮断して移動を停止させる(S25)と共に、リセット信号を出力して、駆動制御部3で実行されている制御プログラムをリセットして再起動させる(S26)。
このように、駆動制御部3で実行されている制御プログラムが正常に機能していないときは、駆動部2への電源供給を遮断して、その場所で移動を停止させ、駆動制御部3で実行されている制御プログラムをリセットして再起動させるので、誤った指示により自律移動装置1が誤った方向に移動することを防止することができる。
図7に示すように、ステップS26において、駆動制御部3で実行されている制御プログラムを再起動した後、ヒューマンインタフェース制御部7から、記憶している最終位置データ、すなわち制御プログラムが機能停止した時点における地図上の自己位置を駆動制御部3に出力する(S27)ように構成してもよい。それにより、自律移動装置1は、駆動制御部3で実行されている制御プログラムが正常に機能しなくなり停止した位置から業務を再開することができる。この場合、駆動制御部3により演算された地図上の現在位置は、第1記憶部4に記憶されると共に、ヒューマンインタフェース制御部7に転送されて、第2記憶部8にバックアップ保存されるように構成する。
さらに、図8に示すように、ステップS27において、ヒューマンインタフェース制御部7から駆動制御部3に最終位置データが出力された後、駆動制御部3において再起動された制御プログラム上に現在位置が設定されている間、ヒューマンインタフェース6A及び/又は6Bに対して、駆動制御部3における制御プログラムが再起動中であることを表示させる(S28)ように構成してもよい。例えば、自律移動装置1に設けられているヒューマンインタフェース6Aに、自律移動装置1の制御プログラムが再起動中であることを表示することにより、自律移動装置1の付近にいる人に対しては、自律移動装置1の制御プログラムが再起動中であることを知らせることができる。また、制御プログラムが再起動後には、自律移動装置1が再び動き出す可能性があることに注意を促すことができる。さらに、自律移動装置1から離れた位置に設けられている又は操作者が手にしているヒューマンインタフェース6Bに、自律移動装置1の制御プログラムが再起動中であることを表示することにより、目的地で自律移動装置1の到着を待っている人などに対して、自律移動装置1の到着が遅れることを知らせることができる。
図9に示す変形例では、駆動制御部3で実行されている制御プログラムが再起動された後、自律移動装置1の業務を再開するに当たって、自律移動装置1の現在位置を修正するものである。図9中、自律移動装置1の業務再開後のステップS35からS42は、図3におけるステップS1からS8までと基本的に同じであるため、その説明を省略する。
例えば図7のフローチャートのステップS26において、駆動制御部3で実行されている制御プログラムがリセットされ再起動されたものとする。駆動制御部3は、ヒューマンインタフェース制御部7から最終位置データが出力されたか否かを判断する(S31)。最終位置データが出力されている場合(S31でYES)、駆動制御部3は、最終位置データを用いて地図上における自己の現在位置を設定する(S32)。また、計測部5を用いて、例えば地図上であらかじめ設定されている複数の標識までの距離を測定して、地図上の現在位置と照合する(S33)。そして、地図上の現在位置と計測部5による計測結果とが一致していないときは、計測部5による計測結果を用いて地図上の現在位置を修正する(S34)。そして、修正した現在位置から、自律移動装置1の業務を再開する(S35〜S42)。
このように、駆動制御部3で実行されている制御プログラムが再起動された時点における実際の自律移動装置1の位置として、制御プログラムが機能停止した時点における地図上の自己位置(最終位置データ)を計測部5による計測結果を用いて修正したデータを用いることにより、駆動制御部3で実行されている制御プログラムが機能停止に陥ってから、駆動部2への通電を遮断して、自律移動装置1が停止するまでに移動した距離分を修正することができ、自律移動装置1の移動誤差を小さくすることができる。
(第2の実施の形態)
次に、本発明の第2の実施の形態に係る自律移動装置の構成を図10に示す。図1に示す第1の実施の形態と比較して、第2の実施の形態では、駆動制御部3とヒューマンインタフェース制御部7の間に、制御状態判別部9が接続されている点が異なる。その他の構成は同様であるため、その説明は省略する。
上記第1の実施の形態では、駆動制御部3及びヒューマンインタフェース制御部7により、互いに相手の制御部で実行されている制御プログラムが正常に機能しているか否かを判断させたが、第2の実施の形態では、別に制御状態判断部9を設けて、駆動制御部3及びヒューマンインタフェース制御部7で実行されている制御プログラムが正常に機能しているか否かを判断させている。
駆動制御部3、ヒューマンインタフェース制御部7及び制御状態判別部9の概略構成を図12に示す。第1の実施の形態における図2と比較して、制御プログラムが所定のルーチンを実行するごとに出力される所定の信号、例えばパルス信号S1及びS2は、それぞれ制御状態判断部9に入力される。
制御状態判断部9は、駆動制御部3及びヒューマンインタフェース制御部7と同様に、CPU、ROM及びRAMなどで構成され、所定の制御プログラムを実行するマイクロコンピュータに相当する第3演算部91と、駆動制御部3及びヒューマンインタフェース制御部7から送信される所定の信号やデータなどを受信する入出力インタフェースなどで構成された第3入出力部92で構成されている。
制御状態判断部9の第3演算部91は、第3入出力部92を介して入力される駆動制御部3及びヒューマンインタフェース制御部7からの所定の信号S1及びS2をモニタし、駆動制御部3及びヒューマンインタフェース制御部7で実行されている制御プログラムが正常に機能しているか否かを判断する。第2の実施の形態では、駆動制御部3及びヒューマンインタフェース制御部7のうち、どちらの制御部で実行されている制御プログラムが正常に機能しなくなったのかを識別するために、駆動制御部3で実行されている制御プログラムが正常に機能しているときに出力される所定の信号と、ヒューマンインタフェース制御部7で実行されている制御プログラムが正常に機能しているときに出力される所定の信号は異なる信号である。例えば、所定の信号がパルス信号である場合、パルス信号の周波数(又は周期T1とT2)を変えることにより、どちらの制御部で実行されている制御プログラムが正常に機能しなくなったのかを正確に識別することができる。
制御状態判断部9は,駆動制御部3の第1演算部31又はヒューマンインタフェース制御部7の第2演算部71で実行されている制御プログラムをリセットして再起動させるために、第3入出力部92を介して第1演算部31又は第2演算部71にリセット信号を出力する。なお、図11では、駆動制御部3及びヒューマンインタフェース制御部7のそれぞれのリセット端子にリレーの接点を設け、制御状態判断部9のパラレルポートの出力を用いてヒューマンインタフェース制御部7側及び駆動制御部3側の接点を制御するように構成されている。あるいは、リセット信号を、第1入出力部32又は第2入出力部72を介して第1演算部31又は第2演算部72に入力してもよい。リセット信号が入力されると、第1演算部31又は第2演算部72は、現在実行している制御プログラムを中止し、改めて第1記憶部4又は第2記憶部8から制御プログラムを読み出して実行(再起動)する。
このように、第2の実施の形態にれば、制御状態判断部9を設けて駆動制御部3及びヒューマンインタフェース制御部7で実行されている制御プログラムが正常に機能しているか否かを判断しているので、第1の実施の形態の場合と同様に、マイクロコンピュータなどの故障でなく、単に制御プログラムが正常に機能していないだけのときは、制御プログラムをリセットし再起動させることにより、自律移動装置1の業務をそのまま続行することができる。特に、駆動制御部3及びヒューマンインタフェース制御部7で実行されている制御プログラムが同時に機能停止になったときであっても、制御プログラムをリセットし再起動させることにより、自律移動装置1の業務をそのまま続行することができる。
なお、第2の実施の形態において、制御状態判断部9は、ノイズなどの影響を受けにくい場所に設置されることは言うまでもない。また、図3から図9に示す各フローチャートに示した動作例は、第2の実施の形態においてもそのまま応用できることは言うまでもない。
さらに、第1及び第2の実施の形態において、駆動制御部3における制御データや計測部5による計測データなどは、第1記憶部4に記憶されると共に、第2記憶部8にバックアップされるように構成してもよい。同様に、ヒューマンインタフェース制御部7における制御データや操作者により入力された指示データなどは、第2記憶部8に記憶されると共に、第1記憶部4にバックアップされるように構成してもよい。
本発明の第1の実施の形態に係る自律移動装置の構成を示すブロック図。 第1の実施の形態における駆動制御部及びヒューマンインタフェース制御部の概略構成をに示す図。 第1の実施の形態における駆動制御部による動作を示すフローチャート。 第1の実施の形態における駆動制御部による動作の第1変形例を示すフローチャート。 第1の実施の形態における駆動制御部による動作の第2変形例を示すフローチャート。 第1の実施の形態におけるヒューマンインタフェース制御部による動作を示すフローチャート。 第1の実施の形態におけるヒューマンインタフェース制御部による動作の変形例を示すフローチャート。 第1の実施の形態におけるヒューマンインタフェース制御部による動作の他の変形例を示すフローチャート。 第1の実施の形態におけるヒューマンインタフェース制御部による動作のさらに別の変形例を示すフローチャート。 本発明の第2の実施の形態に係る自律移動装置の構成を示すブロック図。 第2の実施の形態における駆動制御部、ヒューマンインタフェース制御部及び制御状態判断部の概略構成をに示す図。
符号の説明
1 自律移動装置
2 駆動部
3 駆動制御部
4 第1記憶部
5 計測部
6A、6B ヒューマンインタフェース部
7 ヒューマンインタフェース制御部
8 第2記憶部
9 制御状態判断部

Claims (7)

  1. 自律的に移動するための駆動部と、
    前記駆動部を制御するための駆動制御部と、
    自律的に移動可能な範囲の地図を記憶した地図記憶部と、
    移動の際、経路上及びその近傍に障害物が存在するか否かを検出する計測部と、
    操作者から指令の入力及び操作者に対して自律移動装置の状態を表示するためのヒューマンインタフェース部と、
    前記ヒューマンインタフェース部を制御するためのヒューマンインタフェース制御部とを備え、
    前記駆動制御部及び前記ヒューマンインタフェース制御部は、それぞれ制御プログラムの実行中に略一定の周期で所定の信号を出力し、
    前記駆動制御部は、前記ヒューマンインタフェース制御部から出力される信号をモニタし、前記ヒューマンインタフェース制御部で実行されている制御プログラムが正常に機能しているか否かを判断し、
    前記ヒューマンインタフェース制御部は、前記駆動制御部から出力される信号をモニタし、前記駆動制御部で実行されている制御プログラムが正常に機能しているか否かを判断し、
    前記駆動制御部又は前記ヒューマンインタフェース制御部で実行されている制御プログラムが正常に機能していないときに、その正常に機能していない制御プログラムをリセットして、再起動させることを特徴とする自律移動装置。
  2. 自律的に移動するための駆動部と、
    前記駆動部を制御するための駆動制御部と、
    自律的に移動可能な範囲の地図を記憶した地図記憶部と、
    移動の際、経路上及びその近傍に障害物が存在するか否かを検出する計測部と、
    操作者から指令の入力及び操作者に対して自律移動装置の状態を表示するためのヒューマンインタフェース部と、
    前記ヒューマンインタフェース部を制御するためのヒューマンインタフェース制御部と、
    前記駆動制御部及び前記ヒューマンインタフェース制御部で実行されている制御プログラムが正常に機能しているか否かを判断する制御状態判断部を備え、
    前記駆動制御部又は前記ヒューマンインタフェース制御部で実行されている制御プログラムは、それぞれ所定のルーチンを繰り返すごとに出力される所定の信号を出力し、
    前記制御状態判断部は、前記駆動制御部及び前記ヒューマンインタフェース制御部から出力される信号をモニタし、前記駆動制御部又はび前記ヒューマンインタフェース制御部から出力される信号が正常に機能していないと判断したときに、その制御プログラムをリセットし、再起動させることを特徴とする自律移動装置。
  3. 前記ヒューマンインタフェース制御部で実行されている制御プログラムが正常に機能していないと判断すると、前記駆動制御部は、前記駆動部を制御して、前記地図記憶部に記憶されている地図上のあらかじめ設定された場所又は前記計測部により障害物の存在が検出されていない場所に移動して、前記ヒューマンインタフェース制御部で実行されている制御プログラムをリセットして、再起動させることを特徴とする請求項1又は請求項2に記載の自律移動装置。
  4. 前記ヒューマンインタフェース制御部で実行されている制御プログラムが再起動された後、前記駆動制御部は、前記ヒューマンインタフェース制御部に対して、前記制御プログラムが正常に機能しなくなる直前の状態に復旧させるために、所定の信号又はデータを出力することを特徴とする請求項1乃至請求項3のいずれかに記載の自律移動装置。
  5. 前記駆動制御部で実行されている制御プログラムが正常に機能していないと判断すると、前記ヒューマンインタフェース制御部は、前記駆動部への電源供給を遮断して移動を停止させると共に、前記駆動制御部で実行されている制御プログラムをリセットして、再起動させることを特徴とする請求項1又は請求項2に記載の自律移動装置。
  6. 前記駆動制御部で実行されている制御プログラムが再起動された後、前記ヒューマンインタフェース制御部は、記憶している最終位置データを前記駆動制御部に出力し、前記駆動制御部は前記最終位置データを用いて、前記地図記憶部に記憶されている地図上における自己の現在位置を特定することを特徴とすることを特徴とする請求項5に記載の自律移動装置。
  7. 前記駆動制御部で実行されている制御プログラムが再起動された後、前記駆動制御部は、前記計測部による計測結果と前記特定された地図上における自己の現在位置を照合し、現在位置を修正することを特徴とする請求項6に記載の自律移動装置。
JP2003389210A 2003-11-19 2003-11-19 自律移動装置 Expired - Lifetime JP4096866B2 (ja)

Priority Applications (1)

Application Number Priority Date Filing Date Title
JP2003389210A JP4096866B2 (ja) 2003-11-19 2003-11-19 自律移動装置

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
JP2003389210A JP4096866B2 (ja) 2003-11-19 2003-11-19 自律移動装置

Publications (2)

Publication Number Publication Date
JP2005149376A true JP2005149376A (ja) 2005-06-09
JP4096866B2 JP4096866B2 (ja) 2008-06-04

Family

ID=34696026

Family Applications (1)

Application Number Title Priority Date Filing Date
JP2003389210A Expired - Lifetime JP4096866B2 (ja) 2003-11-19 2003-11-19 自律移動装置

Country Status (1)

Country Link
JP (1) JP4096866B2 (ja)

Cited By (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2008105109A (ja) * 2006-10-23 2008-05-08 Matsushita Electric Works Ltd 駆動制御装置、ロボットコントローラおよび自律移動装置
JP2008107926A (ja) * 2006-10-23 2008-05-08 Matsushita Electric Works Ltd 駆動制御装置、ロボットコントローラおよび自律移動装置
KR20100068588A (ko) * 2008-12-15 2010-06-24 삼성전자주식회사 로봇 및 그 복구 방법
WO2022254967A1 (ja) * 2021-06-04 2022-12-08 株式会社日立製作所 自動搬送車両制御システム及び自動搬送車両制御方法

Cited By (5)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2008105109A (ja) * 2006-10-23 2008-05-08 Matsushita Electric Works Ltd 駆動制御装置、ロボットコントローラおよび自律移動装置
JP2008107926A (ja) * 2006-10-23 2008-05-08 Matsushita Electric Works Ltd 駆動制御装置、ロボットコントローラおよび自律移動装置
KR20100068588A (ko) * 2008-12-15 2010-06-24 삼성전자주식회사 로봇 및 그 복구 방법
KR101627132B1 (ko) * 2008-12-15 2016-06-13 삼성전자 주식회사 로봇 및 그 복구 방법
WO2022254967A1 (ja) * 2021-06-04 2022-12-08 株式会社日立製作所 自動搬送車両制御システム及び自動搬送車両制御方法

Also Published As

Publication number Publication date
JP4096866B2 (ja) 2008-06-04

Similar Documents

Publication Publication Date Title
WO2021128974A1 (zh) 一种自动驾驶控制系统、控制方法及设备
US9278451B2 (en) Robot system and method for controlling robot system
AU2010245237B2 (en) Position monitoring system for a mobile machine
KR100352023B1 (ko) 페일세이프기구
JP2014176933A (ja) ロボットシステム、及び、ロボットシステムの制御方法
WO2019131002A1 (ja) 車両制御装置および電子制御システム
US20160089787A1 (en) Robot controller
JP6506199B2 (ja) 工作機械
JP2017215973A (ja) 車載用電子機器の制御装置及び制御方法
JP2007301680A (ja) ロボットアーム診断装置
JP2006321001A (ja) 自律移動ロボット及びその移動状況記録システム
JP4096866B2 (ja) 自律移動装置
JP2014213400A (ja) ロボット装置及びロボット装置の制御方法
CN109131551B (zh) 自动转向控制装置
US11717968B2 (en) Robot control device, robot control method, and collaborative operation unit
JP2007265103A (ja) ロボット制御装置
JP2018024490A (ja) エレベータシステム
KR20080053085A (ko) 이동 로봇의 이동제어 시스템
JP4980947B2 (ja) 制御システム及び制御方法
JP4951849B2 (ja) ロボット管理システム
JP4973342B2 (ja) 無人搬送車システムにおける情報送信方法
CN110370932B (zh) 安全供电装置和方法
US20220126448A1 (en) Safety monitoring system and method for diagnosing abnormality of the same in a robot
JP2023160094A (ja) 無人搬送車用制御装置、及び無人搬送車
JP2008105109A (ja) 駆動制御装置、ロボットコントローラおよび自律移動装置

Legal Events

Date Code Title Description
A621 Written request for application examination

Free format text: JAPANESE INTERMEDIATE CODE: A621

Effective date: 20060516

A977 Report on retrieval

Free format text: JAPANESE INTERMEDIATE CODE: A971007

Effective date: 20070824

A131 Notification of reasons for refusal

Free format text: JAPANESE INTERMEDIATE CODE: A131

Effective date: 20070828

A521 Request for written amendment filed

Free format text: JAPANESE INTERMEDIATE CODE: A523

Effective date: 20071029

A131 Notification of reasons for refusal

Free format text: JAPANESE INTERMEDIATE CODE: A131

Effective date: 20071120

A521 Request for written amendment filed

Free format text: JAPANESE INTERMEDIATE CODE: A523

Effective date: 20080121

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: 20080219

A61 First payment of annual fees (during grant procedure)

Free format text: JAPANESE INTERMEDIATE CODE: A61

Effective date: 20080303

R150 Certificate of patent or registration of utility model

Free format text: JAPANESE INTERMEDIATE CODE: R150

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

Free format text: PAYMENT UNTIL: 20110321

Year of fee payment: 3

S533 Written request for registration of change of name

Free format text: JAPANESE INTERMEDIATE CODE: R313533

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

Free format text: PAYMENT UNTIL: 20110321

Year of fee payment: 3

R350 Written notification of registration of transfer

Free format text: JAPANESE INTERMEDIATE CODE: R350

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

Free format text: PAYMENT UNTIL: 20120321

Year of fee payment: 4

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

Free format text: PAYMENT UNTIL: 20120321

Year of fee payment: 4

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

Free format text: PAYMENT UNTIL: 20130321

Year of fee payment: 5