Научная статья на тему 'Программирование микроконтроллеров в среде разработки LabVIEW'

Программирование микроконтроллеров в среде разработки LabVIEW Текст научной статьи по специальности «Компьютерные и информационные науки»

CC BY
407
95
i Надоели баннеры? Вы всегда можете отключить рекламу.
Ключевые слова
ГРАФИЧЕСКАЯ СРЕДА РАЗРАБОТКИ / ГРАФИЧЕСКИЙ ЯЗЫК ПРОГРАММИРОВАНИЯ "G" / ARDUINO / МИКРОКОНТРОЛЛЕРЫ / GRAPHIC DESIGN ENVIRONMENT / GRAPHICAL PROGRAMMING LANGUAGE "G" / MICROCONTROLLERS

Аннотация научной статьи по компьютерным и информационным наукам, автор научной работы — Рудова Инна Евгеньевна, Гришин Руслан Владимирович, Селютина Анна Александровна

В статье описана графическая среда разработки LabVIEW. Рассмотрен интерфейс и функционал данной среды. Перечислены возможности при подключении дополнительных библиотек. Приведен пример работы на основе программирования платы Arduino UNO.

i Надоели баннеры? Вы всегда можете отключить рекламу.

Похожие темы научных работ по компьютерным и информационным наукам , автор научной работы — Рудова Инна Евгеньевна, Гришин Руслан Владимирович, Селютина Анна Александровна

iНе можете найти то, что вам нужно? Попробуйте сервис подбора литературы.
i Надоели баннеры? Вы всегда можете отключить рекламу.

PROGRAMMING OF MICROCONTROLLERS IN LABVIEW

The article describes graphic design environment LabVIEW. The interface and functional of the given environment are considered. Possibilities when connecting additional libraries are listed. An example of work on the basis of programming the Arduino UNO board is shown.

Текст научной работы на тему «Программирование микроконтроллеров в среде разработки LabVIEW»

УДК 004.89

ПРОГРАММИРОВАНИЕ МИКРОКОНТРОЛЛЕРОВ В СРЕДЕ РАЗРАБОТКИ LABVIEW

Инна Евгеньевна Рудова

Сибирский государственный университет геосистем и технологий, 630108, Россия, г. Новосибирск, ул. Плахотного, 10, обучающийся, тел. (953)781-96-27, e-mail: guyq_97@icloud.com

Руслан Владимирович Гришин

Сибирский государственный университет геосистем и технологий, 630108, Россия, г. Новосибирск, ул. Плахотного, 10, обучающийся, тел. (913)956-52-09, e-mail: grihinruska@mail.ru

Анна Александровна Селютина

Сибирский государственный университет геосистем и технологий, 630108, Россия, г. Новосибирск, ул. Плахотного, 10, обучающийся, тел. (913)206-08-10, e-mail: anyaselytina@mail.ru

В статье описана графическая среда разработки Lab VIEW. Рассмотрен интерфейс и функционал данной среды. Перечислены возможности при подключении дополнительных библиотек. Приведен пример работы на основе программирования платы Arduino UNO.

Ключевые слова: графическая среда разработки, графический язык программирования «G», Arduino, микроконтроллеры.

PROGRAMMING OF MICROCONTROLLERS IN LABVIEW

Inna E. Rudova

Siberian State University of Geosystems and Technologies, 10, Plakhotnogo St., Novosibirsk, 630108, Russia, Student, phone: (953)781-96-27, e-mail: guyq_97@icloud.com

Ruslan V. Grishin

Siberian State University of Geosystems and Technologies, 10, Plakhotnogo St., Novosibirsk, 630108, Russia, Student, phone: (913)956-52-09, e-mail: grihinruska@mail.ru

Anna A. Selytina

Siberian State University of Geosystems and Technologies, 10, Plakhotnogo St., Novosibirsk, 630108, Russia, Student, phone: (913)206-08-10, e-mail: anyaselytina@mail.ru

The article describes graphic design environment LabVIEW. The interface and functional of the given environment are considered. Possibilities when connecting additional libraries are listed. An example of work on the basis of programming the Arduino UNO board is shown.

Key words: graphic design environment, graphical programming language "G", Arduino, microcontrollers.

Современные средства разработки программного обеспечения представляют ряд всевозможных инструментов, как для опытных программистов, так и для начинающих пользователей. Для многих начинающих программистов трудно разобраться и понять трудоемкий код. Данную проблему можно решить

с помощью использования среды разработки, основанной на графическом языке. Примером таковой является среда разработки Lab VIEW.

LabVIEW - это кроссплатформенная графическая среда разработки приложений и универсальный язык программирования. И хотя этот продукт порой тесно связан с аппаратным обеспечением National Instruments, он тем не менее не связан с конкретной операционной системой. Существуют версии для Windows, Linux, MacOS. Исходные тексты переносимы, а программы будут выглядеть одинаково во всех системах. Код, сгенерированный LabVIEW, также может быть исполнен на Windows Mobile. Этот язык может с успехом использоваться для создания больших систем, обработки текстов, изображений и работы с базами данных.

