Labview les1 (1031610), страница 2
Текст из файла (страница 2)
В результате проделанной работы, диаграмма должна выглядеть следующим образом:Редактирование свойств графического экранаWaveform Chart (в частности, цвет и толщина линии) осуществляется через обобщенное меню егосвойств, вызов которого производится простым нажатиеммыши инструментом Operation Tool в области верхнейнадписи:Теперь остается желаемым образом сформироватьпереднюю интерфейсную панель. Как и для любых визуальных приборов, регуляторов, ползунков, меню и т.д.,для Waveform Chart также можно менять различные визуальные параметры и свойства.❏Запускаем программу на исполнение.В итоге, визуально, должен получиться похожийрезультат:В результате проделанных манипуляций должен получиться следующий графический интерфейс и код исполнения(диаграмма ) программы.❏Во время работы программы попробуйте изменить положение ползунка регулятора задержки.
Видим, что так можно управлять скоростью отображения результата "вручную".Нажав на созданную нами кнопку "СТОП", мыостановим программу.Еще один штрих. Изменим константу, определяющуюзадержку, на один из визуальных элементов управления.❏Выбираем на панели управления понравившийсярегулятор, например Horizontal Pointer Slider.❏Подписываем его необходимым образом.❏Меняем размер и диапазон значений от 0 до 1000.❏Переходим в окно редактирования диаграмм.❏Удаляем соответствующую константу и оборвавшуюся связь следующим образом: выделяем константу и связь и нажимаем на клавиатуре клавишу"Delete".❏Соединяем с помощью катушки контакт для установки задержки и задатчик.❏Переходим на панель отображения и делаем перекомпоновку элементов на панели, меняем толщину и цвет линиипрорисовки графика.Совет: Изменение атрибутов цвета любого элементана интерфейсной панели программируемого приложения удобнее всего осуществляется путем использования инструмента Get ColorНадеемся, что Ваше первое приложение успешно функционирует.При разработке реальных приложений приходитсярешать задачу, связанную с накоплением, организациейдоступа и дальнейшей обработкой данных.
Не существуетуниверсальной и единой программы сбора и обработкиданных, в которой были бы реализованы именно Вашитребования по сохранению и чтению данных. LabVIEW дает возможность реализовать тот или иной алгоритм неприбегая к кропотливому изучению процедур и функций,4734/2003в ПОМОЩЬ инженерукак, например, в Visual/Borland C++ или Delphi.
Все, сводится к доступным методам графического построения диаграммы решаемой задачи.В этом уроке мы затронем только малую долю всехвозможностей графического программирования, связанных с записью и чтением данных. Но приобретая определенные навыки, Вы сможете в дальнейшем реализовывать самые замысловатые алгоритмы. Сначала реализуемэлементарную задачу генерации массива случайных чисел.
Для ее решения Вам понадобится составить диаграмму, которая показана на приведенном ниже рисунке. Следует обратить внимание на то, что вместо привычногоцикла WhileLoop, здесь используется цикл ForLoop.Условием завершения работы или выхода из такого циклаявляется равенство переменной цикла и числа, определяющего количество итераций. Другими словами, в LabVIEW для работы цикла типа ForLoop необходимо соединить пиктограмму N с константой, указывающей количество повторений.
Для начала, результат будем выводить ввиде графической зависимости случайных чисел от текущего значения числа итераций.Выполнив первый шаг, связанный с генерацией и визуализацией случайной последовательности, перейдем к основной задаче задаче записи данных на диск. Сначаламы используем самый простой, но, в то же время, элегантный подход для записи последовательности. Дословноон называется "Записью в Крупноформатную таблицу"(Write to Spreadsheet File).
Используя соответствующуюдиаграмму (VI — виртуальный инструмент), без указаниядополнительных параметров, например таких, как формат записываемого числа, создадим файл текстовогоформата, где через пробел последовательно будет записана сгенерированная последовательность.Выполним вышенамеченный план. Для этого перетянем изфункционального меню Functions, пиктограмму, котораяназывается Write to Spreadsheet File.vi: File I/O >> Writeto Spreadsheet File.vi, и соединим блоки так, как показано на рисунке:Для реализации поставленной задачи нужно выполнитьследующие шаги:❏Создать новый VI: File >> New VI.❏Установить на интерфейсную панель элементWaveform Graph: Controls >> Graph >> WaveformСhart.
Изменить его внешний вид и свойства можнопо своему усмотрению.❏Перейти в окно редактирования диаграмм.❏Перетянуть в окно редактирования вышеупомянутый цикл: Functions >> Structures >> For Loop. Изменить его размеры и местоположение (если нужно), чтобы была возможность устанавливать дополнительные компоненты вовнутрь. Следует сказать,что "i"— это переменная цикла.❏Щелчком правой кнопки мыши на пиктограммецикла N выбираем создание константы (Create Constant) и вводим с клавиатуры значение, например 50.❏Создадим простейший генератор случайных чисел.
Перетянем в середину цикла пиктограмму, которая позволяет генерировать случайные числа вдиапазоне от 0 до 1: Functions >> Numeric >> Random Number (01).❏Соединим все компоненты так, как показано нарисунке, изображающем диаграмму. Запустимпрограмму на выполнение и посмотрим на получившийся результат.4834/2003Cовет: Если подпрограмма LabVIEW (иконка VI) имеетнесколько входов/выходов, то правильно подключитьсяпоможет следующий метод.
Выберете из инструментальной панели инструмент для соединения элементов (катушка) и"обследуйте" им иконку. Приэтом, будут активизированы иназваны соответствующие входы/выходы. Чтобы видеть все"контакты" VI сразу, удобно воспользоваться окном контекстной помощи (вызов Help >> Show Context Help).Например окно контекстной помощи дляWrite to SpreadsheetFile.vi выглядит так:в ПОМОЩЬ инженеруТак как кроме входа "ввод одномерного массива" (1Ddata), другие входы (формат, путь и т.п.) нами не подсоединялись, то LabVIEW сформирует следующую последовательность действий:❏Сначала будет создан массив из 50и чисел;❏Результат будет отображен в виде графика;❏Появится стандартное диалоговое окно, в котором будет предложено выбрать директорию и имяфайла, для сохранения данных;❏Если файл до этого не существовал, то он будетсоздан и в него будет записан массив чисел, а еслион уже был на диске, то будет предложено добавитьданные в файл или заменить уже существующие;❏После записи данных на диск программа самазавершит свое выполнение.мыши, выбираем Create >> Indiсator.
При этом на интерфейсной панели появится его графическийэквивалент.❏ По аналогии создайте константы и для других блоков. Для модуля преобразования массива данных в таблицустрок, используйте константу форматирования %s(строка).Вы можете легко убедиться в этом, когда перейдетев окно интерфейсной панели и запустите программу на исполнение.Вводим имя файла: random.xls. Расширение имени файла .xls было выбрано не случайно, а с целью продемонстрировать возможность того, что файл созданный в LabVIEW можно с легкостью использовать и для работы сдругими приложениями, например, с Microsoft Excel.
Вэтом нет ничего удивительного, т.к. данные были сохранены в обычном текстовом формате. Поэтому не составиттруда построить график в Excel, аналогичный графику вLabVIEW, используя Мастер Диаграмм Microsoft Excel. Врезультате должна получиться похожая картинка:После запуска программы на выполнение данные автоматическизапишутся в заданный файл. Поскольку файл данных будет ужесуществовать, после попытки повторного запуска программы появится диалоговое окно, где нужно будет выбрать между заменой существующего файла на новый илиотменой записи в целом.До этого времени мы использовали высокоуровневуюфункцию записи данных на диск. Для реализации болеегибкого алгоритма можно использовать функции болеенизкого уровня.
Основные отличия заключаются в том, чтофункции создания или открытия файла, записи или чтения данных и закрытия файла выполнены как отдельныефункциональные блоки. Составим диаграмму, котораякак раз и будет использовать виртуальные инструментынизкоуровневого ввода/вывода.❏Модифицируем предыдущую программу илисоздаем новый файл.❏Устанавливаем в окне редактирования диаграмм все необходимые блоки, как показано нарисунке: Functions >> File I/O >> Open/Create/Replace File.vi, Write File, Close File.❏Небольшим отличием в программе будет то, чтоформат записываемых данных будет изменен:Functions >> String >> Array To Spreadsheet String.❏Соединяем блоки между собой.