Управление манипулятором на базе Arduino UNO R3

VISA, TCP/IP, USB, CAN, GPIB и подобные протоколы

Управление манипулятором на базе Arduino UNO R3

Postby nadex on 07 Dec 2017, 14:23

Добрый день, я занимаюсь техническим зрением и в качестве объекта выбрал манипулятор с 4 сервоприводами. Сначала была идея спроектировать и собрать самому, но позже я отказался и взял готовый, электронику взял отдельно, а именно Arduino UNO R3, сверху поставил на нее trema shield, к нему уже подключил сервоприводы. Главной целью было запрограммировать манипулятор на определенные действия с помощью LabVIEW, т.к. я с ней работал в университете, но сначала решил управлять им потенциометрами. Я купил и подсоединил 4 потенциометра, установил Arduino IDE 1.8.5 и залил готовый скетч. Все прошло отлично, и я мог управлять манипулятором с помощью потенциометров. Дальнейший мой шаг заключался в управлении манипулятором в LabVIEW с помощью Knob, проще говоря ручки управления или аналогичных ему. Нужна была библиотека для Arduino и я скачал через VI PAckage Manager "LabVIEW Interface for Arduino" версии 2.2.0.79. Затем через Arduino IDE открыл LIFA_BASE и залил скетч. Наконец, я начал создавать алгоритм управления сервоприводами. Блок диаграмма:
0.gif
Выставил везде свой COM-порт, хотя думал нужно только в VISA resource, и запустил программу, загорелся светодиод на Arduino, ошибки не выскакивали, но управлять сервоприводами я не мог. Оказалась у меня вышло предупреждение код 1073676294 в "Set number of servos"
2.jpg
Полный текст предупреждения VISA Read in LabVIEW Interface for Arduino.lvlib:Send Receive.vi->LabVIEW Interface for Arduino.lvlib:Set Number of Servos.vi->. Начал искать это предупреждение в поддержке National Instruments, нашел несколько тем, но так и не смог найти решение для своей работы. Кто сталкивался с данной проблемой или создавал алгоритм для управления манипулятором на сервоприводах, прошу подсказать мне мою ошибку, может быть еще и составлено не правильно. Благодарю за внимание.
nadex
interested
interested
 
Posts: 2
Joined: 06 Dec 2017, 21:24
LabVIEW Version: 15
Karma: 0

Re: Управление манипулятором на базе Arduino UNO R3

Postby Blackman on 07 Dec 2017, 17:07

VISA Статус коде 1073676294 не является ошибкой. Это предупреждение. Оно говорит о том, что функция VISA Read прочитала заданное количество байт, но в буфере возможно есть еще байты. Вы можете игнорировать это предупреждение.
Blackman
leader
leader
 
Posts: 685
Joined: 17 Jan 2016, 15:02
Medals: 1
Activity (1)
LabVIEW Version: 6.1,8.5,20
Karma: 170

Re: Управление манипулятором на базе Arduino UNO R3

Postby nadex on 07 Dec 2017, 17:22

Спасибо за ответ, с предупреждением все понятно,тогда не ясно почему не работает схема.
nadex
interested
interested
 
Posts: 2
Joined: 06 Dec 2017, 21:24
LabVIEW Version: 15
Karma: 0

Re: Управление манипулятором на базе Arduino UNO R3

Postby Blackman on 07 Dec 2017, 17:35

Не надо писать непрерывно значения в контроллер, тем более с максимально возможной скорость). Запись значений должна производиться только при изменении значений регуляторов. Для этого можно использовать или функционал Value Change или Event Structure.
Blackman
leader
leader
 
Posts: 685
Joined: 17 Jan 2016, 15:02
Medals: 1
Activity (1)
LabVIEW Version: 6.1,8.5,20
Karma: 170


Return to Коммуникация с приборами

Who is online

Users browsing this forum: No registered users and 5 guests

cron