KR102240722B1 - 레퍼런스 재생성부를 포함하는 제어기 및 이의 제어 방법 - Google Patents

레퍼런스 재생성부를 포함하는 제어기 및 이의 제어 방법 Download PDF

Info

Publication number
KR102240722B1
KR102240722B1 KR1020190147788A KR20190147788A KR102240722B1 KR 102240722 B1 KR102240722 B1 KR 102240722B1 KR 1020190147788 A KR1020190147788 A KR 1020190147788A KR 20190147788 A KR20190147788 A KR 20190147788A KR 102240722 B1 KR102240722 B1 KR 102240722B1
Authority
KR
South Korea
Prior art keywords
control
state vector
reference state
input
unit
Prior art date
Application number
KR1020190147788A
Other languages
English (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 KR1020190147788A priority Critical patent/KR102240722B1/ko
Application granted granted Critical
Publication of KR102240722B1 publication Critical patent/KR102240722B1/ko

Links

Images

Classifications

    • GPHYSICS
    • G05CONTROLLING; REGULATING
    • G05BCONTROL OR REGULATING SYSTEMS IN GENERAL; FUNCTIONAL ELEMENTS OF SUCH SYSTEMS; MONITORING OR TESTING ARRANGEMENTS FOR SUCH SYSTEMS OR ELEMENTS
    • G05B11/00Automatic controllers
    • G05B11/01Automatic controllers electric
    • G05B11/36Automatic controllers electric with provision for obtaining particular characteristics, e.g. proportional, integral, differential
    • G05B11/42Automatic controllers electric with provision for obtaining particular characteristics, e.g. proportional, integral, differential for obtaining a characteristic which is both proportional and time-dependent, e.g. P. I., P. I. D.
    • GPHYSICS
    • G05CONTROLLING; REGULATING
    • G05DSYSTEMS FOR CONTROLLING OR REGULATING NON-ELECTRIC VARIABLES
    • G05D3/00Control of position or direction
    • G05D3/12Control of position or direction using feedback

Landscapes

  • Physics & Mathematics (AREA)
  • General Physics & Mathematics (AREA)
  • Engineering & Computer Science (AREA)
  • Automation & Control Theory (AREA)
  • Feedback Control In General (AREA)

Abstract

램프 함수 형태(Ramp-type)의 외란이 존재하는 가변 구조 제어 기반의 서보 시스템에서 제어 대상의 목표 위치에 대한 위치 오차를 감소시킬 수 있는 제어기 및 이의 제어 방법이 제공된다. 제어기는 외부로부터 입력되는 위치 입력과 제어 대상에서 제공되는 위치 피드백을 수신하여 레퍼런스 상태 벡터를 생성하는 레퍼런스 재생성부; 및 상기 레퍼런스 재생성부에서 출력된 레퍼런스 상태 벡터를 입력받아 상기 레퍼런스 상태 벡터를 추종하는 제어를 수행하는 가변 구조 제어부를 포함하되, 상기 레퍼런스 재생성부는 상기 위치 입력과 상기 위치 피드백 출력을 이용하여 상기 제어 대상의 목표 위치에 대한 위치 오차를 감소시키도록 상기 레퍼런스 상태 벡터를 생성하는 것을 특징으로 한다.

Description

레퍼런스 재생성부를 포함하는 제어기 및 이의 제어 방법{Controller comprising reference regeneration unit and a control method thereof}
본 발명은 레퍼런스 재생성부를 포함하는 제어기 및 이의 제어 방법에 관한 것으로, 더욱 상세하게는 외부로부터 입력되는 위치 입력과 부하부로부터 위치 피드백 출력을 제공받아 레퍼런스를 재생성하는 레퍼런스 재생성부를 포함하는 제어기 및 이의 제어 방법에 관한 것이다.
[국가지원 연구개발에 대한 설명]
본 연구는 중소벤처기업부 월드클래스300 (WC300) 사업(스마트머신/협업로봇 유연 대응을 위한 로봇모션 제어 솔루션 개발, 과제 고유번호: S2563339)의 지원에 의하여 이루어진 것이다.
서보 모터 제어 시스템은 입력되는 명령과 플랜트의 엔코더 피드백 출력을 이용하여 제어 전류 입력을 생성하고 엔코더 피드백 값이 원하는 입력 명령을 추종하게 하는 피드백 제어 시스템이다. 가장 널리 쓰이는 피드백 제어 방법은 비례-적분-미분 제어 방법(Proportional-Integral-Derivative control)으로, PID 제어로 불린다. PID 제어 방법은 선형 제어 방법으로, 구현하기 쉽고, 파라미터 튜닝 방법이 직관적이다. 그러나, PID 제어 방법은 모델의 불확실성 (model uncertainty) 및 외란(disturbance) 에 취약한 문제점이 있다.
이를 해결하기 위해 비선형 제어의 일종인 가변 구조 제어 방법(variable structure control)이 제안되었다. 가변 구조 제어 방법은 일정한 외란 크기 범위 내에서도 시스템의 성능 및 안정성이 확보되는 장점을 갖는 강인 제어 방법이다. 가변 구조 제어 방법은 PID 제어 방법보다 성능이 월등히 좋으며, 특히 가변 구조 제어 방법과 외란 보상 기법이 함께 적용될 경우, 외란에 대한 시스템의 안정성이 더 크게 확보되며, 중력처럼 계단 형태의 외란을 효과적으로 보상할 수 있다.
그러나, 점성 마찰처럼 속도 크기에 비례하는 램프 함수 형태(Ramp-type)의 외란이 존재할 경우, 외란에 대한 위치 오차가 존재 하여 목표 위치에서 위치 오버슈트(overshoot)가 발생할 수 있어 제어 성능이 저하되는 문제점이 발생한다. 특히, 가변 구조 제어 방법을 이용하는 제어 시스템에서 램프 함수 형태의 외란이 존재할 때 목표 위치에서 위치 오차를 감소시키는 방법에 대하여는 널리 연구되지 않고 있다.
Y. Eun, et al., "Discrete-time Variable Structure Controller with a Decoupled Disturbance Compensator and Its Application to a CNC Servomechanism," IEEE Trans. on Control Systems Technology, vol.7, no. 4, pp. 414-423, 1999.
본 발명은 상술한 문제점을 해결하기 위해 안출된 것으로, 램프 함수 형태(Ramp-type)의 외란이 존재하는 가변 구조 제어 기반의 서보 시스템에서 제어 대상의 목표 위치에 대한 위치 오차를 감소시킬 수 있는 제어기 및 이의 제어 방법을 제공한다.
본 발명의 일 실시예에 따른 제어기는 외부로부터 입력되는 위치 입력과 제어 대상에서 제공되는 위치 피드백을 수신하여 레퍼런스 상태 벡터를 생성하는 레퍼런스 재생성부; 및 상기 레퍼런스 재생성부에서 출력된 레퍼런스 상태 벡터 및 상기 위치 피드백을 입력받아 상기 레퍼런스 상태 벡터를 추종하는 제어를 수행하는 가변 구조 제어부를 포함하되, 상기 레퍼런스 재생성부는 상기 위치 입력과 상기 위치 피드백 출력을 이용하여 상기 제어 대상의 목표 위치에 대한 위치 오차를 감소시키도록 상기 레퍼런스 상태 벡터를 생성하는 것을 특징으로 한다.
본 발명의 다른 실시예에 다른 제어기의 제어 방법은 레퍼런스 재생성부가, 외부로부터 입력되는 위치 입력과 제어 대상에서 제공되는 위치 피드백을 수신하여 레퍼런스 상태 벡터를 생성하는 단계; 및 가변 구조 제어부가, 상기 레퍼런스 재생성부에서 출력된 레퍼런스 상태 벡터 및 상기 위치 피드백을 입력받아 상기 레퍼런스 상태 벡터를 추종하는 제어를 수행하는 단계를 포함하되, 상기 레퍼런스 상태 벡터를 생성하는 단계는 상기 위치 입력과 상기 위치 피드백 출력을 이용하여 상기 제어 대상의 목표 위치에 대한 위치 오차를 감소시키도록 상기 레퍼런스 상태 벡터를 생성하는 것을 특징으로 한다.
본 발명의 실시예들에 따른 제어기 및 이의 제어 방법은 외부로부터 입력되는 위치 입력과 부하부로부터 위치 피드백 출력을 제공받아 레퍼런스를 재생성하기에, 램프 함수 형태의 외란이 존재하는 경우에서도 제어 입력이 목표 위치에서 위치 오차가 생성되는 것이 방지될 수 있다.
즉, 본 발명의 실시예들에 따른 제어기 및 이의 제어 방법은 정밀한 목표 위치로 제어 대상을 이동시켜 보다 향상된 제어 성능을 제공한다.
도 1은 본 발명의 일 실시예에 따른 제어기가 포함되는 제어 시스템의 블록도이다.
도 2는 본 발명의 일 실시예에 따른 제어기의 블록도이다.
도 3는 예시적인 위치 명령(레퍼런스)을 도시한 그래프이다.
도 4a는 레퍼런스 입력, 레퍼런스 재생성부를 사용하지 않은 종래의 제어기에 도 3의 레퍼런스를 입력한 위치 피드백, 및 레퍼런스 재생성부를 사용한 제어기에 도 3의 레퍼런스를 입력한 위치 피드백을 도시한 그래프이다.
도 4b는 레퍼런스 재생성부를 사용하지 않은 종래의 제어기에 도 3의 레퍼런스를 입력한 제어 입력, 및 레퍼런스 재생성부를 사용한 제어기에 도 3의 레퍼런스를 입력한 제어 입력을 도시한 그래프이다.
도 5는 본 발명의 다른 실시예에 따른 제어기의 제어 방법의 순서도이다.
도 6은 레퍼런스 상태 벡터를 생성하는 단계의 순서도이다.
도 7은 상기 레퍼런스 상태 벡터를 추종하는 제어를 수행하는 단계의 순서도이다.
후술하는 본 발명에 대한 상세한 설명은, 본 발명이 실시될 수 있는 특정 실시예를 예시로서 도시하는 첨부 도면을 참조한다. 이들 실시예는 당업자가 본 발명을 실시할 수 있기에 충분하도록 상세히 설명된다. 본 명세서에서 사용되는 용어는 기능을 고려하면서 가능한 현재 널리 사용되는 일반적인 용어를 선택하였으나, 이는 당 분야에 종사하는 기술자의 의도 또는 관례 또는 새로운 기술의 출현 등에 따라 달라질 수 있다. 또한, 특정한 경우는 출원인이 임의로 결정한 용어도 있으며, 이 경우 해당되는 명세서의 설명 부분에서 그 의미를 기재할 것이다. 따라서 본 명세서에서 사용되는 용어는, 단순한 용어의 명칭이 아닌 그 용어가 가지는 실질적인 의미와 본 명세서의 전반에 걸친 내용을 토대로 해석되어야 한다.
도 1은 본 발명의 일 실시예에 따른 제어기가 포함되는 제어 시스템의 블록도이다. 도 1을 참조하면, 제어 시스템(10)은 제어기(110) 및 부하부(120)를 포함한다.
제어기(110)는 부하부(120)에 포함된 제어 대상(122)을 위한 제어 입력(
Figure 112019118146353-pat00001
)를 발생한다. 제어기(110)에서 발생한 제어 입력(
Figure 112019118146353-pat00002
)는 부하부(120)에 전달된다. 부하부(120)는 전류 제어기(121), 제어 대상(122) 및 엔코더(123)를 포함한다. 먼저, 제어기(110)로부터 전류 제어기(121)로 제어 입력(
Figure 112019118146353-pat00003
)이 전달되면, 전류 제어기(121)는 제어 입력(
Figure 112019118146353-pat00004
)에 상응하는 구동 전류를 제어 대상(122, 또는 부하)에 제공한다. 그리고, 엔코더(123)는 예를 들어, 구동된 제어 대상(122)의 상태를 측정하여 피드백 정보를 제어기(110)에 피드백으로서 제공한다. 제어기(110)는 이후의 서보 모터 제어시 수신된 피드백을 참조한다. 여기서, 피드백 정보는 각변위를 기초로 생성된 위치 피드백일 수 있다. 다만, 이에 한정되는 것은 아니며 제어 대상의 각변위(angular position) 및/또는 각속도(angular velocity)를 기초로 생성된 정보일 수도 있다. 전류 제어기(121), 모터(122) 및 엔코더(123)의 구체적인 구성 및 동작 방법은 당해 기술 분야에 널리 알려져 있으므로, 여기서는 그에 대한 설명은 생략한다.
도 2는 본 발명의 일 실시예에 따른 제어기의 블록도이다. 도 2를 참조하면, 본 발명의 제어기(110)는 가변 구조 제어 기능과 외란 보상 기능을 함께 제공할 수 있는 가변 구조 제어부(111)를 포함할 수 있다. 이와 같이 가변 구조 제어와 외란 보상을 함께 사용할 경우, 중력처럼 계단 형태의 외란을 효과적으로 보상할 수 있으나, 점성 마찰(viscous friction) 처럼 속도 크기에 비례하는 램프 함수 형태(Ramp-type)의 외란이 존재할 경우, 외란에 대한 위치 오차가 존재하여 목표 위치에서 위치 오버슈트(overshoot)가 발생할 수 있어 제어 성능이 저하될 수 있다. 이러한 문제점을 해결하기 위해 본 실시예에 따른 제어기(110)는 레퍼런스 재성성부(112)를 더 포함하며, 목표 위치에서 위치 오차를 감소시킬 수 있다.
여기서, 실시예들에 따른 제어기(110) 및 이를 구성하는 각각의 장치 또는 부(unit)는, 전적으로 하드웨어이거나, 또는 부분적으로 하드웨어이고 부분적으로 소프트웨어인 측면을 가질 수 있다. 예컨대, 본 발명의 제어기(110)의 각각의 구성요소는 하드웨어 및 해당 하드웨어에 의해 구동되는 소프트웨어의 조합을 지칭한다. 하드웨어는 CPU(Central Processing Unit) 또는 다른 프로세서(processor)를 포함하는 데이터 처리 기기일 수 있다. 또한, 하드웨어에 의해 구동되는 소프트웨어는 실행중인 프로세스, 객체(object), 실행파일(executable), 실행 스레드(thread of execution), 프로그램(program) 등을 지칭할 수 있다. 예를 들어, 가변 구조 제어부(111)는, 하드웨어 및 이를 위한 소프트웨어의 조합을 지칭할 수 있다. 또한, 본 명세서에서 제어기(110)를 구성하는 각 부는 반드시 물리적으로 구분되는 별개의 구성요소를 지칭하는 것으로 의도되지 않는다. 즉, 도 2에서 제어기(110)의 각 부는 서로 구분되는 별개의 블록으로 도시되었으나, 이는 제어기(110)를 이에 의해 실행되는 동작에 의해 기능적으로 구분한 것이다. 실시예에 따라서는 전술한 각 부 중 일부 또는 전부가 동일한 하나의 장치 내에 집적화될 수 있으며, 또는 하나 이상의 부가 다른 부와 물리적으로 구분되는 별개의 장치로 구현될 수도 있다. 예컨대, 각각의 부는 분산 컴퓨팅 환경 하에서 서로 통신 가능하게 연결된 컴포넌트들일 수도 있다.
제어기(110)는 하기 수학식 1에 따른 이산 시간 상태 공간 방정식의 시스템 환경에서, 입력받은 레퍼런스(
Figure 112019118146353-pat00005
)를 추종하도록 제어 입력(
Figure 112019118146353-pat00006
)을 생성할 수 있다. 제어기(110)는 가변 구조 제어 방법 중 하나인 이산 시간 슬라이딩 모드(Discrete-time sliding mode control, DSMC) 제어 방법을 적용할 수 있다. 구체적으로, 본 발명의 일 실시예에 따른 제어 시스템(10)은 하기 수학식 1로 표현되는 이산 시간 상태 공간 방정식으로 정의된다.
[수학식 1]
Figure 112019118146353-pat00007
(여기서,
Figure 112019118146353-pat00008
는 상태 변수,
Figure 112019118146353-pat00009
은 위치 피드백,
Figure 112019118146353-pat00010
는 속도 피드백,
Figure 112019118146353-pat00011
는 제어기로부터 제공되는 제어 입력,
Figure 112019118146353-pat00012
는 외란이다.
Figure 112019118146353-pat00013
로 정의되며,
Figure 112019118146353-pat00014
로 정의되고,
Figure 112019118146353-pat00015
는 시스템 관성이고,
Figure 112019118146353-pat00016
는 모터의 토크 상수이며,
Figure 112019118146353-pat00017
는 제어기의 제어 주기에 해당한다.)
레퍼런스 재성성부(112)는 위치 입력(
Figure 112019118146353-pat00018
)과 위치 피드백(
Figure 112019118146353-pat00019
)을 입력받아 목표 위치에 대한 위치 오차를 감소시키도록 레퍼런스 상태 벡터를 생성할 수 있다. 즉, 레퍼런스 재성성부(112)는 단순히 외부로부터 제공되는 위치 입력을 기초로 레퍼런스 상태 벡터를 생성하지 않고, 부하부(120)로부터의 위치 피드백(
Figure 112019118146353-pat00020
)을 이용하여 레퍼런스 상태 벡터를 다시 계산하여 가변 구조 제어부(111)에 제공할 수 있다.
레퍼런스 재성성부(112)는 위치 입력(
Figure 112019118146353-pat00021
)과 위치 피드백(
Figure 112019118146353-pat00022
) 출력을 제공받아 속도 명령(
Figure 112019118146353-pat00023
)을 생성하는 외부 루프 제어부(112A)와 절환 함수 계산부(111A)에 입력되는 레퍼런스 상태 벡터(
Figure 112019118146353-pat00024
)를 계산하는 레퍼런스 계산부(112B)를 포함한다.
구체적으로, 외부 루프 제어부(112A)는 비례 제어(P-controller) 혹은 비례-미분 제어(PD-controller)일 수 있다. 본 설명에서는 비례 제어로 가정하여 설명하나, 본 발명의 범위가 이에 제한되는 것은 아니다. 외부 루프 제어부(112A)는 하기 수학식 2와 같이 속도 명령(
Figure 112019118146353-pat00025
)을 계산한다.
[수학식 2]
Figure 112019118146353-pat00026
(여기서,
Figure 112019118146353-pat00027
는 위치 입력,
Figure 112019118146353-pat00028
는 위치 피드백,
Figure 112019118146353-pat00029
는 비례 제어기의 이득이다.)
레퍼런스 계산부(112B)는 속도 명령(
Figure 112019118146353-pat00030
)을 입력 받아 가변 구조 제어에 입력되는 레퍼런스 상태 벡터(
Figure 112019118146353-pat00031
)를 계산한다. 레퍼런스 계산부(112B)는 레퍼런스 상태 벡터(
Figure 112019118146353-pat00032
)를 하기 수학식 3과 같이 계산한다.
[수학식 3]
Figure 112019118146353-pat00033
(여기서,
Figure 112019118146353-pat00034
는 위치 레퍼런스 상태 벡터를 의미한다.)
레퍼런스 상태 벡터(
Figure 112019118146353-pat00035
)는 위치 레퍼런스 상태 벡터(
Figure 112019118146353-pat00036
)와 속도 레퍼런스 상태 벡터(
Figure 112019118146353-pat00037
)를 포함하며, 위치 레퍼런스 상태 벡터(
Figure 112019118146353-pat00038
)는 하기 수학식 4를 만족한다.
[수학식 4]
Figure 112019118146353-pat00039
즉, 상기 위치 레퍼런스 상태 벡터(
Figure 112019118146353-pat00040
)는 상기 속도 명령(
Figure 112019118146353-pat00041
)을 적분하여 생성된다. 속도 레퍼런스 상태 벡터(
Figure 112019118146353-pat00042
)는 상기 속도 명령과 같은 값을 사용하므로 같은 상기 속도 명령과 같은 기호를 사용하여 후술한다.
계산된 레퍼런스 상태 벡터(
Figure 112019118146353-pat00043
)는 가변 구조 제어부(111)에 출력된다.
가변 구조 제어부(111)는 레퍼런스 재생성부(112)에서 생성된 레퍼런스 상태 벡터(
Figure 112021031873571-pat00044
)를 추종하도록 가변 구조 제어를 수행된다. 가변 구조 제어부(111)는 절환 함수 계산부(111A), 외란 추정부(111B), 제어 입력 계산부(111C)를 포함한다.
구체적으로, 절환 함수 계산부(111A)는 레퍼런스 상태 벡터와 제어 대상의 위치 및 속도 사이의 오차의 함수인 절환 함수를 계산할 수 있다. 절환 함수 계산부(111A)는 상기 레퍼런스 상태 벡터와 상기 제어 대상의 위치 및 속도 사이의 오차의 함수인 절환 함수를 통해 절환 함수 출력(
Figure 112021031873571-pat00045
)을 계산한다. 외란 추정부(111B)는 절환 함수 출력(
Figure 112021031873571-pat00046
)에 기초하여 외란 추정값(
Figure 112021031873571-pat00047
)을 계산할 수 있다. 제어 입력 계산부(111C)는 상기 레퍼런스 상태 벡터(
Figure 112021031873571-pat00048
), 상기 절환 함수 출력(
Figure 112021031873571-pat00049
), 상기 외란 추정값(
Figure 112021031873571-pat00050
), 상기 위치 피드백(
Figure 112021031873571-pat00051
)에 기초하여 제어 입력(
Figure 112021031873571-pat00052
)을 계산할 수 있다.
절환 함수 계산부(111A)에서 출력되는 절환 함수 출력(
Figure 112019118146353-pat00053
)은 하기 수학식 5와 같이 정의된다.
[수학식 5]
Figure 112019118146353-pat00054
(여기서,
Figure 112019118146353-pat00055
는 오차 함수로
Figure 112019118146353-pat00056
으로 정의되고,
Figure 112019118146353-pat00057
는 상태 변수로
Figure 112019118146353-pat00058
로 정의된다.
Figure 112019118146353-pat00059
는 부하부(120)의 엔코더(123)로부터 측정한 위치 값으로,
Figure 112019118146353-pat00060
식을 만족한다.
Figure 112019118146353-pat00061
는 절환함수 관련 파라미터로
Figure 112019118146353-pat00062
이다.)
외란 추정부(111B)에서 생성되는 외란 추정 값(
Figure 112021031873571-pat00063
)은 하기 수학식 6와 같이 정의된다.
[수학식 6]
Figure 112019118146353-pat00064
(여기서,
Figure 112019118146353-pat00065
는 외란 추정 이득,
Figure 112019118146353-pat00066
는 오차 함수(
Figure 112019118146353-pat00067
)가 슬라이딩 면으로 도달하는 속도를 결정하는 파라미터,
Figure 112019118146353-pat00068
는 포화함수의 이득이며,
Figure 112019118146353-pat00069
는 포화함수의 경계를 결정하는 파라미터이다.
Figure 112019118146353-pat00070
은 포화함수로 t가 -1보다 작을 경우 -1의 값 가지고, t가 -1 이상 1 이하일 경우 t의 값을 가지고, t가 1보다 클 경우 1의 값을 가지는 함수이다.)
제어 입력 계산부(111C)는 상기 레퍼런스 상태 벡터(
Figure 112019118146353-pat00071
), 상기 절환 함수 출력(
Figure 112019118146353-pat00072
), 상기 외란 추정값(
Figure 112019118146353-pat00073
), 상기 위치 피드백(
Figure 112019118146353-pat00074
)에 기초하여 제어 입력(
Figure 112019118146353-pat00075
)을 계산하며, 제어 입력(
Figure 112019118146353-pat00076
)은 하기 수학식 7과 같이 정의된다.
[수학식 7]
Figure 112019118146353-pat00077
제어 입력 계산부(111C)는 절환함수 출력(
Figure 112019118146353-pat00078
)을 0으로 만들도록 제어 입력(
Figure 112019118146353-pat00079
)을 생성하여 상태 변수(
Figure 112019118146353-pat00080
)가 레퍼런스 상태 벡터(
Figure 112019118146353-pat00081
)를 추종하도록 한다.
이러한, 레퍼런스 재생성부(112)는 속도 크기에 비례하는 램프 함수 형태의 외란에 대한 정상 상태 오차(steady-state error)를 0으로 만드는 효과를 제공할 수 있다. 이하, 구체적인 실시예를 통해 본 발명의 일 실시예에 따른 제어기(100)의 효과에 대해 보다 상세히 설명하도록 한다.
[실시예]
제어 대상은 리니어 모터로 200W 서보 드라이버를 이용하여 제어된다. 제어기의 제어 주기는 0.125 ms, 제어 대상의 무게는 2.79 kg, 힘 상수 (force constant)는 22.38 N/A이다. 리니어 모터 시스템에서는 앞에서 설정한 파라미터 중 시스템 관성( J )을 제어 대상의 무게, 토크 상수(
Figure 112019118146353-pat00082
)를 힘 상수로 볼 수 있다. 제어기의 각 파라미터는 하기 표 1과 같이 설정되었다.
[표 1]
Figure 112019118146353-pat00083
도 3는 예시적인 위치 명령(레퍼런스)을 도시한 그래프이다. 도 3에서 위치 명령은 count 단위로 인가된다. 상기 리니어 모터에서는 5,000,000 count가 1 m에 해당된다.
도 4a는 레퍼런스 입력(검정색), 레퍼런스 재생성부를 사용하지 않은 종래의 제어기에 도 3의 레퍼런스를 입력한 위치 피드백(빨간색), 및 레퍼런스 재생성부를 사용한 제어기에 도 3의 레퍼런스를 입력한 위치 피드백(파란색)을 도시한 그래프이며, 도 4b는 레퍼런스 재생성부를 사용하지 않은 종래의 제어기에 도 3의 레퍼런스를 입력한 제어 입력(빨간색), 및 레퍼런스 재생성부를 사용한 제어기에 도 3의 레퍼런스를 입력한 제어 입력(파란색)을 도시한 그래프이다.
도 4a 및 도 4b의 결과를 보면 레퍼런스 재생성부를 사용하지 않은 구조는 위치 오버슈트가 발생하는 반면, 레퍼런스 재생성부를 사용한 구조는 위치 오버슈트가 발생하지 않아 목표 위치에 대한 위치 오차가 줄어드는 것을 알 수 있다.
본 발명의 실시예에 따른 제어기는 외부로부터 입력되는 위치 입력과 부하부로부터 위치 피드백 출력을 제공받아 레퍼런스를 재생성하기에, 램프 함수 형태의 외란이 존재하는 경우에서도 제어 입력이 목표 위치에서 위치 오차가 생성되는 것이 방지될 수 있다. 즉, 목표 위치에 대한 오차가 중요한 시스템에 레퍼런스 재생성부가 적용됨으로써 목표 위치에 대한 위치 오차를 효과적으로 줄일 수 있으며, 정밀한 목표 위치로 제어 대상의 이동 및 보다 향상된 제어 성능이 제공될 수 있다.
이하, 본 발명의 다른 실시예에 따른 제어기의 제어 방법에 대해 설명한다. 제어기는 상술한 도 1 내지 도 2의 제어기(110)일 수 있으며, 본 실시예의 설명을 위해 도 1 내지 도 2가 참조될 수 있다.
도 5는 본 발명의 다른 실시예에 따른 제어기의 제어 방법의 순서도이다. 도 6은 레퍼런스 상태 벡터를 생성하는 단계의 순서도이다. 도 7은 상기 레퍼런스 상태 벡터를 추종하는 제어를 수행하는 단계의 순서도이다.
도 5 내지 도 7을 참조하면, 본 발명의 다른 실시예에 따른 제어기의 제어 방법은 외부로부터 입력되는 위치 입력과 제어 대상에서 제공되는 위치 피드백을 수신하여 레퍼런스 상태 벡터를 생성하는 단계(S100); 및 상기 레퍼런스 재생성부에서 출력된 레퍼런스 상태 벡터를 입력받아 상기 레퍼런스 상태 벡터를 추종하는 제어를 수행하는 단계(S200)를 포함하되, 레퍼런스 상태 벡터를 생성하는 단계(S100)는 상기 위치 입력과 상기 위치 피드백 출력을 이용하여 상기 제어 대상의 목표 위치에 대한 위치 오차를 감소시키도록 상기 레퍼런스 상태 벡터를 생성하는 것을 특징으로 한다.
제어기(110)는 상기 수학식 1에 따른 이산 시간 상태 공간 방정식의 시스템 환경에서, 입력받은 레퍼런스 명령(
Figure 112019118146353-pat00084
)을 추종하도록 제어 입력을 생성할 수 있다. 제어기(110)는 가변 구조 제어 방법 중 하나인 이산 시간 슬라이딩 모드(Discrete-time sliding mode control, DSMC) 제어 방법을 적용할 수 있다.
[수학식 1]
Figure 112019118146353-pat00085
(여기서,
Figure 112019118146353-pat00086
는 상태 변수,
Figure 112019118146353-pat00087
은 위치 피드백,
Figure 112019118146353-pat00088
속도 피드백,
Figure 112019118146353-pat00089
는 제어기로부터 제공되는 제어 입력,
Figure 112019118146353-pat00090
는 외란이다.
Figure 112019118146353-pat00091
로 정의되며,
Figure 112019118146353-pat00092
로 정의되고,
Figure 112019118146353-pat00093
는 시스템 관성이고,
Figure 112019118146353-pat00094
는 모터의 토크 상수이며,
Figure 112019118146353-pat00095
는 제어기의 제어 주기에 해당한다.)
먼저, 외부로부터 입력되는 위치 입력과 제어 대상에서 제공되는 위치 피드백을 수신하여 레퍼런스 상태 벡터를 생성한다(S100).
상기 단계(S100)는 레퍼런스 재성성부(112)에서 수행될 수 있다. 레퍼런스 재성성부(112)는 위치 입력(
Figure 112019118146353-pat00096
)과 위치 피드백(
Figure 112019118146353-pat00097
)을 입력받아 목표 위치에 대한 위치 오차를 감소시키도록 레퍼런스 상태 벡터를 생성할 수 있다.
여기서, 상기 단계(S100)는 상기 위치 입력과 위치 피드백을 수신하여 속도 명령을 생성하는 단계(S110); 및 상기 속도 명령에 기초하여 상기 레퍼런스 상태 벡터를 계산하는 단계(S120)를 포함할 수 있다.
또한, 상기 위치 입력과 위치 피드백을 수신하여 속도 명령을 생성하는 단계는(S110), 외부 루프 제어부(112A)에서 수행될 수 있으며, 상기 위치 입력과 상기 위치 피드백의 오차에 응답하여, 비례 제어 또는 비례-미분 제어를 통해 상기 속도 명령을 생성하는 것을 포함할 수 있다. 외부 루프 제어부(112A)는 하기 수학식 2와 같이 속도 명령(
Figure 112019118146353-pat00098
)을 계산한다.
[수학식 2]
Figure 112019118146353-pat00099
(여기서,
Figure 112019118146353-pat00100
는 위치 입력,
Figure 112019118146353-pat00101
는 위치 피드백,
Figure 112019118146353-pat00102
는 비례 제어기의 이득이다.)
상기 속도 명령에 기초하여 상기 레퍼런스 상태 벡터를 계산하는 단계(S120)는 레퍼런스 계산부(112B)에서 수행될 수 있으며, 레퍼런스 계산부(112B)는 레퍼런스 상태 벡터(
Figure 112019118146353-pat00103
)를 하기 수학식 3과 같이 계산할 수 있다.
[수학식 3]
Figure 112019118146353-pat00104
(여기서,
Figure 112019118146353-pat00105
는 위치 레퍼런스 상태 벡터를 의미한다.)
레퍼런스 상태 벡터(
Figure 112019118146353-pat00106
)는 위치 레퍼런스 상태 벡터(
Figure 112019118146353-pat00107
)와 속도 레퍼런스 상태 벡터(
Figure 112019118146353-pat00108
)를 포함하며, 위치 레퍼런스 상태 벡터(
Figure 112019118146353-pat00109
)는 하기 수학식 4를 만족한다.
[수학식 4]
Figure 112019118146353-pat00110
즉, 상기 위치 레퍼런스 상태 벡터(
Figure 112019118146353-pat00111
)는 상기 속도 명령(
Figure 112019118146353-pat00112
)을 적분하여 생성된다.
계산된 레퍼런스 상태 벡터(
Figure 112019118146353-pat00113
)는 가변 구조 제어부(111)에 출력된다.
가변 구조 제어부(111)가, 상기 레퍼런스 재생성부에서 출력된 레퍼런스 상태 벡터를 입력받아 상기 레퍼런스 상태 벡터를 추종하는 제어를 수행한다(S200).
상기 레퍼런스 상태 벡터를 추종하는 제어를 수행하는 단계(S200)는, 상기 레퍼런스 상태 벡터와 상기 제어 대상의 위치 및 속도의 오차의 함수인 절환 함수를 통해 절환 함수 출력을 계산하는 단계(S210); 상기 절환 함수 출력에 기초하여 외란 추정값을 계산하는 단계(S220); 및 상기 레퍼런스 상태 벡터, 상기 절환 함수 출력, 상기 외란 추정값, 상기 위치 피드백에 기초하여 제어 입력을 계산하고, 상기 제어 대상에 제어 입력을 출력하는 단계(S230)를 포함한다.
가변 구조 제어부(111)는 절환 함수 계산부(111A), 외란 추정부(111B), 제어 입력 계산부(111C)를 포함하며, 절환 함수 계산부(111A)는 상기 레퍼런스 상태 벡터와 상기 제어 대상의 위치 및 속도 사이의 오차의 함수인 절환 함수를 통해 절환 함수 출력(
Figure 112021031873571-pat00114
)을 계산한다(S210). 외란 추정부(111B)는 절환 함수 출력(
Figure 112021031873571-pat00115
)에 기초하여 외란 추정값(
Figure 112021031873571-pat00116
)을 계산할 수 있다(S220). 제어 입력 계산부(111C)는 상기 레퍼런스 상태 벡터(
Figure 112021031873571-pat00117
), 상기 절환 함수 출력(
Figure 112021031873571-pat00118
), 상기 외란 추정값(
Figure 112021031873571-pat00119
), 상기 위치 피드백(
Figure 112021031873571-pat00120
)에 기초하여 제어 입력(
Figure 112021031873571-pat00121
)을 계산할 수 있다(S230).
절환 함수 계산부(111A)에서 출력되는 절환 함수 출력(
Figure 112019118146353-pat00122
)은 하기 수학식 5와 같이 정의된다.
[수학식 5]
Figure 112019118146353-pat00123
(여기서,
Figure 112019118146353-pat00124
는 오차 함수로
Figure 112019118146353-pat00125
으로 정의되고,
Figure 112019118146353-pat00126
는 상태 변수로
Figure 112019118146353-pat00127
로 정의된다.
Figure 112019118146353-pat00128
는 부하부(120)의 엔코더(123)로부터 측정한 위치 값으로,
Figure 112019118146353-pat00129
식을 만족한다.
Figure 112019118146353-pat00130
는 절환함수 관련 파라미터로
Figure 112019118146353-pat00131
이다.)
외란 추정부(111B)에서 생성되는 외란 추정 값(
Figure 112021031873571-pat00132
)은 하기 수학식 6와 같이 정의된다.
[수학식 6]
Figure 112019118146353-pat00133
(여기서,
Figure 112019118146353-pat00134
는 외란 추정 이득,
Figure 112019118146353-pat00135
는 오차 함수(
Figure 112019118146353-pat00136
)가 슬라이딩 면으로 도달하는 속도를 결정하는 파라미터,
Figure 112019118146353-pat00137
는 포화함수의 이득이며,
Figure 112019118146353-pat00138
는 포화함수의 경계를 결정하는 파라미터이다.
Figure 112019118146353-pat00139
은 포화함수로 t가 -1보다 작을 경우 -1의 값 가지고, t가 -1 이상 1 이하일 경우 t의 값을 가지고, t가 1보다 클 경우 1의 값을 가지는 함수이다.)
제어 입력 계산부(111C)는 상기 레퍼런스 상태 벡터(
Figure 112019118146353-pat00140
), 상기 절환 함수 출력(
Figure 112019118146353-pat00141
), 상기 외란 추정값(
Figure 112019118146353-pat00142
), 상기 위치 피드백(
Figure 112019118146353-pat00143
)에 기초하여 제어 입력(
Figure 112019118146353-pat00144
)을 계산하며, 제어 입력(
Figure 112019118146353-pat00145
)은 하기 수학식 7과 같이 정의된다.
[수학식 7]
Figure 112019118146353-pat00146
제어 입력 계산부(111C)는 절환함수 출력(
Figure 112019118146353-pat00147
)을 0으로 만들도록 제어 입력(
Figure 112019118146353-pat00148
)을 생성하여 상태 변수(
Figure 112019118146353-pat00149
)가 레퍼런스 상태 벡터(
Figure 112019118146353-pat00150
)를 추종하도록 한다.
본 발명의 실시예에 따른 제어기의 제어 방법은 외부로부터 입력되는 위치 입력과 부하부로부터 위치 피드백 출력을 제공받아 레퍼런스를 재생성하기에, 램프 함수 형태의 외란이 존재하는 경우에서도 제어 입력이 목표 위치에서 위치 오차가 생성되는 것이 방지될 수 있다. 즉, 목표 위치에 대한 오차가 중요한 시스템에 본 실시예에 따른 제어 방법이 적용됨으로써 목표 위치에 대한 위치 오차를 효과적으로 줄일 수 있으며, 정밀한 목표 위치로 제어 대상의 이동 및 보다 향상된 제어 성능이 제공될 수 있다.
이상에서 설명한 실시예들에 따른 제어기의 제어 방법에 의한 동작은, 적어도 부분적으로 컴퓨터 프로그램으로 구현되고 컴퓨터로 읽을 수 있는 기록매체에 기록될 수 있다. 실시예들에 따른 제어기의 제어 방법에 의한 동작을 구현하기 위한 프로그램이 기록되고 컴퓨터가 읽을 수 있는 기록매체는 컴퓨터에 의하여 읽혀질 수 있는 데이터가 저장되는 모든 종류의 기록장치를 포함한다. 컴퓨터가 읽을 수 있는 기록매체의 예로는 ROM, RAM, CD-ROM, 자기 테이프, 플로피디스크, 광 데이터 저장장치 등이 있다. 또한 컴퓨터가 읽을 수 있는 기록매체는 네트워크로 연결된 컴퓨터 시스템에 분산되어, 분산 방식으로 컴퓨터가 읽을 수 있는 코드가 저장되고 실행될 수도 있다. 또한, 본 실시예를 구현하기 위한 기능적인 프로그램, 코드 및 코드 세그먼트(segment)들은 본 실시예가 속하는 기술 분야의 통상의 기술자에 의해 용이하게 이해될 수 있을 것이다.
이상에서는 실시예들을 참조하여 설명하였지만 본 발명은 이러한 실시예들 또는 도면에 의해 한정되는 것으로 해석되어서는 안 되며, 해당 기술 분야의 숙련된 당업자는 하기의 특허 청구 범위에 기재된 본 발명의 사상 및 영역으로부터 벗어나지 않는 범위 내에서 본 발명을 다양하게 수정 및 변경시킬 수 있음을 이해할 수 있을 것이다.
10: 제어 시스템
110: 제어기
111: 레퍼런스 재생성부
112: 가변 구조 제어부
120: 부하부
121: 전류 제어기
122: 제어 대상
123: 엔코더

Claims (11)

  1. 외부로부터 입력되는 위치 입력과 제어 대상에서 제공되는 위치 피드백을 수신하여 레퍼런스 상태 벡터를 생성하는 레퍼런스 재생성부; 및
    상기 레퍼런스 재생성부에서 출력된 레퍼런스 상태 벡터 및 상기 위치 피드백을 입력받아 상기 레퍼런스 상태 벡터를 추종하는 제어를 수행하는 가변 구조 제어부를 포함하되,
    상기 레퍼런스 재생성부는 상기 위치 입력과 상기 위치 피드백 출력을 이용하여 상기 제어 대상의 목표 위치에 대한 위치 오차를 감소시키도록 상기 레퍼런스 상태 벡터를 생성하고,
    상기 레퍼런스 재생성부는,
    상기 위치 입력과 위치 피드백을 수신하여 속도 명령을 생성하는 외부 루프 제어부; 및
    상기 속도 명령에 기초하여 상기 레퍼런스 상태 벡터를 계산하는 레퍼런스 계산부를 포함하고,
    상기 가변 구조 제어부는,
    상기 레퍼런스 상태 벡터와 상기 위치 피드백을 기초로 절환 함수 출력을 계산하는 절환 함수 계산부;
    상기 절환 함수 출력에 기초하여 외란 추정값을 계산하는 외란 추정부;및
    상기 레퍼런스 상태 벡터, 상기 절환 함수 출력, 상기 외란 추정값, 상기 위치 피드백에 기초하여 제어 입력을 계산하고, 상기 제어 대상에 제어 입력을 출력하는 제어 입력 계산부를 포함하는 것을 특징으로 하는 제어기.
  2. 삭제
  3. 제1 항에 있어서,
    상기 외부 루프 제어부는,
    상기 위치 입력과 상기 위치 피드백의 오차에 응답하여, 비례 제어 또는 비례-미분 제어를 통해 상기 속도 명령을 생성하는 것을 특징으로 하는 제어기.
  4. 삭제
  5. 삭제
  6. 레퍼런스 재생성부가, 외부로부터 입력되는 위치 입력과 제어 대상에서 제공되는 위치 피드백을 수신하여 레퍼런스 상태 벡터를 생성하는 단계; 및
    가변 구조 제어부가, 상기 레퍼런스 재생성부에서 출력된 레퍼런스 상태 벡터를 입력받아 상기 레퍼런스 상태 벡터를 추종하는 제어를 수행하는 단계를 포함하되,
    상기 레퍼런스 상태 벡터를 생성하는 단계는 상기 위치 입력과 상기 위치 피드백 출력을 이용하여 상기 제어 대상의 목표 위치에 대한 위치 오차를 감소시키도록 상기 레퍼런스 상태 벡터를 생성하며,
    상기 레퍼런스 상태 벡터를 생성하는 단계는,
    상기 위치 입력과 위치 피드백을 수신하여 속도 명령을 생성하는 단계; 및
    상기 속도 명령에 기초하여 상기 레퍼런스 상태 벡터를 계산하는 단계를 포함하고,
    상기 레퍼런스 상태 벡터를 추종하는 제어를 수행하는 단계는,
    상기 레퍼런스 상태 벡터와 상기 위치 피드백을 기초로 절환 함수 출력을 계산하는 단계;
    상기 절환 함수 출력에 기초하여 외란 추정값을 계산하는 단계; 및
    상기 레퍼런스 상태 벡터, 상기 절환 함수 출력, 상기 외란 추정값, 상기 위치 피드백에 기초하여 제어 입력을 계산하고, 상기 제어 대상에 제어 입력을 출력하는 단계를 포함하는 제어기의 제어 방법.
  7. 삭제
  8. 제6 항에 있어서,
    상기 위치 입력과 위치 피드백을 수신하여 속도 명령을 생성하는 단계는,
    상기 위치 입력과 상기 위치 피드백의 오차에 응답하여, 비례 제어 또는 비례-미분 제어를 통해 상기 속도 명령을 생성하는 것을 포함하는 제어기의 제어 방법.
  9. 삭제
  10. 삭제
  11. 하드웨어와 결합되어 제6항 및 제8항 중 어느 한 항에 따른 제어기의 제어 방법을 실행하도록 매체에 저장된 컴퓨터 프로그램.
KR1020190147788A 2019-11-18 2019-11-18 레퍼런스 재생성부를 포함하는 제어기 및 이의 제어 방법 KR102240722B1 (ko)

Priority Applications (1)

Application Number Priority Date Filing Date Title
KR1020190147788A KR102240722B1 (ko) 2019-11-18 2019-11-18 레퍼런스 재생성부를 포함하는 제어기 및 이의 제어 방법

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
KR1020190147788A KR102240722B1 (ko) 2019-11-18 2019-11-18 레퍼런스 재생성부를 포함하는 제어기 및 이의 제어 방법

Publications (1)

Publication Number Publication Date
KR102240722B1 true KR102240722B1 (ko) 2021-04-16

Family

ID=75743427

Family Applications (1)

Application Number Title Priority Date Filing Date
KR1020190147788A KR102240722B1 (ko) 2019-11-18 2019-11-18 레퍼런스 재생성부를 포함하는 제어기 및 이의 제어 방법

Country Status (1)

Country Link
KR (1) KR102240722B1 (ko)

Cited By (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
KR102499201B1 (ko) 2022-08-31 2023-02-13 서울대학교산학협력단 가변구조를 기반으로 하는 제어기 및 제어 방법, 이 제어 방법을 수행하기 위한 기록 매체

Non-Patent Citations (3)

* Cited by examiner, † Cited by third party
Title
Y. Eun, et al., "Discrete-time Variable Structure Controller with a Decoupled Disturbance Compensator and Its Application to a CNC Servomechanism," IEEE Trans. on Control Systems Technology, vol.7, no. 4, pp. 414-423, 1999.
윤정원 외 1명, Development of an intuitive user interface for a hydraulic backhoe, Automation in Construction (2010) 1부.* *
한지석 외 8명, 서보 시스템의 불확실한 관성 조건에서 슬라이딩 모드 제어 및 Decoupled Disturbance Compensator의 강인성 향상을 위한 이득 설정 방법, 제어로봇시스템학회 국내학술대회 논문집 (2017.5) 1부.* *

Cited By (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
KR102499201B1 (ko) 2022-08-31 2023-02-13 서울대학교산학협력단 가변구조를 기반으로 하는 제어기 및 제어 방법, 이 제어 방법을 수행하기 위한 기록 매체

Similar Documents

Publication Publication Date Title
JP2005135186A (ja) 規範モデル追従型制御システム及び規範モデル追従型制御方法
EP3171235B1 (en) Control device, control method, information processing program, and recording medium
KR102114068B1 (ko) 계산 토크 방식 제어기, 이의 파라미터 결정 및 성능 평가 방법
JP5646073B2 (ja) サーボ制御装置
CN103092135B (zh) 具备不灵敏带处理部的电动机的控制装置
JP7293905B2 (ja) 摩擦補償装置
CN111103792B (zh) 机器人控制方法、装置、电子设备及可读存储介质
KR102240722B1 (ko) 레퍼런스 재생성부를 포함하는 제어기 및 이의 제어 방법
US20170282932A1 (en) Automatic determination of maximum acceleration for motion profiles
JP2006215626A (ja) 位置制御装置
CN114852868B (zh) 用于起重机臂架的控制方法、控制器、装置及起重机
JP2005293564A (ja) スライディングモード制御器を有する位置制御装置
CN105388914A (zh) 位置控制设备
JP2021047556A (ja) 物体移動装置、工作機械、情報処理装置、情報処理方法および情報処理プログラム
KR102240723B1 (ko) 위치 예측부를 포함하는 제어기 및 이의 제어 방법
Chalanga et al. Output regulation using new sliding surface with an implementation on inverted pendulum system
KR20210065791A (ko) 로봇 매니퓰레이터를 제어하기 위한 장치 및 이를 위한 방법
KR102139286B1 (ko) 보조 상태 변수 계산부를 포함하는 제어기 및 이의 제어 방법
Miura et al. High-stiff motion reproduction using position-based motion-copying system with acceleration-based bilateral control
JP6557185B2 (ja) サーボ制御装置、サーボ制御方法、及びサーボ制御用プログラム
EP3930179B1 (en) Command generation device and command generation method to control motor
Song et al. Design of time delay controller using variable reference model
Pai Combining input shaping and adaptive super-twisting terminal sliding mode control for vibration suppression
KR102499201B1 (ko) 가변구조를 기반으로 하는 제어기 및 제어 방법, 이 제어 방법을 수행하기 위한 기록 매체
JP2022134526A (ja) 工作機械および工作機械用制御装置