2013-05-30 7 views
0

기본적으로 Simulink에서 k * (T * s + 1) 전달 함수 블록을 만들어야합니다. Matlab에서는 쉽습니다. 저는 분모를 분자보다 작게 만들고 모든 것이 좋습니다. 그러나 Simulink의 블록을 사용하여 똑같은 것을 만들려고하면 오류가 발생합니다. [denomenator는 분자보다 작아야합니다. 그래서 어떻게 생각하세요?Simulink에서 선형 전달 함수를 만드는 방법은 무엇입니까?

+0

가 사실은 내가 노력 미분과 이득의 병렬 연결, 그리고 나는 부분없이 PID를 시도했다. 하지만이 모든 일들, 내가 matlab에서 이것을 확인하려고 할 때, 다른 보드 라인을 제공한다. 그리고 그것은 과 같지 않습니다. s = tf ('s'); H = k * (T * s + 1); 맞지 않습니다. – runoutofhere

+0

또는 Simulink에서 분모보다 분자가 작은 전달 함수를 만들려면 어떻게해야합니까? – runoutofhere

답변

2

설명하는 것은 순수한 파생 부품 (kTs)입니다. 수치 해석은 이러한 구성 요소와 함께 작동 할 수 없으며 자연은이를 실현할 수 없습니다. 직관적으로, Simulink의 순수 파생 블록은 아주 작은 타임 스텝에서 수치 오류에 부당하게 큰 반응을 보입니다. 보데 플롯에 익숙하다면 파생 부품은 고주파수에서 임의로 큰 응답을 나타냅니다.

파생 부품을 사용하는 경우 대개 응답 곡선에서 차단 빈도를 선택합니다. 이것은 미분 연산 이전에 입력에 로우 패스 필터를 적용하는 것과 같습니다. 로우 패스 필터 주파수가 시스템 다이내믹스보다 충분히 빠르면 실현 가능한 시스템을 유지하면서 원하는 주파수에서 미분 동작을 얻습니다.

Simulink에서이를 처리하려면 전달 함수를 직접 수정하거나 미분식을 사용하는 Simulink 블록 중 하나 (예 : "미분"블록 또는 "PID 컨트롤러"블록)를 사용할 수 있습니다. (시뮬링크는이 작업을하기 위해 무대 뒤에서 작동합니다.) 예를 들어

, 당신의 방정식을 다시 같이

kTs + k 

그리고 네 개의 블록을 사용하여 다음과 같이 :

---+---GAIN=kT----DERIVATIVE----SUM-- 
    |        | 
    +---GAIN=K--------------------+ 
관련 문제