Проблема с подключением к COM порту.

Вопросы по программе Lectus Modbus OPC/DDE server
Pavell
Сообщения: 12
Зарегистрирован: 14 янв 2017, 22:31

Проблема с подключением к COM порту.

Сообщение Pavell »

Проблема следующего характера- на компьютере добавлено Bluetooth устройство предоставляющее службу Bluetooth SPP. т.е. в системе появляется com порт. Через этот порт с устройством нормально общаются терминальные программы , а также OPC сервер другой компании. Но когда подключаешься вашим сервером, то подключения не происходит и в лог выводится ошибка "Ошибка инициализации порта".
После этого к данному порту невозможно подключиться ничем т.к. пишет, что порт занят другой программой.. приходится удалять устройство из системы, отключать его, включать и снова устанавливать. После попытки подключения вашим сервером у блютус устройства удаляется предоставляемая им служба bluetooth spp. Физическое устройство - это модуль HC-05. Система win7x64. Как это можно исправить? неужели только проводное подключение?
P.S. c виртуальными портами ваш сервер работает замечательно.
Pavell
Сообщения: 12
Зарегистрирован: 14 янв 2017, 22:31

Re: Проблема с подключением к COM порту.

Сообщение Pavell »

В свойствах устройства на вкладке "Служба" служба не отображается, когда к устройству кто-то подключен. При попытке подключения этим сервером эта служба исчезает, все другие программы видят, что порт занят. Для исправления надо отключать блютус устройство от питания и через минуту включать, после чего служба появляется и другие программы могут работать с этим ком портом.
Pavell
Сообщения: 12
Зарегистрирован: 14 янв 2017, 22:31

Re: Проблема с подключением к COM порту.

Сообщение Pavell »

Все терминалы для работы с ком портами с устройством работают штатно, и только эта такая нужная прога показывает очень странное поведение.. обидно. Такое ощущение , что создается какой-то поток и устанавливает соединение с устройством и потом все программы видят , что порт занят, а у сервера ошибка инициализации порта. После перезагрузки устройства все программы опять могут с ним работать, а запуск этого сервера приводит опять к тому же.
admin
Администратор
Сообщения: 578
Зарегистрирован: 05 сен 2010, 00:51

Re: Проблема с подключением к COM порту.

Сообщение admin »

Работа с COM портами идёт через Windows API функции. Без учёта того, аппаратный это COM порт или виртуальный. Ошибка инициализации может быть в том случае если не удалось подключиться к порту (функция CreateFile). Это может быть в двух случаях: нет данного порта или он занят другой программой.
admin
Администратор
Сообщения: 578
Зарегистрирован: 05 сен 2010, 00:51

Re: Проблема с подключением к COM порту.

Сообщение admin »

Проверяте на текущей версии 3.10 сборка 17.
Вышлите содержимое каталогов Log и BugReport из папки профиля доступной через меню "Настройка" - "Папка профиля"
Pavell
Сообщения: 12
Зарегистрирован: 14 янв 2017, 22:31

Re: Проблема с подключением к COM порту.

Сообщение Pavell »

