JP6774637B2 - Control device and control method - Google Patents

Control device and control method Download PDF

Info

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
Application number
JP2018568603A
Other languages
Japanese (ja)
Other versions
JPWO2018151215A1 (en
Inventor
良平 北吉
良平 北吉
勝 足立
勝 足立
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
Yaskawa Electric Corp
Original Assignee
Yaskawa Electric Corp
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by Yaskawa Electric Corp filed Critical Yaskawa Electric Corp
Publication of JPWO2018151215A1 publication Critical patent/JPWO2018151215A1/en
Application granted granted Critical
Publication of JP6774637B2 publication Critical patent/JP6774637B2/en
Active legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Images

Classifications

    • GPHYSICS
    • G05CONTROLLING; REGULATING
    • G05BCONTROL OR REGULATING SYSTEMS IN GENERAL; FUNCTIONAL ELEMENTS OF SUCH SYSTEMS; MONITORING OR TESTING ARRANGEMENTS FOR SUCH SYSTEMS OR ELEMENTS
    • G05B11/00Automatic controllers
    • G05B11/01Automatic controllers electric
    • G05B11/36Automatic controllers electric with provision for obtaining particular characteristics, e.g. proportional, integral, differential
    • GPHYSICS
    • G05CONTROLLING; REGULATING
    • G05BCONTROL OR REGULATING SYSTEMS IN GENERAL; FUNCTIONAL ELEMENTS OF SUCH SYSTEMS; MONITORING OR TESTING ARRANGEMENTS FOR SUCH SYSTEMS OR ELEMENTS
    • G05B13/00Adaptive control systems, i.e. systems automatically adjusting themselves to have a performance which is optimum according to some preassigned criterion
    • G05B13/02Adaptive 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には、所定の調整用シーケンス動作を実行した際に検出した各状態量の評価結果に基づいて制御パラメータを自動的に設定する手法が記載されている。 Patent Document 1 describes a method of automatically setting control parameters based on the evaluation result of each state quantity detected when a predetermined adjustment sequence operation is executed.

特開2003−061377号公報Japanese Unexamined Patent Publication No. 2003-061377

しかしながら、制御精度の高い要求を満たすためには、多様なシーケンス動作を繰り返し実行し、熟練した技術者の勘と経験などの技量に依存した総合的な判断により制御パラメータを調整する必要があった。 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.

実施形態の機械制御システムの概略的なシステムブロック構成の一例を表す図である。It is a figure which shows an example of the schematic system block structure of the machine control system of embodiment. モータ制御システムにおける制御パラメータの調整手法の概要を表す制御ブロック図である。It is a control block diagram which shows the outline of the adjustment method of the control parameter in a motor control system. フィードバック制御部を含めたフィードバック制御系と、調整部との間における各情報の送受関係を表す図である。It is a figure which shows the transmission / reception relationship of each information between a feedback control system including a feedback control part, and an adjustment part. 同一の調整用シーケンス動作を実行した際の各状態量データを時系列パターンデータで表した図である。It is a figure which represented each state quantity data at the time of executing the same sequence operation for adjustment by time series pattern data. 深層学習を適用した場合における調整部のニューラルネットワークの概略モデル構成の一例を表す図である。It is a figure which shows an example of the schematic model structure of the neural network of the adjustment part when deep learning is applied. 各種シーケンス動作に対応した調整部学習用データセットを例示する図である。It is a figure which illustrates the data set for adjustment part learning corresponding to various sequence operations. データ学習により機械学習プロセスを実行する場合の処理手順のフローチャートを表す図である。It is a figure which shows the flowchart of the processing procedure when the machine learning process is executed by data learning. 強化学習により機械学習プロセスを実行する場合の処理手順のフローチャートを表す図である。It is a figure which shows the flowchart of the processing procedure when the machine learning process is executed by reinforcement learning. 各種外乱付加に対応した調整部学習用データセットを例示する図である。It is a figure which illustrates the data set for learning of the adjustment part corresponding to the addition of various disturbances. 機械定数を出力可能に分割した場合における調整部のニューラルネットワークの概略モデル構成の一例を表す図である。It is a figure which shows an example of the schematic model composition of the neural network of the adjustment part when the machine constant is divided so that it can be output. 推定部を備えた場合のモータ制御装置のシステムブロック構成の一例を表す図である。It is a figure which shows an example of the system block composition of the motor control device when the estimation part is provided. モータ制御装置のハードウェア構成を表すシステムブロック図である。It is a system block diagram which shows the hardware composition of a motor control device.

以下、実施の形態について図面を参照しつつ説明する。 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 machine control system 1 includes an upper control device 2, a motor control device 3, a rotary motor 4, and a drive machine 5.

上位制御装置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 drive machine 5, which will be described later, at a desired position based on various settings and commands input from the operator via the operation unit, and the motor control device 2. Output to 3.

モータ制御装置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 encoder 41a described later included in the rotary motor 4. The motor control device 3 has a feedback control unit 31 and an adjustment unit 32. The motor control device 3 corresponds to the control device according to each claim.

フィードバック制御部31は、上述した位置指令と検出位置とに基づくトルク指令の生成を行う演算部である。なお、フィードバック制御部31の制御ブロックについては後の図3で詳述する。 The feedback control unit 31 is a calculation unit that generates a torque command based on the above-mentioned position command and detection position. The control block of the feedback control unit 31 will be described in detail later in FIG.

調整部32は、位置指令、検出位置、及びトルク指令に基づいて、上記フィードバック制御部31におけるトルク指令の演算処理に用いられる制御パラメータ(後述)を適宜の状況で調整する処理部である。なお、この調整部32の処理内容についても後に詳述する。 The adjusting unit 32 is a processing unit that adjusts control parameters (described later) used in the calculation processing of the torque command in the feedback control unit 31 based on the position command, the detection position, and the torque command in an appropriate situation. The processing content of the adjusting unit 32 will also be described in detail later.

なお、上述したフィードバック制御部31、調整部32等における処理等は、これらの処理の分担の例に限定されるものではなく、例えば、更に少ない数の処理部(例えば1つの処理部)で処理されてもよく、また、更に細分化された処理部により処理されてもよい。また、モータ制御装置3は、後述するCPU901(図12参照)が実行するプログラムによりソフトウェア的に実装されてもよいし、その一部又は全部がASICやFPGA、その他の電気回路等(ニューロモーフィックチップ等)の実際の装置によりハードウェア的に実装されてもよい。 The processing and the like in the feedback control unit 31, the adjusting unit 32, and the like described above are not limited to the example of sharing these processing, and for example, processing is performed by a smaller number of processing units (for example, one processing unit). It may be processed by a further subdivided processing unit. Further, the motor control device 3 may be implemented in software by a program executed by the CPU 901 (see FIG. 12) described later, or a part or all of the motor control device 3 may be implemented by ASIC, FPGA, other electric circuits, or the like (neuromorphic). It may be implemented in hardware by an actual device (such as a chip).

回転型モータ4は、例えば同期型の3相交流モータであり、当該回転型モータ4の出力軸の回転位置を検出位置として出力するエンコーダ41aを一体に備えている。 The rotary motor 4 is, for example, a synchronous three-phase AC motor, and integrally includes an encoder 41a that outputs the rotational position of the output shaft of the rotary motor 4 as a detection position.

駆動機械5は、図示する例では回転型モータ4の軸出力である回転位置を送りネジ51を介してスライダ52の並進位置に変換するアクチュエータである。この駆動機械5は、カップリング53と、送りネジ51と、スライダ52とを有している。 In the illustrated example, the drive machine 5 is an actuator that converts the rotational position, which is the shaft output of the rotary motor 4, into the translational position of the slider 52 via the feed screw 51. The drive machine 5 has a coupling 53, a feed screw 51, and a slider 52.

回転型モータ4の出力軸には、カップリング53を介して送りネジ51が連結されている。また、スライダ52は上方に物を載置可能な台座であり、その下部には上記の送りネジ51が螺合している。これにより、上記回転型モータ4が正転又は逆転することで、当該スライダ52が送りネジ51で送られて当該回転型モータ4の回転方向に対応する方向(図中の左右方向)に沿った直進移動を行うよう駆動される。 A feed screw 51 is connected to the output shaft of the rotary motor 4 via a coupling 53. Further, the slider 52 is a pedestal on which an object can be placed, and the feed screw 51 is screwed into the lower portion thereof. As a result, when the rotary motor 4 rotates in the forward or reverse direction, the slider 52 is fed by the feed screw 51 and follows the direction corresponding to the rotational direction of the rotary motor 4 (left-right direction in the drawing). Driven to move straight.

以上の構成において、モータ制御装置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 slider 52 follows the above position command based on the detection position output from the encoder 41a. Take control.

<本実施形態の特徴>
例えば上記実施形態にあるようなモータ制御装置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 adjustment unit 32 that adjusts the control parameters of the controller based on the learning content in the machine learning process. As a result, by executing the machine learning process based on the data detected at the time of an appropriate sequence operation or the addition of disturbance, the adjusting unit 32 can set an appropriate control parameter according to the learning content. That is, it is possible to mechanically and automatically adjust the control parameters autonomously by the motor control device 3 itself without using human hands. Therefore, it is possible to save labor and time costs for adjusting the control parameters in the motor control device 3, and it is possible to ensure uniform and stable control accuracy regardless of the skill difference of individual engineers.

<制御パラメータの調整手法の概要>
図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 feedback control unit 31 and the adjustment unit 32. The feedback control system shown in the figure is represented by a control block in the form of a transfer function. In FIG. 3, the feedback control unit 31, the motor / drive machine 60, the adjustment unit 32, and the database DB are shown.

フィードバック制御部31は、減算器34、位置ループゲインKp、減算器35、積分器(1/T・s)、加算器36、速度ループゲインKv、及び速度演算器37を有している。 The feedback control unit 31 includes a subtractor 34, a position loop gain Kp, a subtractor 35, an integrator (1 / T · s), an adder 36, a speed loop gain Kv, and a speed calculator 37.

減算器34は、外部から入力された位置指令から、モータ・駆動機械60から検出された検出位置を減算してそれらの間の位置偏差を出力する。この位置偏差に位置ループゲインKpを乗算して速度指令が出力される。本実施形態の例では、この位置ループゲインKpが位置制御用の制御器(上記図2における制御器K(ρ))として機能し、いわゆる位置比例制御を行うよう構成されている。 The subtractor 34 subtracts the detection position detected from the motor / drive machine 60 from the position command input from the outside, and outputs the position deviation between them. The speed command is output by multiplying this position deviation by the position loop gain Kp. In the example of the present embodiment, the position loop gain Kp functions as a position control controller (control K (ρ) in FIG. 2 above) and is configured to perform so-called position proportional control.

減算器35は、上記の速度指令から、後述の速度演算器37から出力された検出速度を減算してそれらの間の速度偏差を出力する。積分器(1/T・s)は、速度偏差に対して速度ループ積分時定数Tに基づく積分演算を行い、加算器36がこの積分器(1/T・s)の出力と速度偏差を加算して出力する。この加算出力に速度ループゲインKvを乗算してトルク指令が出力される。本実施形態の例では、これら積分器(1/T・s)及び速度ループゲインKvもまた速度制御用の制御器(上記図2における制御器K(ρ))として機能し、いわゆる速度積分比例制御を行うよう構成されている。 The subtractor 35 subtracts the detection speed output from the speed calculator 37 described later from the above speed command and outputs the speed deviation between them. The integrator (1 / T · s) performs an integral calculation based on the speed loop integration time constant T for the speed deviation, and the adder 36 adds the output of this integrator (1 / T · s) and the speed deviation. And output. A torque command is output by multiplying this added output by the speed loop gain Kv. In the example of the present embodiment, these integrators (1 / T · s) and the speed loop gain Kv also function as speed control controllers (control K (ρ) in FIG. 2 above), so-called speed integration proportionality. It is configured to provide control.

速度演算器37は、モータ・駆動機械60から検出された検出位置に基づいて検出速度(回転型モータ4の出力速度)を出力する演算器であり、具体的には微分器sで構成すればよい。 The speed calculator 37 is a calculator that outputs the detection speed (output speed of the rotary motor 4) based on the detection position detected from the motor / drive machine 60, and specifically, if it is configured by the differentiator s, Good.

モータ・駆動機械60(上記図2における制御対象Pに相当)は、上記図1における回転型モータ4と駆動機械5に相当し、回転型モータ4の回転子と駆動機械5の可動部分とを連結させた可動機構全体の慣性モーメントJに基づく数理モデルである。なお特に図示しないが、上記速度ループゲインKvに回転型モータ4の回転子の慣性モーメントJをさらに乗算した場合には、このモータ・駆動機械60中の数理モデルを慣性モーメント比で定義してもよい。The motor / drive machine 60 (corresponding to the control target P in FIG. 2) corresponds to the rotary motor 4 and the drive machine 5 in FIG. 1, and the rotor of the rotary motor 4 and the movable portion of the drive machine 5 are formed. This is a mathematical model based on the moment of inertia J of the entire connected movable mechanism. Although not particularly shown, when further multiplied by the moment of inertia J 0 of the rotor of the rotary motor 4 to the speed loop gain Kv is a mathematical model in the motor-driving machine 60 defined by the moment of inertia ratio May be good.

以上のようにフィードバック制御部31とモータ・駆動機械60で構成する本実施形態の例のフィードバック制御系は、位置比例制御系のフィードバックループと、速度積分比例制御系のフィードバックループの2重ループ構成(いわゆるP−IP制御)となっている。なお本実施形態では、トルク指令に基づいて例えばPWM制御による駆動電流をモータ・駆動機械60に出力する電流制御部と、その内部に備えられる電流制御系のフィードバックループについては、説明を簡略化するために省略している。 As described above, the feedback control system of the example of the present embodiment composed of the feedback control unit 31 and the motor / drive machine 60 has a double loop configuration of a feedback loop of the position proportional control system and a feedback loop of the speed integration proportional control system. (So-called P-IP control). In the present embodiment, the description of the current control unit that outputs the drive current by PWM control to the motor / drive machine 60 based on the torque command and the feedback loop of the current control system provided inside the current control unit will be simplified. It is omitted for the sake of.

以上のフィードバック制御系に対し、調整部学習用データセットを取得する際には、制御パラメータρに相当する位置ループゲイン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 adjustment unit 32 is machine-learned (data learning) by batch learning (offline learning) using these adjustment unit learning data sets. Then, in the phase in which the adjusting unit 32 sets each control parameter Kp, T, Kv based on the learning content, each when the actual operation sequence operation of the machine control system 1 is executed with each control parameter temporarily set. The time-series pattern data of the state quantity data is input to the adjusting unit 32, and the adjusting unit 32 outputs the optimum control parameters Kp, T, Kv to the feedback control unit 31. By actually setting these output control parameters Kp, T, and Kv in the feedback control unit 31, high control accuracy in the feedback control system during operation can be ensured (see the dotted arrow in FIG. 3).

<調整部の具体的構成について>
調整部32には多様な機械学習手法を適用できるが、以下においては例えば機械学習アルゴリズムに深層学習(ディープラーニング)を適用した場合の例を説明する。図5は、深層学習を適用した場合における調整部32のニューラルネットワークの概略モデル構成の一例を示している。
<Specific configuration of the adjustment unit>
Various machine learning methods can be applied to the adjustment unit 32. In the following, for example, an example in which deep learning is applied to a machine learning algorithm will be described. FIG. 5 shows an example of a schematic model configuration of the neural network of the adjustment unit 32 when deep learning is applied.

この図5において、調整部32のニューラルネットワークは、各部から入力された状態量データである位置指令、トルク指令、及び検出位置の各時系列パターンデータに対して、これら状態量データの間の対応関係、特に位置指令と検出位置の間の対応関係から推定されるモータ・駆動機械60の機械定数に適切に対応した制御パラメータKp,T,Kvを出力するよう設計されている。なお、図5に示すニューラルネットワークの概略モデル構成例においては、上記の機械定数に相当する値や信号(例えば素性を表す値や信号)については図示を省略している。 In FIG. 5, the neural network of the adjusting unit 32 corresponds to 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 unit, between the state quantity data. It is designed to output control parameters Kp, T, Kv that appropriately correspond to the mechanical constants of the motor / drive machine 60 estimated from the relationships, especially the correspondence between the position command and the detection position. In the schematic model configuration example of the neural network shown in FIG. 5, the values and signals corresponding to the above mechanical constants (for example, the values and signals representing the features) are not shown.

ここで、時系列パターンデータである各状態量データの入力については、それぞれ同一の所定サンプリング周期でサンプリングした瞬時値が時系列順に並ぶ各入力ノードに入力される。また、調整部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 adjustment unit 32 are output by multi-value output (continuous value) by regression problem processing, respectively. The setting process of these control parameters Kp, T, Kv is based on the learning content in the machine learning process in the learning phase of the adjusting unit 32. That is, the neural network of the adjustment unit 32 learns the feature quantity representing the correlation between the state quantity data and the appropriate control parameters Kp, T, Kv.

この調整部32の機械学習プロセスについては、上記のように設計された多層ニューラルネットワークがモータ制御装置3上でソフトウェア的(又はハードウェア的)に実装された後、データベースDBに保存した多数の調整部学習用データセットを用いていわゆる教師あり学習により調整部32に学習させる。ここで用いる調整部学習用データセットは、例えば図6に示すように、各種の調整用シーケンスデータを実行した際の各状態量データ(時系列パターンデータ)及び評価値と、その際に仮設定した制御パラメータKp,T,Kvとを対応付けたデータセットである。図示する例の評価値は、対応するデータセットの制御パラメータKp,T,Kvを適用したフィードバック制御系のシーケンス動作における応答性についての評価を示す指標である。この評価値は、例えば上記図4(d)に示した位置偏差dや、オーバーシュートやアンダーシュート時の振動振幅、過渡期が終了するまでの整定時間、制御量が指令に対して追従するまでの立ち上がり時間、トルク指令値のリップルの大きさ、トルク指令値と速度から推定できる消費電力値などのように当該データセットの状態量データに基づいて総合的に求めてもよい。また、複数の正弦波を組み合わせたトルク指令を入力し、その応答から計算される位相余裕・ゲイン余裕・感度関数の値を指標としても良い。なお図6中では、この評価値を「高」、「低」の2段階の指標で表しているが、3段階以上の指標で表してもよいし、また数値で表してもよい。 Regarding the machine learning process of the adjustment unit 32, after the multi-layer neural network designed as described above is implemented in software (or hardware) on the motor control device 3, a large number of adjustments are stored in the database DB. The coordinating unit 32 is trained by so-called supervised learning using the data set for part learning. As shown in FIG. 6, for example, the adjustment unit learning data set used here includes each state quantity data (time series pattern data) and evaluation value when various adjustment sequence data are executed, and provisionally set at that time. This is a data set in which the control parameters Kp, T, and Kv are associated with each other. The evaluation value of the illustrated example is an index indicating the evaluation of the responsiveness in the sequence operation of the feedback control system to which the control parameters Kp, T, Kv of the corresponding data set are applied. This evaluation value is, for example, the position deviation d shown in FIG. 4D, the vibration amplitude at the time of overshoot or undershoot, the settling time until the end of the transition period, and until the control amount follows the command. The rise time of the data set, the magnitude of the ripple of the torque command value, the power consumption value that can be estimated from the torque command value and the speed, and the like may be comprehensively obtained based on the state quantity data of the data set. Further, a torque command combining a plurality of sine waves may be input, and the values of the phase margin, the gain margin, and the sensitivity function calculated from the response may be used as an index. In FIG. 6, this evaluation value is represented by an index of two stages of "high" and "low", but it may be expressed by an index of three or more stages or a numerical value.

本実施形態の例における調整部32の上記学習フェーズでは、状態量データを入力データとし、制御パラメータを出力データとした組み合わせの教師データを用いて、調整部32のニューラルネットワークの入力層と出力層の間の関係性が成立するよう各ノードどうしをつなぐ各エッジの重み係数を調整するいわゆるバックプロパゲーション処理等により学習を行う。このバックプロパゲーション処理では、多数のデータセットのうち特に評価値の高いデータセットのみを抽出し、これだけを教師データに用いて各エッジの重み係数を強めるよう調整してもよい。または、全てのデータセットを教師データとし、それぞれの評価値に応じて各エッジの重み係数を強めたり弱めたりするよう調整してもよい。なお、このようなバックプロパゲーションの他にも、いわゆるオートエンコーダ、制限付きボルツマンマシン、ドロップアウト、ノイズ付加、及びスパース正則化などの公知の多様な学習手法を併用して処理精度を向上させてもよい。この調整部32の学習フェーズが、各請求項記載の機械学習プロセスに相当する。 In the learning phase of the adjusting unit 32 in the example of the present embodiment, the input layer and the output layer of the neural network of the adjusting unit 32 are used by using the teacher data of the combination of the state quantity data as the input data and the control parameters as the output data. Learning is performed by so-called backpropagation processing that adjusts the weighting coefficient of each edge that connects each node so that the relationship between them is established. In this backpropagation processing, only the data set having a particularly high evaluation value may be extracted from a large number of data sets, and only this data set may be used as the teacher data to adjust the weighting coefficient of each edge. Alternatively, all the data sets may be used as teacher data, and the weighting coefficient of each edge may be adjusted to be strengthened or weakened according to each evaluation value. In addition to such backpropagation, various known learning methods such as so-called autoencoder, restricted Boltzmann machine, dropout, noise addition, and sparse regularization are used in combination to improve processing accuracy. May be good. The learning phase of the coordinating unit 32 corresponds to the machine learning process described in each claim.

なお上述したように、調整部32の機械学習アルゴリズムは、図示した深層学習によるもの以外にも、例えばサポートベクトルマシンやベイジアンネットワーク等を利用した他の機械学習アルゴリズム(特に図示せず)を適用してもよい。その場合でも、入力した状態量データに適切に対応する制御パラメータを出力するという基本的な構成については同等となる。 As described above, the machine learning algorithm of the adjustment unit 32 is not limited to the one based on the illustrated deep learning, but other machine learning algorithms (not shown in particular) using, for example, a support vector machine or a Bayesian network are applied. You may. Even in that case, the basic configuration of outputting the control parameters appropriately corresponding to the input state quantity data is the same.

<機械学習プロセスのデータ学習について>
ニューラルネットワークで構成した上記調整部32に対する機械学習プロセスの具体的な手順について、以下に説明する。図7は、モータ制御装置3のCPU901(後述の図12参照)が、本実施形態の例におけるデータ学習により機械学習プロセスを実行する場合の処理手順のフローチャートを示している。このフローに示すデータ学習処理は、例えば上位制御装置2から機械学習プロセスを実行するよう指令入力されることで開始する。
<About data learning of machine learning process>
The specific procedure of the machine learning process for the adjustment unit 32 configured by the neural network will be described below. FIG. 7 shows a flowchart of a processing procedure when the CPU 901 of the motor control device 3 (see FIG. 12 described later) executes a machine learning process by data learning in the example of the present embodiment. The data learning process shown in this flow starts when, for example, a command is input from the host control device 2 to execute the machine learning process.

まずステップS5で、CPU901は、各制御パラメータ(この例のKp,T,Kv)を仮設定する。この各制御パラメータの仮設定は、それぞれ適宜の設定可能範囲内でのランダムな値の組み合わせで設定する。または、適用するフィードバック制御系に対して妥当と考えられる人為的な設計値を個別に増減変化させて設定してもよい。 First, in step S5, the CPU 901 temporarily sets each control parameter (Kp, T, Kv in this example). The temporary setting of each control parameter is set by a combination of random values within an appropriate settable range. Alternatively, an artificial design value considered to be appropriate for the feedback control system to be applied may be individually increased or decreased and set.

次にステップS10へ移り、CPU901は、予め用意された多種の調整用シーケンス動作から1つを選択する。 Next, the process proceeds to step S10, and the CPU 901 selects one of various adjustment sequence operations prepared in advance.

次にステップS15へ移り、CPU901は、上記ステップS10で選択した調整用シーケンスの位置指令をフィードバック制御部31に入力して対応するシーケンス動作をモータ・駆動機械60に実行させる。 Next, the process proceeds to step S15, and the CPU 901 inputs the position command of the adjustment sequence selected in step S10 to the feedback control unit 31 to cause the motor / drive machine 60 to execute the corresponding sequence operation.

次にステップS20へ移り、CPU901は、上記ステップS15での調整用シーケンス動作の実行中に、位置指令、トルク指令、検出位置の各状態量データを記録する。 Next, the process proceeds to step S20, and the CPU 901 records each state quantity data of the position command, the torque command, and the detection position during the execution of the adjustment sequence operation in step S15.

次にステップS25へ移り、CPU901は、上記ステップS20で記録した各状態量データと、上記ステップS5で仮設定した各制御パラメータで1つの調整部学習用データセットを作成する。また、このデータセットには、その各状態量データやその他の手法に基づいて求められる応答性についての評価値も含まれる。 Next, the process proceeds to step S25, and the CPU 901 creates one adjustment unit learning data set with each state quantity data recorded in step S20 and each control parameter tentatively set in step S5. The dataset also includes evaluation values for responsiveness obtained based on each state quantity data and other methods.

次にステップS30へ移り、CPU901は、予め用意された多種の調整用シーケンス動作についてデータセットが作成されたか否かを判定する。まだデータセットが作成されていない調整用シーケンス動作が残っている場合、判定は満たされず、上記ステップS10に戻り同様の手順を繰り返す。 Next, the process proceeds to step S30, and the CPU 901 determines whether or not a data set has been created for various adjustment sequence operations prepared in advance. If the adjustment sequence operation for which the data set has not been created remains, the determination is not satisfied, and the process returns to step S10 and the same procedure is repeated.

一方、予め用意された全ての調整用シーケンス動作についてデータセットが作成された場合、判定が満たされ、ステップ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 CPU 901 changes the temporarily set control parameters and newly repeats various adjustment sequence operations to determine whether or not to create the adjustment unit learning data set. In other words, it determines whether to end the creation of the dataset. When temporarily setting a new control parameter and continuing the creation of the data set, the determination is not satisfied, the process returns to step S5, the new control parameter is temporarily set, and the same procedure is repeated.

一方、データセットの作成を終了する場合、判定が満たされ、ステップ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 CPU 901 executes data learning of the adjustment unit 32 using the created adjustment unit learning data set. Then, this flow ends.

なお、以上のようなオフライン学習(バッチ学習)でのデータ学習処理による機械学習プロセスは、当該機械制御システム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 machine control system 1, or the rotary motor 4 and the drive machine 5 may be aged. It may be performed when necessary after the start of operation for the purpose of improving the control accuracy according to the deterioration status and the change of the usage environment.

<本実施形態による効果>
以上説明したように、本実施形態の機械制御システム1は、機械学習プロセスでの学習内容に基づいて、フィードバック制御部31が備える各制御器の制御パラメータを調整する調整部32を有している。これにより、適宜のシーケンス動作時に検出した状態量データに基づく機械学習プロセスを実行することにより、調整部32はその学習内容によって適切な制御パラメータの設定が可能となる。つまり、人手によらずとも当該モータ制御装置3自体による自律的な制御パラメータの調整を機械的に自動で行うことができる。このため、モータ制御装置3における制御パラメータの調整に対して人的コスト及び時間的コストを削減できるとともに、技術者個人の技量差によらず一律に安定した制御精度を確保することができる。この結果、制御装置の利便性を向上できる。
<Effect of this embodiment>
As described above, the machine control system 1 of the present embodiment has an adjustment unit 32 that adjusts the control parameters of each controller included in the feedback control unit 31 based on the learning content in the machine learning process. .. As a result, by executing the machine learning process based on the state quantity data detected during the appropriate sequence operation, the adjusting unit 32 can set appropriate control parameters according to the learning content. That is, it is possible to mechanically and automatically adjust the control parameters autonomously by the motor control device 3 itself without human intervention. Therefore, it is possible to reduce human cost and time cost for adjusting the control parameters in the motor control device 3, and it is possible to ensure uniform and stable control accuracy regardless of the skill difference of each engineer. As a result, the convenience of the control device can be improved.

なお、本実施形態では、フィードバック制御系に対してのみ制御パラメータを調整する場合を説明したが、これに限られない。例えば、さらにフィードフォワード制御系も含む制御系に対してもそのフィードフォワードゲイン等の制御パラメータの調整に本実施形態の調整部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 unit 32 of the present embodiment may be applied to the control system including the feedforward control system for adjusting the control parameters such as the feedforward gain. Further, when the control system includes various observers and compensators, the same method may be applied to the adjustment of various control parameters used inside them. Further, the present invention is not limited to the so-called motion control as in the present embodiment, and the same method may be applied to the adjustment of the control parameters of the so-called process control.

また、本実施形態では特に、調整部32は、位置指令と検出位置との対応関係から推定されるモータ・駆動機械60の機械定数(または後述する外乱)に対応した制御パラメータを設定する。これにより、調整部32は、フィードバック制御部31が有する各制御器に対して具体的に推定されるモータ・駆動機械60(制御対象P)の機械定数(または後述する外乱)に対応した適切な制御パラメータを設定できる。 Further, in the present embodiment, in particular, the adjusting unit 32 sets control parameters corresponding to the mechanical constants (or disturbances described later) of the motor / drive machine 60 estimated from the correspondence between the position command and the detection position. As a result, the adjusting unit 32 appropriately corresponds to the mechanical constant (or disturbance described later) of the motor / driving machine 60 (controlled object P) specifically estimated for each controller of the feedback control unit 31. Control parameters can be set.

また、本実施形態では特に、機械学習プロセスでは、位置指令、トルク指令、及び検出位置の少なくとも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 adjustment unit 32 machine learn. As a result, it is possible to execute a specific machine learning process by supervised learning using a data set for the adjustment unit 32. Further, by performing the data learning by online learning, it is possible to always set appropriate control parameters in response to changes in the aging deterioration state and the usage environment state during the operation of the machine control system 1. It should be noted that the adjustment unit detects environmental data (ambient temperature, attitude, etc. of the drive machine 5) that may affect the control accuracy in the sequence operation of the motor / drive machine 60 with a separate sensor and includes it in the adjustment unit learning data set. You may let 32 learn the data.

また、本実施形態では特に、調整部学習用データセットの位置指令、トルク指令、及び検出位置は、同一のシーケンス動作時における時系列パターンデータである。これにより、調整部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 unit 32 can perform machine learning corresponding to the change mode of each state quantity data, and can set highly versatile control parameters appropriately corresponding to various sequence operations. The same feedback control unit 31 is changed to various motors / drive machines 60 to create a data set for learning the adjustment unit, and the same adjustment unit 32 learns the data set, so that the adjustment unit 32 has various motors. -Control parameters that flexibly correspond to the drive machine 60 can be adjusted, and the versatility of the feedback control unit 31 is improved.

また、本実施形態では特に、調整部学習用データセットには評価値が含まれており、機械学習プロセスでは評価値に基づいて機械学習する。これにより、調整部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 adjustment unit 32, the data learning of each adjustment unit learning data set can be machine-learned according to the evaluation value, and the control accuracy of the feedback control unit 31 can be further improved.

また、本実施形態では特に、制御パラメータは、位置ループゲイン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 feedback control unit 31. Further, if necessary, other control parameters such as model tracking control gain, torque command filter time constant, notch filter frequency, notch filter Q value, or notch filter depth may be included.

<変形例>
なお、以上説明した実施形態は、その趣旨及び技術的思想を逸脱しない範囲内で種々の変形が可能である。
<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 adjustment unit 32 may be learned by the machine learning process of the reinforcement learning process as illustrated in FIG. The reinforcement learning process of this modified example shown in the figure is performed based on the so-called Q-learning method.

まずステップS105で、CPU901は、各制御パラメータを仮設定する。この各制御パラメータの初期的な仮設定は、適用するフィードバック制御系に対して妥当と考えられる人為的な設計値で設定する。 First, in step S105, the CPU 901 temporarily sets each control parameter. The initial temporary setting of each control parameter is set by an artificial design value considered to be appropriate for the feedback control system to be applied.

次にステップS110へ移り、CPU901は、新たな制御パラメータを探索する。この新たな制御パラメータの探索については、その時点まで適切(後述のいわゆるQ値が最大)であるとして設定される制御パラメータから、小さな確率でランダムな方向に修正した制御パラメータを設定するか、もしくはそれ以外のほとんどの確率では適切であるとされる制御パラメータそのままとする。 Next, the process proceeds to step S110, and the CPU 901 searches for new control parameters. Regarding the search for this new control parameter, from the control parameter set as being appropriate (the so-called Q value described later is the maximum) up to that point, the control parameter corrected in a random direction with a small probability is set, or The control parameters that are considered appropriate for most other probabilities remain unchanged.

次にステップS115へ移り、CPU901は、上記ステップS110で探索設定した制御パラメータで、所定の調整用シーケンス動作を実行する。 Next, the process proceeds to step S115, and the CPU 901 executes a predetermined adjustment sequence operation with the control parameters searched and set in step S110.

次にステップS120へ移り、CPU901は、上記ステップS115での調整用シーケンス動作の実行中に、位置指令、トルク指令、検出位置の各状態量データを記録する。 Next, the process proceeds to step S120, and the CPU 901 records each state quantity data of the position command, the torque command, and the detection position during the execution of the adjustment sequence operation in step S115.

次にステップS125へ移り、CPU901は、上記ステップS120で記録した各状態量データに基づいて今回の調整用シーケンス動作に対する評価を行い、この評価に応じた報酬を算出する。 Next, the process proceeds to step S125, and the CPU 901 evaluates the current adjustment sequence operation based on each state quantity data recorded in step S120, and calculates a reward according to this evaluation.

次にステップS130へ移り、CPU901は、上記ステップS110で探索設定した制御パラメータと、上記ステップS125で算出した報酬に基づくいわゆるQ学習により、調整部32のニューラルネットワークに対する強化学習を行う。上記ステップS115でのシーケンス動作の試行に対して、設定されている制御パラメータの有効性を示すQ値がより最大化するよう制御パラメータを学習する。このQ学習による強化学習については、公知の手法を用いればよくここでは詳細な説明を省略する。 Next, the process proceeds to step S130, and the CPU 901 performs reinforcement learning on the neural network of the adjustment unit 32 by so-called Q-learning based on the control parameters searched and set in step S110 and the reward calculated in step S125. The control parameters are learned so that the Q value indicating the effectiveness of the set control parameters is maximized with respect to the trial of the sequence operation in step S115. For the reinforcement learning by Q-learning, a known method may be used, and detailed description thereof will be omitted here.

次にステップS135へ移り、CPU901は、調整部32のニューラルネットワークに対し、十分な試行回数で機械学習が行われたか否かを判定する。機械学習が不十分であって当該強化学習処理を終了しない場合には、判定は満たされず、上記ステップS110に戻って同様の手順を繰り返す。 Next, the process proceeds to step S135, and the CPU 901 determines whether or not machine learning has been performed on the neural network of the adjusting unit 32 with a sufficient number of trials. If the machine learning is insufficient and the reinforcement learning process is not completed, the determination is not satisfied, and the process returns to step S110 and the same procedure is repeated.

一方、機械学習が十分であって当該強化学習処理を終了する場合には、判定が満たされ、このフローを終了する。 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 machine control system 1 of this modification, the machine learning process machine-learns control parameters by reinforcement learning (Q-learning, etc.) based on at least one of a position command, a torque command, and a detection position. .. As a result, it is possible to set control parameters that realize high control accuracy without preparing a large number of learning data sets in advance.

また、本変形例では特に、強化学習は、所定の調整用シーケンス動作時における制御パラメータの設定に対する報酬に基づいて強化学習する。これにより、調整部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 unit 32 can set highly responsive control parameters that appropriately correspond to various sequence operations.

<変形例2:外乱付加に対して適切な制御パラメータを設定する場合>
上記実施形態では、調整部32が、フィードバック制御系のシーケンス動作における応答性の向上を目的とした観点で制御パラメータを設定していたが、これに限られない。他にも、調整部32は、制御対象に付加された外乱(特に動的に付加された外乱)に対するロバスト性の向上を目的とした観点で制御パラメータを設定してもよい。
<Modification example 2: When setting appropriate control parameters for disturbance addition>
In the above embodiment, the adjusting unit 32 sets the control parameters from the viewpoint of improving the responsiveness in the sequence operation of the feedback control system, but the present invention is not limited to this. In addition, the adjusting unit 32 may set control parameters from the viewpoint of improving robustness against disturbances (particularly dynamically added disturbances) added to the controlled object.

この場合には、例えば図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 machine control system 1 is in operation. Create a set and learn data. In the adjustment unit learning data set of the illustrated example, each state quantity data when an object of a predetermined weight is placed on the moving slider 52 and an evaluation value for robustness are exemplified. The difference between the disturbance addition and the sequence operation in the above embodiment may be used as the operation condition c shown in FIG. 2 to distinguish the adjustment unit learning data set.

以上説明したように、本変形例の機械制御システム1は、調整部学習用データセットの位置指令、トルク指令、検出位置の各状態量データは、同一の外乱付加時における時系列パターンデータである。これにより、調整部32は、多様な外乱に対してロバスト性を向上できる制御パラメータの設定が可能となる。 As described above, in the machine control system 1 of this modification, the position command, torque command, and detection position state quantity data of the adjustment unit learning data set are time-series pattern data when the same disturbance is added. .. As a result, the adjusting unit 32 can set control parameters that can improve robustness against various disturbances.

また調整部32は、このような外乱付加に対する制御パラメータの設定を、上述した強化学習により学習してもよい。この場合には、強化学習は、所定の外乱付加時における制御パラメータの設定に対する報酬に基づいて強化学習する。このような強化学習によっても、調整部32は、多様な外乱に対してロバスト性を向上できる制御パラメータの設定が可能となる。 Further, the adjusting unit 32 may learn the setting of the control parameter for such disturbance addition by the reinforcement learning described above. In this case, the reinforcement learning is performed based on the reward for setting the control parameter at the time of adding a predetermined disturbance. Even with such reinforcement learning, the adjustment unit 32 can set control parameters that can improve robustness against various disturbances.

<変形例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 unit 32 is configured by a continuous integrated neural network has been described, but the present invention is not limited to this. Alternatively, as shown in FIG. 10, the neural network constituting the adjusting unit 32 may be divided into two in the layer direction, and a mechanical constant (or disturbance) may be output between them. For example, the neural network on the input layer side (left side in the figure) for inputting state quantity data is, for example, the first neural network 71, and the neural network on the output layer side (right side in the figure) for outputting control parameters is, for example, the second neural network. Let the neural network 72 be. In the figure, in order to avoid complication of illustration, each neural network is shown by a rectangular block by omitting the illustration of nodes and edges.

この場合、第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 neural network 72 are referred to as adaptive control parameters as shown in the figure below.

また、第2ニューラルネットワーク72においては、上記第1ニューラルネットワーク71から入力された機械定数(又は外乱)に対して、これらの機械定数の間の対応関係から適切とされる適応制御パラメータKp,Kv,Tを出力するよう設計されている。この第2ニューラルネットワーク72の機械学習プロセスにあたっては、それぞれ既知の機械定数(又は外乱)にある多数の制御対象に対して所定の調整用シーケンス動作を行わせるために適応制御パラメータを別途人為的に適切に設定し、これら機械定数と適応制御パラメータをまとめた第2ニューラルネットワーク72用の学習用データセットを作成する。そして多数の学習用データセットを用いたデータ学習を実行することで、第2ニューラルネットワーク72は各機械定数(又は外乱)の間の相関関係と適応制御パラメータとの相関を表す特徴量を学習する。 Further, in the second neural network 72, the adaptive control parameters Kp, Kv that are appropriate for the mechanical constants (or disturbances) input from the first neural network 71 based on the correspondence between these mechanical constants. , T is designed to be output. In the machine learning process of the second neural network 72, adaptive control parameters are artificially set separately in order to perform a predetermined adjustment sequence operation on a large number of control targets having known machine constants (or disturbances). A training data set for the second neural network 72 is created by setting appropriately and summarizing these machine constants and adaptive control parameters. Then, by executing data learning using a large number of training data sets, the second neural network 72 learns the features representing the correlation between each machine constant (or disturbance) and the adaptive control parameter. ..

以上説明したように、本変形例の機械制御システム1は、機械定数(又は外乱)を具体的な値で出力することができ、これを参照することで調整部32が設定した適応制御パラメータの妥当性を容易に検討できる。 As described above, the machine control system 1 of this modification can output the machine constant (or disturbance) as a specific value, and by referring to this, the adaptive control parameter set by the adjusting unit 32 can be used. The validity can be easily examined.

<変形例4:調整部に事前学習させる場合>
上記実施形態では、最初から調整部学習用データセットだけを用いて調整部32をデータ学習させる手法について説明したが、これに限られない。他にも、公知の演算手法により概略的に適切とされる制御パラメータを算出し、これを用いて調整部32に事前学習させてもよい。
<Modification example 4: When the adjustment unit is pre-learned>
In the above embodiment, the method of causing the adjustment unit 32 to learn data by using only the adjustment unit learning data set has been described from the beginning, but the present invention is not limited to this. In addition, a control parameter that is generally appropriate may be calculated by a known calculation method, and the adjusting unit 32 may be trained in advance using the control parameter.

例えば図11に示すように、各状態量データに基づいて仮設定制御パラメータを算出する推定部33をモータ制御装置3Aに設け、その算出された仮設定制御パラメータを調整部32に入力する。この場合、推定部33は、所定の調整用シーケンス動作で検出した各状態量データから公知の演算手法により制御対象Pの機械定数を求め、この機械定数と当該フィードバック制御系に対応した状態方程式に基づいて仮設定制御パラメータを推定する。この推定部33が推定した仮設定制御パラメータは、当該制御対象Pの個体差(部品の製造誤差や組立誤差等)や動作条件、経年劣化状況、使用環境状況の変化に厳密に対応していないだけであって、設計上の数理モデルでは概略的に適切であり最終的に求めたい適応制御パラメータとは少しの違いでしかない。したがってこの推定部33が推定した仮設定制御パラメータで仮設定することで、調整部32の機械学習プロセスでは微調整(ファインチューニング)を行うだけとなり、つまり事前学習を行えることになる。 For example, as shown in FIG. 11, an estimation unit 33 for calculating a temporary setting control parameter based on each state quantity data is provided in the motor control device 3A, and the calculated temporary setting control parameter is input to the adjusting unit 32. In this case, the estimation unit 33 obtains the machine constant of the control target P from each state quantity data detected by the predetermined adjustment sequence operation by a known calculation method, and obtains the machine constant and the state equation corresponding to the feedback control system. Estimate the temporary setting control parameters based on this. The temporary setting control parameters estimated by the estimation unit 33 do not strictly correspond to changes in individual differences (part manufacturing error, assembly error, etc.), operating conditions, aging deterioration status, and usage environment status of the control target P. However, it is generally appropriate in the mathematical model by design, and there is only a slight difference from the adaptive control parameters that are finally obtained. Therefore, by temporarily setting the temporary setting control parameters estimated by the estimation unit 33, the machine learning process of the adjustment unit 32 only performs fine adjustment (fine tuning), that is, pre-learning can be performed.

以上説明したように、本変形例の機械制御システム1は、所定のシーケンス動作で制御パラメータを推定する推定部33を有し、機械学習プロセスは、推定部33が推定した制御パラメータで事前学習する。これにより、調整部32の機械学習プロセスで必要とされる学習時間を大幅に短縮できる。 As described above, the machine control system 1 of this modification has an estimation unit 33 that estimates control parameters by a predetermined sequence operation, and the machine learning process pre-learns with the control parameters estimated by the estimation unit 33. .. As a result, the learning time required for the machine learning process of the adjusting unit 32 can be significantly reduced.

また特に図示しないが、推定部33が公知の演算手法に基づいて各状態量データから制御対象Pの機械定数だけを推定し、調整部32に入力してもよい。この場合には、上記図10に示した第1ニューラルネットワーク相当部分の事前学習が可能となり、その学習時間を大幅に短縮できる。 Further, although not particularly shown, the estimation unit 33 may estimate only the mechanical constant of the control target P from each state quantity data based on a known calculation method and input it to the adjustment unit 32. In this case, the pre-learning of the portion corresponding to the first neural network shown in FIG. 10 can be performed, and the learning time can be significantly shortened.

<モータ制御装置のハードウェア構成例>
次に、図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 feedback control unit 31, the adjustment unit 32, and the like implemented in software by the program executed by the CPU 901 described above will be described. explain.

図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 CPU 901, a ROM 903, a RAM 905, a dedicated integrated circuit 907 constructed for a specific application such as an ASIC or an FPGA, an input device 913, and an output device. It has a 915, a recording device 917, a drive 919, a connection port 921, and a communication device 923. These configurations are connected so that signals can be transmitted to each other via the bus 909 and the input / output interface 911.

プログラムは、例えば、ROM903やRAM905、記録装置917等に記録しておくことができる。 The program can be recorded in, for example, a ROM 903, a RAM 905, a recording device 917, or the like.

また、プログラムは、例えば、フレキシブルディスクなどの磁気ディスク、各種の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 removable recording medium 925 such as a semiconductor memory. .. Such a recording medium 925 can also be provided as so-called package software. In this case, the program recorded on these recording media 925 may be read by the drive 919 and recorded on the recording device 917 via the input / output interface 911, the bus 909, or the like.

また、プログラムは、例えば、ダウンロードサイト・他のコンピュータ・他の記録装置等(図示せず)に記録しておくこともできる。この場合、プログラムは、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 communication device 923 receives this program. Then, the program received by the communication device 923 may be recorded in the recording device 917 via the input / output interface 911, the bus 909, or the like.

また、プログラムは、例えば、適宜の外部接続機器927に記録しておくこともできる。この場合、プログラムは、適宜の接続ポート921を介し転送され、入出力インターフェース911やバス909等を介し上記記録装置917に記録されてもよい。 Further, the program can be recorded in an appropriate externally connected device 927, for example. In this case, the program may be transferred via the appropriate connection port 921 and recorded in the recording device 917 via the input / output interface 911, the bus 909, or the like.

そして、CPU901が、上記記録装置917に記録されたプログラムに従い各種の処理を実行することにより、上記のフィードバック制御部31、調整部32等による処理が実現される。この際、CPU901は、例えば、上記記録装置917からプログラムを直接読み出して実行してもよいし、RAM905に一旦ロードした上で実行してもよい。更にCPU901は、例えば、プログラムを通信装置923やドライブ919、接続ポート921を介し受信する場合、受信したプログラムを記録装置917に記録せずに直接実行してもよい。 Then, the CPU 901 executes various processes according to the program recorded in the recording device 917, so that the processes by the feedback control unit 31, the adjusting unit 32, and the like are realized. At this time, for example, the CPU 901 may directly read the program from the recording device 917 and execute it, or may execute it after loading it into the RAM 905 once. Further, for example, when the CPU 901 receives the program via the communication device 923, the drive 919, or the connection port 921, the CPU 901 may directly execute the received program without recording it in the recording device 917.

また、CPU901は、必要に応じて、例えばマウス・キーボード・マイク(図示せず)等の入力装置913から入力する信号や情報に基づいて各種の処理を行ってもよい。 Further, the CPU 901 may perform various processes based on signals and information input from an input device 913 such as a mouse, keyboard, microphone (not shown), if necessary.

そして、CPU901は、上記の処理を実行した結果を、例えば表示装置や音声出力装置等の出力装置915から出力してもよく、さらにCPU901は、必要に応じてこの処理結果を通信装置923や接続ポート921を介し送信してもよく、上記記録装置917や記録媒体925に記録させてもよい。 Then, the CPU 901 may output the result of executing the above processing from an output device 915 such as a display device or an audio output device, and the CPU 901 may connect the processing result to the communication device 923 or the communication device 923 as needed. It may be transmitted via the port 921, or may be recorded on the recording device 917 or the recording medium 925.

なお、以上の説明において、「垂直」「平行」「平面」等の記載がある場合には、当該記載は厳密な意味ではない。すなわち、それら「垂直」「平行」「平面」とは、設計上、製造上の公差、誤差が許容され、「実質的に垂直」「実質的に平行」「実質的に平面」という意味である。 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 Feedback control unit 32 Adjustment unit 33 Estimate unit 60 Motor / drive machine (controlled object)
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データセットを用いたデータ学習により前記第1ニューラルネットワークを機械学習させ、既知の機械定数又は外乱と人為的に設定した前記制御パラメータとを対応付けた第2データセットを用いたデータ学習により前記第2ニューラルネットワークを機械学習させることを特徴とする請求項記載の制御装置。 In the machine learning process, data learning is performed using a first data set in which the reference command, the operation amount, and the control amount are associated with the machine constant or disturbance of the control target detected by the detection machine or the detection test. to machine learning the first neural network, Ru is machine learning the second neural network by data learning using second data set that associates the control parameter set known mechanical constant or disturbance and artificially The control device according to claim 1 , wherein the control device is characterized by the above. 前記第1データセットの前記参照指令、前記操作量、及び前記制御量は、同一のシーケンス動作時における時系列パターンデータであることを特徴とする請求項記載の制御装置。 The control device according to claim 2 , wherein the reference command, the operation amount, and the control amount of the first data set are time-series pattern data at the time of the same sequence operation. 前記第1データセットの前記参照指令、前記操作量、及び前記制御量は、同一の外乱付加時における時系列パターンデータであることを特徴とする請求項又は記載の制御装置。 The control device according to claim 2 or 3 , wherein the reference command, the operation amount, and the control amount of the first data set are time-series pattern data at the time of adding the same disturbance. 前記第1データセット又は前記第2データセットには、評価値が含まれており、
前記第1ニューラルネットワーク又は前記第2ニューラルネットワークの前記機械学習プロセスでは、前記評価値に基づいて機械学習することを特徴とする請求項乃至のいずれか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ニューラルネットワークの前記機械学習プロセスでは、前記機械定数又は外乱に基づく強化学習により前記制御パラメータを機械学習することを特徴とする請求項記載の制御装置。 And in the the machine learning process of the first neural network, the reference command, the operation amount, and a machine constant or disturbance of the controlled object machine learning by reinforcement learning based on the control amount, the machine of the second neural network in the learning process, the control device according to claim 1, characterized in that the machine learning the control parameter by reinforcement learning based on the mechanical constant or disturbance. 前記第1ニューラルネットワークの前記強化学習は、所定のシーケンス動作時における前記制御対象の機械定数又は外乱の設定に対する報酬に基づいて強化学習し、前記第2ニューラルネットワークの前記強化学習は、前記所定のシーケンス動作時における前記制御パラメータの設定に対する報酬に基づいて強化学習することを特徴とする請求項記載の制御装置。 The reinforcement learning of the first neural network is reinforcement learning based on the reward for setting the machine constant or the disturbance of the controlled object at the time of a predetermined sequence operation , and the reinforcement learning of the second neural network is the predetermined The control device according to claim 6, wherein reinforcement learning is performed based on a reward for setting the control parameter at the time of sequence operation . 前記第1ニューラルネットワークの前記強化学習は、所定の外乱付加時における前記制御対象の機械定数又は外乱の設定に対する報酬に基づいて強化学習し、前記第2ニューラルネットワークの前記強化学習は、前記所定の外乱付加時における前記制御パラメータの設定に対する報酬に基づいて強化学習することを特徴とする請求項又は記載の制御装置。 The reinforcement learning of the first neural network is reinforcement learning based on the reward for setting the mechanical constant or the disturbance of the controlled object at the time of adding a predetermined disturbance, and the reinforcement learning of the second neural network is the predetermined The control device according to claim 6 or 7, wherein reinforcement learning is performed based on a reward for setting the control parameter when a disturbance is added . 前記制御パラメータは、位置ループゲイン、速度ループゲイン、速度ループ積分時定数、及び前記制御対象の慣性モーメント比の少なくとも1つを含むことを特徴とする請求項1乃至のいずれか1項に記載の制御装置。 The control parameter according to any one of claims 1 to 8 , wherein the control parameter includes at least one of a position loop gain, a speed loop gain, a speed loop integration time constant, and a moment of inertia ratio of the controlled object. Control device. 所定のシーケンス動作で前記制御パラメータを推定する推定部、をさらに有し、
前記第1ニューラルネットワークの前記機械学習プロセスは、前記推定部が推定した前記制御対象の機械定数又は外乱で事前学習し、前記第2ニューラルネットワークの前記機械学習プロセスは、前記推定部が推定した前記制御パラメータで事前学習することを特徴とする請求項1乃至のいずれか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 .
JP2018568603A 2017-02-20 2018-02-15 Control device and control method Active JP6774637B2 (en)

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)

* Cited by examiner, † Cited by third party
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)

* Cited by examiner, † Cited by third party
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

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