KR102215752B1 - Device and method for notch filter parameter setting based on AI - Google Patents

Device and method for notch filter parameter setting based on AI Download PDF

Info

Publication number
KR102215752B1
KR102215752B1 KR1020180171017A KR20180171017A KR102215752B1 KR 102215752 B1 KR102215752 B1 KR 102215752B1 KR 1020180171017 A KR1020180171017 A KR 1020180171017A KR 20180171017 A KR20180171017 A KR 20180171017A KR 102215752 B1 KR102215752 B1 KR 102215752B1
Authority
KR
South Korea
Prior art keywords
notch filter
parameter
controller
setting
notch
Prior art date
Application number
KR1020180171017A
Other languages
Korean (ko)
Other versions
KR20200080976A (en
Inventor
조동일
오태호
김태일
이상훈
Original Assignee
서울대학교산학협력단
알에스오토메이션주식회사
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 서울대학교산학협력단, 알에스오토메이션주식회사 filed Critical 서울대학교산학협력단
Priority to KR1020180171017A priority Critical patent/KR102215752B1/en
Publication of KR20200080976A publication Critical patent/KR20200080976A/en
Application granted granted Critical
Publication of KR102215752B1 publication Critical patent/KR102215752B1/en

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
    • G05B23/00Testing or monitoring of control systems or parts thereof
    • G05B23/02Electric testing or monitoring
    • G05B23/0205Electric testing or monitoring by means of a monitoring system capable of detecting and responding to faults
    • G05B23/0218Electric testing or monitoring by means of a monitoring system capable of detecting and responding to faults characterised by the fault detection method dealing with either existing or incipient faults
    • G05B23/0221Preprocessing measurements, e.g. data collection rate adjustment; Standardization of measurements; Time series or signal analysis, e.g. frequency analysis or wavelets; Trustworthiness of measurements; Indexes therefor; Measurements using easily measured parameters to estimate parameters difficult to measure; Virtual sensor creation; De-noising; Sensor fusion; Unconventional preprocessing inherently present in specific fault detection methods like PCA-based methods
    • 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
    • G05B13/0265Adaptive control systems, i.e. systems automatically adjusting themselves to have a performance which is optimum according to some preassigned criterion electric the criterion being a learning criterion
    • HELECTRICITY
    • H03ELECTRONIC CIRCUITRY
    • H03HIMPEDANCE NETWORKS, e.g. RESONANT CIRCUITS; RESONATORS
    • H03H7/00Multiple-port networks comprising only passive electrical elements as network components
    • H03H7/01Frequency selective two-port networks
    • H03H7/0115Frequency selective two-port networks comprising only inductors and capacitors
    • HELECTRICITY
    • H03ELECTRONIC CIRCUITRY
    • H03HIMPEDANCE NETWORKS, e.g. RESONANT CIRCUITS; RESONATORS
    • H03H9/00Networks comprising electromechanical or electro-acoustic devices; Electromechanical resonators
    • H03H9/15Constructional features of resonators consisting of piezoelectric or electrostrictive material
    • H03H9/205Constructional features of resonators consisting of piezoelectric or electrostrictive material having multiple resonators

Abstract

제어기, 제어 대상 및 상기 제어기와 상기 제어 대상 사이에 위치하여 상기 제어기의 제어 신호의 공진 성분을 제거하는 노치 필터를 포함하는 서보 시스템에 적용되는 노치필터 파라미터 설정 장치가 제공된다. 노치필터 파라미터 설정 장치는 상기 제어 대상에 입력되는 입력 신호, 상기 제어 대상에서 출력되는 출력 신호 및 상기 제어기의 파라미터를 수신하고, 상기 입력 신호, 상기 출력 신호 및 상기 제어기의 파라미터를 기초로 상기 서보 시스템의 주파수 응답을 계산하여 전처리된 데이터를 생성하는 데이터 전처리부; 및 상기 전처리된 데이터를 이용하여 강화 학습 기반의 인공 신경망을 통해 노치 필터 파라미터를 설정하는 파라미터 설정부를 포함한다.There is provided a notch filter parameter setting apparatus applied to a servo system including a controller, a control object, and a notch filter positioned between the controller and the control object to remove a resonance component of a control signal of the controller. The notch filter parameter setting apparatus receives an input signal input to the control object, an output signal output from the control object, and a parameter of the controller, and the servo system based on the input signal, the output signal, and the parameter of the controller. A data preprocessor that calculates the frequency response of and generates preprocessed data; And a parameter setting unit that sets a notch filter parameter through an artificial neural network based on reinforcement learning using the preprocessed data.

Figure R1020180171017
Figure R1020180171017

Description

AI 기반 노치 필터의 파라미터 설정 장치 및 방법{Device and method for notch filter parameter setting based on AI}Device and method for notch filter parameter setting based on AI

본 발명은 서보 시스템의 주파수 응답을 기계학습에 사용되는 형태로 변환하고, 강화학습 방법을 통해 인공 신경망을 학습시켜 복수개의 노치 필터 파라미터를 설정하는 방법 및 장치에 관한 것이다. The present invention relates to a method and apparatus for setting a plurality of notch filter parameters by converting the frequency response of a servo system into a form used for machine learning and learning an artificial neural network through a reinforcement learning method.

[국가지원 연구개발에 대한 설명][Explanation of nationally supported R&D]

본 연구는 중소벤처기업부 월드클래스300 (WC300) 사업(스마트머신/협업로봇 유연 대응을 위한 로봇모션 제어 솔루션 개발, 과제 고유번호: S2563339)의 지원에 의하여 이루어진 것이다.This study was made with the support of the World Class 300 (WC300) project of the Ministry of SMEs and Startups (Development of a robot motion control solution for flexible response to smart machines/collaborative robots, task identification number: S2563339).

서보 시스템은 물체의 위치 ·방위 ·자세 등의 변위를 제어량(출력)으로 하고, 목표값(입력)의 임의의 변화에 추종하도록 한 제어 시스템을 말한다. 이러한 서보 시스템에 입력 신호에서 특성 주파수 대역 성분을 제외한 신호를 출력시키는 필터인 노치 필터가 적용된 바 있다. 서보 시스템에서는 전류 명령에 노치 필터를 적용하여 공진을 유발하는 주파수 성분을 제거하여 시스템의 공진 영향을 감소시킨다. The servo system refers to a control system in which the displacement of an object's position, orientation, posture, etc. is used as a control amount (output), and the target value (input) is followed by an arbitrary change. A notch filter, which is a filter that outputs a signal excluding a characteristic frequency band component from an input signal, has been applied to such a servo system. In the servo system, a notch filter is applied to the current command to remove the frequency component that causes resonance to reduce the resonance effect of the system.

도 1은 노치 필터가 적용된 종래 서보 시스템(20)의 블록도이다. 도 1을 참조하면, 서보 시스템(20)은 제어기(210), 제어 대상(220), 엔코더(230) 및 노치 필터(240)를 포함한다. 제어기(210)는 제어 대상(220) 제어를 위한 전류 명령을 발생한다. 엔코더(230)는 제어 대상(220)의 회전각을 측정하여 그 결과를 제어기(210)에 피드백으로 제공한다. 이후 제어기(210)는 레퍼런스 및 피드백 정보를 이용하여 제어 대상(220)를 제어한다.1 is a block diagram of a conventional servo system 20 to which a notch filter is applied. Referring to FIG. 1, the servo system 20 includes a controller 210, a control object 220, an encoder 230, and a notch filter 240. The controller 210 generates a current command for controlling the control target 220. The encoder 230 measures the rotation angle of the control object 220 and provides the result to the controller 210 as a feedback. Thereafter, the controller 210 controls the control object 220 using the reference and feedback information.

여기서 노치 필터(240)는 제어기에서 출력되는 전류 명령을 필터링하여 노치 주파수에 해당하는 공진 성분을 제거한다. 시스템의 특성에 따라 복수개의 공진 성분을 제거하기 위하여 복수개의 노치 필터를 사용할 수 있다. 노치 필터(240)의 파라미터를 적절하게 설정하면 노치 필터(240)를 통과한 전류가 모터에 공진 현상을 유발하지 않는다. 하지만 노치 필터(240)를 설정할 경우 노치 필터 1개 당 여러 파라미터를 설정하여야 하며, 복수 개의 노치 필터를 설정할 경우 문제가 더 복잡해져 적절한 노치 필터를 설정하기가 어려운 문제점이 존재한다.Here, the notch filter 240 filters a current command output from the controller to remove a resonance component corresponding to the notch frequency. A plurality of notch filters may be used to remove a plurality of resonance components according to the characteristics of the system. If the parameters of the notch filter 240 are properly set, the current passing through the notch filter 240 does not cause a resonance phenomenon in the motor. However, when setting the notch filter 240, several parameters must be set per one notch filter, and when setting a plurality of notch filters, the problem becomes more complicated and it is difficult to set an appropriate notch filter.

P. Schmid, and T. Rehm, "Notch filter tuning for resonant frequency reduction in dual inertia systems," in Conference Record of the 1999 IEEE Industry Applications Conference, pp. 1730-1734, 1999.P. Schmid, and T. Rehm, "Notch filter tuning for resonant frequency reduction in dual inertia systems," in Conference Record of the 1999 IEEE Industry Applications Conference, pp. 1730-1734, 1999.

본 발명은 상술한 문제점을 해결하기 위해 안출된 것으로, AI 기반으로 노치 필터의 파라미터를 설정하는 방법, 장치 및 이를 포함하는 서보 시스템을 제공한다. The present invention has been devised to solve the above-described problem, and provides a method, apparatus and a servo system including the same for setting a parameter of a notch filter based on AI.

본 발명의 일 실시예에 따른 노치필터 파라미터 설정 장치는 제어기, 제어 대상 및 상기 제어기와 상기 제어 대상 사이에 위치하여 상기 제어기의 제어 신호의 공진 성분을 제거하는 노치 필터를 포함하는 서보 시스템에 적용되는 노치필터 파라미터 설정 장치로서, 상기 제어 대상에 입력되는 입력 신호, 상기 제어 대상에서 출력되는 출력 신호 및 상기 제어기의 파라미터를 수신하고, 상기 입력 신호, 상기 출력 신호 및 상기 제어기의 파라미터를 기초로 상기 서보 시스템의 주파수 응답을 계산하여 전처리된 데이터를 생성하는 데이터 전처리부; 및 상기 전처리된 데이터를 이용하여 강화 학습 기반의 인공 신경망을 통해 노치 필터 파라미터를 설정하는 파라미터 설정부를 포함한다. A notch filter parameter setting apparatus according to an embodiment of the present invention is applied to a servo system including a controller, a control object, and a notch filter located between the controller and the control object to remove a resonance component of the control signal of the controller. A notch filter parameter setting apparatus, comprising: receiving an input signal input to the control object, an output signal output from the control object, and a parameter of the controller, and the servo based on the input signal, the output signal, and the parameter of the controller A data preprocessor that calculates the frequency response of the system and generates preprocessed data; And a parameter setting unit that sets a notch filter parameter through an artificial neural network based on reinforcement learning using the preprocessed data.

본 발명의 다른 실시예에 따른 노치필터 파라미터 설정 방법은 제어기, 제어 대상 및 상기 제어기와 상기 제어 대상 사이에 위치하여 상기 제어기의 제어 신호의 공진 성분을 제거하는 노치 필터를 포함하는 서보 시스템에 적용되는 노치필터 파라미터 설정 장치의 노치필터 파라미터 설정 방법으로, 상기 제어 대상에 입력되는 입력 신호, 상기 제어 대상에서 출력되는 출력 신호 및 상기 제어기의 파라미터를 수신하고, 상기 입력 신호, 상기 출력 신호 및 상기 제어기의 파라미터를 기초로 상기 서보 시스템의 주파수 응답을 계산하여 전처리된 데이터를 생성하는 단계; 및 상기 전처리된 데이터를 이용하여 강화 학습 기반의 인공 신경망을 통해 노치 필터 파라미터를 설정하는 단계를 포함한다. A method for setting a notch filter parameter according to another embodiment of the present invention is applied to a servo system including a controller, a control object, and a notch filter located between the controller and the control object to remove a resonance component of the control signal of the controller. A notch filter parameter setting method of a notch filter parameter setting apparatus, wherein an input signal input to the control object, an output signal output from the control object, and a parameter of the controller are received, and the input signal, the output signal, and the controller Generating preprocessed data by calculating a frequency response of the servo system based on the parameter; And setting a notch filter parameter through an artificial neural network based on reinforcement learning using the preprocessed data.

본 발명의 또 다른 실시예에 따른 컴퓨터 프로그램은 하드웨어와 결합되어 상기 노치필터 파라미터 설정 방법을 실행하도록 매체에 저장된다.A computer program according to another embodiment of the present invention is stored in a medium to execute the method of setting the notch filter parameter by being combined with hardware.

본 발명의 일 실시예에 따른 노치필터 파라미터 설정 장치 및 방법은 제어 대상의 입력 신호, 출력 신호 및 제어기의 파라미터를 이용하여, 주파수 응답(보드 플롯 데이터)을 계산하고, DQN 기계학습 방법을 이용하여 주파수 응답(보드 플롯 데이터)을 기초로 노치 필터의 파라미터가 자동으로 설정될 수 있다.The apparatus and method for setting a notch filter parameter according to an embodiment of the present invention calculates a frequency response (Board plot data) using a control target input signal, an output signal, and a parameter of a controller, and uses a DQN machine learning method. The parameters of the notch filter may be automatically set based on the frequency response (Board plot data).

도 1은 노치 필터가 적용된 종래의 서보 시스템의 블록도이다.
도 2는 본 발명의 일 실시예에 따른 서보 시스템의 블록도이다.
도 3은 본 발명의 일 실시예에 따른 파라미터 설정 장치의 블록도이다.
도 4는 본 발명의 일 실시예에 따른 파라미터 설정부의 블록도이다.
도 5는 본 발명의 일 실시예에 따른 네트워크 저장부의 블록도이다.
도 6은 본 발명의 일 실시예에 따른 노치필터 파라미터 설정 방법의 순서도이다.
도 7은 본 발명의 일 실시예에 따른 노치 필터 파라미터를 설정하는 단계의 순서도이다.
1 is a block diagram of a conventional servo system to which a notch filter is applied.
2 is a block diagram of a servo system according to an embodiment of the present invention.
3 is a block diagram of a parameter setting device according to an embodiment of the present invention.
4 is a block diagram of a parameter setting unit according to an embodiment of the present invention.
5 is a block diagram of a network storage unit according to an embodiment of the present invention.
6 is a flowchart of a method for setting a notch filter parameter according to an embodiment of the present invention.
7 is a flowchart of a step of setting a notch filter parameter according to an embodiment of the present invention.

후술하는 본 발명에 대한 상세한 설명은, 본 발명이 실시될 수 있는 특정 실시예를 예시로서 도시하는 첨부 도면을 참조한다. 이들 실시예는 당업자가 본 발명을 실시할 수 있기에 충분하도록 상세히 설명된다. 본 명세서에서 사용되는 용어는 기능을 고려하면서 가능한 현재 널리 사용되는 일반적인 용어를 선택하였으나, 이는 당 분야에 종사하는 기술자의 의도 또는 관례 또는 새로운 기술의 출현 등에 따라 달라질 수 있다. 또한, 특정한 경우는 출원인이 임의로 결정한 용어도 있으며, 이 경우 해당되는 명세서의 설명 부분에서 그 의미를 기재할 것이다. 따라서 본 명세서에서 사용되는 용어는, 단순한 용어의 명칭이 아닌 그 용어가 가지는 실질적인 의미와 본 명세서의 전반에 걸친 내용을 토대로 해석되어야 한다.DETAILED DESCRIPTION OF THE INVENTION The detailed description of the present invention to be described later refers to the accompanying drawings, which illustrate specific embodiments in which the present invention may be practiced. These embodiments are described in detail sufficient to enable a person skilled in the art to practice the present invention. The terms used in the present specification have selected general terms that are currently widely used as possible while considering functions, but this may vary according to the intention or custom of a technician working in the art, or the emergence of new technologies. In addition, in certain cases, there are terms arbitrarily determined by the applicant, and in this case, the meaning will be described in the description of the corresponding specification. Accordingly, terms used in the present specification should be interpreted based on the actual meaning of the term and the entire contents of the present specification, not a simple name of the term.

도 2는 본 발명의 일 실시예에 따른 서보 시스템의 블록도이다. 도 3은 본 발명의 일 실시예에 따른 파라미터 설정 장치의 블록도이다. 도 4는 본 발명의 일 실시예에 따른 파라미터 설정부의 블록도이다. 도 5는 본 발명의 일 실시예에 따른 네트워크 저장부의 블록도이다.2 is a block diagram of a servo system according to an embodiment of the present invention. 3 is a block diagram of a parameter setting device according to an embodiment of the present invention. 4 is a block diagram of a parameter setting unit according to an embodiment of the present invention. 5 is a block diagram of a network storage unit according to an embodiment of the present invention.

도 2 내지 도 5를 참조하면, 본 발명의 일 실시예에 따른 서보 시스템(10)은 파라미터 설정 장치(100), 제어기(110), 제어 대상(120), 엔코더(130) 및 노치 필터(140)를 포함한다. 제어기(110)는 제어 대상(120) 제어를 위한 전류 명령을 발생한다. 엔코더(130)는 제어 대상(120)의 회전각을 측정하여 그 결과를 제어기(110)에 피드백 신호로 제공한다. 이후 제어기(110)는 레퍼런스 및 피드백 정보를 이용하여 제어 대상(120)를 제어한다. 제어 대상(120)는 서보 시스템(10)에서 제어될 제어 대상으로, 제어 대상, 플랜트 에 해당한다. 노치 필터(140)는 제어기에서 출력되는 전류 명령(S1)을 필터링 하여 노치 주파수에 해당하는 공진 성분을 제거한다. 즉, 노치 필터(140)를 통과하여 공진 성분이 제거된 전류 명령이 제어 대상(120)에 제공된다. 파라미터 설정 장치(100)는 AI 기반으로 노치 필터(140)의 파라미터를 설정하여 노치 필터(140)에 제공한다. 본 발명의 일 실시예에 따른 파라미터 설정 장치(100)는 AI 기반 방법 중 인공 신경망을 이용한 강화학습 방법을 통해 노치 필터(140)의 파라미터를 설정하여 제공할 수 있다. 인공 신경망을 이용한 강화학습 방법은 복잡한 시스템에서도 스스로 시스템을 학습하면서 선택 가능한 행동들 중 보상을 최대화 하는 행동을 선택할 수 있는 바, 노치 필터 파라미터를 보다 효율적으로 설정할 수 있다. 다만, 본 발명의 AI 기반 노치 필터 파라미터 설정 방법이 상술한 방법에 한정되는 것은 아니다.2 to 5, the servo system 10 according to an embodiment of the present invention includes a parameter setting device 100, a controller 110, a control target 120, an encoder 130, and a notch filter 140. ). The controller 110 generates a current command for controlling the control object 120. The encoder 130 measures the rotation angle of the control object 120 and provides the result to the controller 110 as a feedback signal. Thereafter, the controller 110 controls the control object 120 using the reference and feedback information. The control target 120 is a control target to be controlled by the servo system 10, and corresponds to a control target and a plant. The notch filter 140 filters the current command S1 output from the controller to remove a resonance component corresponding to the notch frequency. That is, a current command from which the resonance component has been removed through the notch filter 140 is provided to the control target 120. The parameter setting device 100 sets the parameters of the notch filter 140 based on AI and provides it to the notch filter 140. The parameter setting apparatus 100 according to an embodiment of the present invention may set and provide a parameter of the notch filter 140 through a reinforcement learning method using an artificial neural network among AI-based methods. The reinforcement learning method using an artificial neural network can select an action that maximizes reward from among the selectable actions while learning the system by itself even in a complex system, so it can more efficiently set the notch filter parameter. However, the AI-based notch filter parameter setting method of the present invention is not limited to the above-described method.

