我正在使用OPC(DA)服务器,该服务器创建一组服务器项并将它们发送到OPC客户端。每个项目都有一个"名称"确定项目显示顺序的值。每个项目的名称结构如下:
Sites.<SiteID>.CurrentValue
因此数据可能类似于:
Sites.0001.CurrentValue
Sites.0002.CurrentValue
Sites.0003.CurrentValue
Etc.
或树形式:
Sites:
0001:
CurrentValue
0002:
CurrentValue
0003:
CurrentValue
Etc.
由于项目按名称排序,而项目名称的唯一可变部分是站点ID,因此这些项目按站点ID有效排序。 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的(我没有足够的声誉来创建新标签)。