Этот пример показов, как найти среднее корневое значение квадрата (RMS) синусоиды, квадратной волны и прямоугольной последовательности импульсов, используя rms
. Формы волны в этом примере являются версиями в дискретном времени их аналогов в непрерывном времени.
Создайте синусоиду с частотой рад/образец. Длина сигнала составляет 16 выборки, что равняется двум периодам синусоиды.
n = 0:15; x = cos(pi/4*n);
Вычислите значение RMS синусоиды.
rmsval = rms(x)
rmsval = 0.7071
Значение RMS равно , как и ожидалось.
Создайте периодическую квадратную волну с периодом 0,1 секунды. Значения квадратной волны колеблются между и .
t = 0:0.01:1;
x = 2*square(2*pi*10*t);
stem(t,x,'filled')
axis([0 1 -2.5 2.5])
Найдите значение RMS.
rmsval = rms(x)
rmsval = 2
Значение RMS согласуется с теоретическим значением 2.
Создайте прямоугольную последовательность импульсов, дискретизированный с частотой дискретизации 1 кГц со следующими параметрами: импульс включен или равен 1 в течение 0,025 секунд и выключен, или равен 0, в течение 0,075 секунд в каждом интервале 0,1 секунды. Это означает, что период импульса составляет 0,1 секунды, и импульс включен в течение 1/4 этого интервала. Это называется коэффициентом заполнения. Использование pulstran
для создания прямоугольной последовательности импульсов.
t = 0:0.001:(10*0.1); pulsewidth = 0.025; pulseperiods = [0:10]*0.1; x = pulstran(t,pulseperiods,@rectpuls,pulsewidth); plot(t,x) axis([0 1 -0.5 1.5])
Найдите значение RMS и сравните его с RMS непрерывного времени прямоугольной импульсной формы волны с коэффициентом заполнения 1/4 и пиковой амплитудой 1.
rmsval = rms(x)
rmsval = 0.5007
thrms = sqrt(1/4)
thrms = 0.5000
Наблюдаемые значение RMS и значение RMS для прямоугольной импульсной формы волны непрерывного времени хорошо согласуются.