JP2007135344A - Method and apparatus for automatically adjusting motor controller - Google Patents

Method and apparatus for automatically adjusting motor controller Download PDF

Info

Publication number
JP2007135344A
JP2007135344A JP2005327550A JP2005327550A JP2007135344A JP 2007135344 A JP2007135344 A JP 2007135344A JP 2005327550 A JP2005327550 A JP 2005327550A JP 2005327550 A JP2005327550 A JP 2005327550A JP 2007135344 A JP2007135344 A JP 2007135344A
Authority
JP
Japan
Prior art keywords
controller
value
feedforward
deviation
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.)
Granted
Application number
JP2005327550A
Other languages
Japanese (ja)
Other versions
JP4745798B2 (en
Inventor
Hirokazu Nagura
寛和 名倉
Takanori Ohashi
敬典 大橋
Hiromichi Takano
裕理 高野
Masaki Sugiura
正樹 杉浦
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.)
Hitachi Industrial Equipment Systems Co Ltd
Original Assignee
Hitachi Industrial Equipment Systems Co 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 Hitachi Industrial Equipment Systems Co Ltd filed Critical Hitachi Industrial Equipment Systems Co Ltd
Priority to JP2005327550A priority Critical patent/JP4745798B2/en
Priority to DE102006045820.6A priority patent/DE102006045820B4/en
Priority to CNB2006101414546A priority patent/CN100524106C/en
Publication of JP2007135344A publication Critical patent/JP2007135344A/en
Application granted granted Critical
Publication of JP4745798B2 publication Critical patent/JP4745798B2/en
Active legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Images

Classifications

    • GPHYSICS
    • G05CONTROLLING; REGULATING
    • G05BCONTROL OR REGULATING SYSTEMS IN GENERAL; FUNCTIONAL ELEMENTS OF SUCH SYSTEMS; MONITORING OR TESTING ARRANGEMENTS FOR SUCH SYSTEMS OR ELEMENTS
    • G05B5/00Anti-hunting arrangements
    • G05B5/01Anti-hunting arrangements electric
    • 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

Landscapes

  • Engineering & Computer Science (AREA)
  • Power Engineering (AREA)
  • Physics & Mathematics (AREA)
  • General Physics & Mathematics (AREA)
  • Automation & Control Theory (AREA)
  • Control Of Electric Motors In General (AREA)
  • Feedback Control In General (AREA)
  • Control Of Position Or Direction (AREA)

Abstract

<P>PROBLEM TO BE SOLVED: To provide a method and an apparatus for quickly obtaining a proper feedback and/or feedforward control parameters. <P>SOLUTION: When the feedback control parameter is adjusted, a position instruction pattern used for a continuously changed adjustment operation is generated and provided as a position instruction of a position controller, a response frequency of the position controller and a speed controller is increased within a range in which a vibrational amplitude of a position error waveform is prevented from exceeding a predetermined value, and the maximum acceleration rate is automatically set. When the feedforward control parameter is adjusted, a plurality of operations are performed in a plurality of the position instruction pattern, and a control parameter of a position feedforward controller is adjusted so as to prevent an overshoot from exceeding the predetermined value. <P>COPYRIGHT: (C)2007,JPO&INPIT

Description

本発明は、フィードバック制御および/またはフィードフォワード制御を採用する電動機制御装置のフィードバック制御及び/またはフィードフォワード制御における制御パラメータを自動的にチューニングする電動機制御装置の自動調整法および装置に関する。   The present invention relates to an automatic adjustment method and apparatus for an electric motor control apparatus that automatically tunes control parameters in the feedback control and / or feed forward control of an electric motor control apparatus that employs feedback control and / or feed forward control.

フィードバック制御パラメータ及びフィードフォワード制御パラメータを自動的にチューニングする第1の従来技術として、特許文献1が知られている。この第1の従来技術では、制御指令値に対する制御量の応答形状から、知識処理によりフィードバック制御パラメータを推定し、次いで、同応答形状からファジイ推論または、ニューラルネットワークにより最適なフィードフォワードパラメータを決定する。   Patent Document 1 is known as a first conventional technique for automatically tuning a feedback control parameter and a feedforward control parameter. In the first prior art, a feedback control parameter is estimated by knowledge processing from a response shape of a control amount with respect to a control command value, and then an optimum feedforward parameter is determined from the response shape by fuzzy inference or a neural network. .

また、第2の従来技術として、特許文献2を挙げることができる。この第2の従来技術は、特にフィードフォワード自動調整法に関する内容で、制御指令値に対する制御量がオーバーシュートすれば、フィードフォワードゲインを下げ、オーバーシュートしなければ、フィードフォワードゲインを上げることを特徴としている。また、評価関数を導入し、その値が所定値以下となれば、調整を終了する。   Patent Document 2 can be cited as a second conventional technique. The second conventional technique is particularly related to the feedforward automatic adjustment method, and is characterized in that if the control amount for the control command value overshoots, the feedforward gain is decreased, and if not, the feedforward gain is increased. It is said. In addition, when an evaluation function is introduced and the value is equal to or less than a predetermined value, the adjustment is terminated.

特開平6−102905号公報(全体)JP-A-6-102905 (Overall) 特開2003−61377号公報(全体)JP 2003-61377 A (Overall)

通常、フィードバック制御パラメータの調整に際しては、制御性能を高める為に、位置制御器および速度制御器のゲインを最大化することが行われる。しかしながら、電動機と駆動対象負荷と連結軸からなる機械系では、機械系に固有の反共振周波数が存在し、その周波数近傍において、非常に振動し易くなる性質がある。この為、実際の調整では、反共振周波数近傍での前記制御器のゲインが高くなり過ぎないように、やや低めに調整する。このような微妙な調整を実現する簡単な手段として、実際に機械を反共振周波数で加振しながら機械振動が過大とならない範囲内で位置制御器および速度制御器のゲインを高めていく方法が考えられる。また、反共振周波数が未知の機械系を反共振周波数で加振する最も簡単且つ確実な方法は、位置指令(制御指令値)として、ステップ指令を与えることである。しかるに、第1の従来技術では、制御指令値を外部から入力する構成の為、与えられる制御指令値によっては、反共振周波数を十分に加振しない場合が発生し得る。このような加振条件下で、位置決め動作を繰り返しながら、前述の如く機械振動を評価しながら位置制御器および速度制御器のゲインを高めていった場合には、わずかの外乱でも発振するような過大なゲイン設定となる可能性があった。   Normally, when adjusting the feedback control parameter, the gains of the position controller and the speed controller are maximized in order to improve the control performance. However, a mechanical system composed of an electric motor, a load to be driven, and a connecting shaft has an anti-resonance frequency unique to the mechanical system, and has a property that it is very likely to vibrate near that frequency. For this reason, in actual adjustment, the controller gain is adjusted slightly lower so that the gain of the controller in the vicinity of the anti-resonance frequency does not become too high. As a simple means for realizing such delicate adjustment, there is a method of increasing the gains of the position controller and speed controller within a range where mechanical vibration does not become excessive while actually vibrating the machine at an anti-resonance frequency. Conceivable. The simplest and most reliable method for exciting a mechanical system with an unknown anti-resonance frequency at the anti-resonance frequency is to give a step command as a position command (control command value). However, in the first prior art, since the control command value is input from the outside, the anti-resonance frequency may not be sufficiently vibrated depending on the given control command value. If the gains of the position controller and speed controller are increased while evaluating the mechanical vibration as described above while repeating the positioning operation under such an excitation condition, even a slight disturbance may oscillate. There was a possibility of an excessive gain setting.

また、フィードフォワード制御パラメータの調整に際しては、複数の位置指令パターンに対して、オーバーシュート量を規定値以下とし、更に、頻繁に利用する特定の位置指令パターンに関しては、整定時間を最小化するような調整が望まれていた。しかしながら、第1、第2の従来技術では、チューニング手段内部に位置指令パターン生成部および、複数の位置指令パターン登録機能を持たない為、前述のような、位置指令パターンと関連付けた調整条件を設定することは困難であった。   When adjusting the feedforward control parameter, the overshoot amount is set to a predetermined value or less for a plurality of position command patterns, and the settling time is minimized for a specific position command pattern that is frequently used. Adjustment was desired. However, since the first and second prior arts do not have a position command pattern generation unit and a plurality of position command pattern registration functions in the tuning means, the adjustment conditions associated with the position command pattern as described above are set. It was difficult to do.

本発明の目的は、短時間に適正なフィードバックおよび/またはフィードフォワードの制御パラメータを得ることのできる自動調整法および装置を提供することである。   An object of the present invention is to provide an automatic adjustment method and apparatus capable of obtaining appropriate feedback and / or feedforward control parameters in a short time.

本発明の望ましい実施態様においては、位置制御器、速度制御器、および電流制御器を縦続接続した電動機制御装置において、前記位置制御器の位置指令値として連続的に変化する調整運転用の位置指令パターンを生成し、この位置指令パターンを前記位置制御器の位置指令として与えた際に、位置偏差波形の振動振幅が所定値を超えない範囲内で、前記位置制御器および/または前記速度制御器の応答周波数を増加させる。   In a preferred embodiment of the present invention, in a motor control device in which a position controller, a speed controller, and a current controller are connected in cascade, a position command for adjustment operation that continuously changes as a position command value of the position controller. When the position command pattern is generated and given as a position command of the position controller, the position controller and / or the speed controller is within a range in which the vibration amplitude of the position deviation waveform does not exceed a predetermined value. Increase the response frequency.

また、より具体的には、前記電動機駆動系の合計慣性モーメント値Jに基づいて、前記位置指令パターンの変化の度合いを決定する。   More specifically, the degree of change in the position command pattern is determined based on the total moment of inertia value J of the motor drive system.

さらに、望ましくは、前記位置指令パターンの変化の度合いは、電動機の速度がその許容最大速度を超えないように、かつ、定速期間を持たず加減速するように決定する。   More preferably, the degree of change in the position command pattern is determined so that the speed of the motor does not exceed the allowable maximum speed, and acceleration / deceleration is performed without a constant speed period.

また、本発明の望ましい実施態様においては、前記位置制御器、速度制御器、および電流制御器の縦続接続に加え、位置指令値を入力して位置フィードフォワード信号を出力する位置フィードフォワード制御器と、前記位置制御器の出力と前記位置フィードフォワード信号とを加算して速度指令値を出力するように構成した電動機制御装置において、予め登録した複数の位置指令パターンを前記位置制御器の位置指令として複数の運転動作を行い、複数の前記運転動作においてオーバーシュート量が所定値を超えないように、前記位置フィードフォワード制御器の制御パラメータを調整する。   In a preferred embodiment of the present invention, in addition to the cascade connection of the position controller, the speed controller, and the current controller, a position feedforward controller that inputs a position command value and outputs a position feedforward signal; In the motor control device configured to output the speed command value by adding the output of the position controller and the position feedforward signal, a plurality of position command patterns registered in advance are used as the position commands of the position controller. A plurality of driving operations are performed, and the control parameter of the position feedforward controller is adjusted so that the overshoot amount does not exceed a predetermined value in the plurality of driving operations.

本発明の具体的実施例においては、フィードバック制御パラメータの調整に際し、その電動機制御系によって出し得る最大出力付近で電動機を運転させる短移動距離の位置指令パターンを与える。これにより、機械系を反共振周波数近傍も含めて十分に加振する。更に、前記位置指令パターンの生成に際して、駆動系の合計慣性モーメント値Jと、電動機制御装置の許容最大トルク値τmaxを考慮に入れて、加速レートを前記許容最大トルク値τmaxを超えない範囲内で最大となるように、自動設定する。更に、電動機の最大速度を超えない位置指令パターンとする。 In a specific embodiment of the present invention, when the feedback control parameter is adjusted, a position command pattern of a short movement distance for operating the motor near the maximum output that can be output by the motor control system is provided. Thereby, the mechanical system is sufficiently vibrated including the vicinity of the anti-resonance frequency. Further, in generating the position command pattern, the total moment of inertia value J of the drive system, taking into account the allowable maximum torque value tau max of a motor control device, not the acceleration rate exceeds the allowable maximum torque value tau max range Automatically set to the maximum. Further, the position command pattern does not exceed the maximum speed of the electric motor.

このように、制御系の内部が飽和しない条件を満足する最もステップ状指令に近い位置指令パターンを自動生成し、フィードバック制御パラメータの調整を行う。   As described above, the position command pattern closest to the stepped command that satisfies the condition that the inside of the control system is not saturated is automatically generated, and the feedback control parameter is adjusted.

一方、フィードフォワード制御パラメータの調整に際しては、複数の位置指令パターンを生成し、各位置指令パターン毎に調整条件を設定する。   On the other hand, when adjusting the feedforward control parameter, a plurality of position command patterns are generated, and adjustment conditions are set for each position command pattern.

本発明の望ましい実施態様によれば、自動生成した位置指令パターンによるフィードバック制御パラメータを短時間に調整することができる。   According to the preferred embodiment of the present invention, it is possible to adjust the feedback control parameter based on the automatically generated position command pattern in a short time.

また、本発明の望ましい実施態様によれば、ユーザが事前に登録した複数の位置指令パターンに対して、オーバーシュート量を規定値以下とすることができる。   Further, according to a preferred embodiment of the present invention, the overshoot amount can be set to a predetermined value or less for a plurality of position command patterns registered in advance by the user.

更に、本発明の望ましい実施態様によれば、頻繁に利用する特定の位置指令パターンに関して整定時間を最小化するようなフィードフォワード制御パラメータの自動調整が可能となる。   Furthermore, the preferred embodiment of the present invention allows automatic adjustment of feedforward control parameters that minimizes settling time for specific position command patterns that are frequently used.

本発明によるその他の目的と特徴は、以下に述べる実施例の説明の中で明らかにする。   Other objects and features of the present invention will become apparent from the description of the embodiments described below.

以下本発明の望ましい実施例を図面を参照して説明する。   Hereinafter, preferred embodiments of the present invention will be described with reference to the drawings.

図1は、本発明の第1の実施例による電動機制御装置の自動調整法を示す制御ブロック図である。第1の実施例は、フィードバック制御パラメータの自動調整を目的とする。図1において、1は電動機、2は前記電動機1により駆動される駆動対象負荷、3は前記電動機1と前記駆動対象負荷2を連結する連結軸、4は前記電動機1を駆動する電力変換器である。5は前記電動機1の回転軸に取り付けられ、前記電動機1の回転軸の位置検出値θを出力する位置検出器、6は位置指令値θ と前記電動機1の前記位置検出値θとの位置偏差θを演算する減算器である。7は前記位置偏差θに応じて速度指令値ω を出力する位置制御器、8は前記位置検出器5の出力する位置検出値θを入力して、前記電動機1の回転軸の速度検出値ωを出力する速度演算器である。9は前記速度指令値ω と前記電動機1の速度検出値ωとの速度偏差ωを演算する減算器、10は前記速度偏差ωに応じてトルク電流指令値I を出力する速度制御器である。11は前記電動機1に供給されるトルク電流検出値Iを検出する電流検出器、12は前記トルク電流指令値I と前記電動機1に供給される前記トルク電流検出値Iとの電流偏差Iを演算する減算器である。13は前記電流偏差Iに応じて前記電力変換器4の出力電流を調整する電流制御器である。14は前記位置制御器7および速度制御器10のパラメータを自動調整するフィードバック制御パラメータチューニング部である。このチューニング部は、前述の位置偏差θを入力し、位置指令値θ と前記位置制御器7に設定する位置応答周波数および前記速度制御器10に設定する速度応答周波数を出力する。 FIG. 1 is a control block diagram showing an automatic adjustment method for an electric motor control device according to a first embodiment of the present invention. The first embodiment aims at automatic adjustment of feedback control parameters. In FIG. 1, 1 is an electric motor, 2 is a drive target load driven by the electric motor 1, 3 is a connecting shaft that connects the electric motor 1 and the drive target load 2, and 4 is a power converter that drives the electric motor 1. is there. Reference numeral 5 denotes a position detector that is attached to the rotating shaft of the electric motor 1 and outputs a detected position value θ M of the rotating shaft of the electric motor 1, and 6 is a position command value θ M * and the detected position value θ M of the electric motor 1. it is a subtracter for calculating a positional deviation theta e with. 7 is a position controller that outputs a speed command value ω M * in accordance with the position deviation θ e , and 8 is a position controller θ M that outputs a position detection value θ M that is output from the position detector 5. a velocity calculator for outputting a speed detection value omega M. 9 is a subtractor that calculates a speed deviation ω e between the speed command value ω M * and the detected speed value ω M of the motor 1, and 10 is a torque current command value I q * that is output according to the speed deviation ω e. Speed controller. 11 is a current detector for detecting a torque current detection value I q to be supplied to the electric motor 1, 12 is a current and said torque current detection value I q to be supplied to the electric motor 1 and the torque current command value I q * It is a subtractor for calculating the deviation Ie . Reference numeral 13 denotes a current controller that adjusts the output current of the power converter 4 according to the current deviation Ie . A feedback control parameter tuning unit 14 automatically adjusts parameters of the position controller 7 and the speed controller 10. The tuning unit inputs the position deviation θ e described above, and outputs the position command value θ M * , the position response frequency set in the position controller 7 and the speed response frequency set in the speed controller 10.

フィードバック制御パラメータチューニング部14の内部には、後述するフィードバック制御パラメータの自動調整アルゴリズムと、フィードバック制御パラメータの自動調整に必要なステップ状位置指令パターン生成手段を有している。その基本動作は、位置応答周波数および速度応答周波数をステップ状位置指令印加時の位置偏差θの振動振幅がユーザが設定する所定値、例えば許容値を超えない範囲内で最大化するというものである。 The feedback control parameter tuning unit 14 includes a feedback control parameter automatic adjustment algorithm, which will be described later, and stepped position command pattern generation means necessary for automatic adjustment of the feedback control parameter. Its basic operation is intended that the vibration amplitude of the positional deviation theta e during stepwise position command applies the position response frequency and velocity response frequency is a predetermined value set by the user, to maximize the extent that for example, does not exceed the allowable value is there.

図2は、図1の実施例における位置指令パターンの生成フロー図である。   FIG. 2 is a flow chart for generating a position command pattern in the embodiment of FIG.

図3は、フィードバック制御パラメータ自動調整のための位置指令パターンの生成手順におけるトルク、速度、並びに位置指令パターンの波形図である。   FIG. 3 is a waveform diagram of torque, speed, and position command pattern in a procedure for generating a position command pattern for automatic feedback control parameter adjustment.

図2のフローチャートと、図3の波形図を用いて、前述の位置指令パターン自動生成手段を具体的に説明する。図2のフローチャートでは、最大トルクで、かつ速度指令値が飽和することなく、指示された移動量(電動機にとっては、回転角度)θmaxを回転する速度パターンを生成し、最終的に、位置指令パターンを生成する。このとき、速度パターンに定速期間を設けず、更に、できるだけ、移動距離を短く設定することを方針としている。これにより、位置指令パターンに、より高い周波数成分を含ませることが可能となる。   The above-described position command pattern automatic generation means will be specifically described with reference to the flowchart of FIG. 2 and the waveform diagram of FIG. In the flowchart of FIG. 2, a speed pattern that rotates the instructed movement amount (rotation angle for an electric motor) θmax with the maximum torque and without saturating the speed command value is generated, and finally, the position command pattern Is generated. At this time, the policy is to set a movement distance as short as possible without providing a constant speed period in the speed pattern. Thereby, it becomes possible to include a higher frequency component in the position command pattern.

図2において、20でフローチャートを開始し、処理21で移動量θmaxの算出を行う。先に移動量θmaxは短ければ短い程良いと述べたが、極端に移動量θmaxを短く設定すると、移動量θmaxに対する位置偏差θの振動振幅の割合に関係なく、その絶対値が小さくなり過ぎる場合がある。この場合、前記振動振幅が前記位置検出器5の分解能を下回り、振動を検出できなくなる。そこで、移動量θmaxを(1)式で決定している。 In FIG. 2, the flowchart starts at 20, and the movement amount θ max is calculated at processing 21. The amount of movement theta max above has dealt with better short as possible, setting extremely the amount of movement theta max short, regardless of the ratio of the vibration amplitude of the positional deviation theta e with respect to the moving amount theta max, the absolute value It may become too small. In this case, the vibration amplitude falls below the resolution of the position detector 5, and vibration cannot be detected. Therefore, the movement amount θ max is determined by the equation (1).

