IP Force 特許公報掲載プロジェクト 2022.1.31 β版

知財求人 - 知財ポータルサイト「IP Force」

▶ セイコーエプソン株式会社の特許一覧

特開2024-103980エンコーダー及びモーター制御システム
<>
  • 特開-エンコーダー及びモーター制御システム 図1
  • 特開-エンコーダー及びモーター制御システム 図2
  • 特開-エンコーダー及びモーター制御システム 図3
  • 特開-エンコーダー及びモーター制御システム 図4
  • 特開-エンコーダー及びモーター制御システム 図5
  • 特開-エンコーダー及びモーター制御システム 図6
  • 特開-エンコーダー及びモーター制御システム 図7
  • 特開-エンコーダー及びモーター制御システム 図8
  • 特開-エンコーダー及びモーター制御システム 図9
  • 特開-エンコーダー及びモーター制御システム 図10
  • 特開-エンコーダー及びモーター制御システム 図11
  • 特開-エンコーダー及びモーター制御システム 図12
  • 特開-エンコーダー及びモーター制御システム 図13
  • 特開-エンコーダー及びモーター制御システム 図14
  • 特開-エンコーダー及びモーター制御システム 図15
  • 特開-エンコーダー及びモーター制御システム 図16
  • 特開-エンコーダー及びモーター制御システム 図17
  • 特開-エンコーダー及びモーター制御システム 図18
  • 特開-エンコーダー及びモーター制御システム 図19
  • 特開-エンコーダー及びモーター制御システム 図20
< >
(19)【発行国】日本国特許庁(JP)
(12)【公報種別】公開特許公報(A)
(11)【公開番号】P2024103980
(43)【公開日】2024-08-02
(54)【発明の名称】エンコーダー及びモーター制御システム
(51)【国際特許分類】
   G01D 5/12 20060101AFI20240726BHJP
   B25J 19/06 20060101ALI20240726BHJP
   H02P 29/024 20160101ALI20240726BHJP
