西门子模块6ES355-1VH10-0AE0
1、引言
在一个自动监控(Supervisory Control And Data Ac SCADA)系统中,投入运行的监控组态软件是系统的数据采集和处理中心、远程监控中心和数据转发中心。处于运行状态的监控组态软件与各种控制、检测设备如挂接在现场总线上的工控计算机、PLC、智能仪表、智能设备等共同构成快速响应控制中心。控制方案和算法一般在设备上组态并执行,也可在工控计算机上组态,然后在下装到设备中执行,根据设备的具体要求而定[1]。组态软件在SCADA系统中所处的位置如图1所示。
监控组态软件投入运行后,操作人员可以在其支持下完成以下各项任务
(1) 查看生产现场的实时数据及流程画面,浏览各实时历史趋势画面;
(2) 自动打印各种实时历史生产报表;
(3) 及时得到各种过程报警和系统报警;
(4) 在需要时,人为干预生产过程,修改生产过程参数和状态;
(5) 与管理部门的计算机联网,为管理部门提供生产实时数据。
图1 监控组态软件在SCADA系统中所处的位置
现场总线作为开放的控制网络能实现现场设备间、现场设备与控制室间的信号通信[2]。开放通信是信息传输与共享的基础之一,而当现场信号传至监控计算机之后,如何实现计算机内部各程序之间的信息沟通与传递,即如何让现场信号与各应用程序连接起来,让现场信息出现在计算机的各应用平台上,依然存在一个连接标准与规范的问题。在多用户、多任务的计算机系统中实现程序间的数据交换比较方便,操作系统对这种操作是支持的。自从bbbbbbs及微机版UNIX、LINUX操作系统的面世后,出现了程序之间交换数据的技术、协议或标准,实现程序间的数据交换才比较容易。在工业PC机的自动化系统中被广泛采用的,让现场总线控制系统和人机界面软件能够有效充分地用PC机丰富强大的软件资源,是一项值得深入研究的课题。文章对有关技术问题结合工程实践作些讨论。
2、动态数据交换的基本概念
尽管工控组态软件的数据交换技术有了长足进步,在当前实际运用的现场总线控制系统组态软件中,对于DDE和OPC两种数据交换技术的具体运用-特别是在微机执行多任务条件下如何进一步提高组态软件与其他程序之间的数据交换实时性方面,仍然存在某些不足,值得进一步探讨和研究。其中,动态数据实时交换(DDE)技术在控制网络的集成中得到了实际应用。其原因:
(1) 这种方法实时性较好,可以采用标准的bbbbbbs技术;
(2) 作为连接控制网络与信息网络的通信处理机在硬件上比较容易实现。
当控制网络与信息网络有一共享工作站或通信处理机时,就可以通过动态数据交换技术实现控制网络中实时数据与信息网络中数据库数据的动态交换,从而实现控制网络与信息网络的集成。
DDE是进程间通信的方法。为了进行会话,DDE应用程序用3个基本的标志符(或字符串),即三层识别系统来区别其他DDE应用程序,他们分别是应用程序名(Application)、主题名(Topic)和项目名(Item)。每个DDE会话由应用程序名和主题名唯一定义,在DDE会话建立前由客户程序和服务器共同决定应用程序名和主题名,而由客户程序填写服务器的3个标志名。应用程序名位于层次机构的顶层,用于指出特定的DDE服务器应用程序名。主题名更深刻地定义了服务器应用程序会话的主题内容,服务器应用程序可支持一个或多个主题名[2]。
3、面向过程控制的动态参数数据交换程序设计
为方便讨论问题、现举例说明。根据某生产自动化改造工程要求,需要对系统进行组态监控操作平台设计,采用组态软件IFIX2.2和bbbbbbs应用软件VB6.0,开发并实现基于DDE机制的进程间数据交换,满足工业控制网SCADA工控计算机内部信息交换需要,为各应用程序通过共享内存交换信息,实现控制网络与信息网络的集成,并为进一步进行bbbbbbs程序间的数据交换开发提供有借鉴意义的参考[3]。控制网络与信息网络的主要集成技术如图2所示。
图2 控制网络与信息网络的主要集成技术
3.1 DDE信息交换的网络集成方法
通过共享存储器的DDE技术为实现控制网络与信息网络的集成提供了技术支持,有很强的实时性。工程设计以工控计算机IPC作为通信处理机,该IPC机同时也是2个网络的工作站,跨接控制网络和信息网络,在沟通2个网络中起桥梁作用。通信处理机IPC用DDE方法实现2个网络间各站点的通信,是整个集成网络的关键,它能实现以下功能:
(1) 搜集控制网络上各站点的实时数据信息,写入信息网络的数据库,以便信息网络用户浏览、查询;
(2) 将信息网络用户的控制信息及时下达至控制网络的指定工作站点。
基于通信处理机DDE信息交换的网络集成方法如图3所示。
图3 基于通信处理机DDE信息交换的网络集成方法
3.2 组态软件iFix与VB之间的DDE实现
现场总线控制系统采用Inbbblution公司开发的组态软件iFix2.2作为SCADA监控操作平台。iFix是一种工业自动化组态软件,它采用图形用户界面,提供了监控和数据采集功能,为操作人员和开发人员提供了良好的监控环境,可以实现对象自由组态及动态属性的在线配置、现场动态数据采集、数据处理、状态监控、报警、参数设置、报表生成、数据存储、接口等基本功能和网络管理功能。在各种操作系统上的版本共享相同的内核,允许在同一网络结构中运行建立在不同操作系统上的iFix版本。iFix包含大量图形工具,使用户能够快速地开发系统,而且它提供了强大的功能,包括实时过程的监视和监督控制、报警和报警管理、历史趋势,统计过程控制、基于用户的安全系统、方便的系统扩展、网络功能等。而VB6.0是微软公司推出的一个流行且强大的快速开发工具,在开发SCADA系统时,利用DDE技术把两种工具有效的结合起来,更能发挥它们各自的优势,可以获取令人满意的结果。
系统分为监控子系统、数据采集子系统和数据交换子系统。以台湾磐仪工控机IPC1作为SCADA监控硬件平台。监控计算机通过挂在CC-bbbb总线上的远程IO模块和数据采集模块,即采集子系统与现场的监控仪表相联系。采集子系统负责将现场各智能仪表采集的数据采集上来;监控系统通过DDE方式与采集子系统相联系,将现场的各种运行参数实时显示出来;监控系统根据需要给出控制命令,由采集子系统传达给挂在CC-bbbb总线上的CC-bbbb主控PLC,PLC负责现场各种设备的控制。数据交换子系统通过DDE方式与监控子系统系统交换数据,将现场实时信息经由控制网络传达到信息网络。某车间监控层过程实时数据流向如图4所示。
图4 VB作为服务器、iFix 作为客户的数据流向图
iFix软件提供了强有力的DDE客户和服务器支持。DDE客户支持允许把来自其他应用。程序的信息传递到iFix软件中,用于数据库和画面;服务器支持允许把iFix软件的过程信息传递到其他应用程序中去处理。
(1) DDE客户支持
iFix软件DDE客户支持允许读写DDE地址,利用DDE IO驱动器和块配置的DDE地址,可以在过程数据库中插入来自其他应用程序、DDE驱动程序或另一个SCADA节点的数据信息。
数据库中的这些信息可以按照以下方式使用在链中传送数据、对DDE数据进行报警和用DDE数据制作趋势曲线。
DDE客户支持允许在 iFix 画面中直接使用DDE,而不使用数据库中的点。即DDE可以直接应用于数据链接、动态特性(前景颜色、边界颜色、X和Y坐标、水平或垂直填充、可见性等)设置、XY绘图、棒状图和命令语言。iFix作为客户DDE的地址语法为=ApplicationTopicItem例如现场设备点DO1的IO地址=VBServerbbbb1Text1,其中VBServer为VB开发的应用程序名,bbbb1为主题名,Text1为项目名。
(2) DDE服务器支持
iFix软件作为服务器允许将它的实时数据或历史数据传送到其他DDE客户应用程序中。使用iFix DDE服务器功能,需要首先启动DDE服务器程序,即iFix软件的安装目录 iFix32下的DMDDE.exe。iFix 作为服务器提供的DDE编址语法如表1所示。
表1 DDE编程语法
3.3 VB的DDE链接属性
VB作为bbbbbbs环境下非常流行的快速开发工具,与bbbbbbs操作系统同出于微软一家,它理所当然地支持bbbbbbs下的DDE技术。用VB可以方便快捷地开发出DDE客户或服务器的应用程序。
(1) VB的DDE属性、DDE事件和DDE方法
VB中支持DDE的对象有5类窗体(bbbb)、多文档窗体(MDI bbbb)、标签(Label)、文本框(TextBox)和图片框(PictureBox)。其中,窗体和多文档窗体可作为DDE服务器即数据的提供者,Label、TextBox和PictureBox等可以作为DDE服务器即数据的接收者。VB为支持DDE给发送端对象提供了2种DDE属性和4种DDE事件,给接收端对象提供了4种DDE属性、4种DDE事件和4种DDE方法(见表2)。
表2 接收端对象的属性、事件及方法
(2) 利用VB开发DDE客户服务器应用程序
在利用VB开发DDE客户服务器应用程序中,欲建立DDE链接,完全依赖对象的DDE属性设置。VB分别作为DDE客户和DDE服务器时,DDE属性的不同设置(见表3)。
表3 VB作为DDE客户服务的DDE属性设置
(3) 动态数据交换的过程
DDE管理器作为服务端通过驱动程序从PLC的内存中采集到数据,与组态进行数据交换后又通过驱动程序写入PLC的内存区,这一过程的示意图如图5所示。
图5 动态数据交换的实际过程
(4) 动态数据交换的建立过程
DDE工程的建立主要包括PLC细节的描述、网络的设置、数据点的选取,其中主要是进行设备的配置和点的设置。接下来建立需要监控的点,并对其进行编辑,包括定义监控点的名字、PLC的类型、监控点在PLC内存中的位置、数据的类型等。可根据PLC机架上输入输出单元的点数来定义输入字和输出字,同时定义手动自动控制标志位。
3.4 VB作为DDE服务器、iFix 作为DDE客户的实际链接
有些参数需要通过VB开发的应用程序VBServer把从远程现场采集的实时数据传输到iFix实现显示或制作趋势图,如油漆烘间的实测温度、纯水进口压力、循环水过滤器压力、颜料的实测浓度、电泳循环泵的转速和胶炉实测温度、一次抽风系统增压机的进口和出口压力、空气预热器蒸汽温度等参数。
在VBServer中,把采集到的实时数据赋给TextBox(文本框),并把iFix中各点的DDE地址的项目名设为对应的TextBox(文本框)。如油漆烘间的实测温度,在iFix中点名为AI_Oven_Tem,其DDE地址VBServerbbbbMaintxt OvenTem(其中VBServer是应用程序名,bbbbMain是作为主题的窗体名,txtOvenTem是作为项目的文本框名称)。此时,iFix为客户,VB应用程序为服务器。
3.5 VB作为DDE客户与DDE服务器iFix的实际链接
通常情况下,现场的检测信号和运动参数的流向是从iFix传输到VB开发的应用程序VBSrvApp或其它的bbbbbbs应用程序,再由bbbbbbs应用程序或VBSrvApp以命令形式经iFix下达给远程现场的智能仪表或PLC等远程的现场设备,如油漆烘间和胶炉各自的设定温度、纯水进口的设定压力、颜料的设定浓度等参数。
在VBServer中,把各个设定参数相应的TextBox(文本框)的bbbbItem属性设置为对应的iFix的点,然后把从iFix的点传输到对应TextBox(文本框)中的内容下达给远程现场设备。此时,VB应用程序为VBServer客户,iFix为服务器。
1 引言
随着plc技术的发展和大量智能设备的涌现,机架式的集中控制和总线模式的离散式控制系统成为实时现场控制系统两大模式。而总线模式的离散式控制系统凭借其配置灵活、工作稳定、线路简单等特点得到越来越广泛的应用。devicenet现场总线是欧姆龙工业控制网络技术——netlinx的底层网络,具有开放、低价、可靠、高效的优点,特别适合于高实时性要求的工业现场底层控制,得到广泛应用。
2 应用优势
与传统的控制系统相比较,devicenet现场总线具有以下优势:利用信息技术及数字信号通信技术,有效提高了系统的测量和控制精度;应用网络技术数据传输可靠、信息响应快速、抗干扰能力增强;具有自动诊断、故障显示功能;更好地满足控制系统信息集成的要求;总线节点具有良好的防护等级,可以直接安装于工业现场;系统设计调试更加灵活方便、控制性能大幅度提高;系统综合成本大幅度减少。
3 应用方案简介
以omron公司的自动化产品基于devicenet总线在我公司某车型生产线焊装夹具中的改善实例,对devicenet总线的网络组态和调试过程做一下介绍。
3.1 改善的原因和需要达到的目的
该生产线是一条以往复杆为主要传输工具的白车身手动焊接主线,是几年前的设计产品,采用 是传统的plc集中控制(一个主机架和两个扩展机架),对主线所有的夹具实现手动和自动运行。所有的数字量i/o点均从plc柜内接线,导线用量大、布线复杂、故障率高,给现场维护带来了诸多不便,严重影响生产。特别是二号工位上的左右侧围,夹具气缸非常多,i/o线路比较庞大,不但给反复运动的坦克链带来很大的负荷,而且大量的线路因为这样频繁的往复运动很容易造成线路的损坏,给故障的处理带来不便,甚至影响生产。
在分析、比较了各种不同的控制方案后,我们决定采用以devicenet为底层网络的现场总线控制系统从根本上去解决这个问题。
经过改造升级后,系统的自动化控制性能要得到很大的提高,而且系统可靠、故障率低、维护方便,能有效降低停台时间、提高生产效率。
3.2 方案的规划
在保证原系统能正常运行的前提下,只对二号位的左右侧围夹具进行控制模式的改善,构建一个集散式的控制系统,并且添加以态网通信卡用来和上位机的监控系统进行实时的数据交换,上位机采用组态王软件进行画面组态模拟和现场生产状态的监控。针对二号位上的被控元件,总线上连接的输入设备有按钮、接近开关,输出设备有电磁阀。二号位夹具的工作状态、故障信息等均通过devicenet网络传送至上位机和控制器。
3.3 系统的构建及调试
(1) 进行总体规划,根据现场的实际情况进行合理的线路的布局。以二号位的左右侧围夹具来说,两侧的气缸呈对称式分布,输出电磁阀也基本对称,总线从主plc出来先接入左侧邻近主控制柜的离散控制盒内再经坦克链接到右侧的控制盒结束。图1是总线部分的拓扑图。
图1 devicenet总线架构
(2) 将现场的离散模块(小控制盒内的防护等级ip20的输入和输出模块以及防护等级ip67的输入模块)连接到devicenet总线的节点。omron的总线模块分为端子排连接和标准插接头的连接两种方式,devicenet总线标准电缆是一根4芯的同轴电缆加上屏蔽层,芯线的颜色分别是红(24v+)、黑(24v零线)、蓝(信号正)、白(信号负)四种颜色,在端子排连接的模块上标明了四种颜色,在接线时要保证一致;标准插接头的插头连接要根据具体模块图纸上的要求进行连接。无论是端子排连接还是插接头连接,终的检测标准是任何一种颜色的线要一通到底,所以在连接好总线后必须要用三用表的电阻档来检测所有链路是否通畅。网络总线两端应安装正确的终端电阻(120ω,可选配omron公司随系统提供的标准终端电阻),在系统不上电时测得的网络can-h和can-l之间的电阻值应在50ω~70ω。
(3) 安装devicenet网络组态工具软件configurator v2.2,该工具是用来对总线上的设备进行网络节点分配和离散模块的i/o地址配置。在安装好该软件后有必要对其中的eds配置文件进行更新和升级,否则可能会在总线扫描时出现模块无法识别的情况。
(4) 给将要添加到devicenet网络上的每个设备分配节点 址并设置正确的通信波特率,devicenet网络上每个网段所有节点的通信波特率必须一致,且不允许有节点地址重复的设备。在网络配置界面右键点击总线上的节点设备图标可以对每个节点的地址进行更改,节点设备都配置好后在总线分配器上的输入/输出选项卡上可以对已经配置了节点号的设备进行输入/输出通道地址的分配。当然也可以方便地取消或添加模块的默认i/o地址通过点击全局选项卡上的“register/unregistered”按钮,这样就很方便地将出错或暂时不需要的模块从总线上屏蔽掉,给调试工作带来很灵活的处理。
(5) 通过编程设备将plc的机架插槽模块配置下载到plc。在连接总线分配器之前,我们需要通过plc模块上的rs232接口连接plc模块至编程设备,通过在线功能将主机架上的功能模块和i/o模块以及扩展机架上的i/o模块,按照实际的插槽号一一对应地配置到plc的i/o配置中去并下载到plc,plc将通过该配置来对机架上的模块进行扫描检查,如果发现配置信息和实际的不一致将会在诊断信息里面给出具体的出错提示,可以很直观地通过提示找到问题点。在c200h中的插槽号是固定了的,但是在cs1h-h的处理器中的插擦好是连续分配的,如果我们要跳过一个插槽不进行配置时需要将该插槽配置为“16点虚”这样的话它只占用插槽号但不分配实际地址。在以太网插槽点击鼠标右键可以对以太网进行相关的通信设置如ip地址等,设置好后下载到plc以便后面通过网线与plc进行通信连接。
(6) 通过编程设备将devicenet网络配置的节点设备参数全部下载到总线分配器。这个过程分两步进行:首先是将配置的节点设备组态数据下载到总线分配器模块,通过文件选项里面的下载选项;然后是双击打开总线分配器,将里面配置好的i/o通道配置下载到总线分配器,通过点击下载按钮进行下载。这个过程都必须是在编程设备和plc在线的情况下进行的(rs232接口或者是以太网卡接口),而且需要注意的是这些数据一旦下载到总线分配器后就会保存在总线分配器里面,就算掉电也不会丢失,所以有时候在使用旧的模块对总线进行扫描时会有冲突信息提示,表明当前扫描的总线设备与总线分配器里面的存储内容不符(包括节点地址不符、型号不符、i/o地址不符等),同时总线分配器的led显示屏也会给出相应的冲突的设备的节点号。当出现这样的情况时,需要手动地将实际的总线配置和i/o配置编辑正确后下载到总线分配器再次扫描就不会出现上面的情况。
(7) 原始程序的修改。在修改程序之前先将升级的主机架和plc替换掉原来的旧机架和plc,其他的模块保持不变,然后将离线的程序里面的cpu进行升级处理,其程序内部的变量地址也跟着会相应的变化(因为针对不同的plc模块其内部地址的编址方式可能会有所不同),外部i/o保持不变。将自动转换后的程序通过rs232接口下载到plc进行在线试运行,看是否和原始的模块运行时有所不同,后得到的结论是:内部点的自动转换不会影响到原始程序的正常运行。运行无误后就可以将二号位的i/o地址根据总线分配器里面的i/o配置进行相应的修改,然后保存到新的plc里面。
(8) 将所有的程序和总线节点配置文件做好备份,以便日后进行数据恢复和维护。
5 结束语
系统运行实践表明:该系统功能强大、安全可靠、操作灵活,为生产线白车身的生产创造了明显的经济效益,并大大提高了生产效率、自动化生产水平和管理水平。