본 발명의 일 실시예에 따른 노치 필터(140)는 하기 수학식 1로 표현되는 전달 함수로 설계될 수 있다. The notch filter 140 according to an embodiment of the present invention may be designed with a transfer function expressed by Equation 1 below.

[수학식 1][Equation 1]

Figure 112018131198264-pat00001
Figure 112018131198264-pat00001

(여기서,

Figure 112018131198264-pat00002
는 라플라스 연산자(Laplace operator),
Figure 112018131198264-pat00003
은 노치 필터 주파수(notch frequency),
Figure 112018131198264-pat00004
는 노치 필터 깊이(notch depth parameter),
Figure 112018131198264-pat00005
는 노치 필터 너비(notch width parameter)이다.)(here,
Figure 112018131198264-pat00002
Is the Laplace operator,
Figure 112018131198264-pat00003
Is the notch filter frequency,
Figure 112018131198264-pat00004
Is the notch depth parameter,
Figure 112018131198264-pat00005
Is the notch width parameter.)

여기서, 노치 필터 주파수(notch frequency), 노치 필터 깊이(notch depth parameter), 노치 필터 너비(notch width parameter)는 노치 필터(140)의 제어 파라미터로, 노치 필터 파라미터의 설정의 대상에 해당한다. 즉, 노치 필터(140)의 제어 파라미터의 개수는 3개일 수 있으나, 이에 한정되는 것은 아니다. 노치 필터(140)의 제어 파라미터의 개수는 설계 조건에 따라 변동될 수 있다.Here, the notch filter frequency, the notch depth parameter, and the notch width parameter are control parameters of the notch filter 140 and correspond to targets for setting the notch filter parameters. That is, the number of control parameters of the notch filter 140 may be three, but is not limited thereto. The number of control parameters of the notch filter 140 may vary according to design conditions.

