Windows Драйвер LKDSDrv - развитие ComCLB

  • Автор темы Автор темы Andi
  • Дата начала Дата начала
Андрей Ефименко написал(а):
Есть проблема, будет исправлена. Связано это с тем, что программная реализация может находится не только в реальных слотах (0..7), но еще и в виртуальных (10..14). Т.е. желательно сначала ставить признак "программная реализация", а потом уже выбирать слот.
Тут важно представлять как LKDSDrv может обслуживать клиентов.

Первый способ это подключение с использованием COM (не путать с СОМ портами компьютера) интерфейсов Windows. Таким способом к LKDSDrv подключается LKDSDrvCfg, DirectGGS, ComCLBStub. Прикладные программы (MPult, MStat и др. из дисприбутива LKDSDst) уже подключаются к ComCLBStub, который для них заменяет ComCLB из дисприбутива LKDSDst. Сам ComCLBStub просто посредник, передающий данные между LKDSDrv и прикладными программами.

Второй способ - подключение по UDP протоколу. Данным способом к LKDSDrv может подключиться только ComCLBStub (LKDSDrvCfg не может).

Зачем сделан второй способ - что бы можно было с удаленных компьютером подключаться непосредственно к LKDSDrv без проблем, связанных с преодолением системы безопасности Windows, которой защищен COM.

Таким образом LKDSDrv должен быть запущен на компьютере сервере, например, в диспетчерской. LKDSDrv запускается автоматически при обращении к нему любой программы по COM (LKDSDrvCfg, DirectGGS) на этом же компьютере сервере. Можно запустить LKDSDrv из "Служб". Можно поставить LKDSDrv в "Службах" тип запуска "Авто", тогда LKDSDrv будет запускаться при запуске компьютера.
На удаленном компьютере ComCLBStub должен быть сконфигурирован для подключении к LKDSDrv по UDP. Соответсвенно все прикладные программы (MPult, MStat и др. из дисприбутива LKDSDst) будут общаться с ComCLBStub, а уже ComCLBStub будет взаимодействовать с LKDSDrv по UDP.

Опять же зачем все это ? Можно же и на удаленном компьютере полностью сконфигурировать LKDSDrv, с помощью его программного КСЛа соединиться с другим КСЛом и получить доступ ко всей сети "Обь", но в этом случае удаленный компьютер должен иметь статический IP адрес и удаленный компьютер представляет собой отдельный УМ со всеми проблемами конфигурирования.
При подключении по UDP статический IP адрес не нужен, из всего набора LKDSDrv нужен только ComCLBStub, т.е. как будто MPult запускается на том же сервере. Возможно так же, при использовании подключения по UDP, написание программ типа MDisp, удаленного сервисного прибора, MProg для смартфонов.


Т.е. получается при использовании UDP на клиенстком компьтере LKDSDrvCfg.exe использовать не надо, потомучто вместо него испоьзуется ComCLBStub.exe (настройкой ComCLBStub.XML) выступающий в виде клиента к серверному LKDSDrvCfg.exe.
После этого можно на клиенте mpult испоьзовать с теми настройками tree.str, MPult.Xml что и на сервере, что бы видеть те же лифты что и на сервере?
 
chama написал(а):
Т.е. получается при использовании UDP на клиенстком компьтере LKDSDrvCfg.exe использовать не надо, потомучто вместо него испоьзуется ComCLBStub.exe (настройкой ComCLBStub.XML) выступающий в виде клиента к серверному LKDSDrvCfg.exe.


Все почти верно, только если вместо LKDSDrvCfg указать LKDSDrv. LKDSDrvCfg - это обычная программа, которая обращается к серверу LKDSDrv за конфигурацией, а потом, после редактирования, просто возвращает конфигурацию серверу LKDSDrv, который ( сервер LKDSDrv) сохраняет конфигурацию в виде файла LKDSDrv.XML и изменяет свои внутренние структуры в соответсвии с новой конфигурацией.

