KR102551659B1 - Method for estimating parameter of mechanical model for servo motor and system for controlling motor with Kalman filter using the same - Google Patents

Method for estimating parameter of mechanical model for servo motor and system for controlling motor with Kalman filter using the same Download PDF

Info

Publication number
KR102551659B1
KR102551659B1 KR1020210103060A KR20210103060A KR102551659B1 KR 102551659 B1 KR102551659 B1 KR 102551659B1 KR 1020210103060 A KR1020210103060 A KR 1020210103060A KR 20210103060 A KR20210103060 A KR 20210103060A KR 102551659 B1 KR102551659 B1 KR 102551659B1
Authority
KR
South Korea
Prior art keywords
motor
speed
mechanical
calculating
torque
Prior art date
Application number
KR1020210103060A
Other languages
Korean (ko)
Other versions
KR20230021322A (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 KR1020210103060A priority Critical patent/KR102551659B1/en
Publication of KR20230021322A publication Critical patent/KR20230021322A/en
Application granted granted Critical
Publication of KR102551659B1 publication Critical patent/KR102551659B1/en

Links

Images

Classifications

    • HELECTRICITY
    • H02GENERATION; CONVERSION OR DISTRIBUTION OF ELECTRIC POWER
    • H02PCONTROL OR REGULATION OF ELECTRIC MOTORS, ELECTRIC GENERATORS OR DYNAMO-ELECTRIC CONVERTERS; CONTROLLING TRANSFORMERS, REACTORS OR CHOKE COILS
    • H02P21/00Arrangements or methods for the control of electric machines by vector control, e.g. by control of field orientation
    • H02P21/13Observer control, e.g. using Luenberger observers or Kalman filters
    • HELECTRICITY
    • H02GENERATION; CONVERSION OR DISTRIBUTION OF ELECTRIC POWER
    • H02PCONTROL OR REGULATION OF ELECTRIC MOTORS, ELECTRIC GENERATORS OR DYNAMO-ELECTRIC CONVERTERS; CONTROLLING TRANSFORMERS, REACTORS OR CHOKE COILS
    • H02P21/00Arrangements or methods for the control of electric machines by vector control, e.g. by control of field orientation
    • H02P21/14Estimation or adaptation of machine parameters, e.g. flux, current or voltage
    • H02P21/18Estimation of position or speed
    • HELECTRICITY
    • H02GENERATION; CONVERSION OR DISTRIBUTION OF ELECTRIC POWER
    • H02PCONTROL OR REGULATION OF ELECTRIC MOTORS, ELECTRIC GENERATORS OR DYNAMO-ELECTRIC CONVERTERS; CONTROLLING TRANSFORMERS, REACTORS OR CHOKE COILS
    • H02P21/00Arrangements or methods for the control of electric machines by vector control, e.g. by control of field orientation
    • H02P21/14Estimation or adaptation of machine parameters, e.g. flux, current or voltage
    • H02P21/20Estimation of torque

Abstract

서보 모터의 기계적 모델에 대한 파라미터 추정 방법 및 이를 이용한 칼만 필터를 구비한 모터 제어 시스템이 제공된다. 본 발명의 일 실시예에 따른 서보 모터의 기계적 모델에 대한 파라미터 추정 방법은 모터와 모터가 연결된 기구부에 대한 기계식에 기초하여 기계적 모델 파라미터를 추정하는 방법에 있어서, 가속도가 0에 수렴하는 저속으로 모터를 구동하면서 모터에서 발생하는 토크를 기반으로 기계적 모델 파라미터 중 정지 마찰계수(C)와 부하 토크(TL)를 산출하는 제1산출 단계; 및 모터를 사다리꼴 형상의 프로파일로 속도 제어하면서 모터에 가해지는 토크(Te), 시각(tk) 및 위치(θk) 데이터를 기반으로 기계적 모델 파라미터 중 관성 모멘트(J)와 운동 마찰계수(B)를 산출하는 제2산출 단계를 포함한다.A parameter estimation method for a mechanical model of a servo motor and a motor control system having a Kalman filter using the method are provided. A method for estimating parameters for a mechanical model of a servo motor according to an embodiment of the present invention is a method for estimating mechanical model parameters based on a mechanical equation for a motor and a mechanical part connected to the motor, wherein the motor is operated at a low speed at which acceleration converges to zero. A first calculation step of calculating a static friction coefficient (C) and a load torque (T L ) among mechanical model parameters based on torque generated by the motor while driving the; And the moment of inertia ( J ) and the coefficient of motion friction ( and a second calculation step of calculating B).

Description

서보 모터의 기계적 모델에 대한 파라미터 추정 방법 및 이를 이용한 칼만 필터를 구비한 모터 제어 시스템{Method for estimating parameter of mechanical model for servo motor and system for controlling motor with Kalman filter using the same} Method for estimating parameter of mechanical model for servo motor and system for controlling motor with Kalman filter using the same}

본 발명은 서보 모터의 기계적 모델에 대한 파라미터 추정 방법 및 이를 이용한 칼만 필터를 구비한 모터 제어 시스템에 관한 것으로, 특히, 공작 기계, 로봇 및 각종 마이크로 광학 장비와 같은 초정밀 제조 장비의 정밀 구동에 사용되는 서보 모터를 제어하는 모터 제어기에 활용될 수 있는 서보 모터의 기계적 모델에 대한 파라미터 추정 방법 및 이를 이용한 칼만 필터를 구비한 모터 제어 시스템에 관한 것이다. The present invention relates to a method for estimating parameters for a mechanical model of a servo motor and a motor control system having a Kalman filter using the method, and in particular, used for precision driving of ultra-precision manufacturing equipment such as machine tools, robots, and various micro-optical equipment. It relates to a parameter estimation method for a mechanical model of a servo motor that can be used in a motor controller that controls a servo motor and a motor control system having a Kalman filter using the same.

대부분의 산업용 장비들은 움직임을 제어하기 위하여 모터와 제어기가 사용된다. 이러한 모터 제어기들은 생산성을 향상시키고 생산 제품의 품질을 균일하게 유지하기 위하여 고속 고정밀 움직임과 신속한 목표 위치 도달을 요구한다. Most industrial equipment uses motors and controllers to control movement. These motor controllers require high-speed, high-precision movement and rapid target position arrival in order to improve productivity and maintain uniform product quality.

모터 제어기는 위치 제어기, 속도 제어기 및 전류 제어기가 직렬로 연결된 구조를 가진다. 각 제어기의 제어 성능을 높이기 위해서는 먼저 피드-포워드 제어기의 모델과 파라미터가 근사해야 하고, 피드백 제어기의 제어 이득을 높여 목표 추종 성능을 높여야 한다. The motor controller has a structure in which a position controller, a speed controller, and a current controller are connected in series. In order to improve the control performance of each controller, the model and parameters of the feed-forward controller must first be approximated, and the control gain of the feedback controller must be increased to increase the target tracking performance.

이때, 제어 이득을 높이기 위해서는 제어 주기를 짧게 하여야 하고, 잡음없는 신호를 피드백해야 한다. 그러나 모터의 엔코더에 의한 속도 계산의 양자화 잡음으로 인하여 속도 제어기의 이득을 높이는 데 한계가 있다.At this time, in order to increase the control gain, the control period should be shortened and a noise-free signal should be fed back. However, there is a limit to increasing the gain of the speed controller due to the quantization noise of the speed calculation by the motor encoder.

빠른 응답을 위해 피드 포워드 제어기를 사용하고, 피드백 신호의 측정 잡음을 줄이기 위해 칼만 필터(Kalman filter)를 사용한다. 이러한 피드 포워드 제어기와 칼만 필터를 사용하려면 모터의 기계적 모델에 대한 파라미터를 되도록 정확히 알고 있어야 한다. A feed forward controller is used for fast response, and a Kalman filter is used to reduce measurement noise of the feedback signal. To use these feed forward controllers and Kalman filters, the parameters of the mechanical model of the motor must be known as accurately as possible.

따라서 서보 모터의 기계적 모델에 대한 파라미터를 정확하게 추정하고 이를 이용한 칼만 필터를 통해 측정 속도의 잡음을 줄이는 방안이 요구되고 있다. Therefore, there is a need for a method of accurately estimating the parameters of the mechanical model of the servo motor and reducing the noise of the measured speed through a Kalman filter using the parameter.

KRKR 10-2005-0012800 10-2005-0012800 AA

상기와 같은 종래 기술의 문제점을 해결하기 위해, 본 발명의 일 실시예는 모터와 모터에 연결되는 기구부에 대한 기계식을 이용하여 기계적 모델에 대한 파라미터를 정확하게 추정할 수 있는 서보 모터의 기계적 모델에 대한 파라미터 추정 방법을 제공하고자 한다. In order to solve the problems of the prior art as described above, an embodiment of the present invention is a mechanical model of a servo motor that can accurately estimate the parameters of the mechanical model using a mechanical formula for a motor and a mechanical part connected to the motor. It is intended to provide a parameter estimation method.

또한, 본 발명의 일 실시예는 추정된 서보 모터의 기계적 모델에 대한 파라미터에 기반한 칼만 필터를 이용하여 측정 속도의 잡음을 줄일 수 있는 모터 제어 시스템을 제공하고자 한다.In addition, an embodiment of the present invention is to provide a motor control system capable of reducing noise of measured speed using a Kalman filter based on parameters of an estimated mechanical model of a servo motor.

위와 같은 과제를 해결하기 위한 본 발명의 일 측면에 따르면, 모터와 상기 모터가 연결된 기구부에 대한 기계식에 기초하여 기계적 모델 파라미터를 추정하는 방법에 있어서, 상기 가속도가 0에 수렴하는 저속으로 상기 모터를 구동하면서 상기 모터에서 발생하는 토크를 기반으로 상기 기계적 모델 파라미터 중 정지 마찰계수(C)와 부하 토크(TL)를 산출하는 제1산출 단계; 및 상기 모터를 사다리꼴 형상의 프로파일로 속도 제어하면서 상기 모터에 가해지는 토크(Te), 시각(tk) 및 위치(θk) 데이터를 기반으로 상기 기계적 모델 파라미터 중 관성 모멘트(J)와 운동 마찰계수(B)를 산출하는 제2산출 단계를 포함하는 서보 모터의 기계적 모델에 대한 파라미터 추정 방법이 제공된다. According to one aspect of the present invention for solving the above problems, in the method of estimating a mechanical model parameter based on a motor and a mechanical formula for a mechanical part to which the motor is connected, the motor is driven at a low speed at which the acceleration converges to zero. a first calculation step of calculating a static friction coefficient (C) and a load torque (T L ) of the mechanical model parameters based on torque generated by the motor while driving; And torque (T e ), time (t k ) and position (θ k ) data applied to the motor while controlling the speed of the motor with a trapezoidal profile. Moment of inertia (J) and motion among the mechanical model parameters A parameter estimation method for a mechanical model of a servo motor including a second calculation step of calculating a friction coefficient (B) is provided.

