JP2019170114A - モータの制御装置、ロボットおよびモータの制御方法 - Google Patents

モータの制御装置、ロボットおよびモータの制御方法 Download PDF

Info

Publication number
JP2019170114A
JP2019170114A JP2018057854A JP2018057854A JP2019170114A JP 2019170114 A JP2019170114 A JP 2019170114A JP 2018057854 A JP2018057854 A JP 2018057854A JP 2018057854 A JP2018057854 A JP 2018057854A JP 2019170114 A JP2019170114 A JP 2019170114A
Authority
JP
Japan
Prior art keywords
motor
rotation angle
determined
speed
rotation speed
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.)
Pending
Application number
JP2018057854A
Other languages
English (en)
Inventor
グオ,ジャオチン
Zhaoqin Guo
ワン,ジェニイ
Jianyi Wang
ヤン,シジュン
Shijun Yan
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.)
Nidec Corp
Nidec Singapore Pte Ltd
Original Assignee
Nidec Corp
Nidec Singapore Pte 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 Nidec Corp, Nidec Singapore Pte Ltd filed Critical Nidec Corp
Priority to JP2018057854A priority Critical patent/JP2019170114A/ja
Priority to US16/299,192 priority patent/US20190296667A1/en
Publication of JP2019170114A publication Critical patent/JP2019170114A/ja
Pending legal-status Critical Current

Links

Images

Classifications

    • HELECTRICITY
    • H02GENERATION; CONVERSION OR DISTRIBUTION OF ELECTRIC POWER
    • H02PCONTROL OR REGULATION OF ELECTRIC MOTORS, ELECTRIC GENERATORS OR DYNAMO-ELECTRIC CONVERTERS; CONTROLLING TRANSFORMERS, REACTORS OR CHOKE COILS
    • H02P6/00Arrangements for controlling synchronous motors or other dynamo-electric motors using electronic commutation dependent on the rotor position; Electronic commutators therefor
    • H02P6/14Electronic commutators
    • H02P6/15Controlling commutation time
    • H02P6/153Controlling commutation time wherein the commutation is advanced from position signals phase in function of the speed
    • BPERFORMING OPERATIONS; TRANSPORTING
    • B25HAND TOOLS; PORTABLE POWER-DRIVEN TOOLS; MANIPULATORS
    • B25JMANIPULATORS; CHAMBERS PROVIDED WITH MANIPULATION DEVICES
    • B25J9/00Programme-controlled manipulators
    • B25J9/10Programme-controlled manipulators characterised by positioning means for manipulator elements
    • B25J9/12Programme-controlled manipulators characterised by positioning means for manipulator elements electric
    • B25J9/126Rotary actuators

Landscapes

  • Engineering & Computer Science (AREA)
  • Power Engineering (AREA)
  • Robotics (AREA)
  • Mechanical Engineering (AREA)
  • Control Of Electric Motors In General (AREA)
  • Manipulator (AREA)

Abstract

【課題】外乱または負荷の変化があっても、容易な手法で、加速および減速時に円滑にモータを動作させ、オーバーシュートを最小限にして、整定時間を短縮化する。【解決手段】モータの制御装置の基準決定部は、モータを回転させるための指令値としてモータの基準回転角度を所定周期で決定する。基準決定部は、モータの実際の回転角度が、基準決定部で決定された直前の基準回転角度よりも遅れており、遅れ量が所定の閾値より小さい場合には、モータの回転速度に対応する角度増分を直前の基準回転角度に加えることにより、現在の基準回転角度を決定し、実際の回転角度が直前の基準回転角度よりも遅れており、遅れ量が閾値より大きい場合には、直前の基準回転角度を現在の基準回転角度として決定する。【選択図】図3

Description