Сейчас повторял ошибку предварительно удалив файлы из папок Log и BugReport.
В папку BugReport не записалось ничего .. в папке Log думаю наибольший интерес вызывают строки:
13:14:41.882 [6064] TQueueTasks.OnDataChange
13:14:41.882 [6064] TQueueTasks.OnDataChange - OK, Result=OK (0x0), dwTransid=0, hGroup=0, hrMasterquality=0, hrMastererror=0, dwCount=4, phClientItems=([4] 253, 254, 255, 256), pvValues=([4] 1, 5, 2, 8), pwQualities=([4] 192, 192, 192, 192), pftTimeStamps=([4] 16.01.17 09:44:05, 16.01.17 09:44:05, 16.01.17 09:44:05, 16.01.17 09:44:05), ItemIDs=([4] UniversContr.Globs.Adres, UniversContr.Globs.Speed, UniversContr.Globs.GlobMode, UniversContr.Globs.TypeIn)
13:14:43.375 [7692] [ComPort] Инициализации СОМ порта - OK, Порт=COM10
13:14:43.759 [7692] [ComPort] Ошибка СОМ порта, Порт=COM10
13:14:43.769 [6064] TQueueTasks.OnDataChange
13:14:43.769 [6064] TQueueTasks.OnDataChange - OK, Result=OK (0x0), dwTransid=0, hGroup=0, hrMasterquality=0, hrMastererror=0, dwCount=4, phClientItems=([4] 253, 254, 255, 256), pvValues=([4] 1, 5, 2, 8), pwQualities=([4] 280, 280, 280, 280), pftTimeStamps=([4] 16.01.17 13:14:43, 16.01.17 13:14:43, 16.01.17 13:14:43, 16.01.17 13:14:43), ItemIDs=([4] UniversContr.Globs.Adres, UniversContr.Globs.Speed, UniversContr.Globs.GlobMode, UniversContr.Globs.TypeIn)
13:14:54.931 [7692] [ComPort] СОМ порт недоступен, Порт=COM10
13:14:54.932 [7692] Ошибка инициализации порта (COM10 Адрес:1)
13:15:05.608 [7692] [ComPort] СОМ порт недоступен, Порт=COM10
тут видно, что сначала инициализация порта проходит "ОК" и сразу через 400 мс Ошибка COM порта. с чем это связано? хз.
сейчас видео скину как это выглядит.
admin
Администратор
Сообщения: 578
Зарегистрирован: 05 сен 2010, 00:51

Re: Проблема с подключением к COM порту.

Сообщение admin »

Вышлите на lectussoft@gmail.com содержимое каталогов Log и BugReport из папки профиля доступной через меню "Настройка" - "Папка профиля"
Pavell
Сообщения: 12
Зарегистрирован: 14 янв 2017, 22:31

Re: Проблема с подключением к COM порту.

Сообщение Pavell »

Отправил.
admin
Администратор
Сообщения: 578
Зарегистрирован: 05 сен 2010, 00:51

Re: Проблема с подключением к COM порту.

Сообщение admin »

1) Какая то проблема с COM10. При тестировании порта открытие/закрытие прошли нормально.
При попытке использования порт не открывается.

2) Судя по логу другие порты работают нормально: COM2, COM11.

Разбирайтесь с COM10.
Pavell
Сообщения: 12
Зарегистрирован: 14 янв 2017, 22:31

Re: Проблема с подключением к COM порту.

Сообщение Pavell »

Ну понятно что проблема с COM10, но вопрос почему?
Драйвера этих портов: (ссылки на скриншоты на яндекс диске)

COM11
COM2
COM10

т.е. файл драйвера btmodem.sys Стандартный последовательный порт по соединению Bluetooth . Драйвер от майкрософта и с ним работают все терминальные программы, и другие серверы.
Затык где-то в инициализации.. может быть ввести задержку при повторном открытии порта после инициализации? может быть драйвер ожидает подтверждения закрытия от блютус модуля HC-05 и не успевает его получить? и на модуле остается открытым порт? но модуль HC-05 довольно распространенная и удобная штука очень хотелось бы чтобы с ней тоже можно было работать с помощью вашего сервера, а то у всех работает, а у вас нет)
Я конечно поищу сниффер портов, но пару лет назад искал безрезультатно, пока щас проводами припаялся к контроллеру.
но все равно ваш сервер лучший) вот этот небольшой ньюанс решить и вообще будет огонь. тип данных регистр с возможностью побитовой обработки регистра просто отлично работает. как я понял он берет регистр, заменяет в нем нужные биты и записывает весь регистр стандартной командой записи.. сначала все искал где он coils записывает). еще в тип данных "произвольная" надо бы на вкладках чтения и записи сделать флаг типа "добавлять адрес устройства в начало строки" чтоб можно было копировать в другое устройство и не переписывать адреса.
Ответить

Кто сейчас на конференции

Сейчас этот форум просматривают: нет зарегистрированных пользователей и 7 гостей