(57)【要約】【課題】アクチュエータにおける所望の期間における位置の変化の正確な検出を実現する。【解決手段】モータ制御部（２０）は、モータ（１５ａ）の所定時間間隔の位置情報を取得する位置確認部（２１）と、上記所定時間間隔の位置情報の差の絶対値を算出し、当該差の絶対値が所定の閾値より大きいか否かを判定する判定部（２２）とを備えている。【選択図】図１
2017196716.tif 000002
【特許請求の範囲】
【請求項１】
アクチュエータの位置情報の出力が可能な位置情報出力部から、或る第１時間での上記位置情報である第１位置情報と、当該第１時間から所定期間経過後の第２時間での上記位置情報である第２位置情報とを取得する位置確認部と、
上記第１位置情報と、上記第２位置情報との差の絶対値を算出し、当該差の絶対値が所定の閾値より大きいか否かを判定する判定部とを備えていることを特徴とするアクチュエータ制御装置。
【請求項２】
上記アクチュエータへの通電の開始と停止とを切り換えるアクチュエータ電源制御部を備え、
上記アクチュエータ電源制御部は、上記アクチュエータ制御装置が、上記アクチュエータの位置を検出する位置検出モードを実行する際、上記アクチュエータの通電を停止し、
上記判定部が、上記差の絶対値が上記所定の閾値より大きいと判定すると、
上記アクチュエータ電源制御部が上記アクチュエータへの通電を再開し、上記アクチュエータ制御装置は上記位置検出モードの実行を終了することを特徴とする請求項１に記載のアクチュエータ制御装置。
【請求項３】
上記アクチュエータへの通電の開始と停止とを切り換えるアクチュエータ電源制御部を備え、
上記アクチュエータ電源制御部は、上記アクチュエータ制御装置が、上記アクチュエータの位置を検出する位置検出モードを実行する際、上記アクチュエータの通電を停止し、
上記判定部が、上記差の絶対値が上記所定の閾値より大きいと判定した回数が所定回数を超えると、
上記アクチュエータ電源制御部が上記アクチュエータへの通電を再開することで、上記アクチュエータ制御装置は上記位置検出モードの実行を終了することを特徴とする請求項１に記載のアクチュエータ制御装置。
【請求項４】
上記判定部が、上記差の絶対値が上記所定の閾値以下と判定すると、
上記アクチュエータ制御装置は、所定期間だけ通電を停止し、当該所定期間経過後、通電を再開することを特徴とする請求項１〜３の何れか１項に記載のアクチュエータ制御装置。
【請求項５】
上記アクチュエータはモータであることを特徴とする請求項１〜４の何れか１項に記載のアクチュエータ制御装置。
【請求項６】
請求項１〜５の何れか１項に記載のアクチュエータ制御装置と、
上記アクチュエータと、
上記アクチュエータが配置された関節部とを備えていることを特徴とする自動機械。
【請求項７】
アクチュエータの位置情報の出力が可能な位置情報出力部から、或る第１時間での上記位置情報である第１位置情報と、当該第１時間から所定期間経過後の第２時間での上記位置情報である第２位置情報とを取得する位置情報確認ステップと、
上記第１位置情報と、上記第２位置情報との差の絶対値を算出し、当該差の絶対値が所定の閾値より大きいか否かを判定する判定ステップとを有することを特徴とするアクチュエータ制御方法。
【請求項８】
請求項１に記載のアクチュエータ制御装置としてコンピュータを機能させるためのアクチュエータ制御プログラムであって、上記判定部としてコンピュータを機能させるためのアクチュエータ制御プログラム。
【請求項９】
請求項８に記載のアクチュエータ制御プログラムを記録したコンピュータ読み取り可能な記録媒体。
【発明の詳細な説明】
【技術分野】
【０００１】
アクチュエータを制御するアクチュエータ制御装置、自動機械、アクチュエータ制御方法、アクチュエータ制御プログラム、及び、コンピュータ読み取り可能な記録媒体に関する。
【背景技術】
【０００２】
特許文献１には、各関節にサーボモータを備える多軸ロボットである自動機械が開示されている。当該自動機械は、サーボモータと、ブレーキ(無励磁作動式電磁ブレーキ)とを備えている。
【０００３】
自動機械の制御装置は、作業者による操作、又は、制御装置が接続されている上位コントローラからの指示に従って、監視モードへ移行する。この監視モードは、自動機械の駆動電源遮断状態における各サーボモータの回転位置を監視し、これにより、各サーボモータのブレーキ異常を検出するモードである。なお、監視モード中は、制御装置の特定の処理部にだけ電源が供給された状態（又は、低消費電力状態）となる。
【０００４】
上記制御装置において、監視モード時に、サーボ制御部とブレーキとへの電源供給が遮断されると、サーボモータとブレーキとは非制御状態となる。この監視モードへの移行時に、制御装置は、サーボモータの位置を基準エンコーダ値として記録する。そして、監視モード時に、自動機械の部位が重力や外力による位置ずれを起こした場合、サーボモータの回転位置が変化する。その変化量が閾値を超えた場合、制御装置の異常検出部が異常を検出し、制御装置が表示灯を点灯させることで、作業者に対して、ブレーキに異常が発生したことを認識させる。
【先行技術文献】
【特許文献】
【０００５】
【特許文献１】特開２００１２‐２１３８４４号公報（２０１２年１１月８日公開）
【発明の概要】
【発明が解決しようとする課題】
【０００６】
しかしながら、特許文献１の自動機械は、監視モードへの移行時にサーボモータの回転位置を基準エンコーダ値として記録し、当該基準エンコーダ値に対する変化量の積算値を閾値と比較することで異常を検出しているため、僅かな変化量が蓄積した場合であっても異常が報知されてしまう。
【０００７】
サーボ制御部等は、通常稼働モードに復帰したときに初期化されるが、サーボモータの回転位置の積算に期限は設けられていない。このため、例えば、遥か以前に微量回転した変化分まで回転位置の積算値として積算されてしまい、或る期間のサーボモータの回転位置の変化を検出したい場合には、特許文献１に開示された技術は不向きであった。
【０００８】
本発明は、前記の問題点に鑑みてなされたものであり、その目的は、アクチュエータの所望の期間における位置の変化の正確な検出を実現することにある。
【課題を解決するための手段】
【０００９】
上記の課題を解決するために、本発明の一態様に係るアクチュエータ制御装置は、アクチュエータの位置情報の出力が可能な位置情報出力部から、或る第１時間での上記位置情報である第１位置情報と、当該第１時間から所定期間経過後の第２時間での上記位置情報である第２位置情報とを取得する位置確認部と、上記第１位置情報と、上記第２位置情報との差の絶対値を算出し、当該差の絶対値が所定の閾値より大きいか否かを判定する判定部とを備えていることを特徴とする。
【００１０】
上記の課題を解決するために、本発明の一態様に係るアクチュエータ制御方法は、アクチュエータの位置情報の出力が可能な位置情報出力部から、或る第１時間での上記位置情報である第１位置情報と、当該第１時間から所定期間経過後の第２時間での上記位置情報である第２位置情報とを取得する位置情報確認ステップと、上記第１位置情報と、上記第２位置情報との差の絶対値を算出し、当該差の絶対値が所定の閾値より大きいか否かを判定する判定ステップとを有することを特徴とする。
【発明の効果】
【００１１】
本発明の一態様によれば、アクチュエータにおける所望の期間における位置の変化の正確な検出を実現するという効果を奏する。
【図面の簡単な説明】
【００１２】
【図１】本発明の実施形態１に係るロボットの構成を表すブロック図である。
【図２】本発明の実施形態１に係るロボットの外観を表す図である。
【図３】本発明の実施形態１に係るロボットのモータ制御部の処理の流れを表す図である。
【図４】本発明の実施形態１に係るロボットの主制御部の処理の流れを表す図である。
【図５】本発明の実施形態２に係るロボットの構成を表すブロック図である。
【図６】本発明の実施形態２に係るロボットのモータ制御部の処理の流れを表す図である。
【図７】本発明の実施形態３に係るロボットの構成を表すブロック図である。
【図８】本発明の実施形態３に係るロボットのモータ制御部の処理の流れを表す図である。
【発明を実施するための形態】
【００１３】
〔実施形態１〕
以下、本発明の実施形態１について、図１〜図４を参照しながら、詳細に説明する。なお、下記の実施形態においては、本発明に係るモータ制御装置が２足歩行ヒューマノイドロボットに備えられているものとして説明する。しかしながら、モータ制御装置は、２足歩行ヒューマノイドロボットに限らず、例えば、アニメキャラクタの戦闘ロボットまたは動物ロボット、一又は複数の可動軸を有する産業用ロボット等、モータによって部位の位置制御を行う各種ロボットに用いることができる。また、各実施形態においては、携帯電話機能付きの２足歩行ヒューマノイドロボットを例に挙げて説明する。
【００１４】
（ロボットの概要）
まず、図２を参照してロボット（自動機械）１００の概要について説明する。図２の（ａ）は、本実施形態に係るロボット１００の概略を示す正面図である。また、図２の（ｂ）は、当該ロボット１００の概略を示す背面図である。さらに、図２の（ｃ）は、当該ロボット１００の概略を示す側面図である。
【００１５】
図２の（ａ）および（ｃ）に示すように、ロボット１００は、頭部１００ａ、胴体部１００ｂ、腕部１００ｃ、脚部１００ｄ、および足部１００ｅで構成される。頭部１００ａは首部１００ｇを介して、腕部１００ｃは肩関節部１００ｈを介して、脚部１００ｄは脚関節部１００ｉを介して、それぞれ胴体部１００ｂに対して可動に接続されている。また、足部１００ｅは足関節部１００ｊを介して脚部１００ｄに対して、可動に接続されている。首部１００ｇおよび各関節部には、後述するサーボモータ１０が内蔵されており、当該サーボモータ１０が駆動することによって、頭部１００ａ、腕部１００ｃ、脚部１００ｄ、および足部１００ｅはそれぞれ可動する。さらに、頭部１００ａの一部を構成する口部１００ｌには後述するスピーカ部（不図示）が、足部１００ｅの一部を構成する足裏部１００ｆにはマイク部１００ｎが、それぞれ設けられている。
【００１６】
次に、図２の（ｂ）および（ｃ）に示すように、胴体部１００ｂの一部を構成する背中部１００ｋには、後述する表示部１００ｐが設けられている。なお、表示部１００ｐを配置する位置としては背中部１００ｋに限定される訳ではなく、例えば、腹部１００ｍ（図２の（ａ）および（ｃ）参照）に配置されてもよい。
【００１７】
（ロボット１００の具体的構成）
図１は本発明の実施形態１に係るロボット１の構成を表すブロック図である。
【００１８】
図１に示すように、ロボット１は、主制御部５と、サーボモータ１０とを少なくとも備えている。なお、図示しないが、これ以外にも、ロボット１００は、操作入力部、加速度センサ、送受信部、アンテナ部、バッテリー部、および記録部などを備えている。
【００１９】
主制御部５は、ロボット１００の各部の駆動を統合して制御する。主制御部５は、サーボモータ１０へも駆動指示を出力することで駆動を制御する。主制御部５は、外部からの指示を受けた場合など、所定の指示に基づいて、所定の期間におけるモータ１５ａの位置の変化を取得するためのモードであるモータ位置検出モードを実行する際、モータ位置検出モード開始指示をサーボモータ１０へ出力する。
【００２０】
サーボモータ１０は、モータ部１５と、モータ部１５の駆動を制御するマイクロコンピュータであるモータ制御部（アクチュエータ制御装置）２０とを備えている。モータ制御部２０は、位置確認部２１と、判定部２２と、モータ電源制御部（アクチュエータ電源制御部）２９とを備えている。
【００２１】
サーボモータ１０は、ロボット１００における各関節部を可動させるための駆動制御装置である。なお、図１では、サーボモータ１０を１つのみ記載しているが、実際には、サーボモータ１０は、ロボット１００における各関節部を可動させるために、複数個設けられている。
【００２２】
モータ部１５は、モータ１５ａと、エンコーダ等、モータ１５ａが回転した位置や移動量等を示す情報（位置情報）を逐次出力することが可能な機構である位置情報出力部１５ｂとを備える。換言すると、モータ部１５は、位置情報出力機能付きのモータである。モータ１５ａは、ロボット１０の各関節部に配置されている。
【００２３】
モータ部１５は、モータ制御部２０の指示に従い動作する。位置確認部２１から指示に基づき、位置情報出力部１５ｂが位置情報を逐次通知する。なお、位置情報出力部１５ｂは、位置確認部２１からの位置情報の出力指示を受信しなくとも所定の時間間隔で、逐次的に位置情報を位置確認部２１へ出力してもよい。
【００２４】
また、モータ部１５は、位置情報を逐次出力可能な機構である位置情報出力部１５ｂを有していればよく、モータ１５ａに換えて、油圧シリンダ、空圧シリンダ、またはリニアアクチュエータ等のアクチュエータを備えていてもよい。
【００２５】
モータ制御部２０は、モータ位置検出モードの実行時においては、判定部２２の判定結果に基づいて、所定の閾値より第３レジスト２５に記録された値が大きい場合、その旨を主制御部５へ出力する。モータ制御部２０は、モータ位置検出モードではなく、通常の動作モードの実行時には、モータ部１５に対して動作指示を行う。
【００２６】
ここで、モータ位置検出モードは、ロボット１００が通常に稼働している状態ではなく、主制御部５及びモータ制御部２０が待機状態（低消費電力状態）であって、関節部がユーザなどによって移動されることでユーザからの起動指示を待ち受けるためのモードである。モータ位置検出モードにおいて、モータ１５ａが所定量以上移動されたことを検出することで、モータ制御部２０及び主制御部５が待機状態から通常状態へ切り変わる。このように、ロボット１００は、ユーザからの起動指示があったことを認識する。
【００２７】
位置確認部２１は、モータ部１５からモータ部１５の位置情報を逐次取得し、当該取得した位置情報を判定部２２へ出力する。
【００２８】
判定部２２は、第１レジスト２３と、第２レジスト２４と、第３レジスト２５と、第４レジスト２６とを備えている。
【００２９】
第１レジスト２３には、時間ｎ（第２時間）の時のモータ１５ａの位置を表す位置情報（第２位置情報）が記録される。
【００３０】
第２レジスト２４には、時間ｎ-１（或る時間、第１時間）の時のモータ１５ａの位置を表す位置情報（第１位置情報）が記録される。
【００３１】
第３レジスト２５には、第１レジスト２３に記録された位置情報と、第２レジスト２４に記録された位置情報との差の絶対値が記録される。
【００３２】
第４レジスト２６には、モータ１５ａが外力によって移動された、すなわち、ユーザから起動指示が入力されたと判定できる所定の閾値が記録される。
【００３３】
判定部２２は、位置確認部２１から取得した位置情報を第１レジスト２３及び第２レジスト２４へ記録する。また、判定部２２は、第３レジスト２５に記録された値と、第４レジストに記録された値とを比較し、比較結果を主制御部５へ通知する。
【００３４】
なお、本実施形態においては、第１レジスト２３と、第２レジスト２４と、第３レジスト２５と、第４レジスト２６とは、判定部２２に設けられているものとして説明しているが、これに限らず、第１レジスト２３と、第２レジスト２４と、第３レジスト２５と、第４レジスト２６とは、判定部２２の外部であってモータ制御部２０内に設けられていてもよいし、モータ制御部２０とは別体の記録部として設けられていてもよい。
【００３５】
モータ電源制御部２９は、モータ１５ａへの通電の制御を行う。モータ電源制御部２９は、モータ位置検出モードが実行される際、モータ１５ａへの通電を停止し、モータ位置検出モードが終了すると、モータ１５ａへの通電を再開する。
【００３６】
（モータ制御部２０の処理の流れ）
図３は、本発明の実施形態１に係るロボットのモータ制御部２０の処理の流れを表す図である。
【００３７】
外部からの指示など所定の指示に基づいて主制御部５がモータ位置検出モードを実行する時、まず、主制御部５は、サーボモータ１０へモータ位置検出モード開始指示を出力する（ステップＳ０１）。
【００３８】
モータ位置検出モード開始指示をサーボモータ１０が取得すると、モータ制御部２０が、モータ部１５への通電をＯＦＦ（オフ）にする（ステップＳ０２）。これにより、ロボット１００の関節部において、モータ部１５による制御が解除され、関節部が固定状態となる。
【００３９】
次に、位置確認部２１は、モータ部１５の位置情報出力部１５ｂから位置情報を取得し、当該取得した位置情報を判定部２２へ出力する（ステップＳ０３）。
【００４０】
そして、判定部２２は、ステップＳ０３にて位置確認部２１から取得した位置情報を、第２レジスト２４が記録しているか否かを判定する（ステップＳ０４）。
【００４１】
ステップＳ０４において、第２レジスト２４が、すでに位置情報を記録している場合（ステップＳ０４のＹＥＳ）、判定部２２は、ステップＳ０３にて位置確認部２１から取得した位置情報を、第１レジスト２３に上書きし記録する（ステップＳ０５）。
【００４２】
次に、判定部２２は、第１レジスト２３に記録されている位置情報と、第２レジスト２４に記録されている位置情報との差の絶対値を算出し、当該差の絶対値を第３レジスト２５へ記録する（ステップＳ０７）。
【００４３】
そして、判定部２２は、ステップＳ０７にて第３レジスト２５に記録した差の絶対値と、第４レジスト２６に記録されている所定の閾値とを比較し（ステップＳ０８）、上記差の絶対値が当該所定の閾値以下であると判定すると（ステップＳ０８のＮｏ）、ユーザからの起動指示の入力は無いと判定する。
【００４４】
次に、判定部２２は、第２レジスト２４に記録されている位置情報をクリア（削除）して（ステップＳ１０）、第１レジスト２３に記録されている位置情報を、第２レジスト２４へコピーする（ステップＳ１１）。そして、位置確認部２１は、前回位置情報を取得してから所定の期間経過すると、再度、モータ部１５から位置情報を取得し、ステップＳ０３へ戻る。
【００４５】
また、ステップＳ０４において、第２レジスト２４に位置情報が記録されていない場合（ステップＳ０４のＮｏ）、判定部２２は、ステップＳ０３にて位置確認部２１から取得した位置情報を、第２レジスト２４に記録する（ステップＳ０６）。そして、位置確認部２１は、前回位置情報を取得してから所定の期間経過すると、再度、モータ部１５から位置情報を取得し、ステップＳ０３へ戻る。
【００４６】
また、ステップＳ０８において、判定部２２は、ステップＳ０７にて第３レジスト２５に記録した差の絶対値が、第４レジスト２６に記録されている所定の閾値より大きいと判定すると（ステップＳ０８のＹｅｓ）、所定時間内のモータ位置の変化が閾値を超えたことを意味し、すなわち、ユーザからの起動指示が入力されたと判定し、判定部２２は、モータ位置の変化が閾値を超えた旨を主制御部５へ通知する（ステップＳ０９）。
【００４７】
次に、モータ制御部２０はモータ部１５への通電をＯＮ（オン）し、主制御部５は、モータ位置検出モードを終了する（ステップＳ１２）。そして、主制御部５は待機状態から通常状態へ切り換わる。
【００４８】
（主制御部５の処理の流れ）
次に、図４を用いて、モータ位置検出モードの際の主制御部５の処理の流れについて説明する。図４は、本発明の実施形態１に係るロボット１００の主制御部５の処理の流れを表す図である。
【００４９】
主制御部５は、ステップＳ０９にて判定部２２からモータ位置の変化が閾値を超えた旨の通知を取得する（ステップＳ８０）。このとき、主制御部５が待機状態ではなく、既に他の処理を行っていれば（ステップＳ８１のＮＯ）、主制御部５は、割り込み処理部にて上記判定部２２からからの通知を取得し、さらに、当該判定部２２からからの通知を上位コントローラに通知する（ステップＳ８３）。そして、主制御部５は、上位コントローラとの間で通常のやり取りを行う（ステップＳ８４）。
【００５０】
また、ステップＳ８１において、主制御部５が待機状態であれば（ステップＳ８１のＹＥＳ）、主制御部５は通常稼働状態に復帰する（ステップＳ８２）。そして、ステップＳ８３の処理に進む。
【００５１】
（モータ制御部２０による主な利点）
このようにモータ制御部２０は、位置確認部２１と、判定部２２とを備えている。
【００５２】
位置確認部２１は、モータ１５ａの位置情報の出力が可能な位置情報出力部１５ｂから、或る第１時間での上記位置情報である第１位置情報と、当該第１時間から所定期間経過後の第２時間での上記位置情報である第２位置情報とを取得する。
【００５３】
そして、判定部２２は、上記第１位置情報と、上記第２位置情報との差の絶対値を算出し、当該差の絶対値が所定の閾値より大きいか否かを判定する。
【００５４】
このように、モータ１５ａの位置の変化を、当該位置の積算値ではなく、所定期間経過前後のモータ１５ａの位置情報から算出している。このため、モータ制御部２０を用いることで、ロボット１００は、所定期間におけるモータ１５ａの移動量を正確に把握することができる。
【００５５】
また、モータ電源制御部２９は、モータ制御部２０が、モータ１５ａの位置を検出する位置検出モードを実行する際、モータ１５ａの通電を停止する。そして、判定部２２が、上記差の絶対値が上記所定の閾値より大きいと判定すると、モータ電源制御部２９がモータ１５ａへの通電を再開し、モータ制御部２０は位置検出モードの実行を終了する。
【００５６】
これにより、判定部２２が、上記差の絶対値が上記所定の閾値より大きいと判定すると、モータ電源制御部２９がモータ１５ａへの通電を再開し、モータ制御部２０は上記位置検出モードの実行を終了する。これにより、関節部が移動されることで、モータ１５ａが外力などによって、明らかに動かされた場合に、モータ制御部２０や、主制御部５を起動させることができる。
【００５７】
〔実施形態２〕
本発明の実施形態２について、図５及び図６に基づいて説明すれば、以下のとおりである。なお、説明の便宜上、実施形態１にて説明した部材と同じ機能を有する部材については、同じ符号を付記し、その説明を省略する。
【００５８】
図５は、本発明の実施形態２に係るロボット１００Ａの構成を表すブロック図である。
【００５９】
ロボット１００Ａは、ロボット１００（図１参照）が備えていたサーボモータ１０に換えて、サーボモータ１０Ａを備えている。サーボモータ１０Ａは、サーボモータ１０が備えていたモータ制御部２０に換えて、モータ制御部２０Ａを備えている。モータ制御部２０Ａは、モータ制御部２０が備えていた判定部２２に換えて、判定部２２Ａを備えている。
【００６０】
判定部２２Ａは、第１レジスト２３、第２レジスト２４、第３レジスト２５、第４レジスト２６に加え、第１カウンタ２７と、第２カウンタ２８とを備えている。
【００６１】
第１カウンタ２７には、第３レジスト２５に記録された値と、第４レジスト２６に記録された値との比較の結果、第３レジスト２５に記録された値が、第４レジスト２６に記録された値を超えた回数が記録される。
【００６２】
図６は、本発明の実施形態２に係るロボットのモータ制御部２０Ａの処理の流れを表す図である。
【００６３】
外部からの指示など所定の指示に基づいて主制御部５がモータ位置検出モードを実行する時、まず、ステップＳ３１及びステップＳ３２として、ステップＳ０１及びステップＳ０２（図３参照）と同様の処理を行う。
【００６４】
次に、判定部２２Ａは、第１カウンタ２７に記録されている値を初期化し０にする（ステップＳ３３）。
【００６５】
そして、ステップＳ３４として、ステップＳ０３と同様に、位置確認部２１は、モータ部１５から位置情報を取得し、当該取得した位置情報を判定部２２へ出力する。
【００６６】
次に、ステップＳ３５のＹｅｓ、ステップＳ３６、ステップＳ３８、ステップＳ３９のＹｅｓ、ステップＳ４１、ステップＳ４２として、図３を用いて説明した、ステップＳ０４のＹｅｓ、ステップＳ０５、ステップＳ０７、ステップＳ０８のＹｅｓ、ステップＳ１０、ステップＳ１１の処理を順に行う。
【００６７】
そして、ステップＳ４２において、判定部２２Ａが第１レジスト２３に記録されている位置情報を第２レジスト２４へコピーすると、次に、判定部２２Ａは第１カウンタ２７に記録されている値を初期化し０にする（ステップＳ４３）。そして、位置確認部２１は、前回位置情報を取得してから所定の位置情報取得期間経過すると、再度、モータ部１５の位置情報出力部１５ｂから位置情報を取得し、ステップＳ３４へ戻る。
【００６８】
また、ステップＳ３５において、第２レジスト２４に位置情報が記録されていない場合（ステップＳ３５のＮｏ）、ステップＳ０６と同様に、判定部２２Ａは、ステップＳ３４にて位置確認部２１から取得した位置情報を、第２レジスト２４に記録する（ステップＳ３７）。そして、位置確認部２１は、所定時間経過後に、再度、モータ部１５から位置情報を取得し、ステップＳ３４へ戻る。
【００６９】
また、ステップＳ３９において、判定部２２Ａは、ステップＳ３８にて第３レジスト２５に記録した差の絶対値が、第４レジスト２６に記録されている所定の閾値より大きいと判定すると（ステップＳ３９のＹｅｓ）、判定部２２Ａは、第１カウンタ２７の値を増加させる（ステップＳ４０）。
【００７０】
そして、判定部２２Ａは、第１カウンタ２７に記録された値が、第２カウンタ２８に記録された所定の回数閾値を超えたか否かを判定する（ステップＳ４４）。
【００７１】
ステップＳ４４において、判定部２２Ａは、第１カウンタ２７に記録された値が、第２カウンタ２８に記録された所定の回数閾値を超えたと判定した場合（ステップＳ４４のＮｏ）、所定時間×第２カウンタ２８に記録された回数閾値にて算出される所定の値以上の期間、変化量閾値を超えるモータ位置の変化が続いていることを意味する（例：所定期間が１秒で、第２カウンタ２８に記録された回数閾値の値が５の場合は、５秒以上、モータ位置の変化が、変化量閾値を超えていることになる）ため、判定部２２Ａは、モータ位置の変化が、変化量の閾値を規定回数超えている旨、主制御部５に通知する（ステップＳ４５）。
【００７２】
次に、ステップＳ１２と同様に、ユーザからの起動指示が入力されたと考えられるため、モータ制御部２０はモータ部１５への通電をＯＮ（オン）し、主制御部５は、モータ位置検出モードを終了する（ステップＳ４６）。
【００７３】
また、ステップＳ４４において、判定部２２Ａは、第１カウンタ２７に記録された値が、第２カウンタ２８に記録された所定の回数閾値以下であると判定した場合（ステップＳ４４のＹｅｓ）、判定部２２Ａは、モータ位置の変化が、変化量の閾値を規定回数以下であるため、ユーザからの再起動指示の入力は無いと判定する。そして、位置確認部２１は、所定時間経過後に、再度、モータ部１５から位置情報を取得し、ステップＳ３４へ戻る。
【００７４】
このようにモータ制御部２０Ａは、モータ１５ａの位置を検出する位置検出モードの際、上記第１時間の前にモータ１５ａへの通電を停止し、判定部２２Ａが、上記差の絶対値が上記所定の閾値より大きいと判定した回数が所定回数を超えると、モータ電源制御部２９は、上記モータ１５ａへの通電を再開し、上記位置検出モードを終了する。これにより、ユーザからの起動指示を正確に判定することができる。
【００７５】
（変形例）
上記の例では、連続して５回、位置情報の変化が所定の閾値を超えていた場合、判定部２２Ａは主制御部５へその旨の通知を行う例を示した。しかし、例えば、ステップＳ３９の比較を１０回行う中で、８回以上、変化が所定の閾値を超えていた場合、判定部２２Ａが主制御部５へその旨を通知してもよい。
【００７６】
また、上記例では、第２カウンタ２８に記録された所定の閾値は１つしか設定してないが、第２カウンタ２８に複数の閾値を記録していてもよい。
【００７７】
例えば、第２カウンタ２８に、閾値Ｔ１と閾値Ｔ２とを記録しておく。但し、Ｔ１及びＴ２は自然数であり、Ｔ２はＴ１より大きい数値である。
【００７８】
そして、ステップＳ３９において、位置情報の変化が所定の閾値を超えた回数が、Ｔ１回以下であれば、判定部２２Ａは、その旨を主制御部５へ通知しない。これにより、主制御部５は起動（Ｗａｋｅ  Ｕｐ）動作をしない。
【００７９】
また、ステップＳ３９において、位置情報の変化が所定の閾値を超えた回数が、Ｔ１回を超えＴ２回以下であれば、判定部２２Ａは、その旨を主制御部５へ通知する。これにより、主制御部５は、システムとして通常の起動（Ｗａｋｅ  Ｕｐ）動作をする。
【００８０】
さらに、ステップＳ３９において、位置情報の変化が所定の閾値を超えた回数が、Ｔ２回を超える場合、判定部２２Ａは、その旨を主制御部５へ通知する。これにより、主制御部５は、システムとして通常の起動（Ｗａｋｅ  Ｕｐ）動作をした上で、さらに、ロボット１００Ａはメッセージ等を発話する。
【００８１】
〔実施形態３〕
本発明の実施形態３について、図７及び図８に基づいて説明すれば、以下のとおりである。なお、説明の便宜上、実施形態１、２にて説明した部材と同じ機能を有する部材については、同じ符号を付記し、その説明を省略する。
【００８２】
図７は、本発明の実施形態３に係るロボット１００Ｂの構成を表すブロック図である。
【００８３】
ロボット１００Ｂは、ロボット１００（図１参照）が備えていたサーボモータ１０に換えて、サーボモータ１０Ｂを備えている。サーボモータ１０Ｂは、サーボモータ１０が備えていたモータ制御部２０に換えて、モータ制御部２０Ｂを備えている。モータ制御部２０Ｂは、位置確認部２１と、モータ電源制御部２９とに加え、電源制御部３０を備えている。電源制御部３０は、モータ１５ａの通電のオンとオフとを切り換える制御を行う。
【００８４】
図８は、本発明の実施形態３に係るロボットのモータ制御部２０Ｂの処理の流れを表す図である。
【００８５】
外部からの指示など所定の指示に基づいて主制御部５がモータ位置検出モードを実行する時、ステップＳ６１〜ステップＳ６４のＹＥＳ、ステップＳ６５、ステップＳ６７、ステップＳ６８のＮＯ、ステップＳ７０、ステップＳ７１として、図３を用いて実施形態１にて説明した、ステップＳ０１〜ステップＳ０４のＹＥＳ、ステップＳ０５、ステップＳ０７、ステップＳ０８のＮＯ、ステップＳ１０、ステップＳ１１と同様の処理を行う。
【００８６】
そして、ステップＳ７０において、判定部２２が、第２レジスト２４に記録されている位置情報をクリア（削除）した後、ステップＳ７１において、判定部２２が、第１レジスト２３に記録されている位置情報を、第２レジスト２４へコピーすると、次に、電源制御部３０は、モータ制御部２０Ｂの電源をＯＦＦ（オフ）にする（ステップＳ７２）。
【００８７】
次に、電源制御部３０は、モータ制御部２０Ｂの電源をＯＦＦしてから所定の電源オフ許容時間が経過すると、モータ制御部の電源をＯＮ（オン）する（ステップＳ７３）。そして、位置確認部２１は、前回位置情報を取得してから所定の位置情報取得期間経過すると、再度、モータ部１５から位置情報を取得し、ステップＳ３４へ戻る。
【００８８】
このように、モータ制御部２０Ｂは、判定部２２Ｂが、上記差の絶対値が上記所定の閾値以下と判定すると、電源制御部３０がモータ制御部２０Ｂの通電を所定期間だけ停止し、当該所定期間経過後、電源制御部３０がモータ制御部２０Ｂの通電を再開する。これにより、消費電力を低減することができる。
【００８９】
なお、電源制御部３０がモータ制御部２０Ｂの通電を停止している期間中も、電源制御部３０がモータ制御部２０Ｂの通電を再開するために必要な回路には電源が供給されている。
【００９０】
〔実施形態４〕
本発明の実施形態４について説明すれば、以下のとおりである。
【００９１】
ロボット１００・１００Ａ・１００Ｂにおいて、各関節に対応するサーボモータ１０・１０Ａ・１０Ｂがユーザによって動かされた場合、すなわち、各関節に配置されているモータ１５ａがユーザによって動かされた場合、主制御部５は、どのサーボモータ１０・１０Ａ・１０Ｂが動かされたかを認識することができる。このため、サーボモータ１０・１０Ａ・１０Ｂが動かされたと認識した場合、主制御部５を以下の（１）〜（６）に示すようにロボット１００・１００Ａ・１００Ｂを動作するように制御してもよい。
（１）音声認識を開始する。これにより、ロボット１００・１００Ａ・１００Ｂは、「いたっ」「きもちいい」などといった発話を行う。なお、どういった発話をするかは、操作されたサーボにより、シナリオから選択するようにする。
（２）目を光らせるなどの、ロボット１００・１００Ａ・１００Ｂが「起きた」とユーザに認識させるアピールをする。
（３）ロボット１０００・１００Ａ・１００Ｂの手足を少し動かす。
（４）複数の駆動部（サーボモータ１０・１０Ａ・１０Ｂ）を備えるロボット１００・１００Ａ・１００Ｂでは、各駆動部（サーボモータ１０・１０Ａ・１０Ｂ）毎に、第４レジスト２６に記録された所定の閾値の値が異なっていてもよい。場合によっては、所定の閾値を設定しない駆動部があっても良い。
（５）各駆動部（サーボモータ１０・１０Ａ・１０Ｂ）毎に、ロボット１００・１００Ａ・１００Ｂが動作するアクションが異なっても良い。
【００９２】
例えば、ロボット１００・１００Ａ・１００Ｂは、首を回されると「いてっ」というが、腕を動かされると「こんにちは」という。
【００９３】
または、ロボット１００・１００Ａ・１００Ｂは、右腕を動かされた時は、Ａさんをユーザと認識し、左腕の場合はＢさんをユーザと認識する。
（６）各駆動部（サーボモータ１０・１０Ａ・１０Ｂ）が、同時に操作された時に、動作するアクションがあっても良い。例えば、両腕を同時に操作されると、「む〜す〜ん〜で」と歌いだす。
【００９４】
〔実施形態５〕
本発明の実施形態５について説明すれば、以下のとおりである。
【００９５】
ロボット１００・１００Ａ・１００Ｂが特定の状態のとき、実施形態１〜４に示したユーザからの起動指示があっても起動処理を実行しない場合の例について説明する。特定の状態としては、例えば、以下の（１）〜（４）の状態が挙げられる。
（１）  ロボット１００・１００Ａ・１００Ｂが通話機能を有している場合であって、ユーザによって、ロボット１００・１００Ａ・１００Ｂのマナーモードの設定がなされているとき。
（２）ロボット１００・１００Ａ・１００Ｂにおいて、ユーザが操作しにくい部位が移動された場合。例えば、ロボット１００・１００Ａ・１００Ｂの両手両足首などといった部位はユーザが操作しやすいが、瞼などといった操作しにくい部位については、所定量移動されたとしても、実施形態１〜４に示した処理を実行させない。
（３）ロボット１００・１００Ａ・１００Ｂにおいて、バッテリー残量が、減っている場合。例えば、バッテリー残量が３０％以下になると、実施形態１〜４に示した処理を実行させないなど。
（４）ロボット１００・１００Ａ・１００Ｂの周囲が暗い時は、ユーザが就寝状態の可能性があるので、実施形態１〜４に示した処理を実行させない。または、ロボット１００・１００Ａ・１００Ｂは小さな音で発話したりする。
【００９６】
〔ソフトウェアによる実現例〕
ロボット１００・１００Ａ・１００Ｂの制御ブロック（特に判定部２２・２２Ａ）は、集積回路（ＩＣチップ）等に形成された論理回路（ハードウェア）によって実現してもよいし、ＣＰＵ（Central Processing Unit）を用いてソフトウェアによって実現してもよい。
【００９７】
後者の場合、判定部２２・２２Ａは、各機能を実現するソフトウェアであるプログラムの命令を実行するＣＰＵ、上記プログラムおよび各種データがコンピュータ（またはＣＰＵ）で読み取り可能に記録されたＲＯＭ（Read Only Memory）または記憶装置（これらを「記録媒体」と称する）、上記プログラムを展開するＲＡＭ（Random Access Memory）などを備えている。そして、コンピュータ（またはＣＰＵ）が上記プログラムを上記記録媒体から読み取って実行することにより、本発明の目的が達成される。上記記録媒体としては、「一時的でない有形の媒体」、例えば、テープ、ディスク、カード、半導体メモリ、プログラマブルな論理回路などを用いることができる。また、上記プログラムは、該プログラムを伝送可能な任意の伝送媒体（通信ネットワークや放送波等）を介して上記コンピュータに供給されてもよい。なお、本発明は、上記プログラムが電子的な伝送によって具現化された、搬送波に埋め込まれたデータ信号の形態でも実現され得る。
【００９８】
〔まとめ〕
本発明の態様１に係るアクチュエータ制御装置（モータ制御部２０）は、アクチュエータ（モータ１５ａ）の位置情報の出力が可能な位置情報出力部１５ｂから、或る第１時間での上記位置情報である第１位置情報と、当該第１時間から所定期間経過後の第２時間での上記位置情報である第２位置情報とを取得する位置確認部２１と、上記第１位置情報と、上記第２位置情報との差の絶対値を算出し、当該差の絶対値が所定の閾値より大きいか否かを判定する判定部２２とを備えていることを特徴とする。上記構成によると、上記アクチュエータの位置の変化を、当該位置の積算値ではなく、所定期間経過前後の上記アクチュエータの位置情報から算出している。このため、所定期間における上記アクチュエータの移動量を正確に検出することができる。
【００９９】
本発明の態様２に係るアクチュエータ制御装置（モータ制御部２０）は、上記態様１において、上記アクチュエータ（モータ１５ａ）への通電の開始と停止とを切り換えるアクチュエータ電源制御部（モータ電源制御部２９）を備え、上記アクチュエータ電源制御部（モータ電源制御部２９）は、上記アクチュエータ制御装置（モータ制御部２０）が、上記アクチュエータ（モータ１５ａ）の位置を検出する位置検出モードを実行する際、上記アクチュエータ（モータ１５ａ）の通電を停止し、上記判定部２２が、上記差の絶対値が上記所定の閾値より大きいと判定すると、上記モータ電源制御部２９が上記アクチュエータ（モータ１５ａ）への通電を再開し、上記アクチュエータ制御装置（アクチュエータ制御部２０）は上記位置検出モードの実行を終了することが好ましい。
【０１００】
上記構成によると、上記判定部２２が、上記差の絶対値が上記所定の閾値より大きいと判定すると、上記アクチュエータ電源制御部（モータ電源制御部２９）が上記アクチュエータ（モータ１５ａ）への通電を再開し、上記アクチュエータ制御装置（モータ制御部２０）は上記位置検出モードの実行を終了する。これにより、上記アクチュエータ（モータ１５ａ）が外力などによって動かされた場合に、アクチュエータ制御装置（モータ制御部２０）を起動させることができる。
【０１０１】
本発明の態様３に係るアクチュエータ制御装置（モータ制御部２０Ａ）は、上記態様１において、上記アクチュエータ（モータ１５ａ）の位置を検出する位置検出モードを実行する際、上記第１時間の前に上記アクチュエータ（モータ１５ａ）への通電を停止し、上記判定部２２Ａが、上記差の絶対値が上記所定の閾値より大きいと判定した回数が所定回数を超えると、上記アクチュエータ電源制御部（モータ電源制御部２９）は、上記モータ１５ａへの通電を再開し、上記位置検出モードを終了することが好ましい。
【０１０２】
上記構成により、上記アクチュエータ（モータ１５ａ）が外力などによって、明らかに動かされた場合に、アクチュエータ制御装置（モータ制御部２０）を起動させることができる。
【０１０３】
本発明の態様４に係るアクチュエータ制御装置（モータ制御部２０Ｂ）は、上記態様１〜３において、上記判定部２２が、上記差の絶対値が上記所定の閾値以下と判定すると、上記アクチュエータ制御装置（モータ制御部２０Ｂ）は、所定期間だけ通電を停止し、当該所定期間経過後、通電を再開することが好ましい。これにより、消費電力を低減することができる。
【０１０４】
本発明の態様５に係るアクチュエータ制御装置（アクチュエータ制御部２０）は、上記態様１〜４において、上記アクチュエータはモータ１５ａであることが好ましい。
【０１０５】
本発明の態様６に係る自動機械（ロボット１００）は、上記態様１〜５において、上記アクチュエータ制御装置（モータ制御部２０）と、上記アクチュエータ（モータ１５ａ）と、上記位置情報出力部１５ｂと、上記アクチュエータ（モータ１５ａ）が配置された関節部とを備えていることが好ましい。
【０１０６】
本発明の態様７に係るアクチュエータ制御方法は、アクチュエータの或る第１時間での位置情報である第１位置情報と、当該第１時間から所定期間経過後の第２時間での上記アクチュエータの位置情報である第２位置情報とを取得する位置情報確認ステップと、上記第１位置情報と、上記第２位置情報との差の絶対値を算出し、当該差の絶対値が所定の閾値より大きいか否かを判定する判定ステップとを有することを特徴とする。
【０１０７】
本発明の態様８に係るアクチュエータ制御プログラムは、上記態様１のアクチュエータ制御装置（アクチュエータ制御部２０）としてコンピュータを機能させるためのアクチュエータ制御プログラムであって、上記判定部としてコンピュータを機能させるためのアクチュエータ制御プログラムである。
【０１０８】
本発明の態様９に係るコンピュータ読み取り可能な記録媒体は、上記態様８に記載のアクチュエータ制御プログラムを記録したコンピュータ読み取り可能な記録媒体である。
【０１０９】
本発明は上述した各実施形態に限定されるものではなく、請求項に示した範囲で種々の変更が可能であり、異なる実施形態にそれぞれ開示された技術的手段を適宜組み合わせて得られる実施形態についても本発明の技術的範囲に含まれる。さらに、各実施形態にそれぞれ開示された技術的手段を組み合わせることにより、新しい技術的特徴を形成することができる。
【符号の説明】
【０１１０】
１００・１００Ａ・１００Ｂ  ロボット（自動機械）
５  主制御部
１０・１０Ａ・１０Ｂ  サーボモータ
２０、２０Ａ、２０Ｂ  モータ制御部（アクチュエータ制御部）
１５ａ  モータ（アクチュエータ）
１５  モータ部
１５ｂ  位置情報出力部
２１  位置確認部
２２・２２Ａ・２２Ｂ  判定部
２３  第１レジスト
２４  第２レジスト
２５  第３レジスト
２６  第４レジスト
２７  第１カウンタ
２８  第２カウンタ
２９  モータ電源制御部（アクチュエータ電源制御部）
３０  電源制御部
１００ａ  頭部
１００ｂ  胴体部
１００ｃ  腕部
１００ｄ  脚部
１００ｅ  足部
１００ｆ  足裏部
１００ｇ  首部
１００ｈ  肩関節部
１００ｉ  脚関節部
１００ｊ  足関節部
１００ｋ  背中部
１００ｌ  口部
１００ｍ  腹部
１００ｎ  マイク部
【図１】
2017196716.tif 000003
【図２】
2017196716.tif 000004
【図３】
2017196716.tif 000005
【図４】
2017196716.tif 000006
【図５】
2017196716.tif 000007
【図６】
2017196716.tif 000008
【図７】
2017196716.tif 000009
【図８】
2017196716.tif 000010