【FI】
G01D5/12 K
B25J19/06
H02P29/024
【審査請求】未請求
【請求項の数】12
【出願形態】OL
(21)【出願番号】P 2023007956
(22)【出願日】2023-01-23
(71)【出願人】
【識別番号】000002369
【氏名又は名称】セイコーエプソン株式会社
(74)【代理人】
【識別番号】100179475
【弁理士】
【氏名又は名称】仲井 智至
(74)【代理人】
【識別番号】100216253
【弁理士】
【氏名又は名称】松岡 宏紀
(74)【代理人】
【識別番号】100225901
【弁理士】
【氏名又は名称】今村 真之
(72)【発明者】
【氏名】安達 和広
【テーマコード(参考)】
2F077
3C707
5H501
【Fターム(参考)】
2F077AA02
2F077NN02
2F077NN17
2F077NN24
2F077NN30
2F077PP12
2F077PP19
2F077TT35
3C707BS10
3C707BS26
3C707HS27
3C707KS22
3C707KS37
3C707KV01
3C707KV08
3C707KV12
3C707MS21
5H501AA22
5H501EE08
5H501JJ17
5H501LL07
5H501LL54
5H501MM09
(57)【要約】
【課題】モーター駆動回路に対して直接に速度異常の検出結果を出力することが可能なエンコーダー等を提供すること。
【解決手段】エンコーダー100は、速度検出部110と速度異常検出部120とを含む。速度検出部110は、モーター駆動回路300により駆動されるモーター10の速度を検出する。速度異常検出部120は、速度検出部110からの速度検出結果と、速度の許容範囲を示す許容範囲情報TLINFとの比較処理を行って、速度検出結果が許容範囲外であるときに、速度異常の検出結果SPERRをモーター駆動回路300に出力する。
【選択図】図3
【特許請求の範囲】
【請求項1】
モーター駆動回路により駆動されるモーターの速度を検出する速度検出部と、
前記速度検出部からの速度検出結果と、前記速度の許容範囲を示す許容範囲情報との比較処理を行って、前記速度検出結果が前記許容範囲外であるときに、速度異常の検出結果を前記モーター駆動回路に出力する速度異常検出部と、
を含むことを特徴とするエンコーダー。
【請求項2】
請求項1に記載されたエンコーダーにおいて、
前記速度検出部は、
前記速度を検出して速度検出信号を出力し、
前記速度異常検出部は、
前記許容範囲情報が入力され、前記許容範囲情報に基づいて、前記速度の許容範囲に対応した基準速度検出信号を生成し、前記速度検出信号と前記基準速度検出信号とを比較することを特徴とするエンコーダー。
【請求項3】
請求項2に記載されたエンコーダーにおいて、
前記速度検出信号は、前記速度に応じた周期を有する信号であり、
前記許容範囲情報は、
前記速度検出信号の周期の許容範囲を示す基準周期情報であることを特徴とするエンコーダー。
【請求項4】
請求項1に記載されたエンコーダーにおいて、
前記速度検出部は、
前記速度を検出して速度検出信号を出力し、
前記速度異常検出部は、
前記速度検出信号の周期の許容範囲を示す基準周期情報が前記許容範囲情報として入力され、前記速度検出信号の周期を示す周期情報を求め、前記周期情報と前記基準周期情報を比較することを特徴とするエンコーダー。
【請求項5】
請求項1に記載されたエンコーダーにおいて、
前記速度異常検出部は、
複数の期間の各期間に対して許容範囲が対応づけられた前記許容範囲情報が入力され、前記各期間において、前記各期間に対応づけられた前記許容範囲と前記速度検出結果とを比較することを特徴とするエンコーダー。
【請求項6】
請求項5に記載されたエンコーダーにおいて、
前記許容範囲情報を記憶するメモリーを含み、
前記速度異常検出部は、
前記速度検出部からの前記速度検出結果に基づいて、前記各期間に対応づけられた前記許容範囲を更新することを特徴とするエンコーダー。
【請求項7】
請求項1に記載されたエンコーダーにおいて、
前記許容範囲情報を記憶するメモリーを含み、
前記速度異常検出部は、
前記速度検出部からの前記速度検出結果に基づいて前記許容範囲情報を更新することを特徴とするエンコーダー。
【請求項8】
請求項1に記載されたエンコーダーにおいて、
前記速度検出部は、
前記速度を検出して速度検出信号を出力し、
前記速度異常検出部は、
前記速度検出部から前記速度検出信号が入力されたタイミング以降に前記比較処理を行うことを特徴とするエンコーダー。
【請求項9】
請求項1に記載されたエンコーダーにおいて、
前記速度異常検出部は、
前記モーター駆動回路を制御するコントローラーから前記許容範囲情報が入力されることを特徴とするエンコーダー。
【請求項10】
請求項1乃至9のいずれか一項に記載されたエンコーダーと、
前記モーターを駆動する前記モーター駆動回路と、
前記エンコーダーからの前記速度検出結果に基づいて前記モーター駆動回路を制御するコントローラーと、
を含むことを特徴とするモーター制御システム。
【請求項11】
請求項10に記載されたモーター制御システムにおいて、
前記コントローラーは、
前記許容範囲情報を前記エンコーダーに出力し、
前記エンコーダーは、
前記許容範囲情報に基づいて前記速度異常の検出結果を前記モーター駆動回路に出力し、
前記モーター駆動回路は、
前記エンコーダーから前記速度異常の検出結果が入力されたとき異常時処理を行うことを特徴とするモーター制御システム。
【請求項12】
請求項10に記載されたモーター制御システムにおいて、
第2モーターを駆動する第2モーター駆動回路と、
前記第2モーターの速度を検出する第2エンコーダーと、
を含み、
前記コントローラーは、
前記エンコーダーから前記速度異常の検出結果が入力されたとき、前記第2モーター駆動回路に異常時処理を行わせることを特徴とするモーター制御システム。
【発明の詳細な説明】
【技術分野】
【0001】
本発明は、エンコーダー及びモーター制御システム等に関する。
【背景技術】
【0002】
特許文献1には、ロボットと、ロボットの動作を制御するロボット制御装置と、を含むロボットシステムが開示されている。ロボットは、電源と、駆動部と、電源と駆動部の間の電力供給路に設けられた電力遮断部と、を含む。駆動部は、モーターと、モーターの出力軸の角度位置を表すエンコーダー値を出力するエンコーダーと、を含む。ロボット制御装置は、エンコーダー値に基づいてエンコーダーが故障していると判断したとき、遮断信号を動力遮断部へ出力する。動力遮断部は、遮断信号を受けたとき、電力供給路を遮断することで駆動部への電力供給を遮断する。これにより、モーターが停止する。
【先行技術文献】
【特許文献】
【0003】
【特許文献1】特開2022-160206号公報
【発明の概要】
【発明が解決しようとする課題】
【0004】
特許文献1では、エンコーダー故障時のモーター停止制御において、エンコーダー、ロボット制御装置及び電力遮断部の経路で信号が伝わる。ロボット制御装置を介することで、エンコーダーとロボット制御装置の間の通信、及びロボット制御装置と電力遮断部の間の通信が生じるという課題がある。例えば、ロボットとロボット制御装置は離れた場所に設置され、ケーブル等で接続されている。このため、ケーブルを介した通信処理の通信遅延により制御遅延が発生するおそれがある。或いは、通信経路にノイズが入力されることで誤判定が生じる恐れがある。
【課題を解決するための手段】
【0005】
本開示の一態様は、モーター駆動回路により駆動されるモーターの速度を検出する速度検出部と、前記速度検出部からの速度検出結果と、前記速度の許容範囲を示す許容範囲情報との比較処理を行って、前記速度検出結果が前記許容範囲外であるときに、速度異常の検出結果を前記モーター駆動回路に出力する速度異常検出部と、を含むエンコーダーに関係する。
【0006】
また本開示の他の態様は、上記のエンコーダーと、前記モーターを駆動する前記モーター駆動回路と、前記エンコーダーからの前記速度検出結果に基づいて前記モーター駆動回路を制御するコントローラーと、を含むモーター制御システムに関係する。
【図面の簡単な説明】
【0007】
図1】本実施形態を用いない場合のモーター制御システムの構成例。
図2】モーター制御システムを適用可能なロボットシステムの構成例。
図3】本実施形態におけるモーター制御システムの構成例。
図4】正常時におけるモーターの動作と速度検出信号の波形例。
図5】異常時におけるモーターの動作と速度検出信号の波形例。
図6】エンコーダーの第1詳細構成例。
図7】正常動作におけるエンコーダーの信号波形例。
図8】異常動作におけるエンコーダーの信号波形例。
図9】比較器の第1詳細構成例。
図10】正常動作における比較器の信号波形例。
図11】異常動作における比較器の信号波形例。
図12】比較器の第2詳細構成例。
図13】エンコーダーの第2詳細構成例。
図14】第2詳細構成例における基準周期情報の例。
図15】予測出力生成部の信号波形例。
図16】エンコーダーの第3詳細構成例。
図17】速度異常検出部が行う処理のフローチャート。
図18】速度異常検出部が行う処理のフローチャート。
図19】速度異常検出部が行う処理のフローチャート。
図20】モーター制御システムの第2構成例。
【発明を実施するための形態】
【0008】
以下、本開示の好適な実施形態について詳細に説明する。なお以下に説明する本実施形態は特許請求の範囲に記載された内容を不当に限定するものではなく、本実施形態で説明される構成の全てが必須構成要件であるとは限らない。
【0009】
1.モーター制御システム
図1は、本実施形態を用いない場合のモーター制御システムの構成例である。本例では、コントローラーが異常判断してモーターを停止等する構成となっている。モーター制御システム5は、コントローラー201と駆動部401とを含む。駆動部401は、モーター駆動回路301とモーター11とセンサー21とエンコーダー101とを含む。
【0010】
センサー21は、モーター11の回転等を検出する。エンコーダー101は、センサー21からの検出信号を受けて、モーター11の回転速度を示す速度検出信号を出力する。コントローラー201は、エンコーダー101からの速度検出信号に基づいて駆動異常を検出する。例えば、モーター11等の故障又は駆動対象と周辺物等の衝突によりモーター11が停止した場合、速度検出信号がコントローラー201に入力されなくなる、または停止を示す速度検出信号がコントローラー201に入力される。コントローラー201は、モーター駆動回路301に対して駆動指示を出力しているにも関わらず、速度検出信号が入力されなくなった場合または速度検出信号がモーターの停止を示している場合に異常と判断し、モーター駆動回路301への駆動指示を停止する。これにより、モーター11の回転が停止する。
【0011】
図2は、モーター制御システムを適用可能なロボットシステムの構成例である。ロボットシステム2は、ロボット500とコントローラー200とケーブル250とを含む。なお、モーター制御システムの適用対象はロボットシステムに限らず、印刷装置等の、モーターを用いて機械的動作を制御するシステムであればよい。
【0012】
ロボット500は、ベースとアームの間又はアームとアームの間を接続する関節510と、コントローラー200との通信を行う通信回路550とを含む。図2には1腕型のロボットの例を示すが2腕型のロボットであってもよい。また関節数は1以上であればよい。関節510の各々には駆動部400が設けられ、駆動部400のモーターが関節を回転させることでアームが動作する。駆動部400のエンコーダーは速度検出信号を出力し、通信回路550がケーブル250を介して速度検出信号をコントローラー200へ送信する。コントローラー200は、速度検出信号に基づいてモーター制御信号を生成し、ケーブル250を介してモーター制御信号を駆動部400のモーター駆動回路へ送信する。
【0013】
図1のモーター制御システム5を図2のロボットシステム2に適用した場合、図1のコントローラー201と駆動部401は、それぞれ、図2のコントローラー200と駆動部400に適用される。このとき、エンコーダー101が出力した速度検出信号は、通信回路550によってケーブル250を介してコントローラー201へ出力され、コントローラー201は、速度検出信号に基づいて異常を検出した場合に再びケーブル250と通信回路550を介してモーター駆動回路301へ停止信号を送信する。このように、コントローラー201を介して異常時のモーター停止を行った場合、遅延又は誤判定が生じる可能性がある。
【0014】
例えば、ケーブル250と通信回路550を介した通信がパケット通信で行われる場合には、信号とパケット間の変換時間や、1パケットを最後まで受信するための時間が必要となり、異常発生からモーター停止まで遅延が発生する恐れがある。或いは、通信がデータ又はアナログ信号のいずれであっても、ケーブル250等の通信経路におけるノイズによって信号エラーが生じ、コントローラー201が異常と正常を誤って判定する恐れがある。
【0015】
図3は、本実施形態におけるモーター制御システムの構成例である。モーター制御システム1は、コントローラー200と駆動部400とを含む。駆動部400は、モーター駆動回路300とモーター10とセンサー20とエンコーダー100とを含む。図3にはモーター制御システム1が1つの駆動部を含む例を示すが、後述のようにモーター制御システム1が複数の駆動部を含んでもよい。
【0016】
モーター10は、モーター駆動回路300により駆動されることで回転し、その回転により駆動対象を動かす。駆動対象の動作は様々であってよく、回転又は直進等である。モーター10は、例えば直流モーター、交流モーター又はステッピングモーター等である。
【0017】
モーター駆動回路300は、コントローラー200からの制御信号MCNTに基づいて駆動信号SDRVをモーター10へ出力する。またモーター駆動回路300は、モーター10を駆動する電流をセンス抵抗等により検出する。コントローラー200は、その電流検出結果ISENに基づいて、モーター10が所与のトルク又は回転速度等を発生するように、モーター駆動回路300を制御する。所与のトルク又は回転速度等は、ロボットアーム等の駆動対象が所与の動作を行うように、設定されている。
【0018】
センサー20はエンコーダー用のセンサーであり、モーター10の速度を検出する。センサー20は、モーター10自体、又はモーター10の駆動対象のいずれに設置されてもよいが、いずれの場合にもモーター10の速度に応じた検出信号SENQが得られる。センサー20は、光学式又は磁気式の速度センサーである。光学式のセンサーは、例えば、光源と、検出対象に固定されるスリット板と、光源からスリット板を通過した光を検出する受光センサーとを含む。磁気式のセンサーは、例えば、検出対象に固定される磁石と、磁石から受ける磁界を検出するホールセンサーとを含む。センサー20が出力する検出信号SENQは正弦波等の周期的な信号であり、モーター10の速度が速いほど検出信号SENQの周期が短くなる。
【0019】
エンコーダー100は、センサー20からの検出信号SENQを受けて、速度検出信号ENCQをコントローラー200へ出力する。速度検出信号ENCQは、センサー20からのアナログの検出信号SENQが2値化された信号であり、周期的なパルス信号である。モーター10の速度が速いほど速度検出信号ENCQの周期が短くなる。エンコーダー100は、例えば、複数の回路素子が半導体基板に集積された集積回路装置、或いは、複数の回路部品がプリント基板等に実装された回路基板等である。コントローラー200は、速度検出信号ENCQに基づいて制御信号MCNTをモーター駆動回路300へ出力する。具体的には、コントローラー200は、速度検出信号ENCQが示す速度、又は、その速度を積分して得られる位置等に基づいて、所望の駆動対象の動作が得られるようにモーター10を制御する。
【0020】
エンコーダー100は、モーター10の速度の許容範囲を示す許容範囲情報TLINFをコントローラー200から受信し、その許容範囲情報TLINFと速度検出信号ENCQを比較することで、モーター10の速度異常を検出する。エンコーダー100は、速度異常の検出結果SPERRをモーター駆動回路300に出力する。検出結果SPERRは、異常の有無を示す信号であってもよいし、モーター駆動回路300に異常時処理を指示する信号であってもよい。モーター駆動回路300は、異常が有ることを示す信号、或いは異常時処理を指示する信号を受けたとき、異常時処理を行う。異常時処理は、モーター10の回転を停止する処理、或いはモーター10に規定の回転を行わせる処理等である。規定の回転は、例えば、異常発生前におけるモーター10の回転方向とは逆方向に所定量だけモーター10を回転させること等である。
【0021】
図4は、正常時におけるモーターの動作と速度検出信号の波形例である。モーター10は徐々に加速して速度を上昇させ、ほぼ一定速度を保ち、徐々に減速して速度を下降させる。位置は、速度の積分となる。エンコーダー100は、速度に反比例したパルス幅の矩形波信号を、速度検出信号ENCQとして出力する。即ち、速度検出信号ENCQの周期は、モーター10が加速すると共に減少し、モーター10の速度が維持されるときは一定であり、モーター10が減速すると共に増加する。
【0022】
図5は、異常時におけるモーターの動作と速度検出信号の波形例である。ここでは、モーター10が一定速度を保っているときに、コントローラー200からの指示以外の要因でモーター10の回転が異常停止した例を示す。但し、異常停止の発生タイミングは任意であってよい。異常停止は、例えばモーター10の故障、或いはモーター駆動対象と周囲物との衝突等による停止である。このような異常停止が発生すると、速度検出信号ENCQはパルスが無い状態となり、ローレベル又はハイレベルに固定された状態となる。
【0023】
図5のような異常状態においても、図4のようなモーター駆動が行われており、それに応じた速度検出信号ENCQが期待される。コントローラー200がエンコーダー100へ送信する許容範囲情報TLINFは、その期待される速度検出信号ENCQに対して実際得られる速度検出信号ENCQの許容範囲を示している。エンコーダー100は、そのような許容範囲情報TLINFを用いることで、図5のような異常状態において得られた速度検出信号ENCQが、期待される速度検出信号ENCQとは異なっていると判断できる。
【0024】
2.エンコーダーの第1詳細構成例
図6は、エンコーダーの第1詳細構成例である。エンコーダー100は、速度検出部110と速度異常検出部120とを含む。
【0025】
速度検出部110は、センサー20からの検出信号SENQを2値化し、その結果を速度検出信号ENCQとして出力する。速度検出部110は、例えば、検出信号SENQと基準電圧とを比較するコンパレーターである。
【0026】
速度異常検出部120は、速度検出信号ENCQとコントローラー200からの基準周期情報PREFとに基づいて異常検出を行い、その結果を比較信号CPQとして出力する。基準周期情報PREFは図3の許容範囲情報TLINFに対応し、比較信号CPQは図3の速度異常の検出結果SPERRに対応する。速度異常検出部120は、予測情報取得部121と予測出力生成部122と比較器123と比較開始検出部124とを含む。
【0027】
予測情報取得部121は、速度異常検出部120による異常検出が開始される前にコントローラー200から基準周期情報PREFを取得する。基準周期情報PREFは、速度検出信号ENCQの周期の許容範囲を示す情報であり、具体的には速度検出信号ENCQの周期の下限を示す情報である。この下限を基準周期と呼ぶこととする。予測情報取得部121は、コントローラー200との通信を行う通信回路であり、例えばSPI方式又はI2C方式のインターフェース回路である。
【0028】
比較開始検出部124は、速度検出信号ENCQに基づいて比較開始タイミングを検出し、その結果を比較イネーブル信号ENBとして出力する。比較開始検出部124は、例えば、速度検出信号ENCQにおける最初のパルスの立ち上がりが入力されたとき、比較イネーブル信号ENBをディセーブルからイネーブルにする。或いは、比較開始検出部124は、速度検出信号ENCQの周期が最初に基準周期を超えたとき、比較イネーブル信号ENBをディセーブルからイネーブルにしてもよい。
【0029】
予測出力生成部122は、基準周期情報PREFに基づいて、パルス周期が基準周期である基準速度検出信号SREFを生成する。予測出力生成部122は、比較イネーブル信号ENBがディセーブルからイネーブルになったとき基準速度検出信号SREFの生成を開始する。予測出力生成部122は、例えば、カウンターと、カウント値と基準周期情報PREFに基づいて基準速度検出信号SREFを生成するデコーダーと、を含む。
【0030】
比較器123は、速度検出信号ENCQと基準速度検出信号SREFを比較し、その結果を比較信号CPQとして出力する。なお、比較開始検出部124、予測出力生成部122及び比較器123は、例えばロジック回路で構成される。第1詳細構成例においては、許容範囲情報は、モーターが最小限動いていると見なせる速度の下限に対応している。比較器123は、その速度の下限より速くモーターが回転している場合には、モーターが正常動作していると判定する。
【0031】
図7に正常動作におけるエンコーダーの信号波形例を示す。速度検出信号ENCQのパルスが発生した比較開始タイミングTstaにおいて、基準速度検出信号SREFの出力が開始される。基準速度検出信号SREFの周期は基準周期Pで一定である。速度検出信号ENCQの周期は速度に応じて変化するが、比較開始タイミングTsta以降において基準周期P以下となっている。この場合、比較器123は比較信号CPQをローレベルに維持する。
【0032】
図8に異常動作におけるエンコーダーの信号波形例を示す。比較開始タイミングTsta以降において、速度検出信号ENCQの周期は基準周期P以下となっているが、モーターが異常停止すると速度検出信号ENCQのパルスが発生しなくなる。このとき、速度検出信号ENCQの周期は基準周期Pより長いとみなせる。比較器123は、速度検出信号ENCQの周期が基準周期Pより長くなったとき、比較信号CPQをローレベルからハイレベルに変化させる。モーター駆動回路300は、比較信号CPQがローレベルからハイレベルになったとき、異常時処理を行う。
【0033】
図9は、比較器の第1詳細構成例である。比較器123は、ラッチ回路FF1~FF4とアンド回路AN1~AN3とバッファー回路BF1、BF2とインバーター回路IN1とを含む。図10は、正常動作における比較器の信号波形例である。正常動作においては、速度検出信号ENCQの周期が基準速度検出信号SREFの周期より短い。
【0034】
ラッチ回路FF1は、基準速度検出信号SREFの立ち上がりエッジでハイレベルをラッチし、出力信号FF1Qをローレベルからハイレベルにする。ラッチ回路FF1は、アンド回路AN3が出力するリセット信号RESETがハイレベルになったとき、出力信号FF1Qをローレベルにリセットする。
【0035】
ラッチ回路FF2は、速度検出信号ENCQの立ち上がりエッジでハイレベルをラッチし、出力信号FF2Qをローレベルからハイレベルにする。ラッチ回路FF2は、リセット信号RESETがハイレベルになったとき、出力信号FF2Qをローレベルにリセットする。
【0036】
アンド回路AN3は、ラッチ回路FF1の出力信号FF1Qとラッチ回路FF2の出力信号FF2Qの論理積を、リセット信号RESETとして出力する。
【0037】
バッファー回路BF1は、ラッチ回路FF1の出力信号FF1Qを遅延させて、遅延信号FF1QDを出力する。アンド回路AN1は、ラッチ回路FF1の出力信号FF1Qと遅延信号FF1QDの論理積を、出力信号AN1Qとして出力する。ラッチ回路FF1の出力信号FF1Qは、アンド回路AN3の遅延時間程度のパルス幅になっているため、アンド回路AN1の出力信号AN1Qはローレベルに維持される。
【0038】
バッファー回路BF2は、ラッチ回路FF2の出力信号FF2Qを遅延させて、遅延信号FF2QDを出力する。アンド回路AN2は、ラッチ回路FF2の出力信号FF2Qと遅延信号FF2QDの論理積を、出力信号AN2Qとして出力する。ラッチ回路FF1、FF2のリセットタイミングは、周期が長い出力信号FF1Qの立ち上がりタイミングとなる。このため、出力信号FF2Qが立ち上がった後に出力信号FF1Qが立ち上がるまでの時間が、出力信号FF2Qのパルス幅となる。このパルス幅は、バッファー回路BF2の遅延時間より長い場合がある。このため、アンド回路AN2の出力信号AN2Qはハイレベルになる期間がある。
【0039】
ラッチ回路FF3は、比較イネーブル信号ENBがローレベルからハイレベルになったとき、比較信号CPQをローレベルにリセットする。ラッチ回路FF3は、アンド回路AN1の出力信号AN1Qがローレベルからハイレベルになったとき、比較信号CPQをローレベルからハイレベルにする。正常動作においては出力信号AN1Qがローレベルに維持されるので、比較信号CPQはローレベルに維持される。
【0040】
ラッチ回路FF4は、比較イネーブル信号ENBがローレベルからハイレベルになったとき、第2比較信号CPQ_OKをローレベルにリセットする。第2比較信号CPQ_OKは、モーターが正常動作していることを示す信号である。ラッチ回路FF4は、アンド回路AN2の出力信号AN2Qがローレベルからハイレベルになったとき、第2比較信号CPQ_OKをローレベルからハイレベルにする。正常動作においては出力信号AN1Qが最初にローレベルからハイレベルになったとき、第2比較信号CPQ_OKがローレベルからハイレベルになる。
【0041】
図11は、異常動作における比較器の信号波形例である。異常動作においては、速度検出信号ENCQの周期が基準速度検出信号SREFの周期より長い。このため、図10の正常動作とは論理が逆転した波形となる。即ち、異常動作においては出力信号AN1Qが最初にローレベルからハイレベルになったとき、比較信号CPQがローレベルからハイレベルになる。また、出力信号AN2Qがローレベルに維持されるので、第2比較信号CPQ_OKはローレベルに維持される。
【0042】
図12は、比較器の第2詳細構成例である。本例の比較器126は、図6の予測出力生成部122及び比較器123に変えて、設けられる。比較器126は、予測周期生成部131と周期変換部132と周波数比較部133とを含む。
【0043】
周期変換部132は、速度検出信号ENCQを、速度検出信号ENCQのパルス周期を示す周期情報PENQに変換する。周期変換部132は、例えばカウンターを含む。カウンターは、速度検出信号ENCQの立ち上がりエッジでカウントを開始する。周期変換部132は、次の速度検出信号ENCQの立ち上がりエッジにおけるカウント値を、周期情報PENQとして出力する。
【0044】
予測周期生成部131は、基準周期情報PREFを、周期情報PENQに対応した基準周期情報PREFbに変換する。例えば、周期変換部132が上記のカウンターを含む構成である場合、基準周期情報PREFbは、基準周期情報PREFが示す基準周期に対応したカウント値である。
【0045】
周波数比較部133は、周期情報PENQと基準周期情報PREFbを比較し、その結果を比較信号CPQとして出力する。周波数比較部133は、周期情報PENQが基準周期情報PREFbより短い場合にはローレベルの比較信号CPQを出力し、周期情報PENQが基準周期情報PREFbより長い場合にはハイレベルの比較信号CPQを出力する。
【0046】
本実施形態において、エンコーダー100は、速度検出部110と速度異常検出部120とを含む。速度検出部110は、モーター駆動回路300により駆動されるモーター10の速度を検出する。速度異常検出部120は、速度検出部110からの速度検出結果と、速度の許容範囲を示す許容範囲情報TLINFとの比較処理を行って、速度検出結果が許容範囲外であるときに、速度異常の検出結果SPERRをモーター駆動回路300に出力する。
【0047】
本実施形態によれば、異常検出時において、エンコーダー100とコントローラー200の間の通信、及びコントローラー200とモーター駆動回路300の間の通信を用いずに、エンコーダー100はモーター駆動回路300へ直接に速度異常の検出結果SPERRを出力できる。これにより、例えば、通信処理の通信遅延が生じにくいため、異常検出時の制御遅延が生じにくい。或いは、通信経路が短くなるため、通信経路にノイズが入力されにくくなり、誤判定が生じにくくなる。
【0048】
また本実施形態では、速度検出部110は、速度を検出して速度検出信号ENCQを出力する。速度異常検出部120は、許容範囲情報TLINFが入力され、その許容範囲情報TLINFに基づいて、速度の許容範囲に対応した基準速度検出信号SREFを生成し、速度検出信号ENCQと基準速度検出信号SREFとを比較する。
【0049】
速度検出信号ENCQは、その波形がモーター10の速度に応じて変化する信号である。本実施形態によれば、速度異常検出部120は、速度の許容範囲に対応した波形を有する基準速度検出信号SREFを生成し、その基準速度検出信号SREFと速度検出信号ENCQを比較することで、速度検出結果が許容範囲内であるか否かを判断できる。
【0050】
また本実施形態では、速度検出信号ENCQは、速度に応じた周期を有する信号である。許容範囲情報TLINFは、速度検出信号ENCQの周期の許容範囲を示す基準周期情報PREFである。
【0051】
本実施形態によれば、速度異常検出部120は、基準周期情報PREFを用いて、速度の許容範囲に応じた周期を有する基準速度検出信号SREFを生成できる。そして、速度異常検出部120は、周期的な信号である速度検出信号ENCQと基準速度検出信号SREFとを比較することで、速度検出結果が許容範囲内であるか否かを判断できる。
【0052】
また本実施形態では、速度検出部110は、速度を検出して速度検出信号ENCQを出力する。速度異常検出部120は、速度検出信号ENCQの周期の許容範囲を示す基準周期情報PREFが許容範囲情報TLINFとして入力され、速度検出信号ENCQの周期を示す周期情報PENQを求め、その周期情報PENQと基準周期情報PREFを比較してもよい。
【0053】
本実施形態によれば、速度異常検出部120は、速度に応じた周期を有する速度検出信号ENCQから、その周期情報PENQを求めることができる。そして、速度異常検出部120は、周期情報PENQと基準周期情報PREFを比較することで、速度検出結果が許容範囲内であるか否かを判断できる。
【0054】
また本実施形態では、速度検出部110は、速度を検出して速度検出信号ENCQを出力する。速度異常検出部120は、速度検出部110から速度検出信号ENCQが入力されたタイミング以降に比較処理を行う。
【0055】
本実施形態によれば、コントローラー200がモーター10を回転させていないとき、つまり正常動作においてモーター10が停止しているとき、速度異常検出部120はモーター10の速度異常を検出しない。そして、コントローラー200がモーター10を回転させ始めた後に、速度異常検出部120はモーター10の速度異常を検出できる。これにより、速度異常検出部120は、コントローラー200がモーター10を回転させているにも関わらずモーター10が異常停止した状態のみを速度異常として、検出できる。
【0056】
また本実施形態では、速度異常検出部120は、モーター駆動回路300を制御するコントローラー200から許容範囲情報TLINFが入力される。
【0057】
コントローラー200は、モーター駆動回路300を制御することでモーター10の回転を制御していることから、モーター10の速度を知ることが可能である。本実施形態によれば、コントローラー200が許容範囲情報TLINFをエンコーダー100へ出力することが可能であり、エンコーダー100は、その許容範囲情報TLINFを用いてモーター10の速度異常を検出できる。
【0058】
また本実施形態では、モーター制御システム1は、モーター10を駆動するモーター駆動回路300と、エンコーダー100からの速度検出結果に基づいてモーター駆動回路300を制御するコントローラー200と、を含む。
【0059】
また本実施形態では、コントローラー200は、許容範囲情報TLINFをエンコーダー100に出力する。エンコーダー100は、許容範囲情報TLINFに基づいて速度異常の検出結果をモーター駆動回路300に出力する。モーター駆動回路300は、エンコーダー100から速度異常の検出結果が入力されたとき異常時処理を行う。
【0060】
本実施形態によれば、異常検出時において、エンコーダー100はコントローラー200を介さずにモーター駆動回路300へ直接に速度異常の検出結果SPERRを出力できる。
【0061】
3.エンコーダーの第2詳細構成例
図13は、エンコーダーの第2詳細構成例である。以下では第1詳細構成例と異なる部分について主に説明し、第1詳細構成例と同様な部分については説明を省略する。速度異常検出部120は、予測情報取得部121と予測出力生成部122と比較器と比較開始検出部124とタイマー125とを含む。
【0062】
コントローラー200は、複数の期間の各期間に対して基準周期が定義された基準周期情報PREFを、エンコーダー100へ送信する。予測情報取得部121は、その基準周期情報PREFを受信する。図14に、第2詳細構成例における基準周期情報の例を示す。この例では、基準周期情報PREFがテーブルデータになっており、期間T0~T7に対して、それぞれ、基準周期P0~P7が対応付けられている。期間T0~T7の各々の長さは任意であってよい。基準周期P0~P7は全て互いに異なる値であってもよいし、基準周期P0~P7のうち一部が同じ値であってもよい。例えば、ロボットの動作において、アームが停止状態から加速し、定速回転し、減速し、再び停止状態となることを1つの動作とする。この動作が複数組み合わさって一連のロボット動作となるが、その一連のロボット動作における1つのアーム動作が上記期間T0~T7の1つの期間に対応している。つまり、上記の例では8つの動作によって一連のロボット動作が構成されている。このとき、各動作における動作時間とモーター回転数に応じて、各期間の長さと基準周期が決定される。
【0063】
タイマー125は、比較イネーブル信号ENBに基づいて、比較開始タイミングTstaを起点とする時間計測を行い、時間情報TMを出力する。
【0064】
予測出力生成部122は、基準周期情報PREFと時間情報TMに基づいて基準速度検出信号SREFを生成する。図15は予測出力生成部の信号波形例である。iが0以上の整数であるとする。予測出力生成部122は、時間情報TMが期間Tiに属するとき、パルス周期が基準周期Piである基準速度検出信号SREFを出力する。基準周期Piは、例えば、期間Tiにおいてモーターが最小限動いていると見なせる速度の下限である。或いは、期間Tiにおいてモーターが定速回転する期間がある場合に、基準周期Piは、その定速より僅かに遅い速度に対応した周期であってもよい。
【0065】
比較器123は図9と同様の構成である。或いは、予測出力生成部122と比較器123が図12の比較器126に置き換えられてもよい。
【0066】
本実施形態では、速度異常検出部120は、複数の期間の各期間に対して許容範囲が対応づけられた許容範囲情報TLINFが入力される。速度異常検出部120は、各期間において、各期間に対応づけられた許容範囲と速度検出結果とを比較する。
【0067】
本実施形態によれば、複数のモーター動作が組み合わさって一連のモーター動作となっている場合に、各モーター動作に対応した期間における速度の許容範囲が設定される。これにより、各モーター動作に対して適した許容範囲を用いて、モーターの速度異常を検出可能になる。
【0068】
4.エンコーダーの第3詳細構成例
図16は、エンコーダーの第3詳細構成例である。以下では第1詳細構成例又は第2詳細構成例と異なる部分について主に説明し、第1詳細構成例又は第2詳細構成例と同様な部分については説明を省略する。エンコーダー100は、速度検出部110と速度異常検出部120とメモリー150とを含む。速度異常検出部120の予測情報取得部121は、時間情報取得部141と周期情報蓄積部142とを含む。
【0069】
時間情報取得部141は、基準周期情報PREFにおける各期間の初期値TREFをコントローラー200から取得し、その情報をメモリー150に記憶させる。例えば、時間情報取得部141は、図14のテーブルにおける期間T0~T7の初期値を取得する。更に、時間情報取得部141は、各期間における基準周期の初期値をコントローラー200から取得し、その情報をメモリー150に記憶させてもよい。例えば、時間情報取得部141は、図14のテーブルにおける基準周期P0~P7の初期値を取得してもよい。
【0070】
周期情報蓄積部142は、速度検出信号ENCQとタイマー125からの時間情報TMに基づいて周期情報を蓄積し、その周期情報に基づいてメモリー150内の基準周期情報PREFを更新する。次回のモーター制御においては、更新された基準周期情報PREFが異常検出に用いられる。図14のテーブルを例にとると、例えば次のようにして基準周期情報が更新される。期間T0においてモーターが停止状態から加速して定速になり、その後に減速して停止する。このとき、周期情報蓄積部142は、速度検出信号ENCQのパルス発生から消滅までの期間の長さを測定し、その測定された長さに期間T0を更新する。また、周期情報蓄積部142は、定速状態における速度検出信号ENCQのパルス周期を測定し、測定されたパルス周期より少し短い周期に基準周期P0を更新する。周期情報蓄積部142は、期間T1~T7においても同様にして基準周期P1~P7を更新する。
【0071】
予測出力生成部122は、前回のモーター制御において更新された基準周期情報PREFを用いて基準速度検出信号SREFを生成する。比較器123は図9と同様の構成である。或いは、予測出力生成部122と比較器123が図12の比較器126に置き換えられてもよい。
【0072】
図17図19は、速度異常検出部が行う処理のフローチャートである。以下、必要に応じて図14のテーブルを例に説明する。
【0073】
図17にメインフローを示す。ステップS1において、速度異常検出部120は、通常制御時における情報取得を行う。即ち、前回モーター制御におけるステップS3において正常動作と判断されているときにステップS1を実行することで、今回のモーター制御に用いるための基準周期情報PREFを取得する。
【0074】
図18にステップS1のサブフローを示す。ステップS11において、速度異常検出部120は時間情報を設定する。即ち、速度異常検出部120は、タイマー125からの時間情報TMに基づいて期間T0~T7のいずれの期間に該当するかを判断する。ステップS12において、速度異常検出部120は、該当した期間における基準周期を更新する。速度異常検出部120は、期間T0~T7の各期間に対してステップS11とS12を実行する。
【0075】
図17のステップS2において、速度異常検出部120は、タイマー125からの時間情報TMに基づいて期間T0~T7のいずれの期間に該当するかを判断する。ステップS3において、速度異常検出部120は、該当した期間における基準周期を用いて通常制御及び異常検出を行う。
【0076】
図19にステップS3のサブフローを示す。ステップS31において、速度異常検出部120は、速度検出信号ENCQとステップS1で更新された基準周期とを用いて比較処理を行う。ステップS32において、速度異常検出部120は、比較処理において異常が検出されたときにはステップS33へ進み、比較処理において正常と判断されたときにはステップS34へ進む。ステップS33において、速度異常検出部120はモーターを停止させる処理を行う。ステップS34において、速度異常検出部120は、動作が終了したか否かを判断する。即ち、速度異常検出部120は、タイマー125からの時間情報TMに基づいて期間T0~T7の全てが終了したか否かを判断する。速度異常検出部120は、動作が終了していない場合にはステップS31に戻り、動作が終了した場合には処理を終了する。
【0077】
本実施形態では、エンコーダー100は、許容範囲情報を記憶するメモリー150を含む。速度異常検出部120は、速度検出部110からの速度検出結果に基づいて許容範囲情報を更新する。具体的には、速度異常検出部120は、速度検出部110からの速度検出結果に基づいて、各期間に対応づけられた許容範囲を更新する。
【0078】
モーター10の経年変化によって、同じ駆動電力をモーター10に与えた場合であっても、モーター10の回転速度が経年的に低下していく。また、モーター10の回転速度が低下したことによって、各期間の長さが伸びる。本実施形態によれば、モーター回転速度の低下及び各期間の延長に応じて、許容範囲情報を更新し、その経年変化が考慮された新たな許容範囲情報によってモーター速度異常を検出できる。
【0079】
なお、第3詳細構成例では、複数の期間の各期間に対して許容範囲が対応付けられており、速度異常検出部120が、その各期間の許容範囲を更新する例を説明した。但し、第1詳細構成例のように許容範囲が1つだけ定義されており、速度異常検出部120が、その1つの許容範囲を更新してもよい。
【0080】
5.モーター制御システムの第2構成例
図20は、モーター制御システムの第2構成例である。本例ではモーター制御システム1は、コントローラー200と駆動部400と第2駆動部400bとを含む。なお、モーター駆動回路300は3以上の駆動部を含んでもよい。
【0081】
駆動部400は図3の第1構成例と同様であるが、本例ではエンコーダー100が速度異常の検出結果SPERRをモーター駆動回路300及びコントローラー200へ出力する。
【0082】
第2駆動部400bは、第2モーター駆動回路300bと第2モーター10bと第2センサー20bと第2エンコーダー100bとを含む。これらの構成及び動作は駆動部400と同様である。即ち、第2モーター駆動回路300bは、コントローラー200からの制御信号MCNTbに基づいて駆動信号SDRVbを第2モーター10bへ出力する。コントローラー200は、第2モーター駆動回路300bからの電流検出結果ISENbに基づいて第2モーター駆動回路300bを制御する。第2エンコーダー100bは、第2センサー20bからの検出信号SENQbを受けて、速度検出信号ENCQbをコントローラー200へ出力する。コントローラー200は、速度検出信号ENCQbに基づいて制御信号MCNTbを第2モーター駆動回路300bへ出力する。第2エンコーダー100bは、許容範囲情報TLINFbをコントローラー200から受信し、その許容範囲情報TLINFbと速度検出信号ENCQbを比較することで、第2モーター10bの速度異常を検出し、その速度異常の検出結果SPERRbを第2モーター駆動回路300b及びコントローラー200へ出力する。
【0083】
本例において、ある1つの駆動部において異常が検出されたとき、その駆動部内においてエンコーダーから直接にモーター駆動回路へ異常が通知されるが、他の駆動部に対してはコントローラー200経由で異常が通知される。
【0084】
即ち、駆動部400のエンコーダー100が速度異常を検出したとする。このとき、エンコーダー100はモーター駆動回路300へ異常を通知して異常時処理を行わせると共に、コントローラー200へも異常を通知する。コントローラー200は、その通知を受けて、第2駆動部400bの第2モーター駆動回路300bに対して、異常時処理を指示する制御信号MCNTbを送信し、第2モーター駆動回路300bに異常時処理を行わせる。
【0085】
逆に、第2駆動部400bの第2エンコーダー100bが速度異常を検出したとする。このとき、第2エンコーダー100bは第2モーター駆動回路300bへ異常を通知して異常時処理を行わせると共に、コントローラー200へも異常を通知する。コントローラー200は、その通知を受けて、駆動部400のモーター駆動回路300に対して、異常時処理を指示する制御信号MCNTを送信し、モーター駆動回路300に異常時処理を行わせる。
【0086】
本実施形態では、モーター制御システム1は、モーター10を駆動するモーター駆動回路300と、エンコーダー100からの速度検出結果に基づいてモーター駆動回路300を制御するコントローラー200と、を含む。またモーター制御システム1は、第2モーター10bを駆動する第2モーター駆動回路300bと、第2モーター10bの速度を検出する第2エンコーダー100bと、を含む。コントローラー200は、エンコーダー100から速度異常の検出結果が入力されたとき、第2モーター駆動回路300bに異常時処理を行わせる。
【0087】
本実施形態によれば、エンコーダー100の検出対象であるモーター10のモーター駆動回路300に対しては、エンコーダー100から直接に速度異常の検出結果が入力される。そして、モーター10とは異なる第2モーター10bの第2モーター駆動回路300bに対しては、エンコーダー100からコントローラー200を介して速度異常の検出結果が入力される。これにより、モーター10の速度異常が検出された場合に、それとは異なる第2モーター10bも停止させることが可能になる。
【0088】
なお、上記のように本実施形態について詳細に説明したが、本開示の新規事項及び効果から実体的に逸脱しない多くの変形が可能であることは当業者には容易に理解できるであろう。従って、このような変形例はすべて本開示の範囲に含まれるものとする。例えば、明細書又は図面において、少なくとも一度、より広義又は同義な異なる用語と共に記載された用語は、明細書又は図面のいかなる箇所においても、その異なる用語に置き換えることができる。また本実施形態及び変形例の全ての組み合わせも、本開示の範囲に含まれる。またモーター、モーター駆動回路、センサー、エンコーダー、駆動部、コントローラー、モーター制御システム及びロボットシステムの構成及び動作等も、本実施形態で説明したものに限定されず、種々の変形実施が可能である。
【符号の説明】
【0089】
1…モーター制御システム、2…ロボットシステム、10…モーター、10b…第2モーター、20…センサー、20b…第2センサー、100…エンコーダー、100b…第2エンコーダー、110…速度検出部、120…速度異常検出部、121…予測情報取得部、122…予測出力生成部、123…比較器、124…比較開始検出部、125…タイマー、126…比較器、131…予測周期生成部、132…周期変換部、133…周波数比較部、141…時間情報取得部、142…周期情報蓄積部、150…メモリー、200…コントローラー、250…ケーブル、300…モーター駆動回路、300b…第2モーター駆動回路、400…駆動部、400b…第2駆動部、500…ロボット、510…関節、550…通信回路、ENCQ…速度検出信号、P,P0~P7…基準周期、PENQ…周期情報、PREF…基準周期情報、SPERR…速度異常の検出結果、SREF…基準速度検出信号、T0~T7…期間、TLINF…許容範囲情報、Tsta…比較開始タイミング
図1
図2
図3
図4
図5
図6
図7
図8
図9
図10
図11
図12
図13
図14
図15
図16
図17
図18
図19
図20