自定义信息展示方式 > 自定义 Controls Advisor > 自定义远程服务器状态计算
自定义远程服务器状态计算
Controls Advisor 中服务器显示的状态取决于以下两个因素组合:
此服务器是否已连接?
如果已连接,数据流是否足够快?
生成的状况显示在主 Controls Advisor 页面的“状况”列以及“服务器详细信息”页面上:
- 服务器已连接,并且数据流速度很快。
- 服务器已连接,但数据流速度缓慢或不存在。
- 服务器未连接。
服务器状态计算的两个因素都可以自定义。
自定义 KEPServerEX 服务器类型的远程服务器状态计算
符合以下条件的服务器将被视作 KEPServerEX 服务器:
Controls Advisor 中创建,且“连接类型”选择为 KEPServerEX“旧版和非 Kepware OPC 服务器”(聚合器服务器)
从已连接的聚合器服务器处发现
要自定义 KEPServerEX 服务器的状态计算:
1. ThingWorx Composer 中,为 KEPServerEX 连接创建一个新的资源提供者事物。只需复制 KEPServerEX 的现有资源提供者事物即可,PTC.Factory.KepServerResourceProvider
a. 请确保该事物实施了 PTC.Factory.KepServerResourceProviderThingTemplate 事物模板。
b. “服务”下面,单击 以覆盖以下服务,并将您的逻辑添加为自定义 Javascript:
CalculateServerStatus - 确定服务器是否连接。
CalculateIsConnectionHealthy - 确定数据流速度是否足够快。
确保自定义的服务正常工作。
c. 单击“保存并继续”以保存自定义的服务。
d. 单击“保存”以保存事物模板。
2. 打开 PTC.Factory.C_LaunchPointConfigurationThing_[发布版本]
a. “配置”下面,找到 RemoteConnectionSettings 配置表。
b. 编辑 KEPServerEX ConnectionType 所对应的行。在 ResourceProviderName 列中,输入在步骤 1 中创建的资源提供者事物的名称。
c. 单击“保存”
* 
对于从已连接的聚合器服务器处发现且在 Controls Advisor 中的“服务器类型”显示为“OPC 服务器”的服务器,则可通过对“服务器状况”属性应用远程绑定来自定义数据流的速度计算。
1. Controls Advisor 中,选择 OPC 服务器,然后单击 。
2. “编辑连接”窗口中,单击 ,然后选择远程标记。
3. 单击“确定”
自定义其他服务器类型的状态计算
要自定义其他服务器类型的状态计算:
1. ThingWorx Composer中,创建一个适用于此服务器类型的资源提供者事物模板。例如,MyServerTypeResourceProviderThingTemplate
a. 对于“基本事物模板”,选择 GenericThing
b. 对于“实现的事物形态”,选择 PTC.SCA.SCO.RemoteConnectionResourceProviderThingShape
c. “服务”下面,单击 以覆盖以下服务,并将您的逻辑添加为自定义 Javascript:
CalculateServerStatus - 确定服务器是否连接。
CalculateIsConnectionHealthy - 确定数据流速度是否足够快。
确保自定义的服务正常工作。
d. 单击“保存并继续”以保存自定义的服务。
e. 单击“保存”以保存事物模板。
2. 创建一个适用于此服务器类型的资源提供者事物。例如,MyServerTypeResourceProviderThing
a. “基本事物模板”中,指定在步骤 1 中创建的资源提供者事物模板。
b. 单击“保存”
3. 创建一个适用于此服务器类型的事物模板。例如,MyServerTypeThingTemplate。该事物模板将用于为该服务器类型创建远程事物。
a. “基本事物模板”中,选择 RemoteThing
b. “实现的事物形态”中,选择PTC.SCA.SCO.RemoteConnectionThingShape
c. 单击“保存”
4. 打开 PTC.Factory.C_LaunchPointConfigurationThing_[发布版本]。在“配置”下面,向 RemoteConnectionSettings 配置表中添加对应于此服务器类型的新行。
a. 对于 ConnectionType,提供服务器类型的名称。例如,MyServerType
b. 对于 ResourceProviderName,输入在步骤 2 中创建的资源提供者事物的名称。例如,MyServerTypeResourceProviderThing
c. 对于 RemoteConnectionThingTemplateName,输入在步骤 3 中创建的服务器类型事物模板的名称。例如,MyServerTypeThingTemplate
d. 单击“保存”