Разрывается связь с СОМ портом

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

Re: Разрывается связь с СОМ портом

Postby dadreamer on 27 Dec 2016, 22:44

Atom, так используйте Визу, кто ж вам запрещает. :wink: Тем более что это универсальный инструментарий для работы с различным железом из-под LV. Просто вы ж взялись переделать нынешний алгоритм поиска искомого устройства. Так что тут два пути: либо возвращать, как было, либо доводить задумку до конца. На остальные куски кода это вообще никак не должно повлиять, если речь об этом...
User avatar
dadreamer
doctor
doctor
 
Posts: 2718
Joined: 17 Feb 2013, 16:33
Medals: 4
Activity (1) Professionalism (1) Автор (2)
LabVIEW Version: 2.5 — 2017
Karma: 681
I/O VIP vision internet

Re: Разрывается связь с СОМ портом

Postby Atom on 27 Dec 2016, 22:54

В продолжении моих измышлений:
А зачем нам каждый раз открывать/закрывать сессию (для каждого дескриптора в массиве) когда мы можем просто проанализировать массив на предмет совпадения и открыть сессию (получить resource name) только тогда, когда нашли НУЖНЫЙ нам дескриптор.
Попробую в этом ключе модернуть мою SubVI-ку.
Atom
advanced
advanced
 
Posts: 182
Joined: 01 Nov 2009, 23:18
Location: Москва
LabVIEW Version: 2010
Karma: 0

Re: Разрывается связь с СОМ портом

Postby Atom on 27 Dec 2016, 23:03

dadreamer wrote:так используйте Визу, кто ж вам запрещает. :wink: Тем более что это универсальный инструментарий для работы с различным железом из-под LV. Просто вы ж взялись переделать нынешний алгоритм поиска искомого устройства.

Это понятно. И я не взялся его переделывать, а я хочу его сделать наиболее оптимально. Я же обещал прислушиваться к доводам "старших" :thank:
Вот и разбираюсь с вашей помощью как сделать этот узел правильнее. Спасибо что не бросаете это обсуждение. Вот сейчас мы уже к чему-то предварительно приплыли.
Atom
advanced
advanced
 
Posts: 182
Joined: 01 Nov 2009, 23:18
Location: Москва
LabVIEW Version: 2010
Karma: 0

Re: Разрывается связь с СОМ портом

Postby Atom on 28 Dec 2016, 00:16

В моей SubVI-ке (скрин в начале темы) мне не нравится то, что я действительно лишний раз стучусь не в свою квартиру (открываю и закрываю сессию того порта который мне не нужен).

Проверил свою идею.
Да, в массиве выходящем из VISA F находится не то что мы видим в диспетчере устройств.
Но так как было РЕШЕНО работать (определятся) ПО ДЕСКРИПТОРУ (как в диспетчере) то нужно вместо VISA F сделать "что-то" аналогичное (сформировать массив), но только чтобы в массиве была инфа как в диспетчере. И вот из этого "чего-то" должны быть выходы самого массива и количества записей в нем. Естественно разговор идет только о СОМ портах (железных или виртуальных). Где-то подобный кусок на днях попадался но с лету не могу найти.
Продолжу изыскания завтра. Если ткнете буду признателен.
Atom
advanced
advanced
 
Posts: 182
Joined: 01 Nov 2009, 23:18
Location: Москва
LabVIEW Version: 2010
Karma: 0

Re: Разрывается связь с СОМ портом

Postby dadreamer on 28 Dec 2016, 08:38

Atom wrote:Если ткнете буду признателен.

Если все прыдыдущие софтины не подходят, то есть ещё кое что. Существует класс CEnumerateSerial для C++, использующий 9 (9, Карл!) методов для получения списка портов. Обсуждение работы класса можно почитать здесь: http://stackoverflow.com/questions/1388 ... s-in-win32 Сам класс и консольный пример лежит тут: http://www.naughter.com/enumser.html Если совсем лень париться, то можно взять эту утиль и сразу распарсить вывод в :labview: (работает, вроде, более менее быстро). По хорошему, надо переписать утиль на работу с аргументами, чтобы можно было выбрать один метод.

Или используйте вот такой :vi: , работающий через Setup API.
Attachments
List COMs.vi
lv2009
(58.17 KiB) Downloaded 24 times
2016-12-28_12-09-16.jpg
User avatar
dadreamer
doctor
doctor
 
Posts: 2718
Joined: 17 Feb 2013, 16:33
Medals: 4
Activity (1) Professionalism (1) Автор (2)
LabVIEW Version: 2.5 — 2017
Karma: 681
I/O VIP vision internet

Re: Разрывается связь с СОМ портом

Postby Blackman on 28 Dec 2016, 10:54

dadreamer wrote:... Или используйте вот такой :vi: , работающий через Setup API.

У меня не все порты находит)
Attachments
List COMs FP.PNG
VISA_Find by Interface Name FP.PNG
VISA_Find by Interface Name BD.PNG
Blackman
leader
leader
 
Posts: 601
Joined: 17 Jan 2016, 15:02
Medals: 1
Activity (1)
LabVIEW Version: 6.1,8.5,20
Karma: 145

Re: Разрывается связь с СОМ портом

Postby dadreamer on 28 Dec 2016, 11:17

