Метода, страница 3
Описание файла
PDF-файл из архива "Метода", который расположен в категории "". Всё это находится в предмете "статистическая динамика" из 10 семестр (2 семестр магистратуры), которые можно найти в файловом архиве МГТУ им. Н.Э.Баумана. Не смотря на прямую связь этого архива с МГТУ им. Н.Э.Баумана, его также можно найти и в других разделах. Архив можно найти в разделе "книги и методические указания", в предмете "статистическая динамика" в общих файлах.
Просмотр PDF-файла онлайн
Текст 3 страницы из PDF
д.) применяют функцию gensig:[u,t] = gensig(type,tau,Tf,Ts)17Параметр tau задает период сигнала, Tf — длительность сигнала, Ts — дискретность задания сигнала в секундах. Параметрtype определяет вид сигнала и может принимать следующие значения: 'sin' — синусоида с периодом tau; 'square' — периодический сигнал, равный нулю в течение первых tau/2 секунд периода и единице в оставшееся время периода; 'pulse' —периодический сигнал, равный нулю в течение первых Ts секундпериода и единице в оставшееся время периода.Функция gensig определяет два вектора u и t.
Компоненты вектора t: ti = Ts (i − 1), i = 1, 2, ..., (Tf / Ts + 1).Компоненты вектора u — это значения сигнала в моментывремени ti: ui = u (ti ) . Например, команда[u,t] = gensig('square',5,30,0.1)создает периодические прямоугольные импульсы с периодом 5 с,длительностью 30 с, периодом дискретизации 0,1 с.2.3.
Моделирование линейной системыБудем считать, что задана передаточная функция линейнойсистемы. Требуется определить сигнал на выходе этой системы.Для этого сначала необходимо записать передаточную функциюсистемы в виде, принятом в пакете MATLAB. Для этого используется функция tf. Поясним ее применение с помощью примера.Пусть передаточная функция разомкнутой системы задана в видеWраз ( s ) =10000(5 s + 4).s + 60 s 2 + 500 s + 100003Требуется записать в коде программы эту передаточную функцию,а также передаточную функцию замкнутой системы.
Запись имеетследующий вид:s = tf('s')% Передаточная функция разомкнутой системыW_razomk = 10000*(5*s+4)/(s^3+...60*s^2+500*s+10000)18% Передаточная Функция замкнутой системыW = W_razomk/(1+W_razomk)В случае, если необходимо записать передаточную функциюлинейного усилителя (например, W(s) = 2), необходимо использовать вырожденную форму записи:s = tf('s')% Передаточная функцияW = 2*s/sВ тексте программы знак % означает начало комментария —строка, начинающаяся с такого знака, исполняться не будет.Для определения реакции системы на заданное воздействие u(t)используется функция lsim:lsim(sys,u,t)Векторы t и u задаются аналогично функции gensig (см.выше).
Матрица u должна иметь столько же столбцов, скольковходов в системе. Каждая строка u(i,:) определяет значениясигналов на входах системы в моменты времени t(i).3. МЕТОДИЧЕСКИЕ УКАЗАНИЯК ВЫПОЛНЕНИЮ ЛАБОРАТОРНЫХ РАБОТ3.1. Работа № 1. Формирование случайного сигналас заданной спектральной плотностьюЦель работы — сформировать на ПЭВМ случайный процесс сзаданной спектральной плотностью и провести исследование егохарактеристик.Порядок выполнения работы1. Для спектральной плотности случайного процесса, заданнойпреподавателем, сформировать передаточную функцию формирующего фильтра.2. С помощью пакета MATLAB выполнить моделированиеформирующего фильтра и убедиться в правильности составленнойпрограммы.193.
Сформировать случайный сигнал типа белого шума с заданной интенсивностью. Получить графическое отображение сигналана экране монитора.4. Определить статистические характеристики случайногосигнала на выходе формирующего фильтра (математическогоожидания, спектральной функции, дисперсии, автокорреляционной функции) для десяти реализаций.
Получить на экране вид реализаций случайного процесса на выходе формирующего фильтра.5. Выполнить статистический анализ для ста реализаций. Сравнить полученные результаты с результатами обработки десятиреализаций. Распечатать графики корреляционной функции испектральной плотности. Сравнить их с выражениями, которыебыли заданы. Сделать вывод о качестве выполненного эксперимента, т. е. о соответствии сформированного случайного сигналазаданному.Для определения характеристик формирующего фильтра позаданной спектральной плотности случайного сигнала необходимопредставить выражение для числителя и знаменателя спектральной плотности в следующем виде:S (ω) =P ( jω) P ( − jω ),Q ( jω)Q (− jω)где P ( jω) и Q( jω) — многочлены от переменной jω .Тогда с учетом (31) амплитудно-фазовая частотная характеристика формирующего фильтра будет иметь видW ( jω) =P ( jω).Q ( jω)Пример выполнения работы № 1Спектральная плотность случайного сигнала задана в видеS (ω ) =1.
Определимфильтра:2011=.20, 25ω + 1 (−0,5 jω + 1)(0,5 jω + 1)частотнуюхарактеристикуформирующегоW ( jω ) =1.0,5 jω + 12. Сформируем с помощью пакета MATLAB требуемыйслучайный сигнал. Для этого вначале необходимо очиститьпространство переменных от данных, которые могли остаться от предыдущих запусков программы:clear;s = tf('s')3. Запишем передаточную функцию формирующего фильтра:W_form = 1/(0.5*s+1)4.
Положим дисперсию белого шума равной единице:disp_val=15. Будем обрабатывать одновременно 10 реализаций случайного процесса:num_ser = 106. Зададим период дискретизации:time_scale = 0.0017. Зададим размеры массива и заполним массив времени. Длительность периода обработки установим равной 2 с. Если времяпереходного процесса в системе превышает 1 с (это станет понятно при выполнении лабораторной работы), то длительность периода обработки необходимо увеличить.t_obrabotki = 2;[u,t] = gensig('square', 1, t_obrabotki, ...time_scale);size_u = size(u,1)8.
Создадим 10 реализаций белого шума с длиной size_u идисперсией disp_val:r = randn(num_ser,size(u,1));noise_= zeros(num_ser,size(u,1));for series = 1:num_ser21for i = 1:size(u,1)noise_(series,i) = sqrt(disp_val)* ...r(series,i);end; end;9. Пропустим семейство реализаций белого шума через формирующий фильтр при помощи функции lsim:ai_noise = zeros(1,size(u,1));modell_inp = zeros(num_ser,size(u,1));for series = 1:num_serfor i = 1:size(u,1)ai_noise(i)=noise_(series,i);end;model_i_noise=lsim(W_form,ai_noise,t);for i = 1:size(u,1)modell_inp(series,i) = ...model_i_noise(i);end; end;10.
Выполним оценку результатов. Исследуем для этого семейство реализаций выходного сигнала формирующего фильтраmodell_inp. Для этого значения массива modell_inp запишемв массив values:values= zeros(num_ser,size(u,1));for j = 1:num_serfor i = 1:size(u,1)values(j, i) = modell_inp(j,i);end; end;11. Проведем расчет среднего по множеству реализаций случайного процесса по формуле (14):mean_= mean(values,1);12.
Определим дисперсию случайного процесса по формуле(16) с коррекцией на шаг дискретизации:std_= std(values,0,1);disp_= zeros(1,size_u);for i = 1:size_u22disp_(i) = std_(i)^2/time_scale;end;13. Рассчитаем оценку корреляционной функции и спектральной плотности по формулам (15), (26), (43), (44):value_r = zeros(1,size(u,1));covv = zeros(num_ser, 2*size_u-1);NFFT = 2^nextpow2(size_u);spec = zeros(num_ser, NFFT);for series = 1:num_serfor i = 1:size_uvalue_r(i) = values(series,i);end;[covvb,lags_] = xcov(value_r,'coeff');for i = 1:(2*size_u-1)covv(series,i) = covvb(i);end;temp_sp = 2*abs(fft(value_r,NFFT))/size_u;for i = 1:NFFTspec(series, i) = temp_sp(i);end;end;cov_= mean(covv,1);f = 1/time_scale*0.5*linspace(-0.125, ...0.125, NFFT/8);spect_= mean(spec,1);lags_= lags_*time_scale;14.
Отобразим результаты на экран в виде графиков.14.1. Белый шум (рис. 5):plot(t, noise_); grid on;xlabel('t, cекунды', 'FontSize', 12);set(gca, 'FontSize', 12);14.2. Белый шум, пропущенный через фильтр (рис. 6):plot(t,values); grid on;xlabel('t, cекунды', 'FontSize', 12);set(gca, 'FontSize', 12);23Рис. 5. Белый шумРис. 6. Белый шум, пропущенный через фильтр2414.3.
Среднее по множеству реализаций выходного сигнала —оценка математического ожидания (рис. 7):plot (t, mean_); grid on;xlabel('t, cекунды', 'FontSize', 12);set(gca, 'FontSize', 12);Рис. 7. Среднее по множеству реализацийвыходного сигнала14.4. Дисперсия (рис. 8):plot (t, disp_); grid on;xlabel('t, cекунды', 'FontSize', 12);set(gca, 'FontSize', 12);14.5. Корреляционная функция (рис. 9):plot (lags_, cov_); grid on;xlabel('\tau, секунды', 'FontSize', 12);ylabel('K(\tau)', 'FontSize', 12);title('Корреляционная функция', ...'FontSize', 12);set(gca, 'FontSize', 12);25Рис. 8. Дисперсия выходного сигнала системыРис.
9. Корреляционная функция выходного сигнала системы14.6. Спектральная плотность (рис. 10):plot(f, [spect_(NFFT/16:-1:1) ...spect_(1:NFFT/16)]); grid on;xlabel('\omega, Гц', 'FontSize', 12);26ylabel('S(\omega)', 'FontSize', 12);title('Спектральная плотность', ...'FontSize', 12);set(gca, 'FontSize', 12);Рис. 10. Спектральная плотность выходного сигнала системыНаблюдаемый провал графика в районе малых частот вызвантем, что частота обратно пропорциональна периоду колебаний, идля малых частот не хватает длительности периода наблюдениядля построения достоверной оценки спектральной плотности.Требования к отчетуОтчет о выполненной работе должен содержать:– текст команд, выполненных в среде MATLAB,– распечатки графиков, отображающих основные статистические характеристики процессов на выходе формирующего фильтра(математическое ожидание, дисперсию, корреляционную функциюи спектральную плотность);– сопоставление характеристик заданного и полученного в результате эксперимента случайных процессов.273.2.