News And Information
-技术与支持-
微信公众号-关注紫金桥
了解软件最新资讯
销售热线:
400-678-6601
售后热线:
13304891586
0459-8151391
0459-8151518
紫金桥软件动态修改数据连接的应用
紫金桥软件动态修改数据连接的应用
一、引言
  在某些应用场合里,现场对模块和设备都会有冗余。例如远航大洋里的邮轮,船上如果某个模块通道故障,需要切换到模块另一个通道上或者其他模块的通道上。那么工程里点的外部连接也需要对应的切换修改。但不可能会让技术人员去上船修改,因为这很不现实。那么如何解决这问题呢?利用紫金桥动态修改连接项即可实现上面功能。
  数据连接是实时数据库的一项重要内容。它把实时数据库中的点参数与其它的数据连接起来。数据库的数据连接可以分成三类:IO连接、远程数据库、内部连接。IO连接:该项表示点参数与实际物理设备的IO单元连接起来。连接后,数据库会启动相应的IO驱动程序,读取/设置相应的IO设备,数据库中组态数据连接的点数据就可以与实际IO单元的数据一致,同时对数据库点参数的操作就相当于对实际IO的操作。远程数据库:可以与远程数据库进行连接。把当前的点参数与已经定义的数据源的点参数连接。内部连接:把当前点参数与当前系统的另一个点参数连接。连接后两个参数可以认为在逻辑上等效,对其中的一个参数的读写就相当于对另一个参数的读写。内部连接一般在运算点用的比较多。

二、功能演示
  1、简述
  假设现场有4个模拟IO模块,1个数字IO模块,数据采集到OPC Server里,紫金桥软件从OPC Server里取数。紫金桥客户端初始时采集A1的01-06通道,A2的01-02,A3的01-02,用户可动态选择模块通道,且程序完全退出下次再次运行时修改依然有效。

模块示意

OPC Server端

紫金桥客户端运行界面

  程序运行时,对应模块通道采集的数据可以从表上看出。

  2、切换通道
  假设A1模块1号通道坏了(Ia),将该通道改接到A4的1号通道上。如下图:

选择切换后通道A4—01

  点击确定后,动态修改点的连接项。数据库重新读取所有点的数据。


  


  

修改前Ia的值(A1-01)
  


  

  修改成功后Ia的值变成A4模块1通道的数值

三、功能函数介绍
  1、系统函数AddIOLink函数介绍
  该示例主要应用到了紫金桥软件系统函数AddIOLink函数。
  int AddIOLink(string DataSource,string ParVals,bool OverWrite)
  说明:增加连接项。
  参数:
  DataSource :字符串类型。数据源名,指示向哪个数据库增加历史项。为空表示向缺省数据库。
  ParVals : 字符串类型。连接项参数及其值列表。参数间以制表符分隔,参数名与参数值间以"="连接,以回车作为点间分隔。格式如下:
  参数项\t参数项...\t参数项\r参数项\t参数项...\t参数项\r...
  参数项间以\t分隔;各连接项间以\r分隔
  参数项 参数名=值
  \t:表示制表符(9);\r:表示回车(13)
  OverWrite : BOOL类型。表示如果点已经存在时是否对其修改,1:表示修改;0:表示不修改。
  返回值:整型类型。1表示成功,否则失败。

  2、其他函数介绍
  除了上面的那个函数,紫金桥软件还有增加内部连接项或网络连接函数AddLink函数。
  int AddLink(string DataSource,string ParVals,bool OverWrite)
  说明:增加内部连接项或网络连接。
  参数:
  DataSource : 字符串类型。数据源名,指示向哪个数据库增加历史项。为空表示向缺省数据库。
  ParVals : 字符串类型。连接项参数及其值列表。参数间以制表符分隔,参数名与参数值间以"="连接,以回车作为点间分隔。格式如下:
  参数项\t参数项...\t参数项\r参数项\t参数项...\t参数项\r...
  参数项间以\t分隔;各连接项间以\r分隔
  参数项 参数名=值
  \t:表示制表符(9);\r:表示回车(13)
  OverWrite : BOOL类型。表示如果点已经存在时是否对其修改,1:表示修改;0:表示不修改。
  返回值:整型类型。1表示成功,否则失败。

四、总结
  紫金桥软件强大的函数库可满足用户复杂苛刻的系统要求,实现和完成更多的系统功能。