일 실시예에서, 상기 기계식은 하기의 식일 수 있다 :In one embodiment, the mechanical expression may be:

Figure 112021090424400-pat00001
Figure 112021090424400-pat00001

여기서, Te는 모터가 발생하는 토크, J는 모터 및 기구부의 관성 모멘트, B는 속도에 비례하는 운동 마찰계수, C는 정지 마찰계수, TL은 부하에 의한 토크, ω는 모터의 회전 속도,

Figure 112021090424400-pat00002
는 모터의 회전 가속도.Here, T e is the torque generated by the motor, J is the moment of inertia of the motor and mechanical parts, B is the coefficient of kinetic friction proportional to speed, C is the coefficient of static friction, T L is the torque due to the load, and ω is the rotational speed of the motor ,
Figure 112021090424400-pat00002
is the rotational acceleration of the motor.

일 실시예에서, 상기 제1산출 단계는, 상기 모터를 제1속도(ω1)로 정방향으로 회전시키는 단계; 상기 모터에 흐르는 전류로부터 상기 모터에서 발생하는 제1토크(Te1)를 산출하는 단계; 상기 모터를 상기 제1속도(ω1)와 동일한 제2속도(ω1)로 역방향으로 회전시키는 단계; 상기 모터에 흐르는 전류로부터 상기 모터에서 발생하는 제2토크(Te2)를 산출하는 단계; 및 상기 제1토크(Te1) 및 상기 제2토크(Te2)를 상기 기계식에 대입하여 상기 정지 마찰계수(C)와 상기 부하 토크(TL) 산출하는 단계;를 포함할 수 있다.In one embodiment, the first calculating step may include rotating the motor in a forward direction at a first speed ω 1 ; Calculating a first torque (T e1 ) generated in the motor from the current flowing in the motor; rotating the motor in a reverse direction at a second speed (ω 1 ) equal to the first speed (ω 1 ); Calculating a second torque (T e2 ) generated in the motor from the current flowing through the motor; and calculating the static friction coefficient (C) and the load torque (T L ) by substituting the first torque (T e1 ) and the second torque (T e2 ) into the mechanical equation.

일 실시예에서, 상기 제2산출 단계는, 상기 사다리꼴 형상의 속도 프로파일로 상기 모터를 속도 제어하는 단계; 상기 속도 프로파일의 시작부터 끝까지 일정 주기로 상기 모터에 가해지는 토크(Te), 시각(tk) 및 위치(θk) 데이터를 수집하는 단계; 상기 토크(Te) 및 상기 위치(θk)를 상기 기계식에 대입한 행렬식을 산출하는 단계; 및 상기 행렬식에 대한 최소제곱법으로 상기 관성 모멘트(J)와 상기 운동 마찰계수(B)를 산출하는 단계;를 포함할 수 있다.In one embodiment, the second calculating step may include controlling the speed of the motor with the trapezoidal speed profile; Collecting torque (T e ), time (t k ), and position (θ k ) data applied to the motor at regular intervals from the start to the end of the speed profile; Calculating a determinant by substituting the torque (T e ) and the position (θ k ) into the mechanical equation; and calculating the moment of inertia (J) and the kinetic friction coefficient (B) by a least squares method for the determinant.

일 실시예에서, 상기 속도 프로파일은 속도가 증가하는 구간(T1)과 속도가 감소하는 구간(T3)이 전체 구간(T1+T2+T3)에 비하여 65~75%가 되는 형상을 가질 수 있다. In one embodiment, the speed profile is a shape in which the speed increases section (T 1 ) and the speed decreases section (T 3 ) is 65 to 75% compared to the entire section (T 1 +T 2 +T 3 ) can have

일 실시예에서, 상기 제2산출 단계는, 모든 시간에 대하여, 최근 3개 데이터를 기반으로 위치(θk)에 대한 2차 회귀식을 산출하는 단계; 및 상기 3개의 데이터 중 중간점에서 미분하여 각 위치(θk)에 대한 속도(ωk)를 산출하는 단계;를 더 포함하고, 상기 산출된 각 위치(θk)에 대한 속도(ωk)를 상기 행렬식에 대입할 수 있다.In one embodiment, the second calculation step may include calculating a quadratic regression equation for a position (θ k ) based on three recent data at all times; And calculating the speed (ω k ) for each position (θ k ) by differentiating at the midpoint among the three data; further comprising, the calculated speed (ω k ) for each position (θ k ) can be substituted into the determinant.

일 실시예에서, 상기 행렬식을 산출하는 단계는 상기 기계식을 상기 관성 모멘트(J)와 상기 운동 마찰계수(B)에 대한 식으로 변형한 후 적분한 식에 상기 토크(Te), 상기 위치(θk) 및 각 위치(θk)에 대한 속도(ωk)를 대입하여 상기 행렬식을 산출할 수 있다.In one embodiment, the step of calculating the determinant is the torque (T e ), the position ( The determinant can be calculated by substituting θ k ) and the velocity ω k for each position θ k .

일 실시예에서, 상기 행렬식은 하기의 식으로 산출될 수 있다.In one embodiment, the determinant may be calculated as the following equation.

Figure 112021090424400-pat00003
Figure 112021090424400-pat00003

일 실시예에서, 상기 행렬식은 무어-펜로즈 유사역행렬(Moore-Penrose pseudoinverse)로 연산될 수 있다.In one embodiment, the determinant may be operated as a Moore-Penrose pseudoinverse.

일 실시예에서, 상기 제2산출 단계는, 상기 관성 모멘트(J)와 상기 운동 마찰계수(B)를 n회 산출하는 단계; 상기 산출값을 평균하여 오차가 가장 큰 값을 제거하는 제1제거 단계; 상기 제1단계 이후에 남은 값을 평균하여 오차가 가장 작은 값을 제거하는 제2제거 단계; 상기 제1제거 단계 및 상기 제2제거 단계를 m번 반복하는 단계; 및 상기 반복하는 단계 이후에 남은 값을 평균하여 상기 관성 모멘트(J)와 상기 운동 마찰계수(B)의 최종값을 산출하는 단계;를 더 포함할 수 있다.In one embodiment, the second calculating step may include calculating the moment of inertia (J) and the kinetic friction coefficient (B) n times; a first elimination step of averaging the calculated values and removing a value having the largest error; a second elimination step of averaging the remaining values after the first step and removing a value having the smallest error; repeating the first removing step and the second removing step m times; and calculating final values of the moment of inertia (J) and the coefficient of kinetic friction (B) by averaging the remaining values after the repeating step.

본 발명의 다른 측면에 따르면, 상술한 바와 같은 방법으로 추정된 서보 모터의 기계적 모델에 대한 파라미터를 이용하는 칼만 필터를 구비한 제어시스템으로서, 상기 칼만 필터는 상기 모터의 속도를 추정하되, 예측 모델로서 상기 기계식 및 상기 기계적 모델 파라미터를 이용하여 상기 모터의 속도 추정하는 칼만 필터를 구비한 모터 제어 시스템이 제공된다. According to another aspect of the present invention, a control system having a Kalman filter using parameters of a mechanical model of a servo motor estimated by the method described above, wherein the Kalman filter estimates the speed of the motor, as a predictive model A motor control system having a Kalman filter for estimating the speed of the motor using the mechanical and mechanical model parameters is provided.

본 발명의 일 실시예에 따른 서보 모터의 기계적 모델에 대한 파라미터 추정 방법 및 이를 이용한 칼만 필터를 구비한 모터 제어 시스템은 기계적 모델에 대한 파라미터를 정확하게 추정함으로써, 피드 포워드 제어기에 의해 제어 응답성을 높이고 칼만 필터를 이용하여 속도의 잡음을 경감할 수 있다. A method for estimating parameters for a mechanical model of a servo motor and a motor control system having a Kalman filter using the same according to an embodiment of the present invention accurately estimates parameters for a mechanical model, thereby increasing control responsiveness by a feed forward controller Velocity noise can be reduced by using a Kalman filter.

또한, 본 발명의 일 실시예에 따른 서보 모터의 기계적 모델에 대한 파라미터 추정 방법 및 이를 이용한 칼만 필터를 구비한 모터 제어 시스템은 서보 모터 제어에 있어서 빠른 목표 추종 성능을 담보할 수 있으며, 서보 모터의 진동 및 소음을 감소시킬 수 있다. In addition, a parameter estimation method for a mechanical model of a servo motor and a motor control system having a Kalman filter using the same according to an embodiment of the present invention can secure fast target following performance in servo motor control, and Vibration and noise can be reduced.

