Main Content

Filtered Derivative (Discrete or Continuous)

이산시간 필터링된 도함수 또는 연속시간 필터링된 도함수

  • Filtered Derivative (Discrete or Continuous) block

라이브러리:
Simscape / Electrical / Control / General Control

설명

Filtered Derivative (Discrete or Continuous) 블록은 IEEE 421.5-2016[1]을 준수하는 필터링된 도함수를 구현합니다.

샘플 시간 파라미터를 사용하여 도함수의 연속 구현과 이산 구현 간에 전환할 수 있습니다.

방정식

연속

연속시간에 대해 필터링된 도함수를 구성하려면 샘플 시간 속성을 0으로 설정합니다. 다음 표현은 연속 전달 함수와 동일합니다.

G(s)=KsTs+1,

여기서 각각은 다음과 같습니다.

  • K는 이득입니다.

  • T는 시정수입니다.

위의 전달 함수에서 도함수 정의 방정식은 다음과 같습니다.

{x˙(t)=1T(Ku(t)x(t))y(t)=1T(Ku(t)x(t))x(0)=u0,y(0)=0,

여기서 각각은 다음과 같습니다.

  • u는 블록 입력입니다.

  • x는 상태입니다.

  • y는 블록 출력입니다.

  • t는 시뮬레이션 시간입니다.

  • u0은 블록에 대한 초기 입력입니다.

이산

이산시간에 대해 필터링된 도함수를 구성하려면 샘플 시간 속성을 0이 아닌 양의 값으로 설정하거나 -1로 설정하여 업스트림 블록에서 샘플 시간을 상속합니다. 다음 이산 표현은 전달 함수와 동일합니다.

(KT)z1z+Ts/T1,

여기서 각각은 다음과 같습니다.

  • K는 이득입니다.

  • T는 시정수입니다.

  • Ts는 샘플 시간입니다.

이산 전달 함수에서 도함수 방정식은 순방향 오일러 방법을 사용하여 정의됩니다.

{x(n+1)=(1TsT)x(n)+(TsT)u(n)y(n)=KT(u(n)x(n))x(0)=u0,y(0)=0,

여기서 각각은 다음과 같습니다.

  • u는 블록 입력입니다.

  • x는 블록 상태입니다.

  • y는 블록 출력입니다.

  • n은 시뮬레이션 시간 스텝입니다.

  • u0은 블록에 대한 초기 입력입니다.

초기 조건

이 블록의 초기 조건을 지정하려면 초기화를 다음과 같이 설정합니다.

  • 블록 입력에서 상속됨 — 블록은 상태 초기 조건을 초기 입력으로 설정하여 초기 출력을 0으로 만듭니다.

  • 파라미터로 지정 — 블록은 상태 초기 조건을 초기 상태의 값으로 설정합니다.

출력 제한

포화 상한 파라미터와 포화 하한 파라미터를 유한한 값으로 설정하여 필터링된 도함수 출력을 제한합니다.

IEEE 421.5-2016에 제공된 다른 일반적인 블록과 달리 필터링된 도함수의 와인드업 포화 방법과 안티와인드업 포화 방법에는 차이가 없습니다. 출력이 포화되면 출력이 입력 부호의 반전에 즉시 응답할 수 있습니다.

포트

입력

모두 확장

필터링된 도함수 입력 신호입니다. 블록은 입력 초기값을 사용하여 상태 초기값을 결정합니다.

데이터형: single | double

출력

모두 확장

필터링된 도함수 출력 신호입니다.

데이터형: single | double

파라미터

모두 확장

필터링된 도함수 이득입니다.

필터링된 도함수 시정수입니다. 허용 가능한 정확도를 얻으려면 이 값을 샘플 시간보다 10배 이상 더 크게 설정합니다.

필터링된 도함수 출력 상한입니다. 포화되지 않은 상한인 경우 이를 inf로 설정합니다.

필터링된 도함수 출력 하한입니다. 포화되지 않은 하한인 경우 이를 -inf로 설정합니다.

허용되는 시정수 대비 최소 샘플 시간 비입니다. 샘플 시간이 시정수에 가까워질수록 블록의 정확도가 감소합니다. 이 파라미터를 사용하여 이 비의 허용오차를 설정합니다.

이 블록의 초기 상태 조건을 지정합니다. 자세한 내용은 초기 조건 항목을 참조하십시오.

블록 초기 상태입니다.

종속 관계

이 파라미터를 활성화하려면 초기화파라미터로 지정으로 설정합니다.

연속적인 블록 실행 간의 시간입니다. 실행하는 동안 블록은 출력을 생성하고 필요한 경우 내부 상태를 업데이트합니다. 자세한 내용은 샘플 시간이란? 항목과 샘플 시간 지정하기 항목을 참조하십시오.

상속된 이산시간 동작의 경우 -1을 지정합니다. 이산시간 동작의 경우 양의 정수를 지정합니다. 연속시간 동작의 경우 0을 지정합니다.

허용 가능한 정확도를 얻으려면 이 값을 시정수 파라미터보다 10배 이상 더 작게 설정합니다.

이 블록이 마스크 처리된 서브시스템에 있거나 연속 동작과 이산 동작을 허용하는 다른 Variant 서브시스템에 있는 경우 샘플 시간 파라미터를 승격합니다. 샘플 시간 파라미터를 승격하면 블록의 연속 구현과 이산 구현 간의 올바른 전환을 보장할 수 있습니다. 자세한 내용은 Promote Block Parameters on a Mask 항목을 참조하십시오.

참고 문헌

[1] IEEE. 2016. IEEE Recommended Practice for Excitation System Models for Power System Stability Studies. IEEE Std 421.5-2016. Piscataway, NJ: IEEE-SA, 2016.

확장 기능

C/C++ 코드 생성
Simulink® Coder™를 사용하여 C 코드나 C++ 코드를 생성할 수 있습니다.

버전 내역

R2017b에 개발됨