И еще уточнение. Пользователь общается с прикладными программами (MPult и т.п.). В штатном дистрибутиве (LKDSDst) MPult получает данные от ComCLB. При установленном LKDSDrv, MPult получает данные от ComCLBStub (ComCLB не используется), а ComCLBStub получает данные от LKDSDrv. Так вот ComCLBStub может получать данные от LKDSDrv двумя способами:

1) специальными средствами Windows (COM)
2) по UDP

способ подключения ComCLBStub к LKDSDrv указывается в настроечном файле ComCLBStub.XML

chama написал(а):
После этого можно на клиенте mpult испоьзовать с теми настройками tree.str, MPult.Xml что и на сервере, что бы видеть те же лифты что и на сервере?


Да.
 
Последнее редактирование модератором:
Как поведёт себя драйвер и программный КСЛ при наличие в компе нескольких сетевых интерфейсов?
 
Van Gog написал(а):
Как поведёт себя драйвер и программный КСЛ при наличие в компе нескольких сетевых интерфейсов?


Программынй КСЛ "слушает", т.е. принимает данный поступающие на указанные в конфигурации собственные UDP порты (44000,44001).

Если в собственных параметрах а адресах связи указан IP адрес, то обрабатываются данные поступающие в компьютер на UDP порты через сетевой интерфейс (сетевую плату), в которой явно записан этот IP адрес.

Если в собственных параметрах а адресах связи в качестве IP адреса указано 0.0.0.0, то обрабатываются данные поступающие в компьютер на UDP порты через все сетевые интерфейсы (сетевые карты).

У нас есть компьютер с друмя картами - одна внутренняя сеть, другая внешняя. Собственный IP адрес у всех программных КСЛов указан 0.0.0.0, Адрес для удаленного подключения к LKDSDrv указан тоже 0.0.0.0. Доступ есть к программных КСЛам и к LKDSDrv по удаленному подключению как с внутренней сети, так и из внещней.
 
Андрей Ефименко написал(а):
У нас есть компьютер с друмя картами - одна внутренняя сеть, другая внешняя. Собственный IP адрес у всех программных КСЛов указан 0.0.0.0, Адрес для удаленного подключения к LKDSDrv указан тоже 0.0.0.0. Доступ есть к программных КСЛам и к LKDSDrv по удаленному подключению как с внутренней сети, так и из внещней.


Если я правильно понял таким образом можно резервировать каналы связи в диспетчерской без установки доп. оборудования?
 
Van Gog написал(а):
Если я правильно понял таким образом можно резервировать каналы связи в диспетчерской без установки доп. оборудования?


Для удаленного подключения к самому LKDSDrv подобное резервирование действительно получается автоматически т.к. LKDSDrv принимает подключения с любых IP адресов.

Сейчас ПКСЛ не поддерживает альтернативных IP адресов для связи с другими КСЛами, соответсвенно резервирования не получаеся, потому что ПКСЛ принимает данные только с указанного в связи IP адреса. Т.е. если удаленный КСЛ подключить к другому провайдеру, то этому удаленному КСЛу не удасться связаться с ПКСЛом, т.к. у удаленного КСЛа сменится IP адрес.
 
Андрей Ефименко написал(а):
Использование драйвера LKDSDrv оказалось удобным для подключения к имеющейся сети "Обь" ноутбука (по Скай линк или GPRS) для оперативного администрирования и мониторинга. При этом сохраняется возможность голосовой связи с кабиной лифта и машинным помещением.


Попробовал запустить свой ноут через USBишный модем CDMA, комп в слоте 9.
Честно говоря ожидал бОльшего <_< .

I) Звук включается через три раза на четвёртый. Причём по журналу видно, что не включается связь в слоте 6 входящего УМ, т. е. КЛШ к которому непосредственно подключен ЛБ.

II) Чтение настроек ЛБ идёт очень медленно и с обравами. Микропрограмму залить тоже проблематично.

III) Громкость звука в гарнитуре недостаточная, при этом в настройках звуковухи громкость max.