θmax=α・θvib ・・・・・・・・・・・・・・・・・・(1)
(1)式において、θvibは、ユーザが設定する位置偏差θの振動振幅の許容値である。すなわち、位置偏差θの振動振幅がθvib未満であれば、位置偏差θは振動していないと判定する為の閾値を意味する。また、αは、ユーザが設定する正の定数であり、前記位置偏差θの振動振幅の許容値θvibに対する移動量θmaxの比率を意味する。例えば、α=100と設定すれば、θvibが移動量θmaxの1/100となるように移動量θmaxが計算される為、移動量θmaxの1/100以上の振幅の振動は確実に検出可能となる。通常、経験的にαには100以上の値を設定する。
θ max = α · θ vib (1)
In equation (1), θ vib is an allowable value of the vibration amplitude of the positional deviation θ e set by the user. That is, the vibration amplitude of the positional deviation theta e is less than theta vib, positional deviation theta e denotes the threshold value for determining that not vibrating. Further, α is a positive constant set by the user, and means the ratio of the movement amount θ max to the allowable value θ vib of the vibration amplitude of the position deviation θ e . For example, if α = 100 is set, the movement amount θ max is calculated so that θ vib is 1/100 of the movement amount θ max , and therefore vibration with an amplitude of 1/100 or more of the movement amount θ max is certain. Can be detected. Usually, a value of 100 or more is set to α empirically.

次に、処理22において、電動機制御装置と電動機の組合せで決まる許容最大トルク値τmaxで加速した場合の電動機の理想最大速度ωpeakを(2)式で算出する。 Next, in the process 22, the ideal maximum speed ω peak of the motor when accelerating at the allowable maximum torque value τ max determined by the combination of the motor control device and the motor is calculated by the equation (2).

Figure 2007135344
但し、(2)式において、τmaxは前記許容最大トルク値、θmaxは前記移動量、Jは前記電動機と前記連結軸と前記駆動対象負荷の慣性モーメント値を合計した合計慣性モーメント値である。次に、判定処理23において、前記電動機の理想最大速度ωpeakと電動機の許容最大速度ωmaxを比較し、理想最大速度ωpeakが電動機の許容最大速度ωmaxを下回る場合には、処理24に移行する。処理24は、許容最大トルクτmaxで加速しても、電動機の許容最大速度ωmaxを超えない場合である。
Figure 2007135344
In the equation (2), τ max is the allowable maximum torque value, θ max is the movement amount, and J is a total inertia moment value obtained by summing the inertia moment values of the electric motor, the connecting shaft, and the drive target load. . Then, in the determination process 23, when comparing the permissible maximum speed omega max ideal maximum speed omega peak and the motor of the electric motor, the ideal maximum speed omega peak is below the permissible maximum speed omega max of the motor, the processing 24 Transition. Process 24 is a case where even if acceleration is performed with the allowable maximum torque τ max , the allowable maximum speed ω max of the electric motor is not exceeded.

図3(a)は、許容最大トルクτmaxで加速しても、電動機の許容最大速度ωmaxを超えない場合を示している。すなわち、前述したように、まず、設定された許容振動振幅θvibのα倍によって移動量θmaxが決まる。この距離を、許容最大トルクτmaxで加速し、定速期間を置くことなく、間髪を入れず許容最大トルクτmaxで減速させると、正負のトルク41により、速度パターン40が得られ、これによって、移動量θmax内の位置指令パターン42が得られる。このときの電動機の理想最大速度ωpeakが、電動機の許容最大速度ωmaxを超えない場合、そのままの速度パターン40が利用できるので、処理24では、最大速度を前記理想最大速度ωpeakに設定し、処理25に移行する。処理25では、許容最大トルク値τmaxで前記理想最大速度ωpeakまで加速する加減速時間tを(3)式で算出し、設定後、26に移行し、処理を終了する。 FIG. 3A shows a case where the maximum allowable speed ω max of the electric motor is not exceeded even if the maximum allowable torque τ max is accelerated. That is, as described above, first, the movement amount θ max is determined by α times the set allowable vibration amplitude θ vib . The distance to accelerate the allowable maximum torque tau max, without placing the constant speed period and is decelerated at the maximum permissible torque tau max without a missing a beat, the positive and negative torque 41, the speed pattern 40 is obtained, whereby The position command pattern 42 within the movement amount θ max is obtained. If the ideal maximum speed ω peak of the motor at this time does not exceed the allowable maximum speed ω max of the motor, the speed pattern 40 can be used as it is. Therefore, in process 24, the maximum speed is set to the ideal maximum speed ω peak. Then, the process proceeds to process 25. In step 25, it calculates the deceleration time t a to accelerate the allowable maximum torque value tau max until the ideal maximum speed ω peak (3) by the formula, after the setting, the process proceeds to 26, the process ends.

Figure 2007135344
次に、判り易くするため、電動機の許容最大速度が極端に小さいケースを想定して、図3(b)を参照して説明する。今、仮定により、前記判定処理23において、理想最大速度ωpeakが、電動機の小さな許容最大速度ωmaxを上回ってしまうので、処理27に移行する。処理27では、許容最大トルクτmaxで加速すると、電動機の許容最大速度ωmaxを超えてしまう場合であり、止む無く図3(b)に示すように、最大速度として前記電動機の許容最大速度ωmaxに設定し、処理28に移行する。すなわち、速度パターンは符号43で示すようになり、これを時間積分した移動距離θSLは、前記移動量θmaxには達し得ない。処理28では、許容最大トルク値τmaxで電動機の許容最大速度ωmaxまで加速する加減速時間tを(4)式で算出し設定後、26に移行し、処理を終了する。
Figure 2007135344
Next, in order to make it easy to understand, the case where the allowable maximum speed of the electric motor is extremely small is assumed and described with reference to FIG. Assuming that the ideal maximum speed ω peak exceeds the small allowable maximum speed ω max of the electric motor in the determination process 23, the process proceeds to the process 27. In the process 27, when the maximum allowable torque τ max is accelerated, the maximum allowable speed ω max of the electric motor is exceeded, and as shown in FIG. 3B, the maximum allowable speed ω of the electric motor is used as the maximum speed. Set to max and proceed to processing 28. That is, the speed pattern is as indicated by reference numeral 43, and the movement distance θ SL obtained by time integration of the speed pattern cannot reach the movement amount θ max . In process 28, after setting calculates the deceleration time t b to accelerate the allowable maximum torque value tau max maximum allowed speed omega max of the motor (4) below, the process proceeds to 26, the process ends.

=J・ωmax/τmax・・・・・・・・・・・・・・・・・・・(4)
このときの電動機の移動量θSLは、(5)式で表すことができる。
t b = J · ω max / τ max (4)
The amount of movement θ SL of the electric motor at this time can be expressed by equation (5).

Figure 2007135344
また、このときに、電動機が出力するトルクの大きさτSLは、下記(6)式で表すことができ、許容最大トルクτmaxよりも小さくなることが分かる。
Figure 2007135344
Further, at this time, the magnitude τ SL of the torque output from the electric motor can be expressed by the following equation (6), and it can be seen that it is smaller than the allowable maximum torque τ max .

Figure 2007135344
図4は、第1の実施例によるフィードバック制御パラメータの自動調整フローチャートである。この図を用いて、フィードバック制御パラメータチューニング部14におけるフィードバック制御パラメータの自動調整アルゴリズムを説明する。図4において、Fs_minは、ユーザが設定する最小速度応答周波数、Fs_maxはユーザが設定する最大速度応答周波数、div_Fsはユーザが設定する速度応答周波数増分ステップである。後述する調整時には、速度応答周波数をFs_minからFs_maxまでdiv_Fsのステップで増加しながら調整することを意味する。同様に、Fp_minは、ユーザが設定する最小位置応答周波数、Fp_maxはユーザが設定する最大位置応答周波数、div_Fpはユーザが設定する位置応答周波数増分ステップである。後述する調整時には、位置応答周波数をFp_minからFp_maxまでdiv_Fpのステップで増加しながら調整することを意味する。また、θvibは、ユーザが設定する位置偏差θの振動振幅許容値である。Fsは、前記速度制御器10に設定されている現在の速度応答周波数、Fpは前記位置制御器7に設定されている現在の位置応答周波数である。Fp_v0は、振動限界の最大位置応答周波数であり、位置偏差波形の振動振幅が許容値θvib以下となる最大の位置応答周波数を記録する。Fs_vlは、調整により最終的に求まる最適速度応答周波数、Fp_vlは調整により最終的に求まる最適位置応答周波数、flag_fpmaxは‘1’の場合に位置偏差波形の振動振幅が許容値θvib以下のまま最大位置応答に達したことを示すフラグである。
Figure 2007135344
FIG. 4 is a flowchart for automatically adjusting the feedback control parameter according to the first embodiment. The feedback control parameter automatic adjustment algorithm in the feedback control parameter tuning unit 14 will be described with reference to FIG. In FIG. 4, Fs_min is a minimum speed response frequency set by the user, Fs_max is a maximum speed response frequency set by the user, and div_Fs is a speed response frequency increment step set by the user. In the adjustment described later, this means that the speed response frequency is adjusted while increasing in steps of div_Fs from Fs_min to Fs_max. Similarly, Fp_min is a minimum position response frequency set by the user, Fp_max is a maximum position response frequency set by the user, and div_Fp is a position response frequency increment step set by the user. In the adjustment described later, this means that the position response frequency is adjusted while increasing in steps of div_Fp from Fp_min to Fp_max. Further, θ vib is a vibration amplitude allowable value of the position deviation θ e set by the user. Fs is a current speed response frequency set in the speed controller 10, and Fp is a current position response frequency set in the position controller 7. Fp_v0 is the maximum position response frequency at the vibration limit, and records the maximum position response frequency at which the vibration amplitude of the position deviation waveform is equal to or less than the allowable value θ vib . Fs_vl is the optimum speed response frequency finally obtained by adjustment, Fp_vl is the optimum position response frequency finally obtained by adjustment, and flag_fpmax is maximum when the vibration amplitude of the position deviation waveform remains below the allowable value θ vib when “1”. A flag indicating that the position response has been reached.

本フローチャートによる調整の基本的考え方は、位置応答周波数および速度応答周波数を位置偏差波形に振動を誘発しない範囲内で可能な限り高く設定することである。また、位置応答周波数を徐々に高めて行く過程で、位置偏差波形に振動が発生しても、速度応答周波数を少し高めることで前記位置偏差波形の振動を低減できる場合のあることが経験的に分かっている。そこで、この経験則を活かす為に、位置偏差波形に振動が発生した場合には、速度応答周波数をdiv_Fsだけ高くして前記振動の再評価を行うこととした。   The basic idea of the adjustment according to this flowchart is to set the position response frequency and the velocity response frequency as high as possible within a range that does not induce vibration in the position deviation waveform. In addition, in the process of gradually increasing the position response frequency, even if vibration occurs in the position deviation waveform, it may be possible to reduce the vibration of the position deviation waveform by slightly increasing the speed response frequency. I know it. Therefore, in order to make use of this empirical rule, when vibration occurs in the position deviation waveform, the speed response frequency is increased by div_Fs and the vibration is re-evaluated.

次に、図4のフローチャートを順を追って説明する。図4では、50でフローチャートを開始し、処理51で変数の初期化を実施する。初期化処理51では、FsにFs_minを代入し、速度応答周波数を前記最小速度応答周波数Fs_minから調整開始するように設定している。同様に、FpにFp_minを代入し、位置応答周波数を前記最小位置応答周波数Fp_minから調整開始するように設定している。更に、振動限界の最大位置応答周波数Fp_v0を最小位置応答周波数Fp_minで、前記フラグflag_fpmaxを‘0’で初期化する。次に、処理52に移行し、前述の手段で生成するステップ状の位置指令を図1における位置指令値θ として印加した際の位置偏差θの振動振幅を測定する。この位置偏差θの振動振幅の測定手段については後述する。次に、判定処理53に移行し、前記位置偏差θの振動振幅が前記許容値θvib以下か否かを判定する。判定処理53で振動振幅が許容値θvib以下ならば、位置応答周波数を更に上げる余地があり、判定処理54に移行する。判定処理54では、現在の位置応答周波数Fpが最大位置応答周波数Fp_max未満か否かを判定し、未満であれば処理55に移行する。処理55では現在の位置応答周波数Fpを位置応答周波数増分ステップdiv_Fpだけ増加し、前記処理52に移行する。一方、前記判定処理54で現在の位置応答周波数Fpが最大位置応答周波数Fp_max以上の場合には、処理56に移行する。処理56では、前記フラグflag_fpmaxに‘1’を設定し、位置偏差波形の振動振幅が許容値θvib以下のまま最大位置応答に達したことを明示し、判定処理57に移行する。判定処理57では、現在の速度応答周波数Fsが最大速度応答周波数Fs_max未満か否かを判定し、未満であれば処理58に移行する。処理58では現在の速度応答周波数Fsを速度応答周波数増分ステップdiv_Fsだけ増加し、位置偏差波形の振動振幅の低減を図りつつ、前記処理52に移行する。前記判定処理57で現在の速度応答周波数Fsが最大速度応答周波数Fs_max以上の場合には、位置応答周波数・速度応答周波数ともに、位置偏差波形の振動振幅が許容値θvib以下のまま最大値に達したことを意味し、処理59に移行する。処理59では、前記最適速度応答周波数Fs_vlおよび最適位置応答周波数Fp_vlに対して、それぞれ現在の速度応答周波数Fs、現在の位置応答周波数Fpを代入した後、60に移行し終了する。 Next, the flowchart of FIG. 4 will be described in order. In FIG. 4, the flowchart starts at 50, and variable initialization is performed at process 51. In the initialization process 51, Fs_min is substituted for Fs, and the speed response frequency is set to start adjustment from the minimum speed response frequency Fs_min. Similarly, Fp_min is substituted for Fp, and the position response frequency is set to start adjustment from the minimum position response frequency Fp_min. Further, the maximum position response frequency Fp_v0 of the vibration limit is initialized with the minimum position response frequency Fp_min, and the flag flag_fpmax is initialized with “0”. Then, the process proceeds to the process 52, to measure the vibration amplitude of the positional deviation theta e in applying as a position command value theta M * in FIG. 1 a stepwise position command generated in the above-mentioned means. The measuring means of the vibration amplitude of the position deviation theta e will be described later. Then, the process proceeds to the determination process 53, the vibration amplitude of the positional deviation theta e determines whether the allowable value theta vib below. If the vibration amplitude is equal to or smaller than the allowable value θ vib in the determination process 53, there is room for further increasing the position response frequency, and the process proceeds to the determination process 54. In the determination process 54, it is determined whether or not the current position response frequency Fp is less than the maximum position response frequency Fp_max. In process 55, the current position response frequency Fp is increased by the position response frequency increment step div_Fp, and the process proceeds to the process 52. On the other hand, when the current position response frequency Fp is greater than or equal to the maximum position response frequency Fp_max in the determination process 54, the process proceeds to process 56. In the process 56, the flag flag_fpmax is set to “1”, it is clearly shown that the maximum position response has been reached while the vibration amplitude of the position deviation waveform is not more than the allowable value θ vib , and the process proceeds to the determination process 57. In the determination process 57, it is determined whether or not the current speed response frequency Fs is less than the maximum speed response frequency Fs_max. In process 58, the current speed response frequency Fs is increased by the speed response frequency increment step div_Fs, and the process shifts to the process 52 while reducing the vibration amplitude of the position deviation waveform. When the current speed response frequency Fs is greater than or equal to the maximum speed response frequency Fs_max in the determination process 57, the vibration amplitude of the position deviation waveform reaches the maximum value with the allowable value θ vib or less for both the position response frequency and the speed response frequency. The process proceeds to processing 59. In the process 59, the current speed response frequency Fs and the current position response frequency Fp are assigned to the optimum speed response frequency Fs_vl and the optimum position response frequency Fp_vl, respectively.

前記判定処理53で振動振幅が許容値θvib以下でない場合には、判定処理61に移行する。判定処理61では、前記フラグflag_fpmaxをチェックし、位置偏差波形の振動振幅が許容値θvib以下のまま最大位置応答に達したか否かを確認する。ここで、flag_fpmax=0でない場合には、位置偏差波形の振動振幅が許容値θvib以下のまま、最大位置応答に達し、その後、位置偏差波形の振動振幅が許容値θvibを超えるまで速度応答周波数を高めたことを意味し、処理67に移行する。処理67では、前記最適速度応答周波数Fs_vlに対して、位置偏差波形の振動振幅が許容値θvib以下となる条件を設定する為に、前記現在の速度応答周波数Fsから速度応答周波数増分ステップdiv_Fsだけ減算した値を代入した後、60に移行し終了する。判定処理61で、flag_fpmax=0の場合には、判定処理62に移行し、現在の位置応答周波数Fpと前記振動限界の最大位置応答周波数Fp_v0とを比較する。ここで、「Fp>Fp_v0」が成立しない場合には、現在の位置応答周波数Fpが振動限界の最大位置応答周波数Fp_v0を超える条件が存在しないことを意味し、前記処理67に移行する。前記判定処理62で「Fp>Fp_v0」が成立する場合には、判定処理63に移行する。判定処理63では、現在の速度応答周波数Fsが最大速度応答周波数Fs_max未満か否かを判定し、未満であれば処理64に移行する。処理64では、現在の速度応答周波数Fsを速度応答周波数増分ステップdiv_Fsだけ増加し、位置偏差波形の振動振幅の低減を図る。更に、位置偏差波形の振動振幅が必ず許容値θvib以下となるように、現在の位置応答周波数Fpを位置応答周波数増分ステップdiv_Fpだけ減少し、処理65に移行する。処理65では、振動限界の最大位置応答周波数Fp_v0として現在の位置応答周波数Fpを記録し、位置応答周波数を更に上げるべく前記処理52に移行する。前記判定処理63で現在の速度応答周波数Fsが最大速度応答周波数Fs_max以上の場合には、現在の速度応答周波数Fsをこれ以上増加できないことを意味し、処理66に移行する。処理66では、前記最適速度応答周波数Fs_vlに対して、現在の速度応答周波数Fsを代入する。更に、前記最適位置応答周波数Fp_vlに対しては、位置偏差波形の振動振幅が必ず許容値θvib以下となるように、現在の位置応答周波数Fpを位置応答周波数増分ステップdiv_Fpだけ減少した値を代入した後、60に移行し終了する。 If the vibration amplitude is not equal to or smaller than the allowable value θ vib in the determination process 53, the process proceeds to the determination process 61. In the determination process 61, the flag flag_fpmax is checked to check whether or not the vibration amplitude of the position deviation waveform has reached the maximum position response with the allowable value θ vib or less. Here, when flag_fpmax = 0, the vibration amplitude of the position deviation waveform remains below the allowable value θ vib and reaches the maximum position response, and then the speed response until the vibration amplitude of the position deviation waveform exceeds the allowable value θ vib. This means that the frequency has been increased, and the processing shifts to processing 67. In the process 67, in order to set a condition that the vibration amplitude of the position deviation waveform is equal to or less than the allowable value θ vib with respect to the optimum speed response frequency Fs_vl, only the speed response frequency increment step div_Fs from the current speed response frequency Fs. After subtracting the subtracted value, the process proceeds to 60 and ends. If flag_fpmax = 0 in the determination process 61, the process proceeds to the determination process 62, and the current position response frequency Fp is compared with the maximum position response frequency Fp_v0 of the vibration limit. Here, when “Fp> Fp_v0” is not satisfied, it means that there is no condition that the current position response frequency Fp exceeds the maximum position response frequency Fp_v0 of the vibration limit, and the process proceeds to the process 67. If “Fp> Fp_v0” is established in the determination process 62, the process proceeds to the determination process 63. In the determination process 63, it is determined whether or not the current speed response frequency Fs is less than the maximum speed response frequency Fs_max. In the process 64, the current speed response frequency Fs is increased by the speed response frequency increment step div_Fs to reduce the vibration amplitude of the position deviation waveform. Further, the current position response frequency Fp is decreased by the position response frequency increment step div_Fp so that the vibration amplitude of the position deviation waveform is always equal to or less than the allowable value θ vib , and the process proceeds to processing 65. In process 65, the current position response frequency Fp is recorded as the maximum position response frequency Fp_v0 of the vibration limit, and the process proceeds to process 52 in order to further increase the position response frequency. If the current speed response frequency Fs is greater than or equal to the maximum speed response frequency Fs_max in the determination process 63, it means that the current speed response frequency Fs cannot be increased any further, and the process proceeds to process 66. In process 66, the current speed response frequency Fs is substituted for the optimum speed response frequency Fs_vl. Furthermore, a value obtained by reducing the current position response frequency Fp by the position response frequency increment step div_Fp is substituted for the optimum position response frequency Fp_vl so that the vibration amplitude of the position deviation waveform is always equal to or less than the allowable value θ vib. After that, the process proceeds to 60 and ends.

