Как OPC заказывает товары?
Я работаю на сервере OPC(DA), который создает набор элементов сервера и отправляет их клиенту OPC. Каждый элемент имеет значение "имя", которое определяет порядок отображения элементов. Имя каждого элемента имеет следующую структуру:
Sites.<SiteID>.CurrentValue
Таким образом, данные могут выглядеть примерно так:
Sites.0001.CurrentValue
Sites.0002.CurrentValue
Sites.0003.CurrentValue
Etc.
Или в формате дерева:
Sites:
0001:
CurrentValue
0002:
CurrentValue
0003:
CurrentValue
Etc.
Поскольку элементы упорядочены по имени, а единственная переменная часть имени элемента - это идентификатор сайта, элементы эффективно упорядочиваются по идентификатору сайта. Проблема возникает, когда клиент OPC отображает элементы. Порядок, в котором они отображаются, совершенно другой:
Sites:
6219
13501
13502
4000
4001
626262
4002
4003
4004
4005
4006
4007
4008
0030
4009
0200
79791
Etc.
Я пытался вывести какую-то логическую систему заказов, которая дала бы этот результат, но я просто ничего не вижу. Я попробовал это с несколькими клиентами OPC (Matrikon, dOPC, KEP), и все они последовательно представляют товары в указанном выше порядке, что наводит меня на мысль, что существует какая-то универсальная система заказа OPC, но я не смог найти что-нибудь.
Я надеюсь, что, если я смогу узнать, как OPC упорядочивает эти элементы, я могу упорядочить элементы на OPC-сервере, чтобы они отображались в логическом порядке в OPC-клиенте.
Мой сервер основан на Advosol (у меня недостаточно репутации для создания нового тега).