本発明は、モータの制御装置、ロボットおよびモータの制御方法に関する。
例えば移動ロボットまたは多関節ロボットに組み込まれたモータの制御方法として、動作基準プロファイルに従って、モータのトルク、回転角度、回転速度またはジャーク(加加速度)を制御することが知られている(特許文献1、2)。動作基準プロファイルは、モータのトルク、回転角度、回転速度またはジャークの経時的変化を規定する。動作基準プロファイルは、目標回転角度、モータの性能(例えば、達成可能な最大回転加速度、達成可能な最大回転減速度、達成可能な最大回転速度)およびモータに与えられる負荷に基づいて、あらかじめ設計される。一般に、速度変化に関する三角形または台形の動作基準プロファイル、および角度変化に関するS字曲線の動作基準プロファイルが知られている。
米国特許第8710777号明細書 米国特許第9041337号明細書
適切な動作基準プロファイルの設計のためには、モータの性能を知っているだけでなく、モータに与えられる負荷を予測することが望ましい。負荷に応じて、モータの動作が制限されるためである。
しかしながら、負荷を正確に予測するのは困難で時間がかかることがある。また、モータの動作中に、外乱が生じたり、負荷が変化したりすることがありうる。外乱の理由としては、例えば、モータで駆動される物体が障害物にぶつかることが挙げられる。負荷の変化の理由としては、アームの姿勢が変化する時に、モータに与えられる負荷が変化することが挙げられる。外乱および負荷の変化は、予測するのがさらに困難である。したがって、一定の動作条件を仮定してあらかじめ設計された動作基準を使用することにより、実際の位置が基準位置に追従できず、その結果、基準位置と実際の位置との間に大きな差が生じることがありえる。その結果、システムは、大きなオーバーシュート、長い整定時間、およびモータの駆動信号の飽和の長い持続時間など、制御性能が低下することがありえる。。
さらに、あらかじめ設計された動作基準プロファイルの使用中に、が、外乱または負荷の変化があると、急激なモータの加速または減速が必要になることがありうる。その結果、モータの部品またはギヤなどの関連部品の寿命が短くなる可能性がある。
モータの制御においては、モータが円滑に動作することが望ましい。また、オーバーシュートを最小限にして、目標位置への整定時間を短くし、駆動信号の飽和時間を低減することが望ましい。これらの目標は、外乱および負荷の変化があっても、達成されるべきである。
特許文献1に記載の技術では、モータの動作中にモータの慣性および摩擦係数を推定して、推定に基づいてモータの制御パラメータを動的に調整する。しかし、この技術は、演算の負担を大きくする上、オーバーシュートの低減および整定時間(settling time)の短縮には寄与せず、外乱および負荷の変化に対する堅牢性が少ない。
特許文献2に記載の技術では、動作プロファイルにおける各セグメント(段階)の継続時間を計算して、さらに継続時間を修正し、修正された継続時間を用いて動作基準を再計算する。しかし、この技術では、演算の負担が過大であり、外乱および負荷の変化に対する堅牢性が少ない。
そこで、本発明は、外乱または負荷の変化があっても、容易な手法で、加速および減速時に円滑にモータを動作させ、オーバーシュートを最小限にして、整定時間を短縮化することが可能なモータの制御装置、ロボットおよびモータの制御方法を提供することを目的とする。
本発明のある態様に係るモータの制御装置は、モータの実際の回転角度を所定周期で取得し、前記モータを回転させるための指令値として前記モータの基準回転角度を前記所定周期で決定する基準決定部を有し、前記基準決定部は、前記モータの実際の回転角度が、前記基準決定部で決定された直前の基準回転角度よりも遅れており、かつ遅れ量が所定の閾値より小さい場合には、前記モータの回転速度に対応する角度増分を前記直前の基準回転角度に加えることにより、現在の基準回転角度を決定し、前記実際の回転角度が、前記直前の基準回転角度よりも遅れており、かつ前記遅れ量が前記閾値より大きい場合には、前記直前の基準回転角度を、前記現在の基準回転角度として決定する。
本発明においては、外乱またはモータに与えられる負荷の変化があっても、直前に決定された基準回転角度に基づいて現在の基準回転角度を決定するので、基準回転角度と実際の回転角度の相違を常に小さくすることができる。したがって、オーバーシュートを最小限にして、整定時間を短縮化し、モータに供給される駆動信号の飽和を低減することが可能であり、また、モータの加速および減速が円滑化されるので、モータの部品およびモータに関連する部品の寿命を向上させることが可能である。また、直前の基準回転角度もしくは現在の基準回転角度をそのまま使用するか、または回転速度に対応する角度増分を加えるだけで、容易に現在の基準回転角度を決定することができる。
図1は、本発明の実施形態に係るモータの制御装置を示すブロック図である。 図2は、実施形態に係る基準回転角度の決定処理を示すフローチャートである。 図3は、実施形態に係る基準角度位置の決定処理を示すフローチャートである。
以下、添付の図面を参照しながら本発明に係る実施の形態を説明する。
<制御装置の構成>
図1は、本発明の実施形態に係るモータの制御装置1を示すブロック図である。本実施形態に係る制御装置1は、移動ロボットの車輪を回転させるモータ2を制御するために、移動ロボットに設けられている。制御装置1は、モータ2を駆動するモータコントローラ4に指令値を与える。指令値は、モータ2を回転させるべき基準角度位置(基準回転角度)θrおよび基準回転速度ωrである。
モータコントローラ4は、駆動回路とプロセッサの組合せである。モータコントローラ4は、制御装置1から与えられた基準回転速度ωrで、制御装置1から与えられた基準角度位置θrにモータ2が回転するよう、モータ2を制御する駆動信号をモータ2に供給する。
制御装置1は、基準決定部7およびメモリ8を有する。基準決定部7は、プロセッサであり、記録媒体(例えばメモリ8)に記憶されたプログラムを読み出して実行することによって、動作する。したがって、記録媒体から読み出されたプログラム(プログラムコード)が実施形態の機能を実現する。また、当該プログラムを記録した記録媒体は本発明を構成することができる。
モータ2を制御するため、メモリ8には、各種のパラメータが記憶されている。各種のパラメータは、モータ2を最終的に回転させるべき目標角度位置θd、およびモータ2を回転させるべき目標回転速度ωdを含む。また、各種のパラメータは、基準決定部7で決定された、基準角度位置θrおよび基準回転速度ωrも含む。
基準決定部7は、モータコントローラ4に与える基準角度位置θrと基準回転速度ωrを決定する。現在の基準角度位置θr(t)の決定のため、基準決定部7は、メモリ8から基準決定部7で決定された直前の基準回転角度θr(t−1)を取得すなわち読み出しする。
基準決定部7は、基準決定部7で決定された直前の基準回転角度θr(t−1)に基づいて、モータ2を回転させるべき現在の基準回転角度θr(t)を所定周期(サンプリング周期)Tで周期的に決定する。そして、基準決定部7は、決定された現在の基準回転角度θr(t)にモータ2が回転するようにモータコントローラ4にサンプリング周期Tで周期的に指令する。したがって、基準決定部7で決定された基準回転角度θrは、モータ2を回転させるための指令値としての指令回転角度である。基準決定部7は、決定した現在の基準回転角度θr(t)をメモリ8に格納する。
ここで、現在の基準回転角度θr(t)とは、モータ2を制御する現在のサンプリングタイムtでの基準回転角度θrを意味する。直前の基準回転角度θr(t−1)とは、直前のサンプリングタイムt−1(現在のサンプリングタイムtのサンプリング周期Tだけ前のサンプリングタイム)での基準回転角度θrを意味する。以下の説明では、基準回転角度を基準角度位置と呼ぶ。
また、現在の基準回転速度ωr(t)の決定のため、基準決定部7は、メモリ8から基準決定部7で決定された直前の基準回転速度ωr(t−1)を取得すなわち読み出しする。
基準決定部7は、基準決定部7で決定されたモータ2の直前の基準回転速度ωr(t−1)に基づいて、モータ2を回転させるべき現在の基準回転速度ωr(t)をサンプリング周期Tで周期的に決定する。そして、基準決定部7は、モータ2が基準回転速度ωr(t)で回転するようにモータコントローラ4にサンプリング周期Tで周期的に指令する。したがって、基準決定部7で決定された基準回転速度ωrは、モータ2を回転させるための指令値としての指令回転速度である。基準決定部7は、決定した現在の基準回転速度ωr(t)をメモリ8に格納する。
ここで、現在の基準回転速度ωr(t)とは、モータ2を制御する現在のサンプリングタイムtでの基準回転速度ωrを意味する。直前の基準回転速度ωr(t−1)とは、直前のサンプリングタイムt−1(現在のサンプリングタイムtのサンプリング周期Tだけ前のサンプリングタイム)での基準回転速度ωrを意味する。
制御装置1は測定ユニット5と協働する。測定ユニット5は、速度計算部10とロータリエンコーダユニット12を有する。ロータリエンコーダユニット12は、モータ2の角度位置を測定する。ロータリエンコーダユニット12はモータ2もしくは車輪の近傍またはモータ2の内部に配置されている。ロータリエンコーダユニット12は、モータ2の角度位置を表す角度位置信号として実際の回転角度θをモータコントローラ4と基準決定部7と速度計算部10にサンプリング周期Tで周期的に供給する。したがって、基準決定部7は、モータ2の現在の実際の回転角度θ(t)をサンプリング周期Tで周期的に取得する。基準決定部7は、基準角度位置θr(t)と基準回転速度ωr(t)の決定のために、現在の実際の回転角度θ(t)を使用する。現在の実際の回転角度θ(t)は、現在のサンプリングタイムtでのモータ2の実際の回転角度θを意味する。以下の説明では、実際の回転角度を実際の角度位置と呼ぶ。
速度計算部10は、角度位置信号に基づいて、公知の手法でモータ2の現在の実際の回転速度ω(t)をサンプリング周期Tで周期的に計算する。回転速度ωは、推定値すなわち測定値であるが、ここでは、基準回転速度ωrと区別するため、回転速度ωを実際の回転速度と呼ぶ。そして、速度計算部10は、モータ2の現在の実際の回転速度ω(t)をモータコントローラ4にサンプリング周期Tで周期的に供給する。現在の実際の回転速度ω(t)は、現在のサンプリングタイムtでのモータ2の実際の回転速度ωを意味する。モータコントローラ4には、ロータリエンコーダユニット12から現在の実際の回転角度θ(t)が供給され、速度計算部10から現在の実際の回転速度ω(t)が供給され、基準決定部7から基準角度位置θr(t)と基準回転速度ωr(t)が供給される。モータコントローラ4のプロセッサは、現在の実際の回転角度θ(t)と、現在の実際の回転速度ω(t)と、基準角度位置θr(t)と、基準回転速度ωr(t)に基づいて、所定の制御アルゴリズムに従って、駆動信号を生成し、駆動信号を駆動回路に供給する。この結果、モータ2が基準回転速度ωr(t)で基準角度位置θr(t)に回転する。
<パラメータおよび変数>
次に、本明細書で使用されるパラメータおよび変数を説明する。
θr:基準角度位置。
ωr:基準回転速度。
θ:実際の角度位置。
ω:実際の回転速度。
基準角度位置θr、基準回転速度ωr、実際の角度位置θ、および実際の回転速度ωについては既に説明した通りである。
θd:モータ2の目標角度位置。目標角度位置θdは、モータ2を最終的に回転させるべき角度位置である。目標角度位置θdは、制御装置1の管理者により入力されるか、図示しないシステムコントローラにより生成される。目標角度位置θdは、メモリ8に記憶される。基準決定部7は、目標角度位置θdをメモリ8から読み出して、現在の基準角度位置θr(t)および現在の基準回転速度ωr(t)の決定に使用する。
ωd:モータ2の目標回転速度。目標回転速度ωdは、モータ2を回転させるべき所望の速度であり、モータ2の定格最高速度以下である。目標回転速度ωdは、制御装置1の管理者により入力されて、メモリ8に記憶されている。あるいは、目標回転速度ωdは、あらかじめメモリ8に記憶されたデフォルト値であってもよい。基準決定部7は、目標回転速度ωdをメモリ8から読み出して、現在の基準回転速度ωr(t)の決定に使用する。
1:加速係数。モータ2を加速する際、モータ2の回転速度に速度増分(一定の正の値)が加えられる。速度増分は、加速係数a1にサンプリング周期Tを乗算した値である。加速係数a1は、一定の正の値である。加速係数a1は、制御装置1の管理者により入力されて、メモリ8に記憶されている。あるいは、加速係数a1は、あらかじめメモリ8に記憶されたデフォルト値であってもよい。基準決定部7は、加速係数a1をメモリ8から読み出して、モータ2を加速する際、現在の基準回転速度ωr(t)の決定に使用する。
2:減速係数。モータ2を減速する際、モータ2の回転速度から速度減分(一定の正の値)が引かれる。速度減分は、減速係数a2にサンプリング周期Tを乗算した値である。減速係数a2は、一定の正の値である。減速係数a2は、制御装置1の管理者により入力されて、メモリ8に記憶されている。あるいは、減速係数a2は、あらかじめメモリ8に記憶されたデフォルト値であってもよい。基準決定部7は、減速係数a2をメモリ8から読み出して、モータ2を減速する際、現在の基準回転速度ωr(t)の決定に使用する。
θe:位置誤差。位置誤差θeは、直前の基準角度位置θr(t−1)と現在の実際の角度位置θ(t)の相違であり、θe=θr(t−1)−θ(t)として定義される。
θth:位置遅れ閾値。位置遅れ閾値θthは、現在の基準角度位置θr(t)を決定する際に、基準決定部7が位置誤差θeと比較する正の閾値である。位置遅れ閾値θthは、制御装置1の管理者により入力されて、メモリ8に記憶されている。あるいは、位置遅れ閾値θthは、あらかじめメモリ8に記憶されたデフォルト値であってもよい。基準決定部7は、位置遅れ閾値θthをメモリ8から読み出して、現在の基準角度位置θr(t)を決定する際に、位置遅れ閾値θthを使用する。
θdec:減速開始境界角度。減速開始境界角度θdecは、正の値である。減速開始境界角度θdecは、制御装置1の管理者により入力されて、メモリ8に記憶されている。あるいは、減速開始境界角度θdecは、あらかじめメモリ8に記憶されたデフォルト値であってもよい。
ωlow:低回転速度。低回転速度ωlowは、目標角度位置θdの付近でモータ2を回転させるべき一定の速度であり、目標回転速度ωdより低い速度である。例えば、低回転速度ωlowは、目標回転速度ωdの1/4である。低回転速度ωlowは、制御装置1の管理者により入力されて、メモリ8に記憶されている。あるいは、低回転速度ωlowは、あらかじめメモリ8に記憶されたデフォルト値であってもよい。基準決定部7は、減速開始境界角度θdecと低回転速度ωlowをメモリ8から読み出して、目標角度位置θdから現在の実際の角度位置θ(t)を引いた値が減速開始境界角度θdecより小さくなると、基準回転速度ωr(t)を低回転速度ωlowに低下させる。すなわち、基準決定部7は、現在の実際の角度位置θ(t)が、目標角度位置θdの手前の減速開始境界角度θdec内に入ると、基準回転速度ωr(t)を低回転速度ωlowに低下させる。
T:サンプリング周期。サンプリング周期Tは、例えば2msである。基準決定部7は、モータ2の現在の実際の角度位置θ(t)をサンプリング周期Tで取得し、現在の基準角度位置θr(t)をサンプリング周期Tで生成し、現在の基準回転速度ωr(t)をサンプリング周期Tで周期的に決定する。
以下、実施形態に係るモータ2の制御方法を説明する。以下の説明では、モータ2を一方向にのみ回転させると仮定する。但し、本発明は、モータ2を逆方向に回転させるためにも適用可能である。また、以下の説明では、初期の実際の角度位置θおよび初期の実際の回転速度ωはゼロと仮定され、初期の基準角度位置θrおよび初期の基準回転速度ωrはゼロである。但し、本発明は、任意の初期の位置、および任意の初期の回転速度にも適用可能である。
<基準回転速度の決定処理>
図2を参照し、実施形態に係る基準回転速度の決定処理を説明する。
基準決定部7は、サンプリングタイムになると(ステップS1の判断が肯定的になると)、直前の基準角度位置θr(t−1)が目標角度位置θdに到達しているか否か判断する(ステップS2)。基準角度位置(指令角度位置)の決定処理については後述する。
ステップS2の判断が否定的であれば、処理はステップS3に進む。ステップS3において、基準決定部7は、目標角度位置θdから現在の実際の角度位置θ(t)を引いた値が減速開始境界角度θdec以上か否か判断する。
ステップS3の判断が肯定的であれば、処理はステップS4に進み、基準決定部7は、基準決定部7で決定された直前の基準回転速度ωr(t−1)が目標回転速度ωdより小さいか否か判断する。
ステップS4の判断が肯定的であれば、処理はステップS5に進む。ステップS5において、基準決定部7は、基準決定部7で決定された直前の基準回転速度ωr(t−1)に速度増分を加えることにより、現在の基準回転速度ωr(t)を決定する。すなわち、モータ2の直前の基準回転速度ωr(t−1)が目標回転速度ωdより小さい場合には、基準決定部7は、モータ2の直前の基準回転速度ωr(t−1)に速度増分を加えることにより、現在の基準回転速度ωr(t)を上昇させるように決定する。速度増分は、加速係数a1にサンプリング周期Tを乗算した値である。
また、ステップS5において、基準決定部7は、モータ2を回転させるための指令値として、基準決定部7で決定された現在の基準回転速度ωr(t)をモータコントローラ4に供給する。ステップS5の後、処理はステップS1に戻り、次のサンプリングタイムまで待機する。
ステップS4の判断が否定的であれば、処理はステップS6に進む。ステップS6において、基準決定部7は、目標回転速度ωdを現在の基準回転速度ωr(t)として決定する。すなわち、基準決定部7で決定されたモータ2の直前の基準回転速度ωr(t−1)が目標回転速度ωd以上である場合には、基準決定部7は、現在の基準回転速度ωr(t)として目標回転速度ωdを維持するよう決定する。
また、ステップS6において、基準決定部7は、モータ2を回転させるための指令値として、基準決定部7で決定された現在の基準回転速度ωr(t)をモータコントローラ4に供給する。ステップS6の後、処理はステップS1に戻り、次のサンプリングタイムまで待機する。
一方、ステップS3の判断が否定的であれば、処理はステップS7に進む。すなわち、目標角度位置θdから現在の実際の角度位置θ(t)を引いた値が減速開始境界角度θdecより小さい場合、処理はステップS7に進む。ステップS7において、基準決定部7は、基準決定部7で決定された直前の基準回転速度ωr(t−1)が低回転速度ωlowより大きいか否か判断する。
ステップS7の判断が肯定的であれば、処理はステップS8に進む。ステップS8において、基準決定部7は、基準決定部7で決定された直前の基準回転速度ωr(t−1)から速度減分を引くことにより、現在の基準回転速度ωr(t)を決定する。すなわち、現在の実際の角度位置θ(t)が所定の減速開始角度(目標角度位置θd−θdec)に達した後、直前の基準回転速度ωr(t−1)が所定の低回転速度閾値ωlowより大きい場合には、基準決定部7は、直前の基準回転速度ωr(t−1)から速度減分を引くことにより、現在の基準回転速度ωr(t)を下降させるように決定する。速度減分は、減速係数a2にサンプリング周期Tを乗算した値である。
また、ステップS8において、基準決定部7は、モータ2を回転させるための指令値として、基準決定部7で決定された現在の基準回転速度ωr(t)をモータコントローラ4に供給する。ステップS8の後、処理はステップS1に戻り、次のサンプリングタイムまで待機する。
ステップS7の判断が否定的であれば、処理はステップS9に進む。ステップS9において、基準決定部7は、低回転速度ωlowを現在の基準回転速度ωr(t)として決定する。すなわち、現在の実際の角度位置θ(t)が所定の減速開始角度θdecに達した後、直前の基準回転速度ωr(t−1)が低回転速度閾値ωlow以下である場合には、基準決定部7は、現在の基準回転速度ωr(t)として低回転速度ωlowを維持するよう決定する。
また、ステップS9において、基準決定部7は、モータ2を回転させるための指令値として、基準決定部7で決定された現在の基準回転速度ωr(t)をモータコントローラ4に供給する。ステップS9の後、処理はステップS1に戻り、次のサンプリングタイムまで待機する。
一方、ステップS2の判断が肯定的であれば、処理はステップS10に進む。ステップS10において、基準決定部7は、現在の基準回転速度ωr(t)をゼロに決定する。すなわち、直前の基準角度位置θr(t−1)がモータ2の目標角度位置θdに到達した後には、基準決定部7は、現在の基準回転速度ωr(t)をゼロに決定する。
また、ステップS10において、基準決定部7は、モータ2を回転させるための指令値として、基準決定部7で決定された現在の基準回転速度ωr(t)をモータコントローラ4に供給する。ステップS10の後、処理は終了する。
実施形態に係る基準回転速度の決定処理に従ったモータ2の動作には、加速、一定速度、減速、低速回転および停止の5つのセグメント(段階)がある。加速セグメントは、動作がステップS2、S3、S4を経てS5に進むことの繰り返しにより実行される。加速セグメントでは、モータ2の直前の基準回転速度ωr(t−1)が目標回転速度ωdに到達するまで、モータ2の直前の基準回転速度ωr(t−1)に一定の速度増分(a1×T)を加えることにより、モータ2の回転速度は増加し続ける。
一定速度セグメントは、直前の基準回転速度ωr(t−1)が目標回転速度ωdに到達すること(ステップS4の判断が否定的になること)を契機として、動作がステップS2、S3、S4を経てS6に進むことの繰り返しにより実行される。一定速度セグメントでは、現在の基準回転速度ωr(t)として目標回転速度ωdが維持され、モータ2は一定速度ωdで回転し続ける。
減速セグメントは、基準決定部7で決定された現在の実際の角度位置θ(t)が所定の減速開始角度に達すること(ステップS3の判断が否定的になること)を契機として、動作がステップS2、S3、S7を経てS8に進むことの繰り返しにより実行される。減速セグメントでは、モータ2の直前の基準回転速度ωr(t−1)が低回転速度ωlowに下降するまで、モータ2の直前の基準回転速度ωr(t−1)から一定の速度減分(a2×T)が引かれることにより、モータ2の回転速度は減少し続ける。
低速回転セグメントは、基準決定部7で決定された現在の実際の角度位置θ(t)が所定の減速開始角度に達した後、直前の基準角度位置θr(t−1)が低回転速度ωlowに下降すること(ステップS7の判断が否定的になること)を契機として、動作がステップS2、S3、S7を経てS9に進むことの繰り返しにより実行される。低速回転セグメントでは、現在の基準回転速度ωr(t)として低回転速度ωlowが維持され、モータ2は一定の低回転速度ωlowで回転し続ける。
停止セグメントは、基準決定部7で決定された直前の基準角度位置θr(t−1)がモータ2の目標角度位置θdに到達すること(ステップS2の判断が肯定的になること)を契機として、動作がステップS10に進むことにより実行される。停止セグメントでは、現在の基準回転速度ωr(t)がゼロに決定されて、モータ2の回転が停止する。
実施形態に係る基準回転速度の決定処理によれば、容易かつ動的に現在の基準回転速度ωr(t)を決定することができる。具体的には、加速セグメントでは、直前の基準回転速度ωr(t−1)と所定の加速係数a1から、容易かつ動的に現在の基準回転速度ωr(t)を決定することができる(ステップS5)。一定速度セグメントでは、目標回転速度ωdから、容易かつ動的に現在の基準回転速度ωr(t)を決定することができる(ステップS6)。減速セグメントでは、直前の基準回転速度ωr(t−1)と所定の減速係数a2から、容易かつ動的に現在の基準回転速度ωr(t)を決定することができる(ステップS8)。低速回転セグメントでは、低回転速度ωlowから、容易かつ動的に現在の基準回転速度ωr(t)を決定することができる(ステップS9)。
実施形態に係る基準回転速度の決定処理によれば、所定の状態に応じて、所与のパラメータおよび/または所与の変数から、容易かつ動的に現在の基準回転速度ωr(t)を決定することができる。
<基準角度位置の決定処理>
図3を参照し、実施形態に係る基準角度位置(指令角度位置)の決定処理を説明する。基準角度位置の決定処理は、基準回転速度の決定処理と並行して実行される。より正確には、基準角度位置の決定処理は、基準回転速度の決定処理に遅れて開始される。
基準決定部7は、サンプリングタイムになると(ステップS11の判断が肯定的になると)、基準決定部7で決定された直前の基準角度位置θr(t−1)がモータ2の目標角度位置θdに到達しているか否か判断する(ステップS12)。ステップS12の判断が否定的であれば、処理はステップS13に進む。ステップS13において、基準決定部7は、ロータリエンコーダユニット12から取得されたモータ2の現在の実際の角度位置θ(t)が、基準決定部7で決定された直前の基準角度位置θr(t−1)よりも大きいか否か判断する。すなわち、ステップS13において、基準決定部7は、現在の実際の角度位置θ(t)が、基準決定部7で決定された直前の基準角度位置θr(t−1)よりも進んでいるか否か判断する。
ステップS13の判断が否定的であれば、処理はステップS14に進む。ステップS14において、基準決定部7は、直前の基準角度位置θr(t−1)が現在の実際の角度位置θ(t)に位置遅れ閾値θthを加えた値より大きいか否か判断する。すなわち、ステップS14において、基準決定部7は、位置誤差θeが位置遅れ閾値θthより大きいか否か判断する。
ステップS14の判断が肯定的であれば、処理はステップS15に進む。ステップS15において、基準決定部7は、直前の基準角度位置θr(t−1)を、現在の基準角度位置θr(t)として決定する。すなわち、現在の実際の角度位置θ(t)が直前の基準角度位置θr(t−1)よりも遅れており、かつ遅れ量(位置誤差θe)が閾値θthより大きい場合には、基準決定部7は、直前の基準角度位置θr(t−1)を現在の基準角度位置θr(t)として決定する。
また、ステップS15において、基準決定部7は、モータ2を回転させるための指令値として、基準決定部7で決定された現在の基準角度位置(現在の指令角度位置)θr(t)をモータドライバ4に供給する。ステップS15の後、処理はステップS11に戻り、次のサンプリングタイムまで待機する。
一方、ステップS14の判断が否定的であれば、処理はステップS16に進む。ステップS16において、基準決定部7は、モータ2の回転速度に対応する角度増分を直前の基準角度位置θr(t−1)に加えることにより、現在の基準角度位置θr(t)を決定する。すなわち、現在の実際の角度位置θ(t)が直前の基準角度位置θr(t−1)に一致するか、現在の実際の角度位置θ(t)が直前の基準角度位置θr(t−1)よりも遅れているが遅れ量(位置誤差θe)が閾値θth以下である場合には、基準決定部7は、角度増分を直前の基準角度位置θr(t−1)に加えることにより、現在の基準角度位置θr(t)を決定する。角度増分は、例えば、基準回転速度の決定処理で決定された現在の基準回転速度ωr(t)にサンプリング周期Tを乗算した値である。但し、角度増分は、現在の実際の角度位置θ(t)にサンプリング周期Tを乗算した値であってもよい。
また、ステップS16において、基準決定部7は、モータ2を回転させるための指令値として、基準決定部7で決定された現在の基準角度位置(現在の指令角度位置)θr(t)をモータドライバ4に供給する。
一方、ステップS13の判断が肯定的であれば、処理はステップS17に進む。ステップS17において、基準決定部7は、現在の実際の角度位置θ(t)に角度増分を加えることにより、現在の基準角度位置θr(t)を決定する。すなわち、モータ2の現在の実際の角度位置θ(t)が、直前の基準角度位置θr(t−1)よりも進んでいる場合には、基準決定部7は、現在の実際の角度位置θ(t)に角度増分を加えることにより、現在の基準角度位置θr(t)を決定する。角度増分は、例えば、基準回転速度の決定処理で決定された現在の基準回転速度ωr(t)にサンプリング周期Tを乗算した値である。但し、角度増分は、現在の実際の角度位置θ(t)にサンプリング周期Tを乗算した値であってもよい。
また、ステップS17において、基準決定部7は、モータ2を回転させるための指令値として、基準決定部7で決定された現在の基準角度位置(現在の指令角度位置)θr(t)をモータドライバ4に供給する。ステップS17の後、処理はステップS11に戻り、次のサンプリングタイムまで待機する。
ステップS12の判断が肯定的であれば、処理はステップS18に進む。ステップS18において、基準決定部7は、目標角度位置θdを現在の基準角度位置θr(t)として決定する。すなわち、基準決定部7は、直前の基準角度位置θr(t−1)がモータ2の目標角度位置θdに到達している場合には、目標角度位置θdを現在の基準角度位置θr(t)として決定する。
また、ステップS18において、基準決定部7は、モータ2を回転させるための指令値として、基準決定部7で決定された現在の基準角度位置(現在の指令角度位置)θr(t)をモータドライバ4に供給する。ステップS18の後、処理は終了する。
実施形態に係る基準角度位置の決定処理によれば、外乱またはモータ2に与えられる負荷の変化があっても、急加速または急減速せずにモータ2を動作させるので、オーバーシュートを最小限にして、整定時間を短縮化することが可能であり、モータ2の部品およびモータ2に関連する部品の寿命を向上させることが可能である。
具体的には、現在の実際の角度位置θ(t)が直前の基準角度位置θr(t−1)よりも遅れており、かつ遅れ量(位置誤差θe)が閾値θthより大きい場合には、基準決定部7は、直前の基準角度位置θr(t−1)を現在の基準角度位置θr(t)として決定する(ステップS15)。換言すれば、基準角度位置は、遅れ量(位置誤差θe)が閾値θth以下になるまで増加しない。この場合には、位置誤差θeを常に閾値θth以内に維持することができる。したがって、モータコントローラ4からモータ2に供給される駆動信号の飽和を回避または低減することができ、オーバーシュートを最小限にして、整定時間を短縮できる。
現在の実際の角度位置θ(t)が直前の基準角度位置θr(t−1)に一致するか、現在の実際の角度位置θ(t)が直前の基準角度位置θr(t−1)よりも遅れているが遅れ量(位置誤差θe)が閾値θth以下である場合には、基準決定部7は、角度増分を直前の基準角度位置θr(t−1)に加えることにより、現在の基準角度位置θr(t)を決定する(ステップS16)。この場合には、実際の角度位置θ(t)は基準角度位置に追従することができると考えられる。直前の角度位置θr(t−1)に角度増分を加えることにより、現在の基準位置θr(t)が更新されるので、基準角度位置が目標角度位置θdに向かって徐々に増加する。
モータ2の現在の実際の角度位置θ(t)が、直前の基準角度位置θr(t−1)よりも進んでいる場合には、基準決定部7は、現在の実際の角度位置θ(t)に角度増分を加えることにより、現在の基準角度位置θr(t)を決定する(ステップS17)。この場合には、現在の実際の角度位置θ(t)に角度増分を加えるだけで、現在の基準角度位置θr(t)を決定する。したがって、モータ2を急減速しない。また、現在の実際の角度位置θ(t)に角度増分を加えるだけで、容易に現在の基準角度位置θr(t)を決定することができる。
ステップS16およびS17において使用される角度増分は、例えば、基準回転速度の決定処理で決定された現在の基準回転速度ωr(t)にサンプリング周期Tを乗算した値である。但し、角度増分は、現在の実際の角度位置θ(t)にサンプリング周期Tを乗算した値であってもよい。いずれにせよ、角度増分を容易に算出することができ、ステップS16およびS17において、角度増分から現在の基準角度位置θr(t)を容易に決定することができる。
<変形例>
以上、本発明の実施形態を説明したが、上記の説明は本発明を限定するものではなく、本発明の技術的範囲において、構成要素の削除、追加、置換を含む様々な変形例が考えられる。
例えば、上記の実施形態に係る制御装置1は、移動ロボットの車輪を回転させるモータ2を制御するために、移動ロボットに設けられている。但し、多関節ロボット、乗り物、または搬送装置のモータの制御に本発明を利用してもよい。モータ2により駆動される機械要素は、車輪に限定されず、多関節ロボットのアーム、搬送装置のローラ、またはその他の機械要素であってもよい。
制御装置1またはモータコントローラ4において、プロセッサが実行する各機能は、プロセッサの代わりに、ハードウェアで実行してもよいし、例えばFPGA(Field Programmable Gate Array)、DSP(Digital Signal Processor)等のプログラマブルロジックデバイスで実行してもよい。
上記の実施形態において、ロータリエンコーダユニット12がモータ2の現在の実際の角度位置θ(t)を導出して、角度位置θ(t)を示す角度位置信号をモータコントローラ4、基準決定部7、および速度計算部10に供給する。しかし、計算部10が、他のタイプの角度センサからの角度位置信号に基づいて、モータ2の現在の実際の角度位置θ(t)および現在の実際の回転速度ω(t)を計算してもよい。
基準回転速度の決定処理(図2)のステップS5で使用される加速係数a1は、上記の実施形態では、一定値である。但し、加速係数a1は、モータ2の回転速度に対応して変化する可変値でもよい。例えば、モータ2の回転速度が目標回転速度ωdに接近すると、加速係数a1を減少させてもよい。
基準回転速度の決定処理(図2)のステップS8で使用される減速係数a2は、上記の実施形態では、一定値である。但し、減速係数a2は、モータ2の回転速度に対応して変化する可変値でもよい。例えば、モータ2の回転速度が低回転速度ωlowに接近すると、減速係数a2を減少させてもよい。
基準回転速度の決定処理(図2)のステップS9で使用される低回転速度ωlowは、上記の実施形態では、一定値である。但し、低回転速度ωlowは、モータ2の角度位置に対応して変化する可変値でもよい。この場合、ステップS9で速度基準として使用される低回転速度ωlowが、ステップS7で閾値として使用される低回転速度ωlowと異なってもよい。例えば、モータ2の角度位置が目標角度位置θdに接近すると、ステップS9で速度基準として使用される低回転速度ωlowを減少させてもよい。
基準角度位置の決定処理(図3)のステップS14における記号「>」は「≧」に代えてもよい。すなわち、遅れ量(位置誤差θe)が閾値θthに等しい場合には、上記の実施形態では、処理はステップS16に進むが、この場合に、処理はステップS15に進んでもよい。
本発明の他の態様に係る項目を列挙する。
1.モータの実際の回転角度を所定周期で取得し、前記モータを回転させるための指令値として前記モータの基準回転角度を前記所定周期で決定する基準決定部を有し、
前記基準決定部は、
前記モータの実際の回転角度が、前記基準決定部で決定された前記直前の基準回転角度よりも進んでいる場合には、前記実際の回転角度に前記角度増分を加えることにより、前記現在の基準回転角度を決定する、
モータの制御装置。
2.前記基準決定部は、
前記直前の基準回転角度が前記モータの目標回転角度に到達している場合には、前記目標回転角度を前記現在の基準回転角度として決定する、
項目1に記載のモータの制御装置。
3.モータを回転させるための指令値として前記モータの基準回転速度を前記所定周期で決定する基準決定部を有し、
前記基準決定部は、
前記基準決定部で決定された前記モータの直前の基準回転速度が目標回転速度より小さい場合には、前記モータの前記直前の基準回転速度に速度増分を加えることにより、現在の基準回転速度を決定し、
前記直前の基準回転速度が前記目標回転速度以上である場合には、前記目標回転速度を前記現在の基準回転速度として決定する、
モータの制御装置。
4.前記基準決定部は、
前記モータの実際の回転角度が所定の減速開始角度に達した後、前記基準決定部で決定された前記直前の基準回転速度が所定の低回転速度閾値より大きい場合には、前記直前の基準回転速度から速度減分を引くことにより、前記現在の基準回転速度を決定し、
前記実際の回転角度が所定の減速開始角度に達した後、前記直前の基準回転速度が前記低回転速度閾値以下である場合には、低回転速度を前記現在の基準回転速度として決定する、
項目3に記載のモータの制御装置。
5.前記基準決定部は、
前記直前の基準回転角度が前記モータの目標回転角度に到達した後には、前記現在の基準回転速度をゼロに決定する、
項目3または4に記載のモータの制御装置。
6.少なくとも1つのモータと、
前記少なくとも1つのモータに付随する項目1から5のいずれか1項に記載の制御装置と、
前記少なくとも1つのモータにより駆動される機械要素と、
を有するロボット。
7.モータの実際の回転角度を所定周期で取得することと、
前記モータを回転させるための指令値として前記モータの基準回転角度を前記所定周期で決定することとを有し、
前記基準回転角度を決定することにおいては、
前記モータの実際の回転角度が、既に決定された前記直前の基準回転角度よりも進んでいる場合には、前記実際の回転角度に前記角度増分を加えることにより、前記現在の基準回転角度を決定する、
モータの制御方法。
8.モータを回転させるための指令値として前記モータの基準回転速度を所定周期で決定することを有し、
前記基準回転速度を決定することにおいては、
既に決定された前記モータの直前の基準回転速度が目標回転速度より小さい場合には、前記モータの前記直前の基準回転速度に速度増分を加えることにより、現在の基準回転速度を決定し、
前記直前の基準回転速度が前記目標回転速度以上である場合には、前記目標回転速度を前記現在の基準回転速度として決定する、
モータの制御方法。
1 制御装置
2 モータ
4 モータコントローラ
7 基準決定部
8 メモリ
10 速度計算部
12 ロータリエンコーダユニット

