Проблема с VISA
Проблема с VISA
Всем привет!
Подскажите, пожалуйста, проблема с VISA, как мне представляется.
Делал пример их статьи уважаемого bomond http://easyelectronics.ru/znakomimsya-s-labview.html
При запуске программы возникает ошибка Когда выставляю в инициализации порта COM3 в Measurement and Automation Explorer при попытке открытия VISA Test Panel для этого порта вылезает такая ошибка Хотя до выбора COM3 в инициализации порта тестовая панель открывалась нормально.
Ещё заметил, что при считывании с этого порта в тестовой панели первый раз всё нормально, считывает постоянно передаваемый байт 1С или 00011100 А начиная со второго раза при чтении с порта такая ошибка Мне кажется, что проблема с VISA, смотрел с терминальных программ, байт исправно передаётся.
Может драйвера какие-то нужны?
Подскажите, пожалуйста, проблема с VISA, как мне представляется.
Делал пример их статьи уважаемого bomond http://easyelectronics.ru/znakomimsya-s-labview.html
При запуске программы возникает ошибка Когда выставляю в инициализации порта COM3 в Measurement and Automation Explorer при попытке открытия VISA Test Panel для этого порта вылезает такая ошибка Хотя до выбора COM3 в инициализации порта тестовая панель открывалась нормально.
Ещё заметил, что при считывании с этого порта в тестовой панели первый раз всё нормально, считывает постоянно передаваемый байт 1С или 00011100 А начиная со второго раза при чтении с порта такая ошибка Мне кажется, что проблема с VISA, смотрел с терминальных программ, байт исправно передаётся.
Может драйвера какие-то нужны?
-
- leader
- Сообщения: 932
- Зарегистрирован: 17 янв 2016, 15:02
- Награды: 1
- Версия LabVIEW: 6.1,8.5,20
Re: Проблема с VISA
Проблема не c VISA, а c программой и возможно с девайсом.
1. Ошибка парсинга строки функцией Scan From String в программе. В этом случае может оказать помощь только телепат), который сможет посмотреть BD на расстоянии.
2. VISA добросовестно сообщает, что ресурс существует, но в данный момент кем то занят и поэтому у нее нет к нему доступа. Закройте все программы которые могут использовать этот ресурс, включая тестовую панель.
3. Если это реальный ответ от девайса на ID запрос то он или не понимает этой команды или работает с ошибкой. Если это просто Read, то что это означает?
4. Это ошибка передачи девайса.
5. Какие настройки порта и что за девайс?
1. Ошибка парсинга строки функцией Scan From String в программе. В этом случае может оказать помощь только телепат), который сможет посмотреть BD на расстоянии.
2. VISA добросовестно сообщает, что ресурс существует, но в данный момент кем то занят и поэтому у нее нет к нему доступа. Закройте все программы которые могут использовать этот ресурс, включая тестовую панель.
3. Если это реальный ответ от девайса на ID запрос то он или не понимает этой команды или работает с ошибкой. Если это просто Read, то что это означает?
4. Это ошибка передачи девайса.
5. Какие настройки порта и что за девайс?
-
- leader
- Сообщения: 932
- Зарегистрирован: 17 янв 2016, 15:02
- Награды: 1
- Версия LabVIEW: 6.1,8.5,20
Re: Проблема с VISA
Посмотрел пример. Если сделано один в один: на выходе VISA Read должна быть ошибка таймаута -> Read buffer=Empty String (пустая строка) -> ошибка парсинга значения кода -> первый cкрин при Enable Automatic Error Handler.
При 9600 Baud: передача 1 байта = 1 ms с копейкой, читаем 200 байт = 200 ms с копейками, парсим один первый байт -> 1000 ms per second/ 200 ms = 5 отсчетов в секунду -> реальная скорость измерения (sample rate).
При 9600 Baud: передача 1 байта = 1 ms с копейкой, читаем 200 байт = 200 ms с копейками, парсим один первый байт -> 1000 ms per second/ 200 ms = 5 отсчетов в секунду -> реальная скорость измерения (sample rate).
Re: Проблема с VISA
А почему с девайсом, смотрел через 2 терминальные программы,, девайс передает постоянно байт 00011100, как я его и программировал,, также через Test Panel первый раз при нажатии Read видит эти байты 1С или 00011100.
Девайс точно ничем другим не занят, так как ошибка при попытке открытия Test Panel возникает только когда в программе указываешь порт COM3, если этого не сделать, то ошибки нет, тестовая панель открывается и первая команда Read проходит нормально, начиная со второй, как писал выше появляется ошибка в тестовой панели.
-------------------
Настройки порта стандартные, ничего не менял, такие же, как на меге16 настроен UART
9600
No parity
1 stop bit
------------------
А что такое BD VS изопервогоопунктаовашегоосообщения? :)
------------------
Девайс - МК мега16, подключен через USB посредством платы на FT232, стоят драйверы, то есть комп видит COM порт, который является виртуальным и устройство USB serial port.
Девайс точно ничем другим не занят, так как ошибка при попытке открытия Test Panel возникает только когда в программе указываешь порт COM3, если этого не сделать, то ошибки нет, тестовая панель открывается и первая команда Read проходит нормально, начиная со второй, как писал выше появляется ошибка в тестовой панели.
-------------------
Настройки порта стандартные, ничего не менял, такие же, как на меге16 настроен UART
9600
No parity
1 stop bit
------------------
А что такое BD VS изопервогоопунктаовашегоосообщения? :)
------------------
Девайс - МК мега16, подключен через USB посредством платы на FT232, стоят драйверы, то есть комп видит COM порт, который является виртуальным и устройство USB serial port.
Re: Проблема с VISA
Заметил, что у меня не установлен пакет драйверов NI-DAQmx, он же в моём случае точно должен быть?
Или этот пакет нужен только для устройств от NI?
Или этот пакет нужен только для устройств от NI?
-
IvanLis
- guru
- Сообщения: 5464
- Зарегистрирован: 02 дек 2009, 17:44
- Награды: 7
- Версия LabVIEW: 2015, 2016
- Откуда: СССР
- Благодарил (а): 28 раз
- Поблагодарили: 87 раз
Re: Проблема с VISA
Его назначение немного шире, о чем можно прочесть: http://sine.ni.com/nips/cds/view/p/lang/ru/nid/10181MillyVolt писал(а):Заметил, что у меня не установлен пакет драйверов NI-DAQmx, он же в моём случае точно должен быть?
Или этот пакет нужен только для устройств от NI?
Но Вам он не нужен, для работы с портами достаточно NI-VISA: https://www.ni.com/visa/
Знание нескольких принципов освобождает от знания многих фактов!
Правила форума
Как добавить в сообщение картинку или файл
Конвертация / версий (форматов) VI
Как правильно задать вопрос...
Правила форума
Как добавить в сообщение картинку или файл
Конвертация / версий (форматов) VI
Как правильно задать вопрос...
-
dadreamer
- professor
- Сообщения: 3926
- Зарегистрирован: 17 фев 2013, 16:33
- Награды: 4
- Версия LabVIEW: 2.5 — 2022
- Благодарил (а): 11 раз
- Поблагодарили: 127 раз
- Контактная информация:
Re: Проблема с VISA
MillyVolt
1. Попробуйте безо всяких панелей сделать простое циклическое чтение данных из порта, без перевода из строки в число и логики, просто накопление строк и вывод на FP.
2. Обновите все дрова на ваш USB-переходник.
3. Попробуйте работать через функции FTD2XX.DLL: http://www.ftdichip.com/Support/Softwar ... abVIEW.htm (требуется драйвер D2XX) (это, если через Визу вообще никак не выходит).
4. Проверьте вашу программу на МК, может, там где-то собака зарыта.
5. Проверьте кабели и их распайку, мало ли.
1. Попробуйте безо всяких панелей сделать простое циклическое чтение данных из порта, без перевода из строки в число и логики, просто накопление строк и вывод на FP.
2. Обновите все дрова на ваш USB-переходник.
3. Попробуйте работать через функции FTD2XX.DLL: http://www.ftdichip.com/Support/Softwar ... abVIEW.htm (требуется драйвер D2XX) (это, если через Визу вообще никак не выходит).
4. Проверьте вашу программу на МК, может, там где-то собака зарыта.
5. Проверьте кабели и их распайку, мало ли.
Не VS, а — Virtual Instrument / Виртуальный инструмент / Виртуальный приборMillyVolt писал(а):А что такое BD VS изпробелпервогопробелпунктапробелвашегопробелсообщения? :)
Последний раз редактировалось dadreamer 24 мар 2016, 09:05, всего редактировалось 1 раз.
-
- leader
- Сообщения: 932
- Зарегистрирован: 17 янв 2016, 15:02
- Награды: 1
- Версия LabVIEW: 6.1,8.5,20
Re: Проблема с VISA
???Делал пример ...
- Virtual Instrument (программа)А что такое BD VI изопервогоопунктаовашегоосообщения? :)
BD - Block Diagram
FP - Front Panel
Ошибка на скрине 4 означает переполнение входного буфера FIFO виртуального COM порта. Это означает, что драйвер этого порта не смог переслать данные из FIFO в общую память системы, из которой их берут уже все остальные игроки, в том числе и VISA.
Используйте при работе с - NI IO Trace (старое название NI Spy) для более детального понимания, как взаимодействует VISA с системными драйверами.
P.S. Нельзя одновременно работать с Test Panel и программой. Только один игрок владеет мячом (портом)))
Re: Проблема с VISA
Да, была такая мысль :)Blackman писал(а):P.S. Нельзя одновременно работать с Test Panel и программой. Только один игрок владеет мячом (портом)))
При чтении последовательного порта функцией Scan from String ошибка, что не тот формат данных, not expected data format.
Но например кол-во байт в строке считает правильно, в програме (скрин прикреплен), что набросал, когда меняется число байтов для считывания функцией Read VISA, числовой индикатор Numeric возвращает это число байт в буфере. ------
Программа на МК всё, что делает, это посылает по UART байт 0x001C. Проверял 2мя терминальными программами и VISA Test Panel, байт приходит. Настройки UART те же, что и у порта COM3, с которым работаю в LabView.
------
на всякий уточню, что NI VISA у меня установлена 15я, последняя версия на офф сайте, может поставить более старую, какую-нибудь 5ю с копейками?
------
Дрова поставил буквально перед использованием устройства в LabView, собсно для того всё и мутил :)dadreamer писал(а):MillyVolt
1. Попробуйте безо всяких панелей сделать простое циклическое чтение данных из порта, без перевода из строки в число и логики, просто накопление строк и вывод на FP.
2. Обновите все дрова на ваш USB-переходник.
Извиняюсь, если глупый вопрос, как вывести данные с выхода Read в формате строки?
Последний раз редактировалось MillyVolt 26 мар 2016, 13:12, всего редактировалось 1 раз.
-
dadreamer
- professor
- Сообщения: 3926
- Зарегистрирован: 17 фев 2013, 16:33
- Награды: 4
- Версия LabVIEW: 2.5 — 2022
- Благодарил (а): 11 раз
- Поблагодарили: 127 раз
- Контактная информация:
Re: Проблема с VISA
Так они у вас итак уже в строковом формате. Вот, на вашем скриншоте выше - розовый провод - это string. Заверните VISA Read в цикл While и сделайте накполение строк в сдвиговый регистр (если не таймаут; если таймаут, то ничего не делаем). Выведите на экран, чтобы посмотреть, какие данные приходят.MillyVolt писал(а):Извиняюсь, если глупый вопрос, как вывести данные с выхода Read в формате строки?
Зачем?MillyVolt писал(а):на всякий уточню, что NI VISA у меня установлена 15я, последняя версия на офф сайте, может поставить более старую, какую-нибудь 5ю с копейками?
Re: Проблема с VISA
То, что строковый я уже понял, просто в LabView я совсем нуб, это мой первый опыт, вопрос был в том, как именно вывести, в принципе именно это я и пытаюсь сделать :)
Сейчас попробую.. значит нужны сдвиговый регистр и экран..
Не могли бы подсказать, как называются в LabView эти компоненты?
Сейчас попробую.. значит нужны сдвиговый регистр и экран..
Не могли бы подсказать, как называются в LabView эти компоненты?
Re: Проблема с VISA
Уважаемый IvanLis, вас понял на будущее, а это сообщение напишу отдельно, чтобы тема обновилась.
Попробовал вывести string на индикатор, но он пуст, может что не правильно?
Попробовал вывести string на индикатор, но он пуст, может что не правильно?
-
dadreamer
- professor
- Сообщения: 3926
- Зарегистрирован: 17 фев 2013, 16:33
- Награды: 4
- Версия LabVIEW: 2.5 — 2022
- Благодарил (а): 11 раз
- Поблагодарили: 127 раз
- Контактная информация:
Re: Проблема с VISA
MillyVolt, попробуйте вот этот пример.
- Вложения
-
- Untitled 1.vi
- lv2013
- (10.05 КБ) 316 скачиваний
Последний раз редактировалось dadreamer 26 мар 2016, 17:19, всего редактировалось 1 раз.
Re: Проблема с VISA
Вот что получилось, видео с экрана, так проще) (пардон, последние секунд 20 лишние)
Для модератора: слетела подписка на тему, уже 2й раз; из-за этого, когда 1й раз слетела, увидел ответы только через 2 дня, подставон :)
В окне Input Data пусто, после 1го нажатия Stop появляется ошибка, после неё ползунок справа в окне Input Data не останавливается(до появления ошибки останавливался), а постоянно уходит вверх, то есть приходят пустые байты что-ли постоянно.Для модератора: слетела подписка на тему, уже 2й раз; из-за этого, когда 1й раз слетела, увидел ответы только через 2 дня, подставон :)
-
- leader
- Сообщения: 932
- Зарегистрирован: 17 янв 2016, 15:02
- Награды: 1
- Версия LabVIEW: 6.1,8.5,20
Re: Проблема с VISA
После первой же ошибки VISA Read уже не работает, так как на ее вход еггог in будет постоянно приходить ошибка из-за Shift Register, и VI будет "молотить" c максимально возможной скоростью нагружая проц.
А ошибка все та же. Покажите настройки COM3 на странице Advanced в Диспетчере Устройств, если такая страница есть для совместимости с UART.
Да, по поводу ошибки Scan From String. В прошлый раз упустил из виду. что передача в бинарном формате. В этом случае лучше всего конвертировать строку в массив U8 при помощи функции Tape Cast .
А ошибка все та же. Покажите настройки COM3 на странице Advanced в Диспетчере Устройств, если такая страница есть для совместимости с UART.
Да, по поводу ошибки Scan From String. В прошлый раз упустил из виду. что передача в бинарном формате. В этом случае лучше всего конвертировать строку в массив U8 при помощи функции Tape Cast .
Последний раз редактировалось Blackman 26 мар 2016, 16:54, всего редактировалось 1 раз.
-
- Похожие темы
- Ответы
- Просмотры
- Последнее сообщение
-
- 2 Ответы
- 657 Просмотры
-
Последнее сообщение Borjomy_1
-
- 4 Ответы
- 240 Просмотры
-
Последнее сообщение Embedder74
-
- 13 Ответы
- 1224 Просмотры
-
Последнее сообщение Boxa
-
- 1 Ответы
- 500 Просмотры
-
Последнее сообщение alerm