- •Занятие 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. Запись данных в файл
Запишите полученные данные (с выхода сумматора) на диск. Для этой цели используйте Write To Spreadsheet File.vi из палитры Programming >> File I/O (Файловый ввод-вывод). Этот прибор записывает данные в формате электронной таблицы (стандартный тип записи числовых данных в LabVIEW и ряде других программ под Windows, например Microsoft Excel). В окне Context Help рассмотрите терминалы виртуального прибора Write To Spreadsheet File.vi. В нашем примере достаточно будет соединить терминал “1D data” (одномерный массив) с выходом сумматора.
Внимание! Различный вид проводников, их цвет и толщина позволяют наглядно ориентироваться в типах используемых переменных. Основные типы переменных в LabVIEW следующие:
1) numeric (числовая) – все десятичные цифры и некоторые символы, например E в выражении 1.23E-3;
2) boolean (булевская) – True (истина) и False (ложь);
3) string (строковая) – любая последовательность ASCII-сим-волов произвольной длины.
Если теперь запустить VI, появится диалоговое окно “Choose file to write”, в котором можно задать имя файла и выбрать нужную папку. Чтобы это окно не появлялось, задайте имя файла с лицевой панели своего VI. Для этого разместите на ней управляющий элемент File Path Control (Путь к файлу) из палитры Modern >> String & Path. Введите в него имя файла (D:\Temp\signal.txt). Переключитесь в окно диаграммы и подсоедините новый терминал к узлу записи на диск.
Откройте Write To Spreadsheet File.vi и далее его блок-диаграмму. Используя окно подсказки Context Help изучите subVI, входящие в данный виртуальный прибор. Ядром этого виртуального прибора является VI более низкого уровня Write Spreadsheet String.vi, который осуществляет запись в файл на диск строковую переменную (переменную типа string). Структурно любой виртуальный прибор записи в файл состоит, как правило, из четырех VI более низкого уровня, предназначение которых: 1 – открытие файла (либо создание нового), 2 – собственно запись в файл, 3 – закрытие файла, 4 – обработка возможных ошибок (General Error Handler). После изучения закройте все VI для записи данных, не сохраняя в них исправлений.
Е сли не использовать File Path Control, то при многократном запуске VI будет регулярно появляться запрос на подтверждение перезаписи файла с данными. Следующий прием с использованием структуры Case (Выбор) позволит устранить это неудобство.
Разместите на свободном месте блок-диа-граммы структуру Case (палитра Programming >> Structures) и растяните ее. Переместите внутрь структуры узел Write To Spreadsheet File.vi (рис. 4.4). Если возникло разорванное соединение, восстановите его. (При создании структуры Case еще удобнее воспользоваться способом из 3.2.1.) На лицевой панели поместите тумблер из палитры Boolean. Его терминал соедините с селектором структуры Case.
Теперь запись в файл будет производиться только при включенном тумблере. (При необходимости вы можете поменять логику выполнения условия, если нажмете правой кнопкой мыши на границе структуры и выберете “Make This Case True (False)”.) Запустите виртуальный прибор.
Составьте отчет по лабораторной работе. В редакторе Word представьте вид лицевой панели разработанного вами виртуального прибора и функциональную блок-схему (используйте операцию копии экрана <Alt+ Print_Screen>). Приведите характерные графики биения близких частот (см. п. 4.2). Приведите диаграммы идеального синусоидального сигнала в отсутствии шума и зашумленного сигнала при следующих соотношениях “сигнал/шум”: 0.5; 1; 5; 10.