JP5407435B2 - Motor control device - Google Patents

Motor control device Download PDF

Info

Publication number
JP5407435B2
JP5407435B2 JP2009051736A JP2009051736A JP5407435B2 JP 5407435 B2 JP5407435 B2 JP 5407435B2 JP 2009051736 A JP2009051736 A JP 2009051736A JP 2009051736 A JP2009051736 A JP 2009051736A JP 5407435 B2 JP5407435 B2 JP 5407435B2
Authority
JP
Japan
Prior art keywords
command
time
variable
filter
acceleration
Prior art date
Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
Active
Application number
JP2009051736A
Other languages
Japanese (ja)
Other versions
JP2010207011A (en
JP2010207011A5 (en
Inventor
萩原  淳
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
Yaskawa Electric Corp
Original Assignee
Yaskawa Electric Corp
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by Yaskawa Electric Corp filed Critical Yaskawa Electric Corp
Priority to JP2009051736A priority Critical patent/JP5407435B2/en
Publication of JP2010207011A publication Critical patent/JP2010207011A/en
Publication of JP2010207011A5 publication Critical patent/JP2010207011A5/ja
Application granted granted Critical
Publication of JP5407435B2 publication Critical patent/JP5407435B2/en
Active legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Description

本発明は、2慣性系などのように振動要素を有する制御対象を振動させることなく動作させるモータ制御装置とモータ制御方法に関する。 The present invention relates to a motor control device and a motor control method for operating a control target having a vibration element such as a two-inertia system without vibrating.

近年、工作機械やロボットなどの産業機械は高精度化、高速化とともに軽量化、低コストが図られており、機械の剛性は弱まる一方である。特に制御対象が2慣性系や機台振動系などの振動要素を有する場合、モータ制御装置で駆動すると、加減速時に振動が発生するという一般的な技術課題がある。この一般的な技術課題を解決するために、従来のモータ制御装置では、次数をパラメータにもつ特殊な時間関数を使用して,指令の次数を調整して振動抑制している(例えば、特許文献1参照)。
また,S字指令の加減速時間に応じてプレフィルタのノミナル振動周波数を設定することにより振動を抑制しているものもある(例えば、非特許文献1参照)。
In recent years, industrial machines such as machine tools and robots have become more accurate, faster, lighter, and lower in cost, and the rigidity of the machine is becoming weaker. In particular, when the controlled object has a vibration element such as a two-inertia system or a machine base vibration system, there is a general technical problem that vibration occurs during acceleration / deceleration when driven by a motor control device. In order to solve this general technical problem, the conventional motor control device uses a special time function having the order as a parameter, and adjusts the order of the command to suppress vibrations (for example, Patent Documents). 1).
In some cases, vibration is suppressed by setting the nominal vibration frequency of the pre-filter according to the acceleration / deceleration time of the S-shaped command (for example, see Non-Patent Document 1).

図7は従来の特許文献に記載されている方法のフローチャートを表す。本従来例では,まず指令関数として式(1)に示すaを移動距離に依存する変数,tbを移動時間,次数kをパラメータとする特殊な時間関数v(t)を用意しておき、v(t)に基づいて指令払い出し周期毎の指令を演算する。
v(t)=a・tk・(tb-t)k (1)
FIG. 7 shows a flowchart of a method described in a conventional patent document. In this conventional example, first, as a command function, a special time function v (t) having a as a variable depending on a moving distance, tb as a moving time, and a degree k as a parameter is prepared, and v Based on (t), a command for each command payout period is calculated.
v (t) = a ・ t k・ (tb-t) k (1)

図7に従って処理を説明する。まずS51で動作条件である移動距離distと移動時間tbを設定する。次にS52で,問題となっている振動の周期tfを入力する。S53でtbとtfの比であるxを算出し,S53でxの値に応じて指令の次数kを決定する。xとkの関係は予め振動しないような関係を求めているため,これにより振動しない指令を作成することができるのである。 Processing will be described with reference to FIG. First, in S51, a movement distance dist and a movement time tb, which are operating conditions, are set. In step S52, the vibration period tf in question is input. In S53, x, which is the ratio of tb and tf, is calculated, and in S53, the order k of the command is determined according to the value of x. Since the relationship between x and k is determined in advance so as not to vibrate, a command that does not vibrate can be created.

図8に非特許文献1のブロック図を示す。ここで,61は位置指令振幅でありS字位置指令発生器62に入力される。63はプレフィルタを表し,制御対象の固有振動角周波数ωをωanに変換する。65のGp(s)は電動機速度・位置制御ループによる伝達特性を示す。66はモータ位置θMから負荷位置θまでの伝達関数を表す。 FIG. 8 shows a block diagram of Non-Patent Document 1. Here, 61 is a position command amplitude, which is input to the S-shaped position command generator 62. 63 represents a pre-filter, which converts the natural vibration angular frequency ω a to be controlled into ω an . Gp (s) of 65 indicates the transfer characteristic by the motor speed / position control loop. 66 represents a transfer function from the motor position θ M to the load position θ L.

通常,2慣性系制御対象に対して速度・位置制御ループを付加した場合,軸ねじれによる反力トルクが外乱として加わるが,本論文では電動機外乱トルクオブザーバにより軸ねじり反力を除去するため,結果的に電動機と負荷のブロックは分離される。したがって図8に示すように66で示されるモータ位置から負荷までの伝達関数が分離されるのである。 Normally, when a speed / position control loop is added to a two-inertia system control target, reaction torque due to shaft torsion is added as a disturbance. In this paper, however, the result is shown in order to remove the shaft torsion reaction force using a motor disturbance torque observer. Thus, the electric motor and the load block are separated. Therefore, as shown in FIG. 8, the transfer function from the motor position indicated by 66 to the load is separated.

例えば,速度補償器には比例積分制御(Ksp:比例ゲイン,KSI:積分ゲイン)を,位置補償器には比例制御(KPP:比例ゲイン)を用いた場合,電動機位置指令θM * に対するθLの伝達関数は式(2)で与えられる。
θLM * a 2/(s2a 2)*KPP(sKsp+KSI)/(s3JMn+s2Ksp+s(KSI+KPPKsp)+KPPKsI)
a 2/(s2a 2)*Gp(s) ・・・(2)
ここでGp(s)は上手く設計すれば共振振動とは関係しないため,結果として負荷に発生する振動は,制御対象の固有振動角周波数ωによる共振振動となり,これを抑制すれば負荷は振動しないことになる。
For example, when proportional integral control ( Ksp : proportional gain, KSI : integral gain) is used for the speed compensator and proportional control ( KPP : proportional gain) is used for the position compensator, the motor position command θ M * The transfer function of θ L with respect to is given by equation (2).
θ L / θ M * = ω a 2 / (s 2 + ω a 2 ) * K PP (sK sp + K SI ) / (s 3 J Mn + s 2 K sp + s (K SI + K PP K sp ) + K PP K sI )
= ω a 2 / (s 2 + ω a 2 ) * Gp (s) (2)
Here, since Gp (s) is not related to the resonant vibration if well designed, vibration generated in the load as a result becomes a resonant vibration due to the natural vibration angular frequency omega a of the controlled object, the load is oscillating when suppress this Will not.

一方振動を抑制する方法として本従来例では,加減速時間の設定によってωを抑制する方法として,加速時間をt=2nπ/ω,または減速開始時間をt=2nπ/ωと選ぶことで制振制御とすると記述されている。 On the other hand, in this conventional example as a method of suppressing vibration, as a method of suppressing ω a by setting the acceleration / deceleration time, the acceleration time is t A = 2nπ / ω a , or the deceleration start time is t D = 2nπ / ω a . It is described that vibration control is selected by selecting.

しかしながら,この方法では,位置指令の加減速時間が系の固有振動数に依存するため,任意の位置応答時間は設定できず,一般に応答時間が増大する。そこで,本従来例では,制御対象の伝達特性に着目し,位置指令にフィルタを乗ずることによって系の固有振動周期を変化させ,この問題を解決していると記載されている。 However, in this method, since the acceleration / deceleration time of the position command depends on the natural frequency of the system, an arbitrary position response time cannot be set, and the response time generally increases. Therefore, in this conventional example, it is described that the problem is solved by changing the natural vibration period of the system by multiplying the position command with a filter by paying attention to the transfer characteristic of the controlled object.

62の指令発生器では61で入力された目標位置振幅に対して所望の加減速時間を有するS字カーブを作成し,その加減速時間に応じてプレフィルタのノミナル振動周波数ωanを設定することによって制振制御が実現される。制御対象の固有振動角周波数ωが把握できるという前提で、式(3)の関係式によって電動機位置指令θM * にプレフィルタリングを行い,θM ** を新たな制御指令とする。その結果,系の振動極ωは極零キャンセルによって任意のωanにノミナル化される。
θM ** =(ωan 2a 2)・(s2a 2)/(s2an 2M * (3)
The command generator 62 generates an S-curve having a desired acceleration / deceleration time for the target position amplitude input at 61, and sets the pre-filter nominal vibration frequency ω an according to the acceleration / deceleration time. Thus, vibration suppression control is realized. Assuming that the natural frequency angular frequency omega a of the controlled object can be grasped, performs pre-filtering to the motor position command theta M * by the relation expression of Expression (3), the theta M ** a new control command. As a result, the vibration pole ω a of the system is nominally made arbitrary ω an by pole-zero cancellation.
θ M ** = (ω an 2 / ω a 2 ) ・ (s 2 + ω a 2 ) / (s 2 + ω an 2 ) θ M * (3)

そして,ωanが任意に設定できるため,位置指令の加減速時間が系の固有振動数に依存せず,加減速時間を任意に設定しつつ振動抑制できるようになっている。 Since ω an can be arbitrarily set, the acceleration / deceleration time of the position command does not depend on the natural frequency of the system, and vibration can be suppressed while arbitrarily setting the acceleration / deceleration time.

このように、従来のモータ制御装置は、次数kをパラメータにもつ特殊な時間関数を使用して,振動周期tfに応じて指令の次数kを調整するか,系の振動極をプレフィルタにて任意の極に変換することで,設定した加減速時間で振動が抑制されるようにしているのである。 As described above, the conventional motor control device uses a special time function having the order k as a parameter to adjust the order k of the command according to the vibration period tf, or the system vibration pole is pre-filtered. By converting it to an arbitrary pole, vibration is suppressed within the set acceleration / deceleration time.

特開2006−031111号公報(第5−8頁、図1)Japanese Patent Laying-Open No. 2006-031111 (page 5-8, FIG. 1)

岩崎誠,松井信行著「振動抑制効果を考慮したロボットアームの最適位置指令設計法」電気学会論文誌C,社団法人電気学会,1996年12月20日,第117−C巻,第1号,p.50−56Iwasaki Makoto, Matsui Nobuyuki, “Optimum Position Command Design Method for Robot Arm Considering Vibration Suppression Effect” IEICE Transactions C, The Institute of Electrical Engineers of Japan, December 20, 1996, Vol. 117-C, No. 1, p. 50-56

特許文献1の従来のモータ制御装置は、振動周期tfと移動時間tbの比である変数xによって,予め求めておいた関数を用いて振動しないように指令次数に関する変数kを決定するものであるが,ほとんどの場合変数kが非整数(小数)になってしまうため,通常の制御装置では演算できないだけでなく,移動距離に依存する変数aを求める際に,kが非整数も取りえる任意の変数のため,変数kを残したまま時間積分ができないため,変数aを求めるためには,予め変数aを1として全移動時間分の移動距離Idを求め,最後に実際の移動距離distをIdで除算して変数aを求める必要があり,変数aの演算に時間が多くかかるという問題があった。また,演算時間が多くかかるため,動作中に目標値が変更になった場合などは演算時間が間に合わないという問題があった。   The conventional motor control device disclosed in Patent Document 1 determines a variable k related to a command order so as not to vibrate using a function determined in advance by a variable x which is a ratio of a vibration period tf and a movement time tb. However, in most cases, the variable k becomes a non-integer (decimal number), so that not only cannot be calculated by a normal control device, but also when k can take a non-integer when calculating the variable a that depends on the moving distance. Therefore, in order to obtain the variable a, the variable a is set to 1, the movement distance Id for the entire movement time is obtained in advance, and finally the actual movement distance dist is obtained. There is a problem that it is necessary to obtain the variable a by dividing by Id, and it takes a long time to calculate the variable a. In addition, since it takes a lot of calculation time, there is a problem that the calculation time is not in time if the target value is changed during operation.

また,非特許文献1の従来の指令設計方法は,電動機外乱オブザーバを付加していない制御装置や,電動機外乱オブザーバで使用する慣性モーメントノミナル値が実機の慣性モーメントに対して誤差を持つ場合,モータ位置から負荷までの伝達関数が分離できないため,制御対象の固有振動角周波数ωaが制御系の特性により周波数が変化するため,実際に動作させたときに発生する振動の周波数は,もとのωaとは異なったものになる。また,制御対象が減衰を持たない場合も制御系の設計によっては無視できない程度の減衰を持つことも多々ある。この場合,モータから負荷位置までの伝達特性が減衰を持たず,かつ制御部に対して分離するという前提の下でωaの共振を極零相殺でキャンセルする従来例のプレフィルタでは,完全に振動を抑制することはできないという問題があった。また,制御対象に減衰がある制御対象の場合も,従来のプレフィルタには減衰を考慮した項がないため,振動を完全に抑制することはできないという問題があった。また,S字指令を用いて,加減速時間に応じてプレフィルタのノミナル極を設定する方式のため,S字指令は必須であるが,S字指令の加減速時間を極に合わせて振動抑制する方法には以下のような問題があった。図9の(b)は2慣性系の制御対象に対して,従来のS字指令とプレフィルタの方式をシミュレーションした結果である。図から明らかなように,プレフィルタを用いない(a)の結果ではモータおよび負荷の両方とも振動が発生しているのが分かる。それに対して(b)ではモータおよび負荷位置は振動なく応答しているが,モータの速度波形がいびつな波形になっているのが分かる。これは,モータがこのようにいびつな動作をすることで,負荷が振動しないように動作しているからで,S字指令を用いて加減速時間を短くした場合に,このよう現象は頻繁に発生する。このようにモータがいびつに動作することにより,機械の動作音が大きくなったり,装置の他の部分を加振してしまうという問題があった。 In addition, the conventional command design method of Non-Patent Document 1 can be applied to a control device that does not include an electric motor disturbance observer, or when the inertia moment nominal value used in the electric motor disturbance observer has an error with respect to the inertia moment of the actual machine. Since the transfer function from the position to the load cannot be separated, the frequency of the natural vibration angular frequency ωa of the controlled object changes depending on the characteristics of the control system. Therefore, the frequency of the vibration generated when actually operating is the original ωa Will be different. Even when the controlled object does not have attenuation, it often has attenuation that cannot be ignored depending on the design of the control system. In this case, the conventional prefilter that cancels the resonance of ωa with pole-zero cancellation is assumed to be completely oscillating on the assumption that the transfer characteristic from the motor to the load position has no attenuation and is separated from the control unit. There was a problem that it could not be suppressed. In addition, even in the case of a controlled object having a controlled object, there is a problem that vibration cannot be completely suppressed because the conventional pre-filter has no term that considers the attenuation. In addition, the S-command is indispensable because the S-command command is used to set the pre-filter nominal pole according to the acceleration / deceleration time. There were the following problems with this method. FIG. 9B shows the result of simulating a conventional S-command and prefilter method for a control object of a two-inertia system. As is apparent from the figure, it can be seen from the result of (a) in which no prefilter is used, that both the motor and the load are vibrated. On the other hand, in (b), the motor and the load position respond without vibration, but it can be seen that the speed waveform of the motor is an irregular waveform. This is because the motor operates in such a way that the load does not vibrate, and this phenomenon frequently occurs when the acceleration / deceleration time is shortened by using the S-shaped command. Occur. As described above, there are problems that the operation noise of the motor increases the noise of the machine and the other parts of the apparatus are vibrated.

本発明はこのような問題点に鑑みてなされたものであり、指令次数に関する変数kを調整することで振動を抑制できる時間関数を指令として用い,計算しやすいようにkを整数にし,移動時間tbとkから振動抑制可能な共振周波数ωsを求め,制御部と制御対象を合わせた全システムを2次遅れ系で近似した際の,固有振動角周波数と減衰係数を分子の係数とした指令フィルタ演算を行った信号を新たな指令として制御部へ入力するようにすることで,制御演算部が外乱オブザーバを持っていない場合や,慣性モーメントノミナル値に誤差が合った場合も,また制御対象の振動が減衰を持つ場合も,制御系により,制御対象の極が大きく変化した場合も,モータを滑らかに動作させつつ負荷の振動を抑制でき,かつ,指令のパラメータを演算する時間も少ないモータ制御装置を提供することを目的とする。   The present invention has been made in view of such a problem. A time function that can suppress vibration by adjusting a variable k related to the command order is used as a command. Resonance frequency ωs that can suppress vibration from tb and k, and a command filter that uses the natural vibration angular frequency and damping coefficient as numerator coefficients when approximating the entire system including the control unit and the controlled object with a second-order lag system By inputting the calculated signal to the control unit as a new command, even if the control calculation unit does not have a disturbance observer or if the inertia moment nominal value has an error, the control target Whether the vibration has a damping or the control system significantly changes the pole to be controlled, the vibration of the load can be suppressed while the motor operates smoothly, and the command parameters are displayed. And to provide even less motor controller time.

上記問題を解決するため、本発明は、次のように構成したのである。
本発明の一の観点によるモータ制御装置は、移動距離(dist)と移動時間(tb)と指令次数に関する変数(k)を、指令演算部に対して設定する指令条件設定部と、前記移動距離(dist)に依存する変数(a)及び前記移動時間(tb)を含む速度時間関数に基づいて、指令払い出し周期毎に位置指令(ref)を演算する前記指令演算部と、前記移動時間(tb)と前記指令次数に関する変数(k)に基づいて、第1の指令フィルタ変数(ωs)を演算するフィルタ定数演算部と、前記指令演算部が演算した前記位置指令(ref)、前記フィルタ定数演算部が演算した前記第1の指令フィルタ変数(ωs)、所定の第2及び第3指令フィルタ変数(ωc,ζ)を含むフィルタ伝達関数に基づいて、後退差分、前進差分、双一次変換のいずれか1つを用いて新たな位置指令(refc)を演算する指令フィルタ演算部と、前記新たな位置指令(refc)及び制御対象に付加された検出器で検出される位置検出信号に基づいて、前記制御対象であるモータを駆動するための制御演算を行う制御演算部と、を備えたモータ制御装置が適用される。
In order to solve the above problem, the present invention is configured as follows.
A motor control apparatus according to one aspect of the present invention includes a command condition setting unit that sets a variable (k) related to a movement distance (dist), a movement time (tb), and a command order with respect to a command calculation unit; The command calculation unit that calculates a position command (ref) for each command payout period based on a speed time function including a variable (a) that depends on (dist) and the travel time (tb), and the travel time (tb ) And a variable (k) related to the command order, a filter constant calculation unit that calculates a first command filter variable (ωs), the position command (ref) calculated by the command calculation unit, and the filter constant calculation Based on a filter transfer function including the first command filter variable (ωs) calculated by the unit and predetermined second and third command filter variables (ωc, ζ), a backward difference, a forward difference, a bilinear change Based on a command filter calculation unit that calculates a new position command (refc) using any one of the above, a position detection signal detected by the new position command (refc) and a detector added to the control target Thus, a motor control device including a control calculation unit that performs a control calculation for driving the motor to be controlled is applied.

本発明の1つ目の他の観点によるモータ制御装置は、移動距離(dist)と移動時間(tb)と指令次数に関する変数(k)を、指令演算部に対して設定する指令条件設定部と、前記移動距離(dist)に依存する変数(a)及び前記移動時間(tb)を含む速度時間関数に基づいて、指令払い出し周期毎に位置指令(ref)を演算する前記指令演算部と、前記移動時間(tb)と前記指令次数に関する変数(k)に基づいて、第1の指令フィルタ変数(ωs)を演算するフィルタ定数演算部と、前記指令演算部が演算した前記位置指令(ref)、前記フィルタ定数演算部が演算した前記第1の指令フィルタ変数(ωs)、所定の第2及び第3指令フィルタ変数(ωc,ζ)を含むフィルタ伝達関数に基づいて、後退差分、前進差分、双一次変換のいずれか1つを用いて新たな位置指令(refc)を演算する指令フィルタ演算部と、前記新たな位置指令(refc)及び制御対象に付加された検出器で検出される位置検出信号に基づいて、前記制御対象であるモータを駆動するための制御演算を行う制御演算部と、を備えたモータ制御装置であって、A motor control device according to a first other aspect of the present invention includes a command condition setting unit that sets a variable (k) relating to a movement distance (dist), a movement time (tb), and a command order to a command calculation unit; The command calculation unit for calculating a position command (ref) for each command payout period based on a speed time function including a variable (a) depending on the moving distance (dist) and the moving time (tb); Based on a travel time (tb) and a variable (k) related to the command order, a filter constant calculation unit that calculates a first command filter variable (ωs), the position command (ref) calculated by the command calculation unit, Based on a filter transfer function including the first command filter variable (ωs) and predetermined second and third command filter variables (ωc, ζ) calculated by the filter constant calculation unit, a backward difference, a forward difference, A command filter calculation unit for calculating a new position command (refc) using any one of the primary conversions, and a position detection signal detected by the new position command (refc) and a detector added to the control target A control operation unit that performs a control operation for driving the motor that is the control target, and a motor control device comprising:
前記指令条件設定部は、加減速時間(ta)と一定速度時間(tc)を、前記指令演算部に対して更に設定し、前記指令演算部は、速度に依存する変数(ad)及び前記加減速時間(ta)、前記一定速度時間(tc)を含む加速度時間関数に基づいて、指令払い出し周期毎に位置指令を演算し、前記フィルタ定数演算部は、前記加減速時間(ta)と前記指令次数に関する変数(k)に基づいて、第1の指令フィルタ変数(ωs)を演算するモータ制御装置が適用される。The command condition setting unit further sets an acceleration / deceleration time (ta) and a constant speed time (tc) for the command calculation unit, and the command calculation unit includes a variable (ad) dependent on speed and the acceleration / deceleration. Based on an acceleration time function including a deceleration time (ta) and the constant speed time (tc), a position command is calculated for each command payout period, and the filter constant calculation unit calculates the acceleration / deceleration time (ta) and the command A motor control device that calculates the first command filter variable (ωs) based on the variable (k) related to the order is applied.

本発明の2つ目の他の観点によるモータ制御装置は、移動距離(dist)と移動時間(tb)と指令次数に関する変数(k)を、指令演算部に対して設定する指令条件設定部と、前記移動距離(dist)に依存する変数(a)及び前記移動時間(tb)を含む速度時間関数に基づいて、指令払い出し周期毎に位置指令(ref)を演算する前記指令演算部と、前記移動時間(tb)と前記指令次数に関する変数(k)に基づいて、第1の指令フィルタ変数(ωs)を演算するフィルタ定数演算部と、前記指令演算部が演算した前記位置指令(ref)、前記フィルタ定数演算部が演算した前記第1の指令フィルタ変数(ωs)、所定の第2及び第3指令フィルタ変数(ωc,ζ)を含むフィルタ伝達関数に基づいて、後退差分、前進差分、双一次変換のいずれか1つを用いて新たな位置指令(refc)を演算する指令フィルタ演算部と、前記新たな位置指令(refc)及び制御対象に付加された検出器で検出される位置検出信号に基づいて、前記制御対象であるモータを駆動するための制御演算を行う制御演算部と、を備えたモータ制御装置であって、A motor control apparatus according to a second other aspect of the present invention includes a command condition setting unit that sets a variable (k) relating to a movement distance (dist), a movement time (tb), and a command order to a command calculation unit; The command calculation unit for calculating a position command (ref) for each command payout period based on a speed time function including a variable (a) depending on the moving distance (dist) and the moving time (tb); Based on a travel time (tb) and a variable (k) related to the command order, a filter constant calculation unit that calculates a first command filter variable (ωs), the position command (ref) calculated by the command calculation unit, Based on a filter transfer function including the first command filter variable (ωs) and predetermined second and third command filter variables (ωc, ζ) calculated by the filter constant calculation unit, a backward difference, a forward difference, A command filter calculation unit for calculating a new position command (refc) using any one of the primary conversions, and a position detection signal detected by the new position command (refc) and a detector added to the control target A control operation unit that performs a control operation for driving the motor that is the control target, and a motor control device comprising:
前記フィルタ定数演算部と前記指令フィルタ演算部とに代えて、指令定数演算部を備え、Instead of the filter constant calculator and the command filter calculator, a command constant calculator is provided,
前記指令条件設定部は、前記制御演算部と前記制御対象とを合わせた全システムを、2次遅れ系で近似した際の固有振動角周波数と減衰係数にそれぞれ設定される、前記所定の第2及び第3指令フィルタ変数(ωc,ζ)を前記指令演算部に対して更に設定し、前記指令定数演算部は、前記移動時間(tb)と前記指令次数に関する変数(k)に基づいて、前記第1の指令フィルタ変数(ωs)を演算し、前記指令演算部は、前記前記指令定数演算部が演算した前記第1の指令フィルタ変数(ωs)、前記所定の第2及び第3指令フィルタ変数(ωc,ζ)を含むフィルタ特性と、前記移動距離(dist)に依存する変数(a)及び前記移動時間(tb)とを含む時間関数に基づいて、指令払い出し周期毎に位置指令(ref)を演算し、前記制御演算部は、該位置指令(ref)に基づいて前記モータを駆動するための制御演算を行うモータ制御装置が適用される。The command condition setting unit is set to the specific second angular frequency and the damping coefficient, respectively, when the entire system including the control calculation unit and the control target is approximated by a second-order lag system. And a third command filter variable (ωc, ζ) are further set for the command calculation unit, and the command constant calculation unit is based on the travel time (tb) and the variable (k) related to the command order. A first command filter variable (ωs) is calculated, and the command calculation unit is configured to calculate the first command filter variable (ωs) calculated by the command constant calculation unit, the predetermined second and third command filter variables. Based on a filter function including (ωc, ζ) and a time function including a variable (a) depending on the moving distance (dist) and the moving time (tb), a position command (ref) for each command payout period. To calculate the above Control arithmetic unit, a motor control apparatus for controlling operation for driving the motor based on the position command (ref) is applied.

本発明の3つ目の他の観点によるモータ制御装置は、移動距離(dist)と移動時間(tb)と指令次数に関する変数(k)を、指令演算部に対して設定する指令条件設定部と、前記移動距離(dist)に依存する変数(a)及び前記移動時間(tb)を含む速度時間関数に基づいて、指令払い出し周期毎に位置指令(ref)を演算する前記指令演算部と、前記移動時間(tb)と前記指令次数に関する変数(k)に基づいて、第1の指令フィルタ変数(ωs)を演算するフィルタ定数演算部と、前記指令演算部が演算した前記位置指令(ref)、前記フィルタ定数演算部が演算した前記第1の指令フィルタ変数(ωs)、所定の第2及び第3指令フィルタ変数(ωc,ζ)を含むフィルタ伝達関数に基づいて、後退差分、前進差分、双一次変換のいずれか1つを用いて新たな位置指令(refc)を演算する指令フィルタ演算部と、前記新たな位置指令(refc)及び制御対象に付加された検出器で検出される位置検出信号に基づいて、前記制御対象であるモータを駆動するための制御演算を行う制御演算部と、を備ると共に、A motor control apparatus according to a third other aspect of the present invention includes a command condition setting unit that sets a variable (k) relating to a movement distance (dist), a movement time (tb), and a command order to a command calculation unit; The command calculation unit for calculating a position command (ref) for each command payout period based on a speed time function including a variable (a) depending on the moving distance (dist) and the moving time (tb); Based on a travel time (tb) and a variable (k) related to the command order, a filter constant calculation unit that calculates a first command filter variable (ωs), the position command (ref) calculated by the command calculation unit, Based on a filter transfer function including the first command filter variable (ωs) and predetermined second and third command filter variables (ωc, ζ) calculated by the filter constant calculation unit, a backward difference, a forward difference, A command filter calculation unit for calculating a new position command (refc) using any one of the primary conversions, and a position detection signal detected by the new position command (refc) and a detector added to the control target And a control calculation unit that performs a control calculation for driving the motor that is the control target,
前記フィルタ定数演算部と前記指令フィルタ演算部とに代えて、指令定数演算部を備え、Instead of the filter constant calculator and the command filter calculator, a command constant calculator is provided,
前記指令条件設定部は、前記制御演算部と前記制御対象とを合わせた全システムを、2次遅れ系で近似した際の固有振動角周波数と減衰係数にそれぞれ設定される、前記所定の第2及び第3指令フィルタ変数(ωc,ζ)を前記指令演算部に対して更に設定し、前記指令定数演算部は、前記移動時間(tb)と前記指令次数に関する変数(k)に基づいて、前記第1の指令フィルタ変数(ωs)を演算し、前記指令演算部は、前記前記指令定数演算部が演算した前記第1の指令フィルタ変数(ωs)、前記所定の第2及び第3指令フィルタ変数(ωc,ζ)を含むフィルタ特性と、前記移動距離(dist)に依存する変数(a)及び前記移動時間(tb)とを含む時間関数に基づいて、指令払い出し周期毎に位置指令(ref)を演算し、前記制御演算部は、該位置指令(ref)に基づいて前記モータを駆動するための制御演算を行うモータ制御装置であって、The command condition setting unit is set to the specific second angular frequency and the damping coefficient, respectively, when the entire system including the control calculation unit and the control target is approximated by a second-order lag system. And a third command filter variable (ωc, ζ) are further set for the command calculation unit, and the command constant calculation unit is based on the travel time (tb) and the variable (k) related to the command order. A first command filter variable (ωs) is calculated, and the command calculation unit is configured to calculate the first command filter variable (ωs) calculated by the command constant calculation unit, the predetermined second and third command filter variables. Based on a filter function including (ωc, ζ) and a time function including a variable (a) depending on the moving distance (dist) and the moving time (tb), a position command (ref) for each command payout period. To calculate the above Control arithmetic unit is a motor control apparatus for controlling operation for driving the motor based on the position command (ref),
前記指令条件設定部は、加速時間(ta1)と一定速度時間(tc)と減速時間(ta2)とを、前記指令演算部に対して更に設定し、前記指令演算部は、速度に依存する変数(a1)及び変数(a2)、並びに前記加速時間(ta1)、前記一定速度時間(tc)、前記減速時間(ta2)を含む加速度時間関数に基づいて、指令払い出し周期毎に位置指令(ref)を演算するモータ制御装置が適用される。The command condition setting unit further sets an acceleration time (ta1), a constant speed time (tc), and a deceleration time (ta2) for the command calculation unit, and the command calculation unit is a variable depending on the speed. Based on the acceleration time function including (a1), the variable (a2), the acceleration time (ta1), the constant speed time (tc), and the deceleration time (ta2), the position command (ref) A motor control device for calculating is applied.

本発明の一の観点によるモータ制御装置によると、指令の次数に関わる変数kを任意に選べるため,変数kを整数にすることができるため,通常の演算器で演算が可能となり,また,関数の積分が可能になることで変数aを求めるために予め変数aを1として全移動時間分の移動距離Idを求め最後に実際の移動距離distをIdで除算して変数aを求める必要がなくなり演算時間が大幅に短縮される。結果として目標値変更にも対応できるようになる。
また,指令フィルタの分子に減衰の項があるため,もともと制御対象の共振に減衰がある場合や,制御系の設計により制御対象の極が移動して減衰を持つようになった場合も,完全に振動を抑制することが可能になる。
また,全システムを2次遅れ系で近似したときの固有振動角周波数ωcと減衰係数ζを設定するため,制御系により極が移動して極の周波数が変化した場合も完全に振動を抑制することができる。
また,制御系の設計はどのようなものでもよく,従来のように必ず電動機外乱オブザーバを用いる必要もなくなる。
また,S字指令ではなく,指令次数に関する変数kを調整することで振動を抑制できる時間関数を指令として用いることで,負荷の振動を抑制するだけでなく,モータも滑らかに動作させることができる。果として目標値変更にも対応できるようになる。
また,指令フィルタの分子に減衰の項があるため,もともと制御対象の共振に減衰がある場合や,制御系の設計により制御対象の極が移動して減衰を持つようになった場合も,完全に振動を抑制することが可能になる。
また,全システムを2次遅れ系で近似したときの固有振動角周波数ωcと減衰係数ζを設定するため,制御系により極が移動して極の周波数が変化した場合も完全に振動を抑制することができる。
また,制御系の設計はどのようなものでもよく,従来のように必ず電動機外乱オブザーバを用いる必要もなくなる。
また,S字指令ではなく,指令次数に関する変数kを調整することで振動を抑制できる時間関数を指令として用いることで,負荷の振動を抑制するだけでなく,モータも滑らかに動作させることができる。
また、請求項4に記載の発明によると、数式で解析的に最も遅い振動根を算出し,そのまま指令フィルタの変数であるωcとζを決定できるため,制御対象が既知の場合に,簡単に変数を設定できる。
また、請求項7,8に記載の発明によると、境界条件を元に解析的に移動時間tbあるいは加減速時間taとωsの関係を求めることができるため,変数kと移動時間tbあるいは加減速時間taが与えられた時,数式で正確にωsを算出することができるようになり,指令フィルタの分母の変数は自動的に設定することができる。
According to the motor control device according to one aspect of the present invention, the variable k related to the order of the command can be arbitrarily selected, and therefore the variable k can be an integer. In order to obtain the variable a, it is not necessary to obtain the variable a by previously setting the variable a as 1 and obtaining the movement distance Id for the entire movement time and finally dividing the actual movement distance dist by Id. The calculation time is greatly reduced. As a result, the target value can be changed.
In addition, since there is a damping term in the numerator of the command filter, the case where the resonance of the controlled object is originally attenuated, or when the controlled object pole moves due to the design of the control system, it has complete attenuation. It is possible to suppress vibration.
In addition, since the natural vibration angular frequency ωc and the damping coefficient ζ when the entire system is approximated by a second-order lag system are set, vibration is completely suppressed even when the pole is moved by the control system and the pole frequency is changed. be able to.
Further, the control system can be designed in any way, and it is not necessary to use a motor disturbance observer as in the prior art.
In addition, by using a time function that can suppress vibration by adjusting a variable k related to the command order instead of an S-shape command, not only the load vibration but also the motor can be operated smoothly. . As a result, it becomes possible to cope with the target value change.
In addition, since there is a damping term in the numerator of the command filter, the case where the resonance of the controlled object is originally attenuated, or when the controlled object pole moves due to the design of the control system, it has complete attenuation. It is possible to suppress vibration.
In addition, since the natural vibration angular frequency ωc and the damping coefficient ζ when the entire system is approximated by a second-order lag system are set, vibration is completely suppressed even when the pole is moved by the control system and the pole frequency is changed. be able to.
Further, the control system can be designed in any way, and it is not necessary to use a motor disturbance observer as in the prior art.
In addition, by using a time function that can suppress vibration by adjusting a variable k related to the command order instead of an S-shape command, not only the load vibration but also the motor can be operated smoothly. .
Further, according to the invention described in claim 4, since the slowest vibration root can be calculated analytically by the mathematical formula and ωc and ζ that are the variables of the command filter can be determined as they are, the control object can be easily obtained. Variables can be set.
According to the seventh and eighth aspects of the invention, since the relationship between the movement time tb or the acceleration / deceleration time ta and ωs can be obtained analytically based on the boundary condition, the variable k and the movement time tb or the acceleration / deceleration are obtained. When time ta is given, ωs can be accurately calculated by a mathematical expression, and the denominator variable of the command filter can be automatically set.

本発明の1つ目の他の観点によるモータ制御装置によると、加速,一定速,減速区間を場合わけした指令を用いることで,速度の最大値に制限がある場合や動作速度を指定されている場合も問題なく本アイデアを使用でき,本発明の一の観点によるモータ制御装置と同様の効果が得られる。
According to the motor control device according to the first other aspect of the present invention, by using a command in which acceleration, constant speed, and deceleration sections are separated , the maximum speed value is limited or the operation speed is specified. In this case, the present idea can be used without any problem, and the same effect as the motor control device according to one aspect of the present invention can be obtained.

本発明の2つ目又は3つ目の他の観点によるモータ制御装置によると、特別な時間関数と特別な伝達特性を併せ持つ時間関数refを指令関数とすることにより,位置指令だけで振動が抑制でき、指令フィルタを用いないことで,フィルタの演算精度が十分に得られない場合に本来の制振効果が劣化するという問題がなくなる。またフィルタの出力をクランプする処理を追加する必要がなくなる。また,指令フィルタ処理後の位置の監視が不要となり演算量が少なくてよくなる。
また、本発明の3つ目の他の観点によるモータ制御装置によると、加速、一定速、減速といった区間に場合分けされる、いわゆる台形速度指令のように一定の速度で動作する動きも実現でき、本発明の一の観点によるモータ制御装置と同等の効果が得られる。
また、本発明の2つ目又は3つ目の他の観点によるモータ制御装置によると、パラメータkを決定すれば、振動抑制できるωsを自動的に演算で求めることができるため、実際に設定あるいは調整するパラメータは、2次遅れ系で近似した際の分母の伝達関数の変数である振動周波数ωcと減衰係数ζの2つのみで良くなり簡単に位置指令を作成することができる。
According to the motor control apparatus according to the second or third aspect of the present invention , the vibration is suppressed only by the position command by using the time function ref having both a special time function and a special transfer characteristic as a command function. In addition, by not using the command filter, there is no problem that the original damping effect is deteriorated when the calculation accuracy of the filter is not sufficiently obtained. Further, it is not necessary to add a process for clamping the output of the filter. In addition, it is not necessary to monitor the position after the command filter processing, and the amount of calculation can be reduced.
In addition, according to the motor control device of the third other aspect of the present invention, a motion that operates at a constant speed such as a so-called trapezoidal speed command divided into sections such as acceleration, constant speed, and deceleration can be realized. An effect equivalent to that of the motor control device according to one aspect of the present invention can be obtained.
In addition, according to the motor control device of the second or third aspect of the present invention, if the parameter k is determined, ωs that can suppress vibration can be automatically obtained by calculation. Only two parameters, the vibration frequency ωc and the damping coefficient ζ, which are variables of the transfer function of the denominator when approximated by a second-order lag system, need to be adjusted, and a position command can be easily created.

本発明の第1実施例を示すモータ制御装置の構成図The block diagram of the motor control apparatus which shows 1st Example of this invention. 本発明の指令フィルタの伝達関数を示す図The figure which shows the transfer function of the command filter of this invention 本発明の制御演算部の処理を説明するブロック図The block diagram explaining the process of the control calculating part of this invention 本発明の処理の手順を説明するフローチャートThe flowchart explaining the procedure of the processing of the present invention 本発明の第3実施例を示すモータ制御装置の構成図The block diagram of the motor control apparatus which shows 3rd Example of this invention. 本発明の第4実施例を示すモータ制御装置の構成図The block diagram of the motor control apparatus which shows 4th Example of this invention. 従来のモータ制御装置の処理の手順を説明するフローチャートFlowchart explaining the processing procedure of a conventional motor control device 従来のモータ制御装置の構成図Configuration diagram of a conventional motor control device 従来と本発明のシミュレーション結果を示す図The figure which shows the simulation result of the past and this invention

以下、本発明の実施の形態について図を参照して説明する。   Hereinafter, embodiments of the present invention will be described with reference to the drawings.

図1は、本発明のモータ制御装置の構成図である。図において、1は指令条件設定部であり,指令条件である移動距離distと移動時間tbと指令次数に関する変数kを設定する。2は指令演算部でありaを移動距離に依存する変数とした速度時間関数v(t) に基づいて指令払い出し周期毎の指令を演算する。
v(t)=a・tk・(tb-t)k (4)
FIG. 1 is a configuration diagram of a motor control device of the present invention. In the figure, reference numeral 1 denotes a command condition setting unit, which sets a command distance kst, a travel distance dist, a travel time tb, and a command order variable k. A command calculation unit 2 calculates a command for each command payout period based on a speed time function v (t) where a is a variable depending on the moving distance.
v (t) = a ・ t k・ (tb-t) k (4)

3は指令フィルタ演算部であり,指令演算部から出力された位置指令refを入力し,sをラプラス演算子とした時に,ωs,ωc,ζを変数とする以下の伝達関数GF(s)で表される特性を有するフィルタの演算を行いフィルタ演算後の指令refcを出力する。
GF(s)=(ωs2/ωc2)・(s2+2・ζ・ωc・s+ωc2)/(s2+ωs2) (5)
図2に3の指令フィルタ演算部の入出力の関係を示す。モータ制御装置はデジタル処理されるため,指令フィルタ演算部3では通常,このフィルタを離散化した演算を行う。離散化の方法はどのようにしてもよいが,通常,後退差分や前進差分あるいは双一次変換を用いると簡単である。また,演算量が許す場合には,厳密に0次ホールドを考慮したZ変換により離散化しても良い。
Reference numeral 3 denotes a command filter calculation unit. When the position command ref output from the command calculation unit is input and s is a Laplace operator, ωs, ωc, and ζ are variables as follows. The filter having the characteristics shown is calculated and a command refc after the filter calculation is output.
GF (s) = (ωs 2 / ωc 2 ) ・ (s 2 +2 ・ ζ ・ ωc ・ s + ωc 2 ) / (s 2 + ωs 2 ) (5)
FIG. 2 shows the input / output relationship of the command filter arithmetic unit 3. Since the motor control device is digitally processed, the command filter calculation unit 3 normally performs calculation by discretizing this filter. Any method of discretization may be used, but it is usually easy to use backward difference, forward difference or bilinear transformation. In addition, when the amount of calculation permits, it may be discretized by Z conversion that strictly considers the zeroth-order hold.

4はフィルタ定数演算部であり,移動速時間tbと指令次数に関する変数kに基づいて指令フィルタの変数であるωsを演算で求める。また,3の指令フィルタの変数であるωcとζは制御系と制御対象を合わせた全システムを2次遅れ系で近似した際の固有振動角周波数と減衰係数に設定する。 Reference numeral 4 denotes a filter constant calculation unit, which calculates ωs, which is a variable of the command filter, based on the moving speed time tb and the variable k related to the command order. Further, ωc and ζ which are variables of the command filter 3 are set to the natural vibration angular frequency and the damping coefficient when the entire system including the control system and the control target is approximated by a second-order lag system.

5は制御演算部であり,フィルタ処理後の指令refcおよび制御対象100に付加された検出器200で検出されたモータ位置xfbを入力し,位置・速度制御を行いトルク指令trefを出力する。図3に制御演算部の位置・速度制御の一例を示す。35の微分演算部はデジタル処理される場合,差分近似を用いた微分を用いれば良い。31のKpは位置制御比例ゲインを表し,32のKvは速度制御比例ゲインを,33の積分演算部で用いられるKiは積分ゲインを表し,34のJnは慣性モーメントノミナル値を表す。また,通常トルク指令後,電流ループの処理を行って電圧をモータに出力するが本発明に関係がないため図1では省略している。 Reference numeral 5 denotes a control calculation unit that inputs the filtered command refc and the motor position xfb detected by the detector 200 added to the controlled object 100, performs position / speed control, and outputs a torque command tref. FIG. 3 shows an example of position / speed control of the control calculation unit. When the 35 differential operation units are digitally processed, differentiation using difference approximation may be used. Kp of 31 represents a position control proportional gain, Kv of 32 represents a speed control proportional gain, Ki used in the integral calculation unit 33 represents an integral gain, and Jn of 34 represents an inertia moment nominal value. Further, after the normal torque command, the current loop is processed and the voltage is output to the motor, but this is not shown in FIG. 1 because it is not related to the present invention.

次に,図4の本発明の処理手順を示すフローチャートを用いて指令フィルタの各変数の設定方法を詳細に説明する。 Next, a method for setting each variable of the command filter will be described in detail with reference to the flowchart of FIG. 4 showing the processing procedure of the present invention.

まず,S1では指令条件である移動距離distと移動時間tbと指令次数に関する変数kを入力する。kの値は任意に設定可能であるが,通常の演算器で計算しやすいように,正の整数を選ぶと良い。本実施例では,一番簡単に計算できるようにk=1と設定する。 First, in S1, a variable k related to the command distance, that is, the commanded moving distance dist, the moving time tb, and the command order is input. The value of k can be set arbitrarily, but a positive integer should be selected so that it can be easily calculated by a normal computing unit. In this embodiment, k = 1 is set so that the calculation can be performed most easily.

次にS2では,式(5)で表される指令フィルタの変数であるωcおよびζを設定する。変数ωcとζの設定方法としては,制御対象と制御演算部を合わせた全システムの最も遅い振動根の固有振動角周波数と減衰係数をωcおよびζとして設定すればよい。なぜなら,実際に制御対象を動作させた際に問題となる振動のほとんどが,全システムの最も遅い振動根の振動と同じであるからである。このように,指令フィルタの分子,すなわち零点側に全システムの最も遅い振動根の固有振動角周波数と減衰係数を設定することで,実際のシステムと極零相殺が起こり,振動を完全に抑制できるのである。ここで注意しなければならない点は,全システムの最も遅い振動根は,元々制御対象が持っていた振動根が制御系により移動した振動根であり,制御対象の振動根の固有振動角周波数と減衰係数をそのまま指令フィルタの分子の変数として設定しても振動は抑制できない点である。   Next, in S2, ωc and ζ, which are variables of the command filter expressed by Expression (5), are set. As a method for setting the variables ωc and ζ, the natural vibration angular frequency and damping coefficient of the slowest vibration root of the entire system including the control target and the control calculation unit may be set as ωc and ζ. This is because most of the vibrations that become a problem when the control target is actually operated are the same as those of the slowest vibration root of the entire system. In this way, by setting the natural vibration angular frequency and damping coefficient of the slowest vibration root of the entire system on the numerator of the command filter, that is, the zero point side, pole zero cancellation occurs with the actual system, and vibration can be completely suppressed. It is. It should be noted that the slowest vibration root of the entire system is the vibration root that was originally moved by the control system, and the natural vibration angular frequency of the vibration root of the control object Even if the damping coefficient is set as it is as a numerator variable of the command filter, vibration cannot be suppressed.

また,指令フィルタの変数であるωcおよびζを設定する方法として,制御部の入力から制御対象の出力までの周波数特性を測定し,測定した周波数応答波形と2次遅れ系の周波数応答波形が一致するようにωcおよびζを調整して設定しても良い。 As a method of setting ωc and ζ, which are command filter variables, frequency characteristics from the input of the control unit to the output of the controlled object are measured, and the measured frequency response waveform matches the frequency response waveform of the second-order lag system. As such, ωc and ζ may be adjusted and set.

また,シミュレーションあるいは実機応答を確認しながらωcとζを調整し,最も振動が小さくなる値に設定しても良い。 Alternatively, ωc and ζ may be adjusted while confirming simulation or actual machine response, and set to a value at which vibration is minimized.

次にS3にて指令条件設定部で設定された,移動時間tbと指令次数に関する変数kから式(5)で表される指令フィルタの分母,すなわち極側の変数ωsを設定する。   Next, the denominator of the command filter expressed by the equation (5), that is, the pole-side variable ωs, is set from the variable k related to the movement time tb and the command order set in the command condition setting unit in S3.

ここで,本指令フィルタを用いると,S2で説明したように制御対象と制御演算部を合わせた全システムの振動は極零相殺により完全にキャンセルされ,新たに固有振動角周波数ωs,減衰=0の振動根を持つシステムに変換される。ωsの値は任意に設定可能であるので,入力する指令によって,システムが振動しないように固有振動角周波数ωsを決定すれば,このシステムは全く振動せずに動作するのである。 Here, when this command filter is used, as described in S2, the vibration of the entire system including the controlled object and the control operation unit is completely canceled by pole-zero cancellation, and a new natural angular frequency ωs, attenuation = 0. Is converted to a system with vibration roots. Since the value of ωs can be set arbitrarily, if the natural vibration angular frequency ωs is determined by the input command so that the system does not vibrate, the system operates without any vibration.

ここで,式(4)に示すaを移動距離に依存する変数とした速度時間関数v(t)を用いて,k=1としたときに移動時間tbを用いてωsは式(6)のように計算される。
ωs=1.4303*2・π/tb (6)
Here, using a speed time function v (t) in which a shown in Expression (4) is a variable depending on the moving distance, and k = 1, ωs is expressed by Expression (6) using the moving time tb. Is calculated as follows.
ωs = 1.4303 * 2 ・ π / tb (6)

次に,式(6)の導出方法を示す。
今指令を入力するシステムの伝達関数をG(s)として式(7)のように,固有振動角周波数ωs,減衰=0の2次遅れ系を考える。
G(s)=ωs2/(s2+ωs2) (7)
Next, a method for deriving Equation (6) is shown.
Consider a second-order lag system with natural vibration angular frequency ωs and damping = 0 as shown in equation (7), where G (s) is the transfer function of the system that inputs the command.
G (s) = ωs 2 / (s 2 + ωs 2 ) (7)

このようなシステムへ速度指令として式(4)に示す速度時間関数v(t)を入力した際の出力である速度vy(t)は、式(8)に示す微分方程式を解くことで求めることができる。
vy(2)(t)+ωs2・vy(t)=ωs2・v(t) (8)
The speed vy (t), which is the output when the speed time function v (t) shown in Expression (4) is input to such a system as a speed command, is obtained by solving the differential equation shown in Expression (8). Can do.
vy (2) (t) + ωs 2・ vy (t) = ωs 2・ v (t) (8)

k=1とした時、式(8)の微分方程式を解きvy(t)を求めると式(9)のようになる。また、加速度αy(t)を速度vy(t)を時間微分して求めると式(10)のようになる。
vy(t)={12ωs-6t2・ωs3+6t・tb・ωs3-12ωs・cos(t・ωs)
-6tb・ωs2・sin(t・ωs)}/(6・ωs5) (9)
αy(t)={-12tωs3+6tb・ωs3-6tb・ωs3・cos(t・ωs)
+12ωs2・sin(t・ωs)}/(6・ωs5) (10)
When k = 1, solving the differential equation of equation (8) to obtain vy (t) yields equation (9). Further, when the acceleration αy (t) is obtained by differentiating the speed vy (t) with respect to time, Equation (10) is obtained.
vy (t) = {12ωs-6t 2 ・ ωs 3 + 6t ・ tb ・ ωs 3 -12ωs ・ cos (t ・ ωs)
-6tb ・ ωs 2・ sin (t ・ ωs)} / (6 ・ ωs 5 ) (9)
αy (t) = {- 12t · ωs 3 + 6tb · ωs 3 -6tb · ωs 3 · cos (t · ωs)
+ 12ωs 2・ sin (t ・ ωs)} / (6 ・ ωs 5 ) (10)

ここで式(9)および式(10)に対して時刻t=0および時刻t=tbの時に,速度vyおよび加速度αyが0になるという境界条件を適用すると,式(11)の関係が得られる。
cos(tb・ωs)={4-(tb・ωs)2}/{4+(tb・ωs)2}
sin(tb・ωs)=4(tb・ωs)/{4+(tb・ωs)2}
(11)
Here, when the boundary condition that the velocity vy and the acceleration αy are 0 at the time t = 0 and the time t = tb is applied to the equations (9) and (10), the relationship of the equation (11) is obtained. It is done.
cos (tb ・ ωs) = {4- (tb ・ ωs) 2 } / {4+ (tb ・ ωs) 2 }
sin (tb ・ ωs) = 4 (tb ・ ωs) / {4+ (tb ・ ωs) 2 }
(11)

すなわち,この条件を満たすtbとωsの関係を求めれば、変数k=1の時に振動が発生しないようにできる。そして,式(11)を解析的に求めることにより,式(6)が導出されるのである。 That is, if the relationship between tb and ωs satisfying this condition is obtained, vibration can be prevented from occurring when the variable k = 1. Then, equation (6) is derived by analytically obtaining equation (11).

同様に,k=2,3の時は式(12),式(13)のような結果になる。
ωs=1.8354・2π/tb (12)
ωs=2.2255・2π/tb (13)
Similarly, when k = 2, 3, the results are as shown in equations (12) and (13).
ωs = 1.8354 ・ 2π / tb (12)
ωs = 2.2255 ・ 2π / tb (13)

なお,ここでは解析的にkとtbとωsの関係を導出する方法を説明したが,各kの値に対して制御対象の振動が最も小さくなるような,前記tbとωsの関係をシミュレーションまたは実験により測定しておき,測定結果に基づきωsを設定する方法を用いても良い。 Although the method of analytically deriving the relationship between k, tb, and ωs has been described here, the relationship between tb and ωs that minimizes the vibration of the controlled object for each k value is simulated or A method may be used in which ωs is set based on the measurement result after measurement by experiment.

本発明が従来技術と異なる部分は、指令を移動時間tbと指令次数に関する変数kとaを移動距離に依存する変数とした特別な速度時間関数に基づいて演算し,指令フィルタとして,sをラプラス演算子とした時に,ωs,ωc,ζを変数とする2次の伝達関数の特性を有するフィルタとし,移動時間tbと指令次数に関する変数kに基づいて指令フィルタの変数であるωsを演算で求め,指令フィルタの変数であるωcとζを制御系と制御対象を合わせた全システムを2次遅れ系で近似した際の固有角振動周波数と減衰係数に設定する部分である。 The present invention is different from the prior art in that the command is calculated based on a special speed time function in which the variables k and a relating to the movement time tb and the command order depend on the movement distance, and s is Laplace as a command filter. A filter having the characteristics of a second-order transfer function having ωs, ωc, and ζ as variables when it is used as an operator, and ωs that is a variable of the command filter is obtained by calculation based on the movement time tb and the variable k related to the command order , Ωc and ζ, which are variables of the command filter, are set to the natural angular vibration frequency and the damping coefficient when the entire system including the control system and the controlled object is approximated by a second-order lag system.

本発明を用いた時のシミュレーション結果を図9(c)に示す。図から分かるように、本発明を用いれば,振動が抑制できると同時に,モータも滑らかに動作することができる。 The simulation result when using the present invention is shown in FIG. As can be seen from the figure, if the present invention is used, vibration can be suppressed and the motor can operate smoothly.

第2実施例では,指令関数として式(14)で表されるa1,a2adを速度に依存する変数とした加減速度時間関数α(t) に基づいて指令演算を行う。ここで指令の払い出しを位置指令とする場合は,式(14)の関数を2階時間積分して用いる。
加速期間 0≦t≦ta α(t)=ad・tk・(ta-t)
一定速期間 ta≦t≦ta+tc α(t)=0
減速機間 ta+tc≦t≦2ta+tc α(t)=-ad・(t-ta-tc)k・(2ta+tc-t)k
(14)
In the second embodiment, the command calculation is performed based on the acceleration / deceleration time function α (t) using a1 and a2ad represented by Expression (14) as variables depending on the speed as the command function. Here, when the command payout is used as the position command, the function of Expression (14) is used after second-order time integration.
Acceleration period 0 ≦ t ≦ ta α (t) = ad ・ t k・ (ta-t)
Constant speed period ta ≦ t ≦ ta + tc α (t) = 0
Between reducers ta + tc ≦ t ≦ 2ta + tc α (t) =-ad ・ (t-ta-tc) k・ (2ta + tc-t) k
(14)

本指令を用いた場合は,実施例1と同様に,指令を入力するシステムの伝達関数をG(s)として式(7)のように固有振動角周波数ωs,減衰=0の2次遅れ系を考え,このシステムへ加速度指令として式(14)に示す加速度時間関数α(t)を入力し,微分方程式を解き境界条件を適用して各kにおける加減速時間taとωsの関係を解析的に求める。ただし,この場合の境界条件としては,t=0およびt=taの時点で加速度と躍度がともに0となる条件を用いる。 When this command is used, as in the first embodiment, the transfer function of the system that inputs the command is G (s), and the second order lag system with natural vibration angular frequency ωs and damping = 0 as shown in Equation (7) The acceleration time function α (t) shown in equation (14) is input to this system as an acceleration command, the differential equation is solved, and boundary conditions are applied to analyze the relationship between the acceleration / deceleration time ta and ωs at each k. Ask for. However, as a boundary condition in this case, a condition is used in which both acceleration and jerk become 0 at the time of t = 0 and t = ta.

この場合,結果としてk=1,k=2,k=3のときに対応したtaとωsの関係式は,式(6),式(12),式(13)の移動時間tbのところを加減速時間taに変更したものになる。 In this case, as a result, the relational expression between ta and ωs corresponding to k = 1, k = 2, and k = 3 is the movement time tb in the expressions (6), (12), and (13). The acceleration / deceleration time ta is changed.

このように、指令として加速,一定速,減速区間を場合わけした式(14)の指令を用いることで,速度の最大値に制限がある場合や動作速度を指定されている場合も問題なく本発明を使用でき,実施例1の効果と同様の効果が得られる。 In this way, by using the command of equation (14) that separates acceleration, constant speed, and deceleration sections as commands, there is no problem even when the maximum speed value is limited or the operation speed is specified. The invention can be used, and the same effect as that of the first embodiment can be obtained.

図5は本発明の構成を示すブロック図である。図において1は指令条件設定部であり,指令条件である移動距離distと移動時間tbと指令次数に関する変数kを設定する。
指令条件設定部ではさらに,後述する伝達特性GFのパラメータであるωcとζを設定する。ωcとζは制御系と制御対象を合わせた全システムを2次遅れ系で近似した際の固有振動角周波数と減衰係数に設定する。2は指令演算部であり指令払い出しサンプリングごとの指令refを算出し出力する。6は指令定数演算部であり,移動速時間tbと指令次数に関する変数kに基づいて指令フィルタの変数であるωsを演算で求める。5は制御演算部であり,指令refおよび制御対象100に付加された検出器200で検出されたモータ位置xfbを入力し,位置・速度制御を行いトルク指令trefを出力する。
FIG. 5 is a block diagram showing the configuration of the present invention. In the figure, reference numeral 1 denotes a command condition setting unit, which sets a variable k relating to a command distance, a movement distance dist, a movement time tb, and a command order.
The command condition setting unit further sets ωc and ζ, which are parameters of a transfer characteristic GF described later. ωc and ζ are set to the natural vibration angular frequency and the damping coefficient when the entire system including the control system and the controlled object is approximated by a second-order lag system. Reference numeral 2 denotes a command calculation unit that calculates and outputs a command ref for each command payout sampling. Reference numeral 6 denotes a command constant calculation unit that calculates ωs, which is a variable of the command filter, based on the moving speed time tb and the variable k related to the command order. Reference numeral 5 denotes a control calculation unit which inputs a command ref and a motor position xfb detected by the detector 200 added to the control object 100, performs position / speed control, and outputs a torque command tref.

ωcおよびζを設定する方法として,設計値を使用するか,制御部の入力から制御対象の出力までの周波数特性を測定し,測定した周波数応答波形と2次遅れ系の周波数応答波形が一致するようにωcおよびζを調整して設定しても良い。また,シミュレーションあるいは実機応答を確認しながらωcとζを調整し,最も振動が小さくなる値に設定しても良い。 As a method of setting ωc and ζ, use design values or measure frequency characteristics from the input of the control unit to the output of the controlled object, and the measured frequency response waveform matches the frequency response waveform of the second-order lag system. Thus, ωc and ζ may be adjusted and set. Alternatively, ωc and ζ may be adjusted while confirming simulation or actual machine response, and set to a value at which vibration is minimized.

本発明が実施例1、2と異なる部分は、指令を作成し,指令フィルタに通すのではなく,指令フィルタの特性も有した時間関数を指令として使用する部分である。
以下,実際に指令演算部で作成する指令に関して詳細を説明する。
ここでは,次数を決定するハ゜ラメーラkは1として説明するが,kが変わった場合も同様の方法で指令を作成することが可能である。
The present invention is different from the first and second embodiments in that a command is not created and passed through a command filter, but a time function having a command filter characteristic is used as a command.
Hereinafter, the details of the commands actually created by the command calculation unit will be described.
Here, the parameterer k for determining the order is described as 1. However, it is possible to create a command in the same way even when k changes.

k=1のとき速度関数v(t)は式(15)で表される。
v(t)=a・t・(tb−t) (15)
ここで、aは移動距離distから自動的に計算される。
a = dist*6/tb^3。
ここで式(15)をラプラス変換し、式(16)を導出する。
V(s)=a・((tb/s2)-(2/s2)) (16)
一方、伝達特性GF(s)は式(17)にように表される。
GF(s)=(ωs 2c 2)(s2+2ζωcc 2)/(s2+ωs 2) (17)
When k = 1, the speed function v (t) is expressed by Expression (15).
v (t) = a · t · (tb−t) (15)
Here, a is automatically calculated from the movement distance dist.
a = dist * 6 / tb ^ 3.
Here, formula (15) is Laplace transformed to derive formula (16).
V (s) = a ・ ((tb / s 2 )-(2 / s 2 )) (16)
On the other hand, the transfer characteristic GF (s) is expressed as in Expression (17).
GF (s) = (ω s 2 / ω c 2 ) (s 2 + 2ζω c + ω c 2 ) / (s 2 + ω s 2 ) (17)

ここで、振動周波数ωcと減衰係数ζは調整パラメータであり,ωsは移動時間tbと次数kから自動的に算出する。ωsの算出方法は後述する。
式(16)と式(17)を乗算し、さらに、速度を位置にするため積分を乗じ式(18)を得る。
Here, the vibration frequency ωc and the damping coefficient ζ are adjustment parameters, and ωs is automatically calculated from the movement time tb and the order k. A method for calculating ωs will be described later.
The equation (16) is multiplied by the equation (17), and further, the integral is multiplied to make the velocity a position, thereby obtaining an equation (18).

式(18)を逆ラプラス変換することにより、式(19)の位置の時間関数が求まる。 By performing inverse Laplace transform on equation (18), the time function at the position of equation (19) is obtained.

実装の際は、指令演算周期ごとに式(7)の時間tのところに、n*Tsを代入して位置指令を算出する。nは自然数である。
ここで,式(16)に示す速度時間関数v(t)を用いて,k=1としたときに移動時間tbを用いてωsは式(20)のように計算される。
ωs=1.4303*2・π/tb (20)
At the time of mounting, a position command is calculated by substituting n * Ts at time t in the equation (7) for each command calculation cycle. n is a natural number.
Here, using the velocity time function v (t) shown in equation (16), when k = 1, ωs is calculated as in equation (20) using the movement time tb.
ωs = 1.4303 * 2 ・ π / tb (20)

次に,式(20)の導出方法を示す。
今指令を入力するシステムの伝達関数をG(s)として式(21)のように,固有振動角周波数ωs,減衰=0の2次遅れ系を考える。
G(s)=ωs2/(s2+ωs2) (21)
このようなシステムへ速度指令として式(16)に示す速度時間関数v(t)を入力した際の出力である速度vy(t)は、式(22)に示す微分方程式を解くことで求めることができる。
vy(2)(t)+ωs2・vy(t)=ωs2・v(t) (22)
Next, a method for deriving equation (20) is shown.
Consider a second order lag system with natural vibration angular frequency ωs and damping = 0 as shown in equation (21), where G (s) is the transfer function of the system to which the command is input.
G (s) = ωs 2 / (s 2 + ωs 2 ) (21)
The speed vy (t), which is the output when the speed time function v (t) shown in Expression (16) is input to such a system as a speed command, is obtained by solving the differential equation shown in Expression (22). Can do.
vy (2) (t) + ωs 2・ vy (t) = ωs 2・ v (t) (22)

k=1とした時、式(22)の微分方程式を解きvy(t)を求めると式(23)のようになる。また、加速度αy(t)を速度vy(t)を時間微分して求めると式(24)のようになる。
vy(t)={12ωs-6t2・ωs3+6t・tb・ωs3-12ωs・cos(t・ωs)-6tb・ωs2・sin(t・ωs)}/(6・ωs5) (23)
αy(t)={-12tωs3+6tb・ωs3-6tb・ωs3・cos(t・ωs)+12ωs2・sin(t・ωs)}/(6・ωs5)
(24)
ここで式(23)および式(24)に対して時刻t=0および時刻t=tbの時に,速度vyおよび加速度αyが0になるという境界条件を適用すると,式(25)の関係が得られる。
cos(tb・ωs)={4-(tb・ωs)2}/{4+(tb・ωs)2}
sin(tb・ωs)=4(tb・ωs)/{4+(tb・ωs)2}
(25)
When k = 1, solving the differential equation of equation (22) to obtain vy (t) yields equation (23). Further, when the acceleration αy (t) is obtained by differentiating the speed vy (t) with respect to time, the following equation (24) is obtained.
vy (t) = {12ωs-6t 2 ・ ωs 3 + 6t ・ tb ・ ωs 3 -12ωs ・ cos (t ・ ωs) -6tb ・ ωs 2・ sin (t ・ ωs)} / (6 ・ ωs 5 ) ( 23)
αy (t) = {-12t ωs 3 + 6tb ・ ωs 3 -6tb ・ ωs 3・ cos (t ・ ωs) + 12ωs 2・ sin (t ・ ωs)} / (6 ・ ωs 5 )
(24)
Here, when the boundary condition that the speed vy and the acceleration αy are 0 at the time t = 0 and the time t = tb is applied to the expressions (23) and (24), the relationship of the expression (25) is obtained. It is done.
cos (tb ・ ωs) = {4- (tb ・ ωs) 2 } / {4+ (tb ・ ωs) 2 }
sin (tb ・ ωs) = 4 (tb ・ ωs) / {4+ (tb ・ ωs) 2 }
(25)

すなわち,この条件を満たすtbとωsの関係を求めれば、変数k=1の時に振動が発生しないようにできる。そして,式(25)を解析的に求めることにより,式(20)が導出されるのである。
同様に,k=2,3の時は式(26),式(27)のような結果になる。
ωs=1.8354・2π/tb (26)
ωs=2.2255・2π/tb (27)
That is, if the relationship between tb and ωs satisfying this condition is obtained, vibration can be prevented from occurring when the variable k = 1. Then, equation (20) is derived by analytically obtaining equation (25).
Similarly, when k = 2, 3, the results as shown in equations (26) and (27) are obtained.
ωs = 1.8354 ・ 2π / tb (26)
ωs = 2.2255 ・ 2π / tb (27)

なお、ここでは解析的にkとtbとωsの関係を導出する方法を説明したが,各kの値に対して制御対象の振動が最も小さくなるような,前記tbとωsの関係をシミュレーションまたは実験により測定しておき,測定結果に基づきωsを設定する方法を用いても良い。 Here, the method of analytically deriving the relationship between k, tb, and ωs has been described. However, the relationship between tb and ωs that minimizes the vibration of the controlled object with respect to each k value is simulated or A method may be used in which ωs is set based on the measurement result after measurement by experiment.

図2は第4実施例の構成を示す図である。本実施例が実施例3と異なるのは,指令が加速,一定速度,減速区間に場合わけされた指令を用いるところである。
k=1のとき加速度関数α(t)は式(28)で表される。
α(t)=a・t・(ta-t) (28)
ここで、aは移動速度Vから自動的に計算される。
a = V*6/tb^3
式(16)をラプラス変換し、式(29)を導出する。
α(s)=a・(ta/s2-2/s3) (29)
一方、伝達特性GF(s)は式(30)にように表される。
GF(s)=(ωs2/ωc2)・(s2+2・ζ・ωc・s+ωc2)/(s2+ωs2) (30)
FIG. 2 is a diagram showing the configuration of the fourth embodiment. This embodiment is different from the third embodiment in that the command is divided into commands in acceleration, constant speed, and deceleration sections.
When k = 1, the acceleration function α (t) is expressed by Expression (28).
α (t) = a ・ t ・ (ta-t) (28)
Here, a is automatically calculated from the moving speed V.
a = V * 6 / tb ^ 3
Equation (16) is Laplace transformed to derive Equation (29).
α (s) = a ・ (ta / s 2 -2 / s 3 ) (29)
On the other hand, the transfer characteristic GF (s) is expressed as in Expression (30).
GF (s) = (ωs 2 / ωc 2 ) ・ (s 2 +2 ・ ζ ・ ωc ・ s + ωc 2 ) / (s 2 + ωs 2 ) (30)

ここで、振動周波数ωcと減衰係数ζは調整パラメータであり,ωsは移動時間tbと次数kから自動的に算出する。
式(29)と式(30)を乗算し、さらに、加速度を位置にするため2階積分を乗じ式(31)を得る。
Here, the vibration frequency ωc and the damping coefficient ζ are adjustment parameters, and ωs is automatically calculated from the movement time tb and the order k.
Multiplying Expression (29) and Expression (30), and further multiplying the second-order integral to obtain the position of acceleration, yields Expression (31).

式(31)を逆ラプラス変換することにより、式(32)の位置の時間関数が求まる。 By performing inverse Laplace transform on Equation (31), the time function at the position of Equation (32) is obtained.

実装の際は、指令演算周期ごとに式(32)の時間tのところに、n*Tsを代入して位置指令を算出する。nは自然数である。 At the time of mounting, a position command is calculated by substituting n * Ts at time t in the equation (32) for each command calculation cycle. n is a natural number.

本指令を用いた場合は,実施例1と同様に,指令を入力するシステムの伝達関数をG(s)として式(21)のように固有振動角周波数ωs,減衰=0の2次遅れ系を考え,このシステムへ加速度指令として式(16)に示す加速度時間関数α(t)を入力し,微分方程式を解き境界条件を適用して各kにおける加減速時間taとωsの関係を解析的に求める。
ただし,この場合の境界条件としては,t=0およびt=taの時点で加速度と躍度がともに0となる条件を用いる。
When this command is used, as in the first embodiment, the transfer function of the system to which the command is input is G (s), and the second-order lag system with natural vibration angular frequency ωs and damping = 0 as shown in Equation (21) The acceleration time function α (t) shown in Equation (16) is input to the system as an acceleration command, and the differential equation is solved and boundary conditions are applied to analyze the relationship between the acceleration / deceleration time ta and ωs at each k. Ask for.
However, as a boundary condition in this case, a condition is used in which both acceleration and jerk become 0 at the time of t = 0 and t = ta.

この場合,結果としてk=1,k=2,k=3のときに対応したtaとωsの関係式は,式(20),式(26),式(27)の移動時間tbのところを加減速時間taに変更したものになる。
k=1のときの結果を式(33)に示す。
ωs=1.4303*2・π/ta (33)
このように、指令として加速,一定速,減速区間を場合わけした式(32)の指令を用いることで,速度の最大値に制限がある場合や動作速度を指定されている場合も問題なく本発明を使用でき,実施例1の効果と同様の効果が得られる。
In this case, as a result, the relational expression between ta and ωs corresponding to k = 1, k = 2, and k = 3 is the movement time tb in the expressions (20), (26), and (27). The acceleration / deceleration time ta is changed.
The result when k = 1 is shown in Expression (33).
ωs = 1.4303 * 2 ・ π / ta (33)
In this way, by using the command of Equation (32) that separates acceleration, constant speed, and deceleration sections as commands, there is no problem even when the maximum speed value is limited or the operation speed is specified. The invention can be used, and the same effect as that of the first embodiment can be obtained.

具体的に式(32)を用い,速度Vと加速時間ta1、一定速度時間tc、減速時間ta2として場合わけしたときの式を以下に示しておく。
加速時は式(32)と式(33)のtaをta1としてref1(t)とし,減速時は式(32)と式(33)のtaをta2としてref2(t)とする。
これらを用い場合わけした式を式(34)に示す。
加速 0≦t≦ta1 ref1(t)
定速 ta1≦t≦ta1+tc V(ta1・ωc+4・ζ)/2ωc+V(t-ta1)
減速 ta1+tc≦t≦ta1+tc+ta2 V(ta1・ωc+4・ζ)/2ωc+V・tc+V(t-ta1-tc)
-ref2(t-ta1-tc)
(34)
Concretely, the equation (32) is used, and the equation when the velocity V, the acceleration time ta1, the constant velocity time tc, and the deceleration time ta2 are separated is shown below.
When accelerating, ta in equation (32) and equation (33) is ta1 and ref1 (t), and during deceleration, ta in equation (32) and equation (33) is ta2 and ref2 (t).
An equation that uses these cases is shown in Equation (34).
Acceleration 0 ≦ t ≦ ta1 ref1 (t)
Constant speed ta1 ≦ t ≦ ta1 + tc V (ta1 ・ ωc + 4 ・ ζ) / 2ωc + V (t-ta1)
Deceleration ta1 + tc ≦ t ≦ ta1 + tc + ta2 V (ta1 ・ ωc + 4 ・ ζ) / 2ωc + V ・ tc + V (t-ta1-tc)
-ref2 (t-ta1-tc)
(34)

1 指令条件設定部
2 指令演算部
3 指令フィルタ演算部
4 フィルタ定数演算部
5 制御演算部
6 指令定数演算部
100 制御対象
200 検出器
31 位置制御比例制御部
32 速度制御比例制御部
33 速度制御積分制御部
34 慣性モーメントノミナル値乗算部
35 微分演算部
61 位置指令振幅設定部
62 S字位置指令発生部
63 プレフィルタ
65 速度・位置制御部
66 モータから負荷の伝達関数
DESCRIPTION OF SYMBOLS 1 Command condition setting part 2 Command calculating part 3 Command filter calculating part 4 Filter constant calculating part 5 Control calculating part 6 Command constant calculating part 100 Control object 200 Detector 31 Position control proportional control part 32 Speed control proportional control part 33 Speed control integration Control unit 34 Moment of inertia nominal value multiplication unit 35 Differentiation calculation unit 61 Position command amplitude setting unit 62 S-shaped position command generation unit 63 Prefilter 65 Speed / position control unit 66 Transfer function of load from motor

Claims (10)

制御対象に対する指令条件として、前記制御対象を現在位置から移動させる距離である移動距離(dist)、前記制御対象が前記移動距離(dist)を移動する時間を示す移動時間(tb)指令次数に関する変数(k)を、指令演算部に対して設定する指令条件設定部と、
前記移動距離(dist)から計算された変数(a)前記移動時間(tb)、及び次数である前記変数(k)パラメータとしてみ、時間(t)を変数として前記制御対象の速度を算出する速度時間関数を時間積分して、指令払い出し周期毎に位置指令(ref)を演算する前記指令演算部と、
前記速度時間関数に基づく速度及び加速度が、時刻0(ゼロ)及び時刻前記移動時間(tb)で0(ゼロ)になる境界条件を満たす、前記移動時間(tb)前記指令次数に関する変数(k)、前記第1の指令フィルタ変数(ωs)との関係から、前記第1の指令フィルタ変数(ωs)を演算するフィルタ定数演算部と、
前記指令演算部が演算した前記位置指令(ref)が入力され、入力された前記位置指令(ref)から、前記フィルタ定数演算部が演算した前記第1の指令フィルタ変数(ωs)、所定の第2及び第3指令フィルタ変数(ωc,ζ)を含むフィルタ伝達関数に基づいて、後退差分、前進差分、双一次変換のいずれか1つを用いて新たな位置指令(refc)を演算して出力する指令フィルタ演算部と、
前記新たな位置指令(refc)及び制御対象に付加された検出器で検出される位置検出信号に基づいて、前記制御対象であるモータを駆動するための制御演算を行う制御演算部と、を備えた
ことを特徴とするモータ制御装置。
As command conditions for the control object, a movement distance (dist) that is a distance for moving the control object from a current position , a movement time (tb) that indicates a time during which the control object moves the movement distance (dist ) , and a command order A command condition setting unit for setting the variable (k) for the command calculation unit;
The moving distance (dist) calculated variable from (a), the moving time (tb), and viewed including the variable (k) which is the next number as a parameter, the speed of the controlled object time (t) as a variable The command calculation unit that time-integrates a speed time function to be calculated and calculates a position command (ref) for each command payout period;
A variable (k) relating to the movement time (tb) and the command order satisfying a boundary condition that the velocity and acceleration based on the velocity time function satisfy 0 (zero) at the time 0 (zero) and the movement time (tb) . ) , A filter constant calculation unit that calculates the first command filter variable (ωs) from the relationship with the first command filter variable (ωs),
The position command (ref) calculated by the command calculation unit is input, and from the input position command (ref) , the first command filter variable (ωs) calculated by the filter constant calculation unit, a predetermined first Based on a filter transfer function including the second and third command filter variables (ωc, ζ), a new position command (refc) is calculated and output using any one of a backward difference, a forward difference, and a bilinear transformation. A command filter computing unit to
A control calculation unit that performs a control calculation for driving the motor that is the control target, based on the new position command (refc) and a position detection signal that is detected by a detector added to the control target. A motor control device characterized by that.
前記指令フィルタ演算部は、
前記所定の第2及び第3指令フィルタ変数(ωc,ζ)をそれぞれ、
前記制御演算部と前記制御対象とを合わせた全システムを、2次遅れ系で近似した際の固有振動角周波数と減衰係数に設定される
ことを特徴とする請求項1記載のモータ制御装置。
The command filter calculation unit is
The predetermined second and third command filter variables (ωc, ζ), respectively;
The motor control device according to claim 1, wherein the whole system including the control calculation unit and the control target is set to a natural vibration angular frequency and a damping coefficient when approximated by a second-order lag system.
前記指令フィルタ演算部は、
前記所定の第2及び第3指令フィルタ変数(ωc,ζ)をそれぞれ、
前記制御演算部と前記制御対象とを合わせた全システムの最も遅い振動根の固有振動角周波数と減衰係数に設定される
ことを特徴とする請求項2記載のモータ制御装置。
The command filter calculation unit is
The predetermined second and third command filter variables (ωc, ζ), respectively;
3. The motor control device according to claim 2, wherein the motor control device is set to a natural vibration angular frequency and a damping coefficient of the slowest vibration root of the entire system including the control calculation unit and the control target.
前記フィルタ定数演算部は、
前記指令次数に関する変数(k)を任意の正の整数した場合、
前記速度時間関数に基づく速度及び加速度が、時刻0(ゼロ)及び時刻前記移動時間(tb)で0(ゼロ)になる境界条件を満たす、前記移動時間(tb)、前記指令次数に関する変数(k)、前記第1の指令フィルタ変数(ωs)との関係から、前記第1の指令フィルタ変数(ωs)を演算する
ことを特徴とする請求項1または2に記載のモータ制御装置。
The filter constant calculator is
When the variable (k) related to the command orders to any positive integer,
A variable (k) relating to the movement time (tb) and the command order satisfying a boundary condition that the velocity and acceleration based on the velocity time function satisfy 0 (zero) at the time 0 (zero) and the movement time (tb). The motor control device according to claim 1, wherein the first command filter variable (ωs) is calculated from a relationship with the first command filter variable (ωs).
前記指令条件設定部は、
加速期間が0≦t≦ta、一定速度期間がta≦t≦ta+tc、減速期間がta+tc≦t≦2ta+tcとした場合の加減速時間(ta)と一定速度時間(tc)を、前記指令演算部に対して更に設定し、
前記指令演算部は、
前記速度時間関数に代えて、速度から計算された変数(ad)前記加減速時間(ta)、前記一定速度時間(tc)、及び次数である前記変数(k)パラメータとしてみ、時間(t)を変数として前記制御対象の加速度を算出する加速度時間関数を2階時間積分して、指令払い出し周期毎に位置指令を演算し、
前記フィルタ定数演算部は、
前記移動時間(tb)に代えて前記加減速時間(ta)を用い、前記加減速時間(ta)と前記指令次数に関する変数(k)に基づいて、第1の指令フィルタ変数(ωs)を演算する
ことを特徴とする請求項1−3のいずれか1項に記載のモータ制御装置。
The command condition setting unit
The command calculation unit calculates acceleration / deceleration time (ta) and constant speed time (tc) when the acceleration period is 0 ≦ t ≦ ta, the constant speed period is ta ≦ t ≦ ta + tc, and the deceleration period is ta + tc ≦ t ≦ 2ta + tc. Further setting for
The command calculation unit is
Instead of the velocity time function, variables calculated from the velocity (ad), the acceleration and deceleration time (ta), the constant speed time (tc), and viewed including the variable (k) which is the next number as a parameter, the time The acceleration time function for calculating the acceleration of the control object with (t) as a variable is integrated on the second floor, and a position command is calculated for each command payout period,
The filter constant calculator is
Using the acceleration / deceleration time (ta) instead of the travel time (tb) , the first command filter variable (ωs) is calculated based on the acceleration / deceleration time (ta) and the variable (k) related to the command order. The motor control device according to claim 1, wherein the motor control device is a motor control device.
前記フィルタ定数演算部は、
前記指令次数に関する変数(k)を任意の正の整数した場合、
前記加速度時間関数に基づく加速度及び躍度が、時刻0(ゼロ)及び時刻前記加減速時間(ta)で0(ゼロ)になる境界条件を満たす、前記加減速時間(ta)、前記指令次数に関する変数(k)、前記第1の指令フィルタ変数(ωs)との関係から、前記第1の指令フィルタ変数(ωs)を演算する
ことを特徴とする請求項5に記載のモータ制御装置。
The filter constant calculator is
When the variable (k) related to the command orders to any positive integer,
The acceleration / deceleration time (ta), which is based on the acceleration time function, satisfies the boundary condition of 0 (zero) and 0 (zero) at the time of acceleration / deceleration time (ta). The motor control device according to claim 5, wherein the first command filter variable (ωs) is calculated from a relationship between the variable (k) and the first command filter variable (ωs).
請求項1−6のいずれか1項に記載の前記フィルタ定数演算部と前記指令フィルタ演算部とに代えて、指令定数演算部を備え、
前記指令条件設定部は、
前記制御演算部と前記制御対象とを合わせた全システムを、2次遅れ系で近似した際の固有振動角周波数と減衰係数にそれぞれ設定される、前記所定の第2及び第3指令フィルタ変数(ωc,ζ)を前記指令演算部に対して更に設定し、
前記指令定数演算部は、
前記速度時間関数に基づく速度及び加速度が、時刻0(ゼロ)及び時刻前記移動時間(tb)で0(ゼロ)になる境界条件を満たす、前記移動時間(tb)前記指令次数に関する変数(k)、前記第1の指令フィルタ変数(ωs)との関係から、前記第1の指令フィルタ変数(ωs)を演算し、
前記指令演算部は、
記指令定数演算部が演算した前記第1の指令フィルタ変数(ωs)、前記所定の第2及び第3指令フィルタ変数(ωc,ζ)を含むフィルタ特性を有し、前記移動距離(dist)から計算された変数(a)前記移動時間(tb)、及び次数である前記変数(k)パラメータとしてみ、時間(t)を変数として前記制御対象の速度を算出する時間関数から導出される式を時間積分して、指令払い出し周期毎に位置指令(ref)を演算し、
前記制御演算部は、
該位置指令(ref)に基づいて前記モータを駆動するための制御演算を行う
ことを特徴とする請求項1−6のいずれか1項に記載のモータ制御装置。
In place of the filter constant calculation unit and the command filter calculation unit according to any one of claims 1 to 6, a command constant calculation unit is provided,
The command condition setting unit
The predetermined second and third command filter variables (respectively) set to the natural vibration angular frequency and the damping coefficient when the entire system including the control calculation unit and the control target is approximated by a second-order lag system. ωc, ζ) is further set for the command calculation unit,
The command constant calculator is
A variable (k) relating to the movement time (tb) and the command order satisfying a boundary condition that the velocity and acceleration based on the velocity time function satisfy 0 (zero) at the time 0 (zero) and the movement time (tb) . ) Calculating the first command filter variable (ωs) from the relationship with the first command filter variable (ωs),
The command calculation unit is
The front Symbol Directive constant calculating unit has calculated the first instruction filter variable (.omega.s), has a filter characteristic comprising a predetermined second and third command filter variable (ωc, ζ), the moving distance (dist calculated variable from) (a), the moving time (tb), and viewed including the variable (k) which is the next number as a parameter, a time function for calculating the speed of said controlled object time (t) as a variable Integrate the derived formula over time to calculate the position command (ref) for each command payout period,
The control calculation unit is
The motor control device according to claim 1, wherein a control calculation for driving the motor is performed based on the position command (ref).
前記指令定数演算部は、
前記指令次数に関する変数(k)を任意の正の整数した場合、
前記速度時間関数に基づく速度及び加速度が、時刻0(ゼロ)及び時刻前記移動時間(tb)で0(ゼロ)になる境界条件を満たす、前記移動時間(tb)、前記指令次数に関する変数(k)、前記第1の指令フィルタ変数(ωs)との関係から、前記第1の指令フィルタ変数(ωs)を演算する
ことを特徴とする請求項7に記載のモータ制御装置。
The command constant calculator is
When the variable (k) related to the command orders to any positive integer,
A variable (k) relating to the movement time (tb) and the command order satisfying a boundary condition that the velocity and acceleration based on the velocity time function satisfy 0 (zero) at the time 0 (zero) and the movement time (tb). The motor control device according to claim 7, wherein the first command filter variable (ωs) is calculated from the relationship with the first command filter variable (ωs).
前記指令条件設定部は、
加速時間(ta1)と一定速度時間(tc)と減速時間(ta2)とを、前記指令演算部に対して更に設定し、
前記指令演算部は、
前記速度時間関数に代えて、速度から計算された変数(a)、前記加速時間(ta1)、前記一定速度時間(tc)、前記減速時間(ta2)、及び次数である前記変数(k)パラメータとしてみ、時間(t)を変数として前記制御対象の加速度を算出する加速度時間関数から導出される式を2階時間積分して、指令払い出し周期毎に位置指令(ref)を演算する
ことを特徴とする請求項7記載のモータ制御装置。
The command condition setting unit
An acceleration time (ta1), a constant speed time (tc), and a deceleration time (ta2) are further set for the command calculation unit,
The command calculation unit is
Instead of the speed time function, the variable (a ) calculated from the speed , the acceleration time (ta1), the constant speed time (tc), the deceleration time (ta2) , and the variable (k) which is the order I viewed including as parameters, time and second-order time integration of the equations derived from the acceleration time function for calculating the acceleration of the controlled object a (t) as a variable, it calculates the position command to command payout per period (ref) The motor control device according to claim 7.
前記指令定数演算部は、
前記指令次数に関する変数(k)を任意の正の整数した場合、
前記加速度時間関数に基づく加速度及び躍度が、時刻0(ゼロ)、時刻前記加速時間(ta1)及び時刻前記減速時間(ta)で0(ゼロ)になる境界条件を満たす、前記加速時間(ta1)、記減速時間(ta)、前記指令次数に関する変数(k)、前記第1の指令フィルタ変数(ωs)との関係から、前記第1の指令フィルタ変数(ωs)を演算する
ことを特徴とする請求項に記載のモータ制御装置。
The command constant calculator is
When the variable (k) related to the command orders to any positive integer,
The acceleration and jerk based on the acceleration time function, time 0 (zero), time the acceleration time (ta1) and time before Symbol decrease deceleration time (ta 2) at 0 satisfies the boundary condition becomes (zero), the acceleration time (ta1), before Symbol decrease deceleration time (ta 2), variable (k) relating to the instruction order, from the relationship between the first reference filter variables (.omega.s), the first instruction filter variable (.omega.s) The motor control device according to claim 9 , wherein the motor control device performs calculation.
JP2009051736A 2009-03-05 2009-03-05 Motor control device Active JP5407435B2 (en)

