佳工机电网 在线工博会 我的佳工网 手机版 English
关键字  
  选择展区 >>
您的位置: 首页 > 工业自动化展区 > PLC展厅 > 产品库 > PLC可编程控制器 > 技术论文 > 正文 产品库 会展 人才 帮助 | 注册 登录  
PLC
 按行业筛选
 按产品筛选
查看本类全部文章
e展厅 产品库 最新动态 技术文章 企业目录 资料下载 视频/样本 反馈/论坛
  技术应用 | 基础知识 | 外刊文摘 | 业内专家 | 文章点评 投稿 发表科技文章 
面向PLC的OPC服务器设计与开发
作者:李绍成 马连祥
欢迎访问e展厅
展厅
3
PLC展厅
PLC可编程控制器, PLC编程电缆, ...
引言

可编程控制器PLC(Programmable LogicController)具有可靠性高、通用性强、编程简单、体积小、安装维护方便等优点,在工业控制中得到了广泛应用。

在工业控制系统中,可能存在不同厂家生产的、多种型号的可编程控制器PLC。为了便于系统集成,一般采用基于OPC(OLE for ProcessContr01)规范的接口进行数据交换,为此,需要设计、开发面向PLC的OPC服务器。

1 OPC服务器开发工具

面向PLC的OPC服务器开发需要完成以下两个方面工作:一方面,需要根据PLC的通信协议实现上位机服务器软件与PLC的数据交换;另一方面,需要合理设计服务器软件的架构与接口,使之符合OPC技术规范。

由于OPC服务器是基于COM技术的,这就要求程序设计人员必须非常熟悉COM技术,而精通COM技术是有一定难度的,因此,OPC服务器的源码级开发是相当复杂的,一般由专业的软件公司进行开发。

为了便于OPC技术的推广和应用,国内外许多单位推出了OPC服务器快速开发工具包。这种工具包将微软公司的OLE/COM/DCOM技术和OPC的技术细节进行了隐藏,使用户开发工作集中在数据采集和处理任务上,从而简化了OPC服务器的开发。

基于工具包的OPC服务器开发,主要任务是熟悉工具包的API接口函数,通过调用工具包的API接口函数实现OPC服务器的功能,为应用软件提供符合OPC规范的接口。

2 OPC服务器设计与开发

2.1软件设计

基于工具包的面向PLC的OPC服务器开发的首要任务是设计OPC对象与接口、OPC服务器界面,然后进行OPC服务器与PLC的通信设计,以实现OPC服务器与PLC的数据交换,具体的软件架构如图1所示。

newmaker.com

OPC对象与接口是OPC服务器与客户端程序进行交互的部分。首先应进行OPC服务器对象设计,即定义服务器名称ProgID和类标识符CLSID。服务器名称ProgID可以自由确定;类标识符CLSID是一个128字节的数据,是用来标识一个COM对象的,可用微软自带的工具GUIDGEN.EXE快速确定。然后根据OPC项的管理要求设计OPC组对象,如果OPC项较少,可以直接利用工具包默认的一个OPC组对象。最后确定OPC项对象,一个OPC项可以对应于PLC内存中的若干寄存器,一般根据PLC的具体控制要求进行设计,并确定可读项与可写项。

OPC服务器与PLC的通信模块是面向PLC的OPC服务器的重要组成部分,OPC可读项的数据就是通过该模块采集PLC中相应寄存器的信息获得的;OPC可写项的数据就是通过该模块写入PLC中相应寄存器的。

服务器程序界面可以为用户提供友好的交互平台,便于观察数据项的变化,以及对数据项进行管理和设置。

2.2软件开发

在采用工具包开发面向PLC的OPC服务器时,主要是利用工具包提供的API接口函数进行如下的操作:

1)工具包动态库初始化

OPC服务器开始运行时,应进行工具包动态库初始化,以及设置OPC服务器的最高刷新频率,这是OPC服务器得以运行的基础。

2)OPC服务器信息设置

主要是设置服务器的运行状态、版本号、厂商信息等。

3)OPC项的创建与删除

在OPC服务器开始运行时创建OPC项,在OPC服务器运行结束时删除OPC项。

4)OPC项数据的更新

OPC服务器需要周期地更新OPC项的值、质量和时间戳,即将数据存储区中的数据更新到相应的OPC项。当客户端程序请求写数据时,OPC运行库调用写回调函数,并利用服务器与PLC的通信模块将数据写入PLC中的相应寄存器中;当客户请求读数据时,OPC运行库调用读回调函数,返回相应的OPC项的数据。

服务器与PLC的通信模块是基于PLC的通信接口方式进行开发的。例如串口通信,其是根据PLC的通信协议采用串口通信控件或API函数编程来实现数据交换的。

5)回调函数注册

工具包中有三个回调函数:读回调函数、写回调函数和断开回函数。只有注册了这三个回调函数后,OPC服务器才能和客户端程序按照OPC技术规范进行正常通信。

6)OPC服务器注册和注销

OPC服务器安装到计算机后,首先应将服务器名称ProgID和类标识符CLSID等信息进行注册。在OPC服务器注册后,OPC客户端程序才能在本机或局域网上检索到该OPC服务器,从而与该OPC服务器建立连接与数据交换。注销是将计算机系统中的OPC服务器信息清除。

