Реферат по предмету "Информатика, программирование"


Генерирование коррелированных случайных процессов в среде LabVIEW

Введение
LabVIEW (Laboratory Virtual Instrument Engineering Workbench) позволяет разрабатыватьприкладное программное обеспечение для организации взаимодействия сизмерительной и управляющей аппаратурой, сбора, обработки и отображенияинформации и результатов расчетов, а также моделирования как отдельныхобъектов, так и автоматизированных систем в целом. Разработчиком LabVIEWявляется американская компания National Instruments.
В отличие от текстовых языков, таких как C, Pascal и др., гдепрограммы составляются в виде строк текста, в LabVIEW программы создаются ввиде графических диаграмм, подобных обычным блок-схемам. Иногда можно создатьприложение, вообще не прикасаясь к клавиатуре компьютера.
LabVIEW является открытой системой программирования и имеетвстроенную поддержку всех применяемых в настоящее время программныхинтерфейсов, таких как Win32 DLL, COM.NET, DDE, сетевых протоколов на базе IP,DataSocket и др. В состав LabVIEW входят библиотеки управления различнымиаппаратными средствами и интерфейсами, такими как PCI, CompactPCI/PXI, VME,VXI, GPIB (КОП), PLC, VISA, системами технического зрения и др. Программныепродукты, созданные с использованием LabVIEW, могут быть дополнены фрагментами,азработанными на традиционных языках программирования, например C/С++, Pascal, Basic, FORTRAN. И наоборот можноиспользовать модули, разработанные в LabVIEW в проектах, создаваемых в другихсистемах программирования. Таким образом, LabVIEW позволяет разрабатыватьпрактически любые приложения, взаимодействующие с любыми видами аппаратныхсредств, поддерживаемых операционной системой компьютера.

1. Генерированиекоррелированных случайных процессов
N-мерная плотность распределениявероятности wN(x1, x2, …xN) связывает каждый отсчет случайнойпоследовательности со всеми остальными отсчетами. Такое описание очень сложно ина практике используются более простые модели случайного процесса с зависимымиотсчетами. Наиболее известны две: марковская модель испектрально-корреляционная модель. В марковской модели каждый отсчет случайногопроцесса зависит только от одного предыдущего (марковский процесс первогопорядка). Для него N-мерная плотностьраспределения вероятности
wN(x1, x2, … xN) = w(x1)w(x2/x1) w(x3/,x2)*…* w(xN/ xN — 1) = w(x1)∏w(xi/xi– 1).
Марковский процесс неявляется чисто теоретическим допущением, таким будет процесс на выходеинтегрирующей цепи при подаче на ее вход белого шума.
Спектрально-корреляционнаямодель оперирует с двумерной плотностью распределения вероятности w(x1, x2), связывающей отсчеты случайного процесса,взятые в разные моменты времени x1 = x(t1) и x2 = x(t2). Если изменять t1 и t2, то можно исследовать попарную связьвсех отсчетов между собой и, в принципе, последовательно определить все связи,описываемые N-мерным законом распределения. Вспектрально-корреляционной модели для описания этой связи используетсякорреляционный (второй смешанный центральный) момент:
/>

Стационарные случайныепроцессы характеризуются неизменностью характеристик во времени, и для такихпроцессов корреляционный момент не зависит от выбора начального момента времениt1, а определяется только величиной интервала τ = t2 – t1.
Зависимостькорреляционного момента от временного интервала τ между отсчетами называетсякорреляционной функцией R(τ) случайного процесса. При τ = 0значение корреляционной функции максимально и равно дисперсии случайногопроцесса σ2. С увеличением |τ| корреляционная функцияуменьшается до нуля монотонно или по колебательному закону.Примоделировании всегда используется реализация случайного процесса конечной длиныи в измеренной корреляционной функции появляются нескомпенсированные остатки.Уровень этих остатков тем меньше, чем больше длина реализации. На рис. 1показаны корреляционные функции для случайной последовательности с треугольнойфункцией корреляции для количества отсчетов последовательности, равным 100(рис. 1, а) и 10000 (рис. 1.б).
/>
/> а) б)
Рис. 1
Случайный процессназывается некоррелированным, если корреляционная функция равна нулю для любогоτ, отличного от нуля. Для некоррелированного процесса R(τ) = σ2δк(τ), где δк(τ)– символ Кронекера: он равен 1 при τ = 0 и нулю при всех других τ.Вообще говоря, некоррелированность не означает независимости. Это можнопояснить следующим примером.
/>
Рис. 2
Пусть случайная величина Y = 4X12+ X2, где X1 и X2 – независимые случайные величины, равномерно распределенныев интервале (– 1/2, 1/2). Ясно, что Y связана с X1 статистической зависимостью (см.рис. 2). Однако корреляционный момент
/>
так как каждый изинтегралов является интегралом от нечетной функции в симметричных пределах.
Рассмотреннаястатистическая связь является нелинейной и никак не отражается в корреляционнойфункции. Корреляционная функция характеризует только линейнуюстатистическую зависимость между отсчетами случайного процесса.
Для измерениякорреляционной функции в LabVIEWсуществует несколько виртуальных приборов. В данной работе используетсяэкспресс-ВП Convolution and Correlation (Свертка и корреляция) (рис. 3 а),так как он представляет собой завершенную программу, не требует никакихдополнительных узлов управления и удобен в использовании. Панельконфигурирования экспресс-ВП Convolution and Correlation показана на рис. 3, б).
/>
Рис. 3
Корреляционная функциясвязана с энергетическим спектром случайного процесса преобразованиемВинера-Хинчина, которое по форме совпадает с двусторонним преобразованиемФурье. Энергетический спектр случайной последовательности, содержащей N отсчетов, рассчитывается какдвустороннее дискретное преобразование Фурье (ДПФ) от дискретной корреляционнойфункции R(n):