図5および図6は、第1の実施例における振動振幅・整定時間・オーバーシュート量の計測処理フロー図である。このフローを用い、フィードバック制御パラメータチューニング部14および、後述する位置フィードフォワード制御パラメータチューニング部17において必要となる前記位置偏差波形の振動振幅、整定時間、オーバーシュート量を計測する方法を述べる。図5および図6において、timeoutは、ユーザが設定する整定監視タイムアウト時間であり、位置偏差波形が始めてゼロクロスした時点を起点として、timeoutだけ整定時間を計測させる調整パラメータである。posin_plsは、ユーザが設定する整定判定用偏差であり、位置偏差の絶対値が安定してposin_pls以下となるとき、整定しているとする。また、poserrは前記位置偏差、poserr_workは振動・オーバーシュート計測用位置偏差であり、ステップ状位置指令印加直後の位置偏差が電動機の回転方向に関わらず、常に正側から開始するように位置偏差poserrを符号調整した状態量である。flag_poserr_plusは、ステップ状位置指令印加直後の位置偏差が正から開始することを示すフラグであり、位置偏差が正から開始する時には、flag_poserr_plus=1とし、位置偏差が負から開始する時には、flag_poserr_plus=0とする。よって、flag_poserr_plus=1ではposerr_work=poserrであり、flag_poserr_plus=0ではposerr_work=−poserrとなる。poserr_minは位置偏差最小値であり、ステップ状の位置指令が変化し終わった直後から、整定時間の計測を終了するまでの間、常にその時点における前記poserr_workの最小値を保持する変数である。poserr_vibは位置偏差中の振動振幅最大値であり、「poserr_work−poserr_min」で算出されるposerr_workの振動振幅から常に最大値を保持する変数である。flag_plsinは整定判定用偏差到達フラグであり、位置偏差の絶対値が整定判定用偏差posin_pls以下ならばflag_plsin=1とし、そうでないならば、flag_plsin=0とする。flag_plsin_bkは整定判定用偏差到達フラグ前回値であり、前回設定したflag_plsinと同値なフラグである。time_sは計測経過時間であり、ステップ状の位置指令が変化し終わった直後を起点とする経過時間、time_wは整定監視経過時間であり、位置偏差波形が始めてゼロクロスした時点を起点とする経過時間を示す。Stは整定時間であり、位置偏差の絶対値が整定判定用偏差posin_plsよりも大きい値からposin_pls以下となる度にStに対して計測経過時間time_sを代入する。これにより、前記整定監視タイムアウト時間timeoutが適切に長く設定されていれば、Stにはステップ状の位置指令が変化し終わった直後から位置偏差が最終的に整定するまでに要する時間が記録されることになる。over_shootは電動機位置の位置指令値に対するオーバーシュート量であり、整定後には前記poserr_minの符号反転値に等しくなる。   FIG. 5 and FIG. 6 are measurement processing flowcharts of vibration amplitude, settling time, and overshoot amount in the first embodiment. A method of measuring the vibration amplitude, settling time, and overshoot amount of the position deviation waveform required in the feedback control parameter tuning unit 14 and the position feedforward control parameter tuning unit 17 described later will be described using this flow. 5 and 6, timeout is a settling monitoring timeout time set by the user, and is an adjustment parameter for measuring the settling time by timeout from the time point when the position deviation waveform first crosses zero. Posin_pls is a settling determination deviation set by the user, and is set when the absolute value of the position deviation is stably equal to or less than posin_pls. Further, the position error is the position deviation, and the position error poser_work is a position deviation for vibration / overshoot measurement. The position deviation immediately after the stepwise position command is applied always starts from the positive side regardless of the rotation direction of the motor. Is a state quantity obtained by adjusting the sign. flag_poserr_plus is a flag indicating that the positional deviation immediately after application of the step-like position command starts from positive. When the positional deviation starts from positive, flag_poserr_plus = 1, and when the positional deviation starts from negative, flag_poserr_plus = 0. And Therefore, when flag_poser_plus = 1, poser_work = poserr, and when flag_poser_plus = 0, poser_work = −poserr. Poserr_min is a minimum position deviation value, and is a variable that always holds the minimum value of the poser_work at that point in time from immediately after the change of the step-like position command to the end of the settling time measurement. “poserr_vib” is a vibration amplitude maximum value in the positional deviation, and is a variable that always holds the maximum value from the vibration amplitude of the poser_work calculated by “poserr_work-poserr_min”. flag_plsin is a settling judgment deviation arrival flag. If the absolute value of the position deviation is equal to or less than the settling judgment deviation posin_pls, flag_plsin = 1 is set. Otherwise, flag_plsin = 0 is set. flag_plsin_bk is the previous value of the settling determination deviation arrival flag, and is a flag equivalent to the flag_plsin set previously. time_s is the measurement elapsed time, the elapsed time starting immediately after the stepped position command has been changed, and time_w is the settling monitoring elapsed time, and the elapsed time starting from the time when the position deviation waveform first crosses zero. Show. St is the settling time, and the measured elapsed time time_s is substituted for St each time the absolute value of the position deviation becomes less than posin_pls from a value larger than the settling determination deviation posin_pls. Thereby, if the settling monitoring timeout time timeout is set appropriately long, the time required until the position deviation is finally settled from immediately after the stepped position command is changed is recorded in St. It will be. “over_shot” is an overshoot amount with respect to the position command value of the motor position, and is equal to the sign inversion value of the above-mentioned porr_min after settling.

次に、図5および図6のフローチャートを順を追って説明する。図5および図6では、80でフローチャートを開始し、判定処理81で位置指令θ の変化を確認する。ここでは、ステップ状の位置指令が入力されるまでは、位置指令に変化がない為、判定処理81を繰り返し実行するが、ステップ状の位置指令が入力されると、「位置指令θ に変化あり」と判定され、判定処理82に移行する。判定処理82では、位置指令が一定が否かを判定する。ここでは、ステップ状の位置指令が完全に立ち上がった時点において、位置指令が一定となり、判定処理83に移行する。一方、ステップ状の位置指令が立ち上がっている最中は、前記判定処理82を繰り返し実行する。判定処理83では、位置偏差poserrの正負を確認し、正であれば処理84に移行する。処理84では、前記位置偏差が正から開始することを示すフラグflag_poserr_plusに“1”をセットし、処理85に移行する。処理85では、前記位置偏差最小値poserr_minを位置偏差poserrで初期化し、初期化処理86に移行する。前記判定処理83において、位置偏差poserrが負であれば処理87に移行し、前記位置偏差が正から開始することを示すフラグflag_poserr_plusに“0”をセットし、処理88に移行する。処理88では、前記位置偏差最小値poserr_minを位置偏差poserrの符号反転値−poserrで初期化し、初期化処理86に移行する。初期化処理86では、位置偏差中の振動振幅最大値poserr_vib、計測経過時間time_s、整定監視経過時間time_w、整定判定用偏差到達フラグ前回値flag_plsin_bkをゼロで初期化し、処理90に移行する。処理90では、計測経過時間time_sに1加算し、判定処理91に移行する。判定処理91では、位置偏差poserrの絶対値が整定判定用偏差posin_pls以下ならば、処理92に移行し整定判定用偏差到達フラグflag_plsinに“1”をセットし、判定処理93に移行する。判定処理93では、整定判定用偏差到達フラグ前回値flag_plsin_bkがゼロか否かを判定し、flag_plsin_bk=0ならば、処理95に移行し、整定時間Stに計測経過時間time_sを記録し処理95に移行する。処理95では、次回の位置偏差判定処理91に備えて、整定判定用偏差到達フラグ前回値flag_plsin_bkに対して、今回の整定判定用偏差到達フラグflag_plsinの値を代入し、判定処理97に移行する。前記判定処理91において、位置偏差poserrの絶対値が整定判定用偏差posin_pls以下とならない場合には、処理96に移行し、整定判定用偏差到達フラグflag_plsinに“0”をセットし、前記処理95に移行する。また、前記判定処理93において、flag_plsin_bk=1ならば、既に整定している為、整定時間Stを更新する必要はなく、前記処理95に移行する。判定処理97では、前記位置偏差が正から開始することを示すフラグflag_poserr_plusをチェックする。flag_poserr_plus=1ならば、位置偏差が正から開始したとして、前記振動・オーバーシュート計測用位置偏差poserr_workに位置偏差poserrをそのまま代入し、判定処理99に移行する。判定処理97において、flag_poserr_plus=0ならば、位置偏差が負から開始したとして、前記振動・オーバーシュート計測用位置偏差poserr_workに位置偏差poserrの符号反転値−poserrを代入し、判定処理99に移行する。判定処理99では、振動・オーバーシュート計測用位置偏差poserr_workが位置偏差最小値poserr_min以下か否かを判定する。以下であれば処理101に移行し、位置偏差最小値poserr_minを現在の振動・オーバーシュート計測用位置偏差poserr_workで更新し、判定処理102に移行する。前記判定処理99において、振動・オーバーシュート計測用位置偏差poserr_workが位置偏差最小値poserr_min以下とならない場合には、位置偏差最小値poserr_minを更新することなく、判定処理102に移行する。判定処理102では、これまでに計測された位置偏差中の振動振幅最大値poserr_vibと「poserr_work−poserr_min」を比較する。そして、poserr_vibの方が小さい場合には、poserr_vibを「poserr_work−poserr_min」で更新し判定処理104に移行する。前記判定処理102において、poserr_vibの方が大きい場合には、poserr_vibを更新することなく、判定処理104に移行する。判定処理104では、位置偏差がゼロクロスしたことを検出する為に、位置偏差最小値poserr_minがゼロ以下か否かを評価する。ここで、poserr_min≦0ならば、過去に位置偏差がゼロクロスしたと判定し、処理105に移行する。処理105では、位置偏差波形が始めてゼロクロスした時点を起点とする経過時間を表す整定監視経過時間time_wに1加算し、判定処理106に移行する。判定処理104でposerr_min≦0が成立しない場合には、未だ一度も位置偏差波形がゼロクロスしていないと判定し、処理90に移行する。判定処理106では、ステップ状の位置指令が変化し終わった直後を起点とする整定監視経過時間time_wと整定監視タイムアウト時間timeoutを比較し、time_w≧timeoutならば整定監視を終了するべく処理107に移行する。一方、前記判定処理106において、time_w≧timeoutが成立しない場合には、整定監視を継続するべく処理90に移行する。前記処理107では、オーバーシュート量over_shootとして位置偏差最小値poserr_minの符号反転値−poserr_minを設定し、108に移行し、前記位置偏差波形の振動振幅、整定時間、オーバーシュート量を計測する処理を終了する。 Next, the flowcharts of FIGS. 5 and 6 will be described in order. 5 and 6, the flowchart is started at 80, and a change in the position command θ M * is confirmed in the determination process 81. Here, since the position command does not change until the step-shaped position command is input, the determination processing 81 is repeatedly executed. However, when the step-shaped position command is input, the “position command θ M * is set. It is determined that there is a change ”, and the process proceeds to determination process 82. In the determination process 82, it is determined whether or not the position command is constant. Here, the position command becomes constant when the step-shaped position command completely rises, and the process proceeds to the determination process 83. On the other hand, while the step-like position command is rising, the determination process 82 is repeatedly executed. In the determination process 83, the sign of the positional deviation poser is confirmed. If it is positive, the process proceeds to process 84. In process 84, “1” is set to a flag flag_poserr_plus indicating that the position deviation starts from positive, and the process proceeds to process 85. In the process 85, the position deviation minimum value poerr_min is initialized with the position deviation poerr, and the process proceeds to an initialization process 86. In the determination process 83, if the position deviation “poserr” is negative, the process proceeds to process 87, “0” is set to a flag flag_poserr_plus indicating that the position deviation starts from positive, and the process proceeds to process 88. In the process 88, the position deviation minimum value poerr_min is initialized with the sign inversion value -poserr of the position deviation poser, and the process proceeds to an initialization process 86. In the initialization process 86, the vibration amplitude maximum value during the position deviation poser_vib, the measurement elapsed time time_s, the settling monitoring elapsed time time_w, and the settling judgment deviation arrival flag previous value flag_plsin_bk are initialized to zero, and the process proceeds to the process 90. In the process 90, 1 is added to the measurement elapsed time time_s, and the process proceeds to the determination process 91. In the determination process 91, if the absolute value of the position deviation poser is equal to or less than the settling determination deviation posin_pls, the process proceeds to process 92, the settling determination deviation arrival flag flag_plsin is set to “1”, and the process proceeds to the determination process 93. In the determination process 93, it is determined whether or not the settling determination deviation arrival flag previous value flag_plsin_bk is zero. If flag_plsin_bk = 0, the process proceeds to process 95, the measured elapsed time time_s is recorded in the settling time St, and the process proceeds to process 95. To do. In the process 95, in preparation for the next position deviation determination process 91, the value of the current settling determination deviation arrival flag flag_plsin is substituted into the previous set flag determination deviation flag flag_plsin_bk, and the process proceeds to the determination process 97. In the determination process 91, when the absolute value of the position deviation poser is not less than or equal to the settling determination deviation posin_pls, the process proceeds to process 96, the settling determination deviation arrival flag flag_plsin is set to “0”, and the process 95 is set. Transition. In the determination process 93, if flag_plsin_bk = 1, the settling time St does not need to be updated because the settling has already been completed, and the process proceeds to the process 95. In the determination process 97, a flag flag_poserr_plus indicating that the position deviation starts from positive is checked. If flag_poserr_plus = 1, it is determined that the positional deviation starts from positive, and the positional deviation poerr is directly substituted into the vibration / overshoot measurement positional deviation poerr_work. In the determination process 97, if flag_poserr_plus = 0, it is determined that the position deviation starts from a negative value, and the sign-inverted value -poserr of the position deviation poser is substituted into the vibration / overshoot measurement position deviation poerr_work. . In the determination process 99, it is determined whether or not the vibration / overshoot measurement position deviation poerr_work is equal to or smaller than the position deviation minimum value poerr_min. If it is below, the process proceeds to process 101, the position deviation minimum value poerr_min is updated with the current position deviation poerr_work for vibration / overshoot measurement, and the process proceeds to the determination process 102. In the determination process 99, when the vibration / overshoot measurement position deviation poerr_work is not less than or equal to the minimum position deviation value poerr_min, the process proceeds to the determination process 102 without updating the minimum position deviation value poerr_min. In the determination process 102, the vibration amplitude maximum value poerr_vib in the positional deviations measured so far is compared with “poserr_work-poserr_min”. If the position of the poser_vib is smaller, the position of the porrer_vib is updated with “poser_work-poserr_min” and the process proceeds to the determination process 104. In the determination process 102, if the position of the poerr_vib is larger, the process proceeds to the determination process 104 without updating the position of the poser_vib. In the determination process 104, in order to detect that the position deviation has crossed zero, it is evaluated whether or not the position deviation minimum value poerr_min is equal to or less than zero. Here, if poser_min ≦ 0, it is determined that the position deviation has crossed zero in the past, and the process proceeds to processing 105. In the process 105, 1 is added to the settling monitoring elapsed time time_w representing the elapsed time starting from the time when the position deviation waveform first crosses zero, and the process proceeds to the determination process 106. If the determination process 104 does not satisfy poser_min ≦ 0, it is determined that the position deviation waveform has never zero-crossed, and the process proceeds to process 90. In the determination process 106, the settling monitoring elapsed time time_w starting from immediately after the change of the stepped position command is compared with the settling monitoring timeout time timeout, and if time_w ≧ timeout, the process proceeds to process 107 to end the settling monitoring. To do. On the other hand, in the determination process 106, when time_w ≧ timeout is not established, the process proceeds to process 90 in order to continue the settling monitoring. In the process 107, the sign inversion value -poserr_min of the position deviation minimum value poerr_min is set as the overshoot amount over_shot, and the process proceeds to 108, where the process of measuring the vibration amplitude, settling time, and overshoot amount of the position deviation waveform is completed. To do.

図7は、第1の実施例における振動振幅・整定時間・オーバーシュート量の計測法説明波形図であり、各部状態量の波形を用いて、図5および図6のフローチャートの結果を具体例で示す。図7において、波形120は位置指令値θ 、波形121は位置偏差poserr及び振動・オーバーシュート計測用位置偏差poserr_workである。波形122は整定判定用偏差到達フラグflag_plsin、波形123は位置偏差最小値poserr_min、波形124はposerr_work−poserr_minである。また、各波形の横軸は計測経過時間time_sであり、位置指令を示す波形120が完全に立ち上がった時点をtime_s=0としている。この場合、位置指令波形120が正方向に変化しているため、time_s≧0でのposerr_workは位置偏差poserrと等しい。ここでもし、位置指令波形120が負方向に変化していたならば、poserr_workを示す波形121は変わらずに、位置偏差poserrのみ波形121を時間軸に対して線対称に変換した波形となる。また、整定判定用偏差到達フラグflag_plsinを示す波形122は、poserr_workを示す波形121がグラフ中の−posin_plsからposin_plsの間に存在すれば、”1”を採り、それ以外では”0”を採る。この例のように、位置偏差波形が振動的な場合には、整定判定用偏差到達フラグflag_plsinは”0”と”1”を何度か往復した後、特に整定監視タイムアウト時間timeoutが十分に長く設定されていれば、最終的に”1”に落ち着く。また、整定判定用偏差到達フラグflag_plsinの立ち上がりエッジ(矢印)毎に、整定時間Stを計測経過時間time_sで更新する。整定監視経過時間time_wは、前記整定監視タイムアウト時間timeoutを計測する為の経過時間であり、図中に時間軸125で示したように、位置偏差波形121が始めてゼロクロスした時点を起点としている。このように、計測経過時間time_sとは別に、位置偏差波形121が始めてゼロクロスした時点を起点とする整定監視経過時間time_wを新たに設ける。その理由は、位置偏差波形がゼロクロスした時点から整定までに要する時間が、位置応答周波数や速度応答周波数といった制御パラメータの影響をあまり受けないことによる。これにより、ユーザによる整定監視タイムアウト時間timeoutの設定に際しては、位置応答周波数や速度応答周波数といった制御パラメータを考慮することなく、一定値を設定するだけで、整定時間Stの正確な測定を可能としている。また、波形123は、位置偏差最小値poserr_minであり、振動・オーバーシュート計測用位置偏差poserr_workと比較すると分かり易いが、poserr_workの各時点での最小値を示す。また、波形124は、poserr_work−poserr_minであり、振動・オーバーシュート計測用位置偏差poserr_workに含まれる振動成分のみを抽出した波形となる。このことは、もしposerr_workが振動を伴わない漸減波形ならば、poserr_work−poserr_minが常にゼロになることから理解できる。また、最終的に求めたい位置偏差中の振動振幅最大値poserr_vibは、波形124のピークホールド値である。 FIG. 7 is a waveform diagram for explaining the measurement method of the vibration amplitude, settling time, and overshoot amount in the first embodiment, and the results of the flowcharts of FIGS. Show. In FIG. 7, a waveform 120 is a position command value θ M * , and a waveform 121 is a position deviation poser and a position deviation poerr_work for vibration / overshoot measurement. A waveform 122 is a settling judgment deviation arrival flag flag_plsin, a waveform 123 is a position deviation minimum value porrer_min, and a waveform 124 is poser_work-poserr_min. The horizontal axis of each waveform is the measurement elapsed time time_s, and the time point when the waveform 120 indicating the position command completely rises is time_s = 0. In this case, since the position command waveform 120 changes in the positive direction, the position error posr_time when time_s ≧ 0 is equal to the position deviation positionr. Here, if the position command waveform 120 has changed in the negative direction, the waveform 121 indicating the position error_work is not changed, and only the position deviation position is a waveform obtained by converting the waveform 121 into line symmetry with respect to the time axis. In addition, the waveform 122 indicating the settling judgment deviation arrival flag flag_plsin takes “1” if the waveform 121 showing the porrer_work exists between −posin_pls and posin_pls in the graph, and takes “0” otherwise. When the position deviation waveform is oscillating as in this example, the settling judgment deviation arrival flag flag_plsin is set to a sufficiently long settling monitoring timeout time timeout after the round trip between “0” and “1” several times. If set, it will eventually settle to “1”. Further, the settling time St is updated with the measured elapsed time time_s for each rising edge (arrow) of the settling determination deviation arrival flag flag_plsin. The settling monitoring elapsed time time_w is an elapsed time for measuring the settling monitoring timeout time timeout, and starts from the time when the position deviation waveform 121 first crosses zero as shown by the time axis 125 in the figure. In this way, apart from the measurement elapsed time time_s, a settling monitoring elapsed time time_w starting from the time point when the position deviation waveform 121 first zero-crosses is newly provided. The reason is that the time required from the time when the position deviation waveform zero-crosses to the settling time is not significantly affected by the control parameters such as the position response frequency and the speed response frequency. Thereby, when setting the settling monitoring timeout time timeout by the user, it is possible to accurately measure the settling time St only by setting a constant value without considering control parameters such as position response frequency and speed response frequency. . The waveform 123 is a position deviation minimum value poerr_min, which is easy to understand when compared with the vibration / overshoot measurement position deviation poerr_work, but indicates the minimum value of each position of the poser_work. The waveform 124 is poser_work-poserr_min, and is a waveform obtained by extracting only the vibration component included in the vibration / overshoot measurement position deviation poerr_work. This can be understood from the fact that poser_work-poserr_min is always zero if poser_work is a gradually decreasing waveform without vibration. In addition, the vibration amplitude maximum value poerr_vib in the position deviation to be finally obtained is a peak hold value of the waveform 124.

