JP2017016391A - Control device - Google Patents

Control device Download PDF

Info

Publication number
JP2017016391A
JP2017016391A JP2015132530A JP2015132530A JP2017016391A JP 2017016391 A JP2017016391 A JP 2017016391A JP 2015132530 A JP2015132530 A JP 2015132530A JP 2015132530 A JP2015132530 A JP 2015132530A JP 2017016391 A JP2017016391 A JP 2017016391A
Authority
JP
Japan
Prior art keywords
error
control
unit
homogeneous
order
Prior art date
Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
Pending
Application number
JP2015132530A
Other languages
Japanese (ja)
Inventor
俊亮 的場
Toshiaki Matoba
俊亮 的場
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.)
Daihen Corp
Original Assignee
Daihen 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 Daihen Corp filed Critical Daihen Corp
Priority to JP2015132530A priority Critical patent/JP2017016391A/en
Publication of JP2017016391A publication Critical patent/JP2017016391A/en
Pending legal-status Critical Current

Links

Images

Abstract

PROBLEM TO BE SOLVED: To solve the problem that in the case of finite time settling control in homogenous control, oscillation is deteriorated when an error is small or follow-up performance is deteriorated when an error is 1 or greater.SOLUTION: A control device 3 comprises: an error calculation unit 31 for calculating an error in the present value of a control object with respect to a host command value; a homogenous order acquisition unit 33 for acquiring a homogenous order in accordance with the error; an arithmetic unit 34 for performing an exponential arithmetic on the error that corresponds to the homogenous order so that homogenous control is achieved; and a command value calculation unit 36 for calculating a low-order command value from the arithmetic result. The homogenous order is set to 0 in a small range and a large range of errors. As a result, it is possible to suppress an increase in oscillation in the small range of errors, as compared with finite time settling control, and to improve convergence in the large range of errors.SELECTED DRAWING: Figure 7

Description

本発明は、同次システムとして制御対象を制御する制御装置に関する。   The present invention relates to a control device that controls a control target as a homogeneous system.

従来、システムの同次性を利用した制御方法が知られている(非特許文献1,2)。また、そのような同次システムを、位置をP制御で制御して速度指令を生成し、速度をPI制御で制御して電流指令を生成するP−PI制御に応用した有限時間整定P−PI制御という制御方法も知られている(非特許文献3)。   Conventionally, a control method using the homogeneity of a system is known (Non-Patent Documents 1 and 2). Further, such a homogeneous system is applied to P-PI control in which the position is controlled by P control to generate a speed command, and the speed is controlled by PI control to generate a current command. A control method called control is also known (Non-Patent Document 3).

V. T. Haimo, "Finite time controllers", SIAM Journal on Control and Optimization, Volume 24 Issue 4, pp. 760-770, 1986V. T. Haimo, "Finite time controllers", SIAM Journal on Control and Optimization, Volume 24 Issue 4, pp. 760-770, 1986 A. Bacciotti, L. Rosier, "Liapunov Functions and Stability in Control Theory", Springer-Verlag, 2005A. Bacciotti, L. Rosier, "Liapunov Functions and Stability in Control Theory", Springer-Verlag, 2005 西田直貴、的場俊亮、中村文一、中村奈美、「同次P−PI制御によるロボットマニピュレータの高精度制御」、第55回システム制御情報学会研究発表講演会、2011年Naoki Nishida, Toshiaki Matoba, Bunichi Nakamura, Nami Nakamura, “Highly Accurate Control of Robot Manipulators Using Homogeneous P-PI Control”, 55th Annual Conference of the Institute of Systems, Control and Information Engineers, 2011

しかしながら、従来の同次システムにおいては、同次次数が固定されていた。特に、同次次数が負の値に固定されている有限時間整定制御の場合には、誤差の小さい状態、すなわちシステムの停止状態において振動が増加する可能性があったり、誤差の大きい状態において追従性能が低下したりするなどの問題があった。
一般的に言えば、従来の同次システムによる制御において、より適切な制御を行うことができるようにしたいという要望があった。
However, in the conventional homogeneous system, the homogeneous order is fixed. In particular, in the case of finite time settling control in which the homogeneity order is fixed to a negative value, there is a possibility that vibration will increase in a small error state, that is, in a system stop state, or follow in a large error state. There were problems such as performance degradation.
Generally speaking, there has been a desire to be able to perform more appropriate control in the control by the conventional homogeneous system.

本発明は、上記課題を解決するためになされたものであり、同次システムによる制御において、より適切な制御を行うことができる制御装置を提供することを目的とする。   The present invention has been made to solve the above-described problems, and an object of the present invention is to provide a control device capable of performing more appropriate control in the control by the homogeneous system.

上記目的を達成するため、本発明による制御装置は、上位指令値と、制御対象の現在値との誤差を算出する誤差算出部と、同次次数を取得する同次次数取得部と、同次制御となるように、誤差に同次次数に応じた指数演算を行う演算部と、演算部による演算結果から下位指令値を算出する指令値算出部と、を備えたものである。
このような構成により、同次システムにおいて同次次数が変化することになるため、例えば、同次次数取得部が同次次数の適切な取得を行うことにより、より適切な制御を行うことができるようになる。
In order to achieve the above object, a control device according to the present invention includes an error calculation unit that calculates an error between a higher-order command value and a current value of a control target, a homogeneous order acquisition unit that acquires a homogeneous order, In order to be controlled, an arithmetic unit that performs an exponential operation according to the order of the error is provided, and a command value calculation unit that calculates a lower order command value from a calculation result by the arithmetic unit.
With such a configuration, the homogeneous order changes in the homogeneous system, so that, for example, the homogeneous degree acquisition unit can appropriately control the homogeneous order to perform more appropriate control. It becomes like this.

また、本発明による制御装置では、誤差に正の実数であるスケーリング係数を乗算するスケーリング部と、演算部による演算結果にスケーリング係数の逆数を乗算する逆スケーリング部と、をさらに備え、演算部は、スケーリング係数が乗算された誤差に指数演算を行い、指令値算出部は、スケーリング係数の逆数の乗算された演算結果から下位指令値を算出してもよい。
同次システムにおいては、演算対象となる誤差が1より大きいかどうかによって、指数演算の結果が変化することになる。したがって、このような構成により、演算対象となる誤差が、指数演算の効果の得られる適切な値の範囲となるようにすることができる。
The control device according to the present invention further includes a scaling unit that multiplies the error by a scaling factor that is a positive real number, and an inverse scaling unit that multiplies the operation result of the operation unit by the reciprocal of the scaling coefficient. Further, the error multiplied by the scaling factor may be exponentially calculated, and the command value calculation unit may calculate the lower command value from the calculation result obtained by multiplying the inverse of the scaling factor.
In the homogeneous system, the result of the exponent operation changes depending on whether the error to be calculated is larger than 1. Therefore, with such a configuration, it is possible to make the error that is the object of calculation fall within an appropriate value range in which the effect of exponential calculation can be obtained.

また、本発明による制御装置では、制御対象に関する現在値に基づいて、スケーリング部及び逆スケーリング部が用いるスケーリング係数を変更する変更部をさらに備えてもよい。
このような構成により、例えば、現在値などに応じてスケーリング係数を変更することにより、演算対象となる誤差を、より適切な効果の得られる範囲に動的に変更することができるようになる。
In addition, the control device according to the present invention may further include a changing unit that changes the scaling coefficient used by the scaling unit and the inverse scaling unit based on the current value related to the control target.
With such a configuration, for example, by changing the scaling coefficient according to the current value or the like, the error to be calculated can be dynamically changed to a range where a more appropriate effect can be obtained.

また、本発明による制御装置では、同次次数取得部は、スケーリング係数が乗算された誤差に基づいて同次次数を取得してもよい。
このような構成により、同次次数の取得に用いられる誤差についても、適切な範囲となるようにすることができる。
In the control device according to the present invention, the homogeneity order acquisition unit may acquire the homogeneity order based on an error multiplied by the scaling coefficient.
With such a configuration, it is possible to make the error used for obtaining the homogeneous order within an appropriate range.

また、本発明による制御装置では、同次次数取得部は、誤差の絶対値が、1より小さい閾値よりも小さい範囲では、0である同次次数を取得してもよい。
このような構成により、誤差の小さい状態における振動の増加を抑制することができる。
In the control device according to the present invention, the homogeneity order acquisition unit may acquire a homogeneity order of 0 in a range where the absolute value of the error is smaller than a threshold value smaller than 1.
With such a configuration, it is possible to suppress an increase in vibration in a state where an error is small.

また、本発明による制御装置では、同次次数取得部は、誤差の絶対値が、閾値よりも大きく、1より小さい範囲では、0未満である同次次数を取得してもよい。
このような構成により、誤差の絶対値が閾値より大きく1より小さい範囲において、誤差の収束性能を向上させることができる。
In the control device according to the present invention, the homogeneous order acquisition unit may acquire a homogeneous order that is less than 0 in a range where the absolute value of the error is larger than the threshold value and smaller than 1.
With such a configuration, the error convergence performance can be improved in a range where the absolute value of the error is larger than the threshold value and smaller than 1.

また、本発明による制御装置では、同次次数取得部は、誤差の絶対値が1以上の範囲では、0以上である同次次数を取得してもよい。
このような構成により、誤差の大きい状態における追従性を向上させることができる。
In the control device according to the present invention, the homogeneity order acquisition unit may acquire a homogeneity order that is 0 or more in a range where the absolute value of the error is 1 or more.
With such a configuration, the followability in a state with a large error can be improved.

また、本発明による制御装置では、制御対象は、モータであってもよい。
このような構成により、例えば、モータによって動作するロボットなどにおいて、誤差が大きくなりうる高速な動作と、誤差が小さくなりうる微細な動作との両方の制御性能を向上させることができる。
In the control device according to the present invention, the control target may be a motor.
With such a configuration, for example, in a robot operated by a motor, it is possible to improve the control performance of both a high-speed operation that can increase the error and a fine operation that can reduce the error.

また、本発明による制御装置は、位置指令と、制御対象のモータの現在位置との位置誤差を算出する位置誤差算出部と、同次次数を取得する同次次数取得部と、同次制御となるように、位置誤差に同次次数に応じた指数演算を行う第1の演算部と、第1の演算部による演算結果に比例制御を行うことによって速度指令を算出する速度指令算出部と、速度指令と、モータの現在速度との速度誤差を算出する速度誤差算出部と、同次制御となるように、速度誤差に同次次数に応じた指数演算を行う第2の演算部と、第2の演算部による演算結果から電流指令を算出する電流指令算出部と、を備え、同次次数取得部は、位置誤差及び速度誤差の少なくとも一方を用いて、同次次数を取得し、第2の演算部は、速度誤差にそれぞれ、同次次数に応じた指数演算を行う第1及び第2の指数演算部を備え、電流指令算出部は、第1の指数演算部の演算結果に比例制御を行い、第2の指数演算部の演算結果に積分制御を行う、ものである。
このような構成により、同次P−PI制御において、同次次数を変化させることができ、例えば、同次次数取得部が同次次数の適切な取得を行うことにより、より適切な制御を行うことができるようになる。
Further, a control device according to the present invention includes a position error calculation unit that calculates a position error between a position command and a current position of a motor to be controlled, a homogeneous order acquisition unit that acquires a homogeneous order, and homogeneous control, A first calculation unit that performs exponential calculation according to the order of the position error, a speed command calculation unit that calculates a speed command by performing proportional control on the calculation result by the first calculation unit, A speed error calculation unit that calculates a speed error between the speed command and the current speed of the motor, a second calculation unit that performs exponential operation on the speed error in accordance with the order of homogeneity so as to perform homogeneous control, A current command calculation unit that calculates a current command from a calculation result of the two calculation units, and the homogeneity order acquisition unit acquires the homogeneity order using at least one of the position error and the speed error, and the second The calculation unit of The first and second exponent operation units that perform numerical operations are provided, and the current command calculation unit performs proportional control on the operation result of the first exponent operation unit, and performs integral control on the operation result of the second exponent operation unit. To do.
With such a configuration, the homogeneous order can be changed in the homogeneous P-PI control. For example, the homogeneous degree acquisition unit appropriately acquires the homogeneous order to perform more appropriate control. Will be able to.

