JP7390914B2 - モータ制御方法、モータ駆動装置、産業用ロボットの制御方法、及び産業用ロボット - Google Patents

モータ制御方法、モータ駆動装置、産業用ロボットの制御方法、及び産業用ロボット Download PDF

Info

Publication number
JP7390914B2
JP7390914B2 JP2020017143A JP2020017143A JP7390914B2 JP 7390914 B2 JP7390914 B2 JP 7390914B2 JP 2020017143 A JP2020017143 A JP 2020017143A JP 2020017143 A JP2020017143 A JP 2020017143A JP 7390914 B2 JP7390914 B2 JP 7390914B2
Authority
JP
Japan
Prior art keywords
motor
rotational position
control
value
control method
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.)
Active
Application number
JP2020017143A
Other languages
English (en)
Other versions
JP2021125943A5 (ja
JP2021125943A (ja
Inventor
正志 花岡
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 Instruments Corp
Original Assignee
Nidec Instruments Corp
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 Instruments Corp filed Critical Nidec Instruments Corp
Priority to JP2020017143A priority Critical patent/JP7390914B2/ja
Priority to KR1020210007883A priority patent/KR102567832B1/ko
Priority to CN202110142745.1A priority patent/CN113285645B/zh
Publication of JP2021125943A publication Critical patent/JP2021125943A/ja
Publication of JP2021125943A5 publication Critical patent/JP2021125943A5/ja
Application granted granted Critical
Publication of JP7390914B2 publication Critical patent/JP7390914B2/ja
Active legal-status Critical Current
Anticipated expiration legal-status Critical

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
    • H02P21/00Arrangements or methods for the control of electric machines by vector control, e.g. by control of field orientation
    • H02P21/0003Control strategies in general, e.g. linear type, e.g. P, PI, PID, using robust control
    • 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
    • H02P21/00Arrangements or methods for the control of electric machines by vector control, e.g. by control of field orientation
    • H02P21/05Arrangements or methods for the control of electric machines by vector control, e.g. by control of field orientation specially adapted for damping motor oscillations, e.g. for reducing hunting
    • BPERFORMING OPERATIONS; TRANSPORTING
    • B25HAND TOOLS; PORTABLE POWER-DRIVEN TOOLS; MANIPULATORS
    • B25JMANIPULATORS; CHAMBERS PROVIDED WITH MANIPULATION DEVICES
    • B25J18/00Arms
    • BPERFORMING OPERATIONS; TRANSPORTING
    • B25HAND TOOLS; PORTABLE POWER-DRIVEN TOOLS; MANIPULATORS
    • B25JMANIPULATORS; CHAMBERS PROVIDED WITH MANIPULATION DEVICES
    • B25J9/00Programme-controlled manipulators
    • B25J9/16Programme controls
    • B25J9/1602Programme controls characterised by the control system, structure, architecture
    • BPERFORMING OPERATIONS; TRANSPORTING
    • B25HAND TOOLS; PORTABLE POWER-DRIVEN TOOLS; MANIPULATORS
    • B25JMANIPULATORS; CHAMBERS PROVIDED WITH MANIPULATION DEVICES
    • B25J9/00Programme-controlled manipulators
    • B25J9/16Programme controls
    • B25J9/1628Programme controls characterised by the control loop
    • B25J9/1633Programme controls characterised by the control loop compliant, force, torque control, e.g. combined with position control
    • BPERFORMING OPERATIONS; TRANSPORTING
    • B25HAND TOOLS; PORTABLE POWER-DRIVEN TOOLS; MANIPULATORS
    • B25JMANIPULATORS; CHAMBERS PROVIDED WITH MANIPULATION DEVICES
    • B25J9/00Programme-controlled manipulators
    • B25J9/16Programme controls
    • B25J9/1656Programme controls characterised by programming, planning systems for manipulators
    • B25J9/1664Programme controls characterised by programming, planning systems for manipulators characterised by motion, path, trajectory planning
    • BPERFORMING OPERATIONS; TRANSPORTING
    • B25HAND TOOLS; PORTABLE POWER-DRIVEN TOOLS; MANIPULATORS
    • B25JMANIPULATORS; CHAMBERS PROVIDED WITH MANIPULATION DEVICES
    • B25J9/00Programme-controlled manipulators
    • B25J9/16Programme controls
    • B25J9/1679Programme controls characterised by the tasks executed
    • GPHYSICS
    • G05CONTROLLING; REGULATING
    • G05BCONTROL OR REGULATING SYSTEMS IN GENERAL; FUNCTIONAL ELEMENTS OF SUCH SYSTEMS; MONITORING OR TESTING ARRANGEMENTS FOR SUCH SYSTEMS OR ELEMENTS
    • G05B19/00Programme-control systems
    • G05B19/02Programme-control systems electric
    • G05B19/18Numerical control [NC], i.e. automatically operating machines, in particular machine tools, e.g. in a manufacturing environment, so as to execute positioning, movement or co-ordinated operations by means of programme data in numerical form
    • G05B19/19Numerical control [NC], i.e. automatically operating machines, in particular machine tools, e.g. in a manufacturing environment, so as to execute positioning, movement or co-ordinated operations by means of programme data in numerical form characterised by positioning or contouring control systems, e.g. to control position from one programmed point to another or to control movement along a programmed continuous path
    • 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
    • H02P21/00Arrangements or methods for the control of electric machines by vector control, e.g. by control of field orientation
    • H02P21/14Estimation or adaptation of machine parameters, e.g. flux, current or voltage
    • 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
    • H02P21/00Arrangements or methods for the control of electric machines by vector control, e.g. by control of field orientation
    • H02P21/22Current control, e.g. using a current control loop
    • 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/16Circuit arrangements for detecting position
    • 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/16Circuit arrangements for detecting position
    • H02P6/18Circuit arrangements for detecting position without separate position detecting elements
    • 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/20Arrangements for starting
    • H02P6/21Open loop start

Landscapes

  • Engineering & Computer Science (AREA)
  • Power Engineering (AREA)
  • Robotics (AREA)
  • Mechanical Engineering (AREA)
  • Automation & Control Theory (AREA)
  • Human Computer Interaction (AREA)
  • Manufacturing & Machinery (AREA)
  • Physics & Mathematics (AREA)
  • General Physics & Mathematics (AREA)
  • Control Of Electric Motors In General (AREA)
  • Control Of Ac Motors In General (AREA)

Description

本発明は、モータ制御方法、モータ駆動装置、産業用ロボットの制御方法、及び産業用ロボットに関する。
従来、モータをオープンループ制御によって駆動するモータ制御方法が知られている。
例えば、特許文献1に記載のモータ制御方法では、モータを強制転流(電流引込法)によるオープンループ制御で起動する。その後、モータの角速度を所定値まで上昇させてモータ内で十分な誘起電圧を得られるようになった段階で、モータの回転位置をモータに流れる電流の検出値に基づいて推定するセンサレスベクトル制御によってモータの回転を制御する。特許文献1によれば、かかるモータ制御方法においては、安定したモータ制御を実現することができるとされる。
特開2019-187233号公報
しかしながら、特許文献1に記載のモータ制御方法において、モータを停止させるために、センサレスベクトル制御によってモータの角速度を所定値まで低下させた後、モータの制御方式をセンサレスベクトル制御からオープンループ制御に切り換えたとする。このとき、モータに流すDQ軸電流ベクトルの向きを、Q軸方向からD軸の正の向きへ瞬時に切り換えると、モータを駆動源とする駆動対象機械を運動させるためのトルクが得られなくなり、モータの脱調や大きな振動を発生させてしまう。
なお、モータの制御方式をセンサレスベクトル制御からオープンループ制御に切り換えるときに発生する課題について説明したが、次のような構成においても、同様の課題が生じ得る。即ち、制御方式を、エンコーダ等によるモータの回転位置の検出値をフィードバックするフィードバック制御から、オープンループ制御に切り換える構成である。
本発明は、以上の背景に鑑みてなされたものであり、その目的とするところは、次のようなモータ制御方法、モータ駆動装置、産業用ロボットの制御方法、及び産業用ロボットを提供することである。即ち、モータ減速のための制御方式切り換え後におけるモータの脱調や振動の発生を抑えることができるモータ制御方式等である。
本願の第1発明は、モータを電流引込法によるオープンループ制御によって駆動するモータ制御方法において、信号発信手段から発信される回転位置指令信号と、モータに搭載された回転位置検出器から発信される回転位置信号とに基づくフィードバック制御によってモータを駆動する構成における前記回転位置指令信号に応答した後のモータの回転位置、及びモータに流される電流をシミュレーションするステップと、シミュレーションによって得られた回転位置シミュレーション値に応じた電気角を算出するステップと、前記電気角に基づいて前記モータに電圧を印加するステップとを具備し、前記回転位置及び前記電流をシミュレーションするステップにて、前記回転位置シミュレーション値を前記回転位置指令信号に追従させるように仮想的に制御する位置仮想制御ステップと、前記電流をシミュレーションする電流シミュレーションステップとを実行し、前記位置仮想制御ステップにて、前記回転位置指令信号と、前記電流シミュレーションステップで得られた電流シミュレーション値とに基づいてモータに対する電圧指令値を算出し、前記電流シミュレーションステップにて、モータ及び負荷機械を含む機械系及び電気系のモデルに前記電圧指令値を入力し、前記モデルから前記回転位置シミュレーション値及び前記電流シミュレーション値を出力することを特徴とするモータ制御方法である。
本願の第2発明は、モータを電流引込法によるオープンループ制御によって駆動するモータ制御方法において、信号発信手段から発信される回転位置指令信号と、モータに搭載された回転位置検出器から発信される回転位置信号とに基づくフィードバック制御によってモータを駆動する構成における前記回転位置指令信号に応答した後のモータの回転位置をシミュレーションするステップと、シミュレーションによって得られた回転位置シミュレーション値に応じた電気角を算出するステップと、前記電気角に基づいて前記モータに電流を供給するステップとを具備し、前記回転位置をシミュレーションするステップにて、前記回転位置シミュレーション値を前記回転位置指令信号に追従させるように仮想的に制御する位置仮想制御ステップと、前記回転位置シミュレーション値を得るシミュレーション値取得ステップとを実行し、前記位置仮想制御ステップにて、前記回転位置指令信号に基づいて、必要なトルクをモータに発生させるためのトルク指令値を算出し、前記シミュレーション値取得ステップにて、モータ及び負荷機械を含む機械系のモデルに前記トルク指令値を入力し、前記モデルから前記回転位置シミュレーション値を出力することを特徴とするモータ制御方法である。
本願の第3発明は、モータを電流引込法によるオープンループ制御によって駆動するモータ制御方法において、信号発信手段から発信される回転位置指令信号を、位置制御応答伝達関数により、前記回転位置指令信号に応答した後のモータの回転位置に変換するステップと、前記回転位置に応じた電気角を算出するステップと、前記電気角に基づいて前記モータに電圧を印加するステップとを具備することを特徴とするモータ制御方法である。
本願の第4発明は、モータの駆動を制御するモータ駆動装置であって、第1発明、第2発明、又は第3発明のモータ制御方法によって前記モータの駆動を制御することを特徴とするモータ駆動装置である。
本願の第5発明は、複数のモータの駆動を個別に制御して産業用ロボットのアームの位置を変化させる産業用ロボットの制御方法であって、複数のモータにおけるそれぞれの駆動を、第1発明、第2発明、又は第3発明のモータ制御方法によって制御することを特徴とする産業用ロボットの制御方法である。
本願の第6発明は、複数のモータの駆動を個別に制御してアームの位置を変化させる産業用ロボットであって、複数のモータにおけるそれぞれの駆動を、第4発明のモータ駆動装置によって制御することを特徴とする産業用ロボットである。
これらの発明によれば、モータ減速のための制御方式切り換え後におけるモータの脱調や振動の発生を抑えることができるという優れた効果がある。
実施形態に係る産業用ロボットを示す斜視図。 同産業用ロボットを示す平面図。 同産業用ロボットに搭載されたモータ駆動装置の制御構成を、モータ等とともに示すブロック線図である。 同モータ駆動装置の制御モード選択部によって実行されるモード値選択処理の処理フローを示すフローチャートである。 第1例のオープンループ制御を実行するためのオープンループ制御電気角生成部を示すブロック線図である。 位置指令値と、位置指令値に応答した制御による手部の実際の回転位置及び速度との関係を示すグラフである。 第2例のオープンループ制御を実行するためのオープンループ制御電気角生成部を示すブロック線図である。 第3例のオープンループ制御を実行するためのオープンループ制御電気角生成部を示すブロック線図である。 第4例のオープンループ制御を実行するためのオープンループ制御電気角生成部を示すブロック線図である。 第5例のオープンループ制御を実行するためのオープンループ制御電気角生成部を示すブロック線図である。 第6例のオープンループ制御を実行するためのオープンループ制御電気角生成部を示すブロック線図である。
以下、図面を参照しながら、本発明の実施形態に係るモータ制御方法を用いるモータ駆動装置及び産業用ロボットの実施形態について説明する。なお、以下の図面においては、各構成をわかり易くするために、実際の構造、並びに、各構造における縮尺及び数、などを異ならせる場合がある。
まず、実施形態に係る産業用ロボットの基本的な構成について説明する。図1は、実施形態に係る産業用ロボット1を示す斜視図である。図2は、産業用ロボット1を示す平面図である。産業用ロボット1は、ガラス基板を搬送するためのロボットであり、アーム2、架台3、及び昇降部4を備える。昇降部4は、架台3に保持され、不図示の昇降モータの駆動によって上下方向(図1の矢印方向)に昇降する。アーム2は、ガラス基板を載せる手部2A、前腕部2B、及び上腕部2Cを備え、昇降部4によって保持される。
上腕部2Cにおける昇降部4との接続部である肩関節2Dは、第1モータ22Aの駆動によって水平方向に沿って回動することが可能である。具体的には、第1モータ22Aの回転駆動力が第1ベルト2Eを介して肩関節2Dに伝達されることで、肩関節2Dが水平方向に回動する。また、上腕部2Cと前腕部2Bとの接続部である肘関節2Fは、第2モータ22Bの駆動によって水平方向に沿って回動することが可能である。具体的には、第2モータ22Bの回転駆動力が第2ベルト2Gを介して肘関節2Fに伝達されることで、肘関節2Fが水平方向に回動する。また、前腕部2Bと手部2Aとの接続部である手首関節は、第2モータ22Bの駆動力をベルトを介して受けることで、水平方向に沿って回動することが可能である。
産業用ロボット1において、手部2Aを図2の一点鎖線で示される軌道に沿って矢印方向に真っ直ぐに移動させるためには、肩関節2Dと肘関節2Fとの角度を1対2の割合にして両関節を回転させる必要がある。そのためには、第1モータ22Aと第2モータ22Bとを互いに異なる駆動量で駆動する必要がある。第1モータ22A、第2モータ22Bのそれぞれの回転位置を制御せずに両モータを停止させた場合、両モータの駆動量のバランスを崩して手部2Aを一点鎖線で示される軌道から逸れた位置で停止させてしまう。
次に、実施形態に係るモータ制御方法を用いるモータ駆動装置について説明する。
図3は、実施形態に係る産業用ロボット1に搭載されたモータ駆動装置20の制御構成を、モータ22等とともに示すブロック線図である。なお、産業用ロボット1は、図3に示されるモータ駆動装置20として、アーム2の肩関節2Dを回動させるためのモータ駆動装置20、アーム2の肘関節2F、及び手首関節を回動させるためのモータ駆動装置20、及び昇降部4を昇降させるためのモータ駆動装置20の3つを備える。
3つのモータ駆動装置20のそれぞれは、モータ22の駆動の制御方式として、検出位置フィードバック制御、センサレスベクトル制御、及びオープンループ制御の3つを切り換えて実行することができる。
産業用ロボット1は、3つのモータ駆動装置20に指令を送る上位コントローラ100を備える。上位コントローラ100は、記憶媒体に記憶している制御プログラムに基づいて、3つのモータ駆動装置20のそれぞれに対して位置指令値(位置指令信号)を送信する。3つのモータ駆動装置20のそれぞれは、上位コントローラ100から送られてくる位置指令値に対応する回転位置までモータ22のロータを回転させる制御を実行する。この制御により、産業用ロボット1のアーム2が前述の制御プログラムに基づいた動作を行う。
3つのモータ駆動装置20の構成は互いに同様である。よって、以下、3つのモータ駆動装置20のうち、1つだけについて、構成を詳細に説明する。
モータ駆動装置20は、制御モード選択部21、位置速度制御部23、ベクトル制御DQ軸電流指令生成部24、第1セレクター25、電流制御部26、DQ逆変換部27、PWM制御部28、及びインバータ29を備える。モータ駆動装置20によって駆動されるモータ22は、上述の第1モータ22A、第2モータ22B、又は第3モータである。モータ駆動装置20は、電流検出部31、第2セレクター32、ベクトル制御電気角生成部33、第3セレクター34、位置推定部35、及びオープンループ制御電気角生成部36を備える。また、モータ駆動装置20は、オープンループ制御DQ軸電流指令生成部37、エンコーダ通信異常判定部38、及びDQ変換部39を備える。モータユニットは、モータ22及びロータリーエンコーダ30を備える。
上位コントローラ100から出力される位置指令値は、モータ駆動装置20の位置速度制御部23、及びオープンループ制御電気角生成部36に入力される。
産業用ロボット1のアーム2における旋回動作(肩関節2Dの回動)、関節曲げ伸ばし動作(肩関節2D、肘関節2F、及び手首関節の回動)、又は昇降動作の駆動源であるモータ22は、三相(U相、V相、W相)交流のPM(Permanent Magnet)モータからなる。モータ22に搭載された回転位置検出器としてのロータリーエンコーダ30は、周知の技術によってモータ22のロータの回転位置を検出し、検出結果の情報を位置検出値(回転位置信号)として出力する。出力された位置検出値は、エンコーダ通信異常判定部38、制御モード選択部21に入力される。また、位置検出値は、第2セレクター32を介して位置速度制御部23にも入力される。
なお、以下、モータ22のロータの回転を、モータ22の回転と表現する場合がある。
エンコーダ通信異常判定部38は、ロータリーエンコーダ30から送られてくる位置検出値について異常の有無を検出し、異常を検出した場合には異常発生信号を制御モード選択部21、及び上位コントローラ100に送信する。エンコーダ通信異常判定部38によって位置検出値の異常を検出する方法の1例として、位置検出値の時間変化量が所定の閾値を超えた場合(あるいは閾値以上である場合)に、異常として検出する方法が挙げられる。但し、この方法に限られるものではない。また、位置検出値の異常を検出する方法として、ロータリーエンコーダ30の異常を位置検出値の異常として検出する方法を採用してもよい。
制御モード選択部21は、ロータリーエンコーダ30から送られてくる位置検出値の単位時間あたりにおける変化量に基づいてモータ22の角速度を算出し、算出結果と、位置検出値の異常の有無とに基づいて制御モード値を選択して出力する。
図4は、制御モード選択部21によって実行されるモード値選択処理の処理フローを示すフローチャートである。モード値選択処理では、まず、エンコーダ通信異常判定部38から必要に応じて発信される異常発生信号について、受信したか否かが判定される(S(ステップ)1)。そして、異常発生信号が受信されない場合には(S1にてN)、制御モード値として「0」が選択されて制御モード選択部21から出力される(S2)。その後、処理フローがS1に戻される。
一方、異常発生信号が受信された場合には(S1にてY)、次に、モータ22の角速度について、所定値以上であるか否か(あるいは所定値を超えるか否か)が判定される(S3)。そして、角速度が所定値以上である場合には(S3にてY)、制御モード値として「1」が選択されて制御モード選択部21から出力される(S4)。一方、所定値以上でない場合(あるいは所定値を超えない場合)には(S3にてN)、制御モード値として「2」が選択されて制御モード選択部21から出力される。
以上のようにして、制御モード値選択処理では、位置検出値の異常が発生していない場合には制御モード値として「0」が選択される。また、位置検出値の異常が発生し且つ角速度が所定値以上である場合には制御モード値として「1」が選択され、位置検出値の異常が発生し且つ角速度が所定値以上でない場合には制御モード値として「2」が選択される。
なお、前述の所定値は、例えばモータ22の定格角速度の10〔%〕である。
上位コントローラ100は、モータ駆動装置20から異常発生信号が送られてくると、3つのモータ駆動装置20に送信する位置指令値を、アーム2を所定の軌道上で移動させながらアーム2及びモータ22を減速停止させるパターンで変化させる。これにより、アーム2は、所定の軌道上で停止する。
図3において、制御モード選択部21から出力される制御モード値は、第1セレクター25、第2セレクター32、及び第3セレクター34(以下、これらをまとめて3つのセレクター(25、32、34)とも言う)のそれぞれに入力される。3つのセレクター(25、32、34)のそれぞれは、0番入力端子、1番入力端子、及び2番入力端子を備え、制御モード選択部21から送られてくる制御モード値に基づいて、出力信号を切り換える。具体的には、3つのセレクター(25、32、34)のそれぞれは、制御モード値が「0」である場合には0番入力端子に入力される信号を出力し、「1」である場合には1番入力端子に入力される信号を出力し、「2」である場合には2番入力端子に入力される信号を出力する。
かかる構成の3つのセレクター(25、32、34)のそれぞれからは、次のような信号が出力される。即ち、位置検出値の異常が発生していない場合(制御モード値=0)には、モータ22を、位置検出値によって示される位置から、位置指令値によって示される位置まで回転させる検出位置フィードバック制御を実行するための信号が出力される。また、位置検出値の異常が発生し、且つモータ22の角速度が所定値以上(あるいは所定値を超える)である場合(制御モード値=1)には、後述のセンサレスベクトル制御によってモータ22を駆動するための信号が出力される。また、位置検出値の異常が発生し、且つモータ22の角速度が所定値未満(あるいは所定値以下)である場合(制御モード値=2)には、後述のオープンループ制御によってモータ22を駆動するための信号が出力される。
上述の3つの制御方式のうち、まず、検出位置フィードバック制御について説明する。
ロータリーエンコーダ30から出力される位置検出値の異常がない場合には、モータ駆動装置20が検出位置フィードバック制御によってモータ22を駆動する。具体的には、位置検出値の異常がない場合には、第2セレクター32から位置検出値が出力され、位置フィードバック値として位置速度制御部23、及びベクトル制御電気角生成部33に入力される。位置速度制御部23は、モータ22を位置フィードバック値によって示される位置から位置指令値によって示される位置まで回転させるのに必要なトルク値を算出してベクトル制御DQ軸電流指令生成部24に出力する。また、ベクトル制御電気角生成部33は、位置フィードバック値に基づいて電気角を生成する。この電気角は、第3セレクター34を介してDQ変換部39に入力される。
ベクトル制御DQ軸電流指令生成部24は、入力されたトルク値と同じトルクを発生させるのに必要なD軸電流、及びQ軸電流をモータ22内で発生させるためのD軸電流指令値、及びQ軸電流指令値(以下、これらをDQ軸電流指令値とも言う)を生成する。D軸電流は、モータ22に流れる電流のうちの永久磁石の磁束に平行な成分である。また、Q軸電流は、モータ22に流れる電流のうちの永久磁石の磁束に直交する成分である。
ベクトル制御DQ軸電流指令生成部24から出力されるDQ軸電流指令値は、第1セレクター25の0番入力端子、及び1番入力端子に入力される。検出位置フィードバック制御が実行される場合(制御モード値=0)、及びセンサレスベクトル制御が実行される場合(制御モード値=1)には、ベクトル制御DQ軸電流指令生成部24によって生成されたDQ軸電流指令値が第1セレクター25から出力される。このDQ軸電流指令値は、電流制御部26に入力される。
DQ変換部39は、第3セレクター34から送られてくる電気角に基づいてD軸電流フィードバック値、及びQ軸電流フィードバック値(以下、DQ軸電流フィードバック値とも言う)を生成して電流制御部26に出力する。なお、後述のセンサレスベクトル制御時においては、DQ変換部39が、第3セレクター34から送られてくる電気角と、電流検出部31から送られてくる三相電流検出値とに基づいてDQ軸電流フィードバック値を生成する。
電流制御部26は、第1セレクター25から送られてくるDQ軸電流指令値と、DQ変換部39から送られてくるDQ軸電流フィードバック値とに基づいて、DQ軸電圧指令値を生成してDQ逆変換部27に出力する。
DQ逆変換部27は、第3セレクター34から送られてくる電気角と、電流制御部26から送られてくるDQ軸電圧指令値とに基づいて、要求されるD軸電流、及びQ軸電流をモータ22内に発生させるためのU相電圧指令値、V相電圧指令値、及びW相電圧指令値(以下、三相電圧指令値とも言う)を生成して出力する。DQ逆変換部27から出力される三相電圧指令値は、PWM制御部28に入力される。PWM制御部28は、U相電圧指令値、V相電圧指令値、W相電圧指令値によって示されるU相電圧、V相電圧、W相電圧をインバータ29から出力させるためのPWM信号からなるU相ゲート信号、V相ゲート信号、W相ゲート信号を出力する。インバータ29は、U相ゲート信号、V相ゲート信号、W相ゲート信号に基づくU相電圧、V相電圧、W相電圧をモータ22に供給して、モータ22を回転させる。
電流検出部31は、インバータ29からモータ22に流れるU相電流、V相電流、及びW相電流(以下、これらを三相電流とも言う)を検出し、検出結果をU相電流検出値、V相電流検出値、W相電流検出値(以下、三相電流検出値とも言う)として出力する。なお、三相の電流値を検出することに代えて、三相のうち、二相の電流値だけを検出し、残りの一相の電流値については、二相の電流値の検出結果に基づいて算出してもよい。
ロータリーエンコーダ30から出力される位置検出値の異常がない場合には、以上のような検出位置フィードバック制御によってモータ22が駆動される。
次に、センサレスベクトル制御について説明する。センサレスベクトル制御が実行される場合、即ち、位置検出値の異常があり、且つ異常発生直前のモータ22の角速度が所定値以上である(あるいは所定値を超える)場合(制御モード値=1)には、以下のようにしてモータ22が駆動される。即ち、電流検出部31から出力される三相電流検出値は、DQ変換部39に入力される。DQ変換部39は、三相電流検出値と、第3セレクター34から送られてくる電気角とに基づいて、DQ軸電流フィードバック値を生成して出力する。出力されたDQ軸電流フィードバック値は、電流制御部26、及び位置推定部35に入力される。
電流制御部26は、第1セレクター25から送られてくるDQ軸電流指令値と、DQ変換部から送られてくるDQ軸電流フィードバック値とに基づいて、DQ軸電圧指令値を生成して出力する。位置推定部35は、電流制御部26から送られてくるDQ軸電圧指令値と、DQ変換部39から送られてくるDQ軸電流フィードバック値とに基づいて、モータ22の回転位置を推定する。
位置推定部35は、DQ変換部39から送られてくるDQ軸電流フィードバック値と、電流制御部26から送られてくるDQ軸電圧指令値とに基づいて、位置推定値と、電気角推定値とを求める。そして、位置推定部35は、位置推定値を第2セレクター32の1番入力端子に出力し、且つ電気角推定値を第3セレクターの1番入力端子に出力する。
位置推定部35から出力される位置推定値は、第2セレクター32を介して、位置フィードバック値として位置速度制御部23に入力される。位置速度制御部23は、位置フィードバック値として位置推定値を用いる点の他は検出位置フィードバック制御と同様にしてトルク指令値を出力する。このトルク指令値に基づくU相ゲート信号、V相ゲート信号、W相ゲート信号としてインバータ―29に入力されるまでの処理は、検出位置フィードバック制御と同様である。つまり、センサレスベクトル制御では、位置検出値の代わりに、モータ22内で発生する誘起電圧に基づく位置推定値を位置フィードバック値として位置速度制御部23にフィードバックする点の他は、検出位置フィードバック制御と同様の処理が行われる。
なお、モータ駆動装置20は、センサレスベクトル制御において、検出位置フィードバック制御に比べて位置速度制御の制御ループゲインを低下させる。制御ループゲインを低下させる方法の1例として、上位コントローラ100の指令によって制御ループゲインを低下させる方法が挙げられる。アーム2の軌道を精度良く維持するためには、位置検出値の異常が発生したモータ駆動装置20だけでなく、他のモータ駆動装置20の位置速度制御の制御ループゲインも低下させることが望ましい。上位コントローラ100の指令によれば、全てのモータ駆動装置20における位置速度制御の制御ループゲインを適切に低下させることが可能である。
モータ駆動装置20の位置速度制御の制御ループゲインを低下させる他の1例として、位置検出値の異常を引き起こしたモータ駆動装置20の処理によって、そのモータ駆動装置20の位置速度制御の制御ループゲインだけ低下させる方法が挙げられる。この方法の処理の1例としては、P-PI制御によって位置と速度とを制御する構成において、速度ループゲイン、位置ループゲイン、及び速度ループ積分ゲインのそれぞれを低下させる方法が挙げられる。また、他の1例として、例えば特開2002-229604号公報に記載のようなRPP制御によって位置と速度とを制御する構成において、ωゲイン、ωゲイン、ωゲインを低下させる方法が挙げられる。また、更なる他の一例として、RPP制御によって位置と速度とを制御する構成において、イナーシャノミナル設定値を低下させる方法が挙げられる。イナーシャノミナル設定値を低下させることで、ωゲイン、ωゲインを近似的に低下させることが可能である。この方法によれば、制御ループゲインを低下させるための専用のプログラムを構築することなく、制御ループゲインを適切に低下させることができる。
次に、オープンループ制御について説明する。オープンループ制御が実行される場合、即ち、位置検出値の異常があり、且つモータ22の角速度が所定値未満である(あるいは所定値以下である)場合(制御モード値=2)には、以下のようにしてモータ22が駆動される。即ち、オープンループ制御電気角生成部36は、上位コントローラ100から送られてくる位置指令値に基づいてモータ22の磁極を引き付ける回転位置(以下、強制同期位置指令値と言う)を算出してオープンループ制御DQ軸電流指令生成部37に出力する。また、位置指令値に基づいて電気角を算出して第3セレクター34に出力する。
実施形態に係るモータ駆動装置は、以下に説明する第1例~第6例のオープンループ制御のうち、何れかのオープンループ制御を実行する。
図5は、第1例のオープンループ制御を実行するためのオープンループ制御電気角生成部36を示すブロック線図である。このオープンループ制御電気角生成部36は、制御器36aと、電気系・機械系のモデル36bと、電気角算出部36cとを備える。
制御器36aは、位置速度制御部36a1、ベクトル制御DQ軸電流指令生成部36a2、電流制御部36a3、DQ逆変換部36a4、PWM制御部36a5、及びDQ変換部36a6を備える。図5に示される位置速度制御部36a1は、図3に示される位置速度制御部23と同様の処理を実行する。図5に示されるベクトル制御DQ軸電流指令生成部36a2は、図3に示されるベクトル制御DQ軸電流指令生成部24と同様の処理を実行する。図5に示される電流制御部36a3は、図3に示される電流制御部26と同様の処理を実行する。図5に示されるDQ逆変換部36a4は、図3に示されるDQ逆変換部27と同様の処理を実行する。図5に示されるPWM制御部36a5は、図3に示されるPWM制御部28と同様の処理を実行する。図5に示されるDQ変換部36a6は、図3に示されるDQ変換部39と同様の処理を実行する。
電気系・機械系のモデル36bは、インバータ36b1のモデル、モータ36b2のモデル、及びモータに対する負荷機械36b5のモデルを備える。これらモデルは、U相、V相、W相のそれぞれについてゲート信号が変化前の値から変化後の値に変化した場合に、モータ22の回転位置と、モータ22に流れる電流値とについてどのように変化するのかをシミュレーションするアルゴリズムを備える。シミュレーションによって得られた位置シミュレーション値は、ロータリーエンコーダ36b4のモデルから出力され、制御器36aの位置速度制御部36a1と、電気角算出部36cと、図3におけるオープンループ制御DQ軸電流指令生成部37とに入力される。
図5における電気角算出部36cは、位置シミュレーション値に基づいてモータ22の電気角を算出し、結果を図3におけるDQ逆変換部27、及びDQ変換部39に出力する。
位置検出値の異常発生時において、制御方式を。検出位置フィードバック制御、あるいはセンサレスベクトル制御から、第1例のオープンループ制御に切り換えた後には、位置検出値を行う場合と同様の挙動でモータを動作させることが可能である。よって、第1例のオープンループ制御によれば、切り換え後のモータの脱調や振動の発生を抑えることができる。
なお、モータ22の電気角を位置指令値に近づける方法として、オープンループ制御に切り換わる直前の位置偏差を初期値として、位置偏差を徐々にゼロに収束させる一次遅れフィルターを用いる方法がある。しかしながら、この方法では、位置指令値とは無関係に位置偏差を減少させることから、手部2Aを所望の軌道に沿って移動させることができない。
図6は、位置指令値と、位置指令値に応答した制御による手部2Aの実際の回転位置及び速度との関係を示すグラフである。回転位置と時間との関係を示すグラフに着目すると、位置指令値の変化に対して実際の位置の変化が遅れている。これは、指令に応答する実際の位置の変化に時間を要するからである。検出位置フィードバック制御やセンサレスベクトル制御では、産業用ロボット1の各関節のモータの位置指令値に対して実際の回転位置を均一に遅らせるように位置制御ゲインを設定することで、手部2Aの軌道精度を確保する。一方、オープンループ制御において、上述の一次遅れフィルタによって特定の軸だけ位置偏差をゼロに収束させる方法を用いると、図示のように、実際の回転位置の変化が、検出位置フィードバック制御の時とは異なる。これにより、各軸の位置の位置指令値に対する遅れ方に差が生じ、手部2Aの位置が目標の軌道から逸れてしまう。これに対し、第1例のオープンループ制御のようにシミュレーション値を用いる方法では、図示のように、位置指令値の変化に対して実際の回転位置を、検出位置フィードバック制御を実行したときと同じように変化させることができる(手部2Aを目標の軌道に沿って移動させることができる)。
図7は、第2例のオープンループ制御を実行するためのオープンループ制御電気角生成部36を示すブロック線図である。このオープンループ制御電気角生成部36は、制御器36aと、機械系のモデル36bと、電気角算出部36cとを備える。
制御器36aは、位置速度制御部を備える。位置速度制御部は、上位コントローラ100から送られてくる位置指令値と、機械系のモデル36bからおくられてくる位置シミュレーション値とに基づいてトルク指令値を生成する。機械系のモデル36bは、モータの発するトルクと、位置速度制御部から送られてくるトルク指令値とが一致するという仮定に基づいて、トルクに応答した後のモータ22Aの回転位置をシミュレーションした結果を、位置シミュレーション値として出力する。位置シミュレーション値は、電気角算出部36cに出力される。また、位置シミュレーション値は、強制同期位置指令値として、図3に示されるオープンループ制御DQ軸電流指令生成部37に出力される。図7に示される電気角算出部36cは、位置シミュレーション値に基づいて電気角を算出し、結果を図3に示されるDQ逆変換部27、及びDQ変換部39に出力する。
第2例のオープンループ制御では、図7と図5との比較からわかるように、第1例のオープンループ制御に比べて、簡単な処理によって制御方式の切り換え後におけるモータの脱調や振動の発生を抑えることができる。
図8は、第3例のオープンループ制御を実行するためのオープンループ制御電気角生成部36を示すブロック線図である。このオープンループ制御電気角生成部36は、演算部36dと、パラメータ算出部36eと、電気角算出部36cとを備える。
演算部36dは、上位コントローラ100から送られてくる位置指令値を、位置制御応答伝達関数G(s)により、仮想的に検出位置フィードバック制御を実行した場合における位置検出値に応答した後のモータ22の回転位置に変換する。
位置制御応答伝達関数G(s)の基本式は、次式で表される。
Figure 0007390914000001
第3例のオープンループ制御に用いられる演算部36dは、上述の基本式の右辺を改変した次式によって位置指令値を位置変換値に変換する。
Figure 0007390914000002
変換によって得られた位置変換値は、強制同期位置指令値として図3に示されるオープンループ制御DQ軸電流指令生成部37に出力される。また、位置変換値は、図8に示されるパラメータ算出部36e、及び電気角算出部36cにも出力される。電気角算出部36cは、演算部36dから送られてくる位置変換値に基づいてモータ22の電気角を算出し、結果を図3に示されるDQ逆変換部27、及びDQ変換部39に出力する。
第3例のオープンループ制御では、位置指令値について、実際の制御においてどのような遅れでどのような回転位置に反映されるのかを位置制御応答伝達関数G(s)によって位置変換値として求める。位置制御応答伝達関数G(s)としては、上述の基本式を用いることが望ましい。しかし、第3例のオープンループ制御では、ff、ff、ω、及びωのうち、ωだけを含む単純な位置制御応答伝達関数G(s)を用いることで、高速で高価な演算装置(例えばCPU)を用いることなく、モータ22の位置変換値を高速で求めることが可能である。単純な位置制御応答伝達関数G(s)であっても、次のような態様におけるモータ制御であれば、モータ22の位置変換値を適切な値で求めることが可能である。即ち、ffが1に近い値をとり、且つffが0に近い値をとる態様である。
前述の態様であれば、モータ22の制御方式を、検出位置フィードバック制御、あるいは、センサレスベクトル制御から、第3例のオープンループ制御に切り換えた後において、位置フィードバック制御を行う場合と同様の挙動でモータを動作させることが可能である。このため、第3例のオープンループ制御によれば、制御方式をオープンループ制御に切り換えた後のモータ22の脱調や振動の発生を抑えることができる。加えて、第3例のオープンループ制御によれば、位置変換値を安価な演算装置によって適切に求めることができる。
位置制御応答伝達関数G(s)によって位置変換値を求める構成において、ω、ωを制御対象の状態によらない一定の値としたとする。すると、制御方式をオープンループ制御に切り換えたときに、制御対象の慣性モーメントの変動によるωやωの値の不適によってモータ22の位置や速度に乱れを発生させることがある。
そこで、図8に示されるパラメータ算出部36eは、オープンループ制御開始時に、直前の位置偏差と速度推定値とに基づいて、適切な値のωを求め、結果を演算部36dに出力する。位置偏差は、位置フィードバック値の位置指令値に対する偏差である。速度推定値は、オープンループ制御開始直前に検出位置フィードバック制御が実行されている場合には、位置検出値に基づいて推定される速度である。また、オープンループ制御開始直前にセンサレスベクトル制御が実行されている場合には、電流検出値に基づいて推定される速度である。演算部36dは、記憶媒体に記憶しているωの値を、パラメータ算出部36eから送られてくる値に随時更新する。
かかる構成によれば、制御方式を第3例のオープンループ制御に切り換えたときのωの値の不適によるモータ22の回転位置や速度の乱れを抑えることができる。
図9は、第4例のオープンループ制御を実行するためのオープンループ制御電気角生成部36を示すブロック線図である。このオープンループ制御電気角生成部36は、次式によって表される位置制御応答伝達関数G(s)を用いる点の他が、図8に示されるオープンループ制御電気角生成部36と同様の構成になっている。
Figure 0007390914000003
第4例のオープンループ制御では、ff、ff、ω、及びωのうち、ff及びωだけを含むという単純な位置制御応答伝達関数G(s)を用いることで、高速で高価な演算装置を用いることなく、位置変換値を高速で求めることが可能である。ffが1に近い値をとる態様のモータ制御であれば、適切な値の位置変換値を求めることが可能である。このため、第4例のオープンループ制御によれば、制御方式をオープンループ制御に切り換えた後のモータ22の脱調や振動の発生を抑えることができる。加えて、第4例のオープンループ制御によれば、位置変換値を安価な演算装置によって適切に求めることができる。
図10は、第5例のオープンループ制御を実行するためのオープンループ制御電気角生成部36を示すブロック線図である。このオープンループ制御電気角生成部36は、次式によって表される位置制御応答伝達関数G(s)を用いる点、及びパラメータ算出部36eによってω、及びωを求める点の他が、図8に示されるオープンループ制御電気角生成部36と同様の構成になっている。
Figure 0007390914000004
第5例のオープンループ制御では、ff、ff、ω、及びω2のうち、ff、ω及びωだけを含む位置制御応答伝達関数G(s)を用いて、位置変換値を高速で求めることが可能である。前述の位置制御応答伝達関数G(s)であっても、ffが0に近い値をとる態様でのモータ制御であれば、適切な値の位置変換値に求めることが可能である。制御方式をオープンループ制御に切り換えた後のモータ22の脱調や振動の発生を抑えることができる。
図11は、第6例のオープンループ制御を実行するためのオープンループ制御電気角生成部36を示すブロック線図である。このオープンループ制御電気角生成部36は、位置制御応答伝達関数G(s)として上述の基本式を用いる点、及びパラメータ算出部36eによってω1、及びω2を求める点の他が、図8に示されるオープンループ制御電気角生成部36と同様の構成になっている。
第6例のオープンループ制御では、ff、ff、ω、及びωの全てを含む位置制御応答伝達関数G(s)を用いて、位置変換値を求める。かかる構成によれば、ff、ff、ω、及びωの全てを含まない位置制御応答伝達関数G(s)を用いる構成に比べて、適切な値の位置変換値を精度良く求めることができる。
<産業用ロボット1の作用効果>
<構成1>
(1)以上の構成の産業用ロボット1において、構成1のモータ制御方法は、上位コントローラ100(信号発信手段)から発信される位置指令値(回転位置指令信号)と、モータ22に搭載されたロータリーエンコーダ30(回転位置検出器)から発信される位置検出値(回転位置信号)とに基づく検出位置フィードバック制御によってモータ22を駆動する構成における位置検出値に応答した後のモータ22の回転位置、及びモータに供給される電流をシミュレーションするステップ(図5の36b)を具備する。また、構成1は、シミュレーションによって得られた位置シミュレーション値(回転位置シミュレーション値)に応じた電気角を算出するステップ(図5の36c)を具備する。また、構成1は、前記電気角に基づいてモータ22に電流を供給するステップ(図5の電気角)を具備する。回転位置及び電流をシミュレーションするステップでは、位置シミュレーション値を位置指令値に追従させるように仮想的に制御する位置仮想制御ステップ(図5の36a)と、電流をシミュレーションする電流シミュレーションステップ(図5の36b3)とを実行する。位置仮想制御ステップでは、位置指令値と、電流シミュレーションステップで得られた三相電流シミュレーション値とに基づいてモータ36b2に対する電圧指令値を算出する(図5の36a1~4)。電流シミュレーションステップでは、モータ36b2、及び負荷機械36b5を含む電気系・機械系のモデル36bに電圧指令値を入力し、電気系・機械系のモデル36bから位置シミュレーション値及び三相電流シミュレーション値を出力する。
<構成1の作用効果>
構成1においては、検出位置フィードバック制御を行うと仮定した場合に、位置指令値によってモータ22の回転位置をどのように変化させるのかを、シミュレーションする。そして、シミュレーションによって得られた位置シミュレーション値に相当する電気角を算出し、算出結果に基づくオープンループ制御によってモータ22の回転位置を制御する。かかる構成において、モータ22の制御方式を、検出位置フィードバック制御、あるいは、センサレスベクトル制御から、オープンループ制御に切り換えたとする。すると、切り換え後において、検出位置フィードバック制御を行う場合と同様の挙動でモータ22を動作させることが可能なので、切り換え後のモータ22の脱調や振動の発生を抑えることができる。
<構成2>
構成2のモータ制御方法は、上位コントローラ100から発信される位置指令値と、モータ22に搭載されたロータリーエンコーダ30から発信される位置検出値とに基づく検出位置フィードバック制御によってモータ22を駆動する構成における位置指令値に応答した後のモータ22の回転位置をシミュレーションするステップ(図7の36)を具備する。また、構成2は、シミュレーションによって得られた位置シミュレーション値(回転位置シミュレーション値)に応じた電気角を算出するステップ(図7の36c)と、前記電気角に基づいてモータ22に電流を供給するステップ(図7の電気角)とを具備する。回転位置をシミュレーションするステップでは、位置シミュレーション値を位置指令値に追従させるように仮想的に制御する位置仮想制御ステップ(図7の36a)と、位置シミュレーション値を得るシミュレーション値取得ステップとを実行する。位置仮想制御ステップ(図7の36a)にて、位置指令値に基づいて、必要なトルクをモータ22に発生させるためのトルク指令値を算出する。シミュレーション値取得ステップにて、モータ及び負荷機械を含む電気系・機械系のモデル36bに前記トルク指令値を入力し、電気系・機械系のモデル36bから位置シミュレーション値を出力する。
<構成2の作用効果>
構成2によれば、構成1よりも簡単な処理により、モータ22の制御方式をオープンループ制御に切り換えた後におけるモータ22の脱調や振動の発生を抑えることができる。
<構成3>
構成3のモータ制御方法は、上位コントローラ100から発信される位置指令値を、位置制御応答伝達関数G(s)により、位置検出値に応答した後のモータ””の回転位置に変換するステップと、前記回転位置に応じた電気角を算出するステップと、前記電気角に基づいてモータ22に電流を供給するステップとを具備する。
<構成3の作用効果>
構成3においては、検出位置フィードバック制御を行うと仮定した場合に、位置指令値によってモータ22の回転位置をどのように変化させるのかを、位置制御応答伝達関数G(s)によって求める。そして、得られた回転位置に相当する電気角を算出し、算出結果に基づくオープンループ制御によってモータ22の回転位置を制御する。かかる構成3において、モータ22の制御方式を、検出位置フィードバック制御、あるいは、センサレスベクトル制御から、オープンループ制御に切り換えたとする。すると、切り換え後において、検出位置フィードバック制御を行う場合と同様の挙動でモータ22を動作させることが可能なので、切り換え後のモータ22の脱調や振動の発生を抑えることができる。
<構成4>
構成4のモータ制御方法においては、構成3における位置制御応答伝達関数(Gs)として、上述の数2によって表される式を用いる。
<構成4の作用効果>
構成4においては、ff、ff、ω、及びωのうち、ωだけを含む単純な位置制御応答伝達関数G(s)を用いることで、高速で高価な演算装置(例えばCPU)を用いることなく、モータ22の位置変換値を高速で求めることが可能である。前述のような単純な位置制御応答伝達関数G(s)であっても、次のような態様におけるモータ制御であれば、適切な値の位置変換値を求めることが可能である。即ち、ffが1に近い値をとり、且つffが0に近い値をとる態様である。よって、構成4によれば、前述の態様における位置変換値を、安価な演算装置によって適切な値で求めることができる。
<構成5>
構成5のモータ制御方法においては、構成3における位置制御応答伝達関数(Gs)として、上述の数3によって表される式を用いる。
<構成5の作用効果>
構成5においては、ff、ff、ω、及びωのうち、ff及びωだけを含むという単純な位置制御応答伝達関数G(s)を用いることで、高速で高価な演算装置を用いることなく、位置変換値を高速で求めることが可能である。ffが1に近い値をとる態様のモータ制御であれば、適切な値の位置変換値を求めることが可能である。よって、構成5によれば、前述の態様における位置変換値を、安価な演算装置によって適切な値で求めることができる。
<構成6>
構成6のモータ制御方法においては、構成3における位置制御応答伝達関数(Gs)として、上述の数4によって表される式を用いる。
<構成6の作用効果>
構成6においては、ff、ff、ω、及びωのうち、ff、ω及びωだけを含む位置制御応答伝達関数G(s)を用いて、位置変換値を求めることが可能である。前述の位置制御応答伝達関数G(s)であっても、ffが0に近い値をとる態様でのモータ制御であれば、位置変換値を適切な値で求めることができる。
<構成7>
構成7のモータ制御方法においては、構成3における位置制御応答伝達関数(Gs)として、上述の基本式を用いる。
<構成7の作用効果>
構成7においては、ff、ff、ω、及びωの全てを含む位置制御応答伝達関数G(s)を用いて、位置変換値を求める。構成7によれば、ff、ff、ω、及びωの全てを含まない位置制御応答伝達関数G(s)を用いる場合に比べて、適切な値の位置変換値を精度良く求めることができる。
<構成8、9>
構成8のモータ制御方法は、構成1乃至3の何れかを具備する。構成9のモータ制御方法は、構成4乃至7の何れかを具備する。構成8、9のモータ制御方法は、モータ22の回転位置を検出するロータリーエンコーダ30から発信される位置検出値の異常の有無を検出するステップ(図3の38)を具備する。また、構成8、9のモータ制御方法は、位置検出値の異常が検出されない場合に、位置指令値と位置検出値とに基づく検出位置フィードバック制御によってモータ22を駆動するステップを具備する。また、構成8、9のモータ制御方法では、位置検出値の異常が検出された場合に、所定の高速角速度領域では、モータ22に発生する誘起電圧に基づいて推定したモータ22の位置推定値(回転位置推定値)に基づくセンサレスベクトル制御によってモータ22を駆動する。一方で、高速回転領域よりも低い低速回転領域では、オープンループ制御によってモータ22を駆動する。
<構成8、9の作用効果>
構成8によれば、位置検出値の異常が発生した場合に、検出位置フィードバックするフィードバック制御を行う場合と同様の挙動により、モータ22の駆動を停止させることができる。
<構成10>
構成10のモータ制御方法は、構成9の構成を備える。構成10のモータ制御方法において、検出位置フィードバック制御又はセンサレスベクトル制御から、オープンループ制御に切り替わった直後のωが、切り換え直前の検出フィードバック制御における位置指令値と位置検出値とに基づいて、又は切り換え直前のセンサレスベクトル制御における位置指令値と位置推定値(回転位置推定値)とに基づいて算出される。
<構成10の作用効果>
構成10においては、検出位置フィードバック制御、又はセンサレスベクトル制御からオープンループ制御に切り換える直前に、位置指令値と位置検出値(又は位置推定値)との偏差と、位置検出値(又は位置推定値)に基づいて推定した速度とに基づいて算出ωを算出する。そして、算出結果を、切り換え直後の位置制御応答伝達関数G(s)におけるωとして用いる。かかる構成によれば、切り換え直後におけるモータの位置や速度の急激な変動の発生を抑えることができる。
<構成11>
構成11のモータ駆動装置20は、構成1乃至10の何れかのモータ制御方法によってモータ22の駆動を制御する。
<構成11の作用効果>
構成11によれば、構成1乃至10の何れかのモータ制御方法を用いることで、制御方式を、検出位置フィードバック制御、又はセンサレスベクトル制御から、オープンループ制御に切り換えたときのモータの脱調や振動の発生を抑えることができる。
<構成12>
構成12の産業用ロボット1の制御方法は、複数のモータ22A、22Bの駆動を個別に制御して産業用ロボット1のアーム2の位置を変化させ、複数のモータ22A、22Bにおけるそれぞれの駆動を、構成1乃至9の何れかのモータ制御方法によって制御する。
<構成13>
構成13の産業用ロボット1は、複数のモータ22A、22Bの駆動を個別に制御してアーム2の位置を変化させ、複数のモータ22A、22Bにおけるそれぞれの駆動を、構成10のモータ駆動装置20によって制御する。
<構成12、13の作用効果>
構成12、13においては、アーム2の駆動源となる複数のモータ22A、22Bのうち、位置検出値の異常が発生したモータの回転動作をセンサレスベクトル制御又はオープンループ制御によって適切に制御しつつ、他のモータの回転動作を検出位置フィードバック生後によって制御して、全てのモータ22の回転を適切に停止させる。かかる構成によれば、何れか1つのモータ22において位置検出値の異常が発生したときに、全てのモータ22を直ちに強制停止させることによるアーム2の不適切な動作の発生を回避することができる。
以上、本発明の好ましい実施形態について説明したが、本発明は、実施形態に限定されず、その要旨の範囲内で種々の変形および変更が可能である。実施形態は、発明の範囲及び要旨に含まれると同時に、特許請求の範囲に記載された発明とその均等の範囲に含まれる。
1:産業用ロボット、 2:アーム、 20:モータ駆動装置、 21:制御モード選択部、 22:モータ、 23:位置速度制御部、 24:ベクトル制御DQ軸電流指令生成部、 25:第1セレクター、 26:電流制御部、 27:DQ逆変換部、 28;PWM制御部、 29:インバータ、 30:ロータリーエンコーダ(回転位置検出器)、 31:電流検出部、 32:第2セレクター、 33:ベクトル制御電気角生成部、 34:第3セレクター、 35:位置推定部、 36:オープンループ制御電気角生成部、 37:オープンループ制御DQ軸電流指令生成部、 38エンコーダ通信異常判定部、 39:DQ変換部、 100:上位コントローラ

Claims (13)

  1. モータを電流引込法によるオープンループ制御によって駆動するモータ制御方法において、
    信号発信手段から発信される回転位置指令信号と、モータに搭載された回転位置検出器から発信される回転位置信号とに基づくフィードバック制御によってモータを駆動する構成における前記回転位置指令信号に応答した後のモータの回転位置、及びモータに流される電流をシミュレーションするステップと、シミュレーションによって得られた回転位置シミュレーション値に応じた電気角を算出するステップと、前記電気角に基づいて前記モータに電圧を印加するステップとを具備し、
    前記回転位置及び前記電流をシミュレーションするステップにて、前記回転位置シミュレーション値を前記回転位置指令信号に追従させるように仮想的に制御する位置仮想制御ステップと、前記電流をシミュレーションする電流シミュレーションステップとを実行し、
    前記位置仮想制御ステップにて、前記回転位置指令信号と、前記電流シミュレーションステップで得られた電流シミュレーション値とに基づいてモータに対する電圧指令値を算出し、
    前記電流シミュレーションステップにて、モータ及び負荷機械を含む機械系及び電気系のモデルに前記電圧指令値を入力し、前記モデルから前記回転位置シミュレーション値及び前記電流シミュレーション値を出力する
    ことを特徴とするモータ制御方法。
  2. モータを電流引込法によるオープンループ制御によって駆動するモータ制御方法において、
    信号発信手段から発信される回転位置指令信号と、モータに搭載された回転位置検出器から発信される回転位置信号とに基づくフィードバック制御によってモータを駆動する構成における前記回転位置指令信号に応答した後のモータの回転位置をシミュレーションするステップと、シミュレーションによって得られた回転位置シミュレーション値に応じた電気角を算出するステップと、前記電気角に基づいて前記モータに電流を供給するステップとを具備し、
    前記回転位置をシミュレーションするステップにて、前記回転位置シミュレーション値を前記回転位置指令信号に追従させるように仮想的に制御する位置仮想制御ステップと、前記回転位置シミュレーション値を得るシミュレーション値取得ステップとを実行し、
    前記位置仮想制御ステップにて、前記回転位置指令信号に基づいて、必要なトルクをモータに発生させるためのトルク指令値を算出し、
    前記シミュレーション値取得ステップにて、モータ及び負荷機械を含む機械系のモデルに前記トルク指令値を入力し、前記モデルから前記回転位置シミュレーション値を出力する
    ことを特徴とするモータ制御方法。
  3. モータを電流引込法によるオープンループ制御によって駆動するモータ制御方法において、
    信号発信手段から発信される回転位置指令信号を、位置制御応答伝達関数により、前記回転位置指令信号に応答した後のモータの回転位置に変換するステップと、前記回転位置に応じた電気角を算出するステップと、前記電気角に基づいて前記モータに電圧を印加するステップとを具備する
    ことを特徴とするモータ制御方法。
  4. 前記位置制御応答伝達関数が、次式
    Figure 0007390914000005
    における右辺を改変した次式
    Figure 0007390914000006
    である
    ことを特徴とする請求項3に記載のモータ制御方法。
  5. 前記位置制御応答伝達関数が、次式
    Figure 0007390914000007
    における右辺を改変した次式
    Figure 0007390914000008
    である
    ことを特徴とする請求項3に記載のモータ制御方法。
  6. 前記位置制御応答伝達関数が、次式
    Figure 0007390914000009
    における右辺を改変した次式
    Figure 0007390914000010
    である
    ことを特徴とする請求項3に記載のモータ制御方法。
  7. 前記位置制御応答伝達関数が、次式
    Figure 0007390914000011
    である
    ことを特徴とする請求項3に記載のモータ制御方法。
  8. モータの回転位置を検出する回転位置検出器から発信される回転位置信号の異常の有無を検出するステップと、
    前記回転位置信号の異常が検出されない場合に、信号発信手段から発信される回転位置指令信号と、前記回転位置信号とに基づくフィードバック制御によって前記モータを駆動するステップと、
    前記回転位置信号の異常が検出された場合に、所定の高速角速度領域では、前記モータに発生する誘起電圧に基づいて推定したモ前記モータの回転位置推定値に基づくセンサレスベクトル制御によって前記モータを駆動する一方で、前記高速回転領域よりも低い低速回転領域では、オープンループ制御によって前記モータを駆動する
    ことを特徴とする請求項1乃至3の何れか一項に記載のモータ制御方法。
  9. モータの回転位置を検出する回転位置検出器から発信される回転位置信号の異常の有無を検出するステップと、
    前記回転位置信号の異常が検出されない場合に、信号発信手段から発信される回転位置指令信号と、前記回転位置信号とに基づくフィードバック制御によって前記モータを駆動するステップと、
    前記回転位置信号の異常が検出された場合に、所定の高速角速度領域では、前記モータに発生する誘起電圧に基づいて推定したモ前記モータの回転位置推定値に基づくセンサレスベクトル制御によって前記モータを駆動する一方で、前記高速回転領域よりも低い低速回転領域では、オープンループ制御によって前記モータを駆動する
    ことを特徴とする請求項4乃至7の何れか一項に記載のモータ制御方法。
  10. 前記フィードバック制御又は前記センサレスベクトル制御から、前記オープンループ制御に切り替わった直後のωが、切り換え直前の前記フィードバック制御における前記回転位置指令信号と前記回転位置信号とに基づいて、又は切り換え直前の前記センサレスベクトル制御における前記回転位置指令信号と前記回転位置推定値とに基づいて算出される
    ことを特徴とする請求項9に記載のモータ制御方法。
  11. モータの駆動を制御するモータ駆動装置であって、
    請求項1乃至10の何れか1項に記載のモータ制御方法によって前記モータの駆動を制御する
    ことを特徴とするモータ駆動装置。
  12. 複数のモータの駆動を個別に制御して産業用ロボットのアームの位置を変化させる産業用ロボットの制御方法であって、
    複数のモータにおけるそれぞれの駆動を、請求項1乃至10の何れか1項に記載のモータ制御方法によって制御する
    ことを特徴とする産業用ロボットの制御方法。
  13. 複数のモータの駆動を個別に制御してアームの位置を変化させる産業用ロボットであって、
    複数のモータにおけるそれぞれの駆動を、請求項11に記載のモータ駆動装置によって制御する
    ことを特徴とする産業用ロボット。


JP2020017143A 2020-02-04 2020-02-04 モータ制御方法、モータ駆動装置、産業用ロボットの制御方法、及び産業用ロボット Active JP7390914B2 (ja)

Priority Applications (3)

Application Number Priority Date Filing Date Title
JP2020017143A JP7390914B2 (ja) 2020-02-04 2020-02-04 モータ制御方法、モータ駆動装置、産業用ロボットの制御方法、及び産業用ロボット
KR1020210007883A KR102567832B1 (ko) 2020-02-04 2021-01-20 모터 제어 방법, 모터 구동 장치, 산업용 로봇의 제어 방법 및 산업용 로봇
CN202110142745.1A CN113285645B (zh) 2020-02-04 2021-02-02 电动机控制方法、电动机驱动装置、工业用机器人的控制方法及工业用机器人

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
JP2020017143A JP7390914B2 (ja) 2020-02-04 2020-02-04 モータ制御方法、モータ駆動装置、産業用ロボットの制御方法、及び産業用ロボット

Publications (3)

Publication Number Publication Date
JP2021125943A JP2021125943A (ja) 2021-08-30
JP2021125943A5 JP2021125943A5 (ja) 2023-01-24
JP7390914B2 true JP7390914B2 (ja) 2023-12-04

Family

ID=77275547

Family Applications (1)

Application Number Title Priority Date Filing Date
JP2020017143A Active JP7390914B2 (ja) 2020-02-04 2020-02-04 モータ制御方法、モータ駆動装置、産業用ロボットの制御方法、及び産業用ロボット

Country Status (3)

Country Link
JP (1) JP7390914B2 (ja)
KR (1) KR102567832B1 (ja)
CN (1) CN113285645B (ja)

Citations (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2005094964A (ja) 2003-09-19 2005-04-07 Yaskawa Electric Corp モータの制御装置及び制御方法
JP2011067017A (ja) 2009-09-17 2011-03-31 Denso Wave Inc ロボット制御装置および制御方法
JP2018007473A (ja) 2016-07-06 2018-01-11 富士電機株式会社 永久磁石形同期電動機の制御装置
JP2018007533A (ja) 2016-07-08 2018-01-11 株式会社リコー モータ制御装置、モータ駆動装置、モータ駆動システム、画像形成装置、及び搬送装置

Family Cites Families (13)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP3404388B2 (ja) * 2001-10-26 2003-05-06 三菱電機株式会社 電動機制御方法
JP4370754B2 (ja) * 2002-04-02 2009-11-25 株式会社安川電機 交流電動機のセンサレス制御装置および制御方法
JP4270079B2 (ja) * 2003-09-05 2009-05-27 日産自動車株式会社 駆動力制御装置
JP2005210813A (ja) * 2004-01-21 2005-08-04 Mitsubishi Heavy Ind Ltd ブラシレスdcモータシステム,及びブラシレスdcモータ駆動方法
JP2006158046A (ja) * 2004-11-26 2006-06-15 Yaskawa Electric Corp 交流電動機のセンサレス制御方法および装置
JP2009189146A (ja) * 2008-02-06 2009-08-20 Calsonic Kansei Corp 電動モータの制御装置
JP5947075B2 (ja) * 2012-03-23 2016-07-06 Dmg森精機株式会社 同期モータの制御装置、同期モータの制御方法
KR102039325B1 (ko) * 2015-09-17 2019-11-01 엘에스산전 주식회사 유도 전동기의 제정수 추정 방법
KR20170034251A (ko) * 2015-09-18 2017-03-28 한국전력공사 동기 전동기의 센서리스 제어 장치 및 방법
JP2019068586A (ja) * 2017-09-29 2019-04-25 日本電産テクノモータ株式会社 モータ制御装置及びモータ制御方法
JP2019083673A (ja) * 2017-11-01 2019-05-30 株式会社明電舎 インバータ並びにモータの駆動制御方法
JP7266439B2 (ja) 2018-04-11 2023-04-28 キヤノン株式会社 モータ制御装置およびその制御方法
JP2019208329A (ja) * 2018-05-30 2019-12-05 ダイヤモンド電機株式会社 センサレスベクトル制御装置及びセンサレスベクトル制御方法

Patent Citations (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2005094964A (ja) 2003-09-19 2005-04-07 Yaskawa Electric Corp モータの制御装置及び制御方法
JP2011067017A (ja) 2009-09-17 2011-03-31 Denso Wave Inc ロボット制御装置および制御方法
JP2018007473A (ja) 2016-07-06 2018-01-11 富士電機株式会社 永久磁石形同期電動機の制御装置
JP2018007533A (ja) 2016-07-08 2018-01-11 株式会社リコー モータ制御装置、モータ駆動装置、モータ駆動システム、画像形成装置、及び搬送装置

Also Published As

Publication number Publication date
CN113285645B (zh) 2024-05-07
JP2021125943A (ja) 2021-08-30
KR102567832B1 (ko) 2023-08-18
KR20210099514A (ko) 2021-08-12
CN113285645A (zh) 2021-08-20

Similar Documents

Publication Publication Date Title
JP2001161090A (ja) 同期モータの位置センサレス制御方法
JP2009232498A (ja) モータ制御装置
JP2012228127A (ja) モータ制御装置
JP2012239250A (ja) 同期モータの印加電圧電気角設定方法とモータ制御装置
CN110429891A (zh) 一种无位置传感器永磁电机直驱发电控制方法
JP6726390B2 (ja) 永久磁石形同期電動機の制御装置
JP2009011017A (ja) 電圧形インバータの制御装置
JP6347639B2 (ja) サーボモータ制御システムおよびサーボモータ制御方法
JP6157773B1 (ja) モータ制御装置およびこれを用いたエレベータ
JP7390914B2 (ja) モータ制御方法、モータ駆動装置、産業用ロボットの制御方法、及び産業用ロボット
JP7082369B2 (ja) 電動機の駆動装置
JP7428527B2 (ja) モータ制御方法、モータ駆動装置、産業用ロボットの制御方法、及び産業用ロボット
CN115378322A (zh) 一种永磁同步电机的电压自适应控制方法及控制装置
KR102515961B1 (ko) 모터 제어 방법, 모터 구동 장치, 산업용 로봇의 제어 방법 및 산업용 로봇
CN116057827A (zh) 电力转换装置
JP2005039889A (ja) 電動機の制御方法
JP2006020454A (ja) 永久磁石同期モータの制御装置
WO2022168340A1 (ja) モータ制御装置
JP2019187178A (ja) モータ制御装置
JP4815806B2 (ja) 交流回転機の制御装置
JP2021180568A (ja) モータ制御装置、モータシステム及びモータ制御方法
JP2021180569A (ja) モータ制御装置、モータシステム及びモータ制御方法
JP2022101784A (ja) 制御装置、モータシステム及び同定方法
JP2020036513A (ja) モータ制御装置
Khatoon et al. FIELD ORIENTED SPEED CONTROL OF INDUCTION MOTOR DRIVES

Legal Events

Date Code Title Description
RD02 Notification of acceptance of power of attorney

Free format text: JAPANESE INTERMEDIATE CODE: A7422

Effective date: 20221012

RD04 Notification of resignation of power of attorney

Free format text: JAPANESE INTERMEDIATE CODE: A7424

Effective date: 20221021

A521 Request for written amendment filed

Free format text: JAPANESE INTERMEDIATE CODE: A523

Effective date: 20230113

A621 Written request for application examination

Free format text: JAPANESE INTERMEDIATE CODE: A621

Effective date: 20230113

A977 Report on retrieval

Free format text: JAPANESE INTERMEDIATE CODE: A971007

Effective date: 20231018

TRDD Decision of grant or rejection written
A01 Written decision to grant a patent or to grant a registration (utility model)

Free format text: JAPANESE INTERMEDIATE CODE: A01

Effective date: 20231031

A61 First payment of annual fees (during grant procedure)

Free format text: JAPANESE INTERMEDIATE CODE: A61

Effective date: 20231121

R150 Certificate of patent or registration of utility model

Ref document number: 7390914

Country of ref document: JP

Free format text: JAPANESE INTERMEDIATE CODE: R150