/>
где fk = k/N*Δt – частота спектральной составляющей,Δt – временной интервал между соседнимиотсчетами случайного процесса, или интервал дискретизации.
Из приведенного выраженияследует, что энергетический спектр случайной последовательности являетсядискретным и периодическим (рис. 4). Он содержит гармоники частоты f1 = 1/N*Δt. Это самая низкая частота спектра,так как за время, равное длительности случайной последовательности N*Δt, укладывается только один период колебания этойчастоты.
/>
Рис. 4
Рис.  4   Период спектра равенчастоте дискретизации fд = 1/ Δt. Как видим, для определения спектра на любой частотедостаточно знания спектра в диапазоне частот от 0 до половины частотыдискретизации. Поэтому максимальная частота спектра, отображаемого на экраневиртуального прибора равна fд/2.
LabVIEW располагает разнообразными ВП дляспектрального анализа (более 20 типов). Воспользуемся экспресс-ВП Spectral Measurements (Рис. 5), в котором предусмотренавозможность усреднения (Averaging) и оконной обработки (Window)для уменьшения краевых эффектов.

/>/>
а)                б)
Рис. 5
2. Генерированиекоррелированных случайных последовательностей
Чаще всего длягенерирования коррелированных случайных последовательностей используется методформирующего фильтра. Если на вход линейного формирующего фильтра подать белыйшум x(t), то на его выходе будет коррелированный случайный процесс y(t) с корреляционной функцией, определяемой характеристикамифильтра. Энергетический спектр случайного процесса связан с частотнойхарактеристикой фильтра соотношением:
Sy(ω) = σx2|K(jω)|2,                      (1)
а корреляционная функцияопределяется импульсной характеристикой фильтра.
Задача определенияхарактеристик фильтра по заданной корреляционной функции (задача синтеза)достаточно сложна, поэтому в лабораторной работе мы остановимся только навопросах реализации фильтров и оценки влияния параметров фильтра на формукорреляционной функции.
Метод скользящегосуммирования В методе скользящего суммирования (скользящего среднего) выходнойпроцесс определяется как весовая сумма отсчетов входного процесса, взятых внастоящий t = nΔt и предшествующие моменты времени:
y(nΔt) = b0x(nΔt) + b1 x(nΔt – Δt) + b2 x(nΔt – 2Δt) + … + bk x(nΔt – kΔt). ( 2)
В следующий моментвремени t = nΔt + Δt
y(nΔt + Δt) =
= b0x(nΔt +Δt) + b1 x(nΔt)+ b2 x(nΔt – Δt) + … + bk x(nΔt – (k – 1) Δt)
и т.д. для последующих моментов времени.
Значения корреляционной функции выходного процесса определятся какматематическое ожидание произведения отсчетов выходного процесса, отстоящихдруг от друга на интервал iΔt.
Ry(iΔt) =M{ y(nΔt)y(nΔt +iΔt)}.
Учитывая, что входной процесс не коррелирован и, следовательно,
M{ x(nΔt)x(nΔt +iΔt)}= σx2δк(iΔt),
Получим
Ry(0) = σy2= (b02 + b12+ b22 + … + bk2)σx2,
Ry(Δt) =(b0b1 + b1b2 + b2b3 + … + bk– 1bk)σx2,
Ry(2Δt) =(b0b2 + b1b3 + … + br– 2bk)σx2,
Ry(kΔt) =b0bkσx2,
Ry(kΔt + Δt) = 0.
Эти уравнения позволяют легко решить задачу анализа: рассчитатькорреляционную функцию по известным коэффициентам bi.Задача синтеза: найти коэффициенты фильтра biпо заданной корреляционной функции в общем случае не решена. Но для треугольнойкорреляционной функции решение находится просто: все коэффициенты bi одинаковы:
bi = √(σy2/σx2)/k.
Если потребовать, чтобы дисперсии входного и выходного процессов былиравными, то
bi = 1/√k.    ( 3)
Схема фильтра, построенного по выражению ( 2), приведена на рис. 6.Символ z-1 означает задержку на интервалдискретизации. Фильтр скользящего суммирования (СС-фильтр) является фильтром сконечной импульсной характеристикой (КИХ-фильтром) или нерекурсивным(трансверсальным) фильтром.
 
