(57)【要約】【課題】安価なマイコンを使用しつつ、モータの運転状態に関する情報を不揮発性メモリに確実に書き込むことができる技術を提供する。【解決手段】モータ関連情報処理回路は、モータが駆動される際に、モータの運転状態に関するモータ関連情報を取得する取得部と、モータ関連情報が取得された後に、モータ関連情報を揮発性メモリに書き込む第１書き込み部と、モータの駆動が停止すると、揮発性メモリに記憶されたモータ関連情報を、不揮発性メモリに書き込む第２書き込み部と、を備える。【選択図】図５
2018147304.tif 000002
【特許請求の範囲】
【請求項１】
モータが駆動される際に、前記モータの運転状態に関するモータ関連情報を取得する取得部と、
前記モータ関連情報が取得された後に、前記モータ関連情報を揮発性メモリに書き込む第１書き込み部と、
前記モータの駆動が停止すると、前記揮発性メモリに記憶された前記モータ関連情報を、不揮発性メモリに書き込む第２書き込み部と、
を備えることを特徴とするモータ関連情報処理回路。
【請求項２】
請求項１に記載のモータ関連情報処理回路であって、
前記取得部は、
所定期間ごとに前記モータ関連情報を取得すること、
を特徴とするモータ関連情報処理回路。
【請求項３】
請求項１に記載のモータ関連情報処理回路であって、
前記モータ関連情報処理回路を制御する制御装置からの送信指示に基づいて、前記不揮発性メモリに記憶された前記モータ関連情報を、前記制御装置に送信する送信部を更に含むこと、
を特徴とするモータ関連情報処理回路。
【請求項４】
請求項１に記載のモータ関連情報処理回路であって、
前記モータ関連情報は、前記モータの駆動時間に関する情報、前記モータの駆動電流に関する情報、前記モータのトルクに関する情報、及び前記モータの温度に関する情報のうち、少なくとも何れかの一つの情報を含むこと、
を特徴とするモータ関連情報処理回路。
【請求項５】
請求項４に記載のモータ関連情報処理回路であって、
前記モータの駆動電流に対して所定の計算処理を施す計算部を更に含み、
前記取得部は、前記計算部で計算された計算結果を前記モータ関連情報として取得すること、
を特徴とするモータ関連情報処理回路。
【請求項６】
請求項１に記載のモータ関連情報処理回路であって、
前記取得部は、
前記モータ関連情報処理回路を制御する制御装置からの取得指示に基づいて、前記モータ関連情報を取得すること、
を特徴とするモータ関連情報処理回路。
【請求項７】
請求項１に記載のモータ関連情報処理回路であって、
前記取得部は、
前記モータ関連情報処理回路を制御する制御装置からのシャットダウン指示に基づいて、前記モータ関連情報を取得すること、
を特徴とするモータ関連情報処理回路。
【請求項８】
モータが駆動される際に、前記モータの運転状態に関するモータ関連情報を取得し、
前記モータ関連情報が取得された後に、前記モータ関連情報を揮発性メモリに書き込み、
前記モータの駆動が停止すると、前記揮発性メモリに記憶された前記モータ関連情報を、不揮発性メモリに書き込む、
ことを特徴とするモータ関連情報処理方法。
【請求項９】
モータと、
前記モータを駆動する駆動回路と、
前記モータが駆動される際に、前記モータの運転状態に関するモータ関連情報を取得する取得部と、前記モータ関連情報が取得された後に、前記モータ関連情報を揮発性メモリに書き込む第１書き込み部と、前記モータの駆動が停止すると、前記揮発性メモリに記憶された前記モータ関連情報を、不揮発性メモリに書き込む第２書き込み部と、を含むモータ関連情報処理回路と、
を備えることを特徴とするモータモジュール。
【請求項１０】
請求項９に記載のモータモジュールであって、
前記駆動回路は、蓄電部を備えることを特徴とするモータモジュール。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、モータ関連情報処理回路、モータ関連情報処理方法およびモータモジュールに関する。
【背景技術】
【０００２】
作業用のロボットが設置された工場やプラントには、一般に、ロボットを動作させるモータを含むモータモジュールと、モータモジュールを制御する制御装置が設けられている。ところで、モータモジュールがロボットに組み込まれると、ロボットの構成やモータモジュールの位置によっては、利用者がモータモジュールの状態を頻繁に把握することは難しいことがある。このため、モータモジュールの運転状態を利用者に把握させるべく、モータモジュールは、各種情報を利用者が操作する制御装置に送信することがある（例えば、特許文献１参照）。
【先行技術文献】
【特許文献】
【０００３】
【特許文献１】国際公開第２０１３／１３６６２７号
【発明の概要】
【発明が解決しようとする課題】
【０００４】
しかしながら、上述した技術では、情報を送信するモータモジュールの送信部が故障した場合、また、送信時に通信エラーが生じた場合には、利用者はモータモジュールの状態を把握できなくなる。仮にモータモジュールに不揮発性メモリが設けられており、各種情報がそのようなメモリに格納されていれば、利用者は、不揮発性メモリに適宜アクセスすることによりモータモジュールの状態を確認することができる。しかしながら、一般に、マイコンが不揮発性メモリに情報を書き込むことは、マイコンに処理負荷がかかる。このため、例えばモータモジュールを制御するマイコンに対し、書き込み処理を実行させるためには、処理能力が高く、高価なマイコンが必要となる。【０００５】
本発明は上記課題を鑑みてなされたものであり、安価なマイコンを使用しつつ、モータの運転状態に関する情報を不揮発性メモリに確実に書き込むことができる技術を提供することを目的とする。
【課題を解決するための手段】
【０００６】
上記課題を解決する本発明のモータ関連情報処理回路は、モータが駆動される際に、前記モータの運転状態に関するモータ関連情報を取得する取得部と、前記モータ関連情報が取得された後に 、前記モータ関連情報を揮発性メモリに書き込む第１書き込み部と、前記モータの駆動が停止すると 、前記揮発性メモリに記憶された前記モータ関連情報を、不揮発性メモリに書き込む第２書き込み部と、を備えることを特徴とする。
【発明の効果】
【０００７】
本発明によれば、安価なマイコンを使用しつつ、モータの運転状態に関する情報を不揮発性メモリに確実に書き込むことができる技術を提供することができる。
【図面の簡単な説明】
【０００８】
【図１】ロボット制御システム１０の構成を示す図である。
【図２】モータモジュール２３の構成を示す図である。
【図３】マイコン６２に実現される機能ブロックを示す図である。
【図４】マイコン６２で実行される処理の一例を示すフローチャートである。
【図５】マイコン６２で実行される処理の一例を示すフローチャートである。
【発明を実施するための形態】
【０００９】
−−−ロボット制御システム１０の構成−−−
以下に本発明の実施形態について図面を用いて詳細に説明する。図１は、ロボット制御システム１０の構成を示す図である。ロボット制御システム１０は、工場に設置されたアーム型ロボットＸ（不図示）の動作を制御するためのシステムであり、コントロールモジュール２０、センサモジュール２１，２２、およびモータモジュール２３〜２５を含んで構成される。
【００１０】
コントロールモジュール２０（制御装置）は、ロボット制御システム１０を統括制御する装置であり、利用者の操作結果や、センサモジュール２１，２２の出力に基づいて、モータモジュール２３〜２５の動作を制御する。
【００１１】
センサモジュール２１は、例えば、アーム型ロボットＸの作業対象物までの距離を測定する距離センサを含む装置であり、測定結果をコントロールモジュール２０に送信する。
【００１２】
センサモジュール２２は、例えば、アーム型ロボットＸの作業領域における人の有無を検出する赤外線センサを含む装置であり、検出結果をコントロールモジュール２０に送信する。
【００１３】
モータモジュール２３は、アーム型ロボットＸの所定の関節Ｊ１を回転させるモータを制御する装置である。なお、モータモジュール２４，２５も、モータモジュール２３と同様に、アーム型ロボットＸの所定の関節Ｊ２，Ｊ３のそれぞれを回転させるモータを制御する。なお、図１のセンサモジュール２１やモータモジュール２３等は、通信線を介してコントロールモジュール２０に接続されているが、無線で接続されていても良い。
【００１４】
−−−モータモジュール２３の構成−−−
モータモジュール２３は、図２に示すように、モータ制御装置３０、モータ３１、ロータリーエンコーダ３２、及び温度センサ３３を含んで構成される。モータモジュール２３は、モータ３１と、駆動回路６３と、モータ関連情報処理回路と、を備える。
【００１５】
モータ制御装置３０は、コントロールモジュール２０からの「駆動指示」に基づいて、モータ３１を駆動する装置である。ここで、モータ制御装置３０からモータ３１に供給され、モータ３１に流れる電流を駆動電流Ｉｄとする。また、「駆動指示」は、モータ３１の回転位置、回転速度、トルクを指定する指示である。なお、モータ制御装置３０の詳細は後述する。
【００１６】
モータ３１は、例えば、ＡＣ（Alternating Current：交流）モータであり、アーム型ロボットＸのアーム部分を回転させる。
【００１７】
ロータリーエンコーダ３２は、モータ３１におけるロータ（不図示）の回転位置を示す信号や、モータ３１の回転速度を示す信号を出力する。
【００１８】
温度センサ３３は、モータモジュール２３の所定の位置に取り付けられ、モータ３１の温度Ｔｍを検出するセンサであり、温度Ｔｍを示す信号を出力する。なお、温度Ｔｍは、駆動電流Ｉｄの増加に応じて高くなる。
【００１９】
モータ制御装置３０は、ＲＯＭ（Read only memory）５０、ＲＡＭ（Random access memory）５１、フラッシュメモリ５２、ＩＦ（Interface）回路６０，６１、マイコン６２、及び駆動回路６３を含んで構成される。
【００２０】
ＲＯＭ５０は、不揮発性の記憶手段領域であり、マイコン６２が実行するプログラムや様々なデータが格納される。
【００２１】
ＲＡＭ５１（揮発性メモリ）は、プログラムやデータ等の一時的な記憶領域として用いられる。
【００２２】
フラッシュメモリ５２（不揮発性メモリ）は、例えば、モータ３１の運転状態に関する「モータ関連情報Ｄ」や各種データが格納される。ここで、「モータ関連情報Ｄ」は、例えば、駆動電流Ｉｄ、モータ３１のトルクＴ、及び温度Ｔｍのそれぞれの所定期間における平均値、分散、最小値及び最大値の情報と、モータ３１の駆動時間を示す情報を含む。なお、「モータ関連情報Ｄ」は、後述する「駆動指示」を用いた情報でもよく、「制御情報」を用いた情報でもよい。このため、例えば、利用者は「モータ関連情報Ｄ」を参照することにより、モータ３１を直接観測等することなく、モータ３１の信頼性やメンテナンスの必要性等に関する知見を得ることができる。
【００２３】
ＩＦ回路６０は、コントロールモジュール２０と、モータ制御装置３０との間で「駆動指示」や「モータ関連情報Ｄ」等の各種情報をやりとりする。
【００２４】
ＩＦ回路６１は、ロータリーエンコーダ３２、温度センサ３３からの出力をマイコン６２に送信する。
【００２５】
マイコン６２（モータ関連情報処理回路）は、ＲＯＭ５０に記憶されたプログラムを実行することにより、モータ制御装置３０を統括制御する。なお、マイコン６２に実現される機能ブロックについては後述する。
【００２６】
駆動回路６３は、マイコン６２からの駆動信号Ｓｄに応じてモータ３１を駆動する回路であり、例えば、プリドライバやＨブリッジ回路（不図示）を含んで構成される。なお、駆動回路６３がモータ３１の駆動を停止すると、駆動電流Ｉｄはゼロとなる。ただし、ここでは、モータ３１の駆動が停止された際のモータ３１に流れるリーク電流は無視している。また、本実施形態では、モータ３１の駆動が停止された状態を「アイドル状態」と称する。
【００２７】
モータモジュール２４，２５の構成も、モータモジュール２３と同様であるため、モータモジュール２４，２５の詳細な説明は省略する。
【００２８】
−−−マイコン６２に実現される機能ブロック−−−
図３は、マイコン６２が所定のプログラムを実行することによりマイコン６２に実現される機能ブロックを示す図である。モータ関連情報処理回路は、設定部７０、駆動回路制御部７１、計時部７２、時間判定部７３、駆動判定部７４、計算部７５、取得部７６、第１書き込み部７７、第２書き込み部７８、及び送信部７９の機能ブロックを備える。
【００２９】
設定部７０は、モータ３１の「駆動指示」を受信すると、ＲＡＭ５１に記憶された過去のモータ３１の駆動時間を示す情報を消去し、「モータ関連情報Ｄ」が格納されるＲＡＭ５１の記憶領域を指定する。
【００３０】
駆動回路制御部７１は、駆動回路６３とともに、モータ３１をサーボ制御する機能ブロックである。具体的には、モータ３１の回転位置、回転速度、トルクが、コントロールモジュール２０からの「駆動指示」で指定された目標状態となるよう、駆動回路制御部７１は、駆動回路６３に対して駆動信号Ｓｄを出力する。なお、駆動回路制御部７１には、サーボ制御を実現するための各種情報（駆動電流Ｉｄ及びロータリーエンコーダ３２の出力）に加え、温度センサ３３からの出力が入力される。駆動回路制御部７１は、「駆動指示」および各種情報に基づくフィードバックループ等の制御アルゴリズムを用いて、駆動信号Ｓｄを演算する。そして、駆動回路制御部７１は、例えば温度Ｔｍが所定の温度より高くなると、モータ３１を保護すべく駆動信号Ｓｄの出力を停止する。このとき、モータ３１は「アイドル状態」となる。また、例えば、コントロールモジュール２０が出力する一連の動作を行うための「駆動指示」が終了した場合に、駆動回路制御部７１は「駆動指示」の入力がないため、駆動信号Ｓｄの出力を停止する。このとき、モータ３１は「アイドル状態」となる。なお、モータ３１を制御するための情報（駆動電流Ｉｄ、ロータリーエンコーダ３２及び温度センサ３３の出力）を、「制御情報」とする。
【００３１】
計時部７２は、モータ３１が駆動されると、駆動開始からの時間を計時する。時間判定部７３は、モータ３１が駆動されている際に、所定のタイミングから所定時間経過したか否かを判定する。
【００３２】
駆動判定部７４は、モータ３１の駆動がされているか否か、つまり、モータ３１が「駆動状態」であるか「アイドル状態」であるかを判定する。
【００３３】
計算部７５は、駆動電流Ｉｄ、モータ３１のトルクＴや温度Ｔｍに関する各種情報（所定期間における平均値、分散、最小値及び最大値）を計算する。具体的には、計算部７５は、駆動電流Ｉｄに基づいて、駆動電流Ｉｄ、トルクＴの平均値等を計算する。すなわち、計算部７５は、モータの駆動電流Ｉｄに対して所定の計算処理を施す。また、計算部７５は、温度センサ３３からの出力に基づいて、温度Ｔｍに関する平均値等を計算してもよい。
【００３４】
取得部７６は、計時部７２で計時されたモータ３１の駆動時間と、計算部７５での計算結果とを「モータ関連情報Ｄ」として取得する。
【００３５】
第１書き込み部７７は、取得部７６が取得した「モータ関連情報Ｄ」を、ＲＡＭ５１に書き込む。
【００３６】
第２書き込み部７８は、ＲＡＭ５１に格納された「モータ関連情報Ｄ」を、フラッシュメモリ５２に書き込む。
【００３７】
送信部７９は、コントロールモジュール２０からの「送信指示」に基づいて、フラッシュメモリ５２に記憶された「モータ関連情報Ｄ」を、コントロールモジュール２０に送信する。すなわち、送信部７９は、モータ関連情報処理回路を制御する制御装置からの「送信指示」に基づいて、不揮発性メモリに記憶された「モータ関連情報Ｄ」を、制御装置に送信する。
【００３８】
−−−マイコン６２で実行される処理の一例−−−
以下、「モータ関連情報Ｄ」がフラッシュメモリ５２に書き込まれる際にマイコン６２が実行する一連の処理１００を、図４，５を参照しつつ説明する。
【００３９】
ここでは、アーム型ロボットＸ（不図示）のアームが所定の動作をするように、コントロールモジュール２０から、モータ制御装置３０に対して所定の「駆動指示」が出力されていることとする。
【００４０】
まず、設定部７０は、コントロールモジュール２０からの「駆動指示」を受信すると、ＲＡＭ５１の初期設定を行う（Ｓ２００）。具体的には、設定部７０は、ＲＡＭ５１に記憶された過去のモータ３１の駆動時間を消去し、「モータ関連情報Ｄ」が格納されるＲＡＭ５１の領域を指定する。
【００４１】
そして、駆動回路制御部７１は、「駆動指示」及び上述の「制御情報」に基づいて、モータ３１を目標状態とする駆動信号Ｓｄを出力する（Ｓ２０１）。この結果、モータ３１の駆動が開始される。また、計時部７２は、モータ３１の駆動が開始されると、駆動開始からの時間を計時する（Ｓ２０２）。時間判定部７３は、モータ３１の駆動開始から、駆動時間が１０分以上経過したか否かを判定する（Ｓ２０３）。ここで、モータ３１の駆動開始から「１０分」とは、モータ３１の駆動時間が短く、モータ３１の状態にほぼ変化が無いような期間の一例である。すなわち、時間判定部７３の「１０分」という駆動時間は、本開示の発明を用いる用途に応じて適宜変更されうる。
【００４２】
モータ３１の駆動開始から、１０分未満である場合（Ｓ２０３：１０分未満）、駆動判定部７４は、モータ３１が「駆動状態」であるか否かを判定する（Ｓ２０４）。処理Ｓ２０４において、モータ３１が「アイドル状態」であると判定されると（Ｓ２０４：アイドル状態）、処理１００は終了する。このため、モータ３１の駆動が開始されてから１０分未満に「アイドル状態」になった場合、つまり、モータ３１の駆動時間が短く、モータ３１の状態にほぼ変化が無いような場合、「モータ関連情報Ｄ」が取得されることなく、処理１００は終了する。
【００４３】
一方、処理Ｓ２０４において、モータ３１が「駆動状態」であると判定されると（Ｓ２０４：駆動状態）、前述の処理Ｓ２０３が実行される。そして、モータ３１の駆動が開始されてから１０分以上経過すると（Ｓ２０３：１０分以上）、つまり、駆動開始からモータ３１に一定の負担がかかる期間が経過すると、計算部７５は、駆動電流Ｉｄ、トルクＴ、及び温度Ｔｍのそれぞれに関する平均値等を計算する（Ｓ２０５）。なお、処理Ｓ２０５において計算される駆動電流Ｉｄ等の平均値、分散、最小値及び最大値は、モータ３１の駆動開始から「１０分間」における値である。
【００４４】
また、取得部７６は、駆動開始から「１０分」の計算結果と、モータ３１が駆動開始されてからの駆動時間（「１０分」）と、を示す情報を「モータ関連情報Ｄ１」として取得する（Ｓ２０６）。なお、ここでは、ある時間における「モータ関連情報」を「モータ関連情報Ｄｎ」とし、「モータ関連情報Ｄ」は、取得部７６で取得される各時間の「モータ関連情報Ｄ１〜ｎ」の全てを含むこととする。
【００４５】
取得部７６が「モータ関連情報Ｄ１」を取得した後、第１書き込み部７７は、「モータ関連情報Ｄ１」をＲＡＭ５１に書き込む（Ｓ２０７）。また、時間判定部７３は、駆動開始から、駆動時間が１時間以上経過したか否かを判定する（Ｓ２０８）。なお、「１時間」（所定期間）は、モータ３１が連続して駆動された際に、モータ３１の状態を観測するに適した時間の一例である。
【００４６】
駆動開始から、１時間未満である場合（Ｓ２０８：１時間未満）、駆動判定部７４は、モータ３１が「駆動状態」であるか否かを判定する（Ｓ２０９）。そして、モータ３１が「アイドル状態」であると判定されると（Ｓ２０９：アイドル状態）、処理１００は終了する。つまり、駆動開始から１時間以内に「アイドル状態」となり、モータ３１の状態に大きな変化がないと考えられる場合、「モータ関連情報Ｄ１」は、フラッシュメモリ５２に書き込まれることなく処理１００は終了する。この結果、フラッシュメモリ５２の書き込み回数が不要に増加することを防ぐことができる。
【００４７】
一方、処理Ｓ２０９において、モータ３１が「駆動状態」であると判定されると（Ｓ２０９：駆動状態）、前述の処理Ｓ２０８が実行される。モータ３１の駆動が開始されてから１時間以上経過すると（Ｓ２０８：１時間以上）、計算部７５は、駆動電流Ｉｄ、トルクＴ、及び温度Ｔｍに関する各種情報を計算する（Ｓ２１０）。なお、処理Ｓ２１０において計算される駆動電流Ｉｄ等の平均値、分散、最小値及び最大値は、モータ３１の駆動開始から「１時間」における値である。
【００４８】
そして、取得部７６は、駆動開始から「１時間」の計算結果と、モータ３１が駆動開始されてからの駆動時間（「１時間」）とを示す情報を「モータ関連情報Ｄｎ（ｎ＝２）」として取得する（Ｓ２１１）。また、「モータ関連情報Ｄ２」が取得されると、第１書き込み部７７は、ＲＡＭ５１における新な記憶領域を指定し、「モータ関連情報Ｄ２」を書き込む（Ｓ２１２）。
【００４９】
また、時間判定部７３は、ＲＡＭ５１の新な記憶領域に情報が書き込まれてから、駆動時間が１時間以上経過したか否かを判定する（Ｓ２１３）。新な記憶領域に情報が書き込まれてから１時間未満である場合（Ｓ２１３：１時間未満）、駆動判定部７４は、モータ３１が「駆動状態」であるか否かを判定する（Ｓ２１４）。処理Ｓ２１４において、モータ３１が「駆動状態」であると判定されると（Ｓ２１４：駆動状態）、処理Ｓ２１３が実行される。この結果、モータ３１が駆動されている状態が１時間以上続く毎に、新たな「モータ関連情報Ｄｎ（ｎ≧３）」が、取得部７６により取得され、ＲＡＭ５１の新たな記憶領域に書き込まれることになる（Ｓ２１０〜Ｓ２１３）。一方、処理Ｓ２１４において、モータ３１が「アイドル状態」であると判定されると（Ｓ２１５：アイドル状態）、第２書き込み部７８は、ＲＡＭ５１に記憶された「モータ関連情報Ｄ」を取得し、フラッシュメモリ５２に書き込む（Ｓ２１５）。このため、利用者は、フラッシュメモリ５２に格納された「モータ関連情報Ｄ」を適宜参照することにより、モータ３１の運転状態を把握し、信頼性等に関する知見を得ることができる。
【００５０】
以上、本実施形態のロボット制御システム１０について説明した。モータ３１が駆動されている際、マイコン６２は、モータ３１をサーボ制御すべく、各種演算処理を実行している。このような状態に加えて、マイコン６２が「モータ関連情報Ｄ」をフラッシュメモリ５２へ書き込むと、マイコン６２には演算処理の負荷がよりかかるため、高価なマイコンを用いる必要がある。しかしながら、マイコン６２の第２書き込み部７８は、モータ３１の駆動が停止している「アイドル状態」において、「モータ関連情報Ｄ」をフラッシュメモリ５２に書き込んでいる（例えば、処理Ｓ２１５）。このため、本実施形態においては、必要以上に処理能力の高いマイコンを用いる必要がない。したがって、本実施形態では、安価なマイコンを使用しつつ、「モータ関連情報Ｄ」をフラッシュメモリ５２に確実に書き込むことができる。
【００５１】
また、モータ３１が連続して駆動された際に、取得部７６は、モータ３１の状態の変化を観測するに適した時間の一例である「１時間」（所定期間）ごとに「モータ関連情報Ｄ」を取得する（例えば、処理Ｓ２１０〜Ｓ２１３）。このため、利用者は、モータ３１の状態の変化を確実に把握することができる。
【００５２】
また、マイコン６２の送信部７９は、コントロールモジュール２０からの「送信指示」に基づいて、フラッシュメモリ５２に記憶された「モータ関連情報Ｄ」を、コントロールモジュール２０に送信する。このため、仮にモータモジュール２３がアーム型ロボットＸに組み込まれ、利用者がモータモジュール２３にアクセスし難い場合であっても、利用者は、利用者が操作するコントロールモジュール２０にて「モータ関連情報Ｄ」を取得することができる。
【００５３】
また、本実施形態の「モータ関連情報Ｄ」は、モータ３１の駆動時間を示す情報と、駆動電流Ｉｄの所定期間における平均値、分散、最小値及び最大値と、モータ３１のトルクＴの所定期間における平均値、分散、最小値及び最大値と、温度Ｔｍの所定期間における平均値、分散、最小値及び最大値と、を含む。「モータ関連情報Ｄ」がこのような情報を含むことにより、利用者は、モータ３１の信頼性等に関する知見を得ることができる。
【００５４】
また、モータ３１が駆動されている際の駆動電流Ｉｄのデータの全て取得することによっても、利用者は、モータ３１の状態を把握することができる。しかしながら、モータ３１が駆動されている際の駆動電流Ｉｄのデータ量は多くなることから、これらのデータの全てをフラッシュメモリ５２に格納させると、フラッシュメモリ５２に必要な記憶領域も大きくなり、マイコン６２への負荷も増加する。本実施形態では、駆動電流Ｉｄに基づいて、駆動電流Ｉｄ、トルクＴの平均値等が計算され、計算された結果を含む「モータ関連情報Ｄ」がフラッシュメモリ５２に書き込まれる。したがって、フラッシュメモリ５２に必要な記憶領域を小さくすることができるとともに、マイコン６２への負荷を減らすことができる。
【００５５】
また、本実施形態では、取得部７６は、「１時間」毎に「モータ関連情報Ｄ」を取得することとしたが、これに限られない。例えば、取得部７６は、コントロールモジュール２０からの「取得指示」に基づいて、「モータ関連情報Ｄ」を取得することとしても良い。すなわち、モータ関連情報処理回路を制御する制御装置からの「取得指示」に基づいて、「モータ関連情報Ｄ」を取得することとしても良い。
【００５６】
このような場合、利用者の指定する所望のタイミングで「モータ関連情報Ｄ」を取得することができる。
【００５７】
なお、上記実施例は本発明の理解を容易にするためのものであり、本発明を限定して解釈するためのものではない。本発明は、その趣旨を逸脱することなく、変更、改良され得ると共に、本発明にはその等価物も含まれる。
【００５８】
例えば、図４及ぶ図５では、処理Ｓ２０５，Ｓ２１０のタイミングで「モータ関連情報Ｄ」の計算処理が実行されることとしたがこれに限られない。処理Ｓ２０５の代わりに、例えば、計時が開始された後（処理Ｓ２０２）の「１０分」未満のタイミングで、計算部７５は、「モータ関連情報Ｄ」の計算処理を実行しても良い。また、処理Ｓ２１０の代わりに、駆動時間が「１時間未満」（処理Ｓ２０８：１時間未満）であっても、計算部７５は、「モータ関連情報Ｄ」の計算処理を実行しても良い。また、計算処理は図４及び図５に示すフロー順に限ることなく、駆動回路制御部７１で回路制御を行う時に計算部７６が最大値、最小値と平均を求めるために行う累積計算を行う実施例もあり得る。
【００５９】
例えば、ロータリーエンコーダ３２は、モータ３１におけるロータ（不図示）の回転位置を示す信号や、モータ３１の回転速度を示す信号を出力することを説明したが、これに限られない。ロータリーエンコーダ３２に変わり、ホール素子等の磁気検出センサによって、モータ３１の回転位置または回転速度を示す信号を得ることができる。または、駆動電流Ｉｄに基づき、回転位置または回転速度を示す信号を得ても良い。
【００６０】
例えば、モータモジュール２３では、計算部７５は、温度センサ３３からの出力に基づいて、温度Ｔｍの平均値等を計算したがこれに限られない。計算部７５は、駆動電流Ｉｄの大きさや予め得られた実験データ等から、モータ３１の温度に関する情報を計算しても良い。
【００６１】
また、「モータ関連情報Ｄ」は、駆動電流Ｉｄに関する情報に限らずモータ３１のトルクＴ等の各種情報を含むこととしたが、これに限られない。「モータ関連情報Ｄ」は、例えば、駆動電流Ｉｄに関する情報だけであっても良い。すなわち、「モータ関連情報Ｄ」は、モータの駆動時間に関する情報、モータの駆動電流に関する情報、モータのトルクに関する情報、及びモータの温度に関する情報のうち、少なくとも何れかの一つの情報を含む。
【００６２】
また、例えば、計算部７５は、周囲の音声または騒音をセンシングするためのマイクからの出力に基づき、音声または騒音情報をフーリエ変換する計算を行っても良い。これにより、例えば、「モータ関連情報Ｄ」は、周囲の音声または騒音の周波数スペクトルを含んでも良い。
【００６３】
また、例えば、フラッシュメモリ５２が、自己に書き込まれた回数（更新回数）を記憶している場合、送信部７９は、「モータ関連情報Ｄ」に加え、更新回数をコントロールモジュール２０に送信しても良い。利用者は、フラッシュメモリ５２の更新回数を把握することにより、モータ３１の信頼性のみならず、フラッシュメモリ５２の信頼性（寿命）を評価することができる。
【００６４】
また、モータモジュール２３〜２５は、アーム型ロボットＸに用いられることとしたが、他の用途に用いられても良い。具体的には、例えば、モータモジュール２３〜２５は、無人搬送車、ドローン、または、洗濯機、掃除機のような一般的な家電製品等の各種モータを回転させるために用いられても良い。
【００６５】
また、本実施形態の「制御情報」は、駆動電流Ｉｄやロータリーエンコーダ３２等の出力であることとしたが、これらに限られない。例えば、モータの制御が位置センサレスベクトル制御である場合、駆動電流Ｉｄ等からの推定値を含んでいても良い。また、「制御情報」は、ロータリーエンコーダ３２の出力のみならず、ロータリーエンコーダ３２の出力に処理が施された情報（例えば、位置情報を微分した速度情報）を含んでいても良い。
【００６６】
また、本実施形態において、モータの駆動が停止している「アイドル状態」において、「モータ関連情報Ｄ」をフラッシュメモリ５２に書き込む例を示した。本実施形態では、定期的にフラッシュメモリ５２に書き込むことで実現している。ここで、コントロールモジュール２０（制御装置）が「アイドル状態」から「シャットダウン状態」に遷移することが考えられる。シャットダウン状態は、電源供給を停止することに備えての処理を行う状態である。コントロールモジュール２０（制御装置）が、「シャットダウン状態」に遷移する場合、コントロールモジュール２０（制御装置）は、マイコン６２に対して、「シャットダウン指示」を送信する。マイコン６２は、「シャットダウン指示」に基づき、ＲＡＭ５１に記録されたモータ関連情報Ｄをフラッシュメモリ５２に書き込んでも良い。すなわち、取得部７６は、コントロールモジュール２０からの「シャットダウン指示」に基づいて、「モータ関連情報Ｄ」を取得することとしても良い。すなわち、モータ関連情報処理回路を制御する制御装置からの「シャットダウン指示」に基づいて、「モータ関連情報Ｄ」を取得することとしても良い。
【００６７】
また、何らかの理由でモータモジュール２３の外部からの電源供給が止まることも想定される。このような状態においてフラッシュメモリ５２への書き込みを可能とするために、駆動回路６３には蓄電部（不図示）が設けられてもよい。蓄電部は、例えば、コンデンサまたはバッテリ等である。蓄電部は、ロボット制御システム１０から供給された電力を蓄える。モータモジュール２３の外部からの電源供給が止まることを感知して、フラッシュメモリ５２にデータを書き込むのである。
【符号の説明】
【００６８】
１０…ロボット制御システム、２０…コントロールモジュール、２１，２２…センサモジュール、２３〜２５…モータモジュール、３０…モータ制御装置、３１…モータ、３２…ロータリーエンコーダ、３３…温度センサ、５０…ＲＯＭ、５１…ＲＡＭ、５２…フラッシュメモリ、６０，６１…ＩＦ回路、６２…マイコン、６３…駆動回路、７０…設定部、７１…駆動回路制御部、７２…計時部、７３…時間判定部、７４…駆動判定部、７５…計算部、７６…取得部、７７…第１書き込み部、７８…第２書き込み部、７９…送信部 
【図１】
2018147304.tif 000003
【図２】
2018147304.tif 000004
【図３】
2018147304.tif 000005
【図４】
2018147304.tif 000006
【図５】
2018147304.tif 000007
【国際調査報告】
2018147304.tif 000008
2018147304.tif 000009
2018147304.tif 000010
2018147304.tif 000011