MAX & Device Manager

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

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

MAX & Device Manager

Сообщение taras_33 »

Всем доброго времени суток. Как присваиваются номера портов в MAX и почему эти номера отличаются с Device Manager? Связка PLC <-> LabVIEW. Обмен по проводному RS232 Modbus. По проводному, потому как до этого использовалась приблуда EW10A и связь PLC <-> PC осуществлялась по WiFi. Но она не оправдала надежд, связь достаточно часто прерывалась и было принято решение заменить на старый добрый провод.
Вообщем попался как пацан - втыкаю в компьютер адаптер RS232 <-> USB, вижу в диспетчере устройств появившийся COM7, прописываю его в настройках порта и... ошибка при записи VISA таймаут. Что еще сбило с толку - порт открывается нормально. Запускаю Hercules открываю тот же COM7 посылаю hex 0104 012C 000A B038 (чтение 10ти MIR начиная с адреса d300 - предварительно ее запомнил) И PLC исправно возвращает запрашиваемые значения. Т.е Геркулес работает, а LabVIEW нет. Два часа ошалело "танцевал c бубном" вокруг, уже думал бубен сломался...
В итоге выяснилось что MAX и диспетчер устройств присваивают разные номера для одного и того же порта. См скриншот. COM7 в диспетчере соответствует COM15 в MAX. Прописал СОМ15 и всё заработало. Но это на моей девелоперской машине. На целевой порт будет другой. Теперь вот думаю как автоматом определить нужный порт. Самое простое перебирать по кругу все имеющееся, посылая команды, пока не найдется нужный. В каком то из своих проектов так уже делал... Но это как то не спортивно..
Как Вы решаете подобные задачи - ( найти порт без перебора)
MAX and Device Manager.PNG
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!
FredP
beginner
beginner
Сообщения: 34
Зарегистрирован: 19 апр 2020, 01:22
Версия LabVIEW: 2021
Благодарил (а): 4 раза
Поблагодарили: 6 раз
Контактная информация:

Re: MAX & Device Manager

Сообщение FredP »

Почему разные - не знаю, я удивлен. Без перебора думаю, никак не найти. Вообще USB-COM стараюсь не использовать. Например, бывает что сессия не закрылась, а порт висит под лабвью, он в системе создаёт новый номер. Или просто если вставить в другой USB - опять новый. Просто иногда таймаут выдает (один на тысячу опросов). Легко выдернуть разъем. Одни проблемы с этим USB :( не промышленное решение.
Artem.spb

Activity Автор
professor
professor
Сообщения: 3496
Зарегистрирован: 31 июл 2011, 23:05
Награды: 2
Версия LabVIEW: 12-18
Благодарил (а): 54 раза
Поблагодарили: 185 раз
Контактная информация:

Re: MAX & Device Manager

Сообщение Artem.spb »

Ни разу не замечал таких странностей.
А седьмой у вас на скрине чем занимается?

Я проблему выбора порта предоставляю пользователю - не только прописываю в настройки, но и на экране выбор даю. А там список из доступного в системе.
Ну и до кучи у меня нет такой кучи портов, особенно на машине пользователя.
Аватара пользователя
taras_33

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

Re: MAX & Device Manager

Сообщение taras_33 »

Artem.spb писал(а): 29 окт 2023, 20:10 А седьмой у вас на скрине чем занимается?
Вот и я задался этим вопросом. Поскольку диспетчер намекает, что это как то связано с голубым зубом, то начал по одному удалять из системы все Bluetooth устройства. Оказалось что это три пары ВТ наушкиков разных моделей, кстати каждая пара занимала по два порта. Ну и смотреть изменения в диспетчере и MAX. Вообщем бардак полный - по номерам ни одного совпадения! Конкретно номера 9-10 в диспетчере соответствовали 6-7 в МАХ. После удаления всего и вся, получил вот такую картинку, причем она не меняется и после перезагрузки.
MAX and Device Manager.PNG
На целевой машине ( безвентиляторный мини компьютер) на борту четыре физических СОМ порта, и два виртуальных мой USB будет седьмым. Позже соединю напрямую, без всяких USB. Но сути это не меняет и Вопрос остаестся открытым. Возможно ли без перебора определить нужный порт...
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!
Artem.spb

Activity Автор
professor
professor
Сообщения: 3496
Зарегистрирован: 31 июл 2011, 23:05
Награды: 2
Версия LabVIEW: 12-18
Благодарил (а): 54 раза
Поблагодарили: 185 раз
Контактная информация:

Re: MAX & Device Manager

Сообщение Artem.spb »

taras_33 писал(а): 29 окт 2023, 23:07 Возможно ли без перебора определить нужный порт...
Поиграйте со свойствами General settings. Вдруг там какой-то код будет уникальным.
Но если вы в конечном железе планируете использовать встроенное, то всё это будет другим и всяко придётся перебором проверять, есть ли ответ.
Ответить
  • Похожие темы
    Ответы
    Просмотры
    Последнее сообщение

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