/>

Изображенный фильтр описывается системной (передаточной) функцией
K(z-1) = b0+ b1z-1+ b2z-2 + … + bkz-k.
Передаточная функция в стандартной форме, полученная из системной функцииумножением числителя и знаменателя на zk,имеет вид:
K(z) = (b0zk + b1zk-! + … + bk)/zk.
Недостаток СС-фильтра: увеличение порядка фильтра с увеличениемколичества отсчетов корреляционной функции. Если корреляционная функция имеетбесконечную протяженность, то для сокращения порядка фильтра ее искусственноограничивают по времени, пренебрегая малыми значениями корреляционной функции.Это приводит к возникновению методической ошибки моделирования.
Авторегрессионный метод Существенная экономия машинных ресурсов ивозможность моделирования случайных процессов с корреляционной функциейбесконечной протяженности достигается при использовании авторегрессионногометода. Авторегрессионный метод предполагает использование рекурсивных фильтровс системной функцией
/>
где m – порядок фильтра.
Как следует из вида системной функции, выходной процессавторегрессионного фильтра (АР-фильтра) связан с входным процессом рекуррентнымсоотношением

y(nT) =b0x(nT) + a1y(nT – T) + a2y(nT – 2T) + … + am y(nT – mT).
Корреляционная функция определяется коэффициентами ai.Непосредственно по этому выражению нельзя найти корреляционную функцию, знаякоэффициенты ai, как это было сделано повыражению (2). Для выявления качественного влияния коэффициентов на формукорреляционной функции воспользуемся ее связью с импульсной характеристикойфильтра. Рассмотрим сначала АР-фильтр первого порядка (рис. 7).
/>
Рис. 7
Его передаточная функция в стандартной форме
K(z) =/>.
Импульсная характеристика определяется как обратное Z– преобразование от передаточной функции:
g[n] = b0a1n   ( 4)
Диапазон возможных значений коэффициента a1ограничивается устойчивостью фильтра. Для устойчивости АР-фильтра требуется,чтобы полюса его передаточной функции находились внутри окружности единичногорадиуса.
Полюс находится приравниванием нулю знаменателя передаточной функции:
z – a1 =0.
Полюс
z1 = a1,
и требование устойчивости фильтра
| a1|
При положительном a1 импульснаяхарактеристика, как следует из ( 4), является монотонно спадающей функцией, икорреляционная функция тоже будет монотонно спадающей. При отрицательном а1импульсная характеристика становится колебательной, и корреляционная функциябудет колебательной затухающей с периодом колебаний равным двум интерваламдискретизации.
Рассмотрим, как будет изменяться АЧХ фильтра, а следовательно, иэнергетический спектр ( 1) генерируемой последовательности, при изменении а1.Комплексная частотная характеристика получается из передаточной функции К(z) подстановкой z = ejωΔt.Амплитудно-частотная характеристика
К(ω) = |b0ejωΔt/(ejωΔt – a1)|= b0/|ejωΔt– a1|.
Она обратно пропорциональна модулю разности векторов ejωΔtи a1. Как видно из рис. 8 а), приположительном a1 модуль разности векторовбудет изменяться от наименьшего значения при ω = 0 до наибольшего значенияпри ωΔt = π. Значит, АЧХ, аследовательно, и энергетический спектр случайной последовательности, будетиметь подъем в области низких частот. При отрицательных a1,наоборот, подъем будет в области верхних частот.
/>
/>
/> а) б) в) Рис. 8
На рис. 8, б) показан энергетический спектр процесса на выходе фильтрапри a1 = 0,8; а на рис. 8, в) – при a1 = — 0,8.
АР-фильтр второго порядка позволяет формировать коррелированныепоследовательности с более разнообразными корреляционными функциями. Егосистемная функция
K(z-1) = />  .
Значения коэффициентов а1 и а2 ограничены областьюустойчивости, которая показана на рис. 9 (коэффициенты должны находиться внутритреугольника).Область устойчивости делится на четыре подобласти в зависимостиот вида полюсов: А – два действительных полюса разного знака; В – двадействительных отрицательных полюса; С – два действительных положительныхполюса; D – два комплексно сопряженных полюса. Отрасположения полюсов будет зависеть форма энергетического спектра икорреляционной функции генерируемого случайного процесса.