파라미터 설정 장치(100)는 AI 기반 방법 중 인공 신경망을 이용한 강화학습 방법을 통해 조절된 노치 필터 주파수(notch frequency), 노치 필터 깊이(notch depth parameter), 노치 필터 너비(notch width parameter)를 노치 필터(140)로 제공할 수 있다. 여기서, 노치 필터(140)는 복수개로 서보 시스템(10)에 구비될 수 있으며, 파라미터 설정 장치(100)는 복수의 노치 필터(140) 각각에 대한 파라미터를 설정하여 제공할 수 있다. 이하, 파라미터 설정 장치(100)의 구성 및 기능에 대해 보다 상세히 설명하도록 한다.The parameter setting apparatus 100 uses a notch filter frequency, a notch depth parameter, and a notch width parameter adjusted through a reinforcement learning method using an artificial neural network among AI-based methods. It can be provided as 140. Here, a plurality of notch filters 140 may be provided in the servo system 10, and the parameter setting device 100 may set and provide parameters for each of the plurality of notch filters 140. Hereinafter, the configuration and function of the parameter setting device 100 will be described in more detail.

파라미터 설정 장치(100)는 데이터 전처리부(101) 및 파라미터 설정부(102)를 포함한다.The parameter setting device 100 includes a data preprocessing unit 101 and a parameter setting unit 102.

데이터 전처리부(101)는 공진 성분이 제거된 전류 명령, 엔코더(130)에서 제공되는 피드백 신호 및 제어기(110)의 파라미터를 입력받고, 서보 시스템(100)의 주파수 응답을 계산한다. 여기서, 공진 성분이 제거된 전류 명령은 제어 대상(120)에 입력되는 입력 신호이며, 엔코더(130)에서 제공되는 피드백 신호는 제어 대상(120)에서 출력되는 출력 신호에 해당한다. 데이터 전처리부(101)는 제어 대상(120)의 입력 신호, 제어 대상(120)의 출력 신호, 제어기(110)의 파라미터를 입력받으며, 서보 시스템(100)의 주파수 응답에 해당하는 보드 플롯(bode plot) 데이터를 생성할 수 있다. 즉, 파라미터 설정 장치(100)는 서보 시스템(100)의 보드 플롯 데이터를 이용하여 노치 필터(140)의 파라미터 설정을 수행할 수 있다. 또한, 데이터 전처리부(101)는 기계 학습에 사용되는 형태로 상기 주파수 응답을 변환할 수 있다. 데이터 전처리부(101)는 주파수 응답(보드 플롯 데이터)를 파라미터 설정부(102)에 처리될 수 있는 데이터 크기로 변경하는 작업을 더 수행할 수 있다. 예시적으로, 데이터 전처리부(101)는 데이터의 크기가 클 경우 주파수 성분을 샘플링 하여 데이터 크기로 변경하는 방법 또는 이전에 사용하던 일련의 데이터를 묶어서 하나의 데이터로 처리 하는 방법을 사용할 수 있다. 데이터 크기가 조정된 보드 플롯 데이터, 즉 전처리된 데이터는 파라미터 설정부(102)에 제공된다.The data preprocessor 101 receives a current command from which the resonance component is removed, a feedback signal provided from the encoder 130, and a parameter of the controller 110, and calculates the frequency response of the servo system 100. Here, the current command from which the resonance component is removed is an input signal input to the control object 120, and the feedback signal provided from the encoder 130 corresponds to an output signal output from the control object 120. The data preprocessor 101 receives an input signal of the control object 120, an output signal of the control object 120, and parameters of the controller 110, and a bode plot corresponding to the frequency response of the servo system 100 plot) data can be generated. That is, the parameter setting device 100 may set a parameter of the notch filter 140 by using the Bode plot data of the servo system 100. In addition, the data preprocessor 101 may convert the frequency response into a form used for machine learning. The data preprocessor 101 may further perform an operation of changing the frequency response (Board plot data) to a data size that can be processed by the parameter setting unit 102. For example, when the data size is large, the data preprocessor 101 may use a method of sampling a frequency component and changing it to a data size, or a method of bundling a series of previously used data and processing it as one data. Bode plot data whose data size has been adjusted, that is, pre-processed data, is provided to the parameter setting unit 102.