Claims (11)

  1. モータの実際の回転角度を所定周期で取得し、前記モータを回転させるための指令値として前記モータの基準回転角度を前記所定周期で決定する基準決定部を有し、
    前記基準決定部は、
    前記モータの実際の回転角度が、前記基準決定部で決定された直前の基準回転角度よりも遅れており、かつ遅れ量が所定の閾値より小さい場合には、前記モータの回転速度に対応する角度増分を前記直前の基準回転角度に加えることにより、現在の基準回転角度を決定し、
    前記実際の回転角度が、前記直前の基準回転角度よりも遅れており、かつ前記遅れ量が前記閾値より大きい場合には、前記直前の基準回転角度を、前記現在の基準回転角度として決定する、
    モータの制御装置。
  2. 前記基準決定部は、
    前記モータの実際の回転角度が、前記直前の基準回転角度よりも進んでいる場合には、前記実際の回転角度に前記角度増分を加えることにより、前記現在の基準回転角度を決定する、
    請求項1に記載のモータの制御装置。
  3. 前記基準決定部は、
    前記直前の基準回転角度が前記モータの目標回転角度に到達している場合には、前記目標回転角度を前記現在の基準回転角度として決定する、
    請求項1または2に記載のモータの制御装置。
  4. 前記基準決定部は、前記モータを回転させるための指令値として前記モータの基準回転速度を前記所定周期で決定し、
    前記角度増分は、前記基準決定部で決定された現在の基準回転速度に前記所定周期を乗算して得られる、
    請求項1から3のいずれか1項に記載のモータの制御装置。
  5. 前記基準決定部は、前記モータを回転させるための指令値として前記モータの基準回転速度を前記所定周期で決定し、
    前記基準決定部は、
    前記基準決定部で決定された前記モータの直前の基準回転速度が目標回転速度より小さい場合には、前記モータの前記直前の基準回転速度に速度増分を加えることにより、現在の基準回転速度を決定し、
    前記直前の基準回転速度が前記目標回転速度以上である場合には、前記目標回転速度を前記現在の基準回転速度として決定する、
    請求項1から4のいずれか1項に記載のモータの制御装置。
  6. 前記基準決定部は、
    前記実際の回転角度が所定の減速開始角度に達した後、前記基準決定部で決定された前記直前の基準回転速度が所定の低回転速度閾値より大きい場合には、前記直前の基準回転速度から速度減分を引くことにより、前記現在の基準回転速度を決定し、
    前記実際の回転角度が所定の減速開始角度に達した後、前記直前の基準回転速度が前記低回転速度閾値以下である場合には、低回転速度を前記現在の基準回転速度として決定する、
    請求項5に記載のモータの制御装置。
  7. 前記基準決定部は、
    前記直前の基準回転角度が前記モータの目標回転角度に到達した後には、前記現在の基準回転速度をゼロに決定する、
    請求項5または6に記載のモータの制御装置。
  8. 前記基準決定部は、前記モータを回転させるための指令値として、前記基準決定部で決定された前記現在の基準回転速度を出力する
    請求項4から7のいずれか1項に記載のモータの制御装置。
  9. 前記基準決定部は、前記モータを回転させるための指令値として、前記基準決定部で決定された前記現在の基準回転角度を出力する
    請求項1から8のいずれか1項に記載のモータの制御装置。
  10. 少なくとも1つのモータと、
    前記少なくとも1つのモータに付随する請求項1から9のいずれか1項に記載の制御装置と、
    前記少なくとも1つのモータにより駆動される機械要素と、
    を有するロボット。
  11. モータの実際の回転角度を所定周期で取得することと、
    前記モータを回転させるための指令値として前記モータの基準回転角度を前記所定周期で決定することとを有し、
    前記基準回転角度を決定することにおいては、
    前記モータの実際の回転角度が、既に決定された直前の基準回転角度よりも遅れており、かつ遅れ量が所定の閾値より小さい場合には、前記モータの回転速度に対応する角度増分を前記直前の基準回転角度に加えることにより、現在の基準回転角度を決定し、
    前記実際の回転角度が、前記直前の基準回転角度よりも遅れており、かつ前記遅れ量が前記閾値より大きい場合には、前記直前の基準回転角度を、前記現在の基準回転角度として決定する、
    モータの制御方法。