以上のように、図5および図6のフローチャートを用いることにより、フィードバック制御パラメータチューニング部14で必要となる前記位置偏差波形の振動振幅、整定時間、オーバーシュート量を計測することができる。なお、後述する第2の実施例の位置フィードフォワード制御パラメータチューニング部17においても、前記位置偏差波形の振動振幅、整定時間、オーバーシュート量を利用することができる。   As described above, by using the flowcharts of FIGS. 5 and 6, it is possible to measure the vibration amplitude, settling time, and overshoot amount of the position deviation waveform necessary for the feedback control parameter tuning unit 14. In the position feedforward control parameter tuning unit 17 of the second embodiment described later, the vibration amplitude, settling time, and overshoot amount of the position deviation waveform can be used.

図8は、本発明の第2の実施例による電動機制御装置のフィードフォワード制御パラメータの自動調整手段を含む制御ブロック図である。第2の実施例では、図1のフィードバック制御パラメータの自動調整に加え、位置フィードフォワード制御パラメータの自動調整をも行う。図8において、図1と同一機能部には同一符号を付け、重複説明は避ける。7は位置偏差θに応じて位置制御器出力信号ωFB を出力する位置制御器、15は位置指令値θ を入力し、位置フィードフォワード制御器出力信号ωFF を出力する位置フィードフォワード制御器である。その入出力関係は、ラプラス演算子をsとするとき、制御器のパラメータであるフィードフォワードゲインKffとフィードフォワード時定数Tffを用いて(7)式で表すことができる。 FIG. 8 is a control block diagram including an automatic adjustment unit for the feedforward control parameter of the motor control apparatus according to the second embodiment of the present invention. In the second embodiment, automatic adjustment of the position feedforward control parameter is also performed in addition to the automatic adjustment of the feedback control parameter of FIG. In FIG. 8, the same function parts as those in FIG. 7 is a position controller that outputs a position controller output signal ω FB * in accordance with the position deviation θ e , and 15 is a position that receives a position command value θ M * and outputs a position feedforward controller output signal ω FF *. This is a feedforward controller. The input / output relationship can be expressed by equation (7) using a feedforward gain Kff and a feedforward time constant Tff, which are parameters of the controller, where Laplace operator is s.

Figure 2007135344
17は、図1の14と同様に、位置制御器7および速度制御器10のパラメータを自動調整するほかに、位置フィードフォワード制御器15におけるフィードフォワードゲインKffおよび時定数Tffを自動調整する制御パラメータチューニング部である。したがって、14に加わる機能として、位置偏差θを入力し、位置指令値θ と位置フィードフォワード制御器15に設定するフィードフォワードゲインKffおよびフィードフォワード時定数Tffをも出力することとなる。また、制御パラメータチューニング部17の内部には、後述する位置フィードフォワード制御パラメータの自動調整アルゴリズムと、予めユーザが登録した複数の位置指令パターンを順次、位置指令値θ として出力する機能をも有している。その基本動作は、複数の位置指令パターンの全てに対して、実際に運転動作を行い、全ての位置指令パターンに関してオーバーシュート量が許容値を超えない条件を満たし、且つ、特定の位置指令パターンにおける整定時間を最小化する。このとき、位置フィードフォワード制御器のフィードフォワードゲインKffおよびフィードフォワード時定数Tffの自動探索を行うものである。
Figure 2007135344
17 is a control parameter for automatically adjusting the feedforward gain Kff and the time constant Tff in the position feedforward controller 15 in addition to automatically adjusting the parameters of the position controller 7 and the speed controller 10 in the same manner as 14 in FIG. It is a tuning part. Therefore, as a function added to 14, the position deviation θ e is input, and the position command value θ M * and the feed forward gain Kff and the feed forward time constant Tff set in the position feed forward controller 15 are also output. Further, the control parameter tuning unit 17 has an automatic adjustment algorithm for a position feedforward control parameter, which will be described later, and a function for sequentially outputting a plurality of position command patterns registered in advance as a position command value θ M *. Have. The basic operation is to actually perform the driving operation for all of the plurality of position command patterns, satisfy the condition that the overshoot amount does not exceed the allowable value for all the position command patterns, and in a specific position command pattern. Minimize settling time. At this time, an automatic search for the feedforward gain Kff and the feedforward time constant Tff of the position feedforward controller is performed.

次に、フィードフォワードゲインKffの自動調整法を具体的に説明するが、まず、その考え方を、図9を参照して説明する。   Next, an automatic adjustment method of the feedforward gain Kff will be specifically described. First, the concept will be described with reference to FIG.

図9は、図8の実施例におけるフィードフォワードゲインと整定時間・オーバーシュートの関係説明図であり、同図(a)は、フィードフォワードゲインと整定時間の関係、同図(b)は、フィードフォワードゲインとオーバーシュート量の関係を示す。図9(a)では、横軸がフィードフォワードゲインKff、縦軸が整定時間であり、基本的にはフィードフォワードゲインKffが大きい程、整定時間が短くなる傾向を示す。図のように、フィードフォワードゲインKffがある値以上になると、急激に整定時間が長くなることを示している。一方、図9(b)では、横軸がフィードフォワードゲインKff、縦軸がオーバーシュート量であり、フィードフォワードゲインKffが小さい内は、オーバーシュートを全く発生しない。しかし、フィードフォワードゲインKffがある値以上になると、オーバーシュートが発生し始め、以後、その発生量はKffに関して単調増加となることを示している。   FIG. 9 is an explanatory diagram of the relationship between the feedforward gain and the settling time / overshoot in the embodiment of FIG. 8, where FIG. 9A shows the relationship between the feedforward gain and the settling time, and FIG. The relationship between the forward gain and the overshoot amount is shown. In FIG. 9A, the horizontal axis is the feedforward gain Kff, and the vertical axis is the settling time. Basically, the larger the feedforward gain Kff, the shorter the settling time. As shown in the figure, when the feedforward gain Kff exceeds a certain value, the settling time is abruptly increased. On the other hand, in FIG. 9B, the horizontal axis is the feedforward gain Kff, the vertical axis is the overshoot amount, and no overshoot occurs while the feedforward gain Kff is small. However, when the feedforward gain Kff becomes a certain value or more, overshoot starts to occur, and thereafter, the generation amount indicates a monotonous increase with respect to Kff.

以上、図9(a),(b)から、オーバーシュート量がゼロか十分に小さい場合には、整定時間はフィードフォワードゲインKffを大きく設定した方が短くなると言える。また、オーバーシュート量はフィードフォワードゲインKffを大きく設定する程、増大することから、整定時間を最小化するには、フィードフォワードゲインKffをオーバーシュート量が許容値を超えない範囲内で最大化すれば良いことが分かる。   9A and 9B, when the overshoot amount is zero or sufficiently small, it can be said that the settling time is shorter when the feed forward gain Kff is set larger. Further, since the overshoot amount increases as the feedforward gain Kff is set larger, in order to minimize the settling time, the feedforward gain Kff must be maximized within a range where the overshoot amount does not exceed the allowable value. I understand that

よって、以下に説明する処理フローチャートでは、予め登録した全位置指令パターンに関して、オーバーシュート量が許容値を超えない条件を満たす最大フィードフォワードゲインKffの探索を行う。   Therefore, in the processing flowchart described below, the maximum feedforward gain Kff that satisfies the condition that the overshoot amount does not exceed the allowable value is searched for all the position command patterns registered in advance.

図10は、第2の実施例におけるフィードフォワードゲインKffの自動調整法の処理フロー図である。なお、フィードフォワード時定数Tffの自動調整法については、その調整過程において、フィードフォワードゲインKffの自動調整を必要とする為、後述することにする。   FIG. 10 is a process flow diagram of the automatic adjustment method of the feedforward gain Kff in the second embodiment. Note that the automatic adjustment method of the feedforward time constant Tff will be described later because automatic adjustment of the feedforward gain Kff is required in the adjustment process.

図10において、Kff_iniはユーザが設定するフィードフォワードゲイン初期値、dmax_Kffはユーザが設定するフィードフォワードゲイン探索最大ステップ、dmin_Kffはユーザが設定するフィードフォワードゲイン探索最小ステップである。Kffは位置フィードフォワード制御器15に設定されている現在のフィードフォワードゲイン、div_Kffは現在のフィードフォワードゲイン探索ステップ、Kff_bdは最終的に求めたい限界フィードフォワードゲインである。後述する調整時には、Kff=Kff_iniから探索を開始し、Kff=Kff_iniでオーバーシュート量が許容値未満であればKffをdmax_Kffのステップで増加する。また、Kff=Kff_iniでオーバーシュート量が許容値以上であれば、Kffをdmax_Kffのステップで減少する。更に、前記dmax_KffステップでのKff更新中にオーバーシュート量が許容値未満から許容値以上に変化、あるいは、オーバーシュート量が許容値以上から許容値未満に変化した場合には、次の処理を実施する。すなわち、前記現在のフィードフォワードゲイン探索ステップdiv_Kffを半減しながらKffを増減探索する処理をdiv_Kffがフィードフォワードゲイン探索最小ステップdmin_Kffを下回るまで実施することを意味する。   In FIG. 10, Kff_ini is a feedforward gain initial value set by the user, dmax_Kff is a feedforward gain search maximum step set by the user, and dmin_Kff is a feedforward gain search minimum step set by the user. Kff is a current feedforward gain set in the position feedforward controller 15, div_Kff is a current feedforward gain search step, and Kff_bd is a limit feedforward gain to be finally obtained. At the time of adjustment to be described later, the search is started from Kff = Kff_ini, and if Kff = Kff_ini and the overshoot amount is less than the allowable value, Kff is increased by a step dmax_Kff. If Kff = Kff_ini and the overshoot amount is greater than or equal to the allowable value, Kff is decreased in a step dmax_Kff. Further, when the overshoot amount changes from less than the allowable value to the allowable value or more during the Kff update in the dmax_Kff step, or the overshoot amount changes from the allowable value to the allowable value, the following processing is performed. To do. That is, it means that the process of increasing / decreasing Kff while halving the current feedforward gain search step div_Kff is performed until div_Kff falls below the feedforward gain search minimum step dmin_Kff.

次に、図10のフローチャートを順を追って説明する。図10では、150でフローチャートを開始し、初期化処理151で現在のフィードフォワードゲインKffにフィードフォワードゲイン初期値Kff_iniを設定する。そして、現在のフィードフォワードゲイン探索ステップdiv_Kffにフィードフォワードゲイン探索最大ステップdmax_Kffを設定し、処理152に移行する。処理152では、ユーザが予め登録した全ての位置指令パターンでの運転を行い、各運転毎に前述の手段で、整定時間、オーバーシュート量を計測し、判定処理153に移行する。前記判定処理153では、各運転パターン毎のオーバーシュート量の評価を行い、いずれかの運転パターンでのオーバーシュート量が許容値以上となる場合には、処理154に移行する。処理154では、現在のフィードフォワードゲインKffを現在のフィードフォワードゲイン探索ステップdiv_Kffだけ減じた後に、処理155に移行する。処理155では、前記処理152と同様にユーザが予め登録した全ての位置指令パターンでの運転を行い、各運転毎に整定時間、オーバーシュート量を計測し、判定処理156に移行する。前記判定処理156では、各運転パターン毎のオーバーシュート量の評価を行い、全ての運転パターンでのオーバーシュート量が許容値未満となる場合には、処理157に移行する。一方、前記判定処理156において、いずれかの運転パターンでのオーバーシュート量が許容値以上となる場合には、更に現在のフィードフォワードゲインKffを減ずる目的で、前記処理154に移行する。前記処理157では、全ての運転パターンでのオーバーシュート量を許容値未満とする最大Kffの候補の1つとして、現在のフィードフォワードゲインKffで限界フィードフォワードゲインKff_bdを更新し、処理158に移行する。処理158では、後のフローを考慮して、現在のフィードフォワードゲインKffに現在のゲイン探索ステップdiv_Kffを加算し、いずれかの運転パターンでのオーバーシュート量が許容値以上となる条件を再設定し、処理159に移行する。前記判定処理153において、全ての運転パターンでのオーバーシュート量が許容値未満となる場合には、処理160に移行する。前記処理160では、全ての運転パターンでのオーバーシュート量を許容値未満とする最大Kffの候補の1つとして、現在のフィードフォワードゲインKffで限界フィードフォワードゲインKff_bdを更新し、処理161に移行する。前記処理161では、現在のフィードフォワードゲインKffに現在のフィードフォワードゲイン探索ステップdiv_Kffを加算した後に、処理162に移行する。処理162では、前記処理155と同様にユーザが予め登録した全ての位置指令パターンでの運転を行い、各運転毎に整定時間、オーバーシュート量を計測し、判定処理163に移行する。前記判定処理163では、各運転パターン毎のオーバーシュート量の評価を行い、いずれかの運転パターンでのオーバーシュート量が許容値以上となる場合には、前記処理159に移行する。一方、前記判定処理163において、全ての運転パターンでのオーバーシュート量が許容値未満となる場合には、更に現在のフィードフォワードゲインKffを増加する目的で、前記処理160に移行する。前記処理159に続くフローでは、前記現在のフィードフォワードゲイン探索ステップdiv_Kffを半減しながらKffを増減探索する処理であり、処理159では、前記現在のフィードフォワードゲイン探索ステップdiv_Kffを半減し、判定処理165に移行する。前記判定処理165では、現在のフィードフォワードゲイン探索ステップdiv_Kffの大きさがフィードフォワードゲイン探索最小ステップdmin_Kff以上か否かを判定する。そして、以上であれば処理166に移行し、未満であれば176に移行し、フィードフォワードゲインKffの探索処理を終了する。処理166では、現在のフィードフォワードゲインKffを現在のフィードフォワードゲイン探索ステップdiv_Kffだけ減じた後に、処理167に移行する。処理167では、前記処理162と同様にユーザが予め登録した全ての位置指令パターンでの運転を行い、各運転毎に整定時間、オーバーシュート量を計測し、判定処理168に移行する。前記判定処理168では、各運転パターン毎のオーバーシュート量の評価を行い、全ての運転パターンでのオーバーシュート量が許容値未満となる場合には、処理169に移行する。一方、前記判定処理168において、いずれかの運転パターンでのオーバーシュート量が許容値以上となる場合には、更に現在のフィードフォワードゲインKffを減ずる目的で、前記処理159に移行する。前記処理169では、全ての運転パターンでのオーバーシュート量を許容値未満とする最大Kffの候補の1つとして、現在のフィードフォワードゲインKffで限界フィードフォワードゲインKff_bdを更新し、処理170に移行する。前記処理170では、前記現在のフィードフォワードゲイン探索ステップdiv_Kffを半減し、判定処理171に移行する。前記判定処理171では、現在のフィードフォワードゲイン探索ステップdiv_Kffの大きさがフィードフォワードゲイン探索最小ステップdmin_Kff以上か否かを判定する。そして、以上であれば処理172に移行し、未満であれば176に移行し、フィードフォワードゲインKffの探索処理を終了する。処理172では、現在のフィードフォワードゲインKffに現在のフィードフォワードゲイン探索ステップdiv_Kffを加算した後に、処理173に移行する。処理173では、前記処理167と同様にユーザが予め登録した全ての位置指令パターンでの運転を行い、各運転毎に整定時間、オーバーシュート量を計測し、判定処理174に移行する。前記判定処理174では、各運転パターン毎のオーバーシュート量の評価を行い、いずれかの運転パターンでのオーバーシュート量が許容値以上となる場合には、更に現在のフィードフォワードゲインKffを減ずる目的で、処理159に移行する。一方、前記判定処理174において、全ての運転パターンでのオーバーシュート量が許容値未満となる場合には、処理175に移行する。前記処理175では、全ての運転パターンでのオーバーシュート量を許容値未満とする最大Kffの候補の1つとして、現在のフィードフォワードゲインKffで限界フィードフォワードゲインKff_bdを更新し、更に現在のフィードフォワードゲインKffを増加する目的で、前記処理170に移行する。   Next, the flowchart of FIG. 10 will be described in order. In FIG. 10, the flowchart is started at 150, and an initialization process 151 sets the feedforward gain initial value Kff_ini to the current feedforward gain Kff. Then, the feedforward gain search maximum step dmax_Kff is set in the current feedforward gain search step div_Kff, and the process proceeds to processing 152. In the process 152, the operation is performed with all the position command patterns registered in advance by the user, the settling time and the overshoot amount are measured by the above-mentioned means for each operation, and the process proceeds to the determination process 153. In the determination process 153, the overshoot amount for each operation pattern is evaluated. If the overshoot amount in any operation pattern is equal to or greater than the allowable value, the process proceeds to process 154. In process 154, the current feedforward gain Kff is reduced by the current feedforward gain search step div_Kff, and then the process proceeds to process 155. In the process 155, similarly to the process 152, the operation is performed with all the position command patterns registered in advance by the user, the settling time and the overshoot amount are measured for each operation, and the process proceeds to the determination process 156. In the determination process 156, the overshoot amount for each operation pattern is evaluated. If the overshoot amount in all operation patterns is less than the allowable value, the process proceeds to process 157. On the other hand, in the determination process 156, when the overshoot amount in any of the operation patterns is equal to or larger than the allowable value, the process proceeds to the process 154 for the purpose of further reducing the current feedforward gain Kff. In the process 157, the limit feedforward gain Kff_bd is updated with the current feedforward gain Kff as one of the maximum Kff candidates for which the overshoot amount in all operation patterns is less than the allowable value, and the process proceeds to the process 158. . In the process 158, considering the subsequent flow, the current gain search step div_Kff is added to the current feedforward gain Kff, and the condition that the overshoot amount in any one of the operation patterns is equal to or larger than the allowable value is reset. The process proceeds to process 159. In the determination process 153, when the overshoot amount in all operation patterns is less than the allowable value, the process proceeds to process 160. In the process 160, the limit feedforward gain Kff_bd is updated with the current feedforward gain Kff as one of the maximum Kff candidates for which the overshoot amount in all operation patterns is less than the allowable value, and the process proceeds to the process 161. . In the process 161, the current feedforward gain search step div_Kff is added to the current feedforward gain Kff, and then the process 162 is performed. In the process 162, similarly to the process 155, the operation is performed with all the position command patterns registered in advance by the user, the settling time and the overshoot amount are measured for each operation, and the process proceeds to the determination process 163. In the determination process 163, the overshoot amount for each operation pattern is evaluated. If the overshoot amount in any of the operation patterns is equal to or greater than the allowable value, the process proceeds to the process 159. On the other hand, in the determination process 163, when the overshoot amount in all operation patterns is less than the allowable value, the process proceeds to the process 160 for the purpose of further increasing the current feedforward gain Kff. In the flow following the process 159, the current feedforward gain search step div_Kff is halved while the Kff is increased or decreased. In the process 159, the current feedforward gain search step div_Kff is halved, and the determination process 165 is performed. Migrate to In the determination process 165, it is determined whether or not the current feedforward gain search step div_Kff is greater than or equal to the feedforward gain search minimum step dmin_Kff. If so, the process proceeds to process 166, and if less, the process proceeds to 176, and the search process for the feedforward gain Kff is terminated. In process 166, the current feedforward gain Kff is reduced by the current feedforward gain search step div_Kff, and then the process proceeds to process 167. In the process 167, similarly to the process 162, the operation is performed with all the position command patterns registered in advance by the user, the settling time and the overshoot amount are measured for each operation, and the process proceeds to the determination process 168. In the determination process 168, the overshoot amount for each operation pattern is evaluated, and if the overshoot amount in all operation patterns is less than the allowable value, the process proceeds to process 169. On the other hand, in the determination process 168, when the overshoot amount in any of the operation patterns is equal to or larger than the allowable value, the process proceeds to the process 159 for the purpose of further reducing the current feedforward gain Kff. In the process 169, the limit feedforward gain Kff_bd is updated with the current feedforward gain Kff as one of the candidates for the maximum Kff that makes the overshoot amount in all operation patterns less than the allowable value, and the process proceeds to the process 170. . In the process 170, the current feedforward gain search step div_Kff is halved, and the process proceeds to the determination process 171. In the determination process 171, it is determined whether or not the current feedforward gain search step div_Kff is greater than or equal to the feedforward gain search minimum step dmin_Kff. If so, the process proceeds to process 172. If less, the process proceeds to 176, and the feed forward gain Kff search process is terminated. In process 172, the current feedforward gain search step div_Kff is added to the current feedforward gain Kff, and then the process proceeds to process 173. In the process 173, similarly to the process 167, the operation is performed with all the position command patterns registered in advance by the user, the settling time and the overshoot amount are measured for each operation, and the process proceeds to the determination process 174. In the determination process 174, the amount of overshoot for each operation pattern is evaluated. If the amount of overshoot in any operation pattern exceeds the allowable value, the current feedforward gain Kff is further reduced. The process proceeds to process 159. On the other hand, in the determination process 174, when the overshoot amount in all operation patterns is less than the allowable value, the process proceeds to process 175. In the process 175, the limit feedforward gain Kff_bd is updated with the current feedforward gain Kff as one of the candidates for the maximum Kff that makes the overshoot amount in all operation patterns less than the allowable value, and the current feedforward is further updated. For the purpose of increasing the gain Kff, the processing shifts to the processing 170.