파라미터 설정부(102)는 전처리된 데이터를 이용하여 노치 필터 파라미터를 생성한다. 파라미터 설정부(102)는 강화 학습(reinforcement learning) 기반의 인공 신경망을 이용한다. 예컨대, DQN을 사용할 수 있다. DQN은 Q-학습(learning) 기술에 인공신경망을 추가하여 더 넓은 상태 공간 상에서 강화 학습을 진행하는 알고리즘이다. DQN은 개별 Q 값을 저장하는 것이 아닌, Q 값을 결정하는 함수(Q 함수)를 추정한다. DQN은 상기 Q 함수에 현재 상태를 입력으로 주고 Q 값을 결과값으로 추출한다. 여기서, 현재 상태는 상기 전처리된 데이터이고, Q 값은 노치 필터 파라미터를 업데이트 하기 위하여 사용되는 값일 수 있다. 파라미터 설정부(102)는 가치 네트워크를 사용하여 결정된 Q 값을 결정하는 함수를 정기적인 훈련 기간마다 학습한다. 파라미터 설정부(102)는 저장 장치에 저장한 행동과 보상값을 이용하여 훈련 기간에 강화 학습을 수행하고, 노치 필터 파라미터를 업데이트 할 수 있다.The parameter setting unit 102 generates a notch filter parameter by using the preprocessed data. The parameter setting unit 102 uses an artificial neural network based on reinforcement learning. For example, DQN can be used. DQN is an algorithm that performs reinforcement learning in a wider state space by adding artificial neural networks to Q-learning technology. DQN estimates a function (Q function) that determines the Q value, rather than storing individual Q values. DQN inputs the current state to the Q function and extracts the Q value as a result value. Here, the current state is the preprocessed data, and the Q value may be a value used to update the notch filter parameter. The parameter setting unit 102 learns a function for determining the Q value determined using the value network for each periodic training period. The parameter setting unit 102 may perform reinforcement learning during the training period using the behavior and compensation values stored in the storage device and update the notch filter parameter.

구체적으로, 파라미터 설정부(102)는 네트워크 저장부(1020), 파라미터 업데이트부(1022), 보상 계산부(1024), 기계 학습부(1026) 및 완료 조건 판단부(1028)을 포함한다.Specifically, the parameter setting unit 102 includes a network storage unit 1020, a parameter update unit 1022, a compensation calculation unit 1024, a machine learning unit 1026, and a completion condition determination unit 1028.

네트워크 저장부(1020)는 전처리된 데이터를 입력받아 노치 필터 파라미터를 업데이트 하기 위해 사용되는 Q 값(Q-value)을 파라미터 업데이트부(1022)에 출력한다. 네트워크 저장부(1020)에서 출력되는 출력 데이터는 후술할 기계 학습부(1026)에서 수행될 행동을 위해 사용될 수 있다. 출력하는 파라미터로서 노치 필터 1개 당 상기 수학식 1의

Figure 112018131198264-pat00006
,
Figure 112018131198264-pat00007
Figure 112018131198264-pat00008
를 사용할 수 있다. The network storage unit 1020 receives the preprocessed data and outputs a Q-value used to update the notch filter parameter to the parameter update unit 1022. Output data output from the network storage unit 1020 may be used for an action to be performed by the machine learning unit 1026 to be described later. As a parameter to be output, in Equation 1 per notch filter
Figure 112018131198264-pat00006
,
Figure 112018131198264-pat00007
And
Figure 112018131198264-pat00008
You can use

네트워크 저장부(1020)는 인공 신경망으로 구성될 수 있다. DQN은 세 개 레이어(layer) 이상의 인공신경망을 사용하여 Q 값을 결정하는 함수(Q 함수)를 근사할 수 있다. 즉, 네트워크 저장부(1020)는 입력(전처리된 데이터)과 출력(Q 값)의 관계를 가지는 수학적 함수를 근사화할 수 있다. 도 4는 네트워크 저장부(1020)의 일 예를 나타내는 블록도이다. 도 4에 도시된 바와 같이, 네트워크 저장부(1020)는 입력층(1020A), 은닉층(1020B), 출력층(1020C)으로 구성된다. 은닉층(1020B)은 컨볼루션 계층, 완전 연결 계층으로 구성될 수 있으며, 인공신경망을 사용하여 Q 값을 결정하는 함수(Q 함수)를 근사할 수 있다. 입력층(1020A), 출력층(1020C) 및 은닉층(1020B)의 개수 등은 해결하고자 하는 과제 또는 근사하고자 하는 함수의 종류에 따라 다르게 구성될 수 있다. 입력층(1020A)의 크기는 전처리된 데이터의 크기와 동일하고 출력층(1020C)의 크기는 노치 필터 파라미터를 조절하는 행동의 개수와 동일하다.The network storage unit 1020 may be configured as an artificial neural network. DQN can approximate a function (Q function) that determines a Q value using an artificial neural network of three or more layers. That is, the network storage unit 1020 may approximate a mathematical function having a relationship between an input (preprocessed data) and an output (Q value). 4 is a block diagram illustrating an example of a network storage unit 1020. As shown in FIG. 4, the network storage unit 1020 includes an input layer 1020A, a hidden layer 1020B, and an output layer 1020C. The hidden layer 1020B may be composed of a convolutional layer and a fully connected layer, and may approximate a function (Q function) for determining a Q value using an artificial neural network. The number of the input layer 1020A, the output layer 1020C, and the hidden layer 1020B may be configured differently according to a task to be solved or a function to be approximated. The size of the input layer 1020A is the same as the size of the preprocessed data, and the size of the output layer 1020C is the same as the number of actions that adjust the notch filter parameter.

파라미터 업데이트부(1022)는 네트워크 저장부(1020)로부터 입력받은 Q 값을 바탕으로 노치 필터 파라미터를 업데이트 할 수 있다.The parameter update unit 1022 may update the notch filter parameter based on the Q value input from the network storage unit 1020.

보상 계산부(1024)는 파라미터 업데이트부(1022)로부터 입력받은 노치 필터 파라미터를 바탕으로 보상값(

Figure 112018131198264-pat00009
)을 계산할 수 있다. 보상값(
Figure 112018131198264-pat00010
)은 기계 학습부(1026)에서 수행할 강화 학습을 위한 데이터일 수 있다. 보상값(
Figure 112018131198264-pat00011
)은 노치 필터 파라미터를 상기 서보 시스템의 주파수 응답에 적용하여 얻을 수 있는 이득 여유, 위상 여유일 수 있으나, 이에 한정되는 것은 아니다.The compensation calculation unit 1024 is based on the notch filter parameter input from the parameter update unit 1022, the compensation value (
Figure 112018131198264-pat00009
) Can be calculated. Compensation value(
Figure 112018131198264-pat00010
) May be data for reinforcement learning to be performed by the machine learning unit 1026. Compensation value(
Figure 112018131198264-pat00011
) May be a gain margin or a phase margin that can be obtained by applying the notch filter parameter to the frequency response of the servo system, but is not limited thereto.

기계 학습부(1026)는 보상값을 고려한 강화 학습 방법을 적용함으로써 인공신경망을 업데이트할 수 있다. 기계 학습부(1026)는 하기 수학식 2로 표현되는 Q-학습을 수행할 수 있다.The machine learning unit 1026 may update the artificial neural network by applying a reinforcement learning method in consideration of a compensation value. The machine learning unit 1026 may perform Q-learning represented by Equation 2 below.

<수학식 2><Equation 2>

Figure 112018131198264-pat00012
Figure 112018131198264-pat00012

(여기서,

Figure 112018131198264-pat00013
는 Q 함수,
Figure 112018131198264-pat00014
는 상태(state),
Figure 112018131198264-pat00015
는 행동(action),
Figure 112018131198264-pat00016
은 보상값,
Figure 112018131198264-pat00017
는 할인율(discount factor)이다. 할인율은 0에서 1 사이의 값을 가지며, 0에 가까우면 현재, 1에 가까우면 미래에 대한 보상의 중요성을 강조하는 수치이다.)(here,
Figure 112018131198264-pat00013
Is the Q function,
Figure 112018131198264-pat00014
Is the state,
Figure 112018131198264-pat00015
Is the action,
Figure 112018131198264-pat00016
Is the compensation value,
Figure 112018131198264-pat00017
Is the discount factor. The discount rate has a value between 0 and 1, and when it is close to 0, it is a number that emphasizes the importance of rewards for the present, and 1 for the future.)

Q-학습이란 기본적으로 환경(environment), 에이전트(agent), 상태(state), 행동(action), 보상(reward)으로 구성된 강화 학습 알고리즘이다. 먼저 에이전트가 행동을 취함으로써 에이전트는 새로운 상태로 움직일 수 있다. 에이전트가 취한 행동에 대해 환경으로부터 보상을 받게 된다. 결국 에이전트의 최종 목표는 보상을 최대로 받아,

