Main Content

Transfer Fcn

전달 함수로 선형 시스템 모델링

  • Transfer Fcn block

라이브러리:
Simulink / Continuous

설명

Transfer Fcn 블록은 라플라스 영역 변수 s의 전달 함수를 사용해 선형 시스템을 모델링합니다. 이 블록은 SISO(단일 입력 단일 출력) 시스템 및 SIMO(단일 입력 다중 출력) 시스템을 모델링할 수 있습니다.

이 블록을 사용하기 위한 조건

Transfer Fcn 블록은 다음 조건을 가정합니다.

  • 전달 함수의 형식은 다음과 같습니다.

    H(s)=y(s)u(s)=num(s)den(s)=num(1)snn1+num(2)snn2++num(nn)den(1)snd1+den(2)snd2++den(nd),

    여기서 u 및 y는 각각 시스템 입력 및 시스템 출력이고, nn 및 nd는 각각 분자 계수의 개수 및 분모 계수의 개수입니다. num(s) 및 den(s)는 분자의 계수 및 분모의 계수를 s의 거듭제곱 내림차순으로 포함합니다.

  • 분모의 차수는 분자의 차수보다 크거나 같아야 합니다.

  • 다중 출력 시스템의 경우 모든 전달 함수는 분모가 동일하고 모든 분자의 차수가 동일합니다.

단일 출력 시스템 모델링하기

단일 출력 시스템의 경우 블록의 입력과 출력은 스칼라 시간 영역 신호입니다. 이 시스템을 모델링하려면 다음을 수행하십시오.

  1. 분자 계수 필드에 전달 함수의 분자 계수에 대한 벡터를 입력합니다.

  2. 분모 계수 필드에 전달 함수의 분모 계수에 대한 벡터를 입력합니다.

다중 출력 시스템 모델링하기

다중 출력 시스템의 경우 블록 입력은 스칼라이고 블록 출력은 벡터입니다. 여기서 각 요소는 시스템의 출력입니다. 이 시스템을 모델링하려면 다음을 수행하십시오.

  1. 분자 계수 필드에 행렬을 입력합니다.

    이 행렬의 각 은 블록 출력 중 하나를 결정하는 전달 함수의 분자 계수를 포함합니다.

  2. 분모 계수 필드에 시스템의 모든 전달 함수에 공통적인 분모 계수의 벡터를 입력합니다.

초기 조건 지정하기

전달 함수는 라플라스(주파수) 영역에서 입력과 출력 간의 관계를 설명합니다. 구체적으로, 전달 함수는 임펄스 입력의 초기 조건이 0인 시스템의 응답(출력)에 대한 라플라스 변환으로 정의됩니다.

전달 함수의 곱셈 및 나눗셈과 같은 연산은 0 초기 상태를 사용합니다. 예를 들어, 하나의 복잡한 전달 함수를 일련의 보다 단순한 전달 함수로 분해할 수 있습니다. 원래 전달 함수와 동일한 응답을 얻으려면 분해한 전달 함수를 순차적으로 적용하십시오. 이는 전달 함수 중 하나가 0이 아닌 초기 상태를 가정하는 경우 정확하지 않습니다. 또한 전달 함수는 무수히 많은 시간 영역 구현을 가지며, 그 상태의 대부분은 물리적 의미가 없습니다.

이러한 이유로 Simulink®Transfer Fcn 블록의 초기 조건을 0으로 사전 설정합니다. 주어진 전달 함수에 대한 초기 조건을 지정하려면 tf2ss를 사용하여 전달 함수를 제어 가능한 표준 상태공간 구현으로 변환하십시오. 그런 다음 State-Space 블록을 사용하십시오. tf2ss 유틸리티는 시스템에 대한 A, B, C, D 행렬을 제공합니다.

자세한 내용을 보려면 help tf2ss를 입력하거나 Control System Toolbox™ 문서를 참조하십시오.

