반응형
TI의 ControlSUITE 라이브러리에 정의된 PI 제어기 코드는 다음과 같다.
PI_MACRO(v) 매크로로 정의되어 있다.
/* proportional term */
v.up = _IQmpy(v.Kp, (v.Ref - v.Fbk));
/* integral term */
v.ui = (v.Out == v.v1)?(_IQmpy(v.Ki, v.up)+ v.i1) : v.i1;
v.i1 = v.ui;
/* control output */
v.v1 = v.up + v.ui;
v.Out= _IQsat(v.v1, v.Umax, v.Umin);
//v.w1 = (v.Out == v.v1) ? _IQ(1.0) : _IQ(0.0);
파일 위치는 다음과 같다.
C:\ti\controlSUITE\libs\app_libs\motor_control\math_blocks\v4.3\pi.h
※ 위 코드는 Anti-Windup에 문제가 있다.
반응형
'전자 > 제어' 카테고리의 다른 글
영상성분이 0일 때 알파베타 변환 (0) | 2023.06.20 |
---|---|
PID 제어기 코드 (TI) (0) | 2023.06.05 |
PI 제어기를 이용한 전류제한 기법 (0) | 2023.06.03 |
장난감 소형 DC 모터 스펙 (0) | 2023.05.14 |
알파베타 변환/역변환 (영상성분이 0일때) (0) | 2023.05.06 |
댓글