OPC采集器支持SCADA冗余,可以支持iCV服务器冗余(iCV服务端版本5.3.5P3以上),以及特定文件冗余状态设置方案(如下面的iFix方案),
具体参见下面说明:
1、配置采集器,填写必要参数,如图:
注意,在要做采集器的设备中,设备地址要写:127.0.0.1 |
2、分别在两台要做采集器冗余的机器上,安装ihd采集器,然后,打开采集器配置工具,将采集器应用为本地采集器。如图:
注意:如果使用采集器缓存hdBuffer,那么主备机的采集器都需要使用 |
3、至此,独立采集器的配置完毕,下面要设置icv或者ifix的SCADA主备状态检测信息。
具体配置文件位置在:iHyperDB\config目录下的CollectorCfg.xml中,如下图,默认采用iFix冗余状态检测机制,不存在iFixStatus.dat则判定为采集器是独立活动状态,否则根据下面具体方式设置冗余活动状态。
●OPC采集器冗余在iCV中的使用
1.按照上面的配置,分别应用采集器到iCV的主备服务器,具体为:在iCV服务器主机配置采集器,服务器ip(127.0.0.1),应用到本地,启动采集器服务或进程;在iCV服务器备机应用采集器,应用到本地,启动采集器服务器与进程。
2.配置iHyperDB普通点,选择采集iCV的OPC Server数据;
3.查询采集到的数据;
4.切换iCV主备机活动状态,查看数据是否继续采集。
5.采集器端的配置文件供参考:iHyperDB\config\CollectorCfg.xml 文件 ,如 <driver name="OPC" type="opc" path="" rystatus="iCV" desc="冗余状态检测,目前可使用iCV的rmapi,iFix的iFixStatus.dat" /> 【说明】rystatus为iCV,表示支持iCV冗余状态监测,需要iCV的rmapi.dll路径(一般icv的安装路径的executable文件夹)加入操作系统PATH环境变量。
iHyperDB采集到的数据来自新的活动状态节点,由于数据时间戳来自iCV的OPC Server,如果主备机时间不一致,可能导致数据时间不连续。 iCV主备机状态异常,如主备机之间网络中断导致主备机同时活动的情况不考虑。 未配置采集器冗余状态监测类型rystatus,默认采集数据。 |
● OPC采集器冗余在iFix中的使用
1.按照上面的配置,分别应用采集器到ifix的主备服务器,具体为:在ifix服务器主机配置采集器,服务器ip(127.0.0.1),应用到本地,启动采集器服务或进程;在ifix服务器备机应用采集器,应用到本地,启动采集器服务器与进程。
2.配置iHyperDB普通点,选择采集ifix的OPC Server数据;
3.查询采集到的数据;
4.切换ifix主备机活动状态,查看数据是否继续采集。
5.采集器端的配置文件供参考:iHyperDB\config\CollectorCfg.xml 文件 ,如 <driver name="OPC" type="opc" path="" rystatus="ifix" desc="冗余状态检测,目前可使用iCV的rmapi,iFix的iFixStatus.dat" /> 【说明】rystatus为iFix,表示支持iFix文件状态监测方案,由其他应用程序将iFix服务器冗余状态写入文件iHyperDB\config\iFixStatus.dat,其中“1”表示当前节点活动,“0”表示非活动;其他SCADA冗余可以参考采用iFix方案。
▪iHyperDB采集到的数据来自新的活动状态节点,由于数据时间戳来自ifix的OPC Server,如果主备机时间不一致,可能导致数据时间不连续。 ▪ifix主备机状态异常,如主备机之间网络中断导致主备机同时活动的情况不考虑。 ▪未配置采集器冗余状态监测类型rystatus,默认采集数据。 |
6。关于iFix的冗余状态设置,
以下是iFix中脚本代码示例:
Option Explicit
Private Sub iFIXStatus_DataChange(ByVal DataValue As Variant, ByVal TimeStamp As Date, ByVal Transition As Long, ByVal Reserved As Variant)
Dim con As Object
Dim configpath As Object
Dim WriteValue As Byte
If CInt(DataValue) = 1 Then
WriteValue = 1
Else
WriteValue = 0
End If
Set con = CreateObject("Scripting.FileSystemObject")
Set configpath = con.CreateTextFile("C:\iHyperDB\config\iFixStatus.dat", 1, -1)
configpath.WriteLine (WriteValue)
configpath.Close
End Sub
在调度中需要如此配置
©2015. All Rights Reserved.