以上のように、図10のフローチャートを用いれば、予め登録した全位置指令パターンに関して、オーバーシュート量が許容値を超えない条件を満たす最大フィードフォワードゲインKffが限界フィードフォワードゲインKff_bdとして見出される。また、その時の整定時間は、オーバーシュートの許容値が十分に小さければ、最小となる。   As described above, using the flowchart of FIG. 10, the maximum feedforward gain Kff that satisfies the condition that the overshoot amount does not exceed the allowable value is found as the limit feedforward gain Kff_bd for all position command patterns registered in advance. Further, the settling time at that time is minimized if the allowable overshoot value is sufficiently small.

また、前述の図9(a),(b)は、図10のフローチャートによる調整過程を具体的に示している。このときの各調整パラメータは、Kff_ini=0.10、dmin_Kff=0.005、dmax_Kff=0.10、オーバーシュート許容値=2[pulse]である。図9中の(1)から(6)の順に探索が行われ、最終的に処理170において、div_Kff=0.003125がセットされる。このため、次の判定処理171でNoとなり、ENDに移行するものである。   9A and 9B specifically show the adjustment process according to the flowchart of FIG. The adjustment parameters at this time are Kff_ini = 0.10, dmin_Kff = 0.005, dmax_Kff = 0.10, and overshoot allowable value = 2 [pulse]. Searches are performed in the order of (1) to (6) in FIG. 9, and finally div_Kff = 0.003125 is set in processing 170. For this reason, it becomes No in the next determination processing 171 and shifts to END.

図11は、第2の実施例におけるフィードフォワード時定数と限界フィードフォワードゲインKff_bdと整定時間の関係説明図である。同図(a)に示すフィードフォワード時定数と限界フィードフォワードゲイン(最大値)における整定時間の関係および、同図(b)に示すフィードフォワード時定数と限界フィードフォワードゲインの関係を説明する。   FIG. 11 is an explanatory diagram of the relationship between the feedforward time constant, the limit feedforward gain Kff_bd, and the settling time in the second embodiment. The relationship between the feedforward time constant and the settling time in the limit feedforward gain (maximum value) shown in FIG. 11A and the relationship between the feedforward time constant and the limit feedforward gain shown in FIG.

図11(a)は横軸がフィードフォワード時定数Tff、縦軸が限界フィードフォワードゲインにおける整定時間であり、図11(b)は横軸がフィードフォワード時定数Tff、縦軸がフィードフォワードゲインである。また、各グラフのパラメータとして、異なる位置指令パターンを3種類選んでいる。ここで、限界フィードフォワードゲインKff_bdとは、各位置指令パターンに関して、オーバーシュート量が許容値を超えない条件を満たす最大フィードフォワードゲインKffのことである。具体的には、図11(b)の各波形上の数値は、フィードフォワード時定数Tffを固定した条件で、前述図10のフローチャートを各単独の位置指令パターンに関して実行し、求めたものである。図11(a)の各波形上の数値は、こうして求めた限界フィードフォワードゲインKff_bdでの整定時間St_bdを記録したものである。ここで、図11(a),(b)から明らかなことは、最小の整定時間を与える最適フィードフォワード時定数は位置指令パターンによって、異なることである。例えば、図11(a)から、位置指令パターン1の最適フィードフォワード時定数は約5msであるが、位置指令パターン2および位置指令パターン3の最適フィードフォワード時定数はそれぞれ約9ms、10msである。また、限界フィードフォワードゲインKff_bdも位置指令パターンによって異なることが、図11(b)に示されている。   11A, the horizontal axis is the feedforward time constant Tff, the vertical axis is the settling time in the limit feedforward gain, and FIG. 11B is the horizontal axis, the feedforward time constant Tff, and the vertical axis is the feedforward gain. is there. Also, three different position command patterns are selected as parameters for each graph. Here, the limit feedforward gain Kff_bd is the maximum feedforward gain Kff that satisfies the condition that the overshoot amount does not exceed the allowable value for each position command pattern. Specifically, the numerical values on each waveform in FIG. 11B are obtained by executing the flowchart of FIG. 10 with respect to each individual position command pattern under the condition that the feedforward time constant Tff is fixed. . The numerical value on each waveform in FIG. 11A is a record of the settling time St_bd at the limit feedforward gain Kff_bd thus obtained. Here, it is clear from FIGS. 11A and 11B that the optimum feedforward time constant that gives the minimum settling time differs depending on the position command pattern. For example, from FIG. 11A, the optimum feedforward time constant of the position command pattern 1 is about 5 ms, but the optimum feedforward time constants of the position command pattern 2 and the position command pattern 3 are about 9 ms and 10 ms, respectively. Further, FIG. 11B shows that the limit feedforward gain Kff_bd also varies depending on the position command pattern.

以上の具体例に示したように、最適なフィードフォワード時定数および限界フィードフォワードゲインKff_bdは、位置指令パターンによって変化するものである。このため、位置フィードフォワード制御パラメータの調整に際しては、実際にユーザが使用する位置指令パターンを用いて実施することとする。また、複数の位置指令パターンに対し、妥当な位置フィードフォワード制御パラメータを決定する場合には、特に整定時間を最小化したい位置指令パターンをユーザ自身が指定できるようにする。そして、その位置指令パターンでの整定時間の極小化を実現するフィードフォワード時定数を見出すことを考える。   As shown in the above specific examples, the optimum feedforward time constant and the limit feedforward gain Kff_bd vary depending on the position command pattern. For this reason, when adjusting the position feedforward control parameter, the position command pattern actually used by the user is used. In addition, when an appropriate position feedforward control parameter is determined for a plurality of position command patterns, the user can designate a position command pattern for which the settling time is to be minimized. Then, consider finding a feed-forward time constant that minimizes the settling time in the position command pattern.

図12〜図14は、以上に示した考え方に基づく限界フィードフォワードゲインKff_bd探索フロー図である。また、本フローチャートでは、限界フィードフォワードゲインKff_bd時のパラメータ設定値および整定時間測定結果を効率よく保存・評価する為に、図15に示すdata[0]、data[1]、data[2]の3つの構造体型要素で構成された構造体配列型のデータ構造を利用する。   12 to 14 are limit feedforward gain Kff_bd search flowcharts based on the above-described concept. Further, in this flowchart, in order to efficiently save and evaluate the parameter setting value and the settling time measurement result at the limit feedforward gain Kff_bd, the data [0], data [1], and data [2] shown in FIG. A data structure of a structure array type composed of three structure type elements is used.

図15は、最適フィードフォワード時定数Tff_opt探索用データ構造説明図であり、data[0]、data[1]、data[2]の3つの構造体型要素で構成された構造体配列型のデータ構造を利用する。また、構造体のメンバは、次の4つである。まず、フィードフォワード時定数Tffであり、次に、該Tffでの限界フィードフォワードゲインKff_bdである。さらに、該Tff,Kff_bdでの優先位置指令パターンに対する整定時間St_bdであり、最後に、該Tffの次に小さいTffに関するデータを保存する配列番号を指示する次データ指示インデックスnextである。sm_indexは、前記構造体配列data[0]、data[1]、data[2]の内、どの番号の配列に現在最小のTffに関するデータが保存されているかを示す最小Tffデータ指示インデックスである。また、以下では、各構造体メンバへの参照手段は、C言語の記述と同様として説明する。例えば、構造体配列data[1]のメンバSt_bdを参照する場合には、data[1].St_bdと記述する。また、図15に示したように、data[0].next=1の場合には、data[data[0].next].St_bdとしてもdata[1]のメンバSt_bdを参照可能である。   FIG. 15 is an explanatory diagram of the optimum feedforward time constant Tff_opt search data structure, which is a structure array type data structure composed of three structure type elements of data [0], data [1], and data [2]. Is used. The structure has the following four members. First, the feedforward time constant Tff, and then the limit feedforward gain Kff_bd at the Tff. Further, it is a settling time St_bd for the priority position command pattern at Tff and Kff_bd, and finally a next data instruction index next that indicates an array number for storing data related to Tff that is the next smaller Tff. The sm_index is a minimum Tff data indication index indicating which number of the array of the structure arrays data [0], data [1], and data [2] stores data related to the current minimum Tff. In the following description, the means for referring to each structure member will be described as being similar to the description in C language. For example, when referring to the member St_bd of the structure array data [1], data [1]. It is described as St_bd. As shown in FIG. 15, data [0]. When next = 1, data [data [0]. next]. The member St_bd of data [1] can also be referred to as St_bd.

図12〜14のフローチャートにおいて、Tff_iniはユーザが設定するフィードフォワード時定数初期値、dmin_Tffはユーザが設定するフィードフォワード時定数探索最小ステップである。また、dmax_Tffはユーザが設定するフィードフォワード時定数探索最大ステップ、Tffは位置フィードフォワード制御器15に設定されている現在のフィードフォワード時定数、div_Tffは現在のフィードフォワード時定数探索ステップである。さらに、Tff_optは最終的に求めたい最適フィードフォワード時定数であり、Kff_optは最適フィードフォワードゲインであり、最適フィードフォワード時定数Tff_optにおける限界フィードフォワードゲインKff_bdに等しい。また、dat_countは初期取得データ数カウンタであり、Tffに関する取得データ数が3点あることを確認する為のカウンタ、data[]およびsm_indexは前述した通りである。   12 to 14, Tff_ini is a feedforward time constant initial value set by the user, and dmin_Tff is a feedforward time constant search minimum step set by the user. Dmax_Tff is a feedforward time constant search maximum step set by the user, Tff is a current feedforward time constant set in the position feedforward controller 15, and div_Tff is a current feedforward time constant search step. Furthermore, Tff_opt is an optimum feedforward time constant to be finally obtained, Kff_opt is an optimum feedforward gain, and is equal to the limit feedforward gain Kff_bd at the optimum feedforward time constant Tff_opt. Further, data_count is an initial acquired data number counter, and counters for confirming that there are three acquired data numbers related to Tff, data [] and sm_index are as described above.

次に、本フローチャートによる最適フィードフォワード時定数Tff_optの探索概要を、図16を参照しながら説明する。   Next, a search outline of the optimum feedforward time constant Tff_opt according to this flowchart will be described with reference to FIG.

図16は、最適フィードフォワード時定数Tff_opt探索過程説明図である。図において、横軸がフィードフォワード時定数Tff、縦軸が該フィードフォワード時定数Tffでの限界フィードフォワードゲインKff_bdにおける優先位置指令パターンに対する整定時間St_bdである。また、図16に示す例では、Tff_ini=Tff_1とした。本フローチャートでは、常にTffに関する3点データを評価しながら、次に探索するべきTffを決定する。このため、まず、Tff=Tff_1のデータ(1)を起点として、dmax_Tff間隔でデータ(2)、データ(3)を取得する。次に、データ(1),(2),(3)を評価し、これらのSt_bdがTffに関して単調減少であることから、更なるSt_bdの減少を期待して、データ(3)の延長上にデータ(4)を取得し、溢れたデータ(1)を廃棄する。次に、データ(2),(3),(4)を評価し、これらのSt_bdがTffに関して下に凸であることから、最適フィードフォワード時定数Tff_optが「データ(2)とデータ(3)の間」か、「データ(3)とデータ(4)の間」の何れかにあると考える。この時点では、何れの側にTff_optが存在するかを断定できないが、両端のデータ(2)とデータ(4)のSt_bdを比較し、小さい側を探索することにしている。よって、データ(3)とデータ(4)の中点のデータ(5)を取得し、データ(2)を廃棄する。次に、データ(3),(5),(4)を評価し、これらのSt_bdがTffに関して下に凸であることから、上記同様にデータ(3)とデータ(4)のSt_bdを比較し、小さい側のデータ(6)を取得し、データ(4)を廃棄する。次に、データ(3),(6),(5)を評価し、これらのSt_bdがTffに関して単調減少であることから、データ(5)の延長上にデータ(7)を取得し、溢れたデータ(3)を廃棄する。ここで、データ(6),(5),(7)を評価すると、これらのSt_bdがTffに関して下に凸となる。しかし、更なる探索を行うと、現在のフィードフォワード時定数探索ステップdiv_Tffがユーザが設定するフィードフォワード時定数探索最小ステップdmin_Tffを下回ることとなる。よって、探索を終了し、この時点の極小点であるデータ(5)のTffを最適フィードフォワード時定数Tff_optとする。以上、図12〜14に示すフローチャートによる探索概要を図16を参照しながら解説した。   FIG. 16 is an explanatory diagram of the optimum feedforward time constant Tff_opt search process. In the figure, the horizontal axis represents the feedforward time constant Tff, and the vertical axis represents the settling time St_bd for the priority position command pattern at the limit feedforward gain Kff_bd at the feedforward time constant Tff. In the example shown in FIG. 16, Tff_ini = Tff_1. In this flowchart, Tff to be searched next is determined while always evaluating the three-point data regarding Tff. For this reason, first, data (2) and data (3) are acquired at dmax_Tff intervals starting from data (1) of Tff = Tff_1. Next, data (1), (2), and (3) are evaluated, and since these St_bd are monotonically decreasing with respect to Tff, expecting a further decrease in St_bd, and extending the data (3) Data (4) is acquired, and the overflowing data (1) is discarded. Next, the data (2), (3), and (4) are evaluated, and since these St_bd is convex downward with respect to Tff, the optimum feedforward time constant Tff_opt is “data (2) and data (3)”. "Between" and "between data (3) and data (4)". At this time, it cannot be determined on which side Tff_opt exists, but St_bd of data (2) and data (4) at both ends is compared to search for a smaller side. Therefore, data (5) at the midpoint between data (3) and data (4) is acquired, and data (2) is discarded. Next, the data (3), (5), and (4) are evaluated, and since these St_bd is downwardly convex with respect to Tff, the St_bd of the data (3) and the data (4) is compared as described above. The data (6) on the smaller side is acquired, and the data (4) is discarded. Next, the data (3), (6), (5) were evaluated, and since these St_bd were monotonically decreasing with respect to Tff, the data (7) was acquired on the extension of the data (5) and overflowed Discard data (3). Here, when the data (6), (5), and (7) are evaluated, these St_bd are convex downward with respect to Tff. However, if a further search is performed, the current feedforward time constant search step div_Tff will be lower than the feedforward time constant search minimum step dmin_Tff set by the user. Therefore, the search is terminated, and Tff of data (5), which is the local minimum point at this time, is set as the optimum feedforward time constant Tff_opt. The search outline according to the flowcharts shown in FIGS. 12 to 14 has been described above with reference to FIG.

次に、図12〜14のフローチャートを順を追って説明する。まず、200でフローチャートを開始する。初期化処理201では、現在のフィードフォワード時定Tffにフィードフォワード時定数初期値Tff_iniを設定し、現在のフィードフォワード時定数探索ステップdiv_Tffにフィードフォワード時定数探索最大ステップdmax_Tffを設定する。また、前記構造体配列data[]の並びを、格納するTffが小さい順にdata[0],data[1],data[2]と初期化する。この為に、次データ指示インデックスnextをdata[0].next=1、data[1].next=2、data[2].next=0とし、更に、最小Tffデータ指示インデックスsm_indexをsm_index=0とする。また、現在の取得データ数をゼロとする為に初期取得データ数カウンタdat_count=0とし、処理202に移行する。処理202では、前述した図10の限界フィードフォワードゲインKff_bd探索フローチャートを実施し、処理203に移行する。処理203では、現在のフィードフォワード時定数Tffをdata[dat_count].Tffに保存し、現在のTffでの限界フィードフォワードゲインKff_bdをdata[dat_count].Kff_bdに保存する。また、現在のTffおよびKff_bdにおける優先位置指令パターンに対する整定時間St_bdをdata[dat_count].St_bdに保存し、判定処理204に移行する。判定処理204では、初期取得データ数カウンタdat_countの値を評価し、Tffに関するデータ数が3点あれば判定処理205に移行し、データ数が3点無いならば、処理206に移行する。処理206では、現在のフィードフォワード時定数Tffに現在のフィードフォワード時定数探索ステップdiv_Tffを加算し、初期取得データ数カウンタdat_countの値に1加算し、前記処理202に移行する。前記判定処理205では、優先位置指令パターンに対する整定時間St_bdがフィードフォワード時定数Tffに関して下に凸か否かを判定する。ここの処理は具体的には、次の通りであれば、下に凸と判断して、処理207に移行する。すなわち、data[sm_index].St_bd>data[data[sm_index].next].St_bd、且つdata[data[data[sm_index].next].next].St_bd>data[data[sm_index].next].St_bdである。処理207では、現在のフィードフォワード時定数探索ステップdiv_Tffを半減し、判定処理208に移行する。前記判定処理208では、現在のフィードフォワード時定数探索ステップdiv_Tffの大きさがフィードフォワード時定数探索最小ステップdmin_Tff以上か否かを判定し、以上であれば判定処理209に移行し、未満であれば処理210に移行する。前記判定処理209では3点データの内、最小Tffでの優先位置指令パターンに対する整定時間St_bdと、最大TffでのSt_bdの大小関係を比較する。   Next, the flowcharts of FIGS. 12 to 14 will be described in order. First, the flowchart starts at 200. In the initialization process 201, the feedforward time constant initial value Tff_ini is set to the current feedforward time constant Tff, and the feedforward time constant search maximum step dmax_Tff is set to the current feedforward time constant search step div_Tff. Further, the arrangement of the structure array data [] is initialized as data [0], data [1], data [2] in ascending order of Tff to be stored. For this purpose, the next data instruction index next is set to data [0]. next = 1, data [1]. next = 2, data [2]. Next = 0, and the minimum Tff data instruction index sm_index is set to sm_index = 0. Further, in order to set the current number of acquired data to zero, the initial acquired data number counter dat_count = 0 is set, and the process proceeds to processing 202. In the process 202, the limit feedforward gain Kff_bd search flowchart of FIG. In the process 203, the current feedforward time constant Tff is set to data [data_count]. And save the limit feedforward gain Kff_bd at the current Tff with data [dat_count]. Save to Kff_bd. Further, the settling time St_bd for the priority position command pattern at the current Tff and Kff_bd is set to data [dat_count]. The data is stored in St_bd, and the process proceeds to the determination process 204. In the determination process 204, the value of the initial acquisition data number counter dat_count is evaluated. If the number of data regarding Tff is 3, the process proceeds to the determination process 205. If there is no data, the process proceeds to process 206. In process 206, the current feedforward time constant search step div_Tff is added to the current feedforward time constant Tff, 1 is added to the value of the initial acquisition data number counter dat_count, and the process proceeds to the process 202. In the determination processing 205, it is determined whether or not the settling time St_bd for the priority position command pattern is convex downward with respect to the feedforward time constant Tff. Specifically, if the processing here is as follows, it is determined to be convex downward, and the processing proceeds to processing 207. That is, data [sm_index]. St_bd> data [data [sm_index]. next]. St_bd, and data [data [data [sm_index]. next]. next]. St_bd> data [data [sm_index]. next]. St_bd. In the process 207, the current feedforward time constant search step div_Tff is halved, and the process proceeds to the determination process 208. In the determination process 208, it is determined whether or not the current feedforward time constant search step div_Tff is greater than or equal to the feedforward time constant search minimum step dmin_Tff. The process proceeds to process 210. In the determination process 209, the magnitude relation between the settling time St_bd for the priority position command pattern at the minimum Tff and the St_bd at the maximum Tff is compared among the three-point data.

