Проблема с Visa aliase в MAX

VISA, TCP/IP, USB, CAN, GPIB и подобные протоколы
Ответить
Аватара пользователя
taras_33

Activity
professional
professional
Сообщения: 392
Зарегистрирован: 31 окт 2009, 18:25
Награды: 1
Версия LabVIEW: 2019
Поблагодарили: 13 раз
Контактная информация:

Проблема с Visa aliase в MAX

Сообщение taras_33 »

Доброго времени суток господа. Вообщем возникла проблема. Иногда, скажем раз в месяц самопроизвольно сбрасывается Visa aliase имя в MAX-e в дефолтное значение. Ситуация такая: Имеется PCB, на которой установлена MCP2200 http://ww1.microchip.com/downloads/en/D ... 22228B.pdf Мост USB <-> UART. Со стороны PC виден как виртуальный COM порт. Этому порту в MAX-e вместо дефолтного значения COM3, присвоено более осмысленное (для меня) имя, скажем UGCU6000 Программа обменивается с PCB используя это имя. Ну и вот, по непонятным мне причинам это имя сбрасывается в дефолтное COM3. Программа естественно выдает ошибку. Открываю МАХ меняю обратно и все снова работает. Переустановка драйверов от microchip-a проблему не решает. Может кто сталкивался, куда копать? Спасибо
Programming today is a race between software engineers striving to build bigger and better idiot-proof programs, and the Universe trying to produce bigger and better idiots.
So far, the Universe is winning!
AlexRX
user
user
Сообщения: 76
Зарегистрирован: 26 июн 2011, 12:03
Версия LabVIEW: 2012
Контактная информация:

Re: Проблема с Visa aliase в MAX

Сообщение AlexRX »

COM-порт виртуальный, поэтому, возможно, присваиваемый ему номер в системе меняется. Соответственно, MAX не может найти вашу PCB по старому адресу и находит заново, присаивая дефолтное имя. У меня такое было, даже в течение дня, мог подключиться по COM6, а через какое-то время виртуальный порт определялся как COM7. Может быть это возникало при каких-то ошибках, когда закрытие порта не осуществлялось и, соответственно, он висел как существующий и открывался заново. Скорее всего - это проблема драйверов виртуального порта или USB.
Аватара пользователя
taras_33

Activity
professional
professional
Сообщения: 392
Зарегистрирован: 31 окт 2009, 18:25
Награды: 1
Версия LabVIEW: 2019
Поблагодарили: 13 раз
Контактная информация:

Re: Проблема с Visa aliase в MAX

Сообщение taras_33 »

Похоже так оно и есть, потому как один раз я вообще не обнаружил своего устройства даже в диспетчере устройств windows, перезагрузил и все стало в норму. В связи с этим я вот думаю, есть ли програмный способ присваивать visa aliases? Идея такая: до запуска основной программы проверять присутствие в системе устройства с данным именем, если да, то запуск основной программы, если нет - поиск устройства с такими то VID/PID (они то известны) если устройство с этими номерами найдено - переименовываем alias имя и стартуем основное приложение, если нет выдаем message что устройство не найдено и просим перезагрузить windows. Господа эксперты такой алгоритм имеет право на жизнь, или это в принципе невозможно?
Programming today is a race between software engineers striving to build bigger and better idiot-proof programs, and the Universe trying to produce bigger and better idiots.
So far, the Universe is winning!
AlexRX
user
user
Сообщения: 76
Зарегистрирован: 26 июн 2011, 12:03
Версия LabVIEW: 2012
Контактная информация:

Re: Проблема с Visa aliase в MAX

Сообщение AlexRX »

А устройствокак помимо псевдонима (алиаса) в MAXе определяется? Например "Device Type" или полное имя? Может искать подключенное устройство с этим Device Type и, в случае успеха, двигаться дальше? И не переименовывать alias, а работать с этим, т.к. устройство опознано. Послал команду - не ответил, или вернулось не то, что ожидалось - значит не оно.

Вот, вот... наверное может помочь - посмотрите блок VISA Find Resourse Function и help к нему. Там ряд параметров, которые могут помочь идентифицировать устройство.

P.S. Мой виртуальный COM определился сейчас как COM7, Device Type = "Serial Port". В общем-то можно пробежаться по имеющимся в системе последовательным портам, и по отсутствию ожидаемого отклика или возникшей ошибки, отсеять лишние.
Аватара пользователя
taras_33

Activity
professional
professional
Сообщения: 392
Зарегистрирован: 31 окт 2009, 18:25
Награды: 1
Версия LabVIEW: 2019
Поблагодарили: 13 раз
Контактная информация:

Re: Проблема с Visa aliase в MAX

Сообщение taras_33 »

Конечно определяется device type - serial port.
Проблема в том, что исходников программы нет, благодаря нашему IT-шнику...., года три назад я писал ее на visual studio + measurement studio от NI. В планах переписать ее на LabVIEW, но пока это в планах, других проектов много, а работать нужно. Поэтому и родилась идея по быстрому состряпать маленькую утилитку, которая проверит, если нужно изменит имя и запустит главную программу
Programming today is a race between software engineers striving to build bigger and better idiot-proof programs, and the Universe trying to produce bigger and better idiots.
So far, the Universe is winning!
Ответить
  • Похожие темы
    Ответы
    Просмотры
    Последнее сообщение

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