OPC服务器是一个进程外组件,其在运行过程中对工具包接口函数的调用流程如图2所示。

newmaker.com

3 设计实例

3.1 PLC控制对象

Denford公司的FMS(Flexible ManufacturingSystem)教学演示系统由一台数控车床、一台数控铣床、两台机器手和一条传送带组成,该系统可以通过数字I/O接口进行控制,各设备的I/O接口数如表1所示。

由表1可以看出,该蹦S的控制器需要有13个数字输入口采集设备的状态信息,需要11个数字输出口发送控制命令。欧姆龙公司生产的CPMlA一30CDR—A—V型PLC有18个数字输入口和12数字输出口,满足该FMS控制的接口要求。为了满足该FMS控制系统快速重构的要求,其控制系统必须是基于OPC规范接口的,即按照图3所示的体系结构进行控制。因此,需要为图3所示的PLC开发OPC服务器。

newmaker.com

3.2 OPC服务器设计

由表1和图3所示的CPMlA.30CDR.A—V型PLC控翩对象的具体要求可知,该OPC服务器主要与PLC的输入与输出口进行数据交换.因此,在该OPC服务器中设计定义了6个OPC项,其中4个OPC数据项为可读项:Tagln0CH、TagIn1CH、TagIn10CH、1.agIn11CH,分别用于读取该PLC的输入端000通道与001通道、输出端010通道与011通道的数值.即采集FMS硬件设备的状态信息;另外2个OPC数据项为可写项:TagOut10CH、TagOut11CH,分别用于对该PLC的输出端010通道与011通道写数值,即向FMS硬件设备发送控制命令。

newmaker.com

服务器与PLc的通信功能模块是采用串口通信控件MSComm实现的,具体的通信协议是由CPMlA-PLC手册中的读出输入输出继电器内容和写入输入输出继电器区中的命令格式和响应格式确定的。

开发的OPC服务器主界面如图4所示,具有注册和注销、OPC项的创建与删除、OPC项数据的更新等功能。在该OPC服务器安装、注册后,利用图4所示的OPC客户端软件进行了性能测试,结果表明该OPC服务器符合OPC接口规范要求,可以在本机或局城网上进行访问,满足图3所示的FMS控制要求。

newmaker.com
图4 CPMIA-30CDR型PLC的OPC服务器界面

4 结束语

本文研究了面向PLC的OPc服务器的快速实现方法,设计了一用于Denford公司FMS控制的PLC的OPC服务器,运行结果表明采用本文研究的方法所开发的OPC服务器符合OPC技术规范要求,具有一定的工程应用价值。(end)
文章内容仅供参考 (投稿) (如果您是本文作者,请点击此处) (9/7/2012)
查看更多PLC可编程控制器相关文章: more
·诺德:基于数字技术的创新驱动解决方案 诺德传动集团 (7/18/2019)
·基于PLC的远程监控系统在空气压缩机自动控制的应用 山东大学 马聪孝 (9/7/2012)
·PLC控制在电除尘系统中的应用 华中科技大学 汪文忠 彭刚 徐庆江 黄心汉 (9/7/2012)
·基于PLC落地镗床电气控制系统的改造研究 (9/7/2012)
·贝加莱X20系列控制器在武广高铁防灾安全监控系统中的应用 (9/7/2012)
·高端PLC技术概要 newmaker (9/7/2012)
·组态技术在PLC控制粉碎机中的应用 贺丽平 竺培 (8/18/2012)
·基于PLC与触摸屏的渗漏排水监控系统 吕国芳 孙晓娇 孙俊峰 (8/11/2012)
·VB环境下利用并口实现PLC控制 newmaker (7/24/2012)
·三菱FX_2NX系列PLC在副井提升机信号系统中的应用 newmaker (7/21/2012)
查看更多PLC相关文章: more
·诺德:基于数字技术的创新驱动解决方案 诺德传动集团 (7/18/2019)
·基于PLC的远程监控系统在空气压缩机自动控制的应用 山东大学 马聪孝 (9/7/2012)
·PLC控制在电除尘系统中的应用 华中科技大学 汪文忠 彭刚 徐庆江 黄心汉 (9/7/2012)
·基于PLC落地镗床电气控制系统的改造研究 (9/7/2012)
·贝加莱X20系列控制器在武广高铁防灾安全监控系统中的应用 (9/7/2012)
·高端PLC技术概要 newmaker (9/7/2012)
·信号隔离器的原理及维护注意事项 江苏智瑞科技有限公司 (9/1/2012)
·组态技术在PLC控制粉碎机中的应用 贺丽平 竺培 (8/18/2012)
·基于PLC与触摸屏的渗漏排水监控系统 吕国芳 孙晓娇 孙俊峰 (8/11/2012)
·VB环境下利用并口实现PLC控制 newmaker (7/24/2012)
查看相关文章目录:
·工业自动化展区 > PLC展厅 > PLC可编程控制器 > PLC文章
文章点评 查看全部点评 投稿 进入贴吧


对 PLC 有何见解?请到 PLC论坛 畅所欲言吧!


网站简介 | 企业会员服务 | 广告服务 | 服务条款 | English | Showsbee | 会员登录  
© 1999-2024 newmaker.com. 佳工机电网·嘉工科技