PI, PD, PID 제어기의 matlab, simulink 구현
- 최초 등록일
- 2015.01.13
- 최종 저작일
- 2014.12
- 25페이지/ 한컴오피스
- 가격 2,500원
목차
1. P1. PI 제어기(steady-state error 개선)
2. P2. Lag 제어기
3. P3. PD 제어기(settling time 개선)
4. P4. Lead 제어기
5. P5. PID 제어기(settling time, steady-state error 개선)
6. P6. Lag-Lead 제어기
7. 느낀점
본문내용
uncompensated와는 달리, compensated system에서는 0에 pole이 추가되었고, 그와 가까이에 zero가 추가된 것을 확인할 수 있습니다.
또한 [k, poles] = rlocfind(ng,dg)를 통하여 K값과 그 곳의 pole 좌표를 구한 것은 다음과 같습니다.
uncompenated compensated
다음은 time response를 구한 것입니다.
아래의 code는 책에서 아이디어를 빌려와, matlab에서 한 figure 안에 두 개의 time response를 구현한 것입니다.
Gu는 원래 system의 G(s)를 나타낸 것이며, Tu는 이를 이용하여 unity feedback system을 구성합니다. Gc는 새로 추가되는 pole과 zero들을 나타낸 transfer function이며 Gu와 Gc를 곱하여 compensated system을 구현합니다. step()은 각 system의 time response를 구현하는 code입니다. 또한 hole는 figure(2)에 두 그래프를 동시에 구현하기 위함입니다.
이를 통해 나온 time reponse는 다음과 같습니다. 파란색 선이 uncompensate, 빨간색 선이 compensated 된 time response를 나타냅니다.
위와 같이, PI 제어기는 실제로 root locus에 아주 작은 영향만을 주면서, steady state error를 개선하는 것을 확인할 수 있었습니다.
⓶ Simulink를 이용하여 time response를 구현
simulink에서는 간단하게 gain과 transfer function을 계산하여 넣어주고, bus를 통해 그 값들을 한 개의 scope에 넣어 관찰하면 time response의 개선 여부를 쉽게 관찰 할 수 있었습니다.
참고 자료
없음