具体的には、data[sm_index].St_bd>data[data[data[sm_index].next].next].St_bdが成立するか否かを判定し、成立する場合には、処理212に移行する。処理212では、新規のデータを2番目に大きいTffと最大Tffとの中点に取得する為に、Tffを2番目に大きいTffとdiv_Tffを加算した値とする。具体的には、現在のフィードフォワード時定数Tffをdata[data[sm_index].next].Tff+div_Tffで更新し、処理213に移行する。処理213では、前述した図10の限界フィードフォワードゲインKff_bd探索フローチャートを実施し、処理214に移行する。処理214では、現在最小のTffに関するデータを保存した配列要素を前記処理213で取得した新規データで上書き更新する。この為に、現在のフィードフォワード時定数Tffをdata[sm_index].Tffに保存し、現在のTffでの限界フィードフォワードゲインKff_bdをdata[sm_index].Kff_bdに保存する。そして、現在のTffおよびKff_bdにおける優先位置指令パターンに対する整定時間St_bdをdata[sm_index].St_bdに保存する。更に、これまで最小のTffに関するデータを保存していた配列要素を、今後2番目に大きいTffに関するデータとなる新規データで上書き更新したことによる次データ指示インデックスnextの乱れを修正する。具体的には、data[sm_index].nextの値を一時変数tmpに退避した上で、data[sm_index].nextをdata[data[sm_index].next].nextで更新する。また、data[data[sm_index].next].nextをsm_indexで更新し、data[data[data[sm_index].next].next].nextを前記一時変数tmpの値で更新する。最後に、sm_indexを前記一時変数tmpの値で更新し、前記判定処理205に移行する。前記判定処理209において、data[sm_index].St_bd>data[data[data[sm_index].next].next].St_bdが成立しない場合には、処理215に移行する。処理215では、新規のデータを最小Tffと2番目に大きいTffとの中点に取得する為に、Tffを2番目に大きいTffからdiv_Tffを減算した値とする。具体的には、現在のフィードフォワード時定数Tffをdata[data[sm_index].next].Tff−div_Tffで更新し、処理216に移行する。処理216では、前述した図10の限界フィードフォワードゲインKff_bd探索フローチャートを実施し、処理217に移行する。処理217では、現在最大のTffに関するデータを保存した配列要素を処理216で取得した新規データで上書き更新する為、現在のフィードフォワード時定数Tffをdata[data[data[sm_index].next].next].Tffに保存する。そして、現在のTffでの限界フィードフォワードゲインKff_bdをdata[data[data[sm_index].next].next].Kff_bdに保存する。また、現在のTffおよびKff_bdにおける優先位置指令パターンに対する整定時間St_bdをdata[data[data[sm_index].next].next].St_bdに保存する。更に、これまで最大のTffに関するデータを保存していた配列要素を、今後2番目に大きいTffに関するデータとなる新規データで上書き更新したことによる次データ指示インデックスnextの乱れを修正する。具体的には、data[sm_index].nextの値を一時変数tmpに退避した上で、data[sm_index].nextをdata[data[sm_index].next].nextで更新する。また、data[data[sm_index].next].nextをdata[data[data[sm_index].next].next].nextで更新する。さらに、data[data[data[sm_index].next].next].nextを前記一時変数tmpの値で更新し、前記判定処理205に移行する。前記判定処理208において、div_Tff≧dmin_Tffが成立しない場合には、処理210に移行する。処理210では、最適フィードフォワード時定数Tff_optに2番目に大きいTffであるdata[data[sm_index].next].Tffをセットする。そして、最適フィードフォワードゲインKff_optに番目に大きいTffにおける限界フィードフォワードゲインKff_bdであるdata[data[sm_index].next].Kff_bdをセットし、終了状態211に移行する。一方、前記判定処理205において、優先位置指令パターンに対する整定時間St_bdがフィードフォワード時定数Tffに関して下に凸でない場合には、判定処理218に移行する。判定処理218では、優先位置指令パターンに対する整定時間St_bdがフィードフォワード時定数Tffに関して下に単調増加か否かを判定する。ここでは、data[sm_index].St_bd<data[data[sm_index].next].St_bd<data[data[data[sm_index].next].next].St_bdならば、単調増加と判断し、処理219に移行する。処理219では、単調増加であることから、St_bdの減少を期待して、最小Tffデータの延長上に新規データを取得する。具体的には、現在のフィードフォワード時定数Tffをdata[sm_index].Tff−div_Tffで更新し、処理220に移行する。処理220では、前述した図10の限界フィードフォワードゲインKff_bd探索フローチャートを実施し、処理221に移行する。処理221では、現在最大のTffに関するデータを保存した配列要素を前記処理220で取得した新規データで上書き更新する。この為に、現在のフィードフォワード時定数Tffをdata[data[data[sm_index].next].next].Tffに保存する。そして、現在のTffでの限界フィードフォワードゲインKff_bdをdata[data[data[sm_index].next].next].Kff_bdに保存する。また、現在のTffおよびKff_bdにおける優先位置指令パターンに対する整定時間St_bdをdata[data[data[sm_index].next].next].St_bdに保存する。更に、これまで最大のTffに関するデータを保存していた配列要素に、最小のTffに関するデータを上書き更新したことによる最小Tffデータ指示インデックスsm_indexの更新を実施する。すなわち、data[data[sm_index].next].nextの代入で実施し、前記判定処理205に移行する。前記判定処理218で単調増加と判定されなかった場合には、単調減少と考えて処理222に移行する。処理222では、単調減少であることから、St_bdの更なる減少を期待して、最大Tffデータの延長上に新規データを取得する。具体的には、現在のフィードフォワード時定数Tffをdata[sm_index].Tff+3×div_Tffで更新し、処理223に移行する。処理223では、前述した図10の限界フィードフォワードゲインKff_bd探索フローチャートを実施し、処理224に移行する。処理224では、現在最小のTffに関するデータを保存した配列要素を前記処理223で取得した新規データで上書き更新する。この為に、現在のフィードフォワード時定数Tffをdata[sm_index].Tffに保存し、現在のTffでの限界フィードフォワードゲインKff_bdをdata[sm_index].Kff_bdに保存する。また、現在のTffおよびKff_bdにおける優先位置指令パターンに対する整定時間St_bdをdata[sm_index].St_bdに保存する。更に、これまで最小のTffに関するデータを保存していた配列要素に、最大のTffに関するデータを上書き更新したことによる最小Tffデータ指示インデックスsm_indexの更新を実施する。すなわち、data[sm_index].nextの代入で実施し、前記判定処理205に移行する。   Specifically, data [sm_index]. St_bd> data [data [data [sm_index]. next]. next]. It is determined whether or not St_bd is established. If it is established, the process proceeds to processing 212. In process 212, in order to acquire new data at the midpoint between the second largest Tff and the maximum Tff, Tff is set to a value obtained by adding the second largest Tff and div_Tff. Specifically, the current feedforward time constant Tff is set to data [data [sm_index]. next]. Update with Tff + div_Tff, and proceed to processing 213. In the process 213, the limit feedforward gain Kff_bd search flowchart of FIG. In process 214, the array element storing the data relating to the current minimum Tff is overwritten and updated with the new data acquired in process 213. For this purpose, the current feedforward time constant Tff is set to data [sm_index]. And save the limit feedforward gain Kff_bd at the current Tff data [sm_index]. Save to Kff_bd. Then, the settling time St_bd for the priority position command pattern at the current Tff and Kff_bd is set to data [sm_index]. Save to St_bd. Further, the disturbance of the next data instruction index next caused by overwriting and updating the array element that has stored the data relating to the minimum Tff so far with new data that will be the data relating to the second largest Tff will be corrected. Specifically, data [sm_index]. After saving the value of next in a temporary variable tmp, data [sm_index]. Next is data [data [sm_index]. next]. Update with next. In addition, data [data [sm_index]. next]. Next is updated with sm_index, and data [data [data [sm_index]. next]. next]. Next is updated with the value of the temporary variable tmp. Finally, sm_index is updated with the value of the temporary variable tmp, and the process proceeds to the determination process 205. In the determination process 209, data [sm_index]. St_bd> data [data [data [sm_index]. next]. next]. When St_bd is not established, the process proceeds to process 215. In process 215, in order to obtain new data at the midpoint between the minimum Tff and the second largest Tff, Tff is set to a value obtained by subtracting div_Tff from the second largest Tff. Specifically, the current feedforward time constant Tff is set to data [data [sm_index]. next]. Update with Tff-div_Tff, and proceed to processing 216. In the process 216, the above-described limit feedforward gain Kff_bd search flowchart of FIG. 10 is executed, and the process proceeds to the process 217. In process 217, the current feedforward time constant Tff is changed to data [data [data [sm_index] .data in order to overwrite and update the array element storing the data related to the current maximum Tff with the new data acquired in process 216. next]. next]. Save to Tff. Then, the limit feedforward gain Kff_bd at the current Tff is set to data [data [data [sm_index]. next]. next]. Save to Kff_bd. In addition, the settling time St_bd for the priority position command pattern at the current Tff and Kff_bd is changed to data [data [data [sm_index]. next]. next]. Save to St_bd. Furthermore, the disturbance of the next data instruction index next caused by overwriting and updating the array element that has stored the data related to the maximum Tff so far with new data that will be the data related to the second largest Tff will be corrected. Specifically, data [sm_index]. After saving the value of next in a temporary variable tmp, data [sm_index]. Next is data [data [sm_index]. next]. Update with next. In addition, data [data [sm_index]. next]. Next, data [data [data [sm_index]. next]. next]. Update with next. Furthermore, data [data [data [sm_index]. next]. next]. Next is updated with the value of the temporary variable tmp, and the process proceeds to the determination process 205. If it is determined in the determination process 208 that div_Tff ≧ dmin_Tff does not hold, the process proceeds to process 210. In the process 210, data [data [sm_index]... Is the second largest Tff in the optimum feedforward time constant Tff_opt. next]. Set Tff. Then, data [data [sm_index]... Is the limit feedforward gain Kff_bd at the Tff that is the second largest to the optimum feedforward gain Kff_opt. next]. Kff_bd is set, and the flow proceeds to the end state 211. On the other hand, in the determination process 205, when the settling time St_bd for the priority position command pattern is not convex downward with respect to the feedforward time constant Tff, the process proceeds to the determination process 218. In the determination process 218, it is determined whether or not the settling time St_bd for the priority position command pattern is monotonously increasing with respect to the feedforward time constant Tff. Here, data [sm_index]. St_bd <data [data [sm_index]. next]. St_bd <data [data [data [sm_index]. next]. next]. If it is St_bd, it is determined that the increase is monotonous, and the process proceeds to processing 219. In the process 219, since it is monotonically increasing, new data is acquired on the extension of the minimum Tff data in anticipation of a decrease in St_bd. Specifically, the current feedforward time constant Tff is set to data [sm_index]. Update with Tff-div_Tff, and proceed to processing 220. In the process 220, the limit feedforward gain Kff_bd search flowchart of FIG. 10 described above is executed, and the process proceeds to the process 221. In the process 221, the array element storing the data related to the current maximum Tff is overwritten and updated with the new data acquired in the process 220. For this purpose, the current feed-forward time constant Tff is set to data [data [data [sm_index]. next]. next]. Save to Tff. Then, the limit feedforward gain Kff_bd at the current Tff is set to data [data [data [sm_index]. next]. next]. Save to Kff_bd. In addition, the settling time St_bd for the priority position command pattern at the current Tff and Kff_bd is changed to data [data [data [sm_index]. next]. next]. Save to St_bd. Further, the minimum Tff data instruction index sm_index is updated by overwriting and updating the data related to the minimum Tff to the array element that has stored the data related to the maximum Tff so far. That is, data [data [sm_index]. next]. This is performed by assigning “next”, and the process proceeds to the determination process 205. If the determination process 218 does not determine that the increase is monotonous, the process proceeds to process 222 assuming that the decrease is monotonous. In the process 222, since it is a monotonic decrease, new data is acquired on the extension of the maximum Tff data in anticipation of a further decrease in St_bd. Specifically, the current feedforward time constant Tff is set to data [sm_index]. Update with Tff + 3 × div_Tff, and proceed to processing 223. In process 223, the limit feedforward gain Kff_bd search flowchart of FIG. 10 described above is implemented, and the process proceeds to process 224. In the process 224, the array element storing the data related to the current minimum Tff is overwritten and updated with the new data acquired in the process 223. For this purpose, the current feedforward time constant Tff is set to data [sm_index]. And save the limit feedforward gain Kff_bd at the current Tff data [sm_index]. Save to Kff_bd. Further, the settling time St_bd for the priority position command pattern at the current Tff and Kff_bd is set to data [sm_index]. Save to St_bd. Further, the minimum Tff data instruction index sm_index is updated by overwriting and updating the data related to the maximum Tff on the array element that has been storing data related to the minimum Tff so far. That is, data [sm_index]. This is performed by assigning “next”, and the process proceeds to the determination process 205.

このように、予め登録した全位置指令パターンにつき、オーバーシュート量を所定(許容)値以内に抑えつつ、指定された特定の位置指令パターンでの整定時間を最小化する位置フィードフォワード制御パラメータの自動探索を行うことができる。   As described above, the automatic position feedforward control parameter that minimizes the settling time for the specified specific position command pattern while suppressing the overshoot amount within a predetermined (allowable) value for all the previously registered position command patterns. Search can be performed.

なお、処理203、処理214、処理217、処理221、処理224において、data[].St_bdには、優先位置指令パターンに対する整定時間St_bdをセットしたが、評価した全位置指令パターンの内、最も長かった整定時間をセットしてもよい。   In the processing 203, processing 214, processing 217, processing 221, and processing 224, data []. In St_bd, the settling time St_bd for the priority position command pattern is set. However, the longest settling time among all the evaluated position command patterns may be set.

次に、調整パラメータ設定画面の実施例を図17,図18に示す。   Next, examples of adjustment parameter setting screens are shown in FIGS.

図17は、本発明の第1の実施例であるフィードバック制御パラメータの自動調整に際して、ユーザが調整条件を入力するパソコンの画面構成例である。図17における各入力項目は、前述の各調整パラメータに対応し、例えば、290は最小位置応答周波数Fp_minに、291は最大位置応答周波数Fp_maxに、292は位置応答周波数増分ステップdiv_Fpに対応する。また、293は最小速度応答周波数Fs_minに、294は最大速度応答周波数Fs_maxに、295は速度応答周波数増分ステップdiv_Fsに、296は位置偏差θの振動振幅許容値θvibに、297は整定監視タイムアウト時間timeoutに対応する。また、ステップ状の位置指令を自動生成するか、手動設定するかをユーザ側で選択可能とする為に、排他的に選択できるチェックボックス298と299を設けた。ここで、298を選択した場合、図2のフローチャートに示した処理が実行され、位置指令パターンが自動設定される。一方、299を選択した場合には、加減速時間300、移動距離301、最大速度302の各項目をユーザ自身が設定し、位置指令パターンを決定する必要がある。 FIG. 17 is a screen configuration example of a personal computer in which a user inputs adjustment conditions when the feedback control parameter is automatically adjusted according to the first embodiment of the present invention. Each input item in FIG. 17 corresponds to each adjustment parameter described above. For example, 290 corresponds to the minimum position response frequency Fp_min, 291 corresponds to the maximum position response frequency Fp_max, and 292 corresponds to the position response frequency increment step div_Fp. Also, 293 to a minimum speed response frequency Fs_min, 294 is the maximum speed response frequency Fs_max, 295 the speed response frequency increment Div_Fs, 296 the oscillation amplitude tolerance theta vib of the positional deviation theta e, 297 is settling monitor timeouts Corresponds to time timeout. In addition, check boxes 298 and 299 that can be exclusively selected are provided so that the user can select whether to automatically generate a step-like position command or manually set the position command. Here, when 298 is selected, the processing shown in the flowchart of FIG. 2 is executed, and the position command pattern is automatically set. On the other hand, when 299 is selected, it is necessary for the user himself / herself to set the acceleration / deceleration time 300, the moving distance 301, and the maximum speed 302 and determine the position command pattern.

図18は、本発明の第2の実施例である位置フィードフォワード制御パラメータの自動調整に際して、ユーザが調整条件を入力するパソコンの画面構成例である。図18における各入力項目は、前述の各調整パラメータに対応し、例えば、311はフィードフォワードゲイン探索最小ステップdmin_Kffに、312はフィードフォワードゲイン探索最大ステップdmax_Kffに対応する。また、314はフィードフォワード時定数初期値Tff_iniに、316は同じく時定数探索最小ステップdmin_Tffに、317は同じく時定数探索最大ステップdmax_Tffに、318は整定監視タイムアウト時間timeoutに対応する。   FIG. 18 is a screen configuration example of a personal computer in which the user inputs adjustment conditions when the position feedforward control parameter is automatically adjusted according to the second embodiment of the present invention. Each input item in FIG. 18 corresponds to each adjustment parameter described above. For example, 311 corresponds to the minimum feedforward gain search step dmin_Kff, and 312 corresponds to the maximum feedforward gain search step dmax_Kff. Further, 314 corresponds to the feedforward time constant initial value Tff_ini, 316 also corresponds to the time constant search minimum step dmin_Tff, 317 similarly corresponds to the time constant search maximum step dmax_Tff, and 318 corresponds to the settling monitoring timeout time timeout.

また、320から324はそれぞれ、位置指令パターン1から位置指令パターン5の調整条件設定画面であり、320から324の番号で指し示したパターン名の表記部分をマウスでクリックすることにより、該パターンの設定画面を開くことができる。なお、図18では、位置指令パターン1の設定画面が開いた状態であるが、他の位置指令パターンの設定画面も同様の構成である。よって、300には該位置指令パターンでの加減速時間、301には該位置指令パターンでの移動距離、302には該位置指令パターンでの最大速度を設定し、該位置指令パターンを決定する。また、325は該位置指令パターンでのオーバーシュート量の許容値に、326は該位置指令パターンでの整定判定用偏差posin_plsに対応する。チェックボックス327は該位置指令パターンでの調整を行うか否かを設定する為のものである。また、位置フィードフォワード時定数調整の実施有無を設定する為に、選択項目313を設けた。313の選択項目には「調整あり」と「調整なし」があり、「調整なし」を選択すると、図10のフローチャートを実行し、現在の位置フィードフォワード時定数に対して、位置フィードフォワードゲインのみが調整される。一方、「調整あり」を選択した場合には、図12〜14のフローチャートを実行し、位置フィードフォワードゲイン・時定数両方の調整が行われる。また、整定時間を最小化する最優先位置指令パターンを指定する為に、選択項目319を設けた。313の選択項目では、前記チェックボックス327でチェックを付けた位置指令パターンと「整定時間最大パターン」の中から1つを選択することができる。   Reference numerals 320 to 324 are adjustment condition setting screens for the position command pattern 1 to the position command pattern 5, respectively. By clicking a pattern name notation indicated by the numbers 320 to 324 with the mouse, the setting of the pattern is performed. You can open the screen. In FIG. 18, the position command pattern 1 setting screen is open, but the other position command pattern setting screens have the same configuration. Therefore, the acceleration / deceleration time in the position command pattern is set in 300, the moving distance in the position command pattern is set in 301, and the maximum speed in the position command pattern is set in 302, and the position command pattern is determined. Further, 325 corresponds to an allowable value of the overshoot amount in the position command pattern, and 326 corresponds to a settling determination deviation posin_pls in the position command pattern. A check box 327 is used to set whether or not to perform adjustment with the position command pattern. In addition, a selection item 313 is provided to set whether or not position feedforward time constant adjustment is performed. The selection item 313 includes “adjustment” and “no adjustment”. When “no adjustment” is selected, the flowchart of FIG. 10 is executed, and only the position feedforward gain is compared with the current position feedforward time constant. Is adjusted. On the other hand, when “with adjustment” is selected, the flowcharts of FIGS. 12 to 14 are executed to adjust both the position feedforward gain and the time constant. In addition, a selection item 319 is provided for designating a top priority position command pattern that minimizes the settling time. In the selection item 313, one of the position command pattern checked with the check box 327 and the “maximum settling time pattern” can be selected.

図19は、第1の実施例、第2の実施例に共通する本発明を採用できる電動機制御装置の全体のシステム構成図である。図19において、341はボールネジユニット、342は電動機、343は電動機343の位置検出器、345は負荷344を搭載するスライダー、339はサーボアンプ、346は電動機342の位置検出信号をサーボアンプ339に伝送するケーブルである。また、347はサーボアンプ339から電動機342に駆動電力を供給するケーブル、349はサーボアンプに電源を供給するケーブルである。352は、フィードバック制御パラメータおよび位置フィードフォワード制御パラメータの自動調整に際して、ユーザが調整条件を入力するパソコン、353はパソコン352からの調整条件をサーボアンプ339に伝送する為の通信ケーブルである。   FIG. 19 is an overall system configuration diagram of an electric motor control apparatus that can employ the present invention common to the first and second embodiments. In FIG. 19, 341 is a ball screw unit, 342 is an electric motor, 343 is a position detector of the electric motor 343, 345 is a slider on which a load 344 is mounted, 339 is a servo amplifier, 346 transmits a position detection signal of the electric motor 342 to the servo amplifier 339. Cable. Reference numeral 347 denotes a cable for supplying driving power from the servo amplifier 339 to the electric motor 342. Reference numeral 349 denotes a cable for supplying power to the servo amplifier. A personal computer 352 is used to input adjustment conditions when the feedback control parameter and the position feedforward control parameter are automatically adjusted. A communication cable 353 is used to transmit the adjustment conditions from the personal computer 352 to the servo amplifier 339.

