微波EDA网,见证研发工程师的成长!
首页 > 硬件设计 > 嵌入式设计 > DDE与OPC技术在工业自动化系统中的应用

DDE与OPC技术在工业自动化系统中的应用

时间:08-14 来源:互联网 点击:



图1 自定义接口和自动化接口与opc服务器通信方式示意图

对于分布式计算机上的opc客户程序的开发,opc标准采用dcom技术实现服务器和客户程序的通讯。

opc的数据访问主要有同步数据访问和异步数据访问两种方式。同步数据访问时,opc服务器在将按照opc应用程序要求的数据返回之前,opc应用程序一直处于等待状态,也就是说,同步方式的数据访问在要求的动作没有完成前不能执行任何opc应用程序侧的处理。与之相比,异步方式的数据访问在对opc服务器提出数据访问要求后,立即返回到opc应用程序侧的主处理程序中,opc服务器完成数据访问时通知opc应用程序,opc应用程序从而得到数据访问结果。当opc应用程序采用自动化接口访问opc服务器时,同步和异步数据操作分别由syncread、syncwrite和asyncread、asyncwrite四个opc组对象的方法函数来实现。

3 dde与opc技术应用

当前,dde、opc技术在许多世界著名的自动化厂家的i/o通讯服务器、scada等自动化软件中都得到了体现。例如wonderware 公司的daserver和intouch、siemens公司的simatic net和wincc、 rockwell-ab公司的rslinx和rsview32等。其中daserver和rslinx既可作为opc server,又可作为dde server;wincc和rsview32则既可以作为opc client,又可作为dde client。同时,由于各家的软件接口都合乎dde、opc接口规范标准,所以,不同厂家的i/o通讯、scada等软件产品也可以很方便的实现互连。

下面分别以wonderware 公司的intouch与daserver(dassidirect)、intouch与rockwell-ab公司的rslinx进行dde通讯,siemens 公司的wincc 与simatic net 、wincc 与rslinx进行opc通讯的方法为例说明dde、opc技术在工业自动化软件的应用情况。

太网数据访问的服务器软件,支持dde、opc、suitlink、fastdde等通讯方式。当客户程序通讯接口与dassidirect的连接采用dde方式时,dassidirect 的数据访问采用了节点名(node name)、应用程序名(application name,此处为dassidirect)、主题名(topic name)和项目名(item name)的层次结构。而当通讯接口以opc方式与dassidirect连接时,dassidirect 的数据访问则采用了节点名(node name)、服务器名(program name,此处为archestra.dassidirect.1)、组名(group name)、设备组名(device group)、连接名(link name)和项目名(item name)的层次结构。各层次项可在dassidirect软件界面中配置实现。

工程应用时,需要在dassidirect管理界面smc archestra.dassidirect.1目录下根据需要依次添加接口类型(tcp/ip)、接口处理器类型(s7 plc),并进行必要的参数设置,然后还要为device groups添加不同的topic以方便对不同变量的归类管理。intouch标签变量对dassidirect的访问是通过“访问名”的设置来实现的,所以intouch中“访问名”的设置必须和dassidirect软件中的设置一一对应,例如,“访问名”中“应用程序名”应设置为dassidirect,“访问名”中“主题名”的设置应和dassidirect中所添加的topic名称完全一致。此外,intouch标签变量“项目名”的填写也必须遵从dassidirect中item name的定义形式,例如对s7 plc数据块地址word的访问形如db11.w80,对数据块地址dword的访问形如db11.d80,对输入/输出位的访问形式分别为i5.2/q7.5等。

和wonderware公司的dassid-irect一样,rslinx也支持opc/dde两种通讯方式。当intouch和rslinx以dde方式进行通讯时,首先需要在rslinx“dde/opc topic configuration ”对话框中添加新的topic,并建立该topic与要连接rslogix plc cpu之间的对应关系,然后再对intouch中“访问名”做相应的配置。不过,此时“访问名”中“应用程序名”应设置为rslinx,“访问名”中的“主题名”则应和在rslinx中所添加的topic名称完全一致。而intouch标签变量“项目名”的填写也应遵从rslinx中item name的定义形式,例如对rslogix plc cpu中全局变量controller tags地址的访问即为 plc变量地址的tag name,而对cpu中程序变量program tags地址的访问则为program:program_name>.tag_name>的形式。

当采用siemens 公司的wincc作为opc client与opc服务器进行opc方式连接时,首先需要在wincc资源管理器中添加opc通讯驱动程序opc.chn,然后在出现的opc通道单元的“连接属性”和所建变量的“变量地址属性”对话框中分别填写“opc服务器名称”和“变量地址名称”,这样便可建立该变量到opc服务器的连接。需要说明的是,不同的opc服务器,其opc服务器名称和地址格式是不尽相同的,例如siemens simatic net opc服务器的名称和地址访问格式(以按s7协议对s7系列 plc数据访问为例)分别是“opc.simaticnet”和“s7:[连接名称>]plc变量地址>”,而rockwell rslinx opc服务器的名称和对rslogix 系列plc数据访问的地址格式分别是“rsllinx opc server”和“[opc group名称>]plc变量名>”。

同样,其它scada软件与相关dde、opc服务器软件通讯的实现方法与此类似,不再赘述。

来满足实际需求,例如wonderware公司的opclink便是实现opc、dde接口转换的专用软件。

Copyright © 2017-2020 微波EDA网 版权所有

网站地图

Top