基于FF现场总线的PID控制应用实现(2)
(3) 自动化对象模型
OPC客户程序的开发关键在于搞清该动态链接库的封装结构,也即自动化接口标准。该标准可以用图6所示的自动化对象模型表示。它主要由六类对象组成:
OPCServer:OPC服务器的一个实例。只有创建了OPCServer对象以后才能获得OPC服务器的信息,它包括OPCGroups的搜索以及OPCBrowser对象的创建;
OPCGroups:能够自动搜集到OPCServer范围内客户端创建的所有的OPCGroup对象;
OPCGroup:OPCGroup对象的一个实例。它包含所有的状态信息,并且为OPCGroup中所涉及的OPC- Items提供必要的服务;
OPCItems:能够自动搜集到OPCServer范围内客户端创建的对应相应的OPCGroup中的所有的OPCItem对象;
OPCItem:一个自动化对象,它包含“位号”的定义,当前值,状态信息,最后更新时间;
OPCBrowser:浏览服务器中所有“位号”名称的对象。对于每个OPCServer只能创建一个OPCBrowser对象。
图6 自动化对象模型
3.3 实现PID控制的OPC客户程序
(1) 使用VB开发OPC应用程序
利用VB开发OPC应用程序时,实现OPC自动化接口的OPC包装DLL是必须的,这个OPC包装DLL一般应该是由OPC服务器的供应商提供的,为OPC客户程序的软件开发提供了具有良好接口的工具。本文使用为OPC基金会的OPC包装DLL进行说明。
因为在新建的VB工程里OPC包装DLL还没有注册,必须先用下述方法对OPC包装DLL进行注册:
从VB菜单里选择[工程(P)]-[引用(N)];
在[可用的引用(A)]的一览表示中,选择对应的OPC包装DLL的文件名,这里选择[OPC Automation 2.0];
(2) 实现步骤
用VB编写OPC客户端程序包含以下步骤:
添加服务器的引用,创建OPC服务器对象,并将客户程序与服务器相连;
创建组集合并添加组对象;
添加OPC项,利用OPCBrowse方法浏览整个服务器中所有的项,选择需要的项,将其添加到规定的组中,并显示其值和状态;
在主画面中显示添加的组和项。
(3) 程序设计
图7是以VB实现的具有PID功能的OPC同步客户程序。
图7 实现PID控制的OPC客户程序
该单回路控制过程为自衡非振荡,具有相互影响的双容过程。其数学模型可用如下传递函数描述:
G(s)=
式中, Kp, Tp,τ为过程的增益、时间常数和时滞。式中的各参数可根据阶跃响应曲线用图解法求得。
下面给出确定传递函数的参数的方法:设图7中的控制量为q,测量值为y(∞),新的稳态值为设定值,增益K可由输入输出的稳态值直接算出
,而Tp,τ则可以用作图法确定。为了能够随时调用在OPC服务器上采集的测量值y并绘制出相应的阶跃响应曲线,这里把选择的数据存放在指定的数据库中(采用SQL2000数据库)。同时也是为了在进行算法的仿真的时候,既可以从历史数据库中取数据,也可随着数据的采集,可以不断刷新数据,进行算法的优化,如图8所示。
图8 SQL server数据库中存取OPC服务器数据
4、结束语
通过FF现场总线的过程控制实验系统的设计过程,论述OPC技术,目的是希望通过VB去开发OPC自动化接口的客户应用程序,实现PID控制算法到OPC 客户应用程序的应用编程,方便用户的使用和系统的维护和升级,同时研究SQL Server 2000的数据库系统,用于历史数据的存取以及算法的仿真。如何实现更加复杂的先进控制算法,可以使用OLE自动化技术来实现VB与Matlab混合编程,即用VB编写OPC客户端程序来实现数据通信,而利用Matlab进行先进控制算法的编写,从而对现场数据进行分析,是下一步研究的重点。
- 第 1 页:基于FF现场总线的PID控制应用实现(1)
- 第 2 页:副标题#
本文导航
非常好我支持^.^
(0) 0%
不好我反对
(0) 0%
相关阅读:
- [电源技术电子电路图] 采用模糊PID控制器的自动充放电系统 2011-01-29
- [控制技术] 基于PID控制算法的智能小车设计方案 2010-12-13
- [控制技术] NNC-PID控制器对电液位置控制系统的DSP实现 2010-09-03
- [控制技术] 基于积分分离PID控制的交流伺服系统 2010-08-29
- [控制技术] 步进电机位移的模糊PID控制设计方案 2010-06-29
- [控制技术] 串级PID控制原理 2010-04-28
- [可编程逻辑] 基于FPGA的温度模糊自适应PID控制器的设计 2010-01-22
- [DSP] 带Smith预估器的预测PID控制器的设计 2009-10-25
( 发表人:发烧友 )