Figure 112018131198264-pat00018
가 최대값을 가질 수 있도록 노치 필터 파라미터를 업데이트 하는 것이다. 파라미터 업데이트부(1022)에서
Figure 112018131198264-pat00019
가 최대가 되는 행동(
Figure 112018131198264-pat00020
)를 선택할 수 있으며, 이러한 행동(
Figure 112018131198264-pat00021
)은 노치 필터 파라미터인 노치 필터 주파수(notch frequency), 노치 필터 깊이(notch depth parameter), 노치 필터 너비(notch width parameter) 중 적어도 하나를 조절하는 행동일 수 있다. 즉, 강화 학습 방법은 상기 Q 함수가 최대가 되는 행동을 선택하는 것으로, 상기 행동은 상기 노치 필터 파라미터를 조절하는 행동을 포함할 수 있다. 여기서, 노치 필터가 복수로 구성되는 경우, 복수의 노치 필터 중 적어도 하나의 파라미터를 조절하는 것을 포함할 수 있다. 파라미터 업데이트부(1022)에서 현재 상태(
Figure 112018131198264-pat00022
)에 대한
Figure 112018131198264-pat00023
가 최대가 되도록 노치 필터의 파라미터가 설정될 수 있다.Q-learning is basically a reinforcement learning algorithm composed of environment, agent, state, action, and reward. First, the agent can move to a new state by taking action. The agent is rewarded from the environment for the actions taken. In the end, the agent’s ultimate goal is to receive the maximum reward,
Figure 112018131198264-pat00018
Is to update the notch filter parameter so that it has the maximum value. In the parameter update unit 1022
Figure 112018131198264-pat00019
Is the maximum behavior (
Figure 112018131198264-pat00020
), and this behavior (
Figure 112018131198264-pat00021
) May be an action of adjusting at least one of a notch filter parameter such as a notch frequency, a notch depth parameter, and a notch width parameter. That is, the reinforcement learning method selects an action in which the Q function is maximized, and the action may include an action of adjusting the notch filter parameter. Here, when a plurality of notch filters are configured, it may include adjusting at least one parameter of the plurality of notch filters. In the parameter update unit 1022, the current state (
Figure 112018131198264-pat00022
)for
Figure 112018131198264-pat00023
The parameter of the notch filter may be set so that is maximum.

완료 조건 판단부(1028)는 파라미터의 설정을 완료하는 조건을 판단하고, 미리 설정된 조건이 만족되는 경우, 파라미터의 설정을 완료하고, 현재 설정된 노치 필터의 파라미터를 노치 필터(140)에 제공할 수 있다. 완료 조건 판단부(1028)은 완료 조건을 판단하기 위하여 기게 학습부(1024)의 학습 시간, 상기 보상값(

Figure 112018131198264-pat00024
) 또는 네트워크 저장부(1020)의 업데이트 횟수를 고려할 수 있다. 또한, 완료 조건 판단부(1028)는 완료 조건을 판단하기 위하여 기계 학습부(1026)의 학습 시간, 보상값(
Figure 112018131198264-pat00025
) 또는 네트워크 저장부(1020)의 업데이트 횟수를 저장하는 메모리를 더 포함할 수 있다. The completion condition determination unit 1028 may determine a condition for completing the parameter setting, and if a preset condition is satisfied, complete the parameter setting and provide the currently set notch filter parameter to the notch filter 140. have. In order to determine the completion condition, the completion condition determination unit 1028 includes a learning time of the learning unit 1024 and the compensation value (
Figure 112018131198264-pat00024
) Or the number of updates of the network storage unit 1020 may be considered. In addition, the completion condition determination unit 1028 includes a learning time and a compensation value of the machine learning unit 1026 in order to determine the completion condition.
Figure 112018131198264-pat00025
) Or a memory for storing the number of updates of the network storage unit 1020 may be further included.

완료 조건 판단부(1028)에서 파라미터 설정이 완료되지 않은 것으로 판단되는 경우, 상술한 과정이 반복될 수 있다. 즉, 현재 설정된 파라미터를 도출하기 위한 Q 함수를 다시 도출할 수 있으며, 파라미터 업데이트부(1022)는 다시 도출된 Q 함수를 이용하여 노치 필터 파라미터를 업데이트 할 수 있다. 보상 계산부(1024)는 현재 입력받은 노치 필터 파라미터를 바탕으로 보상값(

Figure 112018131198264-pat00026
)을 다시 계산할 수 있다. 기계 학습부(1026)는 제공받은 보상값(
Figure 112018131198264-pat00027
), Q 함수, 설정된 파라미터를 학습하고, 인공신경망을 업데이트할 수 있다. 기계 학습부(1026)는, 인공신경망을 업데이트하기 위하여 경사 하강법(gradient descent) 혹은 경사 하강법의 변형 방법을 적용할 수도 있다.If the completion condition determination unit 1028 determines that the parameter setting has not been completed, the above-described process may be repeated. That is, the Q function for deriving the currently set parameter may be derived again, and the parameter update unit 1022 may update the notch filter parameter by using the derived Q function. The compensation calculation unit 1024 is based on the currently input notch filter parameter.
Figure 112018131198264-pat00026
) Can be recalculated. The machine learning unit 1026 receives the provided compensation value (
Figure 112018131198264-pat00027
), Q function, and set parameters, and update the artificial neural network. The machine learning unit 1026 may apply a gradient descent method or a transformation method of the gradient descent method to update the artificial neural network.

본 발명의 일 실시예에 따른 파라미터 설정 장치(100)는 제어 대상의 입력 신호, 출력 신호 및 제어기의 파라미터를 이용하여, 주파수 응답(보드 플롯 데이터)을 계산하고 DQN 기계학습 방법을 이용하여 주파수 응답(보드 플롯 데이터)을 기초로 노치 필터의 파라미터가 자동으로 설정될 수 있다. The parameter setting device 100 according to an embodiment of the present invention calculates a frequency response (Board plot data) using a control target input signal, an output signal, and a parameter of a controller, and uses a DQN machine learning method to perform a frequency response. The parameters of the notch filter can be automatically set based on the (Board plot data).

이하, 본 발명의 다른 실시예에 따른 노치필터 파라미터 설정 방법에 대해 설명한다.Hereinafter, a method of setting a notch filter parameter according to another embodiment of the present invention will be described.

도 6은 본 발명의 다른 실시예에 따른 노치필터 파라미터 설정 방법의 순서도이다. 도 7은 본 발명의 다른 실시예에 따른 노치 필터 파라미터를 설정하는 단계의 순서도이다. 6 is a flowchart of a method of setting a notch filter parameter according to another embodiment of the present invention. 7 is a flowchart of a step of setting a notch filter parameter according to another embodiment of the present invention.

본 실시예에 따른 노치필터 파라미터 설정 방법은 상술한 도 2 내지 도 5에서 설명한 노치필터 파라미터 설정 장치(100)에 적용되는 파라미터 설정 방법일 수 있다. 즉, 제어기, 제어 대상 및 상기 제어기와 상기 제어 대상 사이에 위치하여 상기 제어기의 제어 신호의 공진 성분을 제거하는 노치 필터를 포함하는 서보 시스템에 적용되는 파라미터 설정 장치의 파라미터 설정 방법에 해당하며, 본 실시예의 설명을 위해 도 2 내지 도 5의 노치 필터의 파라미터 설정 장치가 참고될 수 있다. The notch filter parameter setting method according to the present embodiment may be a parameter setting method applied to the notch filter parameter setting apparatus 100 described in FIGS. 2 to 5 described above. That is, it corresponds to a parameter setting method of a parameter setting device applied to a servo system including a controller, a control target, and a notch filter located between the controller and the control target to remove the resonance component of the control signal of the controller. For description of the embodiment, the apparatus for setting parameters of the notch filter of FIGS. 2 to 5 may be referred to.

도 6 및 도 7을 참조하면, 본 발명의 다른 실시예에 따른 노치필터 파라미터 설정 방법은 서보 시스템의 주파수 응답을 계산하여 전처리된 데이터를 생성하는 단계(S100) 및 강화 학습 기반의 인공 신경망을 통해 노치 필터 파라미터를 설정하는 단계(S110)를 포함한다. 6 and 7, a method for setting a notch filter parameter according to another embodiment of the present invention includes the step of generating preprocessed data by calculating the frequency response of a servo system (S100) and through an artificial neural network based on reinforcement learning. And setting the notch filter parameter (S110).

먼저, 서보 시스템의 주파수 응답을 계산하여 전처리된 데이터를 생성한다 (S100).First, the frequency response of the servo system is calculated to generate preprocessed data (S100).