Подскажите, как это можно победить?
 
мы вот тож недавно начали ставить ЦД.. пока тока 2 диспечерских связали... через промежуточные УМ..
в ЦД LKDSDrv установлен. 9 слот. канал вай-фай...
ну как и вся сетка почти...

долго эксперементировали...
выяснил ( на основании эксперементов)
1) между компом и точкой доступа необходим маршрутизатор. (влияет на устойчивость связи)
2) связь из ЦД делать к УМ к которому неподключёна ЛД, иначе возникали проблемы..
(и со звуком и с опросами УМ как и в ЦД так и в ЛД, особено если ЛД имеет связи через несколько промежуточных УМ)

на данный момент цифра гоняется без проблем (имеем до 5 завязаных цепочкой, друг за другом, промежуточных УМ).
со звуком на удаленные имеются проблемы (прерывесто идет) причину пока невыяснил, видимо связано с пропускной способностью канала....

это для информации... авось пригодится кому

конечно не в этом топике надо писать, но из-за LKDSDrv решил сюда
 
Последнее редактирование модератором:
котяра написал(а):
на данный момент цифра гоняется без проблем (имеем до 5 завязаных цепочкой, друг за другом, промежуточных УМ).
конечно не в этом топике надо писать, но из-за LKDSDrv решил сюда


Какой смысл построения сети таким образом :blink: ?
 
1) из за нежелания нашего руководства подключаться к инету (типа траты, да и выяснения отношений при проблемах со связью с провайдерами...)
2) типа всё свое и спросить есть с кого без проблем..
3) и т.д.

мы конечно не совсем подерживаем это но куда деваться?

кстати невезде есть проводной интернет, а СDМА у нас неочень качественный (у других смотрел, жаловались те что канал неустойчивый... падает переодически, а их имеют..)
 
и в продолжении темы...
изначально было несколько диспечерских с небольшим числом связей через промеж ум (до 2). но всвязи с желанием руководства сократить затраты (как всегда) производили обьединение на один пульт.
были 2 варианта обьединения: инет или по нашим каналам вай-фай, 433... решили второй лучше (см пред сообщение) (дешевле)...
теперь ЛД имеют до 3 пром узлов. ну ЦД имеет 5 пром узлов... кстати ЦД используется у нас для сбора статистики, оператора там нет. стоит комп и пишет...
 
Т. е. Вы весь город собрали Wi-Fi сетью? Тогда подскажите какое оборудование использовали и какое максимальное расстояние между УМ?

P. S. Тема вообще то о другом, поэтому лучше в приват ;) .
 
Van Gog написал(а):
Какой смысл построения сети таким образом :blink: ?

Ну да - ведь если выключают электричество на долго в первом звене-падает весь сегмент?
 
Последнее редактирование модератором:
ну да. правы. у нас бесперебойники расчитаны на 2 часа поддержки питания УМ... в большенстве случаев хватает.
 
Van Gog написал(а):
Попробовал запустить свой ноут через USBишный модем CDMA, комп в слоте 9.
Честно говоря ожидал бОльшего.

I) Звук включается через три раза на четвёртый. Причём по журналу видно, что не включается связь в слоте 6 входящего УМ, т. е. КЛШ к которому непосредственно подключен ЛБ.

II) Чтение настроек ЛБ идёт очень медленно и с обравами. Микропрограмму залить тоже проблематично.

III) Громкость звука в гарнитуре недостаточная, при этом в настройках звуковухи громкость max.

Подскажите, как это можно победить?


Было бы замечательно провести эксперимент - сделать подобную структуру на аппаратном КСЛе, т.е. "CDMA_Модем_с_RJ45"<->"КСЛ"<->"ММИ_USB"<->"Компьютер"

Смысл эксперимент - выяснить где проблемы IP сети, а где LKDSDrv, т.е. нужно сравнить качество передачи цифровых и голосовых данных в обоих случаях.
 
Назад
Сверху