Priority Applications (1)

Application Number Priority Date Filing Date Title
JP2009051736A JP5407435B2 (en) 2009-03-05 2009-03-05 Motor control device

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
JP2009051736A JP5407435B2 (en) 2009-03-05 2009-03-05 Motor control device

Publications (3)

Publication Number Publication Date
JP2010207011A JP2010207011A (en) 2010-09-16
JP2010207011A5 JP2010207011A5 (en) 2012-03-08
JP5407435B2 true JP5407435B2 (en) 2014-02-05

Family

ID=42967927

Family Applications (1)

Application Number Title Priority Date Filing Date
JP2009051736A Active JP5407435B2 (en) 2009-03-05 2009-03-05 Motor control device

Country Status (1)

Country Link
JP (1) JP5407435B2 (en)

Families Citing this family (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP5688679B2 (en) * 2011-01-31 2015-03-25 株式会社安川電機 Command generation function determination method, command generation method, command generation device, and motor control device
JP6242512B2 (en) 2015-02-04 2017-12-06 三菱電機株式会社 Control device for electric motor and industrial machinery
JP7238673B2 (en) * 2019-07-30 2023-03-14 ブラザー工業株式会社 Numerical controller and control method
CN113642127B (en) * 2021-08-13 2024-03-01 合肥工业大学 Multi-period calculation method for vibration and energy of axially moving rope equipment

Family Cites Families (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP3946046B2 (en) * 2002-01-15 2007-07-18 富士機械製造株式会社 Damping control method of machine and damping control type machine
JP2005110396A (en) * 2003-09-30 2005-04-21 Matsushita Electric Ind Co Ltd Control unit and control method of motor
JP4483440B2 (en) * 2004-07-12 2010-06-16 株式会社安川電機 Motion control device

Also Published As

Publication number Publication date
JP2010207011A (en) 2010-09-16

Similar Documents

Publication Publication Date Title
JP4577107B2 (en) Machine position controller
JP5273575B2 (en) Electric motor control device
JP5209810B1 (en) Motor control device with function to estimate inertia, friction coefficient and spring constant at the same time
JP4283214B2 (en) Machine tip control device
US9772619B2 (en) Motor control device
JP5078891B2 (en) Method and apparatus for moving guidance of machine elements in a machine
TWI501540B (en) Motor controlling apparatus
JP2005301508A (en) Control unit
JP5652678B2 (en) Electric motor control device
US20160252896A1 (en) Motor controller having a function of suppressing vibrations
JP5407435B2 (en) Motor control device
JP6281751B2 (en) Position control system
JP5989694B2 (en) Control device, control method, and control program
US10558176B2 (en) Feedback control system with periodic disturbance suppression and resonance/disturbance suppression using μ-synthesis
JP5441944B2 (en) Motor control device
JP2008228484A (en) Motor controller and motor control method
JPWO2009110368A1 (en) Feed forward control method for moving body
US20200301376A1 (en) Machine learning device, control system, and machine learning
JP2019008707A (en) Servo controller, servo control method and system
JP6310944B2 (en) Method and apparatus for supporting mechanical design improvement work
JP5176729B2 (en) Motor controller with moment of inertia identifier
JP5263143B2 (en) Electric motor control device
WO2019239594A1 (en) Numerical control device
JP2003274684A (en) Servo controlling apparatus
JP5084196B2 (en) Electric motor control apparatus and electric motor control method

Legal Events

Date Code Title Description
A521 Written amendment

Free format text: JAPANESE INTERMEDIATE CODE: A523

Effective date: 20120119

A621 Written request for application examination

Free format text: JAPANESE INTERMEDIATE CODE: A621

Effective date: 20120119

RD02 Notification of acceptance of power of attorney

Free format text: JAPANESE INTERMEDIATE CODE: A7422

Effective date: 20120216

A977 Report on retrieval

Free format text: JAPANESE INTERMEDIATE CODE: A971007

Effective date: 20130529

A131 Notification of reasons for refusal

Free format text: JAPANESE INTERMEDIATE CODE: A131

Effective date: 20130604

A521 Written amendment

Free format text: JAPANESE INTERMEDIATE CODE: A523

Effective date: 20130731

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

A61 First payment of annual fees (during grant procedure)

Free format text: JAPANESE INTERMEDIATE CODE: A61

Effective date: 20131021

R150 Certificate of patent or registration of utility model

Ref document number: 5407435

Country of ref document: JP

Free format text: JAPANESE INTERMEDIATE CODE: R150