블록에서 전달 함수의 표시

Transfer Fcn 블록은 분자 파라미터와 분모 파라미터를 지정하는 방식에 따라 전달 함수를 표시합니다.

  • 각 파라미터를 표현식이나 벡터로 지정하면 블록은 s의 거듭제곱에 지정된 계수를 사용하여 전달 함수를 표시합니다. 변수를 괄호 안에 지정하면 블록이 변수를 계산합니다.

    예를 들어, 분자 계수 파라미터 값을 [3 2 1]로 지정하고 분모 계수 파라미터 값을 (den)으로 지정하면(여기서 den은 값이 [7 5 3 1]인 작업 공간 변수) 블록은 지정된 값을 사용하여 방정식을 표시합니다.

    Transfer Fcn block that displays the numerator and denominator of the transfer function both as a polynomial function of s.

    블록 크기가 너무 작아서 전체 분자 또는 분모를 수용할 수 없는 경우 블록 아이콘은 분자를 num(s)로, 분모를 den(s)로 표시합니다.

    A Transfer Fcn block that is not wide enough to display the equation.

    구현하는 전달 함수의 방정식이 블록에 나타나도록 하려면 코너를 끌어서 블록 크기를 조정하십시오.

    A pointer is positioned to drag the lower-right corner of the Transfer Fcn block, resizing the block so it is wide enough to display the equation that represents the transfer function.

  • 각 파라미터를 변수로 지정하면 블록은 변수 이름 다음에 (s)를 표시합니다.

    예를 들어, 분자 계수 파라미터를 num으로 지정하고 분모 계수 파라미터를 den으로 지정하면 블록 아이콘은 전달 함수의 분자를 num(s)로, 분모를 den(s)로 표시합니다.

    Transfer Fcn block with the Numerator coefficients parameter specified as num and the Denominator coefficients parameter specified as den.

포트

입력

모두 확장

입력 신호로, double형의 스칼라로 지정됩니다.

이 포트는 전달 함수의 분자가 0인 경우에만 직접 피드스루를 갖습니다.

데이터형: double

출력

모두 확장

출력 신호로, double형의 스칼라 또는 벡터로 제공됩니다.

  • 단일 출력 시스템의 경우 블록의 입력과 출력은 스칼라 시간 영역 신호입니다.

  • 다중 출력 시스템의 경우 입력은 스칼라이고 출력은 벡터입니다. 여기서 각 요소는 시스템의 출력입니다.

데이터형: double

파라미터

모두 확장

전달 함수의 분자 계수를 정의합니다.

  • 단일 출력 시스템의 경우 전달 함수의 분자 계수에 대한 벡터를 입력합니다.

  • 다중 출력 시스템의 경우 행렬을 입력합니다. 이 행렬의 각 행은 블록 출력 중 하나를 결정하는 전달 함수의 분자 계수를 포함합니다.

프로그래밍 방식의 사용법

블록 파라미터: Numerator
유형: 문자형 벡터, string형
값: 벡터 | 행렬
디폴트 값: '[1]'

분모 계수로 구성된 행 벡터를 정의합니다.

  • 단일 출력 시스템의 경우 전달 함수의 분모 계수에 대한 벡터를 입력합니다.

  • 다중 출력 시스템의 경우 시스템의 모든 전달 함수에 공통적인 분모 계수를 포함하는 벡터를 입력합니다.

프로그래밍 방식의 사용법

블록 파라미터: Denominator
유형: 문자형 벡터 | string형
값: 벡터
디폴트 값: '[1 1]'

가속화된 시뮬레이션 모드 및 Simulink Compiler™를 사용하여 배포된 시뮬레이션에 대한 분자 계수 및 분모 계수의 조정 가능성 수준입니다. Simulink가 파라미터 조정 가능성의 적절한 수준을 선택할 수 있도록 허용하려면 이 파라미터를 자동으로 설정하십시오.

