![]() |
|
сделать стартовой | добавить в избранное |
![]() |
Среда разработки и платформа для выполнения программ LabVIEW |
Теоретические основы LabVIEW (Labora ory Vir ual I s rume a io E gi eeri g Workbe ch) — это среда разработки и платформа для выполнения программ, созданных на графическом языке программирования «G» фирмы a io al I s rume s (США). Первая версия LabVIEW была выпущена в 1986 году для Apple Maci osh, в настоящее существуют версии для U IX, G U/Li ux, Mac OS и пр., а наиболее развитыми и популярными являются версии для Microsof Wi dows. LabVIEW используется в системах сбора и обработки данных, а также для управления техническими объектами и технологическими процессами. Идеологически LabVIEW очень близка к SCADA-системам, но в отличие от них в большей степени ориентирована на решение задач не столько в области АСУ ТП, сколько в области АСНИ. Программирование, основанное на потоках данных Графический язык программирования «G», используемый в LabVIEW, основан на архитектуре потоков данных. Последовательность выполнения операторов в таких языках определяется не порядком их следования (как в императивных языках программирования), а наличием данных на входах этих операторов. Операторы, не связанные по данным, выполняются параллельно в произвольном порядке. В основе программирования в LabVIEW лежит понятие Виртуальных приборов (Vir ual I s rume s, VI). На лицевой панели, как и положено, располагаются элементы управления программой — кнопки, графики, выключатели и тому подобное. Блок-схема — это, по сути, и есть сама программа. При написании (а вернее создании, потому что писать приходится не так уж и много) программы используется такое понятие, как «поток данных» (Da a Flow). Суть его в том, что все элементы программы (которые представлены графически) связываются между собой связями (проводами, нитками) по которым и происходит передача данных. В общем, описать это довольно сложно, лучше посмотреть на картинку, рис.1. Рис. 1. Простейший прибор. Цифрами обозначены: 1- точки, элементы программы ( odes); 2 - терминалы индикаторов (I dica or ermi als); 3 - связи (Wires); 4 - терминалы управляющих элементов (Co rol ermi als) Итак, в LabVIEW вы создаете пользовательский интерфейс (лицевую панель), с управляющими элементами и индикаторами. Управляющие элементы — это тумблеры, кнопки, поля ввода и прочие устройства ввода. Индикаторы — это графики, шкалы, лампочки, текстовые поля и тому подобное. После создания пользовательского интерфейса, вы добавляете программный код, который управляет объектами на лицевой панели. Этот код содержится в схеме (block diagram). Этот код чем-то напоминает собой блок-схему, хотя отличий много. LabVIEW можно использовать для того, чтобы управлять различным оборудованием, таким, как, устройства сбора данных, различные датчики, устройства наблюдения, двигательные устройства (например, шаговые моторы) и тому подобное, а так же GPIB, PXI, VXI, RS-232 b RS-484 устройства. Также в LabVIEW имеются встроенные средства для подключения созданных программ к сети, используя LabVIEW Web Server и различные стандартные протоколы и средства, такие как CP/IP и Ac iveX. Используя LabVIEW, можно создавать приложения для тестирования и измерений, сбора данных, управления различными внешними устройствами, генерации отчетов.
Так же можно создать независимые исполняемые файлы и библиотеки функций, такие как DLL, так как LabVIEW — это полноценный 32-битный компилятор. Достоинства LabVIEW: полноценный язык программирования; интуитивно понятный процесс графического программирования; широкие возможности сбора, обработки и анализа данных, управления приборами, генерации отчетов и обмена данных через сетевые интерфейсы; драйверная поддержка более 2000 приборов; возможности интерактивной генерации кода; шаблоны приложений, тысячи примеров; высокая скорость выполнения откомпилированных программ; совместимость с операционными системами Wi dows2000/ /XP, Mac OS X, Li ux и Solaris. LabVIEW поддерживает огромный спектр оборудования различных производителей и имеет в своём составе (либо позволяет добавлять к базовому пакету) многочисленные библиотеки компонентов: для подключения внешнего оборудования по наиболее распространённым интерфейсам и протоколам (RS-232, GPIB 488, CP/IP и пр.); для удалённого управления ходом эксперимента; для управления роботами и системами машинного зрения; для генерации и цифровой обработки сигналов; для применения разнообразных математических методов обработки данных; для визуализации данных и результатов их обработки (включая 3D-модели); для моделирования сложных систем; для хранения информации в базах данных и генерации отчетов; для взаимодействия с другими приложениями в рамках концепции COM/DCOM/OLE и пр. Вместе с тем LabVIEW — очень простая и интуитивно понятная система. Неискушённый пользователь, не являясь программистом, за сравнительно короткое время (от нескольких минут до нескольких часов) способен создать сложную программу для сбора данных и управления объектами, обладающую красивым и удобным человеко-машинным интерфейсом. Например, средствами LabVIEW можно быстро превратить старый компьютер, снабжённый звуковой картой, в мощную измерительную лабораторию. Специальный компонент LabVIEW — Applica io Builder, позволяет выполнять LabVIEW-программы на тех компьютерах, на которых не установлена полная среда разработки. Интерфейс панели LabVIEW и окно редактирования диаграмм Запустите LabVIEW. В появившемся окне (рис.2) выберите пункт ew&g ;Bla k VI. Рис. 2. Окно запуска программы. После выбора создания нового прибора раскрываются два окна: интерфейсная панель (Fro Pa el) (рис.3) и окно редактирования диаграмм (Block Diagram) (рис.4), которое по своей сути является программой в графическом виде. Интерфейсная панель - это интерфейс пользователя. Вы устанавливаете на интерфейсную панель графические элементы управления и всевозможные индикаторные приборы, которые являются соответственно элементами ввода и вывода. Элементы управления - это ручки, регуляторы, ползунковые устройства, кнопки и другие устройства ввода. Индикаторы - это элементы для вывода/построения графиков, сигнализирующие устройства, такие, как лампочки и т.д. Установленные на переднюю панель элементы управления и индикаторы, отображаются соответствующими иконками (терминалами) во втором окне – окне редактирования диаграмм. Т.е. каждому установленному элементу на интерфейсной панели соответствует иконка в окне редактирования.
В этом окне и &quo ;пишется&quo ; программа - создается графический код VI. Удалив, например, управляющий элемент в интерфейсном окне, исчезнет и соответствующая иконка (терминал) в окне редактирования диаграмм. Рис. 3. Интерфейсная панель. Рис. 4. Окно редактирования диаграмм Иконки или терминалы показывают тип данных элементов управления или индикаторов. Терминалы осуществляют связь между интерфейсной панелью и диаграммой. Функции - это объекты окна редактирования диаграмм, которые могут иметь один и/или несколько входов и/или выходов. Функции LabVIEW аналогичны выражениям, операторам, процедурам и функциям текстовых языков программирования. Связи — это соединительные линии между иконками (терминалами). Они являются аналогом переменных в обычных языках программирования. Причем данные могут передаваться только в одном направлении - от терминала-источника к одному или нескольким терминалам-приемникам. Различный вид и цвет соединений соответствует различным типам передаваемых данных. Неправильная связь терминалов или незаконченное соединение изображается штриховой линией. Структуры - это графическое представление циклов и операторов выбора в тексториентированных языках программирования. Терминалы, функции, связи и структуры - это весь синтаксис языка программирования LabVIEW. Линейка инструментов. Оба окна, как интерфейсное, так и окно редактирования диаграмм имеют линейки инструментов, которые содержат служебные кнопки и индикаторы состояния, предназначенные для контроля Виртуальных Инструментов. Одна из линеек инструментов всегда доступна, и ее вид зависит от того, в каком окне Вы находитесь. Линейка инструментов интерфейсного окна содержит 8 кнопок, рис. 5. Рис. 5. Линейка инструментов интерфейсного окна 1 - кнопка запуска программы на выполнение, пока приложение выполняется, значок меняет свой внешний вид; 2 - кнопка запуска программы на выполнение в циклическом режиме, пока приложение выполняется, значок меняет свой внешний вид; 3 - когда приложение запущено, эта кнопка находится в активном состоянии, используйте ее для прекращения выполнения программы; 4 - кнопка &quo ;ПАУЗА&quo ; приостанавливает исполнение программы до последующего нажатия на эту же кнопку; 5 - выпадающее меню редактирования свойств шрифта: тип, размер, стиль и цвет; 6 - выпадающие меню, позволяющие осуществлять выравнивание и позиционирование объектов, распределять графические объекты передней панели VI. 7 - если вы устанавливаете объект поверх другого объекта, то нижний объект может быть перекрыт и недоступен, используйте это выпадающее меню размещения объекта поверх или под желаемым. Если приложение не может быть запущено на выполнение по какой-либо причине, то линейка инструментов примет следующий вид: Рис. 6. Линейка инструментов – программа не может быть запущена Линейка инструментов окна редактирования диаграмм имеет такие же кнопки, как и интерфейсная панель, плюс свои собственные, предназначенные для отладки (debuggi g) программы, рис. 7: Рис. 7. Линейка инструментов окна редактирования диаграмм 1 - нажав эту кнопку, и запустив программу на выполнение, Вы сможете отлаживать программу и следить за следованием данных между объектами; 2 – включение или отключение сохранения значений связей; 3 - нажатие на эту кнопку позволяет Вам в процессе отладки &quo ;входить&quo ; в структуры, например, в циклы и подпрограммы; 4 - нажав эту кнопку, Вы активизируете пошаговый режим отладки, т.е
Для этого разработчики платформы создали так называемый "песочный ящик" (sandbox) это виртуальная среда, изолированная от системы для выполнения приложений. Вместе с тем специалисты из HD Moore уже заявили, что даже в таком виде считают Apollo опасной. В SPI Dymanics тоже выражают озабоченность и говорят, что все зависит от того, насколько широко будет развернута Apollo. Тем не менее уже сейчас очевидно, что среда разработки может стать отличной площадкой для хакеров. Я читал мнения некоторых экспертов по безопасности, которые сомневаются в защищенности платформы Apollo. Они говорят, что «гремучая смесь» HTML, JavaScript, Flash и AJAX изначально предполагает высокие риски уязвимости. Как вы можете прокомментировать такие утверждения? П.Б.: Я не думаю, что проблема так остра. Ведь это как раз цель нашей долгосрочной стратегии дать новые возможности разработчикам, позволить им разрабатывать интерактивные приложения на единой платформе, а пользователю предоставить столь же простой доступ к созданным продуктам из Сети, какой бы он имел на своем десктопе
2. Реализация конституционных прав граждан в сфере окружающей среды
3. Разработка базы данных `ДЕКАНАТ` в среде программирования "Delphi"
4. Учебник по программированию в среде С++ Builder
5. Среда программирования Delphi
10. Реализация АВЛ–деревьев через классы объектно–ориентированного программирования
12. Прикладное программирование, 1 семестр
13. Программирование ориентированное на объекты
15. Программирование - интерфейс RS-232
17. Системное программирование
18. Математическое программирование
21. Программирование на "СИ" (ТХТ, СИ)
25. Обучающая программа "Графика" программированию в графическом режиме на языке turbo-pascal 7.x
26. Язык программирования Паскаль и ветвление
27. Возможности системы программирования Delphi для создания пользовательского интерфейса
28. Программирование на Delphi
29. Программирование логической игры на visual basic
30. Учебник по программированию на Java для мобильных устройств
34. Руководство по программированию на HTML
37. Решение задач линейного программирования
41. Программирование и планирование деятельности
42. Риск в задачах линейного программирования
43. Методы экономического программирования
44. Мерчандайзинг как программирование поведения покупателя
45. Динамическое и линейное программирование
46. Задача линейного программирования
47. Линейное программирование: постановка задач и графическое решение
48. Интернет как среда и инструмент реализации паблик рилейшнз
49. Дистанционное обучение программированное
50. Метод программированного обучения в преподавании математики
51. Нейролингвистическое программирование - мнение психолога
52. Нейролингвистическое программирование
53. Динамическое программирование
57. Приемы безопасного программирования веб-приложений на PHP
59. Философские аспекты программирования
60. Delphi: программирование для всех!
61. Лабораторные работы по программированию
62. Системы программирования и операционные системы
63. 5 различных задач по программированию
65. Алгоритмизация и программирование процессов на Fox
66. Линейное программирование: решение задач графическим способом
67. Общие сведения о языке программирования Qbasic
68. Объектно-ориентированное программирование
69. Основы алгоритмизации и программирования (кр№1, вар1)
73. Программирование элементов разветвляющейся структуры
74. Программирование элементов разветвляющейся структуры
75. Разработка программированных средств с помощью VBA
77. Техника программирования сложных окон в Visual Basic
78. Windows Forms: Современная модель программирования для создания GUI приложений
79. Программирование служб: подробности
80. Алгоритмизация и программирование
81. Языки и технологии программирования
84. Объектно-ориентированное программирование на C++ с использованием библиотеки OpenGL
85. 5 различных задач по программированию
89. Динамическое программирование
90. Использование языка программирования Visual Basic для решения математических задач
91. Применение объектно-ориентированного программирования в параметрическом анализе структур Тьюринга
92. Основы программирования OpenGL в Borland С++Builder и Delphi. Простейшие объекты
93. Нелинейное программирование
94. Применение методов нейро-лингвистического программирования в обучении
97. Алгоритмы и структуры данных. Программирование в Cи
98. Базы данных на логическоми и функциональном программировании