/>
Рис. 9
Эту зависимость для действительных корней мы уже обсуждали. Длякомплексно-сопряженных полюсов подъем АЧХ будет на частоте
f = (fд/2)(argz1/π),
где argz1 – аргумент полюса,расположенного в верхней полуплоскости.
АР-фильтр является рекурсивным фильтром, или фильтром с бесконечнойимпульсной характеристикой (БИХ-фильтром). Последовательное соединениеСС-фильтра и АР-фильтра называют АРСС-фильтром. Его системная функциязаписывается в виде отношения двух полиномов:
K(z-1) = />
Такой фильтр обладает еще большими возможностями генерированиякоррелированных процессов с разнообразными корреляционными функциями. Длямоделирования СС- и АР- фильтров в среде LabVIEW удобноиспользовать ВП IIR Filter (БИХ-фильтр) (рис. 10).
Он производит фильтрацию входной последовательности Х.

/>
Рис. 10
Выходная последовательность (Filtered X) вычисляется по выражению
y(n) = b0x(n) + b1x(n – 1) + … + bkx(n– k) –
– (a1y(n – 1) + a2y(n – 2) + … + amy(n– m)).
Системная функция фильтра:
K(z-1) = />
Она отличается от записанной ранее системной функции АРСС-фильтра знакомкоэффициентов ai (i ≥1).Коэффициенты числителя задаются в виде одномерногомассива и подаются на терминал ForwardCoefficients. Массив коэффициентов знаменателяподается на терминал Reverse Coefficients.
Логическая переменная, подаваемая на вход init/cont (init: F)(инициировать/продолжить (иниц: F)) управляетинициализацией внутренних состояний фильтра. По умолчанию на входе установленозначение ЛОЖЬ. При этом внутренние состояния устанавливаются в 0. При установкена входе инициировать/продолжить значения ИСТИНА внутренние состояниясоответствуют последним состояниям фильтра из предыдущего запуска ВП. Принулевых внутренних состояниях выходной процесс устанавливается в стационарноесостояние спустя некоторое время после запуска ВП (время переходного процесса).Для устранения переходного процесса целесообразно установить логическуюпеременную в состояние ИСТИНА и обеспечить повторный запуск. Последняягенерируемая последовательность будет стационарной.
Для многократного повторения моделирования целесообразно использоватьструктуру While Loop (Цикл по условию). Он эквивалентен выражению: do (программа) while (логическое условие).Цикл While похож на цикл For.Различие этих циклов в том, что число итераций в цикле Forзаранее определено и задается через терминал N числаитераций, а в цикле While – итерации продолжаются, покане будет выполнено заданное условие.
/>
Рис. 11
Внутри структуры While (рис. 11) размещаютсятерминал счетчика итераций /> и терминал условия выхода изцикла />. Программа, размещенная вструктуре, выполняется до подачи на терминал условия выхода из цикла логическойпеременной TRUE.
измерительныйпрограммный рекурсивный фильтр

Заключение
LabVIEW(Laboratory Virtual Instrumentation Engineering Workbench) — это средаразработки и платформа для выполнения программ, созданных на графическом языкепрограммирования «G» фирмы National Instruments (США). Первая версия LabVIEWбыла выпущена в 1986 году для Apple Macintosh, в настоящее существуют версиидля UNIX, GNU/Linux, Mac OS и пр., а наиболее развитыми и популярными являютсяверсии для Microsoft Windows.
LabVIEWиспользуется в системах сбора и обработки данных, а также для управлениятехническими объектами и технологическими процессами. Идеологически LabVIEWочень близка к SCADA-системам, но в отличие от них в большей степениориентирована на решение задач не столько в области АСУ ТП, сколько в областиАСНИ.

Список литературы
1.  Н.А. Виноградова, Я.И. Листратов,Е.В. Свиридов. «Разработка прикладного программного обеспечения в средеLabVIEW». Учебное пособие – М.: Издательство МЭИ, 2005.
2.  www.automationlabs.ru/
3.  digital.ni.com/
4.  www.labview.ru/
5.  ru.wikipedia.org/


Не сдавайте скачаную работу преподавателю!
Данный реферат Вы можете использовать для подготовки курсовых проектов.

Поделись с друзьями, за репост + 100 мильонов к студенческой карме :

Пишем реферат самостоятельно:
! Как писать рефераты
Практические рекомендации по написанию студенческих рефератов.
! План реферата Краткий список разделов, отражающий структура и порядок работы над будующим рефератом.
! Введение реферата Вводная часть работы, в которой отражается цель и обозначается список задач.
! Заключение реферата В заключении подводятся итоги, описывается была ли достигнута поставленная цель, каковы результаты.
! Оформление рефератов Методические рекомендации по грамотному оформлению работы по ГОСТ.

Читайте также:
Виды рефератов Какими бывают рефераты по своему назначению и структуре.