도 1은 서보 모터의 제어 시스템을 나타낸 블록도이다.
도 2는 본 발명의 일 실시예에 따른 서보 모터의 기계적 모델에 대한 파라미터 추정 방법을 나타낸 순서도이다.
도 3은 본 발명의 일 실시예에 따른 서보 모터의 기계적 모델에 대한 파라미터 추정 방법에서 정지 마찰계수(C) 및 부하 토크(TL)를 산출하는 절차를 나타낸 순서도이다.
도 4는 본 발명의 일 실시예에 따른 서보 모터의 기계적 모델에 대한 파라미터 추정 방법에서 관성 모멘트(J) 및 운동 마찰계수(B)를 산출하는 절차를 나타낸 순서도이다.
도 5는 본 발명의 일 실시예에 따른 서보 모터의 기계적 모델에 대한 파라미터 추정 방법에서 속도 프로파일의 일 예를 나타낸 그래프이다.
도 6은 본 발명의 일 실시예에 따른 서보 모터의 기계적 모델에 대한 파라미터 추정 방법에서 속도 추정을 설명하기 위한 도면이다.
도 7은 본 발명의 일 실시예에 따른 서보 모터의 기계적 모델에 대한 파라미터 추정 방법에서 정지 관성 모멘트(J) 및 운동 마찰계수(B)의 최종값을 산출하는 절차를 나타낸 순서도이다.
도 8은 본 발명의 일 실시예에 따른 서보 모터의 기계적 모델에 대한 파라미터 추정 방법에 의해 추정된 기계적 모델 파라미터를 이용하는 칼만 필터를 구비한 제어 시스템을 나타낸 블록도이다.
도 9는 도 8의 칼만 필터의 동작을 나타낸 도면이다.
도 10은 본 발명의 일 실시예에 따른 칼만 필터를 구비한 제어 시스템과 종래의 제어 시스템의 속도 추정 성능의 일 예를 나타낸 그래프이다.
도 11은 본 발명의 일 실시예에 따른 칼만 필터를 구비한 제어 시스템과 종래의 제어 시스템의 속도 추정 성능의 다른 예를 나타낸 그래프이다.
1 is a block diagram showing a control system of a servo motor.
2 is a flowchart illustrating a parameter estimation method for a mechanical model of a servo motor according to an embodiment of the present invention.
3 is a flowchart illustrating a procedure for calculating a static friction coefficient (C) and a load torque (T L ) in a parameter estimation method for a mechanical model of a servo motor according to an embodiment of the present invention.
4 is a flowchart illustrating a procedure for calculating a moment of inertia (J) and a coefficient of kinetic friction (B) in a parameter estimation method for a mechanical model of a servo motor according to an embodiment of the present invention.
5 is a graph showing an example of a speed profile in a parameter estimation method for a mechanical model of a servo motor according to an embodiment of the present invention.
6 is a diagram for explaining speed estimation in a parameter estimation method for a mechanical model of a servo motor according to an embodiment of the present invention.
7 is a flowchart illustrating a procedure for calculating final values of a static moment of inertia (J) and a coefficient of motion friction (B) in a parameter estimation method for a mechanical model of a servo motor according to an embodiment of the present invention.
8 is a block diagram illustrating a control system having a Kalman filter using mechanical model parameters estimated by a parameter estimation method for a mechanical model of a servo motor according to an embodiment of the present invention.
9 is a diagram illustrating the operation of the Kalman filter of FIG. 8 .
10 is a graph showing an example of speed estimation performance of a control system having a Kalman filter according to an embodiment of the present invention and a conventional control system.
11 is a graph showing another example of speed estimation performance of a control system having a Kalman filter according to an embodiment of the present invention and a conventional control system.

이하, 첨부한 도면을 참고로 하여 본 발명의 일 실시예에 대하여 본 발명이 속하는 기술분야에서 통상의 지식을 가진 자가 용이하게 실시할 수 있도록 상세히 설명한다. 본 발명은 여러 가지 상이한 형태로 구현될 수 있으며 여기에서 설명하는 실시예에 한정되지 않는다. 도면에서 본 발명을 명확하게 설명하기 위해서 설명과 관계없는 부분은 생략하였으며, 명세서 전체를 통하여 동일 또는 유사한 구성요소에 대해서는 동일한 참조부호를 붙였다.Hereinafter, with reference to the accompanying drawings, an embodiment of the present invention will be described in detail so that those skilled in the art can easily practice it. This invention may be embodied in many different forms and is not limited to the embodiments set forth herein. In order to clearly describe the present invention in the drawings, parts irrelevant to the description are omitted, and the same reference numerals are assigned to the same or similar components throughout the specification.

이하에서는 도면을 참조하여 본 발명의 일 실시예에 따른 서보 모터의 기계적 모델에 대한 파라미터 추정 방법을 보다 상세히 설명하도록 한다. Hereinafter, a parameter estimation method for a mechanical model of a servo motor according to an embodiment of the present invention will be described in detail with reference to the drawings.

본 발명의 일 실시예에 따른 서보 모터의 기계적 모델에 대한 파라미터 추정 방법은 서보 모터 등의 영구자석 동기모터(Permanent Magnet Synchronous Motor, PMSM)에 대하여 d축과 q축을 분리하여 토크와 자속을 각각 따로 제어하는 자속기준제어(Field Oriented Control, FOC) 시스템에서의 서보 모터의 기계적 모델에 대한 파라미터 추정에 관한 것이다. A parameter estimation method for a mechanical model of a servo motor according to an embodiment of the present invention separates the d-axis and the q-axis for a Permanent Magnet Synchronous Motor (PMSM) such as a servo motor, and separates the torque and magnetic flux, respectively. It relates to parameter estimation for the mechanical model of servo motors in the field-oriented control (FOC) system that controls them.

도 1은 서보 모터의 제어 시스템을 나타낸 블록도이다. 1 is a block diagram showing a control system of a servo motor.

도 1을 참조하면, 서보 모터 제어 시스템은 위치 제어기(20), 속도 제어기(40)및 전류 제어기(50)가 직렬로 연결된 캐스케이드 구조를 갖는다.Referring to FIG. 1, the servo motor control system has a cascade structure in which a position controller 20, a speed controller 40, and a current controller 50 are connected in series.

여기서, d축의 전류는 0으로 유지하도록 제어하며, q축의 전류는 모터에 토크를 발생하도록 제어한다. 제어 루프의 제일 안쪽에 d축과 q축 전류 제어기(50)가 있으며, 속도 제어기(40)는 전류 제어기(50)를 포함하고 있으며, 위치 제어기(20)는 속도 제어기(40)와 미분기(60)를 포함하고 있는 구조다. Here, the d-axis current is controlled to be maintained at 0, and the q-axis current is controlled to generate torque in the motor. At the innermost part of the control loop, there are d-axis and q-axis current controllers 50, speed controller 40 includes current controller 50, and position controller 20 includes speed controller 40 and differentiator 60 ) is a structure containing

이때, 모델기반 제어를 위해서는 모터의 기계적 모델과 관련된 파라미터들을 미리 알고 있어야 한다. 또한, 이러한 기계 파라미터들은 PI(Proportional, Integral) 속도 제어기(40)의 이득을 결정하기 위해서도 필요하며, 속도 제어기(40)에 피드백되는 속도의 양자화 잡음을 줄이는 칼만 필터의 설계에도 필요하다. At this time, for model-based control, parameters related to the mechanical model of the motor must be known in advance. In addition, these mechanical parameters are necessary to determine the gain of the PI (Proportional, Integral) speed controller 40 and also to design a Kalman filter that reduces quantization noise of the speed fed back to the speed controller 40.

그리고 속도 신호의 노이즈를 제거해야 PI 속도 제어기(40)에서 이득을 높일 수 있으며, 피드-포워드 제어기(30)를 구성할 경우, 모델과 파라미터가 정확해야 성능이 보장된다.In addition, the gain of the PI speed controller 40 can be increased only when the noise of the speed signal is removed, and when configuring the feed-forward controller 30, the model and parameters must be accurate to ensure performance.

한편, 관성 모멘트, 마찰계수 및 부하 토크와 같은 기계적 모델 파라미터는 모터(1)에 연결되는 기구부에 따라 달라지기 때문에, 모터(1)가 사용되는 장비에서 항상 새로 찾아야 한다. On the other hand, since mechanical model parameters such as moment of inertia, friction coefficient, and load torque vary depending on the mechanical part connected to the motor 1, they must always be newly found in the equipment in which the motor 1 is used.

이때, 모터와 장비를 포함한 기계식은 다음과 같이 표시된다. At this time, the mechanical formula including the motor and equipment is displayed as follows.

Figure 112021090424400-pat00004
Figure 112021090424400-pat00004

여기서, Te는 모터가 발생하는 토크, J는 모터 및 기구부의 관성 모멘트, B는 속도에 비례하는 운동 마찰계수, C는 정지 마찰계수, TL은 부하에 의한 토크, ω는 모터의 회전 속도,

Figure 112021090424400-pat00005
는 모터의 회전 가속도이다. Here, T e is the torque generated by the motor, J is the moment of inertia of the motor and mechanical parts, B is the coefficient of kinetic friction proportional to speed, C is the coefficient of static friction, T L is the torque due to the load, and ω is the rotational speed of the motor ,
Figure 112021090424400-pat00005
is the rotational acceleration of the motor.

이하, 도 2 내지도 도 7을 참조하여 본 발명의 일 실시예에 따른 서보 모터의 기계적 모델에 대한 파라미터 추정 방법을 설명한다. Hereinafter, a parameter estimation method for a mechanical model of a servo motor according to an embodiment of the present invention will be described with reference to FIGS. 2 to 7 .

도 2는 본 발명의 일 실시예에 따른 서보 모터의 기계적 모델에 대한 파라미터 추정 방법을 나타낸 순서도이다. 2 is a flowchart illustrating a parameter estimation method for a mechanical model of a servo motor according to an embodiment of the present invention.

서보 모터의 기계적 모델에 대한 파라미터 추정 방법(100)은 정지 마찰계수(C) 및 부하 토크(TL)를 산출하는 단계(S110) 및 관성 모멘트(J) 및 운동 마찰계수(B)를 산출하는 단계(S120)를 포함한다.Parameter estimation method 100 for a mechanical model of a servo motor includes calculating a static friction coefficient (C) and a load torque (T L ) (S110) and calculating a moment of inertia (J) and a kinetic friction coefficient (B). Step S120 is included.

보다 상세히 설명하면, 도 2에 도시된 바와 같이, 먼저, 서보 모터의 기계적 모델에 대한 파라미터 추정 방법(100)은 저속으로 모터(1)를 구동하면서 모터(1)에서 발생하는 토크를 기반으로 정지 마찰계수(C) 및 부하 토크(TL)를 산출한다(단계 S110). 이때, 모터(1)를 느린 속도로 천천히 구동할 수 있다. 여기서, 느린 속도는 모터(1)의 가속도가 0에 수렴하는 저속일 수 있다. 이와 같은 구동 조건에서 발생하는 토크를 기초로 수학식 1에 의해, 정지 마찰계수(C) 및 부하 토크(TL)의 기계적 모델 파라미터를 산출할 수 있다.More specifically, as shown in FIG. 2, first, the parameter estimation method 100 for the mechanical model of the servo motor drives the motor 1 at a low speed and stops based on the torque generated by the motor 1. The friction coefficient (C) and the load torque (T L ) are calculated (step S110). At this time, the motor 1 may be slowly driven at a low speed. Here, the low speed may be a low speed at which the acceleration of the motor 1 converges to zero. Mechanical model parameters of the static friction coefficient (C) and the load torque (T L ) may be calculated by Equation 1 based on the torque generated under such driving conditions.

다음으로, 서보 모터의 기계적 모델에 대한 파라미터 추정 방법(100)은 정해진 속도 프로파일에 의해 모터(1)를 속도 제어하면서 모터(1)에 가해지는 토크, 시각 및 위치 데이터를 기반으로 관성 모멘트(J)와 운동 마찰계수(B)를 산출한다(단계 S120). 여기서, 속도 프로파일은 가속 구간, 정속 구간 및 감속 구간이 연이어 구성되는 사다리꼴 형상일 수 있다. 이와 같은 구동 조건에서 발생하는 토크를 기초로 수학식 1에 의해, 관성 모멘트(J) 및 운동 마찰계수(B)의 기계적 모델 파라미터를 산출할 수 있다.Next, the parameter estimation method 100 for the mechanical model of the servo motor controls the speed of the motor 1 by a predetermined speed profile, and the moment of inertia (J ) and the kinetic friction coefficient (B) are calculated (step S120). Here, the velocity profile may have a trapezoidal shape in which an acceleration section, a constant speed section, and a deceleration section are successively configured. Based on the torque generated under such driving conditions, mechanical model parameters of the moment of inertia (J) and the coefficient of kinetic friction (B) may be calculated by Equation 1.

