Visa USB

VISA, TCP/IP, USB, CAN, GPIB и подобные протоколы
Ответить
Ridllem
interested
interested
Сообщения: 9
Зарегистрирован: 17 янв 2008, 12:25
Версия LabVIEW: 7.0
Откуда: Россия, Омск
Контактная информация:

Visa USB

Сообщение Ridllem »

Работал с КОМ портом в Лабвью нормально, все было хорошо, пока новый комп не поставили, где нет вообще КОМ портов, только USB. Решил попробовать научиться работать с этим устройством, но не знаю как. Расскажите, как работать с USB?
Аватара пользователя
Eugen Graf

Activity Professionalism Silver Black
guru
guru
Сообщения: 6502
Зарегистрирован: 13 ноя 2007, 02:20
Награды: 4
Версия LabVIEW: 2009
Откуда: Saarbrücken
Контактная информация:

Re: Visa USB

Сообщение Eugen Graf »

Нужно всего навсего купить USB Serial Converter, который стоит совсем недорого и прекрасно заменяет последовательный порт. После инсталляции в Windows Device Manager появится новый Компорт, с которым можно работать так же как и с обычным.
Иногда возникают проблемы со старыми конвертерами (USB 1.0), но сейчас такие уже не продают.
Ridllem
interested
interested
Сообщения: 9
Зарегистрирован: 17 янв 2008, 12:25
Версия LabVIEW: 7.0
Откуда: Россия, Омск
Контактная информация:

Re: Visa USB

Сообщение Ridllem »

Подключил устройство с FTDI, поставил драйвер виртуального коп-порта. Не могу получить данных от него вообще ни каких. Можешь кинуть примерчик правильного подключения? Или тут также как и с обычным ком-портом?
Аватара пользователя
Eugen Graf

Activity Professionalism Silver Black
guru
guru
Сообщения: 6502
Зарегистрирован: 13 ноя 2007, 02:20
Награды: 4
Версия LabVIEW: 2009
Откуда: Saarbrücken
Контактная информация:

Re: Visa USB

Сообщение Eugen Graf »

Попробуй для начала соединить два порта друг с другом и пообщаться через обычный Windows Hyper Terminal. Если это заработает, то и в LabVIEW проблем никаких не должно быть.
Аватара пользователя
Forward

Activity Tutorials Black
professional
professional
Сообщения: 337
Зарегистрирован: 03 мар 2008, 12:41
Награды: 3
Версия LabVIEW: 2010
Откуда: Кишинев
Контактная информация:

Re: Visa USB

Сообщение Forward »

Привет. Вопрос по этой же тематике, поэтому не буду плодить темы.
Ситуация такая: есть usb-контроллер от cypress. Используется для высокоскоростного обмена между прибором и компом. Контроллер зашивается из LV, потом зашивается FPGA и дальше уже LV управляет всей системой.
В самом начале нахожу нужное устройство зная его VID, PID с помощью visa find resource и потом нужный путь уже передается в программу и работаю с ним.
Например: USB0::0x1ECF::0x0004::NI-VISA-1::RAW
Раз в несколько секунд идет проверка связи с устройством. Так вот она абсолютно случайным образом слетала (программа показывает, что устройства нет) и дальше уже ниче не работает. Поковырявшись обнаружил что в ходе работы программы может измениться путь, а вернее одна цифра в нем: USB0::0x1ECF::0x0004::NI-VISA-0::RAW. Можно в случае если программа заходит в состояние записи/чтения с порта заново находить путь и тогда все работает, но все же что я сделал не так? Может есть какой-то более логичный путь?
Аватара пользователя
Eugen Graf

Activity Professionalism Silver Black
guru
guru
Сообщения: 6502
Зарегистрирован: 13 ноя 2007, 02:20
Награды: 4
Версия LabVIEW: 2009
Откуда: Saarbrücken
Контактная информация:

Re: Visa USB

Сообщение Eugen Graf »

Скорее всего этот номер выдаётся операционной системой устройству динамически, т.е. вставил USB дивайс, операционка дала номер 0 или 1, вытащил, операционка передвинула номера всех подключеных устройств.
Или же ты втыкаешь в разные USB разъёмы, и номер зависит от разъёма. Один раз 0, а один раз 1.
Аватара пользователя
mzu2006

Professionalism Tutorials Black
doctor
doctor
Сообщения: 2456
Зарегистрирован: 16 авг 2008, 02:12
Награды: 3
Версия LabVIEW: 7.1 10 11 12
Откуда: St-Petersburg (RU), Phila, Boston, Washington DC
Контактная информация:

Re: Visa USB

Сообщение mzu2006 »

Forward писал(а):потом нужный путь уже передается в программу и работаю с ним
т.е. идектификатор сессии недействителен ?!?
Аватара пользователя
Forward

Activity Tutorials Black
professional
professional
Сообщения: 337
Зарегистрирован: 03 мар 2008, 12:41
Награды: 3
Версия LabVIEW: 2010
Откуда: Кишинев
Контактная информация:

Re: Visa USB

Сообщение Forward »

Ну в самом начале идентификатор рабочий. Потом контроллер зашивается через usb и рестартуется. Причем во время работы может произойти перепрошивка и иземение конфигурации регистров. И после каждой прошивки последняя цифра в идентификаторе инкрементируется на 1:
USB0::0x1ECF::0x0004::NI-VISA-1::RAW, USB0::0x1ECF::0x0004::NI-VISA-21::RAW, USB0::0x1ECF::0x0004::NI-VISA-37::RAW и т.д.
Вот, а далее в процессе работы (прошивка не изменяется) эта цифра может измениться опять на 0 спустя 5 или 10 минут (я так и не понял по какому признаку) и старый идентификатор "ломается".
Может действительно это от операционки идет, а может у меня что-то не доделано...
Аватара пользователя
Eugen Graf

Activity Professionalism Silver Black
guru
guru
Сообщения: 6502
Зарегистрирован: 13 ноя 2007, 02:20
Награды: 4
Версия LabVIEW: 2009
Откуда: Saarbrücken
Контактная информация:

Re: Visa USB

Сообщение Eugen Graf »

Я думаю тебе надо сидеть и дибагить твою прогу, пока не найдёшь причину. Другого ответа на твой вопрос я к сожалению не знаю. :think:
Аватара пользователя
mzu2006

Professionalism Tutorials Black
doctor
doctor
Сообщения: 2456
Зарегистрирован: 16 авг 2008, 02:12
Награды: 3
Версия LabVIEW: 7.1 10 11 12
Откуда: St-Petersburg (RU), Phila, Boston, Washington DC
Контактная информация:

Re: Visa USB

Сообщение mzu2006 »

Forward писал(а):Может действительно это от операционки идет
Приходилось возиться с DDK (Driver Development Kit) для Windows. Мне вспоминается, что
имена устройств в пространстве имён устройств могут меняться только при каких-то событияхна шине. Т.е.
например, если устройство постоянно отключается и подключается (плохой контакт, баг в прошивке). Как это
сделано у VISA не знаю, но по-моему проблема либо в VISA либо в аппаратной части.
Аватара пользователя
Forward

Activity Tutorials Black
professional
professional
Сообщения: 337
Зарегистрирован: 03 мар 2008, 12:41
Награды: 3
Версия LabVIEW: 2010
Откуда: Кишинев
Контактная информация:

Re: Visa USB

Сообщение Forward »

В своих поисках набрел на банальный вопрос.
Какой смысл (я таковой так и не нашел) передавать идентификатор сессии через шифт регистр (см. рисунок) если в цикле используются только функции write/read? Ибо я заметил (даже в этой ветке форума - правда с COM портом, но суть не меняется) есть и такие и такие варианты. Идентификатор может различаться на входе/выходе этих функций?
Вложения
test.png
Аватара пользователя
Eugen Graf

Activity Professionalism Silver Black
guru
guru
Сообщения: 6502
Зарегистрирован: 13 ноя 2007, 02:20
Награды: 4
Версия LabVIEW: 2009
Откуда: Saarbrücken
Контактная информация:

Re: Visa USB

Сообщение Eugen Graf »

Это привычка программистов LabVIEW, можешь спокойно использовать тунель вместо сдвигового регистра в этом случае.
Аватара пользователя
Konstantin Sumenko

Activity Bronze
expert
expert
Сообщения: 1439
Зарегистрирован: 17 июл 2008, 12:20
Награды: 2
Версия LabVIEW: 2010
Откуда: Moscow
Поблагодарили: 1 раз
Контактная информация:

Re: Visa USB

Сообщение Konstantin Sumenko »

Да, хорошая привычка, между прочим (в разумных пределах, конечно же). Идентификатор не меняется в данном примере.
Ответить
  • Похожие темы
    Ответы
    Просмотры
    Последнее сообщение

Вернуться в «Коммуникация с приборами»