Main Content

사각 펄스 파형의 듀티 사이클

이 예제에서는 사각 펄스 파형을 생성하고 그 듀티 사이클을 측정하는 방법을 보여줍니다. 사각 펄스 파형은 일련의 켜짐 상태와 꺼짐 상태로 간주할 수 있습니다. 하나의 펄스 주기는 켜짐 상태와 꺼짐 상태가 한 번씩 지속되었을 때의 총 지속 시간입니다. 펄스 폭은 켜짐 상태가 지속된 시간입니다. 듀티 사이클은 펄스 주기에 대한 펄스 폭의 비율입니다. 따라서 사각 펄스의 듀티 사이클은 해당 펄스가 하나의 펄스 주기에서 켜져 있는 시간의 비율을 나타냅니다.

1기가헤르츠로 샘플링된 사각 펄스를 생성합니다. 이 펄스는 1마이크로초 동안 켜져 있습니다. 즉, 값이 1입니다. 이 펄스는 3마이크로초 동안 꺼져 있습니다. 즉, 값이 0입니다. 펄스 주기는 4마이크로초입니다. 파형을 플로팅합니다.

Fs = 1e9;
t = 0:1/Fs:(10*4e-6);

pulsewidth = 1e-6;
pulseperiods = [0:10]*4e-6;

x = pulstran(t,pulseperiods,@rectpuls,pulsewidth);

plot(t,x)
axis([0 4e-5 -0.5 1.5])

Figure contains an axes object. The axes object contains an object of type line.

dutycycle을 사용하여 파형의 듀티 사이클을 구합니다. 펄스 파형과 샘플 레이트를 모두 입력하여 듀티 사이클을 출력합니다. dutycycle은 감지된 각 펄스의 듀티 사이클 값을 출력합니다.

D = dutycycle(x,Fs)
D = 1×9

    0.2500    0.2500    0.2500    0.2500    0.2500    0.2500    0.2500    0.2500    0.2500

이 예제의 경우 감지된 각 펄스의 듀티 사이클이 0.25로 동일합니다. 이 듀티 사이클은 예상된 결과로, 펄스가 각 4마이크로초 주기에서 1마이크로초 동안 켜져 있고 3마이크로초 동안 꺼져 있기 때문입니다. 즉, 펄스는 각 주기의 1/4 동안 켜져 있습니다. 이를 백분율로 표현하면 25%의 듀티 사이클에 해당합니다.

출력 인수 없이 dutycycle을 호출하면 감지된 모든 펄스 폭이 표시된 플롯이 생성됩니다.

dutycycle(x,Fs);

Figure Duty Cycle Plot contains an axes object. The axes object with xlabel Time (seconds), ylabel Level (Volts) contains 9 objects of type line. One or more of the lines displays its values using only markers These objects represent signal, mid cross, upper boundary, upper state, lower boundary, mid reference, lower state.

같은 샘플 레이트와 펄스 주기를 적용하여, 루프에서 펄스가 켜져 있는 시간(펄스 폭)을 1마이크로초에서 3마이크로초까지 달리하면서 듀티 사이클을 계산합니다. 펄스 파형을 플로팅하고, 루프의 각 단계에 대한 듀티 사이클 값을 플롯 제목에 표시합니다. 펄스 폭이 증가하면 듀티 사이클이 0.25(1/4)에서 0.75(3/4)로 증가합니다.

nwid = 3;

for nn = 1:nwid
    x = pulstran(t,pulseperiods,@rectpuls,nn*pulsewidth);
    
    subplot(nwid,1,nn)
    plot(t,x)
    axis([0 4e-5 -0.5 1.5])
    
    D = dutycycle(x,Fs);
    title(['Duty cycle is ' num2str(mean(D))])
end

Figure Duty Cycle Plot contains 3 axes objects. Axes object 1 with title Duty cycle is 0.25 contains an object of type line. Axes object 2 with title Duty cycle is 0.5 contains an object of type line. Axes object 3 with title Duty cycle is 0.75 contains an object of type line.

참고 항목

|