도 3은 본 발명의 일 실시예에 따른 서보 모터의 기계적 모델에 대한 파라미터 추정 방법에서 정지 마찰계수(C) 및 부하 토크(TL)를 산출하는 절차를 나타낸 순서도이다. 3 is a flowchart illustrating a procedure for calculating a static friction coefficient (C) and a load torque (T L ) in a parameter estimation method for a mechanical model of a servo motor according to an embodiment of the present invention.

서보 모터의 기계적 모델에 대한 파라미터 추정 방법에서 정지 마찰계수(C) 및 부하 토크(TL)를 산출하는 절차(110)는 모터(1)를 정방향 회전하면서 모터 발생 토크(Te1)를 산출하는 단계(S111 및 S112), 모터(1)를 역방향 회전하면서 모터 발생 토크(Te2)를 산출하는 단계(S113 및 S114) 및 정지 마찰계수(C) 및 부하 토크(TL)를 산출하는 단계를 포함한다. The procedure 110 for calculating the static friction coefficient (C) and the load torque (T L ) in the parameter estimation method for the mechanical model of the servo motor 110 calculates the motor-generated torque (T e1 ) while rotating the motor 1 in the forward direction. Steps S111 and S112, calculating the motor-generated torque T e2 while rotating the motor 1 in the reverse direction (S113 and S114) and calculating the static friction coefficient C and the load torque T L include

보다 상세히 설명하면, 도 3에 도시된 바와 같이, 먼저, 모터(1)를 제1속도(ω1)로 정방향으로 회전시킨다(단계 S111). 여기서, 제1속도(ω1)는 모터(1)의 회전속도로서 각속도를 의미한다. 이때, 제1속도(ω1)는 이에 대응하는 미분값인 가속도(

Figure 112021090424400-pat00006
)가 0이 되는 아주 느린 속도이다. 일례로, 제1속도(ω1)는 0.0001 ~ 5 rad/s 일 수 있다. More specifically, as shown in FIG. 3 , first, the motor 1 is rotated in the forward direction at a first speed ω 1 (step S111). Here, the first speed ω 1 is the rotational speed of the motor 1 and means an angular speed. At this time, the first velocity (ω 1 ) is the acceleration (
Figure 112021090424400-pat00006
) becomes zero at a very slow rate. For example, the first speed (ω 1 ) may be 0.0001 to 5 rad/s.

다음으로, 모터(1)에 흐르는 전류로부터 모터(1)에서 발생하는 제1토크(Te1)를 산출한다(단계 S112). Next, the first torque T e1 generated in the motor 1 is calculated from the current flowing through the motor 1 (step S112).

다음으로, 모터(1)를 제2속도(ω2)로 역방향으로 회전시킨다(단계 S113). 여기서, 제2속도(ω2)는 제1속도(ω1)와 동일이고 회전방향이 반대이므로 -ω1로 나타날 수 있다. Next, the motor 1 is rotated in the reverse direction at the second speed ω 2 (step S113). Here, since the second speed (ω 2 ) is the same as the first speed (ω 1 ) and the rotation direction is opposite, it can be expressed as -ω 1 .

다음으로, 모터(1)에 흐르는 전류로부터 모터(1)에서 발생하는 제2토크(Te2)를 산출한다(단계 S114). Next, the second torque T e2 generated in the motor 1 is calculated from the current flowing through the motor 1 (step S114).

다음으로, 모터(1)를 정지한 후 상기와 같이 산출된 제1토크(Te1) 및 제2토크(Te2)를 수학식 1에 대입하여 정지 마찰계수(C)와 부하 토크(TL) 산출한다(단계 S115). Next, after the motor 1 is stopped, the first torque (T e1 ) and the second torque (T e2 ) calculated as above are substituted into Equation 1 to obtain a static friction coefficient (C) and a load torque (T L ) is calculated (step S115).

여기서, 모터(1)는 저속의 일정한 속도로 구동할 경우, 가속도(

Figure 112021090424400-pat00007
1,
Figure 112021090424400-pat00008
2)는 0이 되며, 속도(ω1, ω2)도 0에 근사하게 된다. 따라서 수학식 1에서 운동 마찰계수(B) 및 관성 모멘트(J)를 무시할 수 있다. 즉, 수학식 1은 하기의 수학식 2 및 수학식 3과 같이 정리될 수 있다. Here, when the motor 1 is driven at a low speed constant speed, the acceleration (
Figure 112021090424400-pat00007
1 ,
Figure 112021090424400-pat00008
2 ) becomes 0, and the velocity (ω 1 , ω 2 ) also becomes close to 0. Therefore, in Equation 1, the kinetic friction coefficient (B) and the moment of inertia (J) can be ignored. That is, Equation 1 can be arranged as Equation 2 and Equation 3 below.

Figure 112021090424400-pat00009
Figure 112021090424400-pat00009

Figure 112021090424400-pat00010
Figure 112021090424400-pat00010

이와 같이, 정방향으로 모터(1)를 회전할 때 가해준 제1토크(Te1)와 역방향으로 모터(1)를 회전할 때 가해준 제2토크(Te2)로부터 하기의 수학식 4와 같이 정지 마찰계수(C) 및 부하 토크(TL)를 산출할 수 있다.In this way, as shown in Equation 4 below, from the first torque T e1 applied when the motor 1 rotates in the forward direction and the second torque T e2 applied when the motor 1 rotates in the reverse direction Static friction coefficient (C) and load torque (T L ) can be calculated.

Figure 112021090424400-pat00011
Figure 112021090424400-pat00011

한편, 관성 모멘트(J) 및 운동 마찰계수(B)를 산출하기 위해 수학식 1을 하기의 수학식 5와 같이 변환한다. 이때, 상술한 바와 같이, 정지 마찰계수(C)와 부하 토크(TL)가 산출되기 때문에, 구하고자 하는 관성 모멘트(J) 및 운동 마찰계수(B)에 관한 항을 우항에 배치하고, 알려진 상수항을 좌항에 배치하도록 식을 변환할 수 있다.Meanwhile, in order to calculate the moment of inertia (J) and the coefficient of kinetic friction (B), Equation 1 is converted as shown in Equation 5 below. At this time, as described above, since the static friction coefficient (C) and the load torque (T L ) are calculated, the terms related to the moment of inertia (J) and the kinetic friction coefficient (B) to be obtained are placed on the right side, and the known We can transform the expression so that the constant term is placed on the left hand side.

Figure 112021090424400-pat00012
Figure 112021090424400-pat00012

수학식 5를 사용하여 가속도(

Figure 112021090424400-pat00013
)를 구하는 경우, 위치에 대하여 두 번의 미분을 수행해야 한다. 이 경우, 양자화 오차가 너무 크게 작용한다. 이를 방지하기 위해서 수학식 5에서 좌우변을 적분하여 하기의 수학식 6과 같이 정리한다.Using Equation 5, the acceleration (
Figure 112021090424400-pat00013
), two derivatives must be performed with respect to the position. In this case, the quantization error acts too large. In order to prevent this, the left and right sides are integrated in Equation 5 and arranged as in Equation 6 below.

Figure 112021090424400-pat00014
Figure 112021090424400-pat00014

수학식 6에서, 관성 모멘트(J)와 운동 마찰계수(B)에 관한 항은 모터(1)의 구동에 의해 산출 직접 산출할 수 있는 속도(ω)와 위치(θ)의 함수로 변형된다.In Equation 6, the terms related to the moment of inertia (J) and the coefficient of kinetic friction (B) are transformed into functions of the speed (ω) and the position (θ) that can be directly calculated by driving the motor 1.

따라서 모터(1)를 가감속 프로파일을 사용하여 구동하면서 속도(ω)와 위치(θ)에 대한 데이터를 수집하여 이를 기초로 관성 모멘트(J)와 운동 마찰계수(B)를 산출할 수 있다.Therefore, while driving the motor 1 using an acceleration/deceleration profile, data on the velocity ω and position θ may be collected, and the moment of inertia J and the coefficient of motion friction B may be calculated based on the collected data.

도 4는 본 발명의 일 실시예에 따른 서보 모터의 기계적 모델에 대한 파라미터 추정 방법에서 관성 모멘트(J) 및 운동 마찰계수(B)를 산출하는 절차를 나타낸 순서도이고, 도 5는 본 발명의 일 실시예에 따른 서보 모터의 기계적 모델에 대한 파라미터 추정 방법에서 속도 프로파일의 일 예를 나타낸 그래프이며, 도 6은 본 발명의 일 실시예에 따른 서보 모터의 기계적 모델에 대한 파라미터 추정 방법에서 속도 추정을 설명하기 위한 도면이다. 4 is a flowchart illustrating a procedure for calculating a moment of inertia (J) and a coefficient of kinetic friction (B) in a parameter estimation method for a mechanical model of a servo motor according to an embodiment of the present invention, and FIG. A graph showing an example of a velocity profile in a parameter estimation method for a mechanical model of a servo motor according to an embodiment, and FIG. It is a drawing for explanation.

서보 모터의 기계적 모델에 대한 파라미터 추정 방법에서 관성 모멘트(J) 및 운동 마찰계수(B)를 산출하는 절차(120)는 속도 프로파일로 모터(1)를 속도 제어하는 단계(S121), 모터(1)에 가해지는 토크, 시각 및 위치 데이터를 수집하는 단계(S122), 2차 회귀식으로 속도(ωk)를 산출하는 단계(단계 S123 및 S124), 기계식의 행렬식을 산출하는 단계(S125) 및 관성 모멘트(J) 및 운동 마찰계수(B)를 산출하는 단계를 포함한다. The procedure 120 for calculating the moment of inertia (J) and the coefficient of motion friction (B) in the parameter estimation method for the mechanical model of the servo motor is the step of controlling the speed of the motor 1 with a speed profile (S121), the motor 1 ) Collecting torque, time, and position data applied to (S122), calculating speed (ω k ) with a quadratic regression equation (steps S123 and S124), calculating a mechanical determinant (S125), and Calculating the moment of inertia (J) and the coefficient of kinetic friction (B).

