OPC接口技术谈英姿tanyz@seu.edu.cn东南大学自控系工业自动化教研室内容提要•概述•OPC基本原理•OPC自定义接口HMI/SCADAHMI/SCADADataAcquisition工程部门产品制造测试/质管部门维护部门WindowsNT业务部门Internet/EthernetOPCDeviceNetFOUNDATONPROFIBUSEthernetWindowsNTOPC数据采集PLCNNNN分布式I/ONNNN数据采集运动控制可视监控Measurement-Pressure-Temp-Flow-LevelValvesPositionersPIDControlFieldbusSystemFieldPointSystemPLCSystemOPCClientOPCServerOPCClientOPCClientOPCServerOPCServerHMIExcelInternetSCADAHMISCADANNNNNNNNNNNN为什么需要OPCSoftwareDriverSoftwareDriverSoftwareDriverSoftwareDriverDisplayApplicationTrendApplicationReportApplicationOPC的解决方案SoftwareDriverSoftwareDriverSoftwareDriverSoftwareDriverOPCOPCOPCOPCDisplayApplicationTrendApplicationReportApplicationOPCOPCOPC概述•OLEforProcessControl(Objectlinkingandembedding)now:OpenProcessControlOpenessProductivityandConectivity•OPC(用于过程控制的OLE)是一个工业标准。•OPC由一些世界上占领先地位的自动化系统和硬件、软件公司与微软(Microsoft)紧密合作而建立的。•OPC定义了应用Microsoft操作系统在基于PC的客户机之间交换自动化实时数据的方法。•管理这个标准的国际组织是OPC基金会。OPC的宗旨•OPC的宗旨是在MicrosoftCOM、DCOM和ActiveX技术的功能规程基础上开发一个开放的和互操作的接口标准。•这个标准的目标是促使自动化/控制应用、现场系统/设备和商业/办公室应用之间具有更强大的互操作能力。BeforeOPCABBPLCsTélémécaniquePLCsSiemensPLCsMasterBusMMSdriverXWAYdriverProfinetdrivervisualizationhistorydatabaseWithOPC:ABBOperatorWorkplaceConnectionABBAC800MTélémécaniqueTSXSiemensS7AC800MOPCserverSchneiderOPCserverSiemensOPCserverOperatorITapplicationsoftwareiswrittenindependentlyfromthetypeofcontrollerHistorian(InformationManager)MMSXWAYProfiNetthedriversstillexist,buttheclientsdonotseethemanymoreOPC技术基础•OPC技术基于微软的OLE(现在的ActiveX)、COM(部件对象模型)和DCOM(分布式部件对象模型)技术。•OPC包括一整套接口、属性和方法的标准集,用于过程控制和制造业自动化系统。•ActiveX/COM技术定义各种不同的软件部件如何交互使用和分享数据。•不论过程中采用什么软件或设备,OPC为多种多样的过程控制设备之间进行通信提供了公用的接口。OPC技术基础构成Transport(TCP-IP,UDP,Queued)ActiveX(Distributed)ComponentObjectModel(COM/DCOM)ObjectLinkingandEmbedding(OLE)EthernetOLEforProcessControl(OPC)onlybetweennodesOPC基金会•管理OPC标准的组织是OPC基金会。其前身由一个Fisher-Rosemount、RockwellSoftware、Siemens、Opto22、Intellution和IntuitiveTechnology等著名大公司组成专门的工作组,仅仅用了短短的一年时间便开发出一个基本的可运行的OPC技术规范。在1996年8月发布了简化的、一步到位的解决方案。OPC基金会•OPC基金会的工作比其他许多标准化集团能够更高速运转。原因十分简单,只是由于OPC是建立在已普遍使用的Mricrosoft标准基础上。而其他标准化集团必经完全从最基本开始定义标准,因此在其工作范围内达成一致的意见往往是费时费力,自然其工作效率是不能和OPC基金会比拟的。•Micosoft是OPC基金会的一个成员,已给予OPC基金会强有力的支持。但Microsoft在OPC中的作用主要在于其强大的后援支持,而让具有丰富的行业经验的成员公司指导OPC基金会的工作。OPC基金会组织结构OPC中国基金会•OPC中国基金会的宗旨是在中国推广OPC,以消除中国与其它发达国家的信息差距。•通过定期召开中国基金会会员大会、制定相应的规章制度,同时针对中国市场建立相应的市场营销体系,提供培训、信息以及展会的组织,以进一步加强各会员的利益,以本地化的形式加强与OPC基金会的联系。•特性•任何客户机都可以与服务器连接即插即用的互操作性是其目标•该标准已被公开并出版\•OPC基金会是管理此工业标准的组织\•灵活性接纳所有类型的客户机及服务器\•高效性优化快速传输数据\•可以支持所有编程语言\C,C++,VB,Java,HTML,DHTML\•可利用Internet\OPCasahubsource:SiemensWinCCOPCconnectiontodatabasesToolsallowtobuildanOPCDAinterfacetoanyODBC-equippeddatabase.Thedatabaseinternalstructure(exposedthroughqueries)isreflectedasahierarchyofOPCitems.Thisallowstogiveaunifiedaccesstosimpleitems.application(OPCclient)OPCserverDBODBCOPCforinternalcommunication:AIPasexampleAIPaspectsAC800MOPCserverSchneiderOPCserverSiemensOPCserverAssetOptimizerEnterpriseHistorianaspectsOPCclientOPCserveraspectdirectoryOPCconnectionsaspectsaspectsOPCConnectiontoERPDirectandFieldbusaccess(local)OPCserverclientapplication(OPCclient)fieldbus(local)OPCserverFBManagerfieldbusPLCFBagentfieldbusPLCFBagentdirectconnectionfieldbusconnectioncanalsobeapoint-to-pointlinkclientapplication(OPCclient)proprietaryprotocolTheOPCserverisrunningallthetime,assoonasatleastoneclientispresentI/OdevicesclientsandserversrunasparallelprocessesAccessingaserverinanothernodeTCP/IPstubDCOMTCP/IPOPCserverDCOMTCP/IPOPCserverDCOMFBManagerfieldbusDCOMclientapplication(OPCclient)Limitation:doesnotworkoverfirewalls.Solution:OPCXML(seelater)COM/DCOMacrossmultiplenodesOPCserverforBrandYapplication1(OPCclient)FieldbusYFieldbusXdriversOPCserverforBrandXOPCserverforsimulationpanelapplication2(OPCclient)OPCserverforBrandZTCP/IPTCP/IPinput/outputtoplantEthernetapp3node1connectivitynodeOPC基本原理•通用OPC结构及组成•对象及接口概述•必需的接口定义•可选的接口定义•服务器地址空间及配置•时间同步与顺序发送机制•永久存储机制•EnumOPC对象属性条目通用OPC结构及组成•OPC数据访问规范•OPC报警和事件规范•OPC数据交换规范•OPC历史数据访问规范•OPC批处理规范•OPC安全性规范•OPCXML规范OPC标准的发展历史标准版本内容DataAccess3.0,2.0,1.0数据访问规范AlarmsandEvents1.10,1.00报警和事件规范HistoricalDataAccess1.0历史数据存取规范Batch2.0,1.0批量过程规范Security1.0安全性规范Compliance2.00.2数据访问标准的测试工具OPCXML1.00,0.18过程数据的XML规范OPCeXchange1.0数据交换规范OPCCommands正在开发命令规范OPCCommonI/O正在开发公共I/O规范OPCComplexData正在开发复杂数据规范OPCDataAccessOPCAlarms&EventsOPCHDAhistorydatabaseOPCBatchbatchsystemOPCDXOPCUAUnifiedArchitecture规范OPC数据访问规范OPCDA的适用领域底层传感器往往使用专用接口和协议DeviceSpecificI/OControlDataMonitorSub-SystemOPCOPC(通过DCOM)可以使用在各个子系统与管理终端之间OPC处于数据监视应用程序和专用的IO驱动软件之间OPC数据访问规范特点•基于COM技术技术•灵活支持多类应用程序支持多类应用•高效与可扩展性支持大型应用程序支•高性能支持网络操作支持网络操作•易于理解易于理解•被广泛接受被广泛接受OPCDA能提供那类数据?•传感器的实时数据:温度、压力和流量•控制参数:打开、关闭、运行和停如•状态信息状态信息硬件连接状态硬件连接状态软件和子系统的状态软件和子系统的状态总之,OPCDA可以提供任何类型数据OPCDA•每个OPCDA服务器是一个独立的对象服一对•OPCDA服务器提供了到现场数据源的服务供一个窗口窗口”•数据通过对应的Tag访问•(Tag的定义由生产商和硬件有关生产商有关)•数据可以周期性轮询或单次读写数据可以周期性轮询或单次读写OPC报警和事件规范OPCAE•OPC提供了OPC服务器发生异常时,以及OPC服务器设定事件到来时向OPC客户发送通知的一种机制,通过使用OPC技术,能够更好的捕捉控制过程中的各种报警和事件并给予相应的处理。OPC历史数据访问规范•OPC提供了读取存储在过程数据存档文件、数据库或远程终端设备中的历史数据以及对其操作、编辑的方法。HDAfor