*PID control
1.PID 제어란?
P만 사용하면 steady state의 에러가 생긴다. 정상 상태 오차를 없애려면 적분기(과거항)를 비례기와 나란하게 설치해야 한다. 적분기는 누적 합계를 유지하면서도 시간 경과에 따른 입력 신호의 총량을 계산한다. 이전에 일어났던 일에 대한 메모리가 존재한다.
플랜트가 원하는 고도 이하에서 정상 상태에 도달하면 오차항이 0이 아닌 상태가 되며, 0이 아닌 값이 적분되면 출력은 증가한다.
적분기 경로에서 이렇게 값이 높아지면 프로펠러 속도가 빨라지고 드론은 계속 상승하게 된다.
비례경로와 적분 경로는 함께 작동하며 오차를 0으로 낮춘다.
If 오차가 너무 작기 때문에 비례경로는 사실상 0이지만, 이 시점에 드론은 여전히 상승하고 있기 때문에 적분 경로는 100rpm보다 클 수 있다.
드론이 예상 목표보다 더 높이 올라간 다음 적분 경로가 초과된 프로펠러 속도를 제어할 수 있도록 음의 오차를 발생시켜야 한다.
오버슈팅은 좋지 않다.
그래서 미래를 예측하고 목표에 도달하는 속도에 대응할 수 있는 경로를 제어기에 추가해야 한다.
=> 미분기 사용
미분기는 오차의 변화율에 대한 측정값을 산출한다.
오차가 얼마나 빠르게 증가 또는 감소하는지를 측정한다.
드론이 우리의 목표에 신속하게 접근하고 있다면, 이는 오차가 빠르게 감소하고 있음을 의미한다.
오차의 감소는 음의 변화율을 가지고 있으며, 이는 미분 경로를 통해 음의 값을 산출한다.
이 음의 값은 제어기의 출력에 추가되어 결과적으로 프로펠러 속도를 느려지게 만든다.
- 기본적으로 제어기는 변화하는 오차를 토대로 목표에 너무 빨리 접근하는 것은 아닌지,
- 프로펠러의 속도를 섣불리 늦추는 건 아닌지 판단함으로써 드론의 오버슈팅을 방지한다.
2.단일 적분으로 개념 확장하기
- Actuator : 시스템을 변화시키는 힘이나 에너지를 생성하는 장치 (모터 or 히터)
- Process : actuator가 특정 방식으로 영향을 미치는 대상인 프로세스
=> 현실에서는 actuator이 선형이 아니라는 문제가 발생
If actuator이 포화상태(saturate)라면, 시스템에 0이 아닌 오차가 지속적으로 발생한다면, 이 오차가 적분기를 통과하면 시간이 지남에 따라 출력이 계속 상승한다.
결국 최대 RPM에 도달하여 actuator가 명령을 받더라도 더 빨리 움직이지 않는다.
=> saturate 상태
선형시스템에는 포화상태는 없기에 문제가 되지 않는다. 하지만 실제 시스템은 선형적이지 않다.
우리가 드론을 잡고 있어 드론이 날아오르지 못하는 상황에서, 결국 적분기는 프로펠러 모터가 회전할 수 있는 속도보다 더 빠른 속도를 요구하게 되고, 결국 가속은 멈추게 된다. 하지만 적분은 프로펠러가 포기했는지 모르기 때문에 계속해서 명령을 늘릴 것이다.
우리가 적분기의 출력이 2000rpm을 요구할 때까지 드론을 붙잡고 있다면, 이때 드론을 놓으면 드론은 명령받은 고도를 향해 급속하게 상승하고 오차는 줄어들기 시작할 것이다.
드론이 명령보다 위로 올라가면 오차항은 음수가 되고 적분 출력은 감소하기 시작한다.
하지만 2000rpm에서부터 내려오므로 명령값이 1900rpm에 도달해도 모터는 1000rpm으로 회전하게 된다. 적분기가 다시 1000rpm으로 언와인드될 때까지 기다려야 한다.
그동안 드론을 우리의 시야를 벗어나 위로 높이 치솟는다.
=> 이런 현상을 적분기의 wind up이라고 하며 PID제어기에서 해결해야 할 문제이다.
actuator이 포화상태에 빠지면 우리는 오차가 신호를 바꿀 때 명령을 되돌리는 데 걸리는 시간을 최소화하는 것이 좋다.
=> 와인드업 방지 방법 구현해야 함
와인드업 방지 방법의 기본 아이디어는 적분된 값이 지정된 제한을 초과하여 증가하는 것을 방지함으로써 오차가 신호를 바꾸면 즉시 반대 방향으로 움직이도록 하는 것이다.
=>Clamping을 이용해 와인드업 방지를 한다.
- Clamping : 더 이상 적분이 필요하지 않을 때마다 적분기를 끄는 것
actuator는 주어진 명령을 따르지 못하고 포화상태가 되기도 한다.
높은 actuator 명령값이 입력되더라도 출력은 그보다 낮은 특정 수준의 값으로 제한되는 것이다.
PID제어기를 사용하는 경우 가장 먼저 actuator가 처리할 수 있는 값 이외의 값을 출력하지 않게끔 해야 한다. 이를 위해서 자체적인 포화 수준 검사를 통해 제어기의 출력을 제한하기만 하면 된다.
=> 여기까지 actuator 명령이 너무 높지 않으리라는 것은 해결. 하지만 와인드업 문제는 아직.
Clamping방법은 두 가지 개별 검사를 수행한다.
- 포화 검사 전후의 PID제어기 출력을 비교하는 것.
값이 같으면 포화 상태가 발생하지 않고 이 블록은 0을 출력한다.
값이 다르면 포화 상태가 되고 블록은 1을 출력한다. - 제어기 출력 신호와 오차 신호를 비교하는 것.
오차와 제어기 출력이 모두 양수인 경우, 적분기가 여전히 값을 출력에 추가하여 양수를 더늘리고 있음을 알 수 있다.
반면 둘 다 모두 음수이면 적분기가 음수를 더 늘리려고 노력하고 있음을 알 수 있다.
여기서 우리는 현재 출력이 포화상태인지 혹시 적분기가 상황을 더 악화시키려고 하는 건 아닌지 알아야한다.
=>이를 통해 Clamping사용 여부를 판단할 수 있다.
AND게이트의 출력이 1이라면(clamping이 필요하다 판단 되면), 스위치가 트리거 되고 적분 경로의 오차항이 0으로 설정되어 적분기가 효과적으로 종료된다.
오차 신호가 변경되거나 제어기가 더 이상 포화 상태가 아니라면 적분기의 입력이 복원되고 값도 바로 감소하기 시작한다.
=> 특정 조건을 충족하면 제거기가 적분기를 종료한다.
- 출력은 포화상태이다.
- 오차는 제어기 출력과 동일한 신호이다.
위에서 포화 상태가 되도록 붙잡고 있었던 드론에 와인드업 방지 방법이 적용되어 있다면 드론은 명령받은 고도에 도달하자마자 오차 신호가 바뀌게 되고 적분기 경로가 즉시 프로펠러 속도를 감소시켜 오버슈팅을 제한한다.
대채로 Claping은 PID 제어기가 선형 영역 밖에서 작동하는 시스템을 제어하거나 포화 상태에 빠졌을 때 성능을 향상할 수 있는, 비교적 간단한 와인드업 방지 방법이다.
3.단일 미분기로 개념 확장하기
White noise : 노이즈가 서로 다른 주파수에서 동일한 강도를 갖는 경우 이를 화이트 노이즈라 한다.
미분기는 고주파 신호를 증폭시키고 눈에 띄지 않는 작은 흔들림 까지 흡수하여 시스템에 영향을 미칠 수 있는 값으로 증폭시킬 수 있다.
- 저주파 노이즈 신호
순수 사인파로, 신호의 기울기는 도함수이지만, 신호의 기울기가 가장 가파른 지점을 따라 도함수를 그려보면 라인이 가파를수록 도함수는 높아진다. - 고주파 노이즈 신호
노이즈의 진폭은 바뀌지 않았지만 주파수 증가로 인해 가파른 기울기가 발생한다.
노이즈 신호의 진폭을 줄이면 저주파 신호와 유사한 도함수 또는 기울기로 돌아갈 수 있다.
=> 고주파 노이즈의 진폭을 낮춰 도함수가 너무 크지 않게 유지한다.
주파수를 더 늘리면 기울기가 더 가팔라지므로, 이를 감안하여 진폭을 낮춰야 한다.
매우 높은 주파수의 노이즈를 시스템에 남겨두면, 그 노이즈가 아무리 작더라도 도함수가 이를 발견하여 노이즈를 증폭시키고 문제를 일으킬 것이다.
주파수를 사인파의 연속으로 퓨리에 변환을 통해 나타낸 것 중 첫 사인파 항을 도함수로 나타내보면 주파수는 정확히 같고 위상은 90도로 이동했으며 새로운 진폭이 w_a의 A배인 새로운 사인파를 얻게 된다.
여기서 w_a가 1rad/s보다 크면 진폭이 더 커졌다는 사실을 쉽게 확인할 수 있다.
이 크기 변화를 plot으로 표시하면 기울어진 노란 선 처럼 보인다.
높은 주파수는 고진폭 신호를 생성하고 낮은 주파수는 저진폭 신호를 생성한다.
특정 점 이상의 주파수가 도함수에 유입되어 문제를 일으키는 것을 차단할 수 있는 필터가 필요하다.
=> 차단 주파수(cut off)
많은 어플리케이션에서는 스펙트럼 전체의 노이즈는 상대적으로 진폭이 낮거나 전력이 낮으며, 유지하고자 하는 신호는 상대적으로 전력이 크고 주파수가 낮다.
이 경우, 진폭이 작으면 저주파 노이즈가 미분기에 큰 영향을 미치지 않으므로 종종 고주파 정보만 차단하거나 감쇠하여 미분기에 대한 번거로운 노이즈를 제거할 수 있다.
=> 가장 간단한 방법은 일차 저주파 필터를 사용하는 것.
Low pass filter : 차단점 아래의 주파수는 대부분 변경되지 않은 채 통과하고 차단점 위의 주파수는 진폭을 감쇠하거나 낮춰 준다.
노이즈를 완전히 제거하는 것이 아니라 단지 노이즈가 미분기를 통해 증폭된 후에도 시스템에 큰 영향을 미치지 않도록 더 작게 만드는 것.
=> 이 필터의 핵심은, 실제로 중요한 신호에 있는 주파수를 건드리지 않고 가능한 많은 고주파 노이즈를 제거하려면 차단 주파수를 어디에 두어야 하는지를 결정하는 데 도움을 준다.
-미분기 조합의 구조체
: 미분기 대신 적분기를 사용해 PID제어기의 미분기 부분을 구현하는 방법
전달함수를 통해 구현
s는 파생 모델의 Laplace도메인 표현이고, 1/s는 적분을 나타내며, N/(s+N)은 저주파 필터이다.
N은 rad/s 단위의 차단 주파수.
(예를들어 전달함수 10/(s+10)이면, 이는 10rad/s에서 차단 주파수를 가지는 저주파 필터이다.)
주파수의 역은 시간이므로 이 방정식을 사용하면 차단 주파수 대신 필터의 시간 상수를 구체화 할 수 도 있다.
전달함수는 위처럼 구성되고 다른 방식으로 루프를 구성해보면
전방 경로에 N이 있고 피드백 경로에 적분이 있는 피드백 루프를 생성할 수도 있다.
=> 저주파 필터와 미분기를 구현할 수도 있고, 피드백 경로에서 적분을 이용한 피드백 루프를 구현할 수도 있다.
4.PID 튜닝 가이드
제어 시스템 설계 또는 수정 작업에 접근할 때
- Requirement
- 요구사항은 대체로 얼마나 빠르고 정확한 제어가 이루어지고
- 시스템이 어느 정도 수준으로 안정적이기 윈하는지 정의하는 것
=> 시스템이 지남에 따라 시스템이 작동하는 방식으로 요구사항을 정의할 수 있다.(상승시간이나 오버슈팅을 정하는 것.)
=> 시스템에 적응되기를 원하는 주파수 특성으로 정의할 수도 있음.(대역폭, 감쇠비 등)
- Understand the system you’re controlling
- 적분기처럼 동작하기 원하는가
- 개루프 시스템은 안정적인지
- 고도로 비선형적인 시스템인지
- 비최소 위상 시스템인지(라플라스 도메인에서 오른쪽 반평면에 0이 있는 경우)
등의 각 특성은 초기 제어기 아키텍처를 선택하는 방법과 튜닝 방법에 영향을 미친다.
- Choose controller architecture
- Tune controller
적절한 게인 세트를 갖춘다 - Verification & validation
검증과 확인 과정을 거치면서 원하는 시스템이 맞는지 판단.
제어기 아키텍처를 선택하기 전에 시스템의 특성을 조사하는 데 어느 정도 시간을 할애해야 한다.
설명에서는 잘 작동하는 시스템, 즉 안정적이고 거의 선형적이며, 최소 위상을 지니고 지연도 관리 가능한 수준인 시스템에 초점을 맞춤
*physical hardware을 가지고 있을 때
PID의 장점은 하드웨어를 실행하는 동안 수동으로 게인을 튜닝하고 실시간으로 반응을 관찰하면서 만족하는 세트에 도달할 때까지 점진적으로 게인을 변경할 수 있다.
- 상승시간을 줄이고 싶다면 => 비례 게인을 추가
- 안정성을 더 높이거나 오버슈팅을 줄이고 싶다면 => 미분기 게인을 추가
보다 체계적인 또 다른 접근 방법은 하드웨어에서 미리 정의된 입력 시퀀스를 실행한 다음 개루프 응답을 관찰하는 것.
대개 스텝 입력이지만 임의의 명령일 수도 있다.
응답을 토대로 지글러-니콜스 또는 코헨-쿤 방법과 같은 휴리스틱 기법을 사용할 수 있다.
=> 모델이 필요하지 않고 그저 시간 상수나 진동 주기와 같은 응답의 특정 측면을 측정한 다음, 이 값을 사용해 최초 게인 세트를 계산하기만 하면 된다.
코헨-쿤 방법을 사용하는 열 챔버의 경우, 상온에서 오븐으로 시작하여 히터 명령을 완전히 켠 다음 챔버 온도가 상승하다가 최종적으로 안정화되는 방법을 관찰할 수 있다.
이 응답을 바탕으로 지연 시간 또는 데드 타임, 게인 및 시간 상수를 측정한 다음 방정식에 연결하여 최초 게인을 도출 할 수 있다.
지글러-니콜스 방법은 시스템이 불안정해지기 직전까지 시스템을 진동시켜야 한다.
Another method(System ID)
하드웨어에서 측정된 응답을 사용하는데, 대개는 스텝 응답이다.
이를 사용해 두 응답에 최대한 가깝게 일치하는 최적의 모델 계수 세트를 찾는다.
간단한 system ID툴의 경우 모델 구조체를 미리 정의해야 한다. 예를 들면 시스템이 1차 전달 함수에 피팅되도록 명령하는 것.
=> System ID의 장점은 일반적인 동작만을 감안하여 모델을 생성할 수 있다.
*모델 기반 설계를 사용해 PID gain을 튜닝하기
- 수동 튜닝 : 기본적인 제어 이론에 대한 지식을 활용해 적절한 게인을 선택하는 것
- 극점이 우리가 원하는 시스템 안정성과 응답을 산출할 수 있도록 폐루프 극점을 배치할 위치를 정할 수 있다.
=> 단점은 극점이 있어야 할 위치와 시스템 내의 0의 응답에 미치는 영향을 미리 알고 있어야 한다는 것이다. - 개루프 전달 함수와 보드 및 나이퀴스트 플롯과 같은 지식을 이용해 루프 함수를 형성해 폐루프 시스템이 우리에게 필요한 주파수 또는 시간 도메인 응답은 갖도록 하는 것이다.
이 방법을 사용하려면 개루프 시스템과 폐루프 동작을 비교하는 방법과 PID제어기에 있는 두 영점을 조정하는 것이 해당 폐루프 동작에 미치는 영향을 알고 있어야 한다. - 휴리스틱 방법을 사용해 지글러-니콜스 등의 방법을 사용해 최초 게인 세트를 얻을 수 있다.
5.모델을 구축하는 3가지 방법
- First principles
- System ID
- Linearization
6.수동 및 자동 튜닝 방법
출력을 피드백해 PID 제어기에 래핑함으로써 이 플랜트의 작동 방식을 조정할 수 있다.
시스템 튜닝 후 일반적으로 디지털 컴퓨터에서 해당 제어기 설계를 실행한 후 물리적 시스템에 래핑할 수 있다.
PID 튜닝을 어떻게 하는가?
시간 도메인c(t)에서 이상적인 PID제어기의 구조를 살펴봐야 한다.
세 가지 제어기가 있고 Kp,Ki,Kd를 조정해 각 제어기가 제어에 기여하는 상대적인 양을 변경할 수 있다.
s도메인에서 생각해보면 PID 제어기의 라플라스 변환에서 몇 가지 항을 재배열하면 전달함수를 얻을 수 있다.
여기서 알 수 있는 것
- 원점에 단일 극점이 존재한다. 이 원점을 제어할 필요는 없다. 그저 제어기에 존재하는 적분기일 뿐이다.
- Kp,Ki,Kd로 인해 배치된 2개의 영점과 전체 게인 항이 있다.
=> PID 제어기 튜닝은 결국 이 두개의 영점을 어디에 배치해야 하는지, 또 게인을 얼마나 적용해야 하는지가 관건이다.
=> 이상적인 미분기를 갖춘 이상적인 제어기가 있을 경우에 해당하는 이야기이다.
우리는 보통 필터링된 도함수를 구현한다.
실제 축을 따라 필터링을 수행하는 또 다른 극이 존재한다.
PID 튜닝은 두 개의 영점을 배치하고 게인을 조정하는 것으로 귀결된다.
- Pole placement(극점 배치)
만약 시스템이 어떻게 동작해야 하는지 알고 그러한 동작을 유발하는 극점의 위치도 알아냈다면, 그 극점을 원하는 곳에 정확하게 배치할 제어기를 고안할 수 있다.
SISO 모델의 경우 근궤적 플롯을 사용해 극점 배치에 접근할 수 있다.
즉, 선형 모델의 근궤적을 도출할 수 있는데 이것이 바로 개루프 플렌트이다.
처음 녹색 라인을 보면 우리가 원하는 극점 위치를 통과하지 못하기 때문에 게인의 양이 얼마이든 충분하지 않다.
하지만 PID 제어기의 적분기와 두 개의 영점을 추가하면 근궤적 라인을 훨씬 더 잘 제어할 수 있다.
극점이 있어야 할 영역으로 근궤적 선이 통과하려면 두 개의 0을 어디에 배치해야 하는지 알 수 있으며, 해당 영역에 두 개의 영점을 배치할 게인도 파악할 수 있다.
- Loop shaping
반대로 루프 쉐이핑은 개루프 시스템의 주파수 응답을 살펴보고 개루프 게인 및 위상, 교차 주파수 등에 대한 지식을 활용해 폐루프 시스템이 어떻게 동작할지 예측하는 방법이다.
PID 제어기를 추가하고 두 개의 0과 게인의 위치를 조정함으로써, 우리가 원하는 주파수 특성을 얻기 위한 개루프 보드 플롯을 형성할 수 있다.
7.주요 PID 개념
- Cascade Control
여기의 명령은 자체 비교기를 통과해 PID제어기로 오차를 공급하는 명령이다.
제어기의 출력은 전압이며, 이 전압이 모터에 가해져 모터를 회전시킨다.
모터 속도는 센서에 의해 측정되고 비교기에 다시 공급된다.
두 개의 피드백 루프에서 하나는 모터 속도를 조절하고, 다른 하나는 드론 고도를 조절한다.
캐스케이드 접근 방식을 사용하는 이유?
- 시스템의 문제를 보다 쉽게 분리할 수 있다.
- 여러 그룹이 문제의 개별적인 부분을 처리할 수 있다.
=> (가장 중요한 이유)루프를 서로 다른 속도로 실행해 다양한 문제와 오류 원인을 해결하는 것.
- 모터 제어기는 국소 교란에 신속하게 대응할 수 있는 반면,
- 고도 제어기는 센서 노이즈를 제거하고 안정성을 높이도록 보수적인 방식으로 튜닝할 수 있다.
예를 들어, 캐스케이드 제어에서 프로펠러 모터가 100rpm에서 작동하는 데 10V가 필요하다고 가정해 보면.
루프에 약간의 교란을 추가하면, 드론의 또 다른 고전류 장치가 켜져 배터리 전압이 떨어질 수도 있고, 모터 베어링의 율활유가 뜨거워지고 저항이 떨어져 동일한 속도에 필요한 전압이 낮아질 수도 있다.
두 경우 모두 내부 루프 모터 제어기가 해당 오차를 감지하고 모터 전압을 단 몇 초 만에 조정하여 프로펠러 속도가 거의 영향을 받지 않게끔 할 수 있다.
내부 루프가 충분히 빠르면 고도에 현저한 변화가 없을 것이므로 외부 루프는 모터 교란을 눈치채지도 못할 것이다.
*튜닝 방법
- 내부 루프가 외부 루프보다 훨씬 빠른 경우, 즉 루프의 대역폭이 최고 5~7배 이상 높다면 두 루프를 따로따로 튜닝하는 것이 가능하다.
드론을 예로, 모터 제어기를 먼저 튜닝함으로써 속도를 명령할 때 모터가 원하는 성능에 맞춰 빠르게 회전하게끔 할 수 있는 것이다.
내부 루프는 매우 빠르기 때문에 외부 루프가 모터 속도를 요청하면 모터가 빠르게 그 속도로 회전하게 되므로 외부 루프는 이것이 동시에 일어나는 것으로 여긴다.
따라서 외부 루프를 튜닝할 때는 내부 루프가 존재하지 않으며 명령이 바로 통과한다고 가정해도 괜찮다.
- 두 루프가 동일한 대역폭에서 작동해야 한다면 내부 루프가 동시에 일어나는 것처럼 충분히 빠르다고 할 순 없기 때문에 튜닝이 좀 더 어려워진다.
- Discrete PID
이산 제어를 사용하는 이유?
:우리가 설계하는 제어기가 보통 디지털 컴퓨터에서 실행되기 때문이다.
디지털 컴퓨터는 연속으로 실행되지 않고 샘플 시간마다 업데이트 된다.
샘플 시간이 역학에 비해 충분히 짧은 경우에는 연속 시스템과 매우 유사하게 작동한다.
제어기가 센서를 읽고 액추에이터를 매우 빠르게 업데이트할 수 있으므로 사실상 연속적으로 보인다. 그러나 샘플 시간이 늘어날수록 이산 결과는 연속 결과와 달라진다.
PID 알고리즘의 구조는 연속 s-도매인과 이산 z-도매인 표현식 간에 서로 다르게 보인다.
둘 다 필터링된 도함수 항을 가지고 있고 양쪽에 적분이 있지만, 서로 다르게 보이기 때문에 같은 시스템이더라도 양쪽의 Kp, Ki, Kd항은 서로 다르다.
보통 이산제어기 튜닝 방법으로는
- 우선 s-도메인에서 제어기를 튜닝한 다음
- z-도메인으로 변환하는 것이다.
그 과정에서 샘플 시간이 동일한 동작을 유지할 만큼 빠른지를 확인하는 것이 중요하다. - 디지털 컴퓨터에서 해다 이산 PID제어기를 구현하면 제어기가 원하는 대로 작동할 것이다.
8.PID 정리
- Kp가 커지면 출력의 변화 속도가 빨라진다.
- 목표값에 도달 하여도 적분값이 양수로 유지되므로 PO가 커진다.
- Ki가 커지면 PO가 커지고 t_s가 빨라진다.
제어가 불안정하지만 Ki값이 0이 아니면 무조건 e_ss = 0 으로 수렴합니다.
- Kd가 커지면 PO가 작아지고 수렴이 느리지만 안정적이다.
- Kd가 커질수록 동특성 개선 효과가 있다.
- error에 노이즈가 존재하면 de/dt가 매우 커지므로 출력이 oscillate 하게 된다.
-PID gain Tuning
일반적인 PID 컨트롤러 디자인
- Kp gain을 올려 t_r을 향상시킨다.
(t_r 이 뭘까..?) - Kd gain을 올려 Mp를 최소화 한다.
(Mp는 oscillate ???) - Ki gain을 올려 e_ss를 제거한다.
(ss는 steady state ) - 각 gain들을 조정하여 적절한 값을 찾는다.
-지글러-니콜스 방법
일반적인 방법으로 적절한 gain값을 찾는 것은, 최선의 gain이라는 보장이 없고 시간이 오래 걸린다. 지글러-니콜스 방법은 Kp를 전체를 묶고 상수 T를 조절해 적정값을 찾는 방법이다.
- 계단 응답법(과도응답법)
- 플랜트의 단위계단응답이 다음과 같이 S자형으로 일정한 값에 수렴할 경우 사용할 수 있는 방법이다.
- 시간 영역에서 지배적인 과도 감쇄가 1주기 후에 원래의 약 25%로 된다는 경험으로부터 0.25의 감쇄비에 바탕을 둔 제어기 조정법이다.
이는 제어 대상 시스템의 주 극점이 복소근이 아니어서 진동이 일어나지 않는 안정된 시스템이서만 적용될 수 있는데, 통상 이 조건이 만족하는 시스템은 S자 응답 곡선 형태를 띈다. 대상 플랜트에 단위계단 입력을 넣은 후에 S자 응답 곡선의 출력 응답 구하고, 이 곡선으로 부터 특정 파라미터(L:응답 지연시간, T:시정수) 구해 PID제어기의 이득을 선정하는 방식이다.
- 임계감도반응법(한계감도법)
- 제 1방법을 적용할 수 없는 경우, P제어 시스템을 구성한 후, Kp gain을 증가시켜 임계상태(단진동하는 상태)를 만들고 이때의 gain(Kcr)과 period(Pcr)를 이용한다.
과도응답법보다 우수한 성능을 보이지만, gain이 조금이라도 틀리면 발산할 위험이 있다.
- 제어 대상 시스템이 원점에 극점 갖거나 불안정해 진동 발생하는 경우에 적용할 수 있는 방법이다. 여기서는 다른 이득은 0으로 하고 비례 제어 성분만을 이용하는데, 비례 이득을 조금씩 증가시켜 지속적 진동 발생되는 순간의 이득과 주기, 즉 임계이득(Ku)(Kcr)와 임계주기(Tu)(Pcr)를 각각 구하고, 이를 바탕으로 PID 제어기의 이득을 결정하는 것이다. 만일 비례 이득을 증가 시켜도 진동이 발생하지 않으면 이 방법은 사용할 수 없다.
+ 계전기 조정법
Limit 사이클 진동을 유발하고 이로부터 dead time(τ)와 시정수 Tp를 구한다.
한계감도법보다 안정한 영역에서 튜닝을 하기 때문에 좀 더 안전하다.
https://m.blog.naver.com/PostView.naver?isHttpsRedirect=true&blogId=ppepajbw432&logNo=221406253878
'Study > Feedback System' 카테고리의 다른 글
이산 시간 Low pass filter 코드 변환 (0) | 2024.09.26 |
---|---|
Nyquist[나이퀴스트]와 Bode Plot[보드선도] 안정도 판별법 (0) | 2023.03.10 |
주파수 응답 특성[Frequency Response] (2) | 2023.03.09 |