보다 상세히 설명하면, 도 4에 도시된 바와 같이, 먼저, 사다리꼴 형상의 속도 프로파일로 모터(1)를 속도 제어한다(단계 S121). 이때, 속도 프로파일 생성부(10)를 통하여 사다리꼴 형상의 속도 프로파일을 속도 명령으로 출력할 수 있다. More specifically, as shown in FIG. 4, first, the speed of the motor 1 is controlled with a trapezoidal speed profile (step S121). At this time, a trapezoidal velocity profile may be output as a velocity command through the velocity profile generating unit 10 .

도 5에 도시된 바와 같이, 사다리꼴 형상의 속도 프로파일은 속도가 증가하는 구간(T1), 속도가 일정한 구간(T2) 및 속도가 감소하는 구간(T3)을 포함할 수 있다. 이때, 관성 모멘트(J)는 모터(1)의 가속도에 비례하는 값이고, 운동 마찰계수(B)는 모터(1)의 속도에 비례하는 값이기 때문에 속도 프로파일은 일정한 가속도가 유지되면서 속도의 변화를 충분히 발생할 수 있도록 설정되어야 한다. As shown in FIG. 5 , the trapezoidal velocity profile may include a section in which the speed increases (T 1 ), a section in which the speed is constant (T 2 ), and a section in which the speed decreases (T 3 ). At this time, since the moment of inertia (J) is a value proportional to the acceleration of the motor 1 and the kinetic friction coefficient (B) is a value proportional to the speed of the motor 1, the speed profile changes in speed while maintaining a constant acceleration. should be set so that it can occur sufficiently.

일례로, 속도가 증가하는 구간(T1)과 속도가 감소하는 구간(T3)은 전체 구간(T1+T2+T3)에 비하여 65~75%로 설정될 수 있다. 바람직하게는 속도가 증가하는 구간(T1)과 속도가 감소하는 구간(T3)은 전체 구간(T1+T2+T3)에 비하여 70%로 설정될 수 있다. 즉, 속도가 증가하는 구간(T1)은 전체 대비 35%, 속도가 일정한 구간(T2)은 전체 대비 30%, 속도가 감소하는 구간(T3)은 전체 대비 35%로 설정될 수 있다.For example, the speed increasing section (T 1 ) and the speed decreasing section (T 3 ) may be set to 65 to 75% compared to the entire section (T 1 +T 2 +T 3 ). Preferably, the section in which the speed increases (T 1 ) and the section in which the speed decreases (T 3 ) may be set to 70% of the entire section (T 1 +T 2 +T 3 ). That is, the section in which the speed increases (T 1 ) is 35% of the total, the section in which the speed is constant (T 2 ) is 30% of the total, and the section in which the speed decreases (T 3 ) can be set to 35% of the total. .

다음으로, 속도 프로파일의 시작부터 끝까지 일정 주기로 모터(1)에 가해지는 토크(Te), 시각(tk) 및 위치(θk) 데이터를 수집한다(단계 S122). 이때, 모터(1)에 가해지는 토크(Te), 시각(tk) 및 위치(θk) 데이터는 1㎳ 주기로 수집될 수 있다. 이와 같이 수집된 데이터는 메모리에 기록될 수 있다. Next, torque (T e ), time (t k ), and position (θ k ) data applied to the motor 1 are collected at regular intervals from the start to the end of the speed profile (step S122). At this time, torque (T e ), time (t k ), and position (θ k ) data applied to the motor 1 may be collected in a 1 ms cycle. Data collected in this way may be recorded in a memory.

이때, 도 6에 도시된 바와 같이, 실제 모터의 회전위치는 연속적으로 변화한다. 하지만, 모터(1)의 엔코더 값은 불연속적인 계단 형태로 변한다. 따라서 위치 값으로서 엔코더 값을 미분하여 속도를 계산하면 엔코더 해상도에 따라 양자화 잡음이 발생한다. 이는 엔코더 해상도가 낮을수록, 즉, 불연속적인 계단의 단차가 클수록 더 큰 양자화 잡음이 발생하는데, 이와 같은 잘못된 속도값의 측정은 연산의 정밀도를 떨어뜨린다. 이를 방지하기 위하여 다음과 같은 과정으로 실제 속도와 유사한 모터(1)의 속도를 측정한다.At this time, as shown in FIG. 6, the rotational position of the actual motor continuously changes. However, the encoder value of the motor 1 changes in the form of a discontinuous step. Therefore, if the speed is calculated by differentiating the encoder value as the position value, quantization noise is generated according to the encoder resolution. This is because the lower the resolution of the encoder, that is, the larger the step difference of the discontinuous step, the larger the quantization noise, and the measurement of such an erroneous speed value reduces the precision of the calculation. To prevent this, the speed of the motor 1 similar to the actual speed is measured in the following process.

먼저, 모든 시간에 대하여, 최근 3개 데이터를 기반으로 위치(θk)에 대한 2차 회귀식을 산출한다(단계 S123). 이때, 세 점을 지나는 2차 회귀식은 하기의 수학식 7과 같이 정의할 수 있다.First, for all times, a quadratic regression equation for the position (θ k ) is calculated based on the last three data (step S123). At this time, the quadratic regression equation passing through the three points can be defined as in Equation 7 below.

Figure 112021090424400-pat00015
Figure 112021090424400-pat00015

위치(θk)에 대한 2차 회귀식을 미분하면 해당 위치(θk)에 대한 속도(ωk)를 알 수 있다. 즉, 위치(θk)에 대한 2차 회귀식의 계수(a, b, c)를 구하면, 그로부터 속도(ωk)를 산출할 수 있다. 이때, 세 점 중에서 중간에 위치된 점(t1)을 미분하여 속도를 산출한다고 가정한다. 이러한 방법은 수백 마이크로 초의 아주 짧은 시간에 모터(1)의 회전 속도가 크게 변하지 않기 때문에 가능하다.By differentiating the quadratic regression equation for the position (θ k ), the velocity (ω k ) for the corresponding position (θ k ) can be obtained. That is, if the coefficients (a, b, c) of the quadratic regression equation for the position (θ k ) are obtained, the velocity (ω k ) can be calculated therefrom. At this time, it is assumed that the speed is calculated by differentiating the point (t 1 ) located in the middle among the three points. This method is possible because the rotational speed of the motor 1 does not change significantly in a very short time of hundreds of microseconds.

이전 단계에서 측정한 바와 같이, 각각의 시각(tk)에서 모터(1)의 엔코더 값인 위치(θk) 중에서 3개의 점을 (t0, θ1), (t1, θ1), (t2, θ2) 이라고 하면, k=1일 때를 기준으로 세 점을 하기의 수학식 8과 같이 변환한다. As measured in the previous step, three points (t 0 , θ 1 ), (t 1 , θ 1 ), ( t 2 , θ 2 ), the three points are converted as shown in Equation 8 below based on k=1.

Figure 112021090424400-pat00016
Figure 112021090424400-pat00016

그리고 세 점을 수학식 7의 2차 회귀식에 대입하여 계수 a, b를 산출하면 하기의 수학식 9와 같다.In addition, when the coefficients a and b are calculated by substituting the three points into the quadratic regression equation of Equation 7, the following Equation 9 is obtained.

Figure 112021090424400-pat00017
Figure 112021090424400-pat00017

다음으로, 3개의 데이터 중 중간점에서 미분하여 각 위치(θk)에 대한 속도(ωk)를 산출한다(단계 S124). 이때, 수학식 7의 2차 회귀식을 미분하면, 하기의 수학식 10과 같다. Next, the velocity (ω k ) for each position (θ k ) is calculated by differentiating at the midpoint among the three data (step S124). At this time, when the quadratic regression equation of Equation 7 is differentiated, the following Equation 10 is obtained.

Figure 112021090424400-pat00018
Figure 112021090424400-pat00018

여기서, k=1일 때의 속도(ω1)는 하기의 수학식 11과 같다. Here, the speed (ω 1 ) when k = 1 is as shown in Equation 11 below.

Figure 112021090424400-pat00019
Figure 112021090424400-pat00019

상술한 바와 같이, 수학식 9에 의해 2차 회귀식의 계수 b 값을 산출하였기 때문에, 수학식 11로부터 위치(θ1)에 대한 속도(ω1)를 산출할 수 있다.As described above, since the value of the coefficient b of the quadratic regression equation was calculated by Equation 9, the velocity ω 1 with respect to the position θ 1 can be calculated from Equation 11.

다음으로, 산출된 토크(Te), 위치(θk) 및 각 위치(θk)에 대한 속도(ωk)를 기계식에 대입한 행렬식을 산출한다(단계 S125). 이때, 수학식 1의 기계식을 관성 모멘트(J)와 운동 마찰계수(B)에 대한 식으로 변형한 후 적분한 수학식 6에 이전에 산출된 토크(Te), 위치(θk) 및 각 위치(θk)에 대한 속도(ωk)를 대입하여 하기의 수학식 12와 같은 행렬식을 산출할 수 있다.Next, a determinant is calculated by substituting the calculated torque (T e ), position (θ k ), and velocity (ω k ) for each position (θ k ) into a mechanical equation (step S125). At this time, the mechanical formula of Equation 1 is transformed into an equation for the moment of inertia (J) and the coefficient of kinetic friction (B), and then the previously calculated torque (T e ), position (θ k ) and angle By substituting the velocity (ω k ) for the position (θ k ), the determinant of Equation 12 below can be calculated.

Figure 112021090424400-pat00020
Figure 112021090424400-pat00020

다음으로, 산출된 행렬식에 대한 최소제곱법으로 관성 모멘트(J)와 운동 마찰계수(B)를 산출한다(단계 S126). 이때, 행렬식에서 A는 정방행렬이 아니기 때문에 하기의 수학식 13과 같이 무어-펜로즈 유사역행렬(Moore-Penrose pseudoinverse)로 x값을 연산할 수 있다.Next, the moment of inertia (J) and the coefficient of kinetic friction (B) are calculated by the least square method for the calculated determinant (step S126). At this time, since A in the determinant is not a square matrix, the x value can be calculated with a Moore-Penrose pseudoinverse as shown in Equation 13 below.

Figure 112021090424400-pat00021
Figure 112021090424400-pat00021

한편, 상술한 바와같은 방법에 의해 관성 모멘트(J)와 운동 마찰계수(B)를 산출할 수 있지만, 이는 한 번의 시험으로 시스템의 기계적 모델 파라미터를 제대로 산출되었다고 보증하기는 어렵다. 따라서 반복적인 시험으로 유사한 값들이 반복적으로 얻어진다면 기계적 모델 파라미터에 대한 신뢰를 가질 수 있다. On the other hand, although the moment of inertia (J) and the coefficient of kinetic friction (B) can be calculated by the method described above, it is difficult to guarantee that the mechanical model parameters of the system are properly calculated in one test. Therefore, if similar values are repeatedly obtained through repeated tests, the mechanical model parameters can be trusted.