次に、前述の第1の実施形態、第2の実施形態の説明に用いた図1、図8の符号と図19における符号との対応関係を説明する。電動機1は342に、位置検出器5は343に、負荷2は344および345に、駆動軸3はボールネジユニット341内部のボールネジに対応する。また、次の構成要素はサーボアンプ339に含まれる。すなわち、電力変換器4を筆頭に、減算器6、位置制御器7、速度演算器8、減算器9、速度制御器10、電流検出器11、減算器12、および電流制御器13等の通常の制御装置である。また、本発明によって付加されたフィードバック制御パラメータチューニング部14または17のほか、位置フィードフォワード制御器15、加算器16なども、サーボアンプ339に含まれている。   Next, the correspondence relationship between the reference numerals in FIGS. 1 and 8 and the reference numerals in FIG. 19 used in the description of the first and second embodiments will be described. The electric motor 1 corresponds to 342, the position detector 5 corresponds to 343, the load 2 corresponds to 344 and 345, and the drive shaft 3 corresponds to a ball screw inside the ball screw unit 341. Further, the following components are included in the servo amplifier 339. That is, with the power converter 4 at the top, the subtractor 6, the position controller 7, the speed calculator 8, the subtractor 9, the speed controller 10, the current detector 11, the subtractor 12, and the current controller 13 are usually used. It is a control device. In addition to the feedback control parameter tuning unit 14 or 17 added by the present invention, the position feedforward controller 15 and the adder 16 are also included in the servo amplifier 339.

本発明の第1の実施例による電動機制御装置のフィードバック制御パラメータの自動調整法を示す制御ブロック図。The control block diagram which shows the automatic adjustment method of the feedback control parameter of the motor control apparatus by 1st Example of this invention. 図1の実施例における位置指令パターンの生成フロー図。FIG. 2 is a flow chart for generating a position command pattern in the embodiment of FIG. 1. フィードバック制御パラメータ自動調整のための位置指令パターンの生成手順におけるトルク、速度、並びに位置指令パターンの波形図。FIG. 6 is a waveform diagram of torque, speed, and position command pattern in a procedure for generating a position command pattern for automatic adjustment of feedback control parameters. 第1の実施例によるフィードバック制御パラメータの自動調整フロー図。The automatic adjustment flowchart of the feedback control parameter by a 1st Example. 第1の実施例における振動振幅・整定時間・オーバーシュート量の計測処理フロー図その1。FIG. 1 is a measurement processing flow diagram 1 of vibration amplitude, settling time, and overshoot amount in the first embodiment. 第1の実施例における振動振幅・整定時間・オーバーシュート量の計測処理フロー図その2。FIG. 2 is a measurement process flow diagram 2 for vibration amplitude, settling time, and overshoot amount in the first embodiment. 第1の実施例における振動振幅・整定時間・オーバーシュート量の計測法説明波形図。FIG. 6 is a waveform diagram for explaining a measurement method of vibration amplitude, settling time, and overshoot amount in the first embodiment. 本発明の第2の実施例によるフィードフォワード制御パラメータの自動調整手段を加えた電動機制御装置の自動調整装置の制御ブロック図。The control block diagram of the automatic adjustment apparatus of the motor control apparatus which added the automatic adjustment means of the feedforward control parameter by 2nd Example of this invention. 図8の実施例におけるフィードフォワードゲインと整定時間・オーバーシュートの関係説明図。FIG. 9 is an explanatory diagram of the relationship between the feedforward gain and settling time / overshoot in the embodiment of FIG. 8. 第2の実施例におけるフィードフォワードゲインKffの自動調整法の処理フロー図。The processing flow figure of the automatic adjustment method of the feedforward gain Kff in a 2nd Example. 第2の実施例におけるフィードフォワード時定数と限界フィードフォワードゲインKff_bdと整定時間の関係図。The relationship figure of the feedforward time constant in 2nd Example, limit feedforward gain Kff_bd, and settling time. 限界フィードフォワードゲインKff_bd探索フローチャートその1。Limit feed forward gain Kff_bd search flowchart part 1. 限界フィードフォワードゲインKff_bd探索フローチャートその2。Limit feedforward gain Kff_bd search flowchart part 2. 限界フィードフォワードゲインKff_bd探索フローチャートその3。Limit feedforward gain Kff_bd search flowchart part 3. 最適フィードフォワード時定数Tff_opt探索用データ構造説明図。The data structure explanatory drawing for optimal feedforward time constant Tff_opt search. 最適フィードフォワード時定数Tff_opt探索過程説明図。Explanatory drawing of the optimal feedforward time constant Tff_opt search process. フィードバック制御パラメータ自動調整機能設定画面例。Example of feedback control parameter automatic adjustment function setting screen. 位置フィードフォワード制御パラメータ自動調整機能設定画面例。Position feed forward control parameter automatic adjustment function setting screen example. 本発明を採用できる電動機制御装置の全体システム一例構成図。BRIEF DESCRIPTION OF THE DRAWINGS FIG.

符号の説明Explanation of symbols

1…電動機、2…駆動対象負荷、3…連結軸、4…電力変換器、5…位置検出器、6…減算器、7…位置制御器、8…速度演算器、9…減算器、10…速度制御器、11…電流検出器、12…減算器、13…電流制御器、14…フィードバック制御パラメータチューニング部、15…位置フィードフォワード制御器、16…加算器、17…フィードバック及び位置フィードフォワード制御パラメータチューニング部、θ …位置指令パターン、θ…位置検出値、θ…位置偏差、ω …速度指令値、ω…速度検出値、ω…速度偏差、I …トルク電流指令値、I…トルク電流検出値、I…電流偏差、ωFB …位置制御器出力信号、ωFF …位置フィードフォワード制御器出力信号。 DESCRIPTION OF SYMBOLS 1 ... Electric motor, 2 ... Drive target load, 3 ... Connection shaft, 4 ... Power converter, 5 ... Position detector, 6 ... Subtractor, 7 ... Position controller, 8 ... Speed calculator, 9 ... Subtractor, 10 ... speed controller, 11 ... current detector, 12 ... subtractor, 13 ... current controller, 14 ... feedback control parameter tuning unit, 15 ... position feedforward controller, 16 ... adder, 17 ... feedback and position feedforward Control parameter tuning unit, θ M * ... position command pattern, θ M ... position detection value, θ e ... position deviation, ω M * ... speed command value, ω M ... speed detection value, ω e ... speed deviation, I q * ... Torque current command value, I q ... Torque current detection value, I e ... Current deviation, ω FB * ... Position controller output signal, ω FF * ... Position feedforward controller output signal.

Claims (24)

連結軸を介して駆動対象負荷と結合した電動機と、前記電動機を駆動する電力変換器と、位置指令値と前記電動機の位置検出値との偏差に応じて速度指令値を出力する位置制御器と、前記速度指令値と電動機の速度検出値の偏差に応じてトルク電流指令値を出力する速度制御器と、前記トルク電流指令値と前記電動機に供給されるトルク電流検出値との偏差に応じて前記電力変換器の出力電流を調整する電流制御器を備えた電動機の制御装置において、前記位置制御器の位置指令値として連続的に変化する調整運転用の位置指令パターンを生成するステップと、この位置指令パターンを前記位置制御器の位置指令値として与えた際に、位置偏差波形の振動振幅が所定値を超えない範囲内で、前記位置制御器および/または前記速度制御器の応答周波数を増加するステップとを備えたことを特徴とする電動機制御装置の自動調整法。   An electric motor coupled with a load to be driven via a connecting shaft; a power converter that drives the electric motor; and a position controller that outputs a speed command value according to a deviation between a position command value and a position detection value of the electric motor; A speed controller that outputs a torque current command value according to a deviation between the speed command value and a detected speed value of the motor, and a deviation between the torque current command value and a detected torque current value supplied to the motor. In a motor control device including a current controller that adjusts an output current of the power converter, a step of generating a position command pattern for adjustment operation that continuously changes as a position command value of the position controller; and When the position command pattern is given as the position command value of the position controller, the response of the position controller and / or the speed controller is within a range where the vibration amplitude of the position deviation waveform does not exceed a predetermined value. Automatic adjustment method of a motor control device characterized by comprising the step of increasing the frequency. 請求項1において、前記電動機と前記連結軸と前記駆動対象負荷を含む駆動系の合計慣性モーメント値に基づいて、前記位置指令パターンが連続的に変化する変化の度合いを決定するステップを備えたことを特徴とする電動機制御装置の自動調整法。   2. The method according to claim 1, further comprising: determining a degree of change in which the position command pattern continuously changes based on a total moment of inertia value of the drive system including the electric motor, the connecting shaft, and the load to be driven. A method for automatically adjusting an electric motor control device. 請求項1において、前記位置指令パターンの変化の度合いは、電動機の速度がその許容最大速度を超えないように決定することを特徴とする電動機制御装置の自動調整法。   2. The motor control device automatic adjustment method according to claim 1, wherein the degree of change of the position command pattern is determined so that the speed of the motor does not exceed an allowable maximum speed. 請求項1において、前記位置指令パターンの最終値である位置指令による移動量を、前記位置偏差波形の振動振幅の許容値の関数として設定することを特徴とする電動機制御装置の自動調整法。   2. The automatic adjustment method for an electric motor control device according to claim 1, wherein a movement amount by a position command which is a final value of the position command pattern is set as a function of an allowable value of a vibration amplitude of the position deviation waveform. 請求項1において、前記位置指令パターンの全期間が、実質的に、電動機の加速期間と減速期間の和となるように、前記位置指令パターンを生成することを特徴とする電動機制御装置の自動調整法。   2. The automatic adjustment of the motor control device according to claim 1, wherein the position command pattern is generated so that the entire period of the position command pattern is substantially the sum of an acceleration period and a deceleration period of the motor. Law. 請求項1において、前記位置指令パターンを自動生成する機能と、手動設定する機能をユーザの選択入力に応じて切り替えることを特徴とする電動機制御装置の自動調整法。   The automatic adjustment method for an electric motor control device according to claim 1, wherein a function for automatically generating the position command pattern and a function for manual setting are switched in accordance with a user's selection input. 請求項1において、前記位置偏差波形の振動振幅が減少傾向のとき、この波形の低位をホールドし、前記位置偏差波形の振動振幅が増加傾向のとき、この波形の高位をホールドし、前記位置偏差波形の振動振幅を算出することを特徴とする電動機制御装置の自動調整法。   2. The position deviation waveform according to claim 1, wherein when the vibration amplitude of the position deviation waveform tends to decrease, a low level of the waveform is held, and when the vibration amplitude of the position deviation waveform tends to increase, the high level of the waveform is held, An automatic adjustment method for an electric motor control device, characterized by calculating a vibration amplitude of a waveform. 請求項1において、前記位置偏差波形の振動振幅が所定値を超えるまで前記位置制御器の応答周波数を所定の増分で増加する第1ステップと、前記位置偏差波形の振動振幅が許容値を超えたときは前記位置制御器の応答周波数を前記位置偏差波形の振動振幅が前記所定値を超えない範囲まで戻した上で、前記速度制御器の応答周波数を所定の増分で増加する第2ステップと、前記第1第2ステップを繰り返し、この繰り返しによって、前記位置制御器の応答周波数を前記位置偏差波形の振動振幅を所定値以下とする条件で増加できないとき、前記速度制御器の応答周波数および前記位置制御器の応答周波数を前記位置偏差波形の振動振幅が所定値を超えない範囲まで戻す第3ステップを備えたことを特徴とする電動機制御装置の自動調整法。   2. The first step of increasing the response frequency of the position controller in a predetermined increment until the vibration amplitude of the position deviation waveform exceeds a predetermined value, and the vibration amplitude of the position deviation waveform exceeds an allowable value. When returning the response frequency of the position controller to a range where the vibration amplitude of the position deviation waveform does not exceed the predetermined value, the second step of increasing the response frequency of the speed controller by a predetermined increment, When the first and second steps are repeated, and the repetition frequency of the position controller cannot be increased under the condition that the vibration amplitude of the position deviation waveform is less than or equal to a predetermined value, the response frequency of the speed controller and the position An automatic adjustment method for an electric motor control device comprising a third step of returning a response frequency of a controller to a range in which a vibration amplitude of the position deviation waveform does not exceed a predetermined value. 連結軸を介して駆動対象負荷と結合した電動機と、前記電動機を駆動する電力変換器と、位置指令値と前記電動機の位置検出値との偏差に応じて位置制御器出力を出力する位置制御器と、前記位置指令値を入力として位置フィードフォワード信号を出力する位置フィードフォワード制御器と、前記位置制御器出力と前記位置フィードフォワード信号とを加算し速度指令値を出力する加算器と、前記速度指令値と電動機の速度検出値の偏差に応じてトルク電流指令値を出力する速度制御器と、前記トルク電流指令値と前記電動機に供給されるトルク電流検出値との偏差に応じて前記電力変換器の出力電流を調整する電流制御器を備えた電動機の制御装置において、予め登録した複数の位置指令パターンを前記位置制御器の位置指令として複数の運転動作を行うステップと、複数の前記運転動作においてオーバーシュート量が所定値を超えないように、前記位置フィードフォワード制御器の制御パラメータを調整するステップとを備えたことを特徴とする電動機制御装置の自動調整法。   An electric motor coupled to a drive target load via a connecting shaft, a power converter that drives the electric motor, and a position controller that outputs a position controller output in accordance with a deviation between a position command value and a position detection value of the electric motor A position feedforward controller that receives the position command value as an input and outputs a position feedforward signal; an adder that adds the position controller output and the position feedforward signal and outputs a speed command value; and the speed A speed controller that outputs a torque current command value according to a deviation between the command value and a detected speed value of the motor; and the power conversion according to a deviation between the torque current command value and a detected torque current value supplied to the motor. In a motor control device including a current controller that adjusts an output current of the controller, a plurality of position command patterns registered in advance are used as a position command of the position controller. A step of performing a rolling operation, and a step of adjusting a control parameter of the position feedforward controller so that an overshoot amount does not exceed a predetermined value in the plurality of driving operations. Automatic adjustment method. 請求項9において、複数の前記位置指令パターンのうちの特定の位置指令パターンにおける整定時間を最小化するように、前記位置フィードフォワード制御器の制御パラメータを調整することを特徴とする電動機制御装置の自動調整法。   The motor control device according to claim 9, wherein the control parameter of the position feedforward controller is adjusted so as to minimize a settling time in a specific position command pattern among the plurality of position command patterns. Automatic adjustment method. 請求項10において、整定時間を最小化する前記特定の位置指令パターンを、ユーザの指定入力に応じて切り替えることを特徴とする電動機制御装置の自動調整法。   The automatic adjustment method for an electric motor control device according to claim 10, wherein the specific position command pattern that minimizes the settling time is switched according to a user's designated input. 請求項10において、整定時間を最小化する前記特定の位置指令パターンとして、予め登録した位置指令パターンの中から、最も整定時間が長くなる位置指令パターンに自動設定することを特徴とする電動機制御装置の自動調整法。   11. The electric motor control device according to claim 10, wherein the specific position command pattern for minimizing settling time is automatically set to a position command pattern having the longest settling time from among previously registered position command patterns. Automatic adjustment method. 請求項9において、前記調整の対象は、前記位置指令パターンをθ 、前記位置フィードフォワード信号をωFF 、ラプラス演算子をsとするとき、(7)式の伝達関数で表現されるフィードフォワードゲインKffおよびフィードフォワード時定数Tffであることを特徴とする電動機制御装置の自動調整法。
Figure 2007135344
10. The adjustment target according to claim 9, wherein the position command pattern is θ M * , the position feed-forward signal is ω FF * , and the Laplace operator is s, and is expressed by a transfer function of equation (7). An automatic adjustment method for an electric motor control device, characterized by a feedforward gain Kff and a feedforward time constant Tff.
Figure 2007135344
請求項9において、前記フィードフォワード制御器の時定数を固定した条件で、前記フィードフォワード制御器のゲインを更新し、各フィードフォワードゲインに対して、予め登録した複数の位置指令パターンでの運転動作を行い、複数の前記位置指令パターンに関してオーバーシュート量が所定値を超えない限界フィードフォワードゲインに前記フィードフォワード制御器のフィードフォワードゲインを調整することを特徴とする電動機制御装置の自動調整法。   10. The operation according to claim 9, wherein the gain of the feedforward controller is updated under a condition in which the time constant of the feedforward controller is fixed, and a plurality of position command patterns registered in advance for each feedforward gain. And adjusting the feedforward gain of the feedforward controller to a limit feedforward gain in which the overshoot amount does not exceed a predetermined value with respect to the plurality of position command patterns. 請求項14において、前記フィードフォワード時定数を更新しつつ、各フィードフォワード時定数に対して、前記フィードフォワードゲインを前記最大値に調整し、各フィードフォワード時定数に対応する限界フィードフォワードゲインにおける整定時間を計測するステップと、前記フィードフォワード時定数に対応する限界フィードフォワードゲインにおける整定時間を最小とする前記フィードフォワード時定数を極値探索により求めるステップとを備えたことを特徴とする電動機制御装置の自動調整法。   15. The settling at a limit feedforward gain corresponding to each feedforward time constant according to claim 14, wherein the feedforward time constant is updated, the feedforward gain is adjusted to the maximum value for each feedforward time constant. An electric motor control device comprising: a step of measuring time; and a step of obtaining the feedforward time constant that minimizes a settling time in a limit feedforward gain corresponding to the feedforward time constant by an extreme value search. Automatic adjustment method. 請求項15において、前記極値探索は、等間隔に前記フィードフォワード時定数の偏差を与えて取得した3つの前記フィードフォワード時定数に関する前記限界フィードフォワードゲインにおける整定時間を比較することを特徴とする電動機制御装置の自動調整法。   16. The extreme value search according to claim 15, wherein settling times in the limit feedforward gain are compared with respect to three feedforward time constants obtained by giving deviations of the feedforward time constant at equal intervals. Automatic adjustment method for motor controller. 請求項16において、前記フィードフォワード時定数に関する前記限界フィードフォワードゲインにおける整定時間の3点のデータの比較に際し、横軸を前記フィードフォワード時定数、縦軸を前記限界フィードフォワードゲインにおける整定時間とするグラフを仮定し、グラフが下に凸か、単調増加か、単調減少かを判定するステップと、この判定結果が下に凸ならば、3点データのうち、中間データと残る両側データのいずれか一方の中点に新規に1データを取得するステップと、前記判定結果が単調増加ならば、データ間隔を変えないで3点データのうち、最小の時定数側に新規に1データを取得するステップと、前記判定結果が単調減少ならば、データ間隔を変えないで3点データのうち、最大の時定数側に新規に1データを取得するステップとを備えたことを特徴とする電動機制御装置の自動調整法。   17. In the comparison of three points of settling time in the limit feedforward gain with respect to the feedforward time constant, the horizontal axis is the feedforward time constant and the vertical axis is the settling time in the limit feedforward gain. Assuming a graph, the step of determining whether the graph is convex downward, monotonically increasing or monotonic decreasing, and if this determination result is convex downward, either of the intermediate data and the remaining two-sided data of the three-point data A step of newly acquiring one data at one midpoint, and a step of newly acquiring one data on the smallest time constant side among the three points of data without changing the data interval if the determination result is monotonously increased. If the determination result is monotonically decreasing, one new data is acquired on the maximum time constant side among the three points without changing the data interval. Automatic adjustment method of a motor control device characterized by comprising the steps. 請求項15において、整定時間を測定する為の監視時間をユーザの入力に応じて設定し、前記監視時間の起点を、位置偏差がゼロクロスした時点またはその近傍とすることを特徴とする電動機制御装置の自動調整法。   16. The motor control device according to claim 15, wherein a monitoring time for measuring the settling time is set according to a user input, and a starting point of the monitoring time is set to a time point when a position deviation is zero-crossed or in the vicinity thereof. Automatic adjustment method. 連結軸を介して駆動対象負荷と結合した電動機と、前記電動機を駆動する電力変換器と、位置指令値と前記電動機の位置検出値との偏差に応じて位置制御器出力を出力する位置制御器と、前記位置指令値を入力として位置フィードフォワード信号を出力する位置フィードフォワード制御器と、前記位置制御器出力と前記位置フィードフォワード信号とを加算し速度指令値を出力する加算器と、前記速度指令値と電動機の速度検出値の偏差に応じてトルク電流指令値を出力する速度制御器と、前記トルク電流指令値と前記電動機に供給されるトルク電流検出値との偏差に応じて前記電力変換器の出力電流を調整する電流制御器とを備えた電動機の制御装置において、位置指令パターンを与えた際の位置偏差波形の振動振幅が所定値を超えない範囲内で前記位置制御器および/または前記速度制御器の応答周波数を増加するステップと、予め登録した複数の前記位置指令パターンを前記位置制御器に対する位置指令として複数の運転動作を行うステップと、複数の前記運転動作においてオーバーシュート量が所定値を超えないように、前記位置フィードフォワード制御器の制御パラメータを調整するステップとを備えたことを特徴とする電動機制御装置の自動調整法。   An electric motor coupled to a drive target load via a connecting shaft, a power converter that drives the electric motor, and a position controller that outputs a position controller output in accordance with a deviation between a position command value and a position detection value of the electric motor A position feedforward controller that receives the position command value as an input and outputs a position feedforward signal; an adder that adds the position controller output and the position feedforward signal and outputs a speed command value; and the speed A speed controller that outputs a torque current command value according to a deviation between the command value and a detected speed value of the motor; and the power conversion according to a deviation between the torque current command value and a detected torque current value supplied to the motor. In a motor control device having a current controller for adjusting the output current of the generator, the vibration amplitude of the position deviation waveform when the position command pattern is given does not exceed a predetermined value. Increasing the response frequency of the position controller and / or the speed controller in a plurality of steps, performing a plurality of driving operations using a plurality of pre-registered position command patterns as position commands for the position controller, and a plurality of steps Adjusting the control parameter of the position feedforward controller so that the amount of overshoot does not exceed a predetermined value in the driving operation. 請求項19において、前記オーバーシュート量が所定値を超えない条件を満たし、且つ、それぞれの位置指令パターンにおける整定時間が小さくなる前記位置フィードフォワード制御器の制御パラメータを探索するステップを備えたことを特徴とする電動機制御装置の自動調整法。   20. The method of claim 19, further comprising a step of searching for a control parameter of the position feedforward controller that satisfies a condition that the amount of overshoot does not exceed a predetermined value and that reduces a settling time in each position command pattern. An automatic adjustment method for a motor control device. 請求項19において、ユーザインターフェースから、調整条件の設定入力を受付けるステップと、複数の前記位置指令パターンの1つの選択入力を受付けるステップとを備えたことを特徴とする電動機制御装置の自動調整法。   20. The automatic adjustment method for an electric motor control device according to claim 19, further comprising a step of receiving an adjustment condition setting input from a user interface and a step of receiving one selection input of the plurality of position command patterns. 連結軸を介して駆動対象負荷と結合した電動機と、前記電動機を駆動する電力変換器と、位置指令値と前記電動機の位置検出値との偏差に応じて速度指令値を出力する位置制御器と、前記速度指令値と電動機の速度検出値の偏差に応じてトルク電流指令値を出力する速度制御器と、前記トルク電流指令値と前記電動機に供給されるトルク電流検出値との偏差に応じて前記電力変換器の出力電流を調整する電流制御器を備えた電動機の制御装置の自動調整装置において、前記位置制御器の位置指令値として連続的に変化する調整運転用の位置指令パターンを生成する位置指令パターン生成手段と、この位置指令パターンを前記位置制御器の位置指令値として与えて前記電動機の制御装置を運転した際に、位置偏差波形の振動振幅が所定値を超えない範囲内で、前記位置制御器および/または前記速度制御器の応答周波数を増加させる応答周波数最大化手段とを備えたことを特徴とする電動機制御装置の自動調整装置。   An electric motor coupled with a load to be driven via a connecting shaft; a power converter that drives the electric motor; and a position controller that outputs a speed command value according to a deviation between a position command value and a position detection value of the electric motor; A speed controller that outputs a torque current command value according to a deviation between the speed command value and a detected speed value of the motor, and a deviation between the torque current command value and a detected torque current value supplied to the motor. In an automatic adjustment device for a motor control device including a current controller for adjusting an output current of the power converter, a position command pattern for adjustment operation that continuously changes as a position command value of the position controller is generated. When a position command pattern generating means and this position command pattern are given as a position command value of the position controller and the motor controller is operated, the vibration amplitude of the position deviation waveform exceeds a predetermined value. In the stomach range, automatic adjustment device of a motor control apparatus characterized by comprising a response frequency up means for increasing the response frequency of the position controller and / or the speed controller. 連結軸を介して駆動対象負荷と結合した電動機と、前記電動機を駆動する電力変換器と、位置指令値と前記電動機の位置検出値との偏差に応じて位置制御器出力を出力する位置制御器と、前記位置指令値を入力として位置フィードフォワード信号を出力する位置フィードフォワード制御器と、前記位置制御器出力と前記位置フィードフォワード信号とを加算し速度指令値を出力する加算器と、前記速度指令値と電動機の速度検出値の偏差に応じてトルク電流指令値を出力する速度制御器と、前記トルク電流指令値と前記電動機に供給されるトルク電流検出値との偏差に応じて前記電力変換器の出力電流を調整する電流制御器を備えた電動機の制御装置の自動調整装置において、予め登録した複数の位置指令パターンを前記位置制御器の位置指令として与え、複数の運転動作を行う調整運転手段と、複数の前記運転動作においてオーバーシュート量が所定値を超えないように、前記位置フィードフォワード制御器の制御パラメータを調整するパラメータ調整手段とを備えたことを特徴とする電動機制御装置の自動調整装置。   An electric motor coupled to a drive target load via a connecting shaft, a power converter that drives the electric motor, and a position controller that outputs a position controller output in accordance with a deviation between a position command value and a position detection value of the electric motor A position feedforward controller that receives the position command value as an input and outputs a position feedforward signal; an adder that adds the position controller output and the position feedforward signal and outputs a speed command value; and the speed A speed controller that outputs a torque current command value according to a deviation between the command value and a detected speed value of the motor; and the power conversion according to a deviation between the torque current command value and a detected torque current value supplied to the motor. In an automatic adjustment device for an electric motor control device provided with a current controller for adjusting the output current of the device, a plurality of position command patterns registered in advance are assigned to the position finger of the position controller. And adjusting operation means for performing a plurality of driving operations, and parameter adjusting means for adjusting the control parameter of the position feedforward controller so that the overshoot amount does not exceed a predetermined value in the plurality of driving operations. An automatic adjustment device for an electric motor control device. 連結軸を介して駆動対象負荷と結合した電動機と、前記電動機を駆動する電力変換器と、位置指令値と前記電動機の位置検出値との偏差に応じて位置制御器出力を出力する位置制御器と、前記位置指令値を入力として位置フィードフォワード信号を出力する位置フィードフォワード制御器と、前記位置制御器出力と前記位置フィードフォワード信号とを加算し速度指令値を出力する加算器と、前記速度指令値と電動機の速度検出値の偏差に応じてトルク電流指令値を出力する速度制御器と、前記トルク電流指令値と前記電動機に供給されるトルク電流検出値との偏差に応じて前記電力変換器の出力電流を調整する電流制御器とを備えた電動機の制御装置の自動調整装置において、位置指令パターンを与えた際の位置偏差波形の振動振幅が所定値を超えない範囲内で前記位置制御器および/または前記速度制御器の応答周波数を増加させる応答周波数最大化手段と、予め登録した複数の前記位置指令パターンを前記位置制御器に対する位置指令として与え、複数の運転動作を行う調整運転手段と、複数の前記運転動作においてオーバーシュート量が所定値を超えないように、前記位置フィードフォワード制御器の制御パラメータを調整するパラメータ調整手段とを備えたことを特徴とする電動機制御装置の自動調整装置。   An electric motor coupled to a drive target load via a connecting shaft, a power converter that drives the electric motor, and a position controller that outputs a position controller output in accordance with a deviation between a position command value and a position detection value of the electric motor A position feedforward controller that receives the position command value as an input and outputs a position feedforward signal; an adder that adds the position controller output and the position feedforward signal and outputs a speed command value; and the speed A speed controller that outputs a torque current command value according to a deviation between the command value and a detected speed value of the motor; and the power conversion according to a deviation between the torque current command value and a detected torque current value supplied to the motor. In an automatic adjustment device for a motor control device having a current controller for adjusting the output current of the generator, the vibration amplitude of the position deviation waveform when a position command pattern is given is predetermined. A response frequency maximizing means for increasing the response frequency of the position controller and / or the speed controller within a range not exceeding, and giving a plurality of pre-registered position command patterns as position commands to the position controller, Adjusting operation means for performing a plurality of driving operations; and parameter adjusting means for adjusting a control parameter of the position feedforward controller so that an overshoot amount does not exceed a predetermined value in the plurality of driving operations. An automatic adjustment device for a motor control device.
JP2005327550A 2005-11-11 2005-11-11 Automatic adjustment method and apparatus for motor control device Active JP4745798B2 (en)