JP2018057854A 2018-03-26 2018-03-26 モータの制御装置、ロボットおよびモータの制御方法 Pending JP2019170114A (ja)

Priority Applications (2)

Application Number Priority Date Filing Date Title
JP2018057854A JP2019170114A (ja) 2018-03-26 2018-03-26 モータの制御装置、ロボットおよびモータの制御方法
US16/299,192 US20190296667A1 (en) 2018-03-26 2019-03-12 Control device for motor, robot, and control method for motor

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
JP2018057854A JP2019170114A (ja) 2018-03-26 2018-03-26 モータの制御装置、ロボットおよびモータの制御方法

Publications (1)

Publication Number Publication Date
JP2019170114A true JP2019170114A (ja) 2019-10-03

Family

ID=67985784

Family Applications (1)

Application Number Title Priority Date Filing Date
JP2018057854A Pending JP2019170114A (ja) 2018-03-26 2018-03-26 モータの制御装置、ロボットおよびモータの制御方法

Country Status (2)

Country Link
US (1) US20190296667A1 (ja)
JP (1) JP2019170114A (ja)

Cited By (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
WO2021054014A1 (ja) 2019-09-19 2021-03-25 大同特殊鋼株式会社 粉末材料、積層造形物、および粉末材料の製造方法

Families Citing this family (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN114123936B (zh) * 2022-01-29 2022-06-07 天津德科智控股份有限公司 一种用于eps的电机转子角度信号故障检测的方法

Cited By (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
WO2021054014A1 (ja) 2019-09-19 2021-03-25 大同特殊鋼株式会社 粉末材料、積層造形物、および粉末材料の製造方法

Also Published As

Publication number Publication date
US20190296667A1 (en) 2019-09-26

Similar Documents

Publication Publication Date Title
JP6192559B2 (ja) クレーン装置
TWI404322B (zh) 馬達控制裝置
JP4837558B2 (ja) モータ制御装置
JP6493260B2 (ja) モータ制御装置、モータ制御方法、制御システム、情報処理プログラム、および記録媒体
JP5623757B2 (ja) モータの制御方法及び装置
US9459598B2 (en) Motor control device
US10416612B2 (en) Control device and method for tuning a servo motor
JP2019170114A (ja) モータの制御装置、ロボットおよびモータの制御方法
US20180210416A1 (en) Control device, control program, and control system
JP2011176907A5 (ja)
JP2018040464A5 (ja)
JP6494499B2 (ja) 数値制御装置
JP6161854B1 (ja) モータ制御システム
JP2007306753A (ja) ノッチフィルタのパラメータ調整方法、プログラムおよびモータ制御装置
JP6225489B2 (ja) 振動アクチュエータの駆動制御装置及び光学機器
JP5530500B2 (ja) 主軸駆動用モータの制御装置
JPWO2008093486A1 (ja) 慣性モーメント同定装置とその同定方法、ならびにその同定装置を備えたモータ制御装置
JPH11235069A (ja) 電動ブラインドの速度制御装置
JP6274967B2 (ja) 回転アクチュエータの駆動制御装置
JP2008225652A (ja) 数値制御装置
JP2017005894A (ja) ステッピングモータ制御装置
JP2005304155A (ja) モータ制御装置
JP5129362B2 (ja) 主軸駆動用モータの制御装置
JP6536650B2 (ja) 振動アクチュエータの駆動制御装置及び光学機器
US11173951B2 (en) Electric power steering device and control method therefor