이때, 관성 모멘트(J)는 속도의 정확도에 영향을 많이 받는다. 특히, 모터(1)의 엔코더 해상도가 낮을 경우, 위치를 미분한 속도 값에 양자화 잡음이 크게 작용하여 기계적 모델 파라미터의 산출 결과가 부정확한 편이다. 이러한 문제를 극복하기 위하여 다음의 절차에 따라 관성 모멘트(J)와 운동 마찰계수(B)를 결정한다.At this time, the moment of inertia (J) is greatly affected by the accuracy of the speed. In particular, when the resolution of the encoder of the motor 1 is low, quantization noise greatly affects the speed value obtained by differentiating the position, so that the calculation result of the mechanical model parameters is inaccurate. In order to overcome this problem, the moment of inertia (J) and the coefficient of kinetic friction (B) are determined according to the following procedure.

도 7은 본 발명의 일 실시예에 따른 서보 모터의 기계적 모델에 대한 파라미터 추정 방법에서 정지 관성 모멘트(J) 및 운동 마찰계수(B)의 최종값을 산출하는 절차를 나타낸 순서도이다. 7 is a flowchart illustrating a procedure for calculating final values of a static moment of inertia (J) and a coefficient of motion friction (B) in a parameter estimation method for a mechanical model of a servo motor according to an embodiment of the present invention.

서보 모터의 기계적 모델에 대한 파라미터 추정 방법에서 관성 모멘트(J) 및 운동 마찰계수(B)의 최종값을 산출하는 절차(130)는 관성 모멘트(J) 및 운동 마찰계수(B)를 n회 산출하는 단계(S131), 평균 및 오차값의 제거를 m회 반복하는 단계(단계 S132 내지 S134) 및 관성 모멘트(J) 및 운동 마찰계수(B)의 최종값을 산출하는 단계(S135)를 포함한다. In the parameter estimation method for the mechanical model of the servo motor, the procedure 130 for calculating the final values of the moment of inertia (J) and the coefficient of kinetic friction (B) calculates the moment of inertia (J) and the kinetic friction coefficient (B) n times. (S131), repeating the removal of the average and error values m times (steps S132 to S134), and calculating the final values of the moment of inertia (J) and the coefficient of kinetic friction (B) (S135). .

보다 상세히 설명하면, 도 7에 도시된 바와 같이, 먼저, 관성 모멘트(J)와 운동 마찰계수(B)를 n회 산출한다(단계 S131). 이때, 도 4에 도시된 절차에 따라 관성 모멘트(J)와 운동 마찰계수(B)를 n회 산출할 수 있다.More specifically, as shown in FIG. 7, first, the moment of inertia (J) and the coefficient of kinetic friction (B) are calculated n times (step S131). At this time, the moment of inertia (J) and the coefficient of kinetic friction (B) may be calculated n times according to the procedure shown in FIG. 4 .

다음으로, 산출값을 평균하여 오차가 가장 큰 값을 제거한다(단계 S132). 즉, 관성 모멘트(J)와 운동 마찰계수(B) 각각에 대하여 n회 산출값의 평균을 산출한 후 평균과의 오차가 가장 큰 값을 제거한다. Next, the calculated values are averaged to remove the value having the largest error (step S132). That is, after calculating the average of the calculated values n times for each of the moment of inertia (J) and the kinetic friction coefficient (B), the value with the largest error from the average is removed.

다음으로, 이전 단계 이후에 남은 값을 평균하여 오차가 가장 작은 값을 제거한다(단계 S133). 즉, n-1개의 관성 모멘트(J)와 운동 마찰계수(B) 각각에 대하여 평균을 산출한 후 평균과의 오차가 가장 작은 값을 제거한다.Next, the remaining values after the previous step are averaged to remove the value with the smallest error (step S133). That is, after calculating the average for each of the n-1 moments of inertia (J) and the kinetic friction coefficient (B), a value having the smallest error with the average is removed.

다음으로, 오차값의 제거가 m번 반복되었는지를 판단한다(단계 S134). 판단 결과, m번 미만인 경우, 단계 S132로 진행하여 단계 S132 내지 단계 S134를 반복 수행한다. 즉, 단계 S132 및 단계 S133의 오차값 제거 과정을 m회 반복 수행한다.Next, it is determined whether the removal of error values is repeated m times (step S134). As a result of the determination, if the number is less than m, the process proceeds to step S132 and steps S132 to S134 are repeatedly performed. That is, the process of removing error values in steps S132 and S133 is repeated m times.

다음으로, 반복 단계 이후에 남은 값을 평균하여 관성 모멘트(J)와 운동 마찰계수(B)의 최종값을 산출한다(단계 S135). 즉, n-(2*m) 개의 관성 모멘트(J) 및 운동 마찰계수(B) 각각에 대한 평균 값을 최종 값으로 결정할 수 있다.Next, the final values of the moment of inertia (J) and the coefficient of kinetic friction (B) are calculated by averaging the remaining values after the repetition step (step S135). That is, an average value for each of n-(2*m) moments of inertia (J) and kinetic friction coefficient (B) may be determined as a final value.

이에 의해, 본 발명의 일 실시예에 따른 서보 모터의 기계적 모델에 대한 파라미터 추정 방법은 기계적 모델에 대한 파라미터를 정확하게 추정할 수 있으므로 피드 포워드 제어기에 의해 제어 응답성을 높이고 칼만 필터를 이용하여 속도의 잡음을 경감할 수 있다. Accordingly, the parameter estimation method for the mechanical model of the servo motor according to an embodiment of the present invention can accurately estimate the parameters for the mechanical model, thereby increasing control responsiveness by the feed forward controller and increasing the speed of the servo motor by using the Kalman filter. noise can be reduced.

도 8은 본 발명의 일 실시예에 따른 서보 모터의 기계적 모델에 대한 파라미터 추정 방법에 의해 추정된 기계적 모델 파라미터를 이용하는 칼만 필터를 구비한 제어 시스템을 나타낸 블록도이고, 도 9는 도 8의 칼만 필터의 동작을 나타낸 도면이다.8 is a block diagram showing a control system having a Kalman filter using a mechanical model parameter estimated by a parameter estimation method for a mechanical model of a servo motor according to an embodiment of the present invention, and FIG. This diagram shows the operation of the filter.

도 8을 참조하면, 본 발명의 일 실시예에 따른 서보 모터 제어 시스템은 도 1의 서버 모터 제어 시스템의 전류 측정부와 속도 측정부에 칼만 필터(70, 80)를 부가한 것이다. Referring to FIG. 8 , the servo motor control system according to an embodiment of the present invention is obtained by adding Kalman filters 70 and 80 to the current measurement unit and the speed measurement unit of the server motor control system of FIG. 1 .

보다 구체적으로, 전류 칼만 필터(70)는 전류센서에서 측정한 전류로부터 측정 잡음을 제거함으로써 폐루프 전류 제어기(50)의 제어 이득을 높이는 것에 기여한다. More specifically, the current Kalman filter 70 contributes to increasing the control gain of the closed-loop current controller 50 by removing measurement noise from the current measured by the current sensor.

속도 칼만 필터(80)는 모터(1)의 엔코더에서 측정한 위치를 미분한 속도로부터 양자화 잡음을 제거함으로써 폐루프 속도 제어기(40)의 제어 이득을 높이는 것에 기여한다. 여기서, 속도 칼만 필터(80)의 출력은 감쇠기(90)를 거친후 전류 제어기(50)로 입력된다. 이러한 칼만 필터를 사용하기 위해서는 모터(1)의 올바른 기계 파라미터를 사용하여야 한다. 잘못된 기계 파라미터를 사용할 경우 속도 추정값에 오차가 발생하여 제어 성능을 떨어뜨리게 된다.The speed Kalman filter 80 contributes to increasing the control gain of the closed loop speed controller 40 by removing quantization noise from the differential speed of the position measured by the encoder of the motor 1 . Here, the output of the velocity Kalman filter 80 is input to the current controller 50 after passing through the attenuator 90. In order to use such a Kalman filter, correct mechanical parameters of the motor 1 must be used. If the wrong machine parameter is used, an error occurs in the estimated value of the speed, which degrades the control performance.

이러한 오자 발생 및 제어 성능의 하락을 방지하기 위해, 속도 칼만 필터(80)는 상술한 바와 같은 방법에 의해 추정된 서보 모터의 기계적 모델에 대한 파라미터를 이용할 수 있다.In order to prevent such errors from occurring and deterioration of control performance, the speed Kalman filter 80 may use parameters of the mechanical model of the servo motor estimated by the method described above.

이러한 속도 칼만 필터(80)의 동작은 도 9에 도시된 바와 같이 예측(Predict) 및 업데이트(Update) 과정을 반복하면서 수행된다.The operation of the velocity Kalman filter 80 is performed while repeating the process of predicting and updating as shown in FIG. 9 .

이때, 속도 칼만 필터(80)는 하기의 수학식 14와 같이 두 개의 상태 변수로 이루어진 벡터 x를 반복적으로 추정한다. At this time, the velocity Kalman filter 80 repeatedly estimates a vector x consisting of two state variables as shown in Equation 14 below.

Figure 112021090424400-pat00022
Figure 112021090424400-pat00022

여기서, P는 벡터 x에 대한 공분산 행렬이고, ω와 TL에 사용된 hat(^) 기호는 속도 칼만 필터(80)에서 연산된 값의 추정값을 의미하며, 실제 측정 속도와는 서로 구분되어야 한다.Here, P is the covariance matrix for the vector x, and the hat (^) symbol used for ω and T L means the estimated value of the value calculated by the speed Kalman filter 80, and should be distinguished from the actual measured speed. .

속도 칼만 필터(80)는 예측 모델로서, 수학식 1의 기계식 및 기계적 모델 파라미터를 이용한다. 이를 위해, 수학식 1을 하기의 수학식 15와 같이 상태 방정식 형태로 바꾼다. The velocity Kalman filter 80 uses the mechanical and mechanical model parameters of Equation 1 as a predictive model. To this end, Equation 1 is converted into a state equation form as shown in Equation 15 below.

Figure 112021090424400-pat00023
Figure 112021090424400-pat00023

이때, 수학식 15를 속도 칼만 필터(80)의 예측 식의 모양이 되도록 변경한다. At this time, Equation 15 is changed to have the shape of the prediction equation of the velocity Kalman filter 80.

그리고 입력값 u를 사용하여 상태 벡터 x를 하기의 수학식 16으로 연산한다.Then, the state vector x is calculated by Equation 16 below using the input value u.

