Подключение Arduino к LabVIEW

Полгода назад решил попробовать, что же такое Arduino. До этого я уже программировал AVR микроконтроллеры на С. Но до полноценного прототипирования наработок как то не доходили руки, так как это долго, нужен программатор под разные микроконтроллеры, и т. д.

С Arduino было все намного проще, пишешь программу, заливаешь, тестируешь. Единственным минусом был язык processing, но он оказался очень простым и скажу, что его даже учить не пришлось, достаточно просто иметь справочник по функциям и общее понимание философии программирования на С-подобных языках.

labview and arduino

В университете, на моей кафедре, изучают интересную среду разработки, которая называется LabView. LabView хорош тем, что это идеальное средство для цифровой обработки сигналов. Среда разработки полностью графическая, то есть вам не нужно вникать в код, главное иметь представление про физику того или иного процесса и вы сможете реализовать его!

Основным плюсом LabView есть то, что компания National Instruments (США), выпускает параллельно платы которые взаимодействуют с этой средой и позволяют создавать готовые приборы и системы на базе этих плат. Если говорить по-простому, то левовая часть их продукции это многоканальные, малошумящие АЦП и ЦАПы которые умеют работать с различными интерфейсами и протоколами (RS-232, GPIB-488, TCP/IP и многие другие).

Все бы хорошо, но цены на платы NI совсем не детские. Если хотите средненький АЦП на 12 бит, с USB интерфейсом будьте готовы выложить 200-300$. В общем, мое жлобство заставило меня сделать себе хотя бы похожую плату для упражнений дома. Поискав в интернете, я понял, что все это очень просто можно осуществить на Arduino. Как оказалось в NI есть даже официальные библиотеки для подключения и работы Arduino с LabView.

Попытаюсь кратко описать как это сделать:

1. Для начала нужна плата Arduino. На данном этапе поддерживаються: Arduino Mega 2560, Arduino UNO и Arduino Duemilanove.

2. Установить VI Package Manager 2010 (Кстати, нормальная работа Arduino возможна только с версиями LabView 2010 или 2012). VIPM нужен нам для скачивания и установки нужных библиотек.

3. Найти и установить через поиск VIPM библиотеки для работы с платой. Достаточно в поиске написать «Arduino». Также библиотеки можно скачать через FTP: NI LabVIEW Interface for Arduino Toolkit

lab-view updater
VI Package Manager 2010 установка библиотек для Arduino

4. Дальше нам нужно зашить в память нашей платы программу, которая позволяет осуществлять обмен данными между «железом» и «софтом» через COM порт.

  • Открываем Arduino IDE. Нажимаем Файл-Открыть и идем по пути C:Program Files (x86)National InstrumentsLabVIEW 2010i.libLabVIEW Interface for ArduinoFirmwareLIFA_Base и открываем LIFA_Base.ino .
  • Загружаем прошивку.

lifa base

6. Подключаем плату, заходим в LabVIEW и видим там библиотеку для работы с нашей платой.

arduino labview

Пишем простенькую программку для тестирования:
program labview

Думаю объяснять ничего не надо: Считываем напряжение с 3 аналогового входа и с полученных значений строим график изменения напряжения во времени. Как вариант, предлагаю на 3-ий pin подать напряжение с платы 3.3 B.

Как видите все очень просто и понятно. Если Вам была полезной данная статья, проголосуйте внизу звездочкой.