서보 시스템의 주파수 응답을 계산하여 전처리된 데이터를 생성하는 단계(S100)는 파라미터 설정 장치의 데이터 전처리부(101)에서 수행될 수 있다. 데이터 전처리부(101)는 제어 대상(120)의 입력 신호, 제어 대상(120)의 출력 신호, 제어기(110)의 파라미터를 입력받으며, 서보 시스템(100)의 주파수 응답에 해당하는 보드 플롯(bode plot) 데이터를 생성할 수 있다. 데이터 전처리부(101)는 기계 학습에 사용되는 형태로 상기 주파수 응답을 변환할 수 있다. 데이터 전처리부(101)는 주파수 응답(보드 플롯 데이터)를 파라미터 설정부(102)에 처리될 수 있는 데이터 크기로 변경하는 작업을 더 수행할 수 있다. 예시적으로, 데이터 전처리부(101)는 데이터의 크기가 클 경우 주파수 성분을 샘플링 하여 데이터 크기로 변경하는 방법 또는 이전에 사용하던 일련의 데이터를 묶어서 하나의 데이터로 처리 하는 방법을 사용할 수 있다. The step S100 of generating preprocessed data by calculating the frequency response of the servo system may be performed in the data preprocessor 101 of the parameter setting device. The data preprocessor 101 receives an input signal of the control object 120, an output signal of the control object 120, and parameters of the controller 110, and a bode plot corresponding to the frequency response of the servo system 100 plot) data can be generated. The data preprocessor 101 may convert the frequency response into a form used for machine learning. The data preprocessor 101 may further perform an operation of changing the frequency response (Board plot data) to a data size that can be processed by the parameter setting unit 102. For example, when the data size is large, the data preprocessor 101 may use a method of sampling a frequency component and changing it to a data size, or a method of bundling a series of previously used data and processing it as one data.

강화 학습 기반의 인공 신경망을 통해 노치 필터 파라미터를 설정한다(S110).A notch filter parameter is set through an artificial neural network based on reinforcement learning (S110).

강화 학습 기반의 인공 신경망을 통해 노치 필터 파라미터를 설정하는 단계(S110)는 파라미터 설정부(102)에서 수행될 수 있다. 파라미터 설정부(102)는 강화 학습(reinforcement learning) 기반의 인공 신경망, DQN을 사용하여 노치 필터 파라미터를 설정할 수 있다. 파라미터 설정부(102)는 인공신경망을 사용하여 결정된 Q 값을 결정하는 함수(Q 함수)를 정기적인 훈련 기간마다 학습한다. 파라미터 설정부(102)는 저장 장치에 저장한 행동과 보상값을 이용하여 훈련 기간에 강화 학습을 수행하고, 노치 필터 파라미터를 업데이트 할 수 있다.The step (S110) of setting the notch filter parameter through an artificial neural network based on reinforcement learning may be performed by the parameter setting unit 102. The parameter setting unit 102 may set a notch filter parameter using a DQN, an artificial neural network based on reinforcement learning. The parameter setting unit 102 learns a function (Q function) for determining a determined Q value using an artificial neural network for each periodic training period. The parameter setting unit 102 may perform reinforcement learning during the training period using the behavior and compensation values stored in the storage device and update the notch filter parameter.

구체적으로, 강화 학습 기반의 인공 신경망을 통해 노치 필터 파라미터를 설정하는 단계(S110)는 전처리된 데이터를 입력받아 Q 값을 출력하고 상기 Q 값을 이용하여 상기 노치 필터 파라미터를 업데이트하는 단계(S112); 상기 노치 필터 파라미터를 바탕으로 보상값을 계산하는 단계(S114); 상기 보상값을 고려한 강화 학습 방법을 통해 상기 인공신경망을 업데이트하는 단계(S116); 및 상기 노치 필터 파라미터의 설정 완료 여부를 판단하는 단계(S118)을 포함한다. Specifically, in the step of setting the notch filter parameter through an artificial neural network based on reinforcement learning (S110), receiving preprocessed data, outputting a Q value, and updating the notch filter parameter using the Q value (S112) ; Calculating a compensation value based on the notch filter parameter (S114); Updating the artificial neural network through a reinforcement learning method in consideration of the compensation value (S116); And determining whether the setting of the notch filter parameter is completed (S118).

전처리된 데이터를 입력받아 Q 값을 출력하고 상기 Q 값을 이용하여 상기 노치 필터 파라미터를 업데이트하는 단계(S112)는 네트워크 저장부(1020) 및 파라미터 업데이트부(1022)에서 수행된다. 네트워크 저장부(1020)는 인공 신경망으로 구성될 수 있다. DQN은 세 개 레이어(layer) 이상의 가치 네트워크를 사용하여 Q 값을 결정하는 함수(Q 함수)를 근사할 수 있다. 즉, 네트워크 저장부(1020)는 입력(전처리된 데이터)과 출력(Q 값)의 관계를 가지는 수학적 함수인 Q 함수를 추정할 수 있다. 파라미터 업데이트부(1022)는 네트워크 저장부(1020)로부터 입력받은 Q 값을 바탕으로 노치 필터 파라미터를 업데이트 할 수 있다.The step of receiving the preprocessed data, outputting a Q value, and updating the notch filter parameter using the Q value (S112) is performed in the network storage unit 1020 and the parameter update unit 1022. The network storage unit 1020 may be configured as an artificial neural network. DQN can approximate a function (Q function) that determines the value of Q by using a value network of three or more layers. That is, the network storage unit 1020 may estimate a Q function, which is a mathematical function having a relationship between an input (preprocessed data) and an output (Q value). The parameter update unit 1022 may update the notch filter parameter based on the Q value input from the network storage unit 1020.

노치 필터 파라미터를 바탕으로 보상값을 계산하는 단계(S114)는 보상 계산부(1024)에서 수행된다. 보상값(

Figure 112018131198264-pat00028
)은 강화 학습을 위한 데이터일 수 있다. 보상값(
Figure 112018131198264-pat00029
)은 노치 필터 파라미터를 상기 서보 시스템의 주파수 응답에 적용하여 얻을 수 있는 이득 여유, 위상 여유일 수 있으나, 이에 한정되는 것은 아니다.The step of calculating the compensation value based on the notch filter parameter (S114) is performed by the compensation calculation unit 1024. Compensation value(
Figure 112018131198264-pat00028
) May be data for reinforcement learning. Compensation value(
Figure 112018131198264-pat00029
) May be a gain margin or a phase margin that can be obtained by applying the notch filter parameter to the frequency response of the servo system, but is not limited thereto.

보상값을 고려한 강화 학습 방법을 통해 상기 인공신경망을 업데이트하는 단계(S116)는 기계 학습부(1026)에서 수행된다. 기계 학습부(1026)는 보상값을 고려한 강화 학습 방법을 적용함으로써 인공신경망을 업데이트할 수 있다. 강화 학습 방법은 상기 특성 상태(

Figure 112018131198264-pat00030
)에서 Q 값이 최대가 되는 행동을 선택하는 것으로, 상기 행동은 상기 노치 필터 파라미터를 조절하는 행동을 포함할 수 있다. 여기서, 노치 필터가 복수로 구성되는 경우, 복수의 노치 필터 중 적어도 하나의 파라미터를 조절하는 것을 포함할 수 있다. The step of updating the artificial neural network (S116) through the reinforcement learning method considering the compensation value is performed by the machine learning unit 1026. The machine learning unit 1026 may update the artificial neural network by applying a reinforcement learning method in consideration of a compensation value. The reinforcement learning method is the characteristic state (
Figure 112018131198264-pat00030
) To select an action having a maximum Q value, and the action may include an action of adjusting the notch filter parameter. Here, when a plurality of notch filters are configured, it may include adjusting at least one parameter of the plurality of notch filters.

노치 필터 파라미터의 설정 완료 여부를 판단하는 단계(S118)은 완료 조건 판단부(1028)에서 수행된다. 완료 조건 판단부(1028)는 파라미터의 설정을 완료하는 조건을 판단하고, 미리 설정된 조건이 만족되는 경우, 파라미터의 설정을 완료하고, 현재 설정된 노치 필터의 파라미터를 노치 필터(140)에 제공할 수 있다. 완료 조건 판단부(1028)은 완료 조건을 판단하기 위하여 기게 학습부(1024)의 학습 시간, 상기 보상값(

Figure 112018131198264-pat00031
) 또는 네트워크 저장부(1020)의 업데이트 횟수를 고려할 수 있다. 또한, 완료 조건 판단부(1028)는 완료 조건을 판단하기 위하여 기계 학습부(1026)의 학습 시간, 보상값(
Figure 112018131198264-pat00032
) 또는 네트워크 저장부(1020)의 업데이트 횟수를 저장하는 메모리를 더 포함할 수 있다. 완료 조건 판단부(1028)에서 파라미터 설정이 완료되지 않은 것으로 판단되는 경우, 상술한 과정이 반복될 수 있다. 즉, 현재 설정된 파라미터를 도출하기 위한 Q 함수를 다시 도출할 수 있으며, 파라미터 업데이트부(1022)는 다시 도출된 Q 함수를 이용하여 노치 필터 파라미터를 업데이트 할 수 있다. 보상 계산부(1024)는 현재 입력받은 노치 필터 파라미터를 바탕으로 보상값(
Figure 112018131198264-pat00033
)을 다시 계산할 수 있다. 기계 학습부(1026)는 제공받은 보상값(
Figure 112018131198264-pat00034
), Q 함수, 설정된 파라미터를 학습하고, 인공신경망을 업데이트할 수 있다. 기계 학습부(1026)는, 인공신경망을 업데이트하기 위하여 경사 하강법(gradient descent) 혹은 경사 하강법의 변형 방법을 적용할 수도 있다.The step of determining whether the setting of the notch filter parameter is completed (S118) is performed by the completion condition determining unit 1028. The completion condition determination unit 1028 may determine a condition for completing the parameter setting, and if a preset condition is satisfied, complete the parameter setting and provide the currently set notch filter parameter to the notch filter 140. have. In order to determine the completion condition, the completion condition determination unit 1028 includes a learning time of the learning unit 1024 and the compensation value (
Figure 112018131198264-pat00031
) Or the number of updates of the network storage unit 1020 may be considered. In addition, the completion condition determination unit 1028 includes a learning time and a compensation value of the machine learning unit 1026 in order to determine the completion condition.
Figure 112018131198264-pat00032
) Or a memory for storing the number of updates of the network storage unit 1020 may be further included. If the completion condition determination unit 1028 determines that the parameter setting has not been completed, the above-described process may be repeated. That is, the Q function for deriving the currently set parameter may be derived again, and the parameter update unit 1022 may update the notch filter parameter by using the derived Q function. The compensation calculation unit 1024 is based on the currently input notch filter parameter.
Figure 112018131198264-pat00033
) Can be recalculated. The machine learning unit 1026 receives the provided compensation value (
Figure 112018131198264-pat00034
), Q function, and set parameters, and update the artificial neural network. The machine learning unit 1026 may apply a gradient descent method or a transformation method of the gradient descent method to update the artificial neural network.