Blackman wrote:
dadreamer wrote:... Или используйте вот такой :vi: , работающий через Setup API.

У меня не все порты находит)
Attachments
List COMs - 2.vi
lv2009
(58.22 KiB) Downloaded 21 times
User avatar
dadreamer
doctor
doctor
 
Posts: 2718
Joined: 17 Feb 2013, 16:33
Medals: 4
Activity (1) Professionalism (1) Автор (2)
LabVIEW Version: 2.5 — 2017
Karma: 681
I/O VIP vision internet

Re: Разрывается связь с СОМ портом

Postby Blackman on 28 Dec 2016, 11:42

:cry:
Attachments
List COMs - 2 FP.PNG
Blackman
leader
leader
 
Posts: 601
Joined: 17 Jan 2016, 15:02
Medals: 1
Activity (1)
LabVIEW Version: 6.1,8.5,20
Karma: 145

Re: Разрывается связь с СОМ портом

Postby dadreamer on 28 Dec 2016, 14:01

Blackman, что за странный порт такой... Image Скиньте вывод софтины EnumSer.exe - разберёмся. :wink:
User avatar
dadreamer
doctor
doctor
 
Posts: 2718
Joined: 17 Feb 2013, 16:33
Medals: 4
Activity (1) Professionalism (1) Автор (2)
LabVIEW Version: 2.5 — 2017
Karma: 681
I/O VIP vision internet

Re: Разрывается связь с СОМ портом

Postby Blackman on 28 Dec 2016, 22:33

:wink:
Attachments
My Serial VISA Resources.PNG
Blackman
leader
leader
 
Posts: 601
Joined: 17 Jan 2016, 15:02
Medals: 1
Activity (1)
LabVIEW Version: 6.1,8.5,20
Karma: 145

Re: Разрывается связь с СОМ портом

Postby dadreamer on 28 Dec 2016, 22:53

Blackman, так это не COM-порт, а модем! Потому и не определяет. Нужно указать другой GUID.

Да и до кучи - COM3 физически отсутствует в системе (нету его в списке портов), хотя к нему идёт привязка от модема. По моему методу перечисляются только существующие устройства (см. флаги GetClassDevs).
Attachments
List COMs (Modems).vi
lv2009
(58.21 KiB) Downloaded 17 times
User avatar
dadreamer
doctor
doctor
 
Posts: 2718
Joined: 17 Feb 2013, 16:33
Medals: 4
Activity (1) Professionalism (1) Автор (2)
LabVIEW Version: 2.5 — 2017
Karma: 681
I/O VIP vision internet

Re: Разрывается связь с СОМ портом

Postby Blackman on 28 Dec 2016, 23:08

Во вкладке указан COM3. На вкладке "Дополнительные параметры связи" стандартные настройки порта. MAX его определяет нормально. VISA c ним работает (class serial). Понятно, что порт виртуальной, но в этом и заключается его фишка. Он работает как физический порт с Loopback.)
Last edited by Blackman on 28 Dec 2016, 23:15, edited 1 time in total.
Blackman
leader
leader
 
Posts: 601
Joined: 17 Jan 2016, 15:02
Medals: 1
Activity (1)
LabVIEW Version: 6.1,8.5,20
Karma: 145

Re: Разрывается связь с СОМ портом

Postby dadreamer on 28 Dec 2016, 23:15

Blackman, однако в диспетчере его нет как класса. Это не просто виртуальный порт, а порт-призрак. :D Его можно перечислить при желании. Но к тематике это имеет довольно посредственное отношение.
User avatar
dadreamer
doctor
doctor
 
Posts: 2718
Joined: 17 Feb 2013, 16:33
Medals: 4
Activity (1) Professionalism (1) Автор (2)
LabVIEW Version: 2.5 — 2017
Karma: 681
I/O VIP vision internet

Re: Разрывается связь с СОМ портом

Postby Blackman on 28 Dec 2016, 23:52

dadreamer wrote:...Его можно перечислить при желании. Но к тематике это имеет довольно посредственное отношение.

VISA это делает без всяких условий. Исходная тема уже давно трансформировалась в тему о способах (технике, алгоритме, стиле ...) программного поиска требуемых ресурсов, а какой он - физический, виртуальный или "призрак" уже второе дело.
Blackman
leader
leader
 
Posts: 601
Joined: 17 Jan 2016, 15:02
Medals: 1
Activity (1)
LabVIEW Version: 6.1,8.5,20
Karma: 145

Re: Разрывается связь с СОМ портом

Postby Atom on 29 Dec 2016, 02:13

Прошу прощение за отсутствие. Пытался на протяжении ШЕСТИ часов попасть на форум. При входе пишет что залогинился нормально и сразу выкидывает. Второй день уже так. Прям беда-огорчения.

dadreamer wrote:Blackman, однако в диспетчере его нет как класса.


А если в диспетчере во вкладке "Вид" поставить галку на "Показать скрытые устройства" - он где нибудь покажется? Может даже не обязательно в разделе портов.
Atom
advanced
advanced
 
Posts: 182
Joined: 01 Nov 2009, 23:18
Location: Москва
LabVIEW Version: 2010
Karma: 0

PreviousNext

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

Who is online

Users browsing this forum: No registered users and 2 guests

cron