Priority Applications (3)

Application Number Priority Date Filing Date Title
JP2005327550A JP4745798B2 (en) 2005-11-11 2005-11-11 Automatic adjustment method and apparatus for motor control device
DE102006045820.6A DE102006045820B4 (en) 2005-11-11 2006-09-28 Method and device for automatic adjustment of a motor controller
CNB2006101414546A CN100524106C (en) 2005-11-11 2006-09-29 Automatic regulating method and device for electromotor control device

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
JP2005327550A JP4745798B2 (en) 2005-11-11 2005-11-11 Automatic adjustment method and apparatus for motor control device

Publications (2)

Publication Number Publication Date
JP2007135344A true JP2007135344A (en) 2007-05-31
JP4745798B2 JP4745798B2 (en) 2011-08-10

Family

ID=38047779

Family Applications (1)

Application Number Title Priority Date Filing Date
JP2005327550A Active JP4745798B2 (en) 2005-11-11 2005-11-11 Automatic adjustment method and apparatus for motor control device

Country Status (3)

Country Link
JP (1) JP4745798B2 (en)
CN (1) CN100524106C (en)
DE (1) DE102006045820B4 (en)

Cited By (14)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
WO2013161367A1 (en) * 2012-04-27 2013-10-31 株式会社日立産機システム Electric motor control device and method for automatically adjusting same
JP2013235307A (en) * 2012-05-02 2013-11-21 Mitsubishi Electric Corp Motor control apparatus
JP2014125949A (en) * 2012-12-26 2014-07-07 Isuzu Motors Ltd Engine control device for construction machine
JP2014180188A (en) * 2013-03-15 2014-09-25 Ricoh Co Ltd Motor control device, image forming apparatus, motor control method, and program
JP2014183651A (en) * 2013-03-19 2014-09-29 Panasonic Corp Motor driver
WO2014167852A1 (en) * 2013-04-11 2014-10-16 パナソニック株式会社 Motor drive device
WO2014167808A1 (en) * 2013-04-09 2014-10-16 パナソニック株式会社 Motor drive device
JP2014204622A (en) * 2013-04-09 2014-10-27 パナソニック株式会社 Motor driving device
CN105932919A (en) * 2016-06-07 2016-09-07 徐辉 Permanent magnet synchronous motor position control method based on motor model
CN106026793A (en) * 2016-06-28 2016-10-12 东华大学 Master-slave type multi-motor synchronization control method based on fuzzy PID
JP2018116864A (en) * 2017-01-19 2018-07-26 トヨタ自動車株式会社 Fuel cell system
JP6545428B1 (en) * 2019-01-15 2019-07-17 三菱電機株式会社 Control device of power converter
KR20220101152A (en) 2019-12-26 2022-07-19 미쓰비시덴키 가부시키가이샤 Positioning control device and positioning control method
CN115420301A (en) * 2022-05-16 2022-12-02 上海新跃联汇电子科技有限公司 Digital control method of angular vibration table

Families Citing this family (19)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP5241919B2 (en) * 2009-04-28 2013-07-17 三菱電機株式会社 Command generator
JP2012103827A (en) * 2010-11-09 2012-05-31 Iai:Kk Control parameter adjustment device, control parameter adjustment method, and program
JP5898407B2 (en) * 2011-02-15 2016-04-06 サンデンホールディングス株式会社 Motor control device
CN103001570B (en) * 2011-09-14 2015-05-20 北汽福田汽车股份有限公司 Motor position overshooting control method and control device
JP5943650B2 (en) * 2012-03-05 2016-07-05 三菱重工工作機械株式会社 Servo control device and servo control method
JP5172051B1 (en) * 2012-05-17 2013-03-27 三菱電機株式会社 Servo parameter adjustment device
CN104348393A (en) * 2013-07-23 2015-02-11 广东美的制冷设备有限公司 Air conditioner, variable-frequency speed regulation system and control method thereof
JP6290619B2 (en) * 2013-12-19 2018-03-07 オークマ株式会社 Motor control device
CN106788084B (en) * 2016-12-12 2019-06-21 深圳市优必选科技有限公司 Motion control method and device, motion trail planning method
CN106814638B (en) * 2017-03-23 2019-11-19 北京润科通用技术有限公司 A kind of HIL emulation test method and system
JP6474449B2 (en) * 2017-04-07 2019-02-27 ファナック株式会社 Adjusting apparatus and adjusting method
JP6888564B2 (en) * 2018-02-13 2021-06-16 オムロン株式会社 Model predictive control device, model predictive control device control method, information processing program, and recording medium
CN111684695B (en) * 2018-02-16 2023-09-29 三菱电机株式会社 Control device for power converter
JP6922829B2 (en) * 2018-04-26 2021-08-18 オムロン株式会社 Control systems, control methods, and control programs
CN108628166B (en) * 2018-05-08 2020-12-29 苏州科技大学 Speed loop gain and integration time optimization method for ball screw feeding driving system
CN108983595B (en) * 2018-07-18 2021-04-20 天津大学 Automatic setting method for parameters of feedforward controller
EP3648337B1 (en) 2018-10-30 2022-06-08 Roche Diagnostics GmbH Method of estimating an operating state of a drive system and drive system
CN110492826B (en) * 2019-07-25 2021-05-11 南京钢铁股份有限公司 Roller way positioning method for preventing roller way slide carriage
CN112013952A (en) * 2020-10-16 2020-12-01 歌尔股份有限公司 Vibration control method, tactile feedback device for vibration motor, and terminal device

Citations (5)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JPS605306A (en) * 1983-06-24 1985-01-11 Fanuc Ltd Servo-controlling device
JPH05224703A (en) * 1992-02-14 1993-09-03 Matsushita Electric Ind Co Ltd Direct-device robot controller
JP2003061377A (en) * 2001-08-17 2003-02-28 Yaskawa Electric Corp Motor control apparatus with auto-tuning function
JP2003169488A (en) * 2001-11-30 2003-06-13 Matsushita Electric Ind Co Ltd Controller of servo motor and control method
JP2004023946A (en) * 2002-06-19 2004-01-22 Yaskawa Electric Corp Motor controller

Patent Citations (5)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JPS605306A (en) * 1983-06-24 1985-01-11 Fanuc Ltd Servo-controlling device
JPH05224703A (en) * 1992-02-14 1993-09-03 Matsushita Electric Ind Co Ltd Direct-device robot controller
JP2003061377A (en) * 2001-08-17 2003-02-28 Yaskawa Electric Corp Motor control apparatus with auto-tuning function
JP2003169488A (en) * 2001-11-30 2003-06-13 Matsushita Electric Ind Co Ltd Controller of servo motor and control method
JP2004023946A (en) * 2002-06-19 2004-01-22 Yaskawa Electric Corp Motor controller

Cited By (23)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
WO2013161367A1 (en) * 2012-04-27 2013-10-31 株式会社日立産機システム Electric motor control device and method for automatically adjusting same
JP2013230061A (en) * 2012-04-27 2013-11-07 Hitachi Industrial Equipment Systems Co Ltd Motor controller and automatic adjustment method thereof
JP2013235307A (en) * 2012-05-02 2013-11-21 Mitsubishi Electric Corp Motor control apparatus
JP2014125949A (en) * 2012-12-26 2014-07-07 Isuzu Motors Ltd Engine control device for construction machine
JP2014180188A (en) * 2013-03-15 2014-09-25 Ricoh Co Ltd Motor control device, image forming apparatus, motor control method, and program
JP2014183651A (en) * 2013-03-19 2014-09-29 Panasonic Corp Motor driver
JPWO2014167808A1 (en) * 2013-04-09 2017-02-16 パナソニックIpマネジメント株式会社 Motor drive device
WO2014167808A1 (en) * 2013-04-09 2014-10-16 パナソニック株式会社 Motor drive device
JP2014204622A (en) * 2013-04-09 2014-10-27 パナソニック株式会社 Motor driving device
KR20150139519A (en) * 2013-04-09 2015-12-11 파나소닉 아이피 매니지먼트 가부시키가이샤 Motor drive device
JP5816826B2 (en) * 2013-04-11 2015-11-18 パナソニックIpマネジメント株式会社 Motor drive device
KR20150119491A (en) * 2013-04-11 2015-10-23 파나소닉 아이피 매니지먼트 가부시키가이샤 Motor drive device
KR101597084B1 (en) 2013-04-11 2016-02-23 파나소닉 아이피 매니지먼트 가부시키가이샤 Motor drive device
US9423782B2 (en) 2013-04-11 2016-08-23 Panasonic Intellectual Property Management Co., Ltd. Motor drive device
WO2014167852A1 (en) * 2013-04-11 2014-10-16 パナソニック株式会社 Motor drive device
CN105932919A (en) * 2016-06-07 2016-09-07 徐辉 Permanent magnet synchronous motor position control method based on motor model
CN106026793A (en) * 2016-06-28 2016-10-12 东华大学 Master-slave type multi-motor synchronization control method based on fuzzy PID
JP2018116864A (en) * 2017-01-19 2018-07-26 トヨタ自動車株式会社 Fuel cell system
JP6545428B1 (en) * 2019-01-15 2019-07-17 三菱電機株式会社 Control device of power converter
WO2020148808A1 (en) * 2019-01-15 2020-07-23 三菱電機株式会社 Control device for power converter
KR20220101152A (en) 2019-12-26 2022-07-19 미쓰비시덴키 가부시키가이샤 Positioning control device and positioning control method
DE112019008005T5 (en) 2019-12-26 2022-10-27 Mitsubishi Electric Corporation POSITIONING CONTROL DEVICE AND POSITIONING CONTROL METHOD
CN115420301A (en) * 2022-05-16 2022-12-02 上海新跃联汇电子科技有限公司 Digital control method of angular vibration table

Also Published As

Publication number Publication date
DE102006045820B4 (en) 2015-09-17
CN1963702A (en) 2007-05-16
CN100524106C (en) 2009-08-05
DE102006045820A1 (en) 2007-06-06
JP4745798B2 (en) 2011-08-10

Similar Documents

Publication Publication Date Title
JP4745798B2 (en) Automatic adjustment method and apparatus for motor control device
JP5860755B2 (en) Electric motor control device and automatic adjustment method thereof
US6861814B2 (en) Control parameter automatic adjustment apparatus
US11009837B2 (en) Machine learning device that adjusts controller gain in a servo control apparatus
WO2004049550A1 (en) Speed controller for motor
JP2008546545A (en) Motion guide method for movable machine element of machine
CN110914770B (en) Numerical control device
US11029650B2 (en) Machine learning device, control system, and machine learning method
US7292001B2 (en) Gain adjusting method for servo control device
JP5187172B2 (en) Motor control device, torque ripple correction method thereof, and motor control system
JPH0851788A (en) Motor speed controller
WO2008053772A1 (en) Motor control device, and its control method
JP2950149B2 (en) Auto tuning controller
US20030057901A1 (en) Method for detecting oscillation criticality of servo control system
JPWO2005064781A1 (en) Motor control device
JP5316424B2 (en) Motor control device
KR20210151962A (en) Motor control device, and automatic adjustment method thereof
JP3657718B2 (en) Control system, acceleration pattern setting method and parameter setting method in control system
JP5407435B2 (en) Motor control device
CN113126538B (en) Electronic apparatus and control method thereof
JP2890529B2 (en) Self tuning method
JP2011147201A (en) Electric motor control apparatus
JPH06242803A (en) Automatic control servo controller
JP2020004038A (en) Calculation method, information processor, and computer program
JP2019097264A (en) Motor drive device with current detector

Legal Events

Date Code Title Description
A621 Written request for application examination

Free format text: JAPANESE INTERMEDIATE CODE: A621

Effective date: 20080205

A977 Report on retrieval

Free format text: JAPANESE INTERMEDIATE CODE: A971007

Effective date: 20101007

A131 Notification of reasons for refusal

Free format text: JAPANESE INTERMEDIATE CODE: A131

Effective date: 20101012

A521 Written amendment

Free format text: JAPANESE INTERMEDIATE CODE: A523

Effective date: 20101206

A131 Notification of reasons for refusal

Free format text: JAPANESE INTERMEDIATE CODE: A131

Effective date: 20110125

A521 Written amendment

Free format text: JAPANESE INTERMEDIATE CODE: A523

Effective date: 20110223

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: 20110510

A01 Written decision to grant a patent or to grant a registration (utility model)

Free format text: JAPANESE INTERMEDIATE CODE: A01

A61 First payment of annual fees (during grant procedure)

Free format text: JAPANESE INTERMEDIATE CODE: A61

Effective date: 20110512

FPAY Renewal fee payment (event date is renewal date of database)

Free format text: PAYMENT UNTIL: 20140520

Year of fee payment: 3

R150 Certificate of patent or registration of utility model

Free format text: JAPANESE INTERMEDIATE CODE: R150

Ref document number: 4745798

Country of ref document: JP

Free format text: JAPANESE INTERMEDIATE CODE: R150