이상에서 설명한 실시예들에 따른 노치 필터의 파라미터 설정방법에 의한 동작은, 적어도 부분적으로 컴퓨터 프로그램으로 구현되고 컴퓨터로 읽을 수 있는 기록매체에 기록될 수 있다. 실시예들에 따른 노치 필터의 파라미터 설정방법에 의한 동작을 구현하기 위한 프로그램이 기록되고 컴퓨터가 읽을 수 있는 기록매체는 컴퓨터에 의하여 읽혀질 수 있는 데이터가 저장되는 모든 종류의 기록장치를 포함한다. 컴퓨터가 읽을 수 있는 기록매체의 예로는 ROM, RAM, CD-ROM, 자기 테이프, 플로피디스크, 광 데이터 저장장치 등이 있다. 또한 컴퓨터가 읽을 수 있는 기록매체는 네트워크로 연결된 컴퓨터 시스템에 분산되어, 분산 방식으로 컴퓨터가 읽을 수 있는 코드가 저장되고 실행될 수도 있다. 또한, 본 실시예를 구현하기 위한 기능적인 프로그램, 코드 및 코드 세그먼트(segment)들은 본 실시예가 속하는 기술 분야의 통상의 기술자에 의해 용이하게 이해될 수 있을 것이다.The operation by the parameter setting method of the notch filter according to the embodiments described above may be implemented at least partially as a computer program and recorded on a computer-readable recording medium. A computer-readable recording medium in which a program for implementing an operation according to the parameter setting method of a notch filter according to the embodiments is recorded and includes all types of recording devices in which data that can be read by a computer is stored. Examples of computer-readable recording media include ROM, RAM, CD-ROM, magnetic tapes, floppy disks, and optical data storage devices. In addition, the computer-readable recording medium may be distributed over a computer system connected through a network, and computer-readable codes may be stored and executed in a distributed manner. In addition, functional programs, codes, and code segments for implementing this embodiment may be easily understood by those skilled in the art to which this embodiment belongs.

이상에서는 실시예들을 참조하여 설명하였지만 본 발명은 이러한 실시예들 또는 도면에 의해 한정되는 것으로 해석되어서는 안 되며, 해당 기술 분야의 숙련된 당업자는 하기의 특허 청구 범위에 기재된 본 발명의 사상 및 영역으로부터 벗어나지 않는 범위 내에서 본 발명을 다양하게 수정 및 변경시킬 수 있음을 이해할 수 있을 것이다.Although the above has been described with reference to the embodiments, the present invention should not be construed as being limited by these embodiments or drawings, and those skilled in the art will have the spirit and scope of the present invention described in the following claims. It will be understood that various modifications and changes can be made to the present invention within the range not departing from.

10: 서보 시스템
100: 파라미터 설정 장치
101: 데이터 전처리부
102: 파라미터 설정부
1020: 네트워크 저장부
1022: 파라미터 업데이트부
1024: 보상 계산부
1026: 기계 학습부
1028: 완료 조건 판단부
110: 제어기
120: 제어 대상
130: 엔코더
140: 노치 필터
10: servo system
100: parameter setting device
101: data preprocessor
102: parameter setting unit
1020: network storage
1022: parameter update unit
1024: compensation calculation unit
1026: Machine Learning Department
1028: Completion condition determination unit
110: controller
120: control target
130: encoder
140: notch filter

Claims (11)

