2016-09-21 9 views
0

matlab에서이 전달 함수를 입력하려고하는데 양수 지수와 음수 지수가 모두 있기 때문에 어떻게 계산할 수 있습니까?MATLAB에서 tf() 함수 사용

enter image description here

내가 H = tf([1],[1 1 1 1],0.1,'variable','z^-1') 할 경우에 나는 거의 그것을 얻을,하지만 난 바닥에 긍정적 인 z를 추가하는 방법을 알아낼 수 없습니다. 이 H을 사용하여 pzmap(H)으로 극점과 영점을 그려 봅니다. 음의 지수를 방지하기 위해

+0

당신이 얻을,하지만 당신은 당신의 전송 기능을 단순화 할 수 있어야하고 대신에'H (z) = 1/(z^-1 + 1 + z^-2 + z^-3 + z^-4)'를 사용 하시겠습니까? – Prakhar

+0

그래, 아마도 내가해야 할 일은 Z가 곱해진 이유는 z- 변환을 처음 사용했기 때문이며 Z = 0을 극점과 함께 설정하여 분자에 0을 넣어야한다고 생각했습니다. – Austin

답변

0

, 우리는 z^3에 의해 분모와 분자를 모두 곱하면 수 있습니다 : 당신은 만들 수 있습니다

H = tf([1 0 0 0 0],[1 1 1 1 1],0.1,'variable','z') 

또는 z

H = tf([1],[1 1 1 1 1],0.1,'variable','z^-1') 
+0

음의 지수를 피하기를 원하지 않습니다. 양수와 음수 지수를 혼합하여 매치하고 싶습니다. 제가 게시 한 H (z)는 제가 얻으려는 것입니다. 반면에 내가 게시 한 tf()는 분모에 + z^1이 없어서 그것을 달성하지 못했습니다. – Austin

+0

나는 애매 모호하지 않고서는이 일을 할 수 없다. 그러나 그것이 가능하다면 그것은'H = tf ({[1], 0}, {[1 1 1 1], [0,1]}, 0.1, 'variable', { 'z^-1 ','z '})'. 나는 지금 matlab에 접근 할 수 없다. 따라서, 나는 이것을 확인할 수 없다. –

+0

아,이 오류가 발생합니다 : 연속 시간 시스템의 경우 "변수"속성을 문자열 's'또는 'p'중 하나로 설정하고 문자열 'z', 'q', ' z^-1 '또는'q^-1 '일 수있다. – Austin

0

하여 분할

z = tf('z', 0.1) 

그런 다음 원하는 전달 함수를 만듭니다 (예 :

H = z/(1 + z + z^-1 + z^-2 + z^-3) 

그러나, matlab에 자동으로 Hz없이 z^-1 포함 전달 함수를 만들기 위해, z=0에 추가 극 제로 쌍을 추가합니다. 따라서 z=0에만 여러 개의 폴이 표시됩니다. 불행히도 Matlab이 그 일을하지 못하도록하는 해결책을 찾지 못했습니다 ...

+0

왜 그런지는 모르겠지만 다음과 같이 나타납니다. H = z^7 / z^7 + z^6 + z^5 + z^4 + z^3 – Austin

0

전달 함수라고 부르는 것을 실제로 구현 속성 때문에 DSP 표현이라고합니다. z의 모든 힘은 단위 지연입니다. 따라서 filt을 사용해야합니다. 이 표현에서 Z의 용어는 분모에서 하나의 Z를 고려 따라서 경우 정이 힘을 가지고 상쇄 내가 전에`사용하지 tf` 적이

H = filt(1,[1,1,1,1,1])