LabVIEW - весьма высокоуровневый язык. Однако ничто не мешает включать «низкоуровневые» модули в LabVIEW-программы. Даже если требуется использовать ассемблерные вставки - это тоже возможно, надо лишь сгенерировать DLL и вставить вызовы в код. С другой стороны, высокоуровневый язык позволяет производить весьма нетривиальные операции с данными. Ради справедливости надо отметить, что некоторые операции низкоуровневых языков (например, работа с указателями), не так просто реализовать в LabVIEW ввиду его «высокоуровневости». Разумеется, язык LabVIEW включает основные конструкции управления, имеющие аналоги и в «традиционных» языках:

• переменные (локальные или глобальные);

• for - циклы с проверкой завершения и без;

• while - циклы;

• группировка операций.

В LabVIEW разрабатываемые программные модули называются «Virtual Instruments» (Виртуальные Инструменты) или по-простому VI. Они сохраняются в файлах с расширением *.vi. VIs - это кирпичики, из которых состоит LabVIEW - программа. Любая LabVIEW программа содержит как минимум один VI. В терминах языка Си можно достаточно смело провести аналогию с функцией с той лишь разницей, что в LabVIEW одна функция содержится в одном файле (можно также создавать библиотеки инструментов). Само собой разумеется, один VI может быть вызван из другого VI. В принципе каждый VI состоит из двух частей - Блок-Диаграмма (Block Diagram) и Передняя Панель (Front Panel). Блок-диаграмма - это программный код (точнее визуальное графическое представление кода), а Передняя панель - это интерфейс. Общий вид интерфейса, состоящего из двух частей представлен на рис. 1.

Рис 1. Интерфейс программы

LabVIEW поддерживает огромный спектр оборудования различных производителей и имеет в своем составе (либо позволяет добавлять к базовому пакету) многочисленные библиотеки компонентов:

• для подключения внешнего оборудования по наиболее распространенным интерфейсам и протоколам (RS-232, GPIB-488, TCP/IP и пр.);

• для удаленного управления ходом эксперимента;

• для управления роботами и системами машинного зрения;

• для генерации и цифровой обработки сигналов;

• для применения разнообразных математических методов обработки данных;

• для визуализации данных и результатов их обработки (включая 3D-модели);

• для моделирования сложных систем;

• для хранения информации в базах данных и генерации отчетов;

• для взаимодействия с другими приложениями в рамках концепции COM/DCOM/OLE.

Для упрощения процесса программирования микроконтроллеров мы внедрили графическую среду разработки LabView.

Arduino - это торговая марка аппаратно-программных средств для построения простых систем автоматики и робототехники. Аппаратная часть представляет собой набор смонтированных печатных плат. Полностью открытая архитектура системы позволяет свободно копировать или дополнять линейку продукции Arduino.

Для осуществления эксперимента нам потребовалось: плата Arduino UNO, библиотека для взаимодействия платы с програмными средствами LabView, программа LabView для программирования данного микроконтроллера.

Осуществляя программирование микроконтроллера через графическую среду разработки LabView перед нами стояла задача научить плату взаимодействовать с данной средой и правильно интерпретировать графический язык. В этом непростом деле поможет установка библиотеки Arduino для LabView и залив прошивки на плату, позволившая в последствии переводить графический язык в понятный для платы код. Когда все действия выполнены перейдем непосредственно к среде разработке где обнаружим что добавились дополнительные блоки для взаимодействия с платой. Теперь можно приступать к написанию кода. На рис. 2 представлен пример программы, которая зажигает светодиод на одну секунду после чего гасит свет на одну секунду и так продолжает повторяться бесконечно. После того как программный код завершен мы можем запустить его в среде разработки и посмотреть как она работает, все ли выполнено правильно и какие ошибки могли возникнуть.

Г* 1Н «п ■ — ■ Л - гт* > #1 , Ц^

Рис. 2. Программа для платы Агёшпо

Интуитивно понятная графическая среда разработки ЬаЬУ1е,№ является идеальной платформой для разработчиков, обладающих недостаточным опытом программирования, которые разрабатывают приложения для микроконтроллеров. Опытным разработчикам ЬаЬУ1е,№ предоставляет средства для более быстрого и рационального подхода к программированию.

БИБЛИОГРАФИЧЕСКИЙ СПИСОК

1. Блюм П. ЬаЬУШ'^ стиль программирования. Пер. с англ. Под ред. Михеева П.- М.: ДМК Пресс, 2008- 400 с: ил.

2. Жуков К. Модельное проектирование встраиваемых систем в ЬаЬУШ'^ - М.: ДМК-Пресс, 2011. -688 с: ил.

3. Тревис Дж. LabVIEW для всех / Джеффри Тревис: Пер. с англ. Клушин Н.А.-М.: ДМК Пресс; ПриборКомплект, 2005. - 544с: ил.

4. Суранов А. LAbVIEW 8.20: Справочник по функциям. - М.: ДМК Пресс, 2007. - 536.

© И. Е. Рудова, Р. В. Гришин, А. А. Селютина, 2018

i Надоели баннеры? Вы всегда можете отключить рекламу.