



下载本文档
版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领
文档简介
1、-. z.基于Matlab与PLC的实时控制系统基于Matlab的S7-200 PLC温度实时控制系统,结合Matlab强大的计算能力和灵活的编程方法,解决了PLC控制系统的局限性。该系统在上位机Matlab的Simulink中实现单神经元自适应PID控制算法,下位机S7-200 PLC则负责进展实时数据采样和输出,上下位机间数据通信通过OPC技术实现,并利用Matlab GUI进展监控;研究了系统的实现机制与过程,并对该控制系统进展了测试,取得了良好的控制效果。Maflab Simulink在控制系统领域得到了广泛的应用。Matlab语言工程计算力强大,程序设计流程灵活,可实现复杂的控制算法
2、。但不能与现场工控设备直接进展数据通信,致使很多先进控制算法仍然只是停留在纯数字仿真阶段。而常见的可编程序逻辑控制器(programmable logic controller,PLC)在控制过程中往往不能运行复杂的先进控制算法,或是勉强运行导致控制器反响实时性降低,制约了先进控制算法在PLC上的应用。为了解决此问题,本文以基于Matlab与s7200的温度实时控制系统为例,将Matlab Simulink直接应用于实时控制现场系统。该系统的PLC进展实时数据采样和输出,在Matlab上实现控制算法,通过OPC技术实现Matlab与PLC间的数据传送,并利用Matlab内置的GUI实现上位机监
3、控界面。该系统经实际测试,取得了较好的控制效果。本文研究为有效提高控制系统的效率与控制水平开辟一条新路。1 OPC接口技术 opt(OLE for Process Control)规*是在微软倡导下由OPC基金会所建立的硬件和软件接口标准,它基于微软现有的OLE、组件对象模和分布式组件对象模D技术。OPC规*的引入,提供了一种在数据源与客户端之间进展实时数据传输的通信机制。OPC标准中的软件体系构造为客户视效劳器模式,每个支持OPC接口标准的硬件厂商为其设备开发一个OPC效劳器,提供必要的OPC数据访问标准子接口,主要负责从硬件设备得到数据并存人数据缓冲区;支持OPC接口的应用软件作为OPC客
4、户,通过OPC标准接口实现与OPC效劳器的数据交互,从而读写硬件设备的信息。 OPC效劳器由3类对象组成,包括效劳器、组和数据项。OPC的应用架构及层次对象的关系如图1所示。0PC效劳器对象拥有效劳器的所有信息,同时也是组对象的容器。组对象OPC项拥有本组的所有信息,同时包含并在逻辑上组织了OPC数据项。而OPC数据项是效劳器定义的对象,包括值、品质、时间戳3个根本属性。OPC客户对设备存放器的操作都是通过数据项来完成,但OPC数据项并不提供对外接口,客户不能直接对其进展操作,所有的操作都是通过组对象来进展的。图1 OPC的应用架构及根本构造图2 基于Matlab与S7200温度实时控制系统的
5、实现21 温度实时控制系统的构造本系统的设计综合了Matlab语言强大的计算能力和PLC高抗干扰性能等优点,并通过Matlab内置的图形用户界面GUI实现系统的监控。这样控制算法可以在Matlab的Simulink中进展仿真调试,进而连接被控制对象实现温度的实时控制,从而极大简化了控制系统的设计流程、提高了设计效率。该控制系统由上位机、S7200 PLC以及温度控制对象三局部组成,系统构造图如图2所示。上位机主要完成基于Matlab的温度控制算法和控制系统监控界面,S7200 PLC配置EM235实现温度实时信号的输入与控制信号的输出,温度控制对象包括脉宽调制电路、由ADS90组成的温度检测电
6、路、加热器等。上位机Matlab Simulink仿真模型中的实时信号通过OPC通信技术与S7200 PLC中采样、控制信号进展通信。Matlab GUI则通过编制M文件的形式实现与Matlab Simulink仿真模型中控制参数的,从而在监控界面上控制及监测PLC s7200的状态,采集对应的温度响应曲线。图2 温度实时控制系统构造图22基于OPC技术的Matlab与S7-200数据通信实现221通信原理 Matlab70集成了OPC Toolbo*,它是一个OPC客户端数据访问软件,通过OPC Toolbo*可以连接任何一个OPC数据效劳器,实现对连接效劳器数据的读或写。基于OPC技术的M
7、atlab与PLC S7200通信原理图如图3所示:参照Matlab中的OPCToolbo*对象模型,以s7200 OPC Server为OPC效劳器,Matlab为客户端,建立OPC通信的流程,实现Matlab在实际工业控制系统中的应用。222 PC Access与s7200的连接 PC Access是西门子S7200的专用OPC效劳器,支持OPC Data Access(DA)30规*,可以与任何标准的OPC客户端通信,其效劳器ID为S7200OPCServer。在PC Access中可以为监控的PLC定义属性、通信协议,创立客户端访问的数据项(Item)及数据地址等。本系统中需要通过OP
8、C通信的数据项有2个,即werldu(温度过程值)、kongzhi(控制量)。图3 OPC通信原理223建立Matlab与PC Access的连接运行PC Access中的相关工程后,在Matlab命令窗口编写运行如下M文件程序实现Matlab与PCAccess的通信o clc clear all; hostlnfo=opcserverinfo(localhost); allServers=hostInfoServerID;确定该主机上可用的ID da=opcda(localhost,S7200OPCServer);s7200 OPC Sever为PC Access的OPC效劳器ID conn
9、ect(da);连接OPC效劳器 grp=addgroup(da,groupl)增加组 wendu=additem(grp,MicroWinNewPLcwendu);增加数据项与PC Access中温度设定关联。 kongzhi=additem(grp,MicroWinNewPLckongzhi);23基于Simulink的单神经元自适应PID算法的实现231单神经元自适应PID算法常规PID控制器对运行工况适应性差,参数的整定往往难以保证系统优良的控制性能,然而具有自学习和自适应能力的单神经元算法所构成的单神经元自适应PID控制器,不但构造简单,而且能适应环境的变化,具备较强的鲁棒性。单神经
10、元自适应控制器是通过加权系数的调整来实现自适应,自组织功能的,可以通过不同的学习规则调整权系数,从而构成不同的控制算法。本系统按有监视的Hebb学习规则来实现权系数的调整。对于增量型神经元PID控制系统:232基于Simulink的温度实时控制系统的实现图4中OPC Read模块、OPC write模块分别与PC Access中的数据项wendu(温度过程值)、kongzhi(控制量),负责现场温度过程信号的读入和控制量的输出。由于神经元自适应PID控制器不能直接用传递函数加以描述,假设简单地应用Simulink将无法对其进展仿真,此时应引入S函数。根据式(1)一式(3),基于Delta学习规
11、则的神经元自适应PID控制器的S函数模块dsjypid程序编写如下:functionsys,*O=nu(t,*,u,flag,np,ni,nd,K,wl,w2,w3)if flag=2sys(1)=*(1)+ni水u(1)木u(1);sys(2)=*(2)+np球U(2)木U(1);sys(3)=*(3)+nd水U(3)水U(1);elseif flag 2=3sys=K*(*(1)*u(1)+*(2)*u(2)+*(3)*U(3)(abs(*(1)+abs(*(2)+abs(*(3);elseifflag=0sys=0,3,l,3,1,1;*O=w1,w2,w3;elsesys=;end图4
12、 单神经元PID的Simulink系统模型24 系统监控界面的设计 Matlab GUI是由各种图形构建的用户界面,它既能嵌入己有的仿真程序,又能把仿真后的图形化结果以人机交互的动态方式直观呈现,对于熟悉Maflab而不想编写大量VC代码的科研人员来讲,Maflab GUI无疑是一个最正确选择。Matlab GUI监控界面的实现包括监控界面的组态和对应组件M文件程序的编写。本系统上位机采用Matlab-GUI设计监控界面,实现在Manab GUI界面上控制及监测PLC s7200的状态,采集对应的温度响应曲线。系统监控设计界面如图5所示。在监控界面中我们设置了假设干个控制按钮实现控制系统的启动
13、、暂停继续、停顿、曲线绘制以及控制参数输入确定等;设置了温度曲线显示功能区和控制参数区以方便用户的控制与监视。监控界面中控制参数输入采用文本控件,输入确认后回调函数程序首先将输人参数文本框中的字符串进展转换并赋值给各对应中问变量,然后将中间变量与S-function模块中的相关变量进展,以实现参数的输入;绘制曲线的回调函数程序编写则包涵加载数据、绘制曲线及温度过程值的测定与显示。图5 控制系统监控界面设计图图5中SV、PV分别为温度的设定值和实时过程值,wi(i=1,2,3)为系统初始权系数;np,ni,nd,K分别为神经元的比例学习速率、积分学习速率、微分学习速率和神经元比例系数。25温度实
14、时控制系统的测试我们以单神经元自适应PID算法为例对上述温度实时控制系统进展TN试。图6中两曲线分别为s7200白带的PID控制、单神经元自适应PID控制的温度动态过程曲线。在S7200端是用WINCC监控显示。测试结果说明:采用PID控制算法,系统P=42I=42 rain,D=01min时,温度设定值从30阶跃到44,系统温度峰值为445,系统温度稳定值为43 98,超调量f=42,tp=208 s;采用基于Matlab与S7200的单神经元自适应PID控制系统,该控制器中神经元权值(i=1,2,3)初始值分别设定为42,01,02。选取np=l 500,ni005,nd=05,K=60,
15、测试结果可知温度设定值从30阶跃到44,系统温度峰值为446,系统温度稳定值为4397,超调量f=5,tp=57 8;图7为基于Matlab与S7200的单神经元自适应PID算法,Matlab GUI客户端监控测试的曲线。由上述图可得如下结论。从图6中2种控制算法实现的温度控制动态过程可知,采用单神经元PID算法有很好的响应快速性,系统控制效果良好,本测试以单神经元PID算法为例,由于算法在Pc上比拟容易实现,所以本方案的控制可以进一步扩展更为复杂控制算法。从图6与图7中可以看出:采用单神经元PID控制时,S7200端测试的温度曲线与GUI监控界面温度曲线完全一样,检测的温度实时值一致,说明MaIlab GUI、PC Access、S7200 PLC 3者间的通信良好,表达了控制系统通过OPC技术实现了实时控制。图6 S7200端测试的温度动态过程曲线图7 GUI客户端测试的温度动态过程曲线3 结论 Matlab和Simulink具有强大的计算能力和灵活的编程设计,但不能与现场工控设备直接数据通信;而常用的小型
温馨提示
- 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
- 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
- 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
- 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
- 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
- 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
- 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。
最新文档
- GB/T 19023-2025质量管理体系成文信息指南
- JJG(烟草)27-2010烟草加工在线红外测温仪检定规程
- 2025年英语口语测试全真模拟试卷:多邻国英语测试(DET)情景描述与观点表达策略
- 考研复习-风景园林基础考研试题【培优b卷】附答案详解
- 风景园林基础考研资料试题及答案详解(名校卷)
- 《风景园林招投标与概预算》试题A附参考答案详解【达标题】
- 2025年黑龙江省五常市辅警招聘考试试题题库含答案详解
- 2024年湖南化工职业技术学院单招职业技能测试题库及答案解析 (一)
- 6.1.2呼吸机的发展16世纪人工通气安烈德医生在动物的气
- 2025年Z世代消费趋势分析:新消费品牌品牌形象塑造策略报告
- 山西省2022年中考语文真题试卷(含答案)
- 甘肃省2024年中考生物试卷四套合卷【附答案】
- 民用无人机操控员执照(CAAC)备考复习题库-下部分(600题)
- 骨筋膜室综合征讲课
- 沪教牛津版三年级英语下册-Unit-3-Sounds-教学课件
- 医学影像诊断学智慧树知到答案2024年浙江中医药大学
- 五个人合伙股权协议书范本
- 江苏省苏州苏州工业园区四校联考2025届初三下学期二模化学试题试卷含解析
- 《民主决策:作出最佳选择》教案
- 年产20万吨乙二醇项目初步设计说明书
- 加油站安全风险分级管控清单
评论
0/150
提交评论