제어기, 제어 대상 및 상기 제어기와 상기 제어 대상 사이에 위치하여 상기 제어기의 제어 신호의 공진 성분을 제거하는 노치 필터를 포함하는 서보 시스템에 적용되는 노치필터 파라미터 설정 장치로서,
상기 제어 대상에 입력되는 입력 신호, 상기 제어 대상에서 출력되는 출력 신호 및 상기 제어기의 파라미터를 수신하고, 상기 입력 신호, 상기 출력 신호 및 상기 제어기의 파라미터를 기초로 상기 서보 시스템의 주파수 응답을 계산하여 전처리된 데이터를 생성하는 데이터 전처리부; 및
상기 전처리된 데이터를 이용하여 강화 학습 기반의 인공 신경망을 통해 노치 필터 파라미터를 설정하는 파라미터 설정부를 포함하고,
상기 파라미터 설정부는,
상기 전처리된 데이터를 입력받아 상기 노치 필터 파라미터를 업데이트 하기위한 Q 값을 출력하고, 상기 Q 값을 결정하는 Q 함수를 추정하는 인공 신경망으로 구성된 네트워크 저장부;
상기 네트워크 저장부로부터 제공된 Q 값을 바탕으로 노치 필터 파라미터를 업데이트하는 파라미터 업데이트부;
상기 파라미터 업데이트부에서 제공된 상기 노치 필터 파라미터를 바탕으로 보상값을 계산하는 보상 계산부;
상기 보상값을 고려한 강화 학습 방법을 통해 상기 인공 신경망을 업데이트하는 기계 학습부; 및
상기 파라미터의 설정을 완료하는 조건을 판단하고, 미리 설정된 조건이 만족되는 경우, 파라미터의 설정을 완료하고, 현재 설정된 노치 필터의 파라미터를 상기 노치 필터에 제공하는 완료 조건 판단부를 포함하며,
상기 노치 필터는 노치 필터 주파수(notch frequency), 노치 필터 깊이(notch depth parameter) 및 노치 필터 너비(notch width parameter)를 상기 노치 필터 파라미터로 포함하며,
상기 강화 학습 방법은 상기 Q 함수가 최대가 되는 행동을 선택하는 것으로, 상기 행동은 상기 노치 필터 주파수, 상기 노치 필터 깊이, 상기 노치 필터 너비 중 적어도 하나를 조절하는 것을 포함하는 것을 특징으로 하는 노치필터 파라미터 설정 장치.
A notch filter parameter setting apparatus applied to a servo system including a controller, a control object, and a notch filter positioned between the controller and the control object to remove a resonance component of a control signal of the controller,
Receives an input signal input to the control object, an output signal output from the control object, and a parameter of the controller, and calculates a frequency response of the servo system based on the input signal, the output signal, and parameters of the controller. A data preprocessor for generating preprocessed data; And
A parameter setting unit that sets a notch filter parameter through an artificial neural network based on reinforcement learning using the preprocessed data,
The parameter setting unit,
A network storage unit configured with an artificial neural network for receiving the preprocessed data, outputting a Q value for updating the notch filter parameter, and estimating a Q function for determining the Q value;
A parameter update unit for updating a notch filter parameter based on a Q value provided from the network storage unit;
A compensation calculation unit that calculates a compensation value based on the notch filter parameter provided by the parameter update unit;
A machine learning unit that updates the artificial neural network through a reinforcement learning method in consideration of the compensation value; And
A completion condition determination unit determining a condition for completing the setting of the parameter, completing the setting of the parameter when a preset condition is satisfied, and providing a parameter of a currently set notch filter to the notch filter,
The notch filter includes a notch filter frequency, a notch depth parameter, and a notch width parameter as the notch filter parameters,
The reinforcement learning method is to select an action in which the Q function is maximized, and the action comprises adjusting at least one of the notch filter frequency, the notch filter depth, and the notch filter width. Parameter setting device.
삭제delete 삭제delete 삭제delete 제1 항에 있어서,
상기 노치 필터는 상기 서보 시스템에 복수로 구성되며,
상기 노치필터 파라미터 설정 장치는 상기 복수의 노치 필터 각각의 파라미터를 설정하는 것을 특징으로 하는 노치필터 파라미터 설정 장치.
The method of claim 1,
The notch filter is configured in plural in the servo system,
Wherein the notch filter parameter setting device sets parameters of each of the plurality of notch filters.
제어기, 제어 대상 및 상기 제어기와 상기 제어 대상 사이에 위치하여 상기 제어기의 제어 신호의 공진 성분을 제거하는 노치 필터를 포함하는 서보 시스템에 적용되는 노치필터 파라미터 설정 장치의 노치필터 파라미터 설정 방법으로,
상기 제어 대상에 입력되는 입력 신호, 상기 제어 대상에서 출력되는 출력 신호 및 상기 제어기의 파라미터를 수신하고, 상기 입력 신호, 상기 출력 신호 및 상기 제어기의 파라미터를 기초로 상기 서보 시스템의 주파수 응답을 계산하여 전처리된 데이터를 생성하는 단계; 및
상기 전처리된 데이터를 이용하여 강화 학습 기반의 인공 신경망을 통해 노치 필터 파라미터를 설정하는 단계를 포함하고,
상기 노치 필터 파라미터를 설정하는 단계는,
인공 신경망이 상기 전처리된 데이터를 입력받아 Q 값을 출력하는 단계로서, 상기 인공 신경망은 상기 Q 값을 결정하는 Q 함수를 추정하는, 단계;
상기 Q 값을 이용하여 상기 노치 필터 파라미터를 업데이트하는 단계;
상기 노치 필터 파라미터를 바탕으로 보상값을 계산하는 단계;
상기 보상값을 고려한 강화 학습 방법을 통해 상기 인공 신경망을 업데이트하는 단계; 및
상기 노치 필터 파라미터의 설정 완료 여부를 판단하는 단계를 포함하고,
상기 노치 필터 파라미터의 설정 완료 여부를 판단하는 단계는 상기 파라미터의 설정을 완료하는 조건을 판단하고, 미리 설정된 조건이 만족되는 경우, 파라미터의 설정을 완료하고 현재 설정된 노치 필터의 파라미터를 상기 노치 필터에 제공하며,
상기 노치 필터는 노치 필터 주파수(notch frequency), 노치 필터 깊이(notch depth parameter) 및 노치 필터 너비(notch width parameter)를 상기 노치 필터 파라미터로 포함하며,
상기 강화 학습 방법은 상기 Q 함수가 최대가 되는 행동을 선택하는 것으로, 상기 행동은 상기 노치 필터 주파수, 상기 노치 필터 깊이, 상기 노치 필터 너비 중 적어도 하나를 조절하는 것을 포함하는 노치필터 파라미터 설정 방법.
A notch filter parameter setting method of a notch filter parameter setting device applied to a servo system including a controller, a control object, and a notch filter positioned between the controller and the control object to remove a resonance component of a control signal of the controller,
Receives an input signal input to the control object, an output signal output from the control object, and a parameter of the controller, and calculates a frequency response of the servo system based on the input signal, the output signal, and parameters of the controller. Generating preprocessed data; And
And setting a notch filter parameter through an artificial neural network based on reinforcement learning using the preprocessed data,
The step of setting the notch filter parameter,
An artificial neural network receiving the preprocessed data and outputting a Q value, the artificial neural network estimating a Q function that determines the Q value;
Updating the notch filter parameter using the Q value;
Calculating a compensation value based on the notch filter parameter;
Updating the artificial neural network through a reinforcement learning method in consideration of the compensation value; And
Determining whether the setting of the notch filter parameter is complete,
The determining whether the setting of the notch filter parameter is complete may include determining a condition for completing the setting of the parameter, and if a preset condition is satisfied, setting the parameter is completed and the parameter of the currently set notch filter is transferred to the notch filter. And
The notch filter includes a notch filter frequency, a notch depth parameter, and a notch width parameter as the notch filter parameters,
The reinforcement learning method selects an action in which the Q function is maximized, and the action comprises adjusting at least one of the notch filter frequency, the notch filter depth, and the notch filter width.
삭제delete 삭제delete 삭제delete 제6 항에 있어서,
상기 노치 필터는 상기 서보 시스템에 복수로 구성되며,
상기 노치필터 파라미터 설정 장치는 상기 복수의 노치 필터 각각의 파라미터를 설정하는 것을 특징으로 하는 노치필터 파라미터 설정 방법.
The method of claim 6,
The notch filter is configured in plural in the servo system,
The notch filter parameter setting apparatus sets a parameter of each of the plurality of notch filters.
하드웨어와 결합되어 제6항 및 제10항 중 어느 한 항에 따른 노치필터 파라미터 설정 방법을 실행하도록 매체에 저장된 컴퓨터 프로그램.A computer program stored in a medium to be combined with hardware to execute the notch filter parameter setting method according to any one of claims 6 and 10.
KR1020180171017A 2018-12-27 2018-12-27 Device and method for notch filter parameter setting based on AI KR102215752B1 (en)

Priority Applications (1)

Application Number Priority Date Filing Date Title
KR1020180171017A KR102215752B1 (en) 2018-12-27 2018-12-27 Device and method for notch filter parameter setting based on AI

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
KR1020180171017A KR102215752B1 (en) 2018-12-27 2018-12-27 Device and method for notch filter parameter setting based on AI

Publications (2)

Publication Number Publication Date
KR20200080976A KR20200080976A (en) 2020-07-07
KR102215752B1 true KR102215752B1 (en) 2021-02-17

Family

ID=71603414

Family Applications (1)

Application Number Title Priority Date Filing Date
KR1020180171017A KR102215752B1 (en) 2018-12-27 2018-12-27 Device and method for notch filter parameter setting based on AI

Country Status (1)

Country Link
KR (1) KR102215752B1 (en)

Citations (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
KR101757267B1 (en) * 2015-07-02 2017-07-13 서울대학교산학협력단 Apparatus for automatically detecting and suppressing resonance in servo system using adaptive notch filter and method thereof
JP2018195018A (en) * 2017-05-16 2018-12-06 ファナック株式会社 Machine learning apparatus, servo control system, and machine learning method

Family Cites Families (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN105103437B (en) * 2013-03-29 2018-05-15 松下知识产权经营株式会社 The service regulation method of motor drive

Patent Citations (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
KR101757267B1 (en) * 2015-07-02 2017-07-13 서울대학교산학협력단 Apparatus for automatically detecting and suppressing resonance in servo system using adaptive notch filter and method thereof
JP2018195018A (en) * 2017-05-16 2018-12-06 ファナック株式会社 Machine learning apparatus, servo control system, and machine learning method

Also Published As

Publication number Publication date
KR20200080976A (en) 2020-07-07

Similar Documents

Publication Publication Date Title
JP6774637B2 (en) Control device and control method
Prasad et al. Optimal control of nonlinear inverted pendulum system using PID controller and LQR: performance analysis without and with disturbance input
US10895852B2 (en) Controller and machine learning device
JP6514257B2 (en) Machine learning apparatus, servo control apparatus, servo control system, and machine learning method
CN100437396C (en) PID parameter adjustment device
CN100524106C (en) Automatic regulating method and device for electromotor control device
CN108008627B (en) Parallel optimization reinforcement learning self-adaptive PID control method
KR101849464B1 (en) Automatic Tuning Method for PID controllers
US11009837B2 (en) Machine learning device that adjusts controller gain in a servo control apparatus
KR102114068B1 (en) Computed-torque based controller, and its parameter determination and performance analysis methods
Lawrence et al. Optimal pid and antiwindup control design as a reinforcement learning problem
JP4908433B2 (en) Control parameter adjustment method and control parameter adjustment program
KR102520280B1 (en) A method for devising an optimum control policy, training system, control system, computer program and machine-readable storage medium
Jain et al. Quantized controller for a class of uncertain nonlinear systems with dead-zone nonlinearity
KR102215752B1 (en) Device and method for notch filter parameter setting based on AI
CN114193443A (en) Apparatus and method for controlling robot apparatus
Benosman Multi-parametric extremum seeking-based auto-tuning for robust input-output linearization control
Latosiński et al. Discrete time sliding mode controllers with relative degree one and two switching variables
JP4274046B2 (en) Control device, control parameter adjustment device, control parameter adjustment method, program, and recording medium
JP2014191736A (en) Control parameter determination device, method, and program, and controller, and optimization control system
US6163730A (en) Method and control system for changing the state of a plant
Gutman Robust and adaptive control: fidelity or an open relationship?
JP2641855B2 (en) Adaptive control device
KR102240723B1 (en) Controller comprising position predict unit and a control method thereof
EP2778947B1 (en) Sequential deterministic optimization based control system and method

Legal Events

Date Code Title Description
E902 Notification of reason for refusal
E701 Decision to grant or registration of patent right
GRNT Written decision to grant