本発明による制御装置によれば、同次システムにおいて同次次数を変化させることができ、例えば、適切な同次次数が取得されることによって、より適切な制御を行うことができるようになる。   According to the control device of the present invention, the homogeneous order can be changed in the homogeneous system. For example, more appropriate control can be performed by acquiring an appropriate homogeneous order.

本発明の実施の形態による制御装置の構成を示すブロック図The block diagram which shows the structure of the control apparatus by embodiment of this invention 同実施の形態おける誤差と同次次数との対応の一例を示すグラフGraph showing an example of correspondence between error and same order in the embodiment 同実施の形態における誤差と指数演算の結果との関係の一例を示すグラフGraph showing an example of the relationship between the error and the result of exponentiation in the embodiment 同実施の形態による制御装置の動作を示すフローチャートThe flowchart which shows operation | movement of the control apparatus by the embodiment 同実施の形態による制御装置の誤差と、従来例の誤差とを比較するためのグラフGraph for comparing the error of the control device according to the embodiment and the error of the conventional example 同実施の形態における制御装置の構成の他の一例を示すブロック図The block diagram which shows another example of a structure of the control apparatus in the embodiment 同実施の形態における制御装置の構成の他の一例を示すブロック図The block diagram which shows another example of a structure of the control apparatus in the embodiment

以下、本発明による制御装置について、実施の形態を用いて説明する。なお、以下の実施の形態において、同じ符号を付した構成要素は同一または相当するものであり、再度の説明を省略することがある。本実施の形態による制御装置は、同次次数を変更可能な同次システムを構成しているものである。   Hereinafter, a control device according to the present invention will be described using embodiments. Note that, in the following embodiments, the components given the same reference numerals are the same or equivalent, and repetitive description may be omitted. The control device according to the present embodiment constitutes a homogeneous system capable of changing the homogeneous order.

図1は、本実施の形態による制御装置1の構成を示すブロック図である。本実施の形態による制御装置1は、位置誤差算出部11と、スケーリング部12と、同次次数取得部13と、第1の演算部14と、逆スケーリング部15と、速度指令算出部16と、速度誤差算出部17と、スケーリング部18と、第2の演算部19と、逆スケーリング部20と、電流指令算出部21とを備えている。また、第2の演算部19は、第1の指数演算部19aと、第2の指数演算部19bとを備えている。また、電流指令算出部21は、比例制御部21aと、積分制御部21bと、加算器21cとを備えている。この制御装置1は、例えば、特別なセンサを設けることなく、位置検出手段(エンコーダ)によって検出された位置を用いて、移動対象を駆動する駆動手段(ACモータ及びDCモータ)を制御することにより、起動の位置及び速度を高精度で追従させる制御を行うものであってもよい。また、制御装置1による制御は、P−PI制御であり、そのP−PI制御は同次システムとなっているものとする。すなわち、本実施の形態による制御装置1による制御は、同次P−PI制御となっている。なお、同次システムについては、上記非特許文献1〜3等を参照されたい。   FIG. 1 is a block diagram showing a configuration of a control device 1 according to the present embodiment. The control device 1 according to the present embodiment includes a position error calculation unit 11, a scaling unit 12, a homogeneous order acquisition unit 13, a first calculation unit 14, an inverse scaling unit 15, and a speed command calculation unit 16. , A speed error calculation unit 17, a scaling unit 18, a second calculation unit 19, an inverse scaling unit 20, and a current command calculation unit 21. The second computing unit 19 includes a first exponent computing unit 19a and a second exponent computing unit 19b. Moreover, the current command calculation unit 21 includes a proportional control unit 21a, an integration control unit 21b, and an adder 21c. For example, the control device 1 uses a position detected by a position detection unit (encoder) without using a special sensor to control a drive unit (AC motor and DC motor) that drives a moving object. In addition, the control may be performed so that the starting position and speed are followed with high accuracy. The control by the control device 1 is P-PI control, and the P-PI control is a homogeneous system. That is, the control by the control device 1 according to the present embodiment is homogeneous P-PI control. For the homogeneous system, see Non-Patent Documents 1 to 3 above.

位置誤差算出部11は、位置指令と、制御対象のモータの現在位置との位置誤差を算出する。制御対象のモータは、例えば、産業用ロボットの各軸を動作させるモータであってもよく、溶接ワイヤを送給するモータであってもよく、その他のモータであってもよい。位置誤差算出部11は、例えば、位置指令からモータの現在位置を減算する減算器であってもよい。位置指令は、例えば、ティーチングされた位置に基づいて算出された位置の指令値であってもよい。モータの現在位置は、例えば、エンコーダによって測定されたモータの位置(角度)であってもよい。   The position error calculation unit 11 calculates a position error between the position command and the current position of the motor to be controlled. The motor to be controlled may be, for example, a motor that operates each axis of an industrial robot, a motor that feeds a welding wire, or another motor. The position error calculation unit 11 may be, for example, a subtracter that subtracts the current position of the motor from the position command. The position command may be, for example, a position command value calculated based on the taught position. The current position of the motor may be, for example, the position (angle) of the motor measured by an encoder.

スケーリング部12は、位置誤差算出部11によって算出された位置誤差に、正の実数であるスケーリング係数を乗算する。そのスケーリング係数は、あらかじめ設定されている値であってもよく、または、後述するように、動的に変更される値であってもよい。ここでは、前者の場合について主に説明する。後述する同次次数の取得や指数演算においては、誤差の絶対値が1より小さいかどうかに応じて結果が異なることになる。また、状況によっては、誤差の絶対値が1より小さくなりにくい場合もある。例えば、パルス値などのように整数値である位置が用いられる場合には、位置誤差も整数となり、誤差の絶対値が0以外の1より小さい値となることはない。したがって、例えば、スケーリング係数を乗算した後の誤差の絶対値の最大値が1未満となるようにスケーリング係数を設定してもよく、または、スケーリング係数を乗算した後の誤差の絶対値の多くが1未満となるようにスケーリング係数を設定してもよい。後者の場合には、例えば、スケーリング係数を乗算した後の誤差の絶対値の最大値が1以上となってもよい。なお、スケーリング係数を乗算した後の誤差の絶対値が0から1の範囲のできるだけ多くの範囲で変化するようにスケーリング係数が設定されることが好適である。   The scaling unit 12 multiplies the position error calculated by the position error calculation unit 11 by a scaling coefficient that is a positive real number. The scaling factor may be a preset value, or may be a value that is dynamically changed, as will be described later. Here, the former case will be mainly described. In the acquisition of the homogeneity order and the exponent operation described later, the result varies depending on whether or not the absolute value of the error is smaller than 1. Further, depending on the situation, the absolute value of the error may be less than 1. For example, when a position that is an integer value, such as a pulse value, is used, the position error is also an integer, and the absolute value of the error never becomes a value other than 1 other than 0. Thus, for example, the scaling factor may be set such that the maximum absolute value of error after multiplying by the scaling factor is less than 1, or many of the absolute values of error after multiplying by the scaling factor are The scaling factor may be set to be less than 1. In the latter case, for example, the maximum absolute value of the error after multiplying by the scaling factor may be 1 or more. Note that the scaling factor is preferably set so that the absolute value of the error after multiplying by the scaling factor changes in as many ranges as possible in the range of 0 to 1.

同次次数取得部13は、同次次数(τ)を取得する。同次次数は、制御装置1が持つ同次性を決定するパラメータである。ここでは、同次次数取得部13が、スケーリング係数の乗算された位置誤差を用いて同次次数を取得する場合について説明するが、それ以外の方法によって同次次数を取得してもよい。同次次数取得部13は、例えば、位置誤差及び速度誤差の少なくとも一方を用いて、同次次数を取得してもよい。また、同次次数取得部13は、例えば、位置誤差及び速度誤差の少なくとも一方と、現在速度とを用いて同次次数を取得してもよい。なお、位置誤差及び速度誤差は、それぞれ独立して、スケーリング係数の乗算されたものであってもよく、または、そうでなくてもよい。同次次数取得部13で取得された同次次数は、第1の演算部14、並びに第2の演算部19の第1及び第2の指数演算部19a、19bのそれぞれで用いられることになる。すなわち、制御装置1において同次次数を用いた制御が行われる場合には、1以上の演算部のそれぞれにおいて、同じ同次次数を用いた制御が行われるものとする。   The homogeneous order acquisition unit 13 acquires the homogeneous order (τ). The homogeneous order is a parameter that determines the homogeneity of the control device 1. Here, the case where the homogeneity order acquisition unit 13 acquires the homogeneity order using the position error multiplied by the scaling coefficient will be described, but the homogeneity order may be acquired by other methods. For example, the homogeneity order acquisition unit 13 may acquire the homogeneity order using at least one of a position error and a velocity error. The homogeneity order acquisition unit 13 may acquire the homogeneity order using, for example, at least one of a position error and a speed error and the current speed. Note that the position error and the velocity error may be independently multiplied by a scaling factor, or may not be so. The homogeneous order acquired by the homogeneous order acquisition unit 13 is used in each of the first calculation unit 14 and the first and second exponent calculation units 19a and 19b of the second calculation unit 19. . That is, when control using the homogeneous order is performed in the control device 1, control using the same homogeneous order is performed in each of the one or more arithmetic units.

ここで、同次次数τと、同次システムにおける制御との関係について説明する。
(1)有限時間整定制御(τ<0)
同次次数τが負である同次システムによる制御は、有限時間整定制御と呼ばれる。その有限時間整定制御では、有限時間で目標へ収束することが理論的に保証されている。また、有限時間整定制御では、指数安定制御や有理安定制御と比較して、より速く収束することも理論的に保証されている。なお、有限時間整定制御では、誤差が1未満の場合に、高い誤差収束性能を発揮するが、誤差が1以上の場合には、誤差収束性能が低下することが知られている。また、外乱の多いシステムでは、誤差が小さい領域では理論上適正な入力であっても、外乱の影響によって、大きな入力は性能劣化を生じさせることになる。
Here, the relationship between the homogeneous order τ and the control in the homogeneous system will be described.
(1) Finite time settling control (τ <0)
Control by a homogeneous system in which the homogeneous order τ is negative is called finite time settling control. In the finite time settling control, it is theoretically guaranteed to converge to the target in a finite time. In addition, the finite time settling control is theoretically guaranteed to converge faster than the exponential stability control and the rational stability control. In the finite time settling control, high error convergence performance is exhibited when the error is less than 1. However, it is known that when the error is 1 or more, the error convergence performance is degraded. In a system with many disturbances, even if the input is theoretically appropriate in a region where the error is small, a large input causes performance degradation due to the influence of the disturbance.

(2)有理安定制御(τ>0)
同次次数τが正である同次システムによる制御は、有理安定制御と呼ばれる。その有理安定制御は、目標に収束するのに無限に長い時間を要することになるため、誤差が1未満の場合には、誤差収束性能が低下することになる。一方、誤差が1以上である場合には、高い誤差収束性能を発揮することになる。そのため、外乱の多いシステムであっても、誤差が小さいと他の制御モードに比べて入力も小さくなるため、性能劣化が生じにくいことになる。
(2) Rational stability control (τ> 0)
Control by a homogeneous system in which the homogeneous order τ is positive is called rational stability control. Since the rational stable control requires an infinitely long time to converge to the target, if the error is less than 1, the error convergence performance is degraded. On the other hand, when the error is 1 or more, high error convergence performance is exhibited. For this reason, even in a system with many disturbances, if the error is small, the input is also small compared to other control modes, so that performance degradation is unlikely to occur.

