(57)【要約】【課題】  モーションコントローラに搭載されたＣＰＵの省電力モードを利用することで、低消費電力化を実現するモーションコントロールシステムとその制御方法を提供することを目的とする。【解決手段】モーションコントローラに、ステータスと応答時間の関係を設定した応答時間テーブルと、ＣＰＵを省電力モードへの切り替える最低プライオリティの省電力タスクを設け、上位ＰＣからのコマンドの応答時間を、応答時間テーブルに沿って変化させることで、省電力タスクを起動しＣＰＵを省電力モードへ切り替える。【選択図】    図２
2010218530.tif 000002
【特許請求の範囲】
【請求項１】
サーボモータと、サーボモータの制御を行うサーボドライブと、センサやスイッチ等の外部入力及び表示灯などの外部出力を制御するＩ／Ｏと、複数台の前記サーボドライブおよびＩ／Ｏを制御するモーションコントローラからなるモーションコントロールシステムにおいて、
前記モーションコントローラは、上位ＰＣと第１のネットワークにて接続され、前記モーションコントローラは、第１のネットワークにおいて固有の機器番号にて管理され、
前記モーションコントローラは、前記サーボドライブおよび前記Ｉ／Ｏと第２のネットワークにて接続され、前記サーボドライブや前記Ｉ／Ｏは、第２のネットワークにおいて固有の機器番号にて管理され、
前記モーションコントローラは、ＣＰＵコアと内蔵周辺機器へのクロック供給を停止するモードやＣＰＵ内部のクロックジェネレータを停止するモード等の省電力モードを有するＣＰＵを搭載し、
前記ＣＰＵで動作する前記モーションコントローラのタスクとして、優先順位が一番低い省電力管理タスクを備え、
他に実行すべきタスクがないために前記省電力管理タスクが起動されると、前記ＣＰＵを省電力モードに切り替え、外部からの割込みによって前記ＣＰＵを省電力モードから復帰させることを
特徴とするモーションコントロールシステム。
【請求項２】
前記上位ＰＣからの指令により、前記省電力管理タスクを起動させ、省電力モードへの移行と復帰を行えるようにしたことを特徴とする、請求項１記載のモーションコントロールシステム。
【請求項３】
前記モーションコントロールシステムのステータスに応じて、前記上位ＰＣからの指令に対する応答時間を変化させ、前記省電力管理タスクによって前期ＣＰＵが省電力モードになる時間を長くしたことを特徴とする、請求項１記載のモーションコントロールシステム。
【請求項４】
前記モーションコントロールシステムのステータスに応じた、前記上位ＣＰＵからの指令に対する応答時間を応答時間設定テーブルとして前記モーションコントローラに持つ
ことを特徴とする、請求項３記載のモーションコントロールシステム。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、分散配置型モーションコントロールシステム装置に関する。
【背景技術】
【０００２】
従来の移動体ロボットは、各関節駆動のためのアクチュエータを分散配置し、バス接続により各軸を制御している（例えば、特許文献１参照）。なお従来の移動体ロボットは、図９に示すように部位毎にユニット化しており腕部、右脚部、左脚部、体幹部、頭部などに分けられており、思考制御モジュール２００や運動制御モジュール３００といった制御モジュール２００／３００からの指令により各ユニットに内蔵されたそれぞれのアクチュエータの動作を制御し、ロボットとしての動作を実現している。
また、従来の移動体ロボットは、自身の駆動用バッテリの残量を監視する電源管理コントローラ５０１と電源の給電・遮断部５０２を持ち、電源管理コントローラ５０１にてバッテリ５１２の残量を常時監視し、バッテリ状態に合わせてユニット毎に電源の供給・遮断を制御している。その動作は以下の通り。
図１０のフローチャートに示すように、従来の移動体ロボットは、ステップＳ１１にてバッテリ電圧の監視を行い、バッテリ電圧が低下した場合は、姿勢センサを使用するかの判断を行う（Ｓ１２）。使用しない場合は、図９の給電・遮断部により姿勢センサへの電源供給を停止し（Ｓ１３）、次の電源監視ステップ（Ｓ１４）に移行する。姿勢センサを使用する場合は、電源供給を維持したままステップＳ１４に移行する。ステップＳ１４にて再度電源監視を行い、電圧低下が改善されていれば、次の動作（Ｓ２３）に移行する。電圧低下が改善されなければ、給電・遮断部により頭部ユニットの電源供給を停止し（Ｓ１５）、その後頭部ユニットへの制御信号も停止し（Ｓ１６）、次の電源監視ステップ（Ｓ１７）に移行する。ステップＳ１７にて再度電源監視を行い、電圧低下が改善されていれば、次の動作（Ｓ２３）に移行する。電圧低下が改善されなければ、給電・遮断部により腕部ユニットの電源供給を停止し（Ｓ１８）、その後腕部ユニットへの制御信号も停止し（Ｓ１９）、次の電源監視ステップ（Ｓ２０）に移行する。ステップＳ２０にて再度電源監視を行い、電圧低下が改善されていれば、次の動作（Ｓ２３）に移行する。電圧低下が改善されなければ、給電・遮断部により体幹部ユニットの電源供給を停止し（Ｓ２１）、その後体幹部ユニットへの制御信号も停止し（Ｓ２２）、次の電源監視ステップ（Ｓ２３）に移行する。
また、図１１のフローチャートでは、ステップＳ３１にてバッテリ残量が少ないと判断した場合、制御モジュール２００／３００は、少なくとも１つの駆動部ユニットにおいて、駆動制御に使用する制御式の制御パラメータを変更する（Ｓ３２）。次に、制御モジュール２００／３００は、バッテリの残存容量が所定値を下回ったという通知を電力管理コントローラ５０１から受け取るまで、再び待機する（Ｓ３３）。そして、バッテリの残存容量が所定値を下回ったという通知を受け取ると、制御モジュール２００／３００は、少なくとも１つのユニットにおいて、動作目標位置を変更する（Ｓ３４）。ここで言う動作目標位置とは、例えば、バッテリ５１２の充電サービスを提供する充電ステーション、あるいは、ＡＣアダプタ５１１の装着場所であるＡＣコンセントである。動作目標位置の変更は、移動ロボット１００が実行中の作業を一時中断して待避することを意味する。なお、電源が復活して、作業の再開を行うために、中断時の実行状態を保存しておくことが好ましい。次に、制御モジュール２００／３００は、バッテリの残存容量が所定値を下回ったという通知を電力管理コントローラ５０１から受け取るまで、再び待機する（Ｓ３５）。そして、バッテリの残存容量が所定値を下回ったという通知を受け取ると、制御モジュール２００／３００は、少なくとも１つの駆動部ユニットの動作を停止する（Ｓ３６）。動作を停止すべき駆動部ユニットは、センサ、頭部、腕部、体幹部などのように、脚部ユニットによる歩行などの脚式動作に比較的影響の少ない部位であることが好ましい。なお、頭部ユニットへの電力遮断は、駆動アクチュエータだけでなく、頭部に搭載された画像入力装置２５１，音声入力装置２５２，音声出力装置２５３，通信インターフェース２５４の電力遮断を含んでいてもよい。また、各駆動部ユニットへの電力遮断は、各部に配備された各種センサ類の停止を含んでいてもよい。次に、制御モジュール２００／３００は、バッテリの残存容量が所定値を下回ったという通知を電力管理コントローラ５０１から受け取るまで、再び待機する（Ｓ３７）。そして、バッテリの残存容量が所定値を下回ったという通知を受け取ると、制御モジュール２００／３００は、外部の電源供給装置に接続する（Ｓ３８）。ここで言う外部の電源供給装置とは、例えば、充電ステーション、ＡＣアダプタ５１１の装着場所であるＡＣコンセント、スペア・バッテリなどである。
【特許文献１】特開２００１-３２８０９１号公報（第１４頁、図５  及び第１５項、図６  及び第１６項、図７）
【発明の開示】
【発明が解決しようとする課題】
【０００３】
特開２００１-３２８０９１号公報は、電力管理コントローラ５０１にてバッテリの状態を常に監視しており、バッテリ電圧が所定の値を下回った際にその情報を制御モジュール２００／３００に通知し、制御モジュール２００／３００はバッテリの残存容量が所定値を下回った場合に、ユニット毎に電源供給の停止、制御パラメータの変更、動作目標位置の変更を行ない、通常の作業を中断してバッテリ電圧低下時の消費電力の低減を行いながら、外部の電源供給装置に移動するなどの処理を行っている。しかしこの場合、消費電力を低減するのは、バッテリの残存容量が少なくなってからであるため、通常の動作状態にはおいては、バッテリの消費を抑えられないという問題があった。
また、特開２００１-３２８０９１号公報では、ユニット毎に給電を遮断し、アクチュエータの電源を遮断するため、ロボットの動作を再会させる場合には、電源投入時における各機器内のデバイス初期化およびバスＩ／Ｆやネットワークを介したシステムの初期化といった処理が必要となり、再起動に時間がかかるという問題があった。
そこで、このようなロボットを構成するモーションコントロールシステム内の制御機器に使用している市販のＣＰＵの中には、低消費電力の機能として省電力モードを有するものがある。ここで省電力モードとは、ＣＰＵ内部のクロックジェネレータの動作は継続するが、ＣＰＵコアと内蔵周辺機能へのクロック供給が停止するものや、クロックジェネレータごと停止するものがある。また、ＣＰＵの省電力モードはソフトウェアにて移行することができ、外部からの割込み検出により復帰することができる。なお、ＣＰＵの省電力モード時は、ＣＰＵの内蔵ＲＡＭは省電力モード移行前の状態を保持したままで、プログラムの実行が停止した状態となる。このように省電力モード時は、ＣＰＵ内部のクロック停止により消費電力を大幅に削減でき、省電力モード解除時は、内蔵ＲＡＭの状態が保持されているので、即、通常動作へ復帰することができる。
本発明はこのような問題点に鑑みてなされたものであり、省電力モードを有するＣＰＵを使用した制御機器にてモーションコントロールシステムを構成し、バッテリの残存容量の減少時だけではなく、ロボットの通常動作においても使用していないモーションコントローラのＣＰＵを省電力モードに移行することで、低消費電力を実現するモーションコントロールシステムとその制御方法を提供することを目的とする。
【課題を解決するための手段】
【０００４】
上記問題を解決するため、本発明は、次のように構成したものである。
請求項１に記載の発明は、サーボモータと、サーボモータの制御を行うサーボドライブと、センサやスイッチ等の外部入力及び表示灯などの外部出力を制御するＩ／Ｏと、複数台の前記サーボドライブおよびＩ／Ｏを制御するモーションコントローラからなるモーションコントロールシステムにおいて、前記モーションコントローラは、上位ＰＣと第１のネットワークにて接続され、前記モーションコントローラは、第１のネットワークにおいて固有の機器番号にて管理され、前記モーションコントローラは、前記サーボドライブおよび前記Ｉ／Ｏと第２のネットワークにて接続され、前記サーボドライブや前記Ｉ／Ｏは、第２のネットワークにおいて固有の機器番号にて管理され、前記モーションコントローラは、ＣＰＵコアと内蔵周辺機器へのクロック供給を停止するモードやＣＰＵ内部のクロックジェネレータを停止するモード等の省電力モードを有するＣＰＵを搭載し、前記ＣＰＵで動作する前記モーションコントローラのタスクとして、優先順位が一番低い省電力管理タスクを備え、他に実行すべきタスクがないために前記省電力管理タスクが起動されると、前記ＣＰＵを省電力モードに切り替え、外部からの割込みによって前記ＣＰＵを省電力モードから復帰させることを特徴としている。
請求項２に記載の発明は、請求項１記載の省電力処理において、前記上位ＰＣからの指令により、前記省電力管理タスクを起動させ、省電力モードへの移行と復帰を行えるようにしたことを特徴としている。
請求項３に記載の発明は、請求項１記載の省電力処理において、前記モーションコントロールシステムのステータスに応じて、前記上位ＰＣからの指令に対する応答時間を変化させ、前記省電力管理タスクによって前期ＣＰＵが省電力モードになる時間を長くしたことを特徴としている。
請求項４に記載の発明は、請求項３記載の省電力処理において、前記モーションコントロールシステムのステータスに応じた、前記上位ＣＰＵからの指令に対する応答時間を応答時間設定テーブルとして前記モーションコントローラに持つことを特徴としている。
【発明の効果】
【０００５】
請求項１記載の発明によると、他に実行するタスクがない場合、省電力管理タスクによってＣＰＵを省電力モードにすることが可能になり、モーションコントロールシステムの消費電力を低減することが可能になる。
請求項２記載の発明によると、上位ＰＣからの指令によって必要な時にモーションコントロールシステムのＣＰＵを省電力モードにすることが可能になり、上位ＰＣの判断でモーションコントロールシステムの消費電力の低減を行うことが可能になる。
請求項３記載の発明によると、モーションコントロールシステムのステータスに応じて、上位ＰＣからの指令に対する応答時間周期を変更することが可能になり、モーションコントロールシステムの消費電力を削減することができる。
請求項４記載の発明によると、モーションコントロールシステムのステータスに応じた
上位ＰＣへの応答時間を応答時間設定セーブルとして持つことにより、ステータスに応じてＣＰＵが省電力モードになる時間を長くすることが可能になり、モーションコントロールシステムの消費電力を削減することができる。
【図面の簡単な説明】
【０００６】
【図１】本発明の実施例を表すモーションコントロールシステムのブロック図
【図２】本発明の実施例を表す
【図３】本発明の実施例を表す省電力モードへの移行フローチャート
【図４】本発明の実施例を表す省電力モードからの復帰フローチャート
【図５】本発明の実施例を表す応答時間テーブルの処理フローチャート
【図６】本発明の実施例を表す応答時間テーブルの構成
【図７】本発明の実施例を表すタイムチャート図
【図８】本発明の実施例を表すアプリケーション例
【図９】従来の構成を表すブロック図
【図１０】従来の構成を表すフローチャート１
【図１１】従来の構成を表すフローチャート２
【符号の説明】
【０００７】
１          モーションコントローラ
１１        ＣＰＵ
１２        ＩＥＥＥ１３９４通信ＬＩＮＫチップ
１３        ＩＥＥＥ１３９４通信ＰＨＹチップ
１４        ＥｔｈｅｒＮｅｔ通信ＰＨＹチップ
２          ＩＯ
２１        ＣＰＵ
２２        ＩＥＥＥ１３９４通信ＬＩＮＫチップ
２３        ＩＥＥＥ１３９４通信ＰＨＹチップ
２４        Ｉ／Ｏ制御回路
３          サーボドライブ
３１        ＣＰＵ
３２        ＩＥＥＥ１３９４通信ＬＩＮＫチップ
３３        ＩＥＥＥ１３９４通信ＰＨＹチップ
３４        サーボ制御ＩＣ
３５        モータ駆動回路
３６        エンコーダＩ／Ｆ回路
４          上位ＰＣ
５          モータ
５１        エンコーダ
【発明を実施するための形態】
【０００８】
以下、本発明の実施の形態について図１を参照して説明する。
【実施例】
【０００９】
第１のネットワークをＥｔｈｅｒＮｅｔ、第２のネットワークをＩＥＥＥ１３９４通信として説明する。
図１の１はモーションコントローラ、２はＩＯ、３はサーホ゛ト゛ライフ゛でモーションコントローラ、ＩＯ、サーボにより構成されるシステムをモーションコントロールシステムといい、モーションコントロールシステムは上位ＰＣ４にて統括コントロールされる。モーションコントローラ１とＩＯ２およびサーボドライブ３は、ＩＥＥＥ１３９４通信により接続され、ＩＯ２およびサーホ゛ト゛ライフ゛３は複数台接続可能であり、システム内で固有の機器番号を持ちモーションコントローラ１が管理している。上位ＰＣ４とモーションコントローラ１はＥｔｈｅｒＮｅｔで接続され、モーションコントローラ１は複数台接続可能であり、固有の機器番号を持ち上位ＰＣが管理している。
モーションコントローラ１において、１１はＣＰＵコアと内蔵周辺機能へのクロック供給を停止するモードやＣＰＵ内部のクロックジェネレータを停止するモード等の省電力モードを有するＣＰＵ、１２は１３９４通信用ＬＩＮＫチップ、１３は１３９４通信用ＰＨＹチップ、１４はＥｔｈｅｒＮｅｔ通信用ＰＨＹおよびＬＩＮＫチップである。
ＩＯ２において、２１はＣＰＵコアと内蔵周辺機能へのクロック供給を停止するモードやＣＰＵ内部のクロックジェネレータを停止するモード等の省電力モードを有するＣＰＵ、２２は１３９４通信用ＬＩＮＫチップ、２３は１３９４通信用ＰＨＹチップ、２４は入出力の制御を行うＩ／Ｏ制御回路である。
サーホ゛ト゛ライフ゛３において、３１はＣＰＵコアと内蔵周辺機能へのクロック供給を停止するモードやＣＰＵ内部のクロックジェネレータを停止するモード等の省電力モードを有するＣＰＵ、３２は１３９４通信用ＬＩＮＫチップ、３３は１３９４通信用ＰＨＹチップ、３４はマイクロプログラムを内蔵し、ＰＷＭ波形を生成する機能を持つサーボ制御ＩＣ、３５はサーボモータ５を駆動する半導体スイッチング素子で構成されたモータ駆動回路、３６はエンコーダ５１からのフィードバックを処理するエンコーダＩ／Ｆ回路である。
本発明が従来技術と異なる部分は、ＣＰＵが省電力モードを有する部分である。ＣＰＵ１１、２１、３１は、低消費電力の機能として省電力モードを有している。ここで省電力モードとは、ＣＰＵの省電力モードであり、ＣＰＵコアと内蔵周辺機能へのクロック供給を停止するモードやＣＰＵ内部のクロックジェネレータを停止するモードである。また、このときのＣＰＵの内蔵ＲＡＭの状態は省電力モード移行前の状態を保持し、プログラムの実行が停止した状態となる。このように省電力モード時は、クロック停止により省電力化（ＣＰＵコアの消費電流をほぼ０Ａに削減）を実現でき、省電力モード解除時は、ＣＰＵの内蔵ＲＡＭの状態が保持されているので、電源投入時の初期化処理などを必要とせず、即、通常動作へ復帰することができる。
本発明では、前記ＣＰＵの省電力動作モードを使用したモーションコントロールシステムであり、図２に示すように、上位ＰＣからのモーションコントローラへのコマンド発行に対する応答時間をモーションコントロールシステムのステータスに応じて設定できる、５応答時間テーブルの設定によりＣＰＵ負荷を軽減させる。また、ＣＰＵが実行すべき処理が無いときには、ＣＰＵを省電力モードへ移行させる。
前記応答時間テーブルに設定する値は、上位ＰＣから設定可能なモーションコントローラのパラメータにしても良い。また、応答時間テーブルに設定された値を使用するかどうかの変更できる。これにより、省電力モードを一時的に使用しない選択も可能となる。
図２の例では、上位ＰＣの接続されるモーションコントローラシステムはサーボオフ状態のものと、メンテナンスモードのものがある。５応答時間テーブルへは、サーボオフ状態時とメンテナンスモード時は、通常より遅い応答時間になるように設定しておくことで、サーボオフ状態になったときや、メンテナンス状態になったときには、応答時間を調整する。
【００１０】
次に図３を用いて、省電力モードへの移行フローを説明する。
省電力モードへの移行は、モーションコントローラ内の最低プライオリティのタスクで実行される。最低プライオリティタスクが起動されると、Ｓ３０１にて、ＣＰＵの割り込み禁止を行う。次に、Ｓ３０２において、ＣＰＵの割り込みマスクレジスタをメモリへセーブする。これは、Ｓ３０３において、ＣＰＵを復帰させる割り込みを限定したい場合、一時的に、割り込みマスクレジスタを変更するために必要である。モーションコントローラは、さまざまな割り込み処理が存在する。イーサネットの割りこみや、定周期処理を行うためのリアルタイムクロック割り込みなどが存在する。これらの割り込みのうち、どの割り込みで、ＣＰＵを省電力モードから復帰されるのかを選択可能である。たとえば、イーサネットの割り込みだけで復帰させる場合は、上位からのコマンドが発行されるまで復帰しない。
次にＳ３０４において、ＣＰＵが省電力モード中でもＳＤＲＡＭに保存されたデータが保持されるように、ＳＤＲＡＭをセルフリフレッシュモードへ切り替える。
ＳＤＲＡＭのセルフリフレッシュモードは、ＣＰＵがＳＤＲＡＭをアクセスした時点で、自動的に解除される。最後に、Ｓ３０５において、ＣＰＵの省電力モードコマンドを使用して、ＣＰＵを省電力モードへ移行させる。これ以降、指定した割りこみが発生するまで、ＣＰＵが省電力モードとなる。
（イーサネットは登録商標です）
次に図４を用いて、省電力モードからの復帰フローを説明する。
復帰処理は、図３のフローチャートで設定した割り込みが発生した時に起動される。
Ｓ４０１では、割り込みコントローラの割り込みマスクレジスタ値を復帰する。これは、図３のフローチャートで、割り込みコントローラのマスクレジスタを変更した場合に、正常なマスクレジスタ値に復帰させる処理である。
Ｓ４０２では、ＣＰＵの割り込み禁止状態を解除する。
次に、上位ＰＣからの要求を、モーションコントローラの応答時間テーブルに応じた変更処理について、図５と図６にて説明する。
図６は、応答時間設定テーブルの構成である。応答時間設定テーブルには、モーションコントロールシステムのステータスと、そのステータス時の応答時間係数で構成される。応答時間係数は、応答時間テーブルを使用しない場合に対して、何倍の応答時間をするかを設定する係数である。たとえば、全軸サーボオフ中は、応答時間係数が４であるので、応答時間が通常10msecで設計されていた場合の応答時間は、通常の４倍の４０msecとなる。本説明では、応答時間係数として説明をしているが実際の応答時間を設定してもよい。
図５は、応答時間テーブルを参照して、応答時間を設定する処理フローである。
上位ＰＣからコマンドがモーションコントローラへ発行された場合、コマンド解析部の処理を行う。まず、Ｓ５０１で応答時間の初期値を設定する。次に、Ｓ５０２において、応答時間テーブルが有効かどうかのチェックを行う。ここで、応答時間テーブルが無効であれば、Ｓ５０６へ移行し、応答時間の初期値で、スリープ処理を行う。応答時間テーブルが有効であれば、Ｓ５０３へ移行する。Ｓ５０３では、応答時間テーブル数分のループを繰り返し、モーションコントロールシステムの現在のステータスが応答時間テーブル内のステータスに一致しているかどうかをチェックする。一致していれば、一致したステータスに対応する応答時間係数を乗じた値を、応答時間に設定しＳ５０６へ移行する。現在のモーションコントロールシステムのステータスが、応答時間テーブル内のステータスと一致しなければ、応答時間は、Ｓ５０１で設定された初期値の応答時間のまま、Ｓ５０６へ移行する。
【００１１】
次に、図７にて、タイムチャートを使用して本発明の効果を説明する。
モーションコントローラには、７０１定周期割り込みがあり、この割り込みを基準として、定周期で実行すべき処理タスク（７０２定周期タスク１や、７０２定周期タスク２）が起動される。また、上位ＰＣからの通信を受けた際に発生する割り込みとして、７０６通信割り込みがある。この場合、通信割り込みが発生すると、上位からの要求に応じてコマンドの解析処理を行い、前記応答時間テーブルに設定された応答時間分スリープし、上位ＰＣへの送信処理を行う。上位ＰＣは、モーションコントローラからの応答があると次の要求を送信する。７０５最低プライオリティタスクでは、モーションコントローラとして実行すべき処理がない場合に動作するタスクである。このタスクでは、省電力モードへ移行するので、次の割り込みの発生がない限り、モーションコントローラのＣＰＵは省電力モードを保持する。したがって、前記応答時間テーブルに記載されたステータスに対応する応答時間が短い場合は、省電力モードの効果を押さえる代りに上位からの通信周期が早くできる。一方、応答時間が長い場合は、上位からの通信周期を遅くすることで、省電力モードの効果を向上できる。
このように、上位ＰＣからのステータス取得の応答時間をモーションコントローラ内の応答時間テーブルに応じて調整することで,ＣＰＵを省電力モードとする調整できることにより、こまめに消費電力を削減可能なモーションコントロールシステムが容易に構築できる。
【００１２】
次に、図８にて本発明のモーションコントロールシステムをロボットシステムに適用した際の実施例を説明する。
図８は、上半身に双腕を持ち、移動手段として車輪を持つ案内ロボットのシステム構成例である。本案内ロボットは、１つのコントローラですべてのモータの動作を同時に指令するためには、コントローラのＣＰＵパワーが不足するので、それぞれ、右腕をコントロールするためのモーションコントローラと、左腕をコントロールするためのモーションコントローラ、また、車輪をコントロールするためのモーションコントローラの３つのモーションコントローラで構成されている。モーションコントローラは、上位ＰＣとイーサネットで接続されている。
上位ＰＣでは、お客の存在をセンサ認識したり、お客の要求を認識して案内を行うための動作経路を作成したりする。そして実際に案内ロボットの動作をイーサネット経由で各部位のモーションコントローラへ指令し、腕や車輪が動作を行うことで、総合的に案内ロボットの動作を実現する。
案内ロボットは、案内する対象となるお客がいない場合は、上位ＰＣのみの動作によりお客がいるかどうかを監視するだけで、両腕の動作や、車輪による案内ロボットの移動動作を行う必要は無い。このため、上位ＰＣは、両腕や車輪を制御するモーションコントローラへの動作指令を発行することはない。そのため、このような場合モーションコントローラでは、上位ＰＣからの通信が発生しなくなり、最低プライオリティタスクである省電力管理タスクが頻繁に動作できるので、自動的にＣＰＵが省電力モード中の時間が増加し、モーションコントローラの消費電力を抑えることができる。
また、案内ロボットがお客に対応する際は、お客に対して、腕を動作させて進むべき方向を示したり、お客にパンフレットなどの物品を渡したりすることがある。この場合においても、動作している腕に対してのみ指令が必要になるので、腕を制御するモーションコントローラの指令やモーションコントローラの現在状態を把握するための情報の取得は行うが、動作していないもう片方の腕と車輪用のモーションコントローラについては、上位ＰＣからの通信は発生しない。したがって、動作している腕用のモーションコントローラについては、省電力モードとなる時間は短くなるが、動作しない腕と車輪用のモーションコントローラは省電力動作を継続でき、必要最小限の処理以外は、ＣＰＵは省電力モードのままであり、最小限の電力消費で、お客への対応を行うことが可能となる。
また、実際に移動しながらお客を案内する際の動作例を説明する。例えば、お客を案内する際に、上半身は動作させずに、車輪部のモーションコントローラのみへ指令を行い目的地まで動作するような場合がある。この場合、上位ＰＣは、車輪部のモーションコントローラへの指令を行うが、両腕に関しては指令を行わないので、両腕のモーションコントローラのＣＰＵは必要最小限の処理実行中以外は省電力モードにできる。もし、両腕で何かを持ちながら車輪で移動するといった場合においても、通常は、腕を固定したまま、移動することになるので、やはり、腕用のモーションコントローラのＣＰＵは、必要最小限の処理実行中以外は省電力モードとなる。このように、サービスロボットのような分野では、一部のモーションコントローラが制御するサーボ（軸）が動作していない時間が多いという特徴があり、また、指令してから動き出すまでの時間が機敏でない場合が多く、ＣＰＵの動作をこまめに省電力モードとしても問題となることはない。
このように、本発明では、上位ＰＣからモーションコントローラへの指令を制御するだけで、モーションコントローラの省電力化が可能となるといえる。
また、バッテリの残容量状態を上位ＰＣが監視し、バッテリの残容量が一定以下となった場合は、モーションコントローラへの指令の周期を遅くすることで、バッテリの消費を抑制することなども可能となる。
【００１３】
次に、応答時間テーブルを使用した省電力の例について説明する。図６の応答時間テーブルには、サーボオフ時に、応答係数が４と設定されている。モーションプログラム停止中は２と設定されている。メンテナンスモード中は２と設定されている。
通常案内ロボットは、案内する人がいないときは、サーボオフ状態で待ち状態である。
この状態で上位ＰＣが各モーションコントローラへコマンドを発行した場合は、モーションコントローラは、上位ＰＣからの要求に対するレスポンスを通常の応答時間に対し、係数と乗算した時間で返す。例えば、図６の設定を例にとって説明する。通常の応答が１０msecであった場合、サーボオフ状態で応答係数が４となっているので、４０msecでの応答となる。したがって、モーションコントローラでは、４０msec以内で応答を返せばよいので、数msecで応答するための処理が完了しても、４０msec経過するまで、省電力管理タスク動作中はＣＰＵを省電力モードとすることで、電力の消費を抑制することができる。
また、案内ロボットにお客が訪れて、実際に案内ロボットが案内を開始する場合は、動作したい腕や車輪はサーボオンする必要がある。しかし、サーボオンまでは実行しているが、実際にモータへの指令はしていないモーションコントローラは、モーションプログラムの実行はしていない。この場合、上位ＰＣからのモーションコントローラへの指令に対するレスポンスは、通常の応答時間の２倍となっているので２０msecとなり、数msecで応答するための処理が完了しても、２０msec経過するまで、省電力管理タスク動作中はＣＰＵを省電力モードに移行させることで、電力の消費を抑制することができる。
本例では、40msecや20msecという比較的早い周期での応答例を示したが、案内ロボットは、お客を感知したあとに、腕や、車輪による移動を開始するのに１秒程度で開始できれば、お客からみて違和感がないと思われるので、１秒間隔の応答指令にしておくことで更なる省電力化が可能となる。
このように、上位ＰＣからの通信周期をモーションコントローラのステータスに応じてモーションコントローラのＣＰＵの省電力モードへの移行時間を調整できる。さらに、レスポンス時間が長いほど、モーションコントローラで実行すべき処理の負荷が軽減され、結果モーションコントローラの省電力モード時間が長くなり、消費電力削減の効果が大きくなる。
また、応答時間テーブルは、各モーションコントローラに存在し、モーションコントローラは、上位ＰＣの指令に対する応答時間を応答時間テーブルの情報を元に調整するので、上位ＰＣは各コントローラの状態を意識することなくＭＣシステムの省電力化が実現できる。
【図１】
2010218530.tif 000003
【図２】
2010218530.tif 000004
【図３】
2010218530.tif 000005
【図４】
2010218530.tif 000006
【図５】
2010218530.tif 000007
【図６】
2010218530.tif 000008
【図７】
2010218530.tif 000009
【図８】
2010218530.tif 000010
【図９】
2010218530.tif 000011
【図１０】
2010218530.tif 000012
【図１１】
2010218530.tif 000013