주요 콘텐츠

IIR Filter

무한 임펄스 응답(IIR) 필터 구현

라이브러리:
Motor Control Blockset / Signal Management
Motor Control Blockset HDL Support / Signal Management

설명

IIR Filter 블록은 지정된 입력 신호에 대해 이산 1차 무한 임펄스 응답(IIR) 필터를 구현합니다. 이 블록은 고정소수점 및 부동소수점 데이터형을 지원합니다. 또한 이 블록은 Motor Control Blockset™에서 제공하는 예제에서 채택된 모델 설정 및 구성과 함께 사용할 경우 최적화된 코드 생성이 가능합니다.

코드 생성을 가능하게 하고 정확한 시뮬레이션을 보장하려면 이 블록에 고정 스텝 이산 솔버를 사용하는 것이 좋습니다.

방정식

필터 계수(a) 블록 파라미터를 사용하여 필터에 필요한 차단 주파수(fc)를 설정함으로써 IIR 필터를 구성할 수 있습니다. 선택적으로, 입력 포트를 통해 필더 계수 값을 제공할 수도 있습니다.

필터의 차단 주파수를 알고 있는 경우 다음 방정식을 사용하여 필요한 필터 계수를 계산할 수 있습니다.

a= ( 2πTsfc2πTsfc+1 )

이 블록에는 지정된 필터 계수 및 샘플 시간에 대한 차단 주파수를 블록 마스크에 표시하는 옵션도 포함되어 있습니다.

필터 유형 파라미터를 사용하여 이 블록을 저역통과 필터 또는 고역통과 필터로 구성합니다.

다음 두 방정식은 이 블록이 해당 출력값을 계산하는 방법을 나타냅니다.

저역통과 필터:

y(k)=au(k)+(1a)y(k1)

고역통과 필터:

y(k)=(1a)[u(k)u(k1)+y(k1)]

여기서

  • fc는 IIR 필터의 차단 주파수입니다.

  • a는 필터 계수(0 < a ≤ 1)입니다.

  • y(k)는 시간 k에서의 출력값입니다.

  • y(k1)은 시간 k1에서의 출력값입니다.

  • x(k)는 시간 k에서의 입력값입니다.

  • x(k1)은 시간 k1에서의 입력값입니다.

  • Ts는 IIR Filter 블록의 샘플 시간입니다.

저역통과 및 고역통과 IIR 필터 둘 다 RC 필터로 모델링할 수 있으며, 이때 상태 값은 커패시터 양단 간의 전압 강하에 해당합니다.

다음 방정식은 블록이 초기 입력값 u0 및 초기 상태 x0으로부터 초기 출력값 y0을 계산하는 방법을 설명합니다.

저역통과 필터:

y0=x0

고역통과 필터:

y0=u0x0

포트

입력

모두 확장

시간 영역에서 원시 입력 신호의 샘플링된 값입니다.

데이터형: single | double | fixed point

IIR 필터의 필터 계수입니다. 이 신호의 데이터형은 입력 신호 x의 데이터형과 동일해야 합니다. 따라서 고정소수점 데이터형과 함께 사용할 경우 신호 정밀도가 제한될 수 있습니다.

종속 관계

이 포트를 활성화하려면 필터 계수 파라미터를 입력 포트로 설정합니다.

데이터형: single | double | fixed point

IIR 필터 상태 신호의 초기값입니다.

종속 관계

이 파라미터를 활성화하려면 초기 상태 파라미터를 입력 포트로 설정합니다.

데이터형: single | double | fixed point

Active High 상태에 있을 때 초기 상태를 전달하도록 블록을 재설정하는 외부 신호입니다.

종속 관계

이 파라미터를 활성화하려면 외부 재설정 파라미터를 Active High일 때 초기 조건으로 재설정으로 설정합니다.

데이터형: single | double | fixed point

출력

모두 확장

시간 영역에서 IIR Filter 블록에 의해 반환된 필터링된 출력 신호입니다.

데이터형: single | double | fixed point

파라미터

모두 확장

IIR 필터의 유형입니다.

다음 방법 중 하나를 선택하여 필터 계수를 지정합니다.

  • 대화 상자를 통해 지정 — 블록 파라미터 대화 상자를 사용하여 필터 계수 값을 지정하려면 이 옵션을 선택합니다.

  • 입력 포트 — 입력 포트를 사용하여 필터 계수 값을 지정하려면 이 옵션을 선택합니다.

IIR 필터의 필터 계수입니다. 이 신호의 데이터형은 입력 신호 x의 데이터형과 동일해야 합니다. 따라서 고정소수점 데이터형과 함께 사용할 경우 신호 정밀도가 제한될 수 있습니다.

종속 관계

이 파라미터를 활성화하려면 필터 계수 파라미터를 대화 상자를 통해 지정으로 설정합니다.

초기 상태 값을 블록 파라미터로 제공할지 아니면 입력 포트로 제공할지 지정합니다.

이 파라미터를 다음 옵션 중 하나로 설정합니다.

  • 대화 상자를 통해 지정 — 블록 파라미터 대화 상자를 사용하여 초기 상태 값을 지정하려면 이 옵션을 선택합니다.

  • 입력 포트 — 입력 포트를 사용하여 초기 상태 값을 지정하려면 이 옵션을 선택합니다.

IIR 필터 상태의 초기값입니다.

종속 관계

이 파라미터를 활성화하려면 초기 상태 파라미터를 대화 상자를 통해 지정으로 설정합니다.

외부 재설정 신호를 입력 포트로 제공할지 여부를 지정합니다.

이 파라미터를 다음 옵션 중 하나로 설정합니다.

  • 없음 — 외부 재설정 신호를 제공하지 않으려면 이 옵션을 선택합니다.

  • Active High일 때 초기 조건으로 재설정 — 입력 포트를 사용하여 외부 재설정 신호를 제공하려면 이 옵션을 선택합니다.

블록에서 이론적 차단 주파수(Hz) 파라미터를 표시하도록 하려면 이 파라미터를 선택합니다.

종속 관계

이 파라미터를 활성화하려면 필터 계수 파라미터를 대화 상자를 통해 지정으로 설정합니다.

연속된 두 블록 실행 사이의 고정 시간 간격(단위: 초)입니다.

참고

이 블록은 이 값을 사용하여 이론적 차단 주파수(Hz)를 계산하고 블록 대화 상자에 표시합니다. 이 파라미터는 블록의 샘플 시간을 설정하지 않습니다. 이 블록은 모델에서 샘플 시간을 상속합니다.

종속 관계

이 파라미터를 표시하려면 다음을 수행합니다.

  • 필터 계수 파라미터를 대화 상자를 통해 지정으로 설정합니다.

  • 차단 주파수 표시 파라미터를 선택합니다.

IIR 필터의 계산된 이론적 차단 주파수(단위: 헤르츠)입니다. 이 파라미터는 구성할 수 없습니다.

종속 관계

이 파라미터를 표시하려면 다음을 수행합니다.

  • 필터 계수 파라미터를 대화 상자를 통해 지정으로 설정합니다.

  • 차단 주파수 표시 파라미터를 선택합니다.

확장 기능

모두 확장

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

고정소수점 변환
Fixed-Point Designer™를 사용하여 고정소수점 시스템을 설계하고 시뮬레이션할 수 있습니다.

버전 내역

R2020a에 개발됨

모두 확장

참고 항목