(3)指数安定制御(τ=0)
同次次数τが0である同次システムによる制御は、指数安定制御と呼ばれる。その指数安定制御は、同次システムではない従来の制御と同じになる。例えば、同次P−PI制御においてτ=0である場合には、P−PI制御となる。
(3) Exponential stability control (τ = 0)
Control by a homogeneous system in which the homogeneous order τ is 0 is called exponential stability control. The exponential stability control is the same as the conventional control that is not a homogeneous system. For example, when τ = 0 in homogeneous P-PI control, P-PI control is performed.

同次次数取得部13は、例えば、誤差の絶対値が、閾値eTH1よりも小さい範囲では、0である同次次数を取得してもよい。また、同次次数取得部13は、誤差の絶対値が、閾値eTH1よりも大きく、1より小さい範囲では、0未満である同次次数を取得してもよい。なお、誤差の絶対値が閾値eTH1に等しい場合には、0である同次次数が取得されてもよい。また、同次次数取得部13は、誤差の絶対値が1以上の範囲では、0または0より大きい同次次数、すなわち0以上の同次次数を取得してもよい。なお、その閾値eTH1は、1より小さい正の値であるものとする。また、同次次数取得部13が誤差を用いて同次次数を取得する場合に、あらかじめ決められている、誤差と同次次数との関係を用いて、誤差に対応する同次次数を取得してもよい。その誤差と同次次数との関係は、誤差の絶対値と同次次数との関係であってもよい。両者の関係は、例えば、関数で示されてもよく、または、テーブル等の対応関係で示されてもよい。図2は、そのような誤差の絶対値と同次次数との関係の一例を示すグラフである。図2において、誤差の絶対値をxとすると、同次次数τは、次のようになっている。なお、aは負の実数である。
τ=0 (0≦x≦eTH1
τ=a(x−eTH12(2x+eTH1−3eTH2)/(eTH1−eTH23 (eTH1<x<eTH2
τ=a (eTH2≦x<1)
τ=0 (x≧1)
For example, the homogeneity order acquisition unit 13 may acquire a homogeneity order that is 0 in a range where the absolute value of the error is smaller than the threshold value e TH1 . Further, the homogeneity order acquisition unit 13 may acquire a homogeneity order that is less than 0 in a range where the absolute value of the error is larger than the threshold value e TH1 and smaller than 1. If the absolute value of the error is equal to the threshold value e TH1 , a homogeneous order that is 0 may be acquired. Further, the homogeneity order obtaining unit 13 may obtain a homogeneity order of 0 or greater than 0, that is, a homogeneity order of 0 or more, in a range where the absolute value of the error is 1 or more. It is assumed that the threshold value e TH1 is a positive value smaller than 1. Further, when the homogeneity order obtaining unit 13 obtains the homogeneity order using an error, the homogeneity order corresponding to the error is obtained using a predetermined relationship between the error and the homogeneity order. May be. The relationship between the error and the homogeneous order may be a relationship between the absolute value of the error and the homogeneous order. The relationship between the two may be indicated by a function, or may be indicated by a correspondence relationship such as a table. FIG. 2 is a graph showing an example of the relationship between the absolute value of such an error and the homogeneous order. In FIG. 2, when the absolute value of the error is x, the homogeneous order τ is as follows. Note that a is a negative real number.
τ = 0 (0 ≦ x ≦ e TH1 )
τ = a (x−e TH1 ) 2 (2x + e TH1 −3e TH2 ) / (e TH1 −e TH2 ) 3 (e TH1 <x <e TH2 )
τ = a (e TH2 ≦ x <1)
τ = 0 (x ≧ 1)

図2のグラフで示されるように、誤差の絶対値に応じて変化する同次次数τは、誤差の絶対値が1以外の箇所においては、連続的に変化することが好適である。そのようにすることによって、有限時間整定制御、有理安定制御、及び指数安定制御の3個の制御モードが連続につながって変化することになる。なお、誤差の絶対値が1の場合には、後述する指数演算の結果が演算対象の誤差と同じとなるため、同次次数τが不連続であったとしても制御が不連続になることはない。そのように、誤差の絶対値が1の箇所において同次次数が不連続である場合には、その不連続な箇所において同次次数が0となることが好適である。そのようにすることで、同次次数が不連続である箇所において指数安定制御となり、第1及び第2の演算部14,19による演算結果が連続になるからである。また、誤差の絶対値が1以外の箇所において、同次次数τが誤差の絶対値に対して滑らかな関数となっていてもよい。また、誤差の絶対値が1以上の範囲では、上述のように、同次次数は正の値であってもよい。したがって、例えば、誤差の絶対値が1以上の範囲において、図2のグラフの破線で示すように同次次数が変化してもよい。   As shown in the graph of FIG. 2, it is preferable that the homogeneous order τ that changes in accordance with the absolute value of the error continuously changes in places where the absolute value of the error is other than 1. By doing so, the three control modes of finite time settling control, rational stability control, and exponential stability control are continuously connected and changed. Note that when the absolute value of the error is 1, the result of exponential calculation, which will be described later, is the same as the error to be calculated, so that even if the homogeneous order τ is discontinuous, the control is not discontinuous. Absent. As described above, when the homogeneity order is discontinuous at a position where the absolute value of the error is 1, it is preferable that the homogeneity order is 0 at the discontinuous position. By doing so, exponential stability control is performed at locations where the homogeneous orders are discontinuous, and the calculation results by the first and second calculation units 14 and 19 are continuous. Further, at a place where the absolute value of the error is other than 1, the homogeneous order τ may be a smooth function with respect to the absolute value of the error. Further, in the range where the absolute value of the error is 1 or more, as described above, the homogeneous order may be a positive value. Therefore, for example, in the range where the absolute value of the error is 1 or more, the homogeneous order may change as indicated by the broken line in the graph of FIG.

第1の演算部14は、同次制御となるように、位置誤差に同次次数に応じた指数演算を行う。その位置誤差は、スケーリング部12によってスケーリング係数の乗算された位置誤差である。なお、同次制御となるように指数演算を行うとは、制御装置1が同次システムとなるように指数演算を行うことである。その指数演算とは、演算対象の正負を維持したままr乗することである。すなわち、次式の演算を行うことである。このことは、他の指数演算においても同様であるとする。なお、rは、同次次数τの関数であるとする。したがって、同次次数取得部13によって取得された同次次数τに応じて、rの値が決まることになる。第1の演算部14は、同次次数取得部13が取得したτの値と、同次次数τの関数とを用いて指数rを算出し、その算出したrを用いて指数演算を行ってもよい。そのτの関数については後述する。
|演算対象|×sgn(演算対象)
The first computing unit 14 performs exponential computation on the position error according to the homogeneous order so as to achieve homogeneous control. The position error is a position error multiplied by the scaling coefficient by the scaling unit 12. It should be noted that performing the exponent operation so as to achieve homogeneous control means performing the exponent operation so that the control device 1 becomes a homogeneous system. The exponent operation is to raise to the power of r while maintaining the sign of the operation target. That is, the following equation is calculated. This also applies to other exponent operations. Note that r is a function of the homogeneous order τ. Therefore, the value of r is determined according to the homogeneous order τ acquired by the homogeneous order acquisition unit 13. The first calculation unit 14 calculates an index r using the value of τ acquired by the homogeneous order acquisition unit 13 and a function of the homogeneous order τ, and performs an exponent operation using the calculated r. Also good. The function of τ will be described later.
| Computation Target | r xsgn (Computation Target)

ここで、sgn(z)は、次の符号関数である。
sgn(z)=1 (z>0)
sgn(z)=0 (z=0)
sgn(z)=−1 (z<0)
Here, sgn (z) is the following sign function.
sgn (z) = 1 (z> 0)
sgn (z) = 0 (z = 0)
sgn (z) =-1 (z <0)

なお、上記演算式から分かるように、上記演算結果は、演算対象である誤差の絶対値=1を挟んで、演算対象の絶対値に対して、演算結果の絶対値が大きくなるのか、小さくなるのかが切り替わることになる。例えば、r>1の場合には、演算対象の絶対値が1より小さい範囲では、演算結果の絶対値が演算対象の絶対値よりも小さくなり、演算対象の絶対値が1より大きい範囲では、演算結果の絶対値が演算対象の絶対値よりも大きくなる。したがって、誤差の単位系(例えば、メートル、センチメートル、ラジアン(rad)、度(deg)、メートル/秒、センチメートル/秒、ラジアン/秒、度/秒など)によって、演算対象の範囲が決まることになり、誤差を直接演算対象とした場合には、適切な制御をできないこともある。具体的には、モータの角度を示す値としてエンコーダのパルス値を用いた場合には、誤差の絶対値が0以外の1より小さい値を取ることはないことになる。したがって、上述のように、スケーリング係数を乗算することによって、誤差のスケールを適切な範囲(例えば、1以下の範囲など)にスケーリングすることが好適となる。   As can be seen from the above equation, the absolute value of the calculation result increases or decreases with respect to the absolute value of the calculation target with the absolute value of the error being the calculation target = 1. Will be switched. For example, when r> 1, the absolute value of the calculation result is smaller than the absolute value of the calculation target in a range where the absolute value of the calculation target is smaller than 1, and in the range where the absolute value of the calculation target is larger than 1, The absolute value of the calculation result is larger than the absolute value of the calculation target. Therefore, the range of the calculation target is determined by the unit system of error (for example, meter, centimeter, radian (rad), degree (deg), meter / second, centimeter / second, radian / second, degree / second, etc.) In other words, when the error is directly subject to calculation, appropriate control may not be possible. Specifically, when the encoder pulse value is used as a value indicating the angle of the motor, the absolute value of the error does not take a value smaller than 1 other than 0. Therefore, as described above, it is preferable to scale the error scale to an appropriate range (for example, a range of 1 or less) by multiplying by a scaling factor.

逆スケーリング部15は、第1の演算部14による演算結果にスケーリング係数の逆数を乗算する。すなわち、第1の演算部14による演算結果が、スケーリング係数で除算されることになる。そのスケーリング係数は、スケーリング部12で用いられるスケーリング係数と同じである。   The inverse scaling unit 15 multiplies the calculation result by the first calculation unit 14 by the inverse number of the scaling coefficient. That is, the calculation result by the first calculation unit 14 is divided by the scaling coefficient. The scaling coefficient is the same as the scaling coefficient used in the scaling unit 12.

速度指令算出部16は、第1の演算部14による演算結果に比例制御を行うことによって速度指令を算出する。その演算結果は、逆スケーリング部15によってスケーリング係数の逆数の乗算された演算結果である。比例制御は、演算結果に比例ゲインを乗算することによって行われてもよい。その比例制御の結果が、速度指令値となる。   The speed command calculation unit 16 calculates a speed command by performing proportional control on the calculation result of the first calculation unit 14. The calculation result is a calculation result obtained by multiplying the inverse of the scaling coefficient by the inverse scaling unit 15. The proportional control may be performed by multiplying the calculation result by a proportional gain. The result of the proportional control becomes the speed command value.

速度誤差算出部17は、速度指令算出部16によって算出された速度指令と、モータの現在速度との速度誤差を算出する。そのモータは、上述の現在位置が取得されたモータと同じモータである。速度誤差算出部17は、例えば、速度指令からモータの現在速度を減算する減算器であってもよい。モータの現在速度は、例えば、エンコーダによって測定されたモータの位置が時間微分された速度(角速度)であってもよい。   The speed error calculation unit 17 calculates a speed error between the speed command calculated by the speed command calculation unit 16 and the current speed of the motor. The motor is the same motor as the motor from which the current position is acquired. The speed error calculation unit 17 may be, for example, a subtracter that subtracts the current speed of the motor from the speed command. The current speed of the motor may be, for example, a speed (angular speed) obtained by time-differentiating the position of the motor measured by the encoder.

スケーリング部18は、速度誤差算出部17によって算出された速度誤差に、正の実数であるスケーリング係数を乗算する。そのスケーリング係数は、あらかじめ設定されている値であってもよく、または、後述するように、動的に変更される値であってもよい。ここでは、前者の場合について主に説明する。速度誤差にスケーリング係数を乗算する理由や、スケーリング係数の設定については、スケーリング係数の乗算対象が異なる以外は、スケーリング部12の説明と同様であり、その説明を省略する。なお、スケーリング部18が用いるスケーリング係数は、スケーリング部12が用いるスケーリング係数と同じであってもよく、または異なっていてもよい。通常、スケーリング係数は、各スケーリング部12,18においてそれぞれ独立して設定される。スケーリング部18は、速度誤差にスケーリング係数を乗算した結果を、第1及び第2の指数演算部19a,19bのそれぞれに渡すものとする。そのため、スケーリング部18は、例えば、1個の乗算の処理を行い、その結果を第1及び第2の指数演算部19a,19bのそれぞれに渡してもよく、または、第1及び第2の指数演算部19a,19bごとに乗算の処理を行ってもよい。   The scaling unit 18 multiplies the speed error calculated by the speed error calculation unit 17 by a scaling factor that is a positive real number. The scaling factor may be a preset value, or may be a value that is dynamically changed, as will be described later. Here, the former case will be mainly described. The reason for multiplying the speed error by the scaling factor and the setting of the scaling factor are the same as the description of the scaling unit 12 except that the scaling factor is to be multiplied. Note that the scaling factor used by the scaling unit 18 may be the same as or different from the scaling factor used by the scaling unit 12. Usually, the scaling coefficient is set independently in each of the scaling units 12 and 18. The scaling unit 18 passes the result obtained by multiplying the speed error by the scaling coefficient to each of the first and second exponent operation units 19a and 19b. Therefore, for example, the scaling unit 18 may perform one multiplication process and pass the result to the first and second exponent operation units 19a and 19b, respectively, or the first and second exponents. Multiplication processing may be performed for each of the arithmetic units 19a and 19b.

第2の演算部19は、同次制御となるように、速度誤差に同次次数に応じた指数演算を行う。その指数演算は、第1及び第2の指数演算部19a,19bにおいて行われるため、第1及び第2の指数演算部19a,19bは、速度誤差にそれぞれ、同次次数に応じた指数演算を行う。その速度誤差は、スケーリング部18によってスケーリング係数の乗算された速度誤差である。第1及び第2の指数演算部19a,19bによる指数演算も、第1の演算部14における指数演算と同様のものである。ここで、指数演算において用いられる指数rについて説明する。制御装置1が同次システムとなるためには、第1の演算部14、並びに第1及び第2の指数演算部19a,19bにおいて用いられる指数を任意に取ることはできない。具体的には、P−PI制御の場合には、次のようになる。なお、r1は、各rが0より大きい値となる範囲において、任意に設定することができる。例えば、r1=1としてもよい。また、r1の決定に応じて、各rが正となるようにするため、τの範囲が制限されることになる。
第1の演算部14:r=(r1+τ)/r1
第1の指数演算部19a:r=(r1+2τ)/(r1+τ)
第2の指数演算部19b:r=(r1+3τ)/(r1+τ)
The second computing unit 19 performs exponential computation according to the homogeneity order for the speed error so as to achieve homogeneous control. Since the exponent calculation is performed in the first and second exponent calculation units 19a and 19b, the first and second exponent calculation units 19a and 19b respectively perform exponent calculations according to the homogeneous orders for the speed errors. Do. The speed error is a speed error multiplied by the scaling coefficient by the scaling unit 18. The exponent calculation by the first and second exponent calculation units 19a and 19b is the same as the exponent calculation by the first calculation unit 14. Here, the index r used in the exponent calculation will be described. In order for the control device 1 to be a homogeneous system, the exponents used in the first arithmetic unit 14 and the first and second exponent arithmetic units 19a and 19b cannot be arbitrarily taken. Specifically, in the case of P-PI control, the operation is as follows. R 1 can be arbitrarily set in a range where each r is larger than 0. For example, r 1 = 1 may be set. Further, the range of τ is limited in order to make each r positive according to the determination of r 1 .
First computing unit 14: r = (r 1 + τ) / r 1
First exponent operation unit 19a: r = (r 1 + 2τ) / (r 1 + τ)
Second exponent operation unit 19b: r = (r 1 + 3τ) / (r 1 + τ)

逆スケーリング部20は、第2の演算部19による演算結果にスケーリング係数の逆数を乗算する。すなわち、逆スケーリング部20は、第1及び第2の指数演算部19a,19bによる演算結果のそれぞれにスケーリング係数の逆数を乗算する。そのスケーリング係数は、スケーリング部18で用いられるスケーリング係数と同じである。なお、誤差への指数演算の前後でスケーリング係数の乗算とスケーリング係数の逆数の乗算とを行っても同次性は失われない。そのため、第1及び第2の演算部14,19が、同次制御となるように、取得された同次次数に応じた指数演算を行う場合には、スケーリング部12,18、及び逆スケーリング部15,20を備えている制御装置1も同次システムとなる。   The inverse scaling unit 20 multiplies the calculation result by the second calculation unit 19 by the inverse number of the scaling coefficient. That is, the inverse scaling unit 20 multiplies each of the calculation results by the first and second exponent operation units 19a and 19b by the inverse of the scaling coefficient. The scaling coefficient is the same as the scaling coefficient used in the scaling unit 18. Note that the homogeneity is not lost even if the scaling factor multiplication and the inverse scaling factor multiplication are performed before and after the exponent operation on the error. Therefore, when the exponent operation according to the acquired homogeneous order is performed so that the first and second arithmetic units 14 and 19 perform the homogeneous control, the scaling units 12 and 18 and the inverse scaling unit The control device 1 having 15 and 20 is also a homogeneous system.

電流指令算出部21は、第2の演算部19による演算結果、すなわち、第1及び第2の指数演算部19a,19bによる演算結果から電流指令を算出する。具体的には、第1の指数演算部19aによる演算結果に比例制御部21aによって比例制御(比例動作)が行われ、第2の指数演算部19bによる演算結果に積分制御部21bによって積分制御(積分動作)が行われ、比例制御の結果と、積分制御の結果とが加算器21cによって加算されることによって、電流指令値が算出されることになる。なお、第1及び第2の指数演算部19a,19bによる演算結果は、逆スケーリング部20によってスケーリング係数の逆数の乗算された演算結果である。ここでは、第1の指数演算部19aによる演算結果にスケーリング係数の逆数の乗算された演算結果が、比例制御の対象となり、第2の指数演算部19bによる演算結果にスケーリング係数の逆数の乗算された演算結果が、積分制御の対象となるものとする。比例制御は、演算結果に比例ゲインを乗算することによって行われてもよい。また、積分制御は、演算結果の積分値に積分ゲインを乗算することによって行われてもよい。   The current command calculation unit 21 calculates a current command from the calculation result of the second calculation unit 19, that is, the calculation result of the first and second exponent calculation units 19a and 19b. Specifically, the proportional control (proportional operation) is performed on the calculation result by the first exponent calculation unit 19a by the proportional control unit 21a, and the integration control unit 21b performs integration control on the calculation result by the second exponent calculation unit 19b. Integration operation) is performed, and the result of the proportional control and the result of the integration control are added by the adder 21c, whereby the current command value is calculated. Note that the calculation results by the first and second exponent calculation units 19 a and 19 b are calculation results obtained by multiplying the inverse of the scaling coefficient by the inverse scaling unit 20. Here, the operation result obtained by multiplying the operation result of the first exponent operation unit 19a by the reciprocal of the scaling coefficient is the target of proportional control, and the operation result of the second exponent operation unit 19b is multiplied by the reciprocal of the scaling coefficient. It is assumed that the calculated result is the target of integration control. The proportional control may be performed by multiplying the calculation result by a proportional gain. Further, the integral control may be performed by multiplying the integral value of the calculation result by an integral gain.

ここで、図3を用いて、誤差と指数演算の結果との関係について説明する。図3のグラフにおいて、誤差の絶対値と同次次数との関係が図2で示される場合に対応する、誤差の絶対値と指数演算の演算結果の絶対値との関係を太い実線で示している。また、図3のグラフにおいて、同次次数が負の固定値である場合、すなわち有限時間整定制御である場合に対応する、誤差の絶対値と指数演算の演算結果の絶対値との関係を一点鎖線で示している。なお、同次システムではない従来のP−PI制御の場合には、指数演算を行わないため、誤差と演算結果に対応する値とは等しくなる。図2のグラフでは、誤差の絶対値が閾値eTH1以下の範囲及び1以上の範囲ではτ=0であるため、指数演算の結果は、P−PI制御と同じになる。また、誤差の絶対値が閾値eTH1より大きく1未満の範囲ではτ<0であるため、指数演算の結果は、P−PI制御よりも大きな値となる。その結果、その範囲内ではより速く収束することになる。このように、誤差が0に近い微小な範囲では、P−PI制御と同じになり、有限時間整定制御(τ<0)よりも停止状態における振動の増加を抑制することができる。一方、誤差が閾値eTH1を超えると追従誤差が大きくなり難いように制御することができる。また、誤差が1以上の範囲では、P−PI制御と同じになるため、有限時間整定制御(τ<0)より速く収束することになる。なお、誤差の絶対値が1より大きい範囲において、同次次数(τ)を0より大きい値にした場合(図2の破線の場合)に対応する演算結果の絶対値は、図3において、P−PI制御よりも上方側に存在することになる。したがって、その場合には、誤差の絶対値が1より大きい範囲において、P−PI制御よりも収束性能を向上させることができる。このように、本実施の形態による制御装置1は、有限時間整定の同次P−PI制御における問題点である、追従誤差が微小な範囲や停止状態における振動の悪化や、追従誤差が1以上の場合における追従性能の悪化を回避することができる。その結果、例えば、ロボットの手先位置をある位置から別の位置まで最高速で移動させる作業などの高速な動きを行う場合、すなわち誤差が大きくなりうる場合においても、反対に、ある限定された範囲において微細な動きを高速で行う場合、すなわち誤差が小さくなりうる場合においても、より高精度な制御を実現することができるようになる。このように、制御装置1によれば、追従制御を必要とするより広い範囲において、高精度で安定した制御を実現することができる。 Here, the relationship between the error and the result of the exponent operation will be described with reference to FIG. In the graph of FIG. 3, the relationship between the absolute value of the error and the absolute value of the exponent operation is shown by a thick solid line corresponding to the case where the relationship between the absolute value of the error and the homogeneous order is shown in FIG. Yes. Further, in the graph of FIG. 3, the relationship between the absolute value of the error and the absolute value of the exponent operation result corresponding to the case where the homogeneity order is a negative fixed value, that is, the case of finite time settling control, is one point. Shown with a chain line. In the case of the conventional P-PI control that is not a homogeneous system, the exponent calculation is not performed, so the error and the value corresponding to the calculation result are equal. In the graph of FIG. 2, since the absolute value of the error is τ = 0 in the range where the absolute value of the error is less than or equal to the threshold value e TH1 and in the range of 1 or more, the result of the exponent operation is the same as in the P-PI control. Further, since τ <0 in the range where the absolute value of the error is larger than the threshold value e TH1 and less than 1, the result of the exponent operation is larger than that in the P-PI control. As a result, it converges faster within that range. Thus, in the minute range where the error is close to 0, it becomes the same as the P-PI control, and the increase in vibration in the stopped state can be suppressed more than the finite time settling control (τ <0). On the other hand, when the error exceeds the threshold value e TH1 , the tracking error can be controlled so as not to increase. Further, when the error is in the range of 1 or more, it becomes the same as the P-PI control, so that the convergence is faster than the finite time settling control (τ <0). In the range where the absolute value of the error is greater than 1, the absolute value of the calculation result corresponding to the case where the homogeneous degree (τ) is set to a value greater than 0 (in the case of the broken line in FIG. 2) is shown in FIG. -It exists above the PI control. Therefore, in that case, the convergence performance can be improved over the P-PI control in the range where the absolute value of the error is larger than 1. As described above, the control device 1 according to the present embodiment has a problem in the finite-time settling homogeneous P-PI control. In this case, it is possible to avoid the deterioration of the follow-up performance. As a result, for example, when performing a high-speed movement such as an operation of moving the hand position of the robot from one position to another at the highest speed, that is, when the error can be large, on the contrary, a certain limited range In the case where a fine movement is performed at a high speed, that is, even when the error can be reduced, more accurate control can be realized. Thus, according to the control device 1, highly accurate and stable control can be realized in a wider range requiring the follow-up control.

次に、制御装置1の動作について図4のフローチャートを用いて説明する。
(ステップS101)位置誤差算出部11は、位置指令と、モータの現在位置との差を算出し、その減算結果である位置誤差を出力する。
Next, operation | movement of the control apparatus 1 is demonstrated using the flowchart of FIG.
(Step S101) The position error calculation unit 11 calculates a difference between the position command and the current position of the motor, and outputs a position error that is a subtraction result.

(ステップS102)スケーリング部12は、位置誤差にスケーリング係数を乗算する。   (Step S102) The scaling unit 12 multiplies the position error by a scaling coefficient.

(ステップS103)同次次数取得部13は、スケーリング係数の乗算された位置誤差に対応する同次次数を取得する。   (Step S103) The homogeneous order obtaining unit 13 obtains a homogeneous order corresponding to the position error multiplied by the scaling coefficient.

(ステップS104)第1の演算部14は、スケーリング係数の乗算された位置誤差に対して、ステップS103で取得された同次次数に応じた指数演算を行う。   (Step S <b> 104) The first calculation unit 14 performs exponential calculation according to the homogeneous order acquired in Step S <b> 103 on the position error multiplied by the scaling coefficient.

(ステップS105)逆スケーリング部15は、指数演算の結果にスケーリング係数の逆数を乗算する。   (Step S105) The inverse scaling unit 15 multiplies the result of the exponent operation by the inverse of the scaling coefficient.

(ステップS106)速度指令算出部16は、スケーリング係数の逆数の乗算された演算結果を用いて、速度指令を算出する。   (Step S106) The speed command calculation unit 16 calculates a speed command using a calculation result obtained by multiplying the inverse of the scaling coefficient.

(ステップS107)速度誤差算出部17は、算出された速度指令と、モータの現在速度との差を算出し、その減算結果である速度誤差を出力する。   (Step S107) The speed error calculation unit 17 calculates a difference between the calculated speed command and the current speed of the motor, and outputs a speed error that is a subtraction result thereof.

(ステップS108)スケーリング部18は、速度誤差にスケーリング係数を乗算する。なお、スケーリング部18は、その乗算結果を第1及び第2の指数演算部19a,19bのそれぞれに出力する。   (Step S108) The scaling unit 18 multiplies the speed error by a scaling coefficient. The scaling unit 18 outputs the multiplication result to each of the first and second exponent operation units 19a and 19b.

(ステップS109)第2の演算部19の第1の指数演算部19aは、スケーリング係数の乗算された速度誤差に対して、ステップS103で取得された同次次数に応じた指数演算を行う。また、第2の演算部19の第2の指数演算部19bは、スケーリング係数の乗算された速度誤差に対して、ステップS103で取得された同次次数に応じた指数演算を行う。   (Step S109) The first exponent computing unit 19a of the second computing unit 19 performs exponential computation according to the homogeneity obtained in step S103 on the speed error multiplied by the scaling coefficient. In addition, the second exponent calculation unit 19b of the second calculation unit 19 performs exponent calculation according to the homogeneous order acquired in step S103 on the speed error multiplied by the scaling coefficient.

(ステップS110)逆スケーリング部20は、第1の指数演算部19aによる指数演算の結果にスケーリング係数の逆数を乗算し、電流指令算出部21の比例制御部21aに出力する。また、逆スケーリング部20は、第2の指数演算部19bによる指数演算の結果にスケーリング係数の逆数を乗算し、電流指令算出部21の積分制御部21bに出力する。   (Step S <b> 110) The inverse scaling unit 20 multiplies the result of the exponent operation by the first exponent operation unit 19 a by the inverse number of the scaling coefficient, and outputs the result to the proportional control unit 21 a of the current command calculation unit 21. The inverse scaling unit 20 multiplies the result of the exponent operation by the second exponent operation unit 19b by the inverse of the scaling coefficient and outputs the result to the integration control unit 21b of the current command calculation unit 21.

(ステップS111)電流指令算出部21の比例制御部21aは、逆スケーリング部20によってスケーリング係数の逆数の乗算された演算結果に比例制御を行う。また、電流指令算出部21の積分制御部21bは、逆スケーリング部20によってスケーリング係数の逆数の乗算された演算結果に積分制御を行う。また、電流指令算出部21の加算器21cは、比例制御の結果と、積分制御の結果とを加算し、その加算結果である電流指令を出力する。
なお、図4のフローチャートで示される一連の処理が繰り返されることにより、制御対象であるモータの制御が行われることになる。
(Step S <b> 111) The proportional control unit 21 a of the current command calculation unit 21 performs proportional control on the calculation result obtained by multiplying the inverse of the scaling coefficient by the inverse scaling unit 20. The integration control unit 21 b of the current command calculation unit 21 performs integration control on the calculation result obtained by multiplying the inverse of the scaling coefficient by the inverse scaling unit 20. Further, the adder 21c of the current command calculation unit 21 adds the result of the proportional control and the result of the integration control, and outputs a current command that is the addition result.
Note that a series of processing shown in the flowchart of FIG. 4 is repeated to control the motor to be controlled.

次に、本実施の形態による制御装置1を用いた実験結果について説明する。本実験では、垂直6軸マニピュレータを有するロボットの手先を円弧運動させた。そして、ロボットの設置部分に近い3個のモータについて、本実施の形態による制御装置1と、従来のP−PI制御を行う制御装置とを比較した。また、本実験では、本実施の形態による制御と、従来のP−PI制御とにおいて、比例制御及び積分制御における各制御ゲインは同じものを用いた。また、事前にP−PI制御によって同じ動作を行った結果を用いて、位置誤差や速度誤差の最大値より少し大きい値が1となるように、スケーリング係数を設定した。図5(a)〜図5(c)はそれぞれ、本実験におけるJ1軸〜J3軸に関する角度追従誤差の時間変化を示すグラフである。各図において、「P−PI制御」は、従来のP−PI制御による結果を示すグラフであり、「同次P−PI制御」は、本実施の形態における制御装置1の制御による結果を示すグラフである。また、そのグラフは、スケーリング係数を乗算した後の値である。図5の各グラフから、制御装置1による制御の方が、従来のP−PI制御よりも全体的に追従誤差性能が向上していることがわかる。さらに、誤差収束時間も短くなっていることも分かる。   Next, experimental results using the control device 1 according to the present embodiment will be described. In this experiment, the hand of a robot having a vertical 6-axis manipulator was moved in an arc. And the control apparatus 1 by this Embodiment was compared with the control apparatus which performs the conventional P-PI control about three motors near the installation part of a robot. In this experiment, the same control gain is used in the proportional control and the integral control in the control according to the present embodiment and the conventional P-PI control. In addition, the scaling coefficient was set so that a value slightly larger than the maximum value of the position error and the speed error becomes 1 using the result of performing the same operation by P-PI control in advance. FIG. 5A to FIG. 5C are graphs showing temporal changes in angle tracking errors with respect to the J1 axis to the J3 axis in this experiment, respectively. In each figure, “P-PI control” is a graph showing the result of conventional P-PI control, and “homogeneous P-PI control” shows the result of control of the control device 1 in the present embodiment. It is a graph. The graph shows values after multiplication by a scaling coefficient. From the graphs of FIG. 5, it can be seen that the control error by the control device 1 is generally improved over the conventional P-PI control. It can also be seen that the error convergence time is also shortened.

次の表において、J1軸〜J3軸に関する、制御装置1による制御における誤差の絶対値の最大値と、従来のP−PI制御における誤差の絶対値の最大値と、誤差低減率とを示している。その表から、角度追従誤差を最大51%低減できたことが分かる。また、誤差の最も大きいJ3軸の誤差低減率が最も大きくなっていることから、スケーリング係数の乗算後の誤差が大きいほど、より効果的に誤差を低減できていることが分かる。

Figure 2017016391
In the following table, the maximum absolute value of the error in the control by the control device 1, the maximum absolute value of the error in the conventional P-PI control, and the error reduction rate for the J1 axis to the J3 axis are shown. Yes. From the table, it can be seen that the angle tracking error can be reduced by up to 51%. Further, since the error reduction rate of the J3 axis having the largest error is the largest, it can be seen that the error can be reduced more effectively as the error after multiplication of the scaling coefficient is larger.
Figure 2017016391

以上のように、本実施の形態による制御装置1によれば、古典制御システムで同次制御を行う制御装置1において、誤差に応じて同次次数を変動させることによって、より適切な制御を実現することができるようになる。具体的には、誤差が閾値eTH1より小さい範囲において、同次次数が0となるようにすることにより、有限時間整定制御と比較して停止状態における振動の増加を抑制できる。また、誤差が1以上の範囲において、同次次数を0とすることにより、有限時間整定制御よりも収束性を高めることができる。また、誤差が1以上の範囲において、同次次数を0より大きくすることにより、有限時間整定制御や従来のP−PI制御と比較して、収束性を高めることができる。また、誤差が閾値eTH1より大きく1より小さい範囲において、同次次数を負にすることにより、従来のP−PI制御よりも収束性を高めることができる。また、誤差の絶対値と同次次数τとの関係を、誤差の絶対値が1以外の範囲において連続とすることにより、有限時間整定制御、有理安定制御、及び指数安定制御を連続に切り替えることができるため、その制御モードの切り替え時に生じうる振動を抑制することができる。また、誤差の絶対値と同次次数τとの関係を、誤差の絶対値が1以外の範囲において連続かつ滑らかとした場合には、制御モードの切り替えをより滑らかに行うことができるようになる。従来、例えば、精密な動作と高速な動作とにおいて制御ゲインを不連続に切り替える場合には、その切り替え時に振動の発生する可能性があるため、低速動作時にその切り替えを行う必要があったが、制御装置1の場合には、前述のように、そのような振動の発生を抑制できる。また、そのように制御モードの切り替え時の振動を抑制できるため、制御ゲインを大きい値に設定することも可能となる。そのように、制御ゲインを大きい値に設定した場合には、それだけ高速な動作が可能となり、タクトタイムを減少させることが可能となる。また、制御システムによっては、経年変化などによる物理パラメータの変化によって制御性能が劣化するため、制御パラメータを変更するメンテナンスが必要となる。一方、制御装置1のように、追従誤差が大きくなり難いように制御することによって、そのメンテナンスが必要になるまでの期間をより長くすることができうる。 As described above, according to the control device 1 according to the present embodiment, in the control device 1 that performs the homogeneous control in the classical control system, more appropriate control is realized by changing the homogeneous order according to the error. Will be able to. Specifically, in the range where the error is smaller than the threshold value e TH1 , the increase in vibration in the stopped state can be suppressed as compared with the finite time settling control by making the homogeneity order 0. In addition, in the range where the error is 1 or more, by setting the homogeneity degree to 0, convergence can be improved as compared with the finite time settling control. Further, in the range where the error is 1 or more, the convergence degree can be improved as compared with the finite time settling control or the conventional P-PI control by making the homogeneous order larger than 0. Further, in the range where the error is larger than the threshold value e TH1 and smaller than 1, the convergence degree can be improved as compared with the conventional P-PI control by making the homogeneous order negative. In addition, the finite time settling control, rational stability control, and exponential stability control are continuously switched by making the relationship between the absolute value of the error and the homogeneous order τ continuous in the range where the error absolute value is other than 1. Therefore, it is possible to suppress vibration that may occur when switching the control mode. Further, when the relationship between the absolute value of the error and the homogeneous degree τ is continuous and smooth in the range where the absolute value of the error is not 1, the control mode can be switched more smoothly. . Conventionally, for example, when switching the control gain discontinuously between a precise operation and a high-speed operation, vibration may occur at the time of switching, so it was necessary to perform the switching at a low-speed operation. In the case of the control device 1, the occurrence of such vibration can be suppressed as described above. Further, since the vibration at the time of switching the control mode can be suppressed as described above, the control gain can be set to a large value. As described above, when the control gain is set to a large value, the operation can be performed at a higher speed and the tact time can be reduced. Also, depending on the control system, the control performance deteriorates due to changes in physical parameters due to changes over time, so that maintenance for changing the control parameters is required. On the other hand, by performing control so that the tracking error does not easily increase as in the control device 1, it is possible to extend the period until the maintenance is required.

なお、本実施の形態では、同次次数取得部13がスケーリング係数の乗算された位置誤差に基づいて同次次数を取得する場合について説明したが、そうでなくてもよいことは、前述の通りである。同次次数取得部13は、例えば、スケーリング係数の乗算された速度誤差に基づいて同次次数を取得してもよく、スケーリング係数の乗算された位置誤差と、スケーリング係数の乗算された速度誤差との両方に基づいて同次次数を取得してもよい。その場合には、例えば、同次次数τを次のように決定してもよい。ただし、位置誤差の絶対値をxとしており、速度誤差の絶対値をyとしている。また、閾値eTH1_1は、閾値eTH1に対応する位置誤差の閾値であり、閾値eTH1_2は、閾値eTH1に対応する速度誤差の閾値であり、両方とも1より小さいものとする。
τ=0 (0≦x≦eTH1_1、または、0≦y≦eTH1_2
τ<0 (eTH1_1<x<1かつeTH1_2<y<1)
τ≧0 (x≧1かつy>eTH1_2、または、y≧1かつx>eTH1_1
なお、この場合にも、x=1またはy=1以外の箇所においては、同次次数τは連続的に変化することが好適である。x=1またはy=1の箇所においては、同次次数τは連続でなくてもよいが、その場合には、前述のように、連続でない箇所において同次次数τが0となることが好適である。
In the present embodiment, the case where the homogeneity order obtaining unit 13 obtains the homogeneity order based on the position error multiplied by the scaling coefficient has been described. However, as described above, this need not be the case. It is. For example, the homogeneity order acquisition unit 13 may acquire the homogeneity order based on the speed error multiplied by the scaling factor, and the position error multiplied by the scaling factor, the speed error multiplied by the scaling factor, The homogeneity order may be acquired based on both. In that case, for example, the homogeneous order τ may be determined as follows. However, the absolute value of the position error is x, and the absolute value of the speed error is y. The threshold value e TH1_1 is a threshold value of the position error corresponding to the threshold value e TH1 , and the threshold value e TH1_2 is a threshold value of the speed error corresponding to the threshold value e TH1 , both of which are smaller than 1.
τ = 0 (0 ≦ x ≦ e TH1_1 or 0 ≦ y ≦ e TH1_2 )
τ <0 (e TH1_1 <x <1 and e TH1_2 <y <1)
τ ≧ 0 (x ≧ 1 and y> e TH1_2 , or y ≧ 1 and x> e TH1_1 )
In this case as well, it is preferable that the homogeneous order τ continuously changes in places other than x = 1 or y = 1. In the place where x = 1 or y = 1, the homogeneous order τ may not be continuous, but in that case, as described above, the homogeneous order τ is preferably 0 in a non-continuous place. It is.

また、本実施の形態では、スケーリング部12,18、及び逆スケーリング部15,20において用いられるスケーリング係数があらかじめ決められている場合について説明したが、そうでなくてもよい。例えば、図6で示されるように、制御装置1は、スケーリング係数を変更する変更部22をさらに備えていてもよい。変更部22は、スケーリング部12及び逆スケーリング部15において用いられるスケーリング係数と、スケーリング部18及び逆スケーリング部20において用いられるスケーリング係数とを変更するものである。なお、スケーリング部12,18、及び逆スケーリング部15,20において用いられるスケーリング係数が同じである場合には、変更部22は、1個のスケーリング係数を変更するものであってもよい。その変更は、例えば、現在速度に応じてなされてもよい。変更部22は、例えば、現在速度の絶対値が大きい場合には、より小さいスケーリング係数となるように変更を行い、現在速度の絶対値が小さい場合には、より大きいスケーリング係数となるように変更を行ってもよい。また、その変更は、スケーリング係数を乗算した誤差の履歴に応じてなされてもよい。例えば、変更部22は、スケーリング係数が乗算された誤差の絶対値があらかじめ決められた閾値(≪1)よりも小さい状況が継続している場合には、スケーリング係数が大きくなるように変更し、スケーリング係数が乗算された誤差の絶対値があらかじめ決められた閾値(>1)よりも大きい状況が継続している場合には、スケーリング係数が小さくなるように変更してもよい。そのスケーリング係数の増加や減少は、例えば、あらかじめ決められた値を現在のスケーリング係数に乗算したり、加減算したりすることによって行われてもよい。   Moreover, although this Embodiment demonstrated the case where the scaling factor used in the scaling parts 12 and 18 and the inverse scaling parts 15 and 20 was decided beforehand, it may not be so. For example, as illustrated in FIG. 6, the control device 1 may further include a changing unit 22 that changes the scaling coefficient. The changing unit 22 changes the scaling coefficient used in the scaling unit 12 and the inverse scaling unit 15 and the scaling coefficient used in the scaling unit 18 and the inverse scaling unit 20. When the scaling coefficients used in the scaling units 12 and 18 and the inverse scaling units 15 and 20 are the same, the changing unit 22 may change one scaling coefficient. The change may be made according to the current speed, for example. For example, when the absolute value of the current speed is large, the changing unit 22 changes so that the scaling factor becomes smaller, and when the absolute value of the current speed is small, the changing unit 22 changes so as to become a larger scaling coefficient. May be performed. The change may be made according to a history of errors multiplied by a scaling factor. For example, when the situation where the absolute value of the error multiplied by the scaling factor is smaller than a predetermined threshold (<< 1) continues, the changing unit 22 changes the scaling factor to be large, When the situation where the absolute value of the error multiplied by the scaling factor is larger than a predetermined threshold (> 1) continues, the scaling factor may be changed to be small. The increase or decrease of the scaling factor may be performed, for example, by multiplying the current scaling factor by a predetermined value or by adding / subtracting.

また、本実施の形態では、P−PI制御において、同次次数を変動させる同次制御を行うようにする場合について説明したが、P−PI制御以外の制御、例えば、P−PID制御や、P制御、PI制御、PID制御などにおいて、同次次数を変動させる同次制御を行うようにしてもよいことは言うまでもない。なお、その場合であっても、P制御やPI制御、PID制御などを行う前段において、算出された誤差に同次次数に応じた指数演算を行うものとする。その指数演算は、同次制御となるために行われるものである。また、その指数演算の前後においてそれぞれ、スケーリング係数の乗算と、スケーリング係数の逆数の乗算とを行ってもよい。また、その指数演算の指数を決めるために用いられる同次次数は、スケーリング係数の乗算された誤差から算出されてもよい。図7は、そのような制御装置3の一例を示すブロック図である。制御装置3は、誤差算出部31と、スケーリング部32と、同次次数取得部33と、演算部34と、逆スケーリング部35と、指令値算出部36とを備える。   Further, in the present embodiment, a case has been described in which homogeneous control for changing the homogeneous order is performed in P-PI control. However, control other than P-PI control, for example, P-PID control, Needless to say, in the P control, the PI control, the PID control, etc., the homogeneous control for changing the homogeneous order may be performed. Even in such a case, it is assumed that an exponent operation according to the same order is performed on the calculated error before the P control, the PI control, the PID control, and the like. The exponent operation is performed to achieve homogeneous control. In addition, before and after the exponent operation, multiplication of the scaling coefficient and multiplication of the inverse of the scaling coefficient may be performed. In addition, the homogeneous order used to determine the exponent of the exponent operation may be calculated from the error multiplied by the scaling factor. FIG. 7 is a block diagram showing an example of such a control device 3. The control device 3 includes an error calculation unit 31, a scaling unit 32, a homogeneous order acquisition unit 33, a calculation unit 34, an inverse scaling unit 35, and a command value calculation unit 36.

誤差算出部31は、制御対象の上位指令値と、制御対象の現在値との誤差を算出する。その上位指令値や、現在値は、例えば、位置であってもよく、速度であってもよく、または、その他の値であってもよい。その上位指令値は、例えば、ティーチングされた情報に基づいて算出されたものであってもよく、または、上位側の指令値算出部によって算出された指令値であってもよい。誤差算出部31は、例えば、位置誤差算出部11や速度誤差算出部17に対応するものである。   The error calculation unit 31 calculates an error between the upper command value to be controlled and the current value to be controlled. The higher order command value and the current value may be, for example, a position, a speed, or other values. The higher order command value may be calculated based on, for example, teaching information, or may be a command value calculated by a higher order command value calculation unit. The error calculation unit 31 corresponds to, for example, the position error calculation unit 11 and the speed error calculation unit 17.

スケーリング部32は、誤差に正の実数であるスケーリング係数を乗算する。スケーリング部32は、例えば、スケーリング部12,18に対応するものである。   The scaling unit 32 multiplies the error by a scaling coefficient that is a positive real number. The scaling unit 32 corresponds to, for example, the scaling units 12 and 18.

同次次数取得部33は、同次次数を取得する。なお、同次次数取得部33は、例えば、上位指令値に対応する誤差、すなわち誤差算出部31によって算出された誤差、下位指令値に対応する誤差の少なくとも一方を用いて同次次数を取得してもよく、または、その他の誤差を用いて同次次数を取得してもよい。また、その誤差は、スケーリング係数の乗算された誤差であってもよい。図7では、上位指令値に対応する誤差にスケーリング係数の乗算された結果を用いて同次次数を取得する場合について示している。その同次次数の取得は、上述の説明のように、誤差の絶対値が閾値(<1)より小さいときにはτ=0となり、誤差の絶対値が1より大きいときにはτ≧0となり、誤差の絶対値がその間の範囲のときにはτ<0となるように取得することが好適である。また、誤差の絶対値が1以外の箇所では、同次次数が連続であることが好適である。なお、誤差の絶対値が1の箇所においては、同次次数τは連続でなくてもよいが、その場合には、前述のように、連続でない箇所において同次次数τが0となることが好適である。また、同次次数取得部33は、制御対象の現在値(例えば、現在速度など)をも用いて同次次数を取得してもよい。同次次数取得部33は、例えば、同次次数取得部13に対応するものである。   The homogeneous order acquisition unit 33 acquires the homogeneous order. For example, the homogeneity order acquisition unit 33 acquires the homogeneity order using at least one of the error corresponding to the upper command value, that is, the error calculated by the error calculation unit 31 and the error corresponding to the lower command value. Alternatively, the same order may be obtained using other errors. The error may be an error multiplied by a scaling factor. FIG. 7 shows a case where the homogeneity order is obtained using a result obtained by multiplying the error corresponding to the upper command value by the scaling coefficient. As described above, the acquisition of the homogeneous order is τ = 0 when the absolute value of the error is smaller than the threshold (<1), and τ ≧ 0 when the absolute value of the error is larger than 1, so that the absolute error When the value is in the range between them, it is preferable to obtain such that τ <0. Further, it is preferable that the homogeneous order is continuous at a place where the absolute value of the error is other than 1. It should be noted that the homogeneous order τ does not have to be continuous at a location where the absolute value of the error is 1, but in that case, the homogeneous order τ may be 0 at a location that is not continuous as described above. Is preferred. Further, the homogeneity order acquisition unit 33 may acquire the homogeneity order using the current value (for example, the current speed) of the control target. The homogeneous order acquisition unit 33 corresponds to, for example, the homogeneous order acquisition unit 13.

演算部34は、同次制御となるように、誤差に同次次数に応じた指数演算を行う。その誤差は、スケーリング部32によってスケーリング係数の乗算された誤差であってもよい。その指数演算は、上記説明の通りであり、演算対象の符号を維持してr乗することである。なお、前述のように、指数rは、同次次数τの関数であるが、制御装置3が同次システムとなるように、または、制御装置3を含む制御システムが同次システムとなるように、その関数が決められているものとする。したがって、取得されたτに応じて決められた指数rを用いた指数演算を行うことによって、同次制御が実現されることになる。演算部34は、例えば、第1の演算部14や第2の演算部19に対応するものである。したがって、演算部34において、第2の演算部19と同様に、2以上の演算が行われてもよい。   The computing unit 34 performs exponential computation according to the homogeneity order on the error so as to achieve homogeneous control. The error may be an error obtained by multiplying the scaling coefficient by the scaling unit 32. The exponent operation is as described above, and is to be raised to the power of r while maintaining the sign of the operation target. As described above, the index r is a function of the homogeneous order τ, so that the control device 3 becomes a homogeneous system, or the control system including the control device 3 becomes a homogeneous system. Suppose that the function is determined. Therefore, homogeneous control is realized by performing exponential computation using the exponent r determined according to the acquired τ. The calculation unit 34 corresponds to, for example, the first calculation unit 14 or the second calculation unit 19. Accordingly, two or more calculations may be performed in the calculation unit 34 as in the second calculation unit 19.

逆スケーリング部35は、演算部34による演算結果にスケーリング係数の逆数を乗算する。そのスケーリング係数は、スケーリング部32で用いられるスケーリング係数と同じである。逆スケーリング部35は、例えば、逆スケーリング部15,20に対応するものである。したがって、逆スケーリング部35において、逆スケーリング部20と同様に、2以上の演算結果のそれぞれにスケーリング係数の逆数が乗算されてもよい。   The inverse scaling unit 35 multiplies the calculation result by the calculation unit 34 by the inverse number of the scaling coefficient. The scaling factor is the same as the scaling factor used in the scaling unit 32. The inverse scaling unit 35 corresponds to, for example, the inverse scaling units 15 and 20. Therefore, in the inverse scaling unit 35, similarly to the inverse scaling unit 20, each of two or more calculation results may be multiplied by the inverse of the scaling coefficient.

指令値算出部36は、演算部34による演算結果から下位指令値を算出する。その演算結果は、スケーリング係数の逆数の乗算された演算結果であってもよい。その下位指令値の算出は、例えば、P制御やPI制御、PID制御等によって行われてもよく、または、その他の制御によって行われてもよい。上位指令値の誤差に応じて下位指令値を算出する方法としては、すでに公知の方法を用いることができる。その下位指令値は、制御対象の制御のために用いられてもよく、さらに下位の指令値を生成するために用いられてもよい。指令値算出部36は、例えば、速度指令算出部16や電流指令算出部21に対応するものである。したがって、指令値算出部36において、電流指令算出部21と同様に、2以上の演算結果を用いた下位指令値の算出が行われてもよい。   The command value calculation unit 36 calculates a lower command value from the calculation result obtained by the calculation unit 34. The calculation result may be a calculation result obtained by multiplying the inverse of the scaling coefficient. The calculation of the lower order command value may be performed by, for example, P control, PI control, PID control, or other control. As a method for calculating the lower order command value according to the error of the upper order command value, a known method can be used. The lower order command value may be used for controlling the control target, and may be used for generating a lower order command value. The command value calculation unit 36 corresponds to, for example, the speed command calculation unit 16 or the current command calculation unit 21. Accordingly, the command value calculation unit 36 may calculate the lower command value using two or more calculation results, as in the current command calculation unit 21.

なお、制御装置3の制御対象は、モータであってもよく、または、その他の制御対象であってもよい。すなわち、制御装置3による制御は、サーボ制御であってもよく、プロセス制御であってもよく、または、その他の制御であってもよい。なお、その制御がサーボ制御である場合に、制御対象のモータは、例えば、産業用ロボットや溶接装置等で用いられてもよく、または、その他の装置等で用いられてもよい。制御装置3の行う制御がプロセス制御である場合に、その制御対象は、例えば、プラントの発電量などであってもよい。その場合には、例えば、上位指令値は、プラントの発電量であり、下位指令値はガスタービンの燃料のガス圧力であってもよい。   Note that the control target of the control device 3 may be a motor or another control target. That is, the control by the control device 3 may be servo control, process control, or other control. When the control is servo control, the motor to be controlled may be used in, for example, an industrial robot or a welding apparatus, or may be used in another apparatus or the like. When the control performed by the control device 3 is process control, the control target may be, for example, a power generation amount of a plant. In this case, for example, the upper command value may be the amount of power generated by the plant, and the lower command value may be the gas pressure of the fuel of the gas turbine.

また、例えば、制御装置3に応じた制御ループの内側に、さらに別の制御ループが存在してもよく、制御装置3に応じた制御ループの外側に、さらに別の制御ループが存在してもよい。そのような場合に、その全体の制御システムが同次システムとなっていてもよく、または、制御装置3のみが同次システムとなっていてもよい。   In addition, for example, another control loop may exist inside the control loop corresponding to the control device 3, or another control loop may exist outside the control loop corresponding to the control device 3. Good. In such a case, the entire control system may be a homogeneous system, or only the control device 3 may be a homogeneous system.

また、制御装置3は、制御対象に関する現在値に基づいて、スケーリング部32及び逆スケーリング部35が用いるスケーリング係数を変更する変更部を備えていてもよい。なお、そのスケーリング係数の変更に用いられる制御対象に関する現在値は、誤差算出部31による誤差の算出で用いられる現在値であってもよく、他の現在値であってもよい。例えば、誤差算出部31による誤差の算出で用いられる現在値がモータの現在位置である場合に、変更部は、モータの現在位置に基づいてスケーリング係数を変更してもよく、または、モータの現在速度に基づいてスケーリング係数を変更してもよい。   Moreover, the control apparatus 3 may be provided with the change part which changes the scaling factor which the scaling part 32 and the inverse scaling part 35 use based on the present value regarding a control object. Note that the current value related to the control target used for changing the scaling coefficient may be the current value used in the error calculation by the error calculation unit 31, or may be another current value. For example, when the current value used in the error calculation by the error calculation unit 31 is the current position of the motor, the changing unit may change the scaling coefficient based on the current position of the motor, or the current value of the motor The scaling factor may be changed based on the speed.

また、本実施の形態では、指数演算の前後において、スケーリング係数の乗算及びスケーリング係数の逆数の乗算をそれぞれ行う場合について説明したが、そうでなくてもよい。例えば、スケーリング係数の乗算を行わなくても誤差の範囲が適切である場合には、スケーリング係数の乗算等を行わなくてもよい。スケーリング係数の乗算等を行わない場合には、例えば、制御装置1は、スケーリング部12,18、及び逆スケーリング部15,20を備えていなくてもよく、制御装置3は、スケーリング部32、及び逆スケーリング部35を備えていなくてもよい。   In the present embodiment, the case where the multiplication of the scaling coefficient and the multiplication of the reciprocal of the scaling coefficient are performed before and after the exponent operation, respectively, is not necessary. For example, if the error range is appropriate without performing multiplication of the scaling factor, multiplication of the scaling factor or the like may not be performed. In the case where the multiplication of the scaling coefficient is not performed, for example, the control device 1 may not include the scaling units 12 and 18 and the inverse scaling units 15 and 20, and the control device 3 includes the scaling unit 32, and The inverse scaling unit 35 may not be provided.

また、上記実施の形態において、各処理または各機能は、単一の装置または単一のシステムによって集中処理されることによって実現されてもよく、または、複数の装置または複数のシステムによって分散処理されることによって実現されてもよい。   In the above embodiment, each process or each function may be realized by centralized processing by a single device or a single system, or may be distributedly processed by a plurality of devices or a plurality of systems. It may be realized by doing.

また、上記実施の形態において、各構成要素間で行われる情報の受け渡しは、例えば、その情報の受け渡しを行う2個の構成要素が物理的に異なるものである場合には、一方の構成要素による情報の出力と、他方の構成要素による情報の受け付けとによって行われてもよく、または、その情報の受け渡しを行う2個の構成要素が物理的に同じものである場合には、一方の構成要素に対応する処理のフェーズから、他方の構成要素に対応する処理のフェーズに移ることによって行われてもよい。   In the above embodiment, the information exchange between the components is performed by one component when, for example, the two components that exchange the information are physically different from each other. It may be performed by outputting information and receiving information by the other component, or when two components that exchange information are physically the same, one component May be performed by moving from the phase of the process corresponding to to the phase of the process corresponding to the other component.

また、上記実施の形態において、各構成要素が実行する処理に関係する情報、例えば、各構成要素が受け付けたり、取得したり、選択したり、生成したり、送信したり、受信したりした情報や、各構成要素が処理で用いる閾値や数式等の情報等は、上記説明で明記していなくても、図示しない記録媒体において、一時的に、または長期にわたって保持されていてもよい。また、その図示しない記録媒体への情報の蓄積を、各構成要素、または、図示しない蓄積部が行ってもよい。また、その図示しない記録媒体からの情報の読み出しを、各構成要素、または、図示しない読み出し部が行ってもよい。   In the above embodiment, information related to processing executed by each component, for example, information received, acquired, selected, generated, transmitted, or received by each component In addition, information such as threshold values and mathematical formulas used by each constituent element in processing may be temporarily or over a long period of time in a recording medium (not shown), even if not specified in the above description. Further, the storage of information on the recording medium (not shown) may be performed by each component or a storage unit (not shown). Further, reading of information from the recording medium (not shown) may be performed by each component or a reading unit (not shown).

また、上記実施の形態において、各構成要素等で用いられる情報、例えば、各構成要素が処理で用いる閾値、各種の設定値等の情報がユーザによって変更されてもよい場合には、上記説明で明記していなくても、ユーザが適宜、それらの情報を変更できるようにしてもよく、または、そうでなくてもよい。それらの情報をユーザが変更可能な場合には、その変更は、例えば、ユーザからの変更指示を受け付ける図示しない受付部と、その変更指示に応じて情報を変更する図示しない変更部とによって実現されてもよい。その図示しない受付部による変更指示の受け付けは、例えば、入力デバイスからの受け付けでもよく、通信回線を介して送信された情報の受信でもよく、所定の記録媒体から読み出された情報の受け付けでもよい。   Also, in the above embodiment, when the information used by each component etc., for example, information such as the threshold used by each component in the process, various setting values, etc. may be changed by the user, Even if not specified, the user may be able to change the information as appropriate, or may not be so. If the information can be changed by the user, the change is realized by, for example, a not-shown receiving unit that receives a change instruction from the user and a changing unit (not shown) that changes the information in accordance with the change instruction. May be. The change instruction received by the receiving unit (not shown) may be received from an input device, information received via a communication line, or information read from a predetermined recording medium, for example. .

また、上記実施の形態において、各構成要素は専用のハードウェアにより構成されてもよく、または、ソフトウェアにより実現可能な構成要素については、プログラムを実行することによって実現されてもよい。例えば、ハードディスクや半導体メモリ等の記録媒体に記録されたソフトウェア・プログラムをCPU等のプログラム実行部が読み出して実行することによって、各構成要素が実現されうる。その実行時に、プログラム実行部は、記憶部や記録媒体にアクセスしながらプログラムを実行してもよい。また、そのプログラムは、サーバなどからダウンロードされることによって実行されてもよく、所定の記録媒体(例えば、光ディスクや磁気ディスク、半導体メモリなど)に記録されたプログラムが読み出されることによって実行されてもよい。また、このプログラムは、プログラムプロダクトを構成するプログラムとして用いられてもよい。また、そのプログラムを実行するコンピュータは、単数であってもよく、複数であってもよい。すなわち、集中処理を行ってもよく、または分散処理を行ってもよい。   In the above-described embodiment, each component may be configured by dedicated hardware, or a component that can be realized by software may be realized by executing a program. For example, each component can be realized by a program execution unit such as a CPU reading and executing a software program recorded on a recording medium such as a hard disk or a semiconductor memory. At the time of execution, the program execution unit may execute the program while accessing the storage unit or the recording medium. The program may be executed by being downloaded from a server or the like, or may be executed by reading a program recorded on a predetermined recording medium (for example, an optical disk, a magnetic disk, a semiconductor memory, or the like). Good. Further, this program may be used as a program constituting a program product. Further, the computer that executes the program may be singular or plural. That is, centralized processing may be performed, or distributed processing may be performed.

また、本発明は、以上の実施の形態に限定されることなく、種々の変更が可能であり、それらも本発明の範囲内に包含されるものであることは言うまでもない。   Further, the present invention is not limited to the above-described embodiment, and various modifications are possible, and it goes without saying that these are also included in the scope of the present invention.

以上より、本発明による制御装置によれば、より精度の高い制御を実現できるという効果が得られ、例えば、産業用ロボットの各軸を動作させるモータ等を制御する制御装置として有用である。   As described above, according to the control device of the present invention, it is possible to obtain an effect that more accurate control can be realized.

1、3 制御装置
11 位置誤差算出部
12、18、32 スケーリング部
13、33 同次次数取得部
14 第1の演算部
15、20、35 逆スケーリング部
16 速度指令算出部
17 速度誤差算出部
19 第2の演算部
19a 第1の指数演算部
19b 第2の指数演算部
21 電流指令算出部
21a 比例制御部
21b 積分制御部
21c 加算器
22 変更部
31 誤差算出部
34 演算部
36 指令値算出部
DESCRIPTION OF SYMBOLS 1, 3 Control apparatus 11 Position error calculation part 12, 18, 32 Scaling part 13, 33 Homogeneous degree acquisition part 14 1st calculating part 15, 20, 35 Inverse scaling part 16 Speed command calculation part 17 Speed error calculation part 19 Second calculation unit 19a First exponent calculation unit 19b Second exponent calculation unit 21 Current command calculation unit 21a Proportional control unit 21b Integration control unit 21c Adder 22 Change unit 31 Error calculation unit 34 Calculation unit 36 Command value calculation unit

Claims (9)

上位指令値と、制御対象の現在値との誤差を算出する誤差算出部と、
同次次数を取得する同次次数取得部と、
同次制御となるように、誤差に前記同次次数に応じた指数演算を行う演算部と、
前記演算部による演算結果から下位指令値を算出する指令値算出部と、を備えた制御装置。
An error calculation unit for calculating an error between the upper command value and the current value of the control target;
A homogeneous order acquisition unit for acquiring a homogeneous order;
An arithmetic unit that performs exponential operation according to the homogeneity order for error so as to be homogeneous control;
And a command value calculation unit that calculates a lower command value from a calculation result of the calculation unit.
前記誤差に正の実数であるスケーリング係数を乗算するスケーリング部と、
前記演算部による演算結果に前記スケーリング係数の逆数を乗算する逆スケーリング部と、をさらに備え、
前記演算部は、前記スケーリング係数が乗算された誤差に指数演算を行い、
前記指令値算出部は、前記スケーリング係数の逆数の乗算された演算結果から下位指令値を算出する、請求項1記載の制御装置。
A scaling unit that multiplies the error by a scaling factor that is a positive real number;
An inverse scaling unit that multiplies the operation result of the operation unit by the inverse of the scaling coefficient, and
The arithmetic unit performs an exponential operation on the error multiplied by the scaling factor,
The control device according to claim 1, wherein the command value calculation unit calculates a lower command value from a calculation result obtained by multiplying a reciprocal of the scaling coefficient.
前記制御対象に関する現在値に基づいて、前記スケーリング部及び前記逆スケーリング部が用いる前記スケーリング係数を変更する変更部をさらに備えた、請求項2記載の制御装置。 The control device according to claim 2, further comprising: a changing unit that changes the scaling coefficient used by the scaling unit and the inverse scaling unit based on a current value related to the control target. 前記同次次数取得部は、前記スケーリング係数が乗算された誤差に基づいて同次次数を取得する、請求項2または請求項3記載の制御装置。 4. The control device according to claim 2, wherein the homogeneous order acquisition unit acquires the homogeneous order based on an error multiplied by the scaling coefficient. 前記同次次数取得部は、誤差の絶対値が、1より小さい閾値よりも小さい範囲では、0である同次次数を取得する、請求項1から請求項4のいずれか記載の制御装置。 5. The control device according to claim 1, wherein the homogeneous order acquisition unit acquires a homogeneous order that is 0 in a range where an absolute value of an error is smaller than a threshold smaller than 1. 5. 前記同次次数取得部は、誤差の絶対値が、前記閾値よりも大きく、1より小さい範囲では、0未満である同次次数を取得する、請求項5記載の制御装置。 The control device according to claim 5, wherein the homogeneous order obtaining unit obtains a homogeneous order that is less than 0 in a range in which an absolute value of an error is larger than the threshold and smaller than 1. 前記同次次数取得部は、誤差の絶対値が1以上の範囲では、0以上である同次次数を取得する、請求項1から請求項6のいずれか記載の制御装置。 The control device according to any one of claims 1 to 6, wherein the homogeneity order obtaining unit obtains a homogeneity order that is 0 or more in a range where the absolute value of the error is 1 or more. 前記制御対象は、モータである、請求項1から請求項7のいずれか記載の制御装置。 The control device according to claim 1, wherein the control target is a motor. 位置指令と、制御対象のモータの現在位置との位置誤差を算出する位置誤差算出部と、
同次次数を取得する同次次数取得部と、
同次制御となるように、位置誤差に前記同次次数に応じた指数演算を行う第1の演算部と、
前記第1の演算部による演算結果に比例制御を行うことによって速度指令を算出する速度指令算出部と、
前記速度指令と、前記モータの現在速度との速度誤差を算出する速度誤差算出部と、
同次制御となるように、速度誤差に前記同次次数に応じた指数演算を行う第2の演算部と、
前記第2の演算部による演算結果から電流指令を算出する電流指令算出部と、を備え、
前記同次次数取得部は、位置誤差及び速度誤差の少なくとも一方を用いて、前記同次次数を取得し、
前記第2の演算部は、速度誤差にそれぞれ、前記同次次数に応じた指数演算を行う第1及び第2の指数演算部を備え、
前記電流指令算出部は、前記第1の指数演算部の演算結果に比例制御を行い、前記第2の指数演算部の演算結果に積分制御を行う、制御装置。
A position error calculation unit that calculates a position error between the position command and the current position of the motor to be controlled;
A homogeneous order acquisition unit for acquiring a homogeneous order;
A first calculation unit that performs exponential calculation according to the homogeneous degree for the position error so as to achieve homogeneous control;
A speed command calculation unit that calculates a speed command by performing proportional control on a calculation result by the first calculation unit;
A speed error calculator that calculates a speed error between the speed command and the current speed of the motor;
A second computing unit that performs exponential computation according to the homogeneous order for the speed error so as to achieve homogeneous control;
A current command calculation unit that calculates a current command from a calculation result by the second calculation unit,
The homogeneous order acquisition unit acquires the homogeneous order using at least one of a position error and a velocity error,
The second computing unit includes first and second exponent computing units that perform exponential operations according to the homogeneous orders, respectively, for speed errors,
The current command calculation unit is a control device that performs proportional control on a calculation result of the first exponent calculation unit and performs integral control on a calculation result of the second exponent calculation unit.
JP2015132530A 2015-07-01 2015-07-01 Control device Pending JP2017016391A (en)

Priority Applications (1)

Application Number Priority Date Filing Date Title
JP2015132530A JP2017016391A (en) 2015-07-01 2015-07-01 Control device

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
JP2015132530A JP2017016391A (en) 2015-07-01 2015-07-01 Control device

Publications (1)

Publication Number Publication Date
JP2017016391A true JP2017016391A (en) 2017-01-19

Family

ID=57830585

Family Applications (1)

Application Number Title Priority Date Filing Date
JP2015132530A Pending JP2017016391A (en) 2015-07-01 2015-07-01 Control device

Country Status (1)

Country Link
JP (1) JP2017016391A (en)

Cited By (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2020144483A (en) * 2019-03-04 2020-09-10 富士通株式会社 Reinforcement learning method, reinforcement learning program, and reinforcement learning system
CN112963339A (en) * 2021-03-26 2021-06-15 北京氢澜科技有限公司 Air compressor rotating speed control method, device and equipment based on multi-mode PID

Cited By (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2020144483A (en) * 2019-03-04 2020-09-10 富士通株式会社 Reinforcement learning method, reinforcement learning program, and reinforcement learning system
CN112963339A (en) * 2021-03-26 2021-06-15 北京氢澜科技有限公司 Air compressor rotating speed control method, device and equipment based on multi-mode PID

Similar Documents

Publication Publication Date Title
US10481566B2 (en) Machine learning device, servo control device, servo control system and machine learning method
US9041337B2 (en) Motion profile generator
CN109274314B (en) Machine learning device, servomotor control system, and machine learning method
JP6514257B2 (en) Machine learning apparatus, servo control apparatus, servo control system, and machine learning method
JP6499720B2 (en) Machine learning device, servo control device, servo control system, and machine learning method
US10824121B2 (en) Machine learning device, servo motor controller, servo motor control system, and machine learning method
Huang et al. Iterative learning control of inhomogeneous distributed parameter systems—Frequency domain design and analysis
Phuong et al. Fine sensorless force control realization based on dither periodic component elimination Kalman filter and wide band disturbance observer
US11087509B2 (en) Output device, control device, and evaluation function value output method
US20190287007A1 (en) Machine learning device, servo control device, servo control system, and machine learning method
JPWO2012165011A1 (en) Drive machine load characteristic estimation device
US10126734B2 (en) Servo control apparatus for driving plurality of motors
JP2014136260A (en) Control device
US10101729B2 (en) Motor control device, motor control method and computer readable recording medium
JP2017016391A (en) Control device
JP2019168777A (en) Control system design support device, control system design support method, and control system design support program
Riaz et al. A novel adaptive PD-type iterative learning control of the PMSM servo system with the friction uncertainty in low speeds
JP7003623B2 (en) Control system
US10684594B2 (en) Machine learning device, servo motor controller, servo motor control system, and machine learning method
JP2018112972A (en) Servo motor control apparatus, servo motor control method, and servo motor control program
KR102240723B1 (en) Controller comprising position predict unit and a control method thereof
JP2018041333A (en) Servo motor control device, servo motor control method, and program for servo motor control
JPWO2014064815A1 (en) Servo control device
Moran Cardenas et al. Design of high accuracy tracking systems with H∞ preview control
JP2020042585A (en) Control device, cnc device, and control method for control device