Figure 112021090424400-pat00024
Figure 112021090424400-pat00024

공분산 행렬 P는 하기의 수학식 17로 연산한다.The covariance matrix P is calculated by Equation 17 below.

Figure 112021090424400-pat00025
Figure 112021090424400-pat00025

여기서, A, W, Q는 하기의 수학식 18과 같다. Here, A, W, and Q are as shown in Equation 18 below.

Figure 112021090424400-pat00026
Figure 112021090424400-pat00026

속도 칼만 필터(80)는 업데이트 모델로서, 상태 벡터 x와 입력값 z 사이의 관계를 이용하며 이는 하기의 수학식 19와 같다. The velocity Kalman filter 80, as an update model, uses the relationship between the state vector x and the input value z, which is shown in Equation 19 below.

Figure 112021090424400-pat00027
Figure 112021090424400-pat00027

여기서, 칼만 이득 K는 하기의 수학식 20과 같이 연산된다. Here, the Kalman gain K is calculated as in Equation 20 below.

Figure 112021090424400-pat00028
Figure 112021090424400-pat00028

이때, 측정값 z로부터 추정값 x를 하기의 수학식 21로 업데이트한다. At this time, the estimated value x is updated from the measured value z to Equation 21 below.

Figure 112021090424400-pat00029
Figure 112021090424400-pat00029

공분산 행렬 P는 하기의 수학식 22로 업데이트한다.The covariance matrix P is updated to Equation 22 below.

Figure 112021090424400-pat00030
Figure 112021090424400-pat00030

이와 같은 속도 칼만 필터(80)를 사용하면 속도의 양자화 잡음을 줄일 수 있다. When such a velocity Kalman filter 80 is used, velocity quantization noise can be reduced.

이에 의해, 본 발명의 일 실시예에 따른 서보 모터의 기계적 모델에 대한 파라미터 추정 방법은 서보 모터 제어에 있어서 빠른 목표 추종 성능을 담보할 수 있으며, 서보 모터의 진동 및 소음을 감소시킬 수 있다. Accordingly, the method for estimating parameters for a mechanical model of a servo motor according to an embodiment of the present invention can ensure fast target following performance in servo motor control, and can reduce vibration and noise of the servo motor.

도 10은 본 발명의 일 실시예에 따른 칼만 필터를 구비한 제어 시스템과 종래의 제어 시스템의 속도 추정 성능의 일 예를 나타낸 그래프이다. 여기서, (a)는 모터(1)를 일정한 속도로 회전하고 있을 때의 속도 그래프이고, (b)는 모터(1)를 가속중일 때의 속도 그래프이며, (c)는 모터(1)를 저속으로 회전할 때의 속도 그래프이다. 도면들에서 녹색 그래프는 모터(1)의 엔코더 값을 미분하여 속도를 연산한 것이고, 청색 그래프는 속도 칼만 필터(80)를 통과한 추정 속도를 나타낸다. 10 is a graph showing an example of speed estimation performance of a control system having a Kalman filter according to an embodiment of the present invention and a conventional control system. Here, (a) is a speed graph when the motor 1 is rotating at a constant speed, (b) is a speed graph when the motor 1 is accelerating, and (c) is a speed graph when the motor 1 is rotated at a low speed. This is the speed graph when rotating with . In the drawings, the green graph represents the speed calculated by differentiating the encoder value of the motor 1, and the blue graph represents the estimated speed passing through the speed Kalman filter 80.

도 10을 참조하면, 모터(1)의 일정 속도로 회전시(a), 녹색 그래프는 0에서 15rpm 사이에서 속도가 변하지만, 파란색 그래프는 약 1에서 4rpm 사이의 값이 된다. 그래프의 변동 폭으로 볼 때, 속도에 대한 양자화 잡음을 약 1/5 수준으로 낮출 수 있음을 알 수 있다. 아울러, 모터(1)의 가속시(b) 및 저속시(c)에도 속도에 대한 양자화 잡음을 일정 수준으로 낮출 수 있음을 알 수 있다. Referring to FIG. 10 , when the motor 1 rotates at a constant speed (a), the green graph changes speed between 0 and 15 rpm, but the blue graph has a value between about 1 and 4 rpm. Looking at the variation width of the graph, it can be seen that the quantization noise for speed can be reduced to about 1/5 level. In addition, it can be seen that the quantization noise for the speed can be reduced to a certain level even when the motor 1 accelerates (b) and at a low speed (c).

이와 같이, 잡음이 줄어든다면 속도 제어기(40)에 더 높은 대역폭의 이득을 설정하여 속도 추종 성능을 향상할 수 있다.In this way, if noise is reduced, speed tracking performance can be improved by setting a gain of a higher bandwidth to the speed controller 40.

도 11은 본 발명의 일 실시예에 따른 칼만 필터를 구비한 제어 시스템과 종래의 제어 시스템의 속도 추정 성능의 다른 예를 나타낸 그래프이다. 여기서, (a)는 모터(1)가 멈추어 있을 때 손으로 모터 축을 잡고 흔든 경우에 부하 토크를 보상하지 않은 경우이고, (b)는 보상한 경우이다. 도면들에서, 적색 그래프는 위치 에러이고, 녹색 그래프는 추정한 부하 토크 값이다. 11 is a graph showing another example of speed estimation performance of a control system having a Kalman filter according to an embodiment of the present invention and a conventional control system. Here, (a) is a case where the load torque is not compensated for when the motor shaft is shaken by hand while the motor 1 is stopped, and (b) is a case where the compensation is made. In the drawings, a red graph is a position error, and a green graph is an estimated load torque value.

도 11을 참조하면, 속도 칼만 필터(80)에서 부하의 토크를 추정하여 피드-포워드 제어기(20)를 통해 부하 토크를 보상한 경우(b)는 부하 토크를 보상하지 않은 경우(a)에 비하여 위치 에러가 크게 줄어든 것을 알 수 있다. Referring to FIG. 11, when the load torque is estimated by the speed Kalman filter 80 and the load torque is compensated through the feed-forward controller 20 (b), compared to the case where the load torque is not compensated (a) It can be seen that the position error is greatly reduced.

이상에서 본 발명의 일 실시예에 대하여 설명하였으나, 본 발명의 사상은 본 명세서에 제시되는 실시예에 제한되지 아니하며, 본 발명의 사상을 이해하는 당업자는 동일한 사상의 범위 내에서, 구성요소의 부가, 변경, 삭제, 추가 등에 의해서 다른 실시예를 용이하게 제안할 수 있을 것이나, 이 또한 본 발명의 사상범위 내에 든다고 할 것이다.Although one embodiment of the present invention has been described above, the spirit of the present invention is not limited to the embodiments presented herein, and those skilled in the art who understand the spirit of the present invention may add elements within the scope of the same spirit. However, it will be possible to easily suggest other embodiments by means of changes, deletions, additions, etc., but this will also be said to fall within the scope of the present invention.

1 : 모터 10 : 속도 프로파일 생성부
20 : 위치 제어기 30 : 피드-포워드 제어기
40 : 속도 제어기 50 : 전류 제어기
60 : 미분기 70 : 전류 칼만 필터
80 : 속도 칼만 필터 90 : 감쇠기
1: motor 10: speed profile generating unit
20: position controller 30: feed-forward controller
40: speed controller 50: current controller
60: differentiator 70: current Kalman filter
80: speed Kalman filter 90: attenuator

Claims (11)

모터와 상기 모터가 연결된 기구부에 대한 기계식에 기초하여 기계적 모델 파라미터를 추정하는 방법에 있어서,
가속도가 0에 수렴하는 저속으로 상기 모터를 구동하면서 상기 모터에서 발생하는 토크를 기반으로 상기 기계적 모델 파라미터 중 정지 마찰계수(C)와 부하 토크(TL)를 산출하는 제1산출 단계; 및
상기 모터를 사다리꼴 형상의 프로파일로 속도 제어하면서 상기 모터에 가해지는 토크(Te), 시각(tk) 및 위치(θk) 데이터를 기반으로 상기 기계적 모델 파라미터 중 관성 모멘트(J)와 운동 마찰계수(B)를 산출하는 제2산출 단계를 포함하고,
상기 기계식은 하기의 식이며,
Figure 112023040180956-pat00045

여기서, Te는 모터가 발생하는 토크, J는 모터 및 기구부의 관성 모멘트, B는 속도에 비례하는 운동 마찰계수, C는 정지 마찰계수, TL은 부하에 의한 토크, ω는 모터의 회전 속도,
Figure 112023040180956-pat00046
는 모터의 회전 가속도이고,
상기 제1산출 단계는,
상기 모터를 제1속도(ω1)로 정방향으로 회전시키는 단계;
상기 모터에 흐르는 전류로부터 상기 모터에서 발생하는 제1토크(Te1)를 산출하는 단계;
상기 모터를 상기 제1속도(ω1)와 동일한 제2속도(ω2)로 역방향으로 회전시키는 단계;
상기 모터에 흐르는 전류로부터 상기 모터에서 발생하는 제2토크(Te2)를 산출하는 단계; 및
상기 제1토크(Te1) 및 상기 제2토크(Te2)를 상기 기계식에 대입하여 상기 정지 마찰계수(C)와 상기 부하 토크(TL) 산출하는 단계;
를 포함하며,
상기 제2속도(ω2)는 - ω1이고,
상기 제2산출 단계는,
상기 사다리꼴 형상의 속도 프로파일로 상기 모터를 속도 제어하는 단계;
상기 속도 프로파일의 시작부터 끝까지 일정 주기로 상기 모터에 가해지는 토크(Te), 시각(tk) 및 위치(θk) 데이터를 수집하는 단계;
상기 토크(Te) 및 상기 위치(θk)를 상기 기계식에 대입한 행렬식을 산출하는 단계; 및
상기 행렬식에 대한 최소제곱법으로 상기 관성 모멘트(J)와 상기 운동 마찰계수(B)를 산출하는 단계;
를 포함하며,
상기 기계식은 상기 관성 모멘트(J)와 상기 운동 마찰계수(B)에 대한 식으로 변형된 후 적분되어 상기 관성 모멘트(J)와 상기 운동 마찰계수(B)에 관한 항은 상기 모터의 구동에 따라 직접 산출되는 속도(ω)와 위치(θ)의 함수로 변형되는 서보 모터의 기계적 모델에 대한 파라미터 추정 방법.
A method for estimating mechanical model parameters based on a mechanical equation for a motor and a mechanical part to which the motor is connected,
a first calculation step of calculating a static friction coefficient (C) and a load torque (T L ) among the mechanical model parameters based on a torque generated by the motor while driving the motor at a low speed at which acceleration converges to 0; and
Moment of inertia (J) and kinetic friction among the mechanical model parameters based on data of torque (T e ), time (t k ) and position (θ k ) applied to the motor while controlling the speed of the motor with a trapezoidal profile A second calculation step of calculating the coefficient B,
The mechanical formula is the following formula,
Figure 112023040180956-pat00045

