이 번역 페이지는 최신 내용을 담고 있지 않습니다. 최신 내용을 영문으로 보려면 여기를 클릭하십시오.
Sine Wave
시뮬레이션 시간을 시간 소스로 사용하여 사인파 생성
라이브러리:
Simulink /
Sources
설명
Sine Wave 블록은 정현파 파형을 출력합니다. 블록은 시간 기반 또는 샘플 기반 모드에서 동작할 수 있습니다.
참고
이 블록은 Math Operations 라이브러리에 표시되는 Sine Wave Function 블록과 동일합니다. 블록 대화 상자에서 시간 파라미터에 대해 외부 신호 사용
을 선택하면 Sine Wave Function 블록을 얻게 됩니다.
시간 기반 모드
블록이 출력 파형을 계산합니다.
시간 기반 모드에서는 샘플 시간 파라미터의 값에 따라 블록이 연속 모드에서 동작할지 아니면 이산 모드에서 동작할지 결정됩니다.
0
(디폴트 값)을 선택하면 블록이 연속 모드에서 동작합니다.>0
을 선택하면 블록이 이산 모드에서 동작합니다.
자세한 내용은 샘플 시간 지정하기 항목을 참조하십시오.
연속 모드에서 동작할 경우 Sine Wave 블록은 시간이 아주 길어지면 정밀도가 손실되기 때문에 부정확해질 수 있습니다.
샘플 시간 파라미터 값이 0보다 크면 블록은 샘플 시간이 해당 값으로 설정된 Zero-Order Hold 블록을 구동하는 것처럼 동작합니다.
이 방법을 통해 연속/이산 하이브리드 시스템인 모델이 아니라 순수하게 이산 사인파 소스를 갖는 모델을 구축할 수 있습니다. 하이브리드 시스템은 본질적으로 더 복잡하기 때문에 시뮬레이션 시간이 더 오래 걸립니다.
이산 모드에서 이 블록은 절대 시간에 기반한 알고리즘 대신에 차등 증분 알고리즘을 사용합니다. 따라서 진동이나 피로 테스트 같이 무기한으로 실행되도록 만들어진 모델에는 이 블록이 유용할 수 있습니다.
차등 증분 알고리즘은 이전 샘플 시간에 계산된 값을 기반으로 사인값을 계산합니다. 이 방법에는 다음과 같은 삼각함수 항등식이 사용됩니다.
이 항등식을 행렬 형식으로 표현하면 다음과 같습니다.
Δt가 상수이기 때문에 다음 표현식은 상수입니다.
따라서 이 문제는 의 값에 상수 행렬을 곱하여 를 구하는 행렬 곱셈 문제가 됩니다.
이산 모드는 반올림 오차 누적을 줄이기는 하지만 완전히 없애지는 못합니다. 각 시간 스텝에서의 블록 출력 계산이 이전 시간 스텝에서의 출력값에 종속되기 때문에 이러한 누적이 발생할 수 있습니다.
Sine Wave block이 시간 기반의 이산 모드에서 동작하는 경우 반올림 오차를 처리하려면 다음 방법 중 하나를 사용하십시오.
방법 | 근거 |
---|---|
Saturation 블록을 직접 Sine Wave 블록의 다운스트림으로 삽입하십시오. | Sine Wave 블록 출력에 포화 한도를 설정하여 반올림 오차 누적으로 인한 오버슈트를 제거할 수 있습니다. |
Sine Wave 블록에서
|
|
샘플 기반 모드
샘플 기반 모드는 다음 공식에 따라 Sine Wave 블록의 출력을 계산합니다.
A는 사인파의 진폭입니다.
p는 사인파 주기당 시간 샘플 수입니다.
k는 0부터 p–1 까지 범위에서 반복되는 정수 값입니다.
o는 신호의 오프셋(위상 변위)입니다.
b는 신호 편향입니다.
이 모드에서 Simulink®는 첫 번째 시간 스텝에서 k를 0
으로 설정하고, 해당 공식을 사용하여 블록 출력을 계산합니다. Simulink는 그다음 시간 스텝에서 k를 증분하고 블록의 출력을 다시 계산합니다. k가 p에 도달하면, Simulink는 블록 출력을 계산하기 전에 k를 0
으로 재설정합니다. 이 프로세스는 시뮬레이션이 끝날 때까지 계속됩니다.
지정된 시간 스텝에서 블록 출력을 계산하는 샘플 기반 방법은 이전 시간 스텝의 출력에 종속되지 않습니다. 따라서 이 모드에서는 반올림 오차 누적이 방지됩니다. 샘플 기반 모드는 재설정을 제공하는 서브시스템에서 재설정 의미 체계를 지원합니다. 예를 들어, Sine Wave 블록이 재설정 트리거를 받는 Resettable Subsystem에 있다면 반복 정수 k
를 재설정하고 블록 출력을 초기 조건으로 재설정합니다.
예제
포트
출력
파라미터
블록 특성
데이터형 |
|
직접 피드스루 |
|
다차원 신호 |
|
가변 크기 신호 |
|
영점교차 검출 |
|
확장 기능
버전 내역
R2006a 이전에 개발됨