您好,欢迎访问三七文档
当前位置:首页 > 商业/管理/HR > 销售管理 > 基于OPC技术的PC机与西门子PLC的通信2
基于OPC技术的PC机与西门子PLC的通信栾极1吴俊2马太1王飞1叶羽君1戴毓1(1浙江中控技术股份有限公司,杭州310053;2.中国科学院上海光学精密机械研究所,上海201800))摘要:阐述了OPC系统的通讯原理,搭建了PC机与西门子PLC通信的系统架构。在PC机上创建了OPC服务器,使用SimaticNET软件建立Profibus-DP网络实现了OPC服务器与S7-300系统PLC输入输出接口点对点的连接。叙述了配置PC站,配置OPC服务器与PLC链接通讯的组态,以及IFIX软件实现数据调用的步骤和方法。该方案已经成功应用于相关控制系统中。关键词:OPC服务器;客户端;通信;可编程逻辑控制器中图分类号:TP311.5文献标识码:ACOMMUNICATIONBETWEENSIEMENSPLCANDPCBASEDONOPCTECHNOLOGYLuanJi1,WuJun2,MaTai1,WangFei1,YeYujun1,DaiYu1(ZhejiangSupconTechnologyCo.,Ltd,Hangzhou,310053;2.ShanghaiopticalprecisionmachineryresearchinstituteofChineseacademyofsciences,Shanghai201800)Abstract:ExpoundOPCcommunicationprinciple,setupthearchitectureofthePCandSiemensPLCcommunicationsystem.CreatetheOPCserveronthePC,anduseSimaticNETsoftwarebasedonprofibus-dpnetworktoachievetheOPCserverandS7-300PLCsysteminputandoutputinterfacepoint-to-pointconnection.DescribetheconfigurationofthePCstationandtheOPCserverlinkcommunicationwithPLCconfiguration,andintroduceifixsoftwareimplementationstepsandmethodsofthedatalink.Theschemehasbeensuccessfullyusedintherelatedcontrolsystem.Keywords:OPCserver;client;communication;Programmablelogiccontroller1引言:工业以太网符合ISO/OSI网络参考模型,属于管理级和单元级的网络,在需要大量数据和长距离通讯的工业控制领域中得到广泛应用。伴随自动化的发展,工业现场控制系统不可避免存在多系统、多网络协议并存的局面,且不同厂商系统直接由于通信协议以及接入方式不同存在差异,因此自动化系统对开放性提出要求,OPC技术应运而生[1-2]。随着现场自动化的控制要求,需要工控软件能够实现与现场可编程控制器的的通讯,有效监控现场数据[3-4]。这里应用OPC技术实现PC机与西门子S7-300的PLC通信,工控软件采用美国GE公司的IFIX软件,保证实现PLC通信以及人机界面的处理任务。2.OPC技术:OPC作为一个工业技术标准,能够解决应用软件和各种设备驱动程序的通信,可以很方便的把不同制造商提供的驱动或者服务程序与应用程序集成在一起。OPC以对象链接与嵌入(OLE)/构件对象模型(COM)/分布构件对象模型(DCOM)技术为基础,采用客户/服务器模式,为工业自动化软件面向对象的开发提供了统一的接口标准,制定了关于数据采集、历史趋势以及事件报警等接口标准。这个标准定义了应用Microsoft操作系统在基于PC的客户机之间交换实时过程数据的方法。作为工业控制系统的一种核心数据交换技术,OPC标准可以应用在许多领域,并且其功能还在不断丰富发展之中。OPC适合于应用在很短时间内更新大量过程数据的工业场合。OPC接口可以适用在数据监控系统和管理控制台之间,从数据采集和监控系统(SCANDA)或分布式控制系统(DCS)将数据传输到更高级的客户应用,实现在线数据监测[5-7]。还可实现异构网段间的数据共享,实现PLC,DCS,FCS等不同类型控制系统和设备的集成,甚至只要在数数据库系统上建立了OPC规范,OPC客户就可以与实时和历史数据库实现数据交互[8-9]。OPC接口还可通过网络把最下层的控制设备的原始数据提供给作为OPC客户端的应用程序,也适用于应用程序和物理设备的直接连接,OPC是具有高度柔性的接口标准,屏蔽不同系统之间的差异,提供统一的数据访问接口,所以可以应用于多种场合。OPC标准的出现,为现场设备之间互联及企业信息系统对现场设备的访问提供一个高效、开发、可靠、互操作性好的解决方案。OPC系统由OPC服务器和OPC客户端构成。0PC服务器与OPC客户端之问通过标准COM和DCOM进行数据的交互。OPC服务器建立符合OPC规范的COM接口和对象。OPC技术是基于组建对象模型COM(ComponentObjectModel)技术构建的。COM是一个在Windows下可执行的实体,该实体通过接口为其他实体使能。一个COM实体可同时被多个应用实体使用。COM定义了一标准,将目标体定义为各个分离的单元,单元之间的连接通过过程变量实现。将传递数据的OPC实体称为OPC服务器,访问OPC服务器的实体称为OPC客户端[10]。客户端可以购买市场上成品软件实现,也可以用常用语言(如VB、C或C++语言)开发。客户端和OPC服务器通信是基于COM对象实现。客户端并不能直接接触到服务器内核,而是通过COM库(COMLibrary)实现,如图1、2所示。OPC客户端COM库OPC服务器PCA图1基于COM的本地PC机上的客户端与服务器连接Fig.1ConnectionbasedonCOMbetweenOPCserverandclientinlocalPCOPC客户端COM库COM库netPCAOPC服务器PCB图2基于COM的远程PC间客户端与服务器连接Fig.2ConnectionbasedonCOMbetweenOPCserverandclientofremotePCOPC数据存取DA(DataAccess)服务器在结构上分为OPC服务器对象(OPCServer)、OPC组对象(OPCGroup)和OPC项对象(OPCItem)这三层。三种层次的对象关系如图3所示:OPCServerOPCGroupOPCGroupOPCItemOPCItem......OPCItemOPCItem...图3OPC服务三种对象的关系Fig.3RelationshipoftheOPCserver’s3objects其中每个OPCItem对应于一个实际的硬件装置上的某个channel或port;每个OPCGroup则包含了许多的OPCItem,同时并定义这些OPCItem更新的时间、方式,以及提供读取OPCItem值的接口。OPC服务器对象维护有关服务器的信息并作为OPC组对象的包容器,可以动态地创建或释放组对象;OPC组对象提供包容OPC项的机制,从逻辑上实现对OPC项的管理;OPC项代表与OPC服务器到数据源的一个连接,包括值(Value)、品质(Quality)、时间戳(TimeStamp)3个基本属性。3.通信方案实现架构:本文的实验架构是基于西门子S7-300PLC的硬件和IFIX软件实现,而PC机和PLC之间OPC的通信是通过西门子的SimaticNE的配置件实现,两者间的通信是基于在PC机里建立的2个虚拟站,两站间的通信通过PROFIBUS协议实现。PC站配置成OPC服务器,通过OPC标准接口和PLC实现通信。IFIX软件作为OPC的客户端访问OPC服务器,实现了客户端与S7-300系列PLC的通信。软硬件的系统配置:1台PC机,通信模块CP5613,SimaticNETPCsoftwareV6.0SP5,S7-300PLC(CPU和IO卡件),STEP7V5.4或以上版本,DP通信电缆等连接线。4.OPC服务器与PLC链接通讯的组态:SimaticNET是西门子在工业控制层面上提供的一个开放的多元的通讯系统,是一款基于OPC技术的自动化控制方案实现软件,支持多种通信协议,能将工业现场的PLC,主机,工作站和个人电脑联网通讯。4.1配置PC站的硬件机架SIMETICNET软件安装成功后,可在PC机桌面上看到StationConfigurator的图标,双击图标:(1)选择一号插槽,点击Add按钮或者右键选择添加,再添加组件窗口中选择OPCServer。(2)选择三号插槽添加CP5613,分配CP5613PROFIBUS参数,例如地址,波特率等,可设置CP5613PROFIBUS地址为2,波特率为1.5M,每一步设定后,完成CP5613添加。在选择CP5613BUSPROFIBUS参数时,推荐设置为Standard也可设置为DP,如果CP5613作为DP主站,BUSprofile应设置为DP。(3)点击Stationname按钮,制定PC站的名称,可命名为ProfibusOPC,点击确认完成了PC站的硬件组态。4.2配置控制台的使用与设置(1)配置控制台是组态设置和诊断的核心工具,用于PC硬件组件和PC应用程序的组态和诊断。(2)完成PC站的硬件组态后,打开配置控制台,可查看CP5613的模式已经从PGmode切换到Configurationmode,插槽号自动指向3。(3)在Accesspoints设定窗口中,将S7ONLINE指向PCinternal(Local)。4,3在STEP7中组态PCStation创建一个新项目,通过insertstationsimaticPCstation插入一个PC站。将PCstation默认名称改为与stationconfigurationeditor中所命名的stationname名称相同,命名为ProfibusOPC。(1)在硬件组态中,从硬件目录窗口选择与SimaaticNET软件版本相符的硬件,插入到与在stationconfigurationeditor配置的PC硬件机架相对应的插槽中。(2)分配CP5613网络参数,双击CP5613打开其属性对话框,将CP5613接口设为Profibus,并用new按钮建立一个Profibus网络,其地址与波特率的设置要与stationconfiguration中对CP5613参数设置相同。(3)完成PC站组件设置后,按下编译存盘按钮确定且存储当前组态配置。编译无误,点击configurenetwork按钮,进入NetPro配置。(4)在netpro网络配置中,选择OPCserver后在连接表第一行,鼠标右键插入一个新的连接或通过“insertNewConnection也可建立一个新连接。(5)在S7连接属性对话框中,所要连接对象的Profibus地址填入到对应框中,还需要对地址进行进一步设置。如果连接对象是300PLC,机架和插槽号分别为0,2。确认所要配置,点击编译,组态完成。4.4组态下载(1)完成PC站组态后,可在netpro窗口点击功能按钮栏中下载按钮将组态下载到PC站中。(2)下载完成后,可以打开stationconfigurationeditor窗口检查组件状态。4.5数据通讯的测试-OPCScout(1)打开OPCScout,双击OPCsimaticNet,在随之弹出的AddGroup对话框中输入组名,本例命名为“OPC_PROFIBUS”。(2)双击已经添加的联机组,弹出OPCNavigator对话框,此窗口中显示所有的连接协议。双击S7,在PCstation组态netpro中所建的连接名会被显示(S7_connection_1)。双击此连接,可出现可能被访问的对象数。(3
本文标题:基于OPC技术的PC机与西门子PLC的通信2
链接地址:https://www.777doc.com/doc-2534661 .html