Here, T e is the torque generated by the motor, J is the moment of inertia of the motor and mechanical parts, B is the coefficient of kinetic friction proportional to speed, C is the coefficient of static friction, T L is the torque due to the load, and ω is the rotational speed of the motor ,
Figure 112023040180956-pat00046
is the rotational acceleration of the motor,
In the first calculation step,
Rotating the motor in a forward direction at a first speed (ω 1 );
Calculating a first torque (T e1 ) generated in the motor from the current flowing in the motor;
rotating the motor in a reverse direction at a second speed (ω 2 ) equal to the first speed (ω 1 );
Calculating a second torque (T e2 ) generated in the motor from the current flowing through the motor; and
calculating the static friction coefficient (C) and the load torque (T L ) by substituting the first torque (T e1 ) and the second torque (T e2 ) into the mechanical formula;
Including,
The second speed (ω 2 ) is -ω 1 ,
In the second calculation step,
controlling the speed of the motor with the trapezoidal speed profile;
Collecting torque (T e ), time (t k ), and position (θ k ) data applied to the motor at regular intervals from the start to the end of the speed profile;
Calculating a determinant by substituting the torque (T e ) and the position (θ k ) into the mechanical equation; and
Calculating the moment of inertia (J) and the kinetic friction coefficient (B) by a least square method for the matrix equation;
Including,
The mechanical equation is transformed into an equation for the moment of inertia (J) and the coefficient of kinetic friction (B), and then integrated, so that the term for the moment of inertia (J) and the kinetic friction coefficient (B) depends on the driving of the motor. A parameter estimation method for a mechanical model of a servo motor that is deformed as a function of directly calculated speed (ω) and position (θ).
삭제delete 삭제delete 삭제delete 제1항에 있어서,
상기 속도 프로파일은 속도가 증가하는 구간(T1)과 속도가 감소하는 구간(T3)이 전체 구간(T1+T2+T3)에 비하여 65~75%가 되는 형상을 갖는 서보 모터의 기계적 모델에 대한 파라미터 추정 방법.
According to claim 1,
The speed profile is a parameter for a mechanical model of a servo motor having a shape in which the speed increasing section (T1) and the speed decreasing section (T3) are 65 to 75% of the entire section (T1+T2+T3). estimation method.
제1항에 있어서,
상기 제2산출 단계는,
모든 시간에 대하여, 최근 3개 데이터를 기반으로 위치(θk)에 대한 2차 회귀식을 산출하는 단계; 및
상기 3개의 데이터 중 중간점에서 미분하여 각 위치(θk)에 대한 속도(ωk)를 산출하는 단계;를 더 포함하고,
상기 산출된 각 위치(θk)에 대한 속도(ωk)를 상기 행렬식에 대입하는 서보 모터의 기계적 모델에 대한 파라미터 추정 방법.
According to claim 1,
In the second calculation step,
For all times, calculating a quadratic regression equation for the position (θ k ) based on the last three data; and
Calculating the speed (ω k ) for each position (θ k ) by differentiating at the midpoint among the three data; further comprising,
A parameter estimation method for a mechanical model of a servo motor in which the calculated speed (ω k ) for each position (θ k ) is substituted into the determinant.
제6항에 있어서,
상기 행렬식을 산출하는 단계는 상기 기계식을 상기 관성 모멘트(J)와 상기 운동 마찰계수(B)에 대한 식으로 변형한 후 적분한 식에 상기 토크(Te), 상기 위치(θk) 및 각 위치(θk)에 대한 속도(ωk)를 대입하여 상기 행렬식을 산출하는 서보 모터의 기계적 모델에 대한 파라미터 추정 방법.
According to claim 6,
Calculating the determinant may include transforming the mechanical equation into an equation for the moment of inertia (J) and the coefficient of kinetic friction (B), and then calculating the torque (T e ), the position (θ k ) and the angle A parameter estimation method for a mechanical model of a servo motor in which the determinant is calculated by substituting the velocity (ω k ) for the position (θ k ).
제7항에 있어서,
상기 행렬식은 하기의 식으로 산출되는 서보 모터의 기계적 모델에 대한 파라미터 추정 방법.
Figure 112021090424400-pat00033
According to claim 7,
The method of estimating parameters for a mechanical model of a servo motor in which the matrix equation is calculated by the following equation.
Figure 112021090424400-pat00033
제8항에 있어서,
상기 행렬식은 무어-펜로즈 유사역행렬(Moore-Penrose pseudoinverse)로 연산되는 서보 모터의 기계적 모델에 대한 파라미터 추정 방법.
According to claim 8,
The method of estimating parameters for a mechanical model of a servo motor in which the determinant is calculated as a Moore-Penrose pseudoinverse.
제6항에 있어서,
상기 제2산출 단계는,
상기 관성 모멘트(J)와 상기 운동 마찰계수(B)를 n회 산출하는 단계;
상기 n회 산출한 값을 평균하여 오차가 가장 큰 값을 제거하는 제1제거 단계;
상기 제1제거 단계 이후에 남은 값을 평균하여 오차가 가장 작은 값을 제거하는 제2제거 단계;
상기 제1제거 단계 및 상기 제2제거 단계를 m번 반복하는 단계; 및
상기 반복하는 단계 이후에 남은 값을 평균하여 상기 관성 모멘트(J)와 상기 운동 마찰계수(B)의 최종값을 산출하는 단계;
를 더 포함하는 서보 모터의 기계적 모델에 대한 파라미터 추정 방법.
According to claim 6,
In the second calculation step,
Calculating the moment of inertia (J) and the kinetic friction coefficient (B) n times;
a first elimination step of averaging the calculated values n times and removing a value having the largest error;
a second elimination step of averaging remaining values after the first elimination step and removing a value having the smallest error;
repeating the first removing step and the second removing step m times; and
Calculating final values of the moment of inertia (J) and the coefficient of kinetic friction (B) by averaging the remaining values after the repeating step;
Parameter estimation method for the mechanical model of the servo motor further comprising.
제1항 및 제5항 내지 제10항 중 어느 한 항에 따른 방법으로 추정된 서보 모터의 기계적 모델에 대한 파라미터를 이용하는 칼만 필터를 구비한 제어시스템으로서,
상기 칼만 필터는 상기 모터의 속도를 추정하되, 예측 모델로서 상기 기계식 및 상기 기계적 모델 파라미터를 이용하여 상기 모터의 속도를 추정하는 칼만 필터를 구비한 모터 제어 시스템.
A control system having a Kalman filter using parameters for a mechanical model of a servo motor estimated by the method according to any one of claims 1 and 5 to 10,
The Kalman filter estimates the speed of the motor, but a motor control system having a Kalman filter for estimating the speed of the motor using the mechanical and mechanical model parameters as a predictive model.
KR1020210103060A 2021-08-05 2021-08-05 Method for estimating parameter of mechanical model for servo motor and system for controlling motor with Kalman filter using the same KR102551659B1 (en)

Priority Applications (1)

Application Number Priority Date Filing Date Title
KR1020210103060A KR102551659B1 (en) 2021-08-05 2021-08-05 Method for estimating parameter of mechanical model for servo motor and system for controlling motor with Kalman filter using the same

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
KR1020210103060A KR102551659B1 (en) 2021-08-05 2021-08-05 Method for estimating parameter of mechanical model for servo motor and system for controlling motor with Kalman filter using the same

Publications (2)

Publication Number Publication Date
KR20230021322A KR20230021322A (en) 2023-02-14
KR102551659B1 true KR102551659B1 (en) 2023-07-05

Family

ID=85220657

Family Applications (1)

Application Number Title Priority Date Filing Date
KR1020210103060A KR102551659B1 (en) 2021-08-05 2021-08-05 Method for estimating parameter of mechanical model for servo motor and system for controlling motor with Kalman filter using the same

Country Status (1)

Country Link
KR (1) KR102551659B1 (en)

Citations (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
KR101744268B1 (en) * 2016-03-07 2017-06-09 한국생산기술연구원 Apparatus and method for estimating velocity of motor
JP2020194375A (en) * 2019-05-29 2020-12-03 富士電機株式会社 Servo system parameter identification method

Family Cites Families (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US6727668B1 (en) 2002-06-19 2004-04-27 Wavecrest Laboratories, Llc Precision brushless motor control utilizing independent phase parameters
CN103563245B (en) * 2011-05-31 2016-02-10 三菱电机株式会社 The part throttle characteristics estimating unit of driving device

Patent Citations (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
KR101744268B1 (en) * 2016-03-07 2017-06-09 한국생산기술연구원 Apparatus and method for estimating velocity of motor
JP2020194375A (en) * 2019-05-29 2020-12-03 富士電機株式会社 Servo system parameter identification method

Also Published As

Publication number Publication date
KR20230021322A (en) 2023-02-14

Similar Documents

Publication Publication Date Title
JP6774637B2 (en) Control device and control method
JP5996127B2 (en) Friction identification method and friction identification apparatus
US6784632B2 (en) Positioning servo controller
KR101489116B1 (en) Load characteristic estimating apparatus for driving machine
TWI716390B (en) Servo motor control device and conflict detection method
US7638965B2 (en) Motor control apparatus
EP0665480A1 (en) Time delay controlled processes
US7030581B1 (en) Motor controller
JP6091523B2 (en) Servo control device
JP2002304219A (en) Motor controller and mechanism characteristic measuring method
JP7272112B2 (en) Servo system parameter identification method
EP3355140B1 (en) Performing position control of a controlled object
US7560890B2 (en) Position controller and controlling method therefor
KR19980018829A (en) SERVOMOTOR CONTROL METHOD
KR102551659B1 (en) Method for estimating parameter of mechanical model for servo motor and system for controlling motor with Kalman filter using the same
Ohno et al. Adaptive cutting force observer for machine tool considering stage parameter variation
JP2016177513A (en) Tandem position control device
CN116339177A (en) Robot control method based on dynamic friction compensation
Wang et al. Speed and load torque estimation of SPMSM based on Kalman filter
JP4078396B2 (en) Positioning control device
JP7132024B2 (en) motor controller
JP6395927B2 (en) Positioning control device
JP4952902B2 (en) Electric motor control device
JP2003047269A (en) Servo controller
GB2273176A (en) Actuator position control.

Legal Events

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