Enabled Subsystem을 사용하여 제어 알고리즘 구현하기
이 예제에서는 Enabled Subsystem을 사용하여 이진 논리형 신호를 기반으로 제어 알고리즘을 구현하는 방법을 보여줍니다. Enabled Subsystem은 이진 신호가 양수 값을 갖고 제어 알고리즘을 구현할 때 실행됩니다. 이 예제에서는 불안정한 동적 시스템을 안정화하는 데 슈퍼 트위스팅(super-twisting) 제어 알고리즘이 사용됩니다. 슈퍼 트위스팅(super-twisting) 알고리즘은 강력한 성능으로 잘 알려진 슬라이딩 모드 제어 기법 중 하나입니다.
모델을 엽니다.
mdl = 'enablesub.slx';
open_system(mdl);
동적 시스템
대상 동적 시스템은 다음 식을 따릅니다.
여기서 는 제어 입력이고, 는 외부 외란입니다.
제어기 및 제어 신호
제어 입력()에는 슈퍼 트위스팅(super-twisting) 알고리즘을 따르는 두 성분 과 가 있습니다. 에 대한 논리 기반 설계가 Enabled Subsystem을 사용하여 구현됩니다.
, , 입니다. 이러한 파라미터는 모델 콜백 파라미터 PreLoadFcn에서 불러옵니다.
시뮬레이션을 실행하고 결과 시각화하기
시뮬레이션을 실행하고 Scope 블록과 Simulink 데이터 인스펙터를 사용하여 결과를 시각화합니다.
out = sim(mdl);
제어기 입력 시각화하기
Simulink 데이터 인스펙터는 이진 신호를 기반으로 서브시스템 출력을 보여줍니다. 출력 과 는 제어기 이득 의 두 성분입니다.
을 포함하는 서브시스템은 0초와 1.8초 사이에, 그리고 3초와 5초 사이에 활성화됩니다.
를 포함하는 서브시스템은 1.8초와 3초 사이에, 그리고 5초와 15초 사이에 활성화됩니다.
상태 출력
상태 출력은 제어기가 시스템을 안정화함을 보여줍니다.
참고 항목
Enabled Subsystem | From | Goto | Integrator | Saturation
관련 항목
참고 문헌
[1] Shtessel, Yuri, Christopher Edwards, Leonid Fridman, and Arie Levant. "Sliding mode control and observation." Vol. 10. New York: Springer New York, 2014. https://link.springer.com/book/10.1007/978-0-8176-4893-0