가속화된 시뮬레이션 및 배포된 시뮬레이션에 대한 생성 코드에서 시뮬레이션 성능 향상을 위해 최적화된 분자 계수 및 분모 계수의 표현을 생성하려면 이 파라미터를 최적화됨으로 설정하십시오.

가속화된 시뮬레이션 및 배포된 시뮬레이션에 대한 생성 코드에서 분자 계수 및 분모 계수의 완전히 조정 가능한 (시뮬레이션 간) 표현을 생성하려면 이 파라미터를 제약 없음으로 설정하십시오. Simulink가 적절한 조정 가능성 수준을 결정하도록 하려면 자동을 선택하십시오.

프로그래밍 방식의 사용법

블록 파라미터: ParameterTunability
유형: 문자형 벡터, string형
값: 'Auto' | 'Optimized' | 'Unconstrained'
디폴트 값: 'Auto'

가변 스텝 솔버는 상태 계산의 오류가 허용되는지를 결정하기 위해 스텝 크기를 선택할 때 절대 허용오차와 상대 허용오차를 사용합니다.

절대 허용오차 구성 파라미터에서 절대 허용오차를 상속하려면 이 파라미터 값을 auto 또는 -1로 지정하십시오.

절대 허용오차 구성 파라미터에 지정된 값을 재정의하는 이 블록의 절대 허용오차를 지정하려면 다음을 수행하십시오.

  • 모든 블록 상태를 계산하는 데 사용할 양의 실수형 스칼라 값을 입력합니다.

  • 블록의 연속 상태 차원과 일치하는 차원을 가진 실수형 벡터를 입력합니다.

프로그래밍 방식의 사용법

블록 파라미터: AbsoluteTolerance
유형: string형 | 문자형 벡터
값: 'auto' | '-1' | 양의 실수형 스칼라 | 양의 실수형 스칼라로 구성된 벡터
디폴트 값: 'auto'

이 블록의 상태에 선택적으로 이름을 할당하려면 이 파라미터를 사용하십시오. 할당한 이름은 이 블록의 상태에만 적용됩니다.

  • 디폴트 상태 이름을 사용하려면 이 필드를 비워 두십시오('').

  • 하나의 상태에 하나의 이름을 할당하려면 따옴표 사이에 이름을 입력하십시오. 예를 들어, 단일 상태의 이름을 position으로 지정하려면 "position"을 입력합니다.

  • 여러 상태에 이름을 할당하려면 이 파라미터 값을 문자형 벡터로 구성된 셀형 배열로 지정하십시오. 셀형 배열의 이름은 서로 달라야 합니다. 예를 들어, a, b, c라는 이름을 할당하려면 {'a','b','c'}를 입력합니다.

  • MATLAB 변수를 사용하여 이름을 지정하려면 따옴표 없이 변수 이름을 입력하십시오. 예를 들어, 변수 names를 사용하여 상태 이름을 지정하려면 names를 입력합니다.

블록의 상태 개수보다 적은 수의 이름을 지정할 수 있습니다. 이 경우 상태 이름은 여러 상태에 사용되며 상태 개수는 상태 이름 개수로 균등하게 나눠야 합니다. 예를 들어, 상태가 4개인 블록에 이름을 2개 지정하면 첫 번째 이름은 처음 2개의 상태에 사용되고 두 번째 이름은 나머지 2개의 상태에 사용됩니다.

프로그래밍 방식의 사용법

블록 파라미터: ContinuousStateAttributes
유형: string형 | 문자형 벡터
값: ' ' | 사용자 정의
디폴트 값: ' '

블록 특성

데이터형

double

직접 피드스루

아니요a

다차원 신호

아니요

가변 크기 신호

아니요

영점교차 검출

아니요

a 이 블록에 대한 직접 피드스루 특성은 블록 파라미터 값에 따라 달라집니다.

확장 기능

버전 내역

R2006a 이전에 개발됨

참고 항목

|

도움말 항목