JP6774637B2 - Control device and control method - Google Patents
Control device and control method Download PDFInfo
- Publication number
- JP6774637B2 JP6774637B2 JP2018568603A JP2018568603A JP6774637B2 JP 6774637 B2 JP6774637 B2 JP 6774637B2 JP 2018568603 A JP2018568603 A JP 2018568603A JP 2018568603 A JP2018568603 A JP 2018568603A JP 6774637 B2 JP6774637 B2 JP 6774637B2
- Authority
- JP
- Japan
- Prior art keywords
- control
- neural network
- machine
- learning
- disturbance
- 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
Links
Images
Classifications
-
- G—PHYSICS
- G05—CONTROLLING; REGULATING
- G05B—CONTROL OR REGULATING SYSTEMS IN GENERAL; FUNCTIONAL ELEMENTS OF SUCH SYSTEMS; MONITORING OR TESTING ARRANGEMENTS FOR SUCH SYSTEMS OR ELEMENTS
- G05B11/00—Automatic controllers
- G05B11/01—Automatic controllers electric
- G05B11/36—Automatic controllers electric with provision for obtaining particular characteristics, e.g. proportional, integral, differential
-
- G—PHYSICS
- G05—CONTROLLING; REGULATING
- G05B—CONTROL OR REGULATING SYSTEMS IN GENERAL; FUNCTIONAL ELEMENTS OF SUCH SYSTEMS; MONITORING OR TESTING ARRANGEMENTS FOR SUCH SYSTEMS OR ELEMENTS
- G05B13/00—Adaptive control systems, i.e. systems automatically adjusting themselves to have a performance which is optimum according to some preassigned criterion
- G05B13/02—Adaptive control systems, i.e. systems automatically adjusting themselves to have a performance which is optimum according to some preassigned criterion electric
Description
開示の実施形態は、制御装置及び制御方法に関する。 The disclosed embodiments relate to control devices and control methods.
特許文献1には、所定の調整用シーケンス動作を実行した際に検出した各状態量の評価結果に基づいて制御パラメータを自動的に設定する手法が記載されている。
しかしながら、制御精度の高い要求を満たすためには、多様なシーケンス動作を繰り返し実行し、熟練した技術者の勘と経験などの技量に依存した総合的な判断により制御パラメータを調整する必要があった。 However, in order to satisfy the demand for high control accuracy, it is necessary to repeatedly execute various sequence operations and adjust the control parameters by comprehensive judgment depending on the skill such as the intuition and experience of a skilled engineer. ..
本発明はこのような問題点に鑑みてなされたものであり、制御装置の利便性を向上できる制御装置及び制御方法を提供することを目的とする。 The present invention has been made in view of such problems, and an object of the present invention is to provide a control device and a control method capable of improving the convenience of the control device.
上記課題を解決するため、本発明の一の観点によれば、参照指令と外部の制御対象が出力する制御量との間の偏差を所定の制御パラメータで制御する制御器に入力し、当該制御器が出力する操作量で前記制御対象を制御するフィードバック制御部と、機械学習プロセスでの学習内容に基づいて、前記制御パラメータを調整する調整部と、を有する制御装置が適用される。 In order to solve the above problem, according to one aspect of the present invention, the deviation between the reference command and the control amount output by the external control target is input to the controller controlled by a predetermined control parameter, and the control is performed. A control device having a feedback control unit that controls the control target with an operation amount output by the device and an adjustment unit that adjusts the control parameters based on the learning content in the machine learning process is applied.
また、本発明の別の観点によれば、参照指令と外部の制御対象が出力する制御量との間の偏差を所定の制御パラメータで制御する制御器に入力し、当該制御器が出力する操作量で前記制御対象を制御することと、機械学習プロセスでの学習内容に基づいて、前記制御パラメータを調整することと、を実行する制御方法が適用される。 Further, according to another aspect of the present invention, an operation in which a deviation between a reference command and a control amount output by an external control target is input to a controller controlled by a predetermined control parameter and output by the controller. A control method for controlling the controlled object by a quantity and adjusting the control parameter based on the learning content in the machine learning process is applied.
本発明によれば、制御装置の利便性を向上できる。 According to the present invention, the convenience of the control device can be improved.
以下、実施の形態について図面を参照しつつ説明する。 Hereinafter, embodiments will be described with reference to the drawings.
<機械制御システムの概略構成>
図1は、本実施形態の制御装置を備えた機械制御システムの概略的なシステムブロック構成の一例を表している。この機械制御システムは、回転型モータの駆動を制御することによりスライダの直進移動を制御するシステムである。図1において、機械制御システム1は、上位制御装置2と、モータ制御装置3と、回転型モータ4と、駆動機械5とを有している。<Outline configuration of machine control system>
FIG. 1 shows an example of a schematic system block configuration of a machine control system including the control device of the present embodiment. This mechanical control system is a system that controls the linear movement of the slider by controlling the drive of the rotary motor. In FIG. 1, the
上位制御装置2は、例えば特に図示しないCPU、ROM、RAM、操作部、表示部等を備えた汎用パーソナルコンピュータ等で構成されている。上位制御装置2は、操作部を介して操作者から入力された各種設定や指令に基づいて、後述する駆動機械5のスライダを所望の位置に位置決めするための位置指令を生成し、モータ制御装置3に出力する。
The host control device 2 is composed of, for example, a general-purpose personal computer including a CPU, ROM, RAM, an operation unit, a display unit, and the like (not shown). The host control device 2 generates a position command for positioning the slider of the
モータ制御装置3は、上位制御装置2から出力された位置指令に基づいてトルク指令を生成し、回転型モータ4に出力する。この際、モータ制御装置3は、回転型モータ4が備える後述のエンコーダ41aから出力された検出位置に基づいて、位置のフィードバック制御を行う。モータ制御装置3は、フィードバック制御部31と、調整部32とを有している。なお、モータ制御装置3が、各請求項記載の制御装置に相当する。
The motor control device 3 generates a torque command based on the position command output from the host control device 2 and outputs the torque command to the rotary motor 4. At this time, the motor control device 3 performs position feedback control based on the detection position output from the
フィードバック制御部31は、上述した位置指令と検出位置とに基づくトルク指令の生成を行う演算部である。なお、フィードバック制御部31の制御ブロックについては後の図3で詳述する。
The
調整部32は、位置指令、検出位置、及びトルク指令に基づいて、上記フィードバック制御部31におけるトルク指令の演算処理に用いられる制御パラメータ(後述)を適宜の状況で調整する処理部である。なお、この調整部32の処理内容についても後に詳述する。
The adjusting
なお、上述したフィードバック制御部31、調整部32等における処理等は、これらの処理の分担の例に限定されるものではなく、例えば、更に少ない数の処理部(例えば1つの処理部)で処理されてもよく、また、更に細分化された処理部により処理されてもよい。また、モータ制御装置3は、後述するCPU901(図12参照)が実行するプログラムによりソフトウェア的に実装されてもよいし、その一部又は全部がASICやFPGA、その他の電気回路等(ニューロモーフィックチップ等)の実際の装置によりハードウェア的に実装されてもよい。
The processing and the like in the
回転型モータ4は、例えば同期型の3相交流モータであり、当該回転型モータ4の出力軸の回転位置を検出位置として出力するエンコーダ41aを一体に備えている。
The rotary motor 4 is, for example, a synchronous three-phase AC motor, and integrally includes an
駆動機械5は、図示する例では回転型モータ4の軸出力である回転位置を送りネジ51を介してスライダ52の並進位置に変換するアクチュエータである。この駆動機械5は、カップリング53と、送りネジ51と、スライダ52とを有している。
In the illustrated example, the
回転型モータ4の出力軸には、カップリング53を介して送りネジ51が連結されている。また、スライダ52は上方に物を載置可能な台座であり、その下部には上記の送りネジ51が螺合している。これにより、上記回転型モータ4が正転又は逆転することで、当該スライダ52が送りネジ51で送られて当該回転型モータ4の回転方向に対応する方向(図中の左右方向)に沿った直進移動を行うよう駆動される。
A
以上の構成において、モータ制御装置3は、エンコーダ41aから出力された検出位置に基づいて、スライダ52の位置が上記の位置指令に追従するよう回転型モータ4に出力するトルク指令を制御する位置フィードバック制御を行う。
In the above configuration, the motor control device 3 controls a position feedback that controls a torque command output to the rotary motor 4 so that the position of the
<本実施形態の特徴>
例えば上記実施形態にあるようなモータ制御装置3では、サーボモータ(上記実施形態の場合の回転型モータ4)の制御量である出力位置(上記実施形態の場合の検出位置)や出力速度をフィードバックして目的値である参照指令(上記実施形態の場合の位置指令や速度指令)との偏差を制御器(後述)に入力し、この制御器が出力する操作量(上記実施形態の場合のトルク指令)でサーボモータを制御するフィードバック制御を行う場合が多い。このモータ制御で駆動する駆動機械等においても、当該駆動機械に連結したサーボモータ自体の出力位置や出力速度を制御量としてフィードバックするセミクローズドフィードバック制御や、もしくは駆動機械の最終的な出力位置や出力速度を制御量としてフィードバックするフルクローズドフィードバック制御によって、駆動機械(例えば上記スライダ52)の位置制御や速度制御を行うことができる。<Characteristics of this embodiment>
For example, in the motor control device 3 as in the above embodiment, the output position (detection position in the case of the above embodiment) and the output speed, which are the control amounts of the servomotor (rotary motor 4 in the case of the above embodiment), are fed back. Then, the deviation from the reference command (position command or speed command in the case of the above embodiment), which is the target value, is input to the controller (described later), and the operation amount (torque in the case of the above embodiment) output by this controller is input. In many cases, feedback control is performed to control the servo motor with a command). Even in a drive machine driven by this motor control, semi-closed feedback control that feeds back the output position and output speed of the servomotor itself connected to the drive machine as a control amount, or the final output position and output of the drive machine The position control and speed control of the driving machine (for example, the slider 52) can be performed by the fully closed feedback control in which the speed is fed back as a control amount.
上記のようなモータ制御装置3が備える制御器は多数の制御パラメータを用いた演算処理により操作量を出力するものであり、制御対象であるサーボモータや駆動機械の機械定数、及び付加しうる外乱に対応して適切に制御パラメータを設定することが望ましい。しかし、制御対象(サーボモータや駆動機械)を構成する部品点数が多くその構成が複雑でありながら高い制御精度(上記実施形態の場合の位置決め精度)や短い整定時間が要求される場合には、当該制御対象の個体差(部品の製造誤差や組立誤差等)や動作条件、経年劣化状況、使用環境状況の変化に応じて制御パラメータを厳密に調整する必要がある。 The controller included in the motor control device 3 as described above outputs an operation amount by arithmetic processing using a large number of control parameters, and the mechanical constants of the servomotor and the drive machine to be controlled, and the disturbance that can be added. It is desirable to set the control parameters appropriately according to. However, when the number of parts constituting the control target (servo motor or drive machine) is large and the configuration is complicated, high control accuracy (positioning accuracy in the case of the above embodiment) and short settling time are required. It is necessary to strictly adjust the control parameters according to individual differences (part manufacturing error, assembly error, etc.) of the controlled object, operating conditions, aging deterioration status, and usage environment status.
これまでには、実際にサーボモータを駆動機械に連結した状態で、所定の調整用シーケンス動作を実行した際に検出した参照指令、操作量、及び制御量に基づいて制御対象の機械定数を推定し、これに基づいて制御パラメータを機械的に設定する手法があった。しかし、制御精度の高い要求を満たすためには、多様なシーケンス動作を繰り返し実行し、それらの検出データに基づく総合的な判断により制御パラメータを調整する必要がある。このような複雑で微妙な制御パラメータの調整は、熟練した技術者の勘と経験などの技量に依存した手作業を繰り返して非効率的に行わざるを得なかった。このため、当該駆動機械システムの導入時における初期調整はもちろん、運用開始後でも使用環境が変化した場合や経年劣化が進んだ場合の再調整においても、その度に専門の技術者が直接工場などの作業現場に出向いて長時間かけて調整しなければならず、制御装置の利便性を大きく損ねる要因となっていた。 So far, the machine constant to be controlled is estimated based on the reference command, the operation amount, and the control amount detected when the predetermined adjustment sequence operation is executed with the servomotor actually connected to the drive machine. However, there was a method of mechanically setting control parameters based on this. However, in order to satisfy the demand for high control accuracy, it is necessary to repeatedly execute various sequence operations and adjust the control parameters by comprehensive judgment based on the detected data. Adjustment of such complicated and delicate control parameters had to be performed inefficiently by repeating manual work depending on the skill such as the intuition and experience of a skilled engineer. For this reason, not only the initial adjustment at the time of introduction of the drive machine system, but also the readjustment when the usage environment changes or the deterioration over time progresses even after the start of operation, a specialized engineer directly works at the factory etc. It was necessary to go to the work site and make adjustments over a long period of time, which was a factor that greatly impaired the convenience of the control device.
これに対し本実施形態のモータ制御装置3は、機械学習プロセスでの学習内容に基づいて、制御器の制御パラメータを調整する調整部32を有している。これにより、適宜のシーケンス動作時や外乱付加時に検出したデータに基づく機械学習プロセスを実行することにより、調整部32はその学習内容によって適切な制御パラメータの設定が可能となる。つまり、人手によらずとも当該モータ制御装置3自体による自律的な制御パラメータの調整を機械的に自動で行うことができる。このため、モータ制御装置3における制御パラメータの調整に対して人的コスト及び時間的コストを省力化できるとともに、技術者個人の技量差によらず一律に安定した制御精度を確保することができる。
On the other hand, the motor control device 3 of the present embodiment has an
<制御パラメータの調整手法の概要>
図2は、上記モータ制御装置3における制御パラメータの調整手法の概要を表す制御ブロック図を示している。この図2において、外部から入力された参照指令rと、制御対象Pが出力する制御量yとの間の偏差が制御器K(ρ)に入力される。この制御器K(ρ)は、制御パラメータρに基づく演算処理により操作量uを出力し、この操作量uにより制御対象Pが制御される。なお、ここでいう参照指令r、操作量u、制御対象P、制御量yが、それぞれ上記実施形態における位置指令、トルク指令、回転型モータ4と駆動機械、検出位置に相当する(制御器K(ρ)の対応については後述する)。<Outline of control parameter adjustment method>
FIG. 2 shows a control block diagram showing an outline of a control parameter adjustment method in the motor control device 3. In FIG. 2, the deviation between the reference command r input from the outside and the control amount y output by the control target P is input to the controller K (ρ). The controller K (ρ) outputs an operation amount u by arithmetic processing based on the control parameter ρ, and the control target P is controlled by the operation amount u. The reference command r, the operation amount u, the control target P, and the control amount y referred to here correspond to the position command, the torque command, the rotary motor 4, the drive machine, and the detection position in the above-described embodiment, respectively (controller K). The correspondence of (ρ) will be described later).
以上のようなフィードバック制御系において、制御器K(ρ)は可変な制御パラメータρを用いた所定の演算モデルであるため、その特性や挙動については完全に既知であるといえる。その一方、制御対象Pについては、設計値による概略的なモデルは知り得ているとしても、上述したように当該制御対象P自体の個体差(部品の製造誤差や組立誤差等)や動作条件、経年劣化状況、使用環境状況の変化によって、その実体的で詳細な特性や挙動については未知のものであるといえる。つまり、制御パラメータは、実際に適用された制御対象Pにおける具体的な機械定数や外乱に対応して適応するよう調整する必要がある。 In the feedback control system as described above, since the controller K (ρ) is a predetermined calculation model using the variable control parameter ρ, it can be said that its characteristics and behavior are completely known. On the other hand, regarding the control target P, even if the schematic model based on the design value is known, as described above, the individual differences (part manufacturing error, assembly error, etc.) and operating conditions of the control target P itself, It can be said that its substantive and detailed characteristics and behavior are unknown due to changes in aging deterioration and usage environment. That is, the control parameters need to be adjusted so as to adapt to specific mechanical constants and disturbances in the actually applied control target P.
ここで、制御対象Pにおける未知の機械定数や外乱の因子は、参照指令rと制御量yとの間の相関関係に大きく影響を与えることが考えられる。そこで本実施形態の例では、多様なシーケンス動作時や外乱付加時における参照指令r、操作量u、制御量y、及びその他の動作条件cと、そのときに設定されていた制御パラメータとを対応付けたデータセットをデータベースDBに記録、保存する。そして、調整部Calがそれらのデータセットに基づく機械学習プロセスを実行することで、参照指令rと制御量yとの対応関係から推定される制御対象Pの機械定数と外乱に対応して適切な制御パラメータρnewを設定することができる。Here, it is considered that unknown mechanical constants and disturbance factors in the controlled object P have a great influence on the correlation between the reference command r and the controlled variable y. Therefore, in the example of the present embodiment, the reference command r, the operation amount u, the control amount y, and other operation conditions c at the time of various sequence operations or disturbance addition correspond to the control parameters set at that time. The attached data set is recorded and saved in the database DB. Then, the coordinating unit Cal executes a machine learning process based on those data sets, and is appropriate for the machine constants and disturbances of the controlled object P estimated from the correspondence between the reference command r and the controlled variable y. The control parameter ρ new can be set.
<フィードバック制御部と調整部の具体的な適用例>
図3は、フィードバック制御部31を含めたフィードバック制御系と、調整部32との間における各情報の送受関係の一例を示している。なお、図示するフィードバック制御系は、伝達関数形式の制御ブロックで表している。この図3においては、フィードバック制御部31と、モータ・駆動機械60と、調整部32と、データベースDBが示されている。<Specific application example of feedback control unit and adjustment unit>
FIG. 3 shows an example of the transmission / reception relationship of each information between the feedback control system including the
フィードバック制御部31は、減算器34、位置ループゲインKp、減算器35、積分器(1/T・s)、加算器36、速度ループゲインKv、及び速度演算器37を有している。
The
減算器34は、外部から入力された位置指令から、モータ・駆動機械60から検出された検出位置を減算してそれらの間の位置偏差を出力する。この位置偏差に位置ループゲインKpを乗算して速度指令が出力される。本実施形態の例では、この位置ループゲインKpが位置制御用の制御器(上記図2における制御器K(ρ))として機能し、いわゆる位置比例制御を行うよう構成されている。
The
減算器35は、上記の速度指令から、後述の速度演算器37から出力された検出速度を減算してそれらの間の速度偏差を出力する。積分器(1/T・s)は、速度偏差に対して速度ループ積分時定数Tに基づく積分演算を行い、加算器36がこの積分器(1/T・s)の出力と速度偏差を加算して出力する。この加算出力に速度ループゲインKvを乗算してトルク指令が出力される。本実施形態の例では、これら積分器(1/T・s)及び速度ループゲインKvもまた速度制御用の制御器(上記図2における制御器K(ρ))として機能し、いわゆる速度積分比例制御を行うよう構成されている。
The
速度演算器37は、モータ・駆動機械60から検出された検出位置に基づいて検出速度(回転型モータ4の出力速度)を出力する演算器であり、具体的には微分器sで構成すればよい。
The
モータ・駆動機械60(上記図2における制御対象Pに相当)は、上記図1における回転型モータ4と駆動機械5に相当し、回転型モータ4の回転子と駆動機械5の可動部分とを連結させた可動機構全体の慣性モーメントJに基づく数理モデルである。なお特に図示しないが、上記速度ループゲインKvに回転型モータ4の回転子の慣性モーメントJ0をさらに乗算した場合には、このモータ・駆動機械60中の数理モデルを慣性モーメント比で定義してもよい。The motor / drive machine 60 (corresponding to the control target P in FIG. 2) corresponds to the rotary motor 4 and the
以上のようにフィードバック制御部31とモータ・駆動機械60で構成する本実施形態の例のフィードバック制御系は、位置比例制御系のフィードバックループと、速度積分比例制御系のフィードバックループの2重ループ構成(いわゆるP−IP制御)となっている。なお本実施形態では、トルク指令に基づいて例えばPWM制御による駆動電流をモータ・駆動機械60に出力する電流制御部と、その内部に備えられる電流制御系のフィードバックループについては、説明を簡略化するために省略している。
As described above, the feedback control system of the example of the present embodiment composed of the
以上のフィードバック制御系に対し、調整部学習用データセットを取得する際には、制御パラメータρに相当する位置ループゲインKp、速度ループ積分時定数T、及び速度ループゲインKvの各値を適宜仮設定した状態で、所定の調整用シーケンス動作を実行した際の位置指令(参照指令rに相当)、トルク指令(操作量uに相当)、検出位置(制御量yに相当)を記録する。本実施形態の例では、これら位置指令、トルク指令、及び検出位置(以下において、これらをまとめて状態量データという)のそれぞれは、図4に示すように当該調整用シーケンス動作を実行した際の同一時系列で瞬時値を逐次記録した時系列パターンデータとして記録される。なお、図4中に示す例では、位置指令を0から所定位置までインチング制御で増加させた位置決め動作でシーケンス動作を実行した場合の各状態量の時系列パターンデータ(太実線の波形データ)を示している。また図4(d)中に示すdは位置偏差を表しており、これについては後述する。 For the above feedback control system, when acquiring the data set for learning the adjustment unit, the values of the position loop gain Kp, the speed loop integration time constant T, and the speed loop gain Kv corresponding to the control parameter ρ are appropriately provisional. In the set state, the position command (corresponding to the reference command r), the torque command (corresponding to the operation amount u), and the detection position (corresponding to the control amount y) when the predetermined adjustment sequence operation is executed are recorded. In the example of the present embodiment, each of the position command, the torque command, and the detection position (hereinafter, these are collectively referred to as state quantity data) is when the adjustment sequence operation is executed as shown in FIG. It is recorded as time-series pattern data in which instantaneous values are sequentially recorded in the same temporary series. In the example shown in FIG. 4, the time series pattern data (thick solid line waveform data) of each state quantity when the sequence operation is executed by the positioning operation in which the position command is increased from 0 to a predetermined position by the inching control is obtained. Shown. Further, d shown in FIG. 4D represents a position deviation, which will be described later.
なお、図示する例では位置指令制御を行った場合を示しているが、この他にも速度指令制御やトルク指令制御でシーケンス動作を実行してもよい。例えば、図4(b)に示すような加速時・減速時の加速度が一定で定常速度が一定値を保つ区間がある台形状の時系列パターンそのままで速度指令を入力してシーケンス動作を実行させてもよい。または、そのような時系列パターンにおける加減速時と一定速度時の切り替わり部分の加速度の連続性が担保される多項式、三角関数や指数関数で表現される速度指令などを入力してシーケンス動作を実行させてもよい。 In the illustrated example, the case where the position command control is performed is shown, but in addition to this, the sequence operation may be executed by the speed command control or the torque command control. For example, as shown in FIG. 4B, the speed command is input and the sequence operation is executed with the trapezoidal time-series pattern as it is, which has a section in which the acceleration during acceleration and deceleration is constant and the steady speed is kept constant. You may. Alternatively, the sequence operation is executed by inputting a polynomial that guarantees the continuity of acceleration at the switching portion between acceleration / deceleration and constant speed in such a time series pattern, a speed command expressed by a trigonometric function or an exponential function, and the like. You may let me.
そしてデータベースDBでは、多様な調整用シーケンス動作ごとに、各状態量データの時系列パターンデータと、当該調整用シーケンス動作時に仮設定した各制御パラメータKp,T,Kvとを対応付けて1つの調整部学習用データセットを作成し、保存する(図3中の破線矢印参照)。なお、このデータベースDBは、モータ制御装置3の内部に備える記憶装置で構成してもよいし、またはモータ制御装置3と情報送受可能に接続された外部の記憶装置で構成してもよい(上記図1では図示省略)。 Then, in the database DB, for each of the various adjustment sequence operations, one adjustment is made by associating the time-series pattern data of each state quantity data with the control parameters Kp, T, Kv temporarily set during the adjustment sequence operation. Create and save the data set for part learning (see the dashed arrow in FIG. 3). The database DB may be configured by a storage device provided inside the motor control device 3, or may be configured by an external storage device connected to the motor control device 3 so as to be able to send and receive information (the above). Not shown in FIG. 1).
データベースDBに十分な数の調整部学習用データセットが取得された後には、これら調整部学習用データセットを用いたバッチ学習(オフライン学習)により調整部32を機械学習(データ学習)させる。そしてその学習内容に基づいて調整部32が各制御パラメータKp,T,Kvを設定するフェーズでは、各制御パラメータを仮設定した状態で機械制御システム1の実動運用シーケンス動作を実行した際の各状態量データの時系列パターンデータが調整部32に入力され、当該調整部32がフィードバック制御部31に最適な制御パラメータKp,T,Kvを出力する。そして、これら出力された制御パラメータKp,T,Kvをフィードバック制御部31に本設定することで、運用時での当該フィードバック制御系における高い制御精度を確保できる(図3中の点線矢印参照)。
After a sufficient number of adjustment unit learning data sets are acquired in the database DB, the
<調整部の具体的構成について>
調整部32には多様な機械学習手法を適用できるが、以下においては例えば機械学習アルゴリズムに深層学習(ディープラーニング)を適用した場合の例を説明する。図5は、深層学習を適用した場合における調整部32のニューラルネットワークの概略モデル構成の一例を示している。<Specific configuration of the adjustment unit>
Various machine learning methods can be applied to the
この図5において、調整部32のニューラルネットワークは、各部から入力された状態量データである位置指令、トルク指令、及び検出位置の各時系列パターンデータに対して、これら状態量データの間の対応関係、特に位置指令と検出位置の間の対応関係から推定されるモータ・駆動機械60の機械定数に適切に対応した制御パラメータKp,T,Kvを出力するよう設計されている。なお、図5に示すニューラルネットワークの概略モデル構成例においては、上記の機械定数に相当する値や信号(例えば素性を表す値や信号)については図示を省略している。
In FIG. 5, the neural network of the adjusting
ここで、時系列パターンデータである各状態量データの入力については、それぞれ同一の所定サンプリング周期でサンプリングした瞬時値が時系列順に並ぶ各入力ノードに入力される。また、調整部32の各出力ノードが出力する制御パラメータKp,T,Kvについては、それぞれ回帰問題処理による多値出力(連続値)により出力される。これらの制御パラメータKp,T,Kvの設定処理は、当該調整部32の学習フェーズにおける機械学習プロセスでの学習内容に基づくものである。すなわちこの調整部32のニューラルネットワークは、各状態量データの間の相関関係と適切な制御パラメータKp,T,Kvとの相関を表す特徴量を学習している。
Here, with respect to the input of each state quantity data which is time series pattern data, the instantaneous values sampled in the same predetermined sampling cycle are input to each input node arranged in chronological order. Further, the control parameters Kp, T, and Kv output by each output node of the
この調整部32の機械学習プロセスについては、上記のように設計された多層ニューラルネットワークがモータ制御装置3上でソフトウェア的(又はハードウェア的)に実装された後、データベースDBに保存した多数の調整部学習用データセットを用いていわゆる教師あり学習により調整部32に学習させる。ここで用いる調整部学習用データセットは、例えば図6に示すように、各種の調整用シーケンスデータを実行した際の各状態量データ(時系列パターンデータ)及び評価値と、その際に仮設定した制御パラメータKp,T,Kvとを対応付けたデータセットである。図示する例の評価値は、対応するデータセットの制御パラメータKp,T,Kvを適用したフィードバック制御系のシーケンス動作における応答性についての評価を示す指標である。この評価値は、例えば上記図4(d)に示した位置偏差dや、オーバーシュートやアンダーシュート時の振動振幅、過渡期が終了するまでの整定時間、制御量が指令に対して追従するまでの立ち上がり時間、トルク指令値のリップルの大きさ、トルク指令値と速度から推定できる消費電力値などのように当該データセットの状態量データに基づいて総合的に求めてもよい。また、複数の正弦波を組み合わせたトルク指令を入力し、その応答から計算される位相余裕・ゲイン余裕・感度関数の値を指標としても良い。なお図6中では、この評価値を「高」、「低」の2段階の指標で表しているが、3段階以上の指標で表してもよいし、また数値で表してもよい。
Regarding the machine learning process of the
本実施形態の例における調整部32の上記学習フェーズでは、状態量データを入力データとし、制御パラメータを出力データとした組み合わせの教師データを用いて、調整部32のニューラルネットワークの入力層と出力層の間の関係性が成立するよう各ノードどうしをつなぐ各エッジの重み係数を調整するいわゆるバックプロパゲーション処理等により学習を行う。このバックプロパゲーション処理では、多数のデータセットのうち特に評価値の高いデータセットのみを抽出し、これだけを教師データに用いて各エッジの重み係数を強めるよう調整してもよい。または、全てのデータセットを教師データとし、それぞれの評価値に応じて各エッジの重み係数を強めたり弱めたりするよう調整してもよい。なお、このようなバックプロパゲーションの他にも、いわゆるオートエンコーダ、制限付きボルツマンマシン、ドロップアウト、ノイズ付加、及びスパース正則化などの公知の多様な学習手法を併用して処理精度を向上させてもよい。この調整部32の学習フェーズが、各請求項記載の機械学習プロセスに相当する。
In the learning phase of the adjusting
なお上述したように、調整部32の機械学習アルゴリズムは、図示した深層学習によるもの以外にも、例えばサポートベクトルマシンやベイジアンネットワーク等を利用した他の機械学習アルゴリズム(特に図示せず)を適用してもよい。その場合でも、入力した状態量データに適切に対応する制御パラメータを出力するという基本的な構成については同等となる。
As described above, the machine learning algorithm of the
<機械学習プロセスのデータ学習について>
ニューラルネットワークで構成した上記調整部32に対する機械学習プロセスの具体的な手順について、以下に説明する。図7は、モータ制御装置3のCPU901(後述の図12参照)が、本実施形態の例におけるデータ学習により機械学習プロセスを実行する場合の処理手順のフローチャートを示している。このフローに示すデータ学習処理は、例えば上位制御装置2から機械学習プロセスを実行するよう指令入力されることで開始する。<About data learning of machine learning process>
The specific procedure of the machine learning process for the
まずステップS5で、CPU901は、各制御パラメータ(この例のKp,T,Kv)を仮設定する。この各制御パラメータの仮設定は、それぞれ適宜の設定可能範囲内でのランダムな値の組み合わせで設定する。または、適用するフィードバック制御系に対して妥当と考えられる人為的な設計値を個別に増減変化させて設定してもよい。
First, in step S5, the
次にステップS10へ移り、CPU901は、予め用意された多種の調整用シーケンス動作から1つを選択する。
Next, the process proceeds to step S10, and the
次にステップS15へ移り、CPU901は、上記ステップS10で選択した調整用シーケンスの位置指令をフィードバック制御部31に入力して対応するシーケンス動作をモータ・駆動機械60に実行させる。
Next, the process proceeds to step S15, and the
次にステップS20へ移り、CPU901は、上記ステップS15での調整用シーケンス動作の実行中に、位置指令、トルク指令、検出位置の各状態量データを記録する。
Next, the process proceeds to step S20, and the
次にステップS25へ移り、CPU901は、上記ステップS20で記録した各状態量データと、上記ステップS5で仮設定した各制御パラメータで1つの調整部学習用データセットを作成する。また、このデータセットには、その各状態量データやその他の手法に基づいて求められる応答性についての評価値も含まれる。
Next, the process proceeds to step S25, and the
次にステップS30へ移り、CPU901は、予め用意された多種の調整用シーケンス動作についてデータセットが作成されたか否かを判定する。まだデータセットが作成されていない調整用シーケンス動作が残っている場合、判定は満たされず、上記ステップS10に戻り同様の手順を繰り返す。
Next, the process proceeds to step S30, and the
一方、予め用意された全ての調整用シーケンス動作についてデータセットが作成された場合、判定が満たされ、ステップS35へ移る。 On the other hand, when a data set is created for all the adjustment sequence operations prepared in advance, the determination is satisfied and the process proceeds to step S35.
ステップS35では、CPU901は、仮設定する制御パラメータを変えて新たに多種の調整用シーケンス動作を繰り返して調整部学習用データセットを作成するか否かを判定する。言い換えると、データセットの作成を終了するか否かを判定する。新たな制御パラメータに仮設定してデータセットの作成を続行する場合、判定は満たされず、上記ステップS5に戻り新たな制御パラメータを仮設定して同様の手順を繰り返す。
In step S35, the
一方、データセットの作成を終了する場合、判定が満たされ、ステップS40へ移る。 On the other hand, when the creation of the data set is completed, the determination is satisfied, and the process proceeds to step S40.
ステップS40では、CPU901は、作成した調整部学習用データセットを用いて調整部32のデータ学習を実行する。そして、このフローを終了する。
In step S40, the
なお、以上のようなオフライン学習(バッチ学習)でのデータ学習処理による機械学習プロセスは、当該機械制御システム1の稼働開始前に行ってもよいし、または回転型モータ4や駆動機械5の経年劣化状況や使用環境の変化に応じた制御精度の向上を目的として稼働開始後の必要時に行ってもよい。
The machine learning process by data learning processing in offline learning (batch learning) as described above may be performed before the start of operation of the
<本実施形態による効果>
以上説明したように、本実施形態の機械制御システム1は、機械学習プロセスでの学習内容に基づいて、フィードバック制御部31が備える各制御器の制御パラメータを調整する調整部32を有している。これにより、適宜のシーケンス動作時に検出した状態量データに基づく機械学習プロセスを実行することにより、調整部32はその学習内容によって適切な制御パラメータの設定が可能となる。つまり、人手によらずとも当該モータ制御装置3自体による自律的な制御パラメータの調整を機械的に自動で行うことができる。このため、モータ制御装置3における制御パラメータの調整に対して人的コスト及び時間的コストを削減できるとともに、技術者個人の技量差によらず一律に安定した制御精度を確保することができる。この結果、制御装置の利便性を向上できる。<Effect of this embodiment>
As described above, the
なお、本実施形態では、フィードバック制御系に対してのみ制御パラメータを調整する場合を説明したが、これに限られない。例えば、さらにフィードフォワード制御系も含む制御系に対してもそのフィードフォワードゲイン等の制御パラメータの調整に本実施形態の調整部32の手法を適用してもよい。さらに、制御系に各種のオブザーバや補償器が含まれる場合にも、それらの内部に用いられる各種の制御パラメータの調整に同じ手法を適用してもよい。また、本実施形態のようないわゆるモーション制御に限られず、他にもいわゆるプロセス制御の制御パラメータの調整に同じ手法を適用してもよい。
In the present embodiment, the case where the control parameters are adjusted only for the feedback control system has been described, but the present invention is not limited to this. For example, the method of the adjusting
また、本実施形態では特に、調整部32は、位置指令と検出位置との対応関係から推定されるモータ・駆動機械60の機械定数(または後述する外乱)に対応した制御パラメータを設定する。これにより、調整部32は、フィードバック制御部31が有する各制御器に対して具体的に推定されるモータ・駆動機械60(制御対象P)の機械定数(または後述する外乱)に対応した適切な制御パラメータを設定できる。
Further, in the present embodiment, in particular, the adjusting
また、本実施形態では特に、機械学習プロセスでは、位置指令、トルク指令、及び検出位置の少なくとも1つと仮設定した制御パラメータとを対応付けた調整部学習用データセットを用いたデータ学習(オフライン学習、バッチ学習)により調整部32を機械学習させる。これにより、調整部32に対してデータセットを用いた教師あり学習による具体的な機械学習プロセスの実行を実現できる。また、データ学習をオンライン学習で行うことにより、特に当該機械制御システム1の稼働中における経年劣化状況や使用環境状況の変化にも逐次対応して常時適切な制御パラメータの設定が可能となる。なお、モータ・駆動機械60のシーケンス動作における制御精度に影響を与え得る環境データ(駆動機械5の周囲温度や姿勢など)などを別途のセンサで検出し調整部学習用データセットに含めて調整部32にデータ学習させてもよい。
Further, in the present embodiment, particularly in the machine learning process, data learning (offline learning) using a data set for adjusting unit learning in which at least one of a position command, a torque command, and a detection position is associated with a temporarily set control parameter is used. , Batch learning) to make the
また、本実施形態では特に、調整部学習用データセットの位置指令、トルク指令、及び検出位置は、同一のシーケンス動作時における時系列パターンデータである。これにより、調整部32は、各状態量データの変化態様に対応した機械学習が可能となり、多様なシーケンス動作に適切に対応した汎用性の高い制御パラメータの設定が可能となる。なお、同一のフィードバック制御部31に対して、多様なモータ・駆動機械60に変えて調整部学習用データセットを作成し同一の調整部32に学習させることで、当該調整部32が多様なモータ・駆動機械60に柔軟に対応した制御パラメータの調整が可能となり、当該フィードバック制御部31の汎用性が向上する。
Further, in the present embodiment, in particular, the position command, torque command, and detection position of the adjustment unit learning data set are time-series pattern data at the time of the same sequence operation. As a result, the adjusting
また、本実施形態では特に、調整部学習用データセットには評価値が含まれており、機械学習プロセスでは評価値に基づいて機械学習する。これにより、調整部32の機械学習プロセスにおいて、各調整部学習用データセットのデータ学習をその評価値に応じて機械学習させることができ、フィードバック制御部31の制御精度をさらに向上できる。
Further, in the present embodiment, in particular, the adjustment unit learning data set includes evaluation values, and in the machine learning process, machine learning is performed based on the evaluation values. As a result, in the machine learning process of the
また、本実施形態では特に、制御パラメータは、位置ループゲインKp、速度ループゲインKv、速度ループ積分時定数T(及びモータ・駆動機械60の慣性モーメント比)の少なくとも1つを含んでいる。これにより、フィードバック制御部31が備える各制御器に対して好適な制御パラメータの設定が可能となる。また必要に応じて、モデル追従制御ゲイン、トルク指令フィルタ時定数、ノッチフィルタ周波数、ノッチフィルタQ値、又はノッチフィルタ深さなどの他の制御パラメータを含めてもよい。
Further, in the present embodiment, in particular, the control parameter includes at least one of the position loop gain Kp, the speed loop gain Kv, and the speed loop integration time constant T (and the moment of inertia ratio of the motor / drive machine 60). This makes it possible to set suitable control parameters for each controller included in the
<変形例>
なお、以上説明した実施形態は、その趣旨及び技術的思想を逸脱しない範囲内で種々の変形が可能である。<Modification example>
It should be noted that the embodiments described above can be variously modified within a range that does not deviate from the purpose and technical idea.
<変形例1:機械学習プロセスを強化学習で行う場合>
上記実施形態では、状態量データに対応する適切な制御パラメータの機械学習プロセスをデータ学習により行っていたが、これに限られない。他にも、図8に例示するような強化学習処理の機械学習プロセスにより、調整部32のニューラルネットワークの学習を行ってもよい。なお、図示する本変形例の強化学習処理では、いわゆるQ学習の手法に基づいて行う。<Transformation example 1: When the machine learning process is performed by reinforcement learning>
In the above embodiment, the machine learning process of the appropriate control parameters corresponding to the state quantity data is performed by data learning, but the present invention is not limited to this. In addition, the neural network of the
まずステップS105で、CPU901は、各制御パラメータを仮設定する。この各制御パラメータの初期的な仮設定は、適用するフィードバック制御系に対して妥当と考えられる人為的な設計値で設定する。
First, in step S105, the
次にステップS110へ移り、CPU901は、新たな制御パラメータを探索する。この新たな制御パラメータの探索については、その時点まで適切(後述のいわゆるQ値が最大)であるとして設定される制御パラメータから、小さな確率でランダムな方向に修正した制御パラメータを設定するか、もしくはそれ以外のほとんどの確率では適切であるとされる制御パラメータそのままとする。
Next, the process proceeds to step S110, and the
次にステップS115へ移り、CPU901は、上記ステップS110で探索設定した制御パラメータで、所定の調整用シーケンス動作を実行する。
Next, the process proceeds to step S115, and the
次にステップS120へ移り、CPU901は、上記ステップS115での調整用シーケンス動作の実行中に、位置指令、トルク指令、検出位置の各状態量データを記録する。
Next, the process proceeds to step S120, and the
次にステップS125へ移り、CPU901は、上記ステップS120で記録した各状態量データに基づいて今回の調整用シーケンス動作に対する評価を行い、この評価に応じた報酬を算出する。
Next, the process proceeds to step S125, and the
次にステップS130へ移り、CPU901は、上記ステップS110で探索設定した制御パラメータと、上記ステップS125で算出した報酬に基づくいわゆるQ学習により、調整部32のニューラルネットワークに対する強化学習を行う。上記ステップS115でのシーケンス動作の試行に対して、設定されている制御パラメータの有効性を示すQ値がより最大化するよう制御パラメータを学習する。このQ学習による強化学習については、公知の手法を用いればよくここでは詳細な説明を省略する。
Next, the process proceeds to step S130, and the
次にステップS135へ移り、CPU901は、調整部32のニューラルネットワークに対し、十分な試行回数で機械学習が行われたか否かを判定する。機械学習が不十分であって当該強化学習処理を終了しない場合には、判定は満たされず、上記ステップS110に戻って同様の手順を繰り返す。
Next, the process proceeds to step S135, and the
一方、機械学習が十分であって当該強化学習処理を終了する場合には、判定が満たされ、このフローを終了する。 On the other hand, when the machine learning is sufficient and the reinforcement learning process is terminated, the determination is satisfied and this flow is terminated.
以上説明したように、本変形例の機械制御システム1は、機械学習プロセスが、位置指令、トルク指令、及び検出位置の少なくとも1つに基づく強化学習(Q学習等)により制御パラメータを機械学習する。これにより、事前に多数の学習用データセットを用意せずとも、高い制御精度を実現する制御パラメータの設定が可能となる。
As described above, in the
また、本変形例では特に、強化学習は、所定の調整用シーケンス動作時における制御パラメータの設定に対する報酬に基づいて強化学習する。これにより、調整部32は、多様なシーケンス動作に適切に対応した応答性の高い制御パラメータの設定が可能となる。
Further, in the present modification, in particular, the reinforcement learning is performed based on the reward for setting the control parameter at the time of the predetermined adjustment sequence operation. As a result, the adjusting
<変形例2:外乱付加に対して適切な制御パラメータを設定する場合>
上記実施形態では、調整部32が、フィードバック制御系のシーケンス動作における応答性の向上を目的とした観点で制御パラメータを設定していたが、これに限られない。他にも、調整部32は、制御対象に付加された外乱(特に動的に付加された外乱)に対するロバスト性の向上を目的とした観点で制御パラメータを設定してもよい。<Modification example 2: When setting appropriate control parameters for disturbance addition>
In the above embodiment, the adjusting
この場合には、例えば図9に示すように、当該機械制御システム1の稼働時に想定し得る同一の外乱付加時において記録された各状態量データの時系列パターンデータを含めて調整部学習用データセットを作成し、データ学習する。なお、図示する例の調整部学習用データセットでは、移動中のスライダ52に所定重量の物体を置いた場合の各状態量データと、ロバスト性についての評価値が例示されている。このような外乱付加と上記実施形態におけるシーケンス動作の違いを、上記図2に示した動作条件cとして調整部学習用データセットを区別してもよい。
In this case, for example, as shown in FIG. 9, the adjustment unit learning data including the time-series pattern data of each state quantity data recorded at the time of the same disturbance addition that can be assumed when the
以上説明したように、本変形例の機械制御システム1は、調整部学習用データセットの位置指令、トルク指令、検出位置の各状態量データは、同一の外乱付加時における時系列パターンデータである。これにより、調整部32は、多様な外乱に対してロバスト性を向上できる制御パラメータの設定が可能となる。
As described above, in the
また調整部32は、このような外乱付加に対する制御パラメータの設定を、上述した強化学習により学習してもよい。この場合には、強化学習は、所定の外乱付加時における制御パラメータの設定に対する報酬に基づいて強化学習する。このような強化学習によっても、調整部32は、多様な外乱に対してロバスト性を向上できる制御パラメータの設定が可能となる。
Further, the adjusting
<変形例3:調整部を分割して機械定数を出力する場合>
上記実施形態では、調整部32が、連続した一体のニューラルネットワークで構成されている例を説明したが、これに限られない。他にも、図10に示すように、調整部32を構成するニューラルネットワークを層方向に2つに分割し、それらの間で機械定数(又は外乱)を出力させてもよい。例えば、状態量データを入力する入力層側(図中の左側)のニューラルネットワークを例えば第1ニューラルネットワーク71とし、制御パラメータを出力する出力層側(図中の右側)のニューラルネットワークを例えば第2ニューラルネットワーク72とする。なお図中では、図示の煩雑を避けるために、ノードとエッジの図示を省略して各ニューラルネットワークを矩形ブロックで示している。<Modification example 3: When the adjustment part is divided and the machine constant is output>
In the above embodiment, an example in which the adjusting
この場合、第1ニューラルネットワーク71においては、各部から入力された状態量データである位置指令、トルク指令、及び検出位置の各時系列パターンデータに対して、これら状態量データの間の対応関係から推定される機械定数(又は外乱)を出力するよう設計されている。なお、図示する例では、機械定数として慣性モーメント、弾性係数、第1共振周波数、第2共振周波数を例示している(外乱の場合は例えば付加する外乱質量や外乱弾性など;図示省略)。この第1ニューラルネットワーク71の機械学習プロセスにあたっては、例えば所定の調整用シーケンス動作時に各状態量データを記録するとともに、制御対象Pの機械定数を別途の検出機械や検出試験等によって正確に検出し、それらをまとめた第1ニューラルネットワーク71用の学習用データセットを作成する。そして多数の学習用データセットを用いたデータ学習を実行することで、第1ニューラルネットワーク71は各状態量データの間の相関関係と機械定数との相関を表す特徴量を学習する。 In this case, in the first neural network 71, for each time series pattern data of the position command, the torque command, and the detection position, which are the state quantity data input from each part, from the correspondence relationship between the state quantity data. It is designed to output an estimated mechanical constant (or disturbance). In the illustrated example, the moment of inertia, elastic modulus, first resonance frequency, and second resonance frequency are illustrated as mechanical constants (in the case of disturbance, for example, the added disturbance mass or disturbance elasticity; not shown). In the machine learning process of the first neural network 71, for example, each state quantity data is recorded at the time of a predetermined adjustment sequence operation, and the machine constant of the controlled object P is accurately detected by a separate detection machine, detection test, or the like. , A training data set for the first neural network 71 that puts them together is created. Then, by executing data learning using a large number of training data sets, the first neural network 71 learns a feature quantity representing the correlation between each state quantity data and the machine constant.
なお、上記の調整用シーケンス動作時に仮設定した制御パラメータを特に仮設定制御パラメータ(図中に示すKp′、Kv′、T′)とし、図示するように状態量データとともに第1ニューラルネットワーク71に入力することで出力させる機械定数(又は外乱)の推定精度を向上させてもよい。この場合には、仮設定制御パラメータもまた学習用データセットに併せて記録し、第1ニューラルネットワーク71のデータ学習に用いる。なお、このような第1ニューラルネットワーク71に入力する仮設定制御パラメータに対して、以下においては第2ニューラルネットワーク72に出力させる制御パラメータを図示するように適応制御パラメータという。
The control parameters temporarily set during the above adjustment sequence operation are set as temporary setting control parameters (Kp', Kv', T'shown in the figure), and as shown in the figure, the first neural network 71 together with the state quantity data. The estimation accuracy of the mechanical constant (or disturbance) to be output by inputting may be improved. In this case, the temporary setting control parameters are also recorded together with the learning data set and used for data learning of the first neural network 71. In the provisional control parameters input to the first neural network 71, the control parameters to be output to the second
また、第2ニューラルネットワーク72においては、上記第1ニューラルネットワーク71から入力された機械定数(又は外乱)に対して、これらの機械定数の間の対応関係から適切とされる適応制御パラメータKp,Kv,Tを出力するよう設計されている。この第2ニューラルネットワーク72の機械学習プロセスにあたっては、それぞれ既知の機械定数(又は外乱)にある多数の制御対象に対して所定の調整用シーケンス動作を行わせるために適応制御パラメータを別途人為的に適切に設定し、これら機械定数と適応制御パラメータをまとめた第2ニューラルネットワーク72用の学習用データセットを作成する。そして多数の学習用データセットを用いたデータ学習を実行することで、第2ニューラルネットワーク72は各機械定数(又は外乱)の間の相関関係と適応制御パラメータとの相関を表す特徴量を学習する。
Further, in the second
以上説明したように、本変形例の機械制御システム1は、機械定数(又は外乱)を具体的な値で出力することができ、これを参照することで調整部32が設定した適応制御パラメータの妥当性を容易に検討できる。
As described above, the
<変形例4:調整部に事前学習させる場合>
上記実施形態では、最初から調整部学習用データセットだけを用いて調整部32をデータ学習させる手法について説明したが、これに限られない。他にも、公知の演算手法により概略的に適切とされる制御パラメータを算出し、これを用いて調整部32に事前学習させてもよい。<Modification example 4: When the adjustment unit is pre-learned>
In the above embodiment, the method of causing the
例えば図11に示すように、各状態量データに基づいて仮設定制御パラメータを算出する推定部33をモータ制御装置3Aに設け、その算出された仮設定制御パラメータを調整部32に入力する。この場合、推定部33は、所定の調整用シーケンス動作で検出した各状態量データから公知の演算手法により制御対象Pの機械定数を求め、この機械定数と当該フィードバック制御系に対応した状態方程式に基づいて仮設定制御パラメータを推定する。この推定部33が推定した仮設定制御パラメータは、当該制御対象Pの個体差(部品の製造誤差や組立誤差等)や動作条件、経年劣化状況、使用環境状況の変化に厳密に対応していないだけであって、設計上の数理モデルでは概略的に適切であり最終的に求めたい適応制御パラメータとは少しの違いでしかない。したがってこの推定部33が推定した仮設定制御パラメータで仮設定することで、調整部32の機械学習プロセスでは微調整(ファインチューニング)を行うだけとなり、つまり事前学習を行えることになる。
For example, as shown in FIG. 11, an
以上説明したように、本変形例の機械制御システム1は、所定のシーケンス動作で制御パラメータを推定する推定部33を有し、機械学習プロセスは、推定部33が推定した制御パラメータで事前学習する。これにより、調整部32の機械学習プロセスで必要とされる学習時間を大幅に短縮できる。
As described above, the
また特に図示しないが、推定部33が公知の演算手法に基づいて各状態量データから制御対象Pの機械定数だけを推定し、調整部32に入力してもよい。この場合には、上記図10に示した第1ニューラルネットワーク相当部分の事前学習が可能となり、その学習時間を大幅に短縮できる。
Further, although not particularly shown, the
<モータ制御装置のハードウェア構成例>
次に、図12を参照しつつ、上記で説明したCPU901が実行するプログラムによりソフトウェア的に実装されたフィードバック制御部31、調整部32等による処理を実現するモータ制御装置3のハードウェア構成例について説明する。<Hardware configuration example of motor control device>
Next, with reference to FIG. 12, a hardware configuration example of the motor control device 3 that realizes processing by the
図12に示すように、モータ制御装置3は、例えば、CPU901と、ROM903と、RAM905と、ASIC又はFPGA等の特定の用途向けに構築された専用集積回路907と、入力装置913と、出力装置915と、記録装置917と、ドライブ919と、接続ポート921と、通信装置923とを有する。これらの構成は、バス909や入出力インターフェース911を介し相互に信号を伝達可能に接続されている。
As shown in FIG. 12, the motor control device 3 includes, for example, a
プログラムは、例えば、ROM903やRAM905、記録装置917等に記録しておくことができる。
The program can be recorded in, for example, a
また、プログラムは、例えば、フレキシブルディスクなどの磁気ディスク、各種のCD・MOディスク・DVD等の光ディスク、半導体メモリ等のリムーバブルな記録媒体925に、一時的又は永続的に記録しておくこともできる。このような記録媒体925は、いわゆるパッケージソフトウエアとして提供することもできる。この場合、これらの記録媒体925に記録されたプログラムは、ドライブ919により読み出されて、入出力インターフェース911やバス909等を介し上記記録装置917に記録されてもよい。
Further, the program can be temporarily or permanently recorded on, for example, a magnetic disk such as a flexible disk, an optical disk such as various CDs, MO disks, or DVDs, or a
また、プログラムは、例えば、ダウンロードサイト・他のコンピュータ・他の記録装置等(図示せず)に記録しておくこともできる。この場合、プログラムは、LANやインターネット等のネットワークNWを介し転送され、通信装置923がこのプログラムを受信する。そして、通信装置923が受信したプログラムは、入出力インターフェース911やバス909等を介し上記記録装置917に記録されてもよい。
The program can also be recorded on, for example, a download site, another computer, another recording device, or the like (not shown). In this case, the program is transferred via a network NW such as LAN or the Internet, and the
また、プログラムは、例えば、適宜の外部接続機器927に記録しておくこともできる。この場合、プログラムは、適宜の接続ポート921を介し転送され、入出力インターフェース911やバス909等を介し上記記録装置917に記録されてもよい。
Further, the program can be recorded in an appropriate externally
そして、CPU901が、上記記録装置917に記録されたプログラムに従い各種の処理を実行することにより、上記のフィードバック制御部31、調整部32等による処理が実現される。この際、CPU901は、例えば、上記記録装置917からプログラムを直接読み出して実行してもよいし、RAM905に一旦ロードした上で実行してもよい。更にCPU901は、例えば、プログラムを通信装置923やドライブ919、接続ポート921を介し受信する場合、受信したプログラムを記録装置917に記録せずに直接実行してもよい。
Then, the
また、CPU901は、必要に応じて、例えばマウス・キーボード・マイク(図示せず)等の入力装置913から入力する信号や情報に基づいて各種の処理を行ってもよい。
Further, the
そして、CPU901は、上記の処理を実行した結果を、例えば表示装置や音声出力装置等の出力装置915から出力してもよく、さらにCPU901は、必要に応じてこの処理結果を通信装置923や接続ポート921を介し送信してもよく、上記記録装置917や記録媒体925に記録させてもよい。
Then, the
なお、以上の説明において、「垂直」「平行」「平面」等の記載がある場合には、当該記載は厳密な意味ではない。すなわち、それら「垂直」「平行」「平面」とは、設計上、製造上の公差、誤差が許容され、「実質的に垂直」「実質的に平行」「実質的に平面」という意味である。 In the above description, when there is a description such as "vertical", "parallel", "plane", etc., the description does not have a strict meaning. That is, these "vertical", "parallel", and "planar" mean "substantially vertical", "substantially parallel", and "substantially flat", with design and manufacturing tolerances and errors allowed. ..
また、以上の説明において、外観上の寸法や大きさ、形状、位置等が「同一」「同じ」「等しい」「異なる」等の記載がある場合は、当該記載は厳密な意味ではない。すなわち、それら「同一」「等しい」「異なる」とは、設計上、製造上の公差、誤差が許容され、「実質的に同一」「実質的に同じ」「実質的に等しい」「実質的に異なる」という意味である。 Further, in the above description, when there is a description such as "same", "same", "equal", "different", etc. in the external dimensions, size, shape, position, etc., the description is not a strict meaning. That is, those "same", "equal", and "different" are allowed for design and manufacturing tolerances and errors, and are "substantially the same", "substantially the same", "substantially equal", and "substantially equal". It means "different".
また、以上既に述べた以外にも、上記実施形態や各変形例による手法を適宜組み合わせて利用しても良い。その他、一々例示はしないが、上記実施形態や各変形例は、その趣旨を逸脱しない範囲内において、種々の変更が加えられて実施されるものである。 In addition to the above, the methods according to the above-described embodiment and each modification may be appropriately combined and used. In addition, although not illustrated one by one, the above-described embodiment and each modification are implemented with various modifications within a range that does not deviate from the purpose.
1 機械制御システム
2 上位制御装置
3,3A モータ制御装置(制御装置)
4 回転型モータ(制御対象)
5 駆動機械(制御対象)
31 フィードバック制御部
32 調整部
33 推定部
60 モータ・駆動機械(制御対象)
71 第1ニューラルネットワーク(調整部)
72 第2ニューラルネットワーク(調整部)
DB データベース
1 Machine control system 2 Upper control device 3,3A Motor control device (control device)
4 rotary motor (controlled object)
5 Drive machine (controlled object)
31
71 1st neural network (adjustment part)
72 Second neural network (adjustment section)
DB database
Claims (11)
機械学習プロセスでの学習内容に基づいて、前記制御パラメータを調整する調整部と、
を有し、
前記調整部は、
前記参照指令、前記操作量、及び前記制御量を入力して前記制御対象の機械定数又は外乱を出力する第1ニューラルネットワークと、
前記第1ニューラルネットワークから出力された前記機械定数又は外乱を入力して前記制御パラメータを出力する第2ニューラルネットワークと、
を有する
ことを特徴とする制御装置。 A feedback control unit that inputs the deviation between the reference command and the control amount output by the external control target to the controller that controls with a predetermined control parameter, and controls the control target with the operation amount output by the controller. ,
An adjustment unit that adjusts the control parameters based on what is learned in the machine learning process,
Have a,
The adjusting part
A first neural network that inputs the reference command, the manipulated variable, and the controlled variable and outputs the mechanical constant or disturbance of the controlled object.
A second neural network that inputs the mechanical constant or disturbance output from the first neural network and outputs the control parameters,
A control device characterized by having .
前記第1ニューラルネットワーク又は前記第2ニューラルネットワークの前記機械学習プロセスでは、前記評価値に基づいて機械学習することを特徴とする請求項2乃至4のいずれか1項に記載の制御装置。 The first data set or the second data set contains evaluation values.
The control device according to any one of claims 2 to 4 , wherein in the machine learning process of the first neural network or the second neural network, machine learning is performed based on the evaluation value.
前記第1ニューラルネットワークの前記機械学習プロセスは、前記推定部が推定した前記制御対象の機械定数又は外乱で事前学習し、前記第2ニューラルネットワークの前記機械学習プロセスは、前記推定部が推定した前記制御パラメータで事前学習することを特徴とする請求項1乃至9のいずれか1項に記載の制御装置。 Further having an estimation unit for estimating the control parameters in a predetermined sequence operation,
The machine learning process of the first neural network is pre-learned by the machine constant or disturbance of the controlled object estimated by the estimation unit, and the machine learning process of the second neural network is estimated by the estimation unit. The control device according to any one of claims 1 to 9 , wherein the control device is pre-learned with control parameters.
機械学習プロセスでの学習内容に基づいて、前記制御パラメータを調整することと、
を有し、
前記制御パラメータを調整することは、
第1ニューラルネットワークで前記参照指令、前記操作量、及び前記制御量を入力して前記制御対象の機械定数又は外乱を出力することと、
第2ニューラルネットワークで前記第1ニューラルネットワークから出力された前記機械定数又は外乱を入力して前記制御パラメータを出力することと、
を有する
ことを特徴とする制御方法。 The deviation between the reference command and the control amount output by the external control target is input to the controller controlled by a predetermined control parameter, and the control target is controlled by the operation amount output by the controller.
Adjusting the control parameters based on what is learned in the machine learning process,
Have,
Adjusting the control parameters
Inputting the reference command, the manipulated variable, and the controlled variable in the first neural network to output the mechanical constant or disturbance of the controlled object.
In the second neural network, the mechanical constant or disturbance output from the first neural network is input and the control parameter is output.
A control method characterized by having .
Applications Claiming Priority (3)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
JP2017029383 | 2017-02-20 | ||
JP2017029383 | 2017-02-20 | ||
PCT/JP2018/005267 WO2018151215A1 (en) | 2017-02-20 | 2018-02-15 | Control device and control method |
Publications (2)
Publication Number | Publication Date |
---|---|
JPWO2018151215A1 JPWO2018151215A1 (en) | 2019-11-07 |
JP6774637B2 true JP6774637B2 (en) | 2020-10-28 |
Family
ID=63169375
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
JP2018568603A Active JP6774637B2 (en) | 2017-02-20 | 2018-02-15 | Control device and control method |
Country Status (2)
Country | Link |
---|---|
JP (1) | JP6774637B2 (en) |
WO (1) | WO2018151215A1 (en) |
Families Citing this family (17)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
KR102124553B1 (en) * | 2018-06-25 | 2020-06-18 | 군산대학교 산학협력단 | Method and apparatus for collision aviodance and autonomous surveillance of autonomous mobile vehicle using deep reinforcement learning |
JP6841801B2 (en) * | 2018-08-30 | 2021-03-10 | ファナック株式会社 | Machine learning equipment, control systems and machine learning methods |
JP2020046964A (en) * | 2018-09-19 | 2020-03-26 | ファナック株式会社 | Characteristic determination device, characteristic determination method, and characteristic determination program |
JP6806746B2 (en) * | 2018-09-21 | 2021-01-06 | ファナック株式会社 | Motor control device |
JP6901450B2 (en) * | 2018-10-02 | 2021-07-14 | ファナック株式会社 | Machine learning device, control device and machine learning method |
JP6860540B2 (en) * | 2018-10-25 | 2021-04-14 | ファナック株式会社 | Output device, control device, and learning parameter output method |
JP6849643B2 (en) | 2018-11-09 | 2021-03-24 | ファナック株式会社 | Output device, control device, and evaluation function and machine learning result output method |
KR102198450B1 (en) * | 2018-12-31 | 2021-01-05 | 한국기술교육대학교 산학협력단 | Imitational reinforcement learning system for controlling devices remotely and the method thereof |
JP6956122B2 (en) * | 2019-01-24 | 2021-10-27 | ファナック株式会社 | Machine learning systems, controllers and machine learning methods that optimize filter coefficients |
JP7189801B2 (en) * | 2019-02-22 | 2022-12-14 | 株式会社日立インダストリアルプロダクツ | Hydraulic test rig |
JP7000371B2 (en) | 2019-03-22 | 2022-01-19 | ファナック株式会社 | Machine learning equipment, control systems and machine learning methods |
JP7000373B2 (en) * | 2019-04-15 | 2022-01-19 | ファナック株式会社 | Machine learning device, control device and machine learning method |
JP7403270B2 (en) | 2019-10-09 | 2023-12-22 | 株式会社日立産機システム | Hoisting machine, hoisting machine system, suspended load mass estimation device, and suspended load mass estimation method |
JP2022092690A (en) * | 2020-12-11 | 2022-06-23 | キヤノン株式会社 | Controller, adjustment method, lithography apparatus, and manufacturing method of article |
JP2023127946A (en) * | 2022-03-02 | 2023-09-14 | 株式会社Screenホールディングス | Control support device and control support method |
WO2023203933A1 (en) * | 2022-04-21 | 2023-10-26 | パナソニックIpマネジメント株式会社 | Information processing method, information optimization method, information processing device, and program |
WO2024005136A1 (en) * | 2022-07-01 | 2024-01-04 | パナソニックIpマネジメント株式会社 | Method for generating control parameter, program, recording medium, and device for generating control parameter |
Family Cites Families (2)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JPH04302304A (en) * | 1991-03-29 | 1992-10-26 | Toshiba Corp | Nonlinear process controller |
JP6106226B2 (en) * | 2015-07-31 | 2017-03-29 | ファナック株式会社 | Machine learning device for learning gain optimization, motor control device including machine learning device, and machine learning method |
-
2018
- 2018-02-15 WO PCT/JP2018/005267 patent/WO2018151215A1/en active Application Filing
- 2018-02-15 JP JP2018568603A patent/JP6774637B2/en active Active
Also Published As
Publication number | Publication date |
---|---|
WO2018151215A1 (en) | 2018-08-23 |
JPWO2018151215A1 (en) | 2019-11-07 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
JP6774637B2 (en) | Control device and control method | |
CN109274314B (en) | Machine learning device, servomotor control system, and machine learning method | |
JP6832498B2 (en) | System and evaluation device and evaluation method | |
CN105773623B (en) | SCARA robotic tracking control methods based on the study of forecasting type Indirect iteration | |
CN106873506B (en) | Correction device, control method for correction device, information processing program, and recording medium | |
US10824121B2 (en) | Machine learning device, servo motor controller, servo motor control system, and machine learning method | |
JP6499720B2 (en) | Machine learning device, servo control device, servo control system, and machine learning method | |
US11009837B2 (en) | Machine learning device that adjusts controller gain in a servo control apparatus | |
JP6748135B2 (en) | Machine learning device, servo control device, servo control system, and machine learning method | |
US10481566B2 (en) | Machine learning device, servo control device, servo control system and machine learning method | |
JP2018152012A (en) | Machine learning device, servo control device, servo control system, and machine learning method | |
CN110383187B (en) | System parameter identification method based on rate-limited relay with hysteresis and sinusoidal injection | |
CN111552237A (en) | Machine learning device, control device, and method for setting search range for machine learning | |
WO2018209860A1 (en) | Decoupling control method and device, robot and storage medium | |
JP2020035159A (en) | Parameter adjustor | |
JP2019008707A (en) | Servo controller, servo control method and system | |
JP6740263B2 (en) | Machine learning device, servo motor control device, servo motor control system, and machine learning method | |
JP7469476B2 (en) | Control support device, control system, and control support method | |
WO2021251226A1 (en) | Control assist device, control device, and control assist method | |
CN113126538A (en) | Electronic device and control method thereof | |
CN110727242B (en) | Machine learning device, control device, and machine learning method | |
CN115437238B (en) | Variable-length PD type iterative learning control method for direct-current motor driven single-rod system | |
WO2021176619A1 (en) | Positioning control device and positioning method | |
WO2023008236A1 (en) | Operation adjustment system, motor control system, operation adjustment method, and operation adjustment program | |
Haga Lööf | Adaptive Control of a Permanent Magnet Synchronous Motor for a Robotic Arm under Variable Load |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
A621 | Written request for application examination |
Free format text: JAPANESE INTERMEDIATE CODE: A621 Effective date: 20190710 |
|
A131 | Notification of reasons for refusal |
Free format text: JAPANESE INTERMEDIATE CODE: A131 Effective date: 20200513 |
|
RD02 | Notification of acceptance of power of attorney |
Free format text: JAPANESE INTERMEDIATE CODE: A7422 Effective date: 20200513 |
|
RD04 | Notification of resignation of power of attorney |
Free format text: JAPANESE INTERMEDIATE CODE: A7424 Effective date: 20200513 |
|
A521 | Written amendment |
Free format text: JAPANESE INTERMEDIATE CODE: A523 Effective date: 20200615 |
|
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: 20200903 |
|
A61 | First payment of annual fees (during grant procedure) |
Free format text: JAPANESE INTERMEDIATE CODE: A61 Effective date: 20200916 |
|
R150 | Certificate of patent or registration of utility model |
Ref document number: 6774637 Country of ref document: JP Free format text: JAPANESE INTERMEDIATE CODE: R150 |