- •Занятие 4. Построение виртуального прибора, реализующего периодический сигнал с шумом
- •4.1. Создание VI – генератора синусоидального сигнала
- •4.2. Исследование биения частот
- •4.3. Исследование влияния шума на периодический сигнал
- •4.4. Запись данных в файл
- •Занятие 5. Ввод и вывод данных
- •5.1. Работа со строковыми переменными
- •5.2. Запись числовых данных
- •5.3. Считывание числовых данных
- •Занятие 6. Реализация прибора свертки функций
- •6.1. Свертка функций
- •6.2. Моделирование виртуального прибора
- •6.3. Исследование работы свертки
- •Занятие 7. Формулы, массивы, циклы. Функция гаусса
- •7.1. Структуры в LabView
- •7.2. Цикл For
- •Шаблон массива
- •Тип элементов
- •Массива не задан
- •7.3. Представление массивов данных
- •7.4. Считывание значений с графика. Узел Property Node
- •Занятие 8. Дифференцирование и интегрирование в labview
- •8.1. Численное дифференцирование
- •8.2. Численное интегрирование
- •Занятие 9. Интерполяция данных
- •9.1. Задание исходного массива
- •9.2. Использование структуры Sequence
- •9.3. Интерполяция полиномом
- •9.4. Интерполяция дробно-рациональной функцией
- •9.5. Сплайн-интерполяция
- •Занятие 10. Быстрое преобразование фурье. Фильтрация шумящих данных
- •10.1. Алгоритм быстрого преобразования Фурье
- •10.2. Фурье-образ шумящего периодического сигнала
- •10.3. Аподизация верхних частот Фурье-разложения
- •10.4. Фильтрация шумящей функции Гаусса
- •Занятие 11. Расчет фракталов. Экранная лупа
- •11.1. Построение фрактальной кривой
- •11.2. Самоподобие фрактала. Экранная лупа
- •Занятие 12. Примеры фильтрации шумящих экспериментальных данных
- •Занятие 13. Обращение свертки. Вычитание аппаратной функции
- •13.1. Свертка функций
- •13.2. Реализация обращения свертки
- •Занятие 14. Моделирование двухстробового интегратора
- •14.1. Принцип двухстробового интегратора
- •14.2. Генерация массива данных нестационарной емкостной спектроскопии
- •14.3. Построение VI, реализующего двухстробовый метод dlts
- •Занятие 15. Встраиваемые платы сбора и обработки информации. Цифровая плата pc-dio-96
- •15.1. Устройства связи с объектом
- •15.2. Конфигурирование платы сбора и обработки информации
- •15.3. Определение области адресов памяти, занимаемой daq-платой
- •15.4. Функциональная схема платы цифрового ввода-вывода pc-dio-96
- •Занятие 16. Пример построения информационно-измерительной системы с использованием технологии виртуальных приборов
- •16.1. Блок-схема установки c-V-измерений
- •16.2. Двоично-десятичная система счисления
- •16.3. Тестирование информационно-измерительной системы
Занятие 4. Построение виртуального прибора, реализующего периодический сигнал с шумом
Цель работы: создание генератора периодического сигнала, сложение сигналов и изучение влияния шумовой составляющей.
4.1. Создание VI – генератора синусоидального сигнала
Постройте виртуальный прибор, реализующий генератор синусоидальной волны и представляющий результирующую функцию на дисплее. Исходная блок-схема виртуального прибора приведена на рис. 4.1.
Рис. 4.1
В качестве генератора синусоиды используйте Sine Pattern.vi (Шаблон sin-сигнала) из палитры Signal Processing >> Signal Generation (рис. 4.2). На лицевой панели необходимо предусмотреть органы управления для регулировки количества периодов sin-волны (Cycles) и числа точек на графике (Samples). К выходному терминалу Sine Pattern.vi подключите дисплей. Возможные типы дисплеев в LabVIEW: Waveform Chart (аналог ленточного самописца), Waveform Graph (аналог осциллографа) и XY Graph (аналог двухкоординатного осциллографа). С помощью операции Replace рассмотрите различные типы представления дисплеев и выберите наиболее удобный. Отключайте представление терминалов на блок-диаграмме в виде икон.
Внимание! Для эффективного и экономного программирования рекомендуется отключать некоторые избыточные эффекты, появившиеся в версиях LabVIEW, начиная с 7. Выберите Tools >> Options… >> Block Diagram и снимите флажок с пункта Place front panel terminals as icons (Помещать терминалы элементов лицевой панели как иконки).
О ткройте окно контекстной помощи и изучите другие терминалы subVI Sine Pattern.vi. Добавьте в разрабатываемый виртуальный прибор органы управления амплитудой и фазой синусоидального сигнала. Обратите внимание: толстый проводник на выходе генератора сигнала указывает на передачу массива (array) числовых данных.
Перейдите на лицевую панель. Задайте количество точек сигнала (порядка 500) и число циклов (2–3). Запустите виртуальный прибор.
4.2. Исследование биения частот
Введите еще один генератор синусоидального сигнала Sine Pattern.vi. Задайте для него амплитуду и количество точек, как для первого генератора. Если частоты сигналов будут немного отличаться, то на дисплее можно будет наблюдать биение частоты. При одинаковом количестве точек в сигнале разнести частоты можно выбором числа циклов. Пусть количество циклов второго сигнала будет пропорционально количеству циклов первого. Обеспечьте это с помощью узла Multiply (палитра Programming >> Numeric), к которому подсоедините терминал элемента, управляющего разбалансом частот. По правой кнопке на этом управляющем элементе выберите Format & Precision… и уберите флажок Hide trailing zeros (Прятать последующие нули). Здесь же задайте нужное число значащих цифр в представлении числа.
С ложите два полученных сигнала, выведите сумму на дисплей. Установите количество циклов порядка 10. Запустите VI в непрерывном режиме. Задавайте множитель разбаланса частот в широком диапазоне (0.01…10.0), наблюдайте изменение результирующего сигнала на дисплее. Зафиксируйте несколько характерных графиков.
4.3. Исследование влияния шума на периодический сигнал
В ведите в блок-схему новый элемент – генератор “белого шума” (Uniform Noise.vi) из палитры Signal Processing >> Signal Generation (рис. 4.2). С его помощью “зашумите” идеальный синусоидальный сигнал с первого генератора (функция Programming >> Numeric >> Add). Результирующий шумящий сигнал выведите на второй дисплей.
Для изучения влияния амплитуды шумовой составляющей добавьте новый управляющий элемент и назовите его Signal/Noise (отношение сигнал/шум). По умолчанию в LabVIEW амплитуды сигналов и шумовой составляющей приняты за единицу. (Найдите, где задаются эти значения.) Изменить отношение сигнал/шум можно, либо увеличивая амплитуду синусоидального сигнала, либо уменьшая амплитуду шума. Во втором случае на блок-диаграмме удобно ввести промежуточный элемент – Reciprocal (1/x) между терминалом Signal/Noise и Uniform White Noise.vi. Обратите внимание на то, что представление данных (representation) в терминале управляющего элемента Samples, задающего целочисленное количество точек, должно иметь формат Integer, а в других терминалах – вещественное с плавающей запятой Double (рис. 4.3).