基于PLC的水位PID控制系统设计_第1页
基于PLC的水位PID控制系统设计_第2页
基于PLC的水位PID控制系统设计_第3页
基于PLC的水位PID控制系统设计_第4页
基于PLC的水位PID控制系统设计_第5页
已阅读5页,还剩34页未读 继续免费阅读

下载本文档

版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领

文档简介

#第3章PID控制PID控制介绍在工业生产中,常常需要用闭环控制方式来控制温度、液位、压力、流量等连续变化的模拟量。无论是使用模拟控制器的模拟控制系统,还是使用计算机(包括PLC)的数字控制系统,PID控制都等到了广泛的应用。PID控制简单易懂,使用中不必能清楚系统的数字模型。PID控制器是比例-积分-微分控制(Proportional-Integral-Derivative)的简称,之所以得到广泛应用是因为它具有如下优点:1、不需要精确地控制系统数字模型。由于非线性和时变性很多工业控制对象难以得到其准确的数字模型,因此不能使用控制理论中的设计方法。对于这一类系统,使用PID控制可以得到比较满意的效果。2、有较强的灵活性和适应性。积分控制可以消除系统的静差,微分控制可以改善系统动态响应速度,比例、积分、微分控制三者有效地结合就可以满足不同的控制要求。根据被控制对象的具体情况,还可以采用各种PID控制的变种和改进的控制方式,如PI、PD、带死区的PID、积分分离PID、变速积分PID等。、PID控制器的结构典型,程序简单,工程上易于实现,参数调整方便。在工业控制过程中,除了大量的开关量控制以外,还有许多模拟量控制,例如对电压,电流,温度,压力,流量的控制。有时,在同一个控制系统中既要对开关量控制还要对某些模拟量进行控制。因此为适应生产实际要求,PLC各生产厂家纷纷推出了各种专用的模拟量输入模块和模拟量输出模块。.模拟量输入模块(A/D模块)模拟量输入模块是根据设备现场连续变化的物理量,转变为PLC可以处理的数字信息。如图3-1所示。一般情况下,一块模拟量输入模板可分时输入多个信号,因此模板内有多路转换开关,将选中的模拟量经A/D转换器变成数字量,经驱动器输出或锁存,待CPU读取。

模拟量信号的输入过程如下:1、当PLC用户程序运行并执行模拟量输入指令时,根据指令所指定的输入通道号,经控制与译码电路工作,选中一路输入信号。2、被选中的这路输入信号经预处理电路转换成PLC能接受的电平信号,再通过多路转换开关进入A/D转换器。3、A/D转换器把这个输入采样值转换为带符号的二进制数,再由数据转换电路进行转换后缀过光电隔离器进入数据驱动单元。4、进入数据驱动单元的数据可按系统的控制要求传送到总线驱动器中,然后送到PLC系统内部数据总线上,也可传送到中间寄存器中,等待CPU模板的命令再读入。EM的EM的图3-1模拟量输入框图.模拟量输出模块(D/A模块)模拟量输出模块的作用是控制一些具有连续动作的执行机构。.输入输出变量的转换PID控制有两个输入量:给定值(sp)和过程变量(pv)。多数工艺要求给定值是固定的值,过程变量是经A/D转换和计算后得到的被控量的实测值。给定值与过程变量都是与被控对象有关的值,对于不同的系统,它们的大小、范

围与工程单位有很大的区别。应用PLC的PID指令对这些量进行运算之前,必须将其转换成标准化的浮点数(实数)。同样,对于PID指令的输出,在将其送给D/A转化器之前,也需进行转换。如图3—2所示。电压输出^存Digital-to-analogconverter散学-模报转换R—电压输出^存Digital-to-analogconverter散学-模报转换R—NW VolLageoulputbuffer应.上洞出谡存图3-2模拟量输出框图使用PID指令关键有4点:1、参数设定要指定回路编号(LOOP)及参数表(TBL)首地址。并设定好采样时间、增益、积分时间、微分时间。2、预处理编写程序把模拟量输入转换为PID计算对应的格式(处于0—1之间的实数)的过程值(PV)及设定值转换为PID计算对应格式(处于0—1之间的实数)的设定值(SV).并传送到参数表的相应地址中,为PID运算做好前处理。3、指令调用为PID指令执行指定输入条件,调用PID指令。最好编写定时中断程序,在中断程序中调用PID中断指令。4、后处理编写程序把PID计算的控制输出(Mn,处于0—1之间的实数)转换为对应格式(十六进制数,并选择好有效位),并传送到指定的模拟量输出模块的相应地址中,为PID运算结果执行提供条件。PLC实现PID控制的方式用PLC对模拟量进行PID控制时,可以采用以下几种方法:1、使用PID过程控制模块这种模块的PID控制程序是PLC生产厂家设计的,并存放在模块中,用户在使用时只需设置一些参数,使用起来非常方便,一块模块可以控制几路甚至几十路闭环回路,但是这种模块的价格较高,一般在大型控制系统中使用。2、使用PID功能指令现在很多PLC都有供PID控制用的功能指令,如S7-200的PID指令。它们实际上是用于PID控制的子程序,与模拟量的输入/输出模块一起使用,可以得到类似于是用PID过程控制模块的效果,但是价格便宜得多。3、用自编的程序实现PID闭环控制有的PLC没有PID过程控制模块和PID控制用的功能指令,有时虽然可以使用PID控制指令,但希望采用某种改进的PID控制算法。在上述情况下都需要用户编制PID控制程序。PLCPID控制算法PLC的PID控制器的设计是以连续系统的PID控制规律为基础,将其数字化,写成离散形势的PID控制方程,再根据离散方程进行控制程序设计。图3-3连续闭环控制系统方框图在连续系统中,典型的PID闭环控制系统如图3-3所示。图中sp(t)为给定值,pv(t)为反馈量,c(t)为系统的输入量,PID控制器的输入输出关系式为:e(t)为:e(t)+-1JtT01/、, 1,/、,e(t)dt+de(t)jdtD+M0(3-1)式中,M(t)—控制器的输出,M为输出的初始值,0e(t)=sp(t)-pv(t)—误差信号,K—比例系数,cT—积分时间常数,1T—微分时间常数。D上式中等号右边前3项分别是比例、积分、微分部分,它们分别与误差、误差积分和微分成正比。如果取其中一项或两项,可以组成P、PD或PI控制器。假设采样周期为T,系统开始运行的时刻为t=0,用矩形积分来近似精S确积分,用差分近似精确微分,将上式离散化,第n次采样时控制器的输出为:M=Ke+KXe+K(e-e)+M (3-2)n cn 1 j Dnn-1 0j-i式中,e—第n-1次采样误差值。n-1K—积分系数。1K—微分系数。D基于PLC的闭环控制系统如图3-4所示,图中虚线部分在PLC内。图中的sp、pv、e、M分别为模拟量sp(t)、pv(t)、e(t)、M(t)在第n次采样n nn n的数字量。执行机构e 执行机构e ^+0—pid控制器图3-4PLC闭环控制系统方框在许多控制器系统内,可能只需要P、I、D中的一种或两种控制器类型。例如,可能只要求比例控制或积分控制,通过设置参数可对回路控制类型进行选择。3.4PID指令及回路表S7-200的PID指令图如图3-5所示。P1D—EN ENO-一if OUT PIDTBL,LOOP一LOOP图3-5PID指令图指令中TBL是回路表的起始地址,LOOP是回路编号。编译时如果指令指定的回路表起始地址或回路号超出范围,CUP将产生编译错误(范围错误),引起编译失败。PID指令对回路表中的某些输入值不进行范围检查,应保证过程变量、给定值等不超限。回路表见表3-1.过程变量与给定值是PID运算的输入值,在回路表中它们只能被PID指令读取而不能改写。每次完成PID运算后,都要更新回路表内的输出值Mn,它被限制在0.0〜1.0之间。表3-1PID指令的回路表偏移地址变量格式类型描述0过程变量双字实数输入应在0.0〜1.0之间4给定值sp n 双字实数输入应在0.0〜1.0之间8输出值M双字实数输入/输出应在0.0〜1.0之间12增益K双字实数输入比例常数,可正可负16 c 采样时间T双字实数输入单位为s,必须为正20积分时间T 1 双字实数输入单位为min,必须为正24微分时间TD双字实数输入单位为min,必须为正28上一次的积分值双字实数输入/输出应在0.0〜1.0之间32上一次过程变量双字实数输入/输出最近一次运算的过程变量值如果PID指令中的算术运算发生错误,特殊存储器位SM1.1(溢出或非法数值)被置1,并将终止PID指令的执行。要想消除这种错误,在下一次执行PID运算之前,应改变引起运算错误的输入值,而不是更新输出值。3.5模拟量信号转换西门子S7-200系列的模拟量输入模块加入标准电信号4~20mA(A0~Am),经A\D转换后数值为6400~32000(D0~Dm).转换公式:D=(A—A0)(Dm—D0)\(Am—A0)+D0 (3-3)Am-模拟量输入信号最大值。A。一模拟量输出信号最小值。Dm—Am经A\D转换得到的数值。D0—A0经A\D转换得到的数值。A一模拟量信号值。D—A经A\D转换得到的数值。设定水箱在满水位的情况下为100,当水位达到80以上时是高水位,当水位达到30一下时为低水位,这是指示灯分别发亮。经过计算,经转换后为20480和7680。当输出值大于20480时红灯亮,当输出值小于7680时黄灯亮。第4章软件设计软件系统概况本系统只适用比例和积分0控制,其回路增益和时间常数可以通过工程计算初步确定,但还需要近一步调整已达到最优控制效果。系统启动时,关闭出水口。用手动控制液体阀,使水位达到满水位的75%,然后打开出水口,同时输入控制液体阀从手动方式切换到自动方式。PID运算存在一种“自动”运行方式,当PID运算不被执行时,称之为“手动”方式。所以,系统启动时在水位低于75%时PID不工作。系统里调节器用的是PLC的PID模块,给定水位即为水位设定值。水箱里的水位信号经过,送入PLC的PID模块。此值即为水位的实际值。PID模块经输出转换,输出用于控制液体流量阀以实现实际控制。若水箱里水位低,将入水阀门打开,使进入水箱的水增多,水箱的水水位升高使水位保持恒定。水位PID控制的逻辑设计水位PID控制程序分为3部分,每部分流程图如下:1、主程序调用模块,如图4-1是所示。主程序开始:首次扫描•调用子程序0进行启动计算机和初始化•调用子程序0初始化定时中断;主程序结束图4-1主程序调用模块2、主程序调用子程序0,如图4-2所示。生活供水时系统设定为满量程的75%,本系统中的增益和时间常数为:增益Kc=0.25,采样时间Ts=1s,积分时间Ti=30min。启动子程序 设置PID参数装入回路设定值=75%回路增益=0.25装入回路采样1S装入积分时间30min设定定时中断时间为100ms(子程序0结束图4-2主程序调用子程序03、中断子程序模块,如图4-3所示。其作用主要用于PID的相应计算,在PLC的常闭继电器SM0.0的作用下工作,它包括:设定回路输入及输出选项、设定回路参数、设定循环报警选项、为计算指定内存区域、指定初始化子程序及中断程序。

启动中断子程序0计数器值到达了吗(、中断子程序0是否计算PID启动中断子程序0计数器值到达了吗(、中断子程序0是否计算PID公式Mn=Kcen+K1en+MX+KD(en-en-1)定时中断计数器反馈仿真对输出值限制图4-3中断子程序模块其中,各符号名说明如下:Mn 在第n采样时刻,PID回路输出的计算值Kc PID回路增益en 在第n采样时刻的偏差值en—1在第n-1采样时刻的偏差值K1 积分项的比例常数MX 积分项的前值KD微分项的比例常数

4.3梯形图编程主程序部分。SM01SM0.1是特殊标志位存储器,该位在首次扫描时为1,用于调用和初始化子程序。SBR为子程序调用指令。子程序SBR_0。SMO.OMOV_RENENOINOUT110.75——VD104MOV_RENENOINOUT0.25——VD112MOV_RENENOINOUT0.1——>VD118MOV_RENENOINOUT30.0——VD120

SM0.0是特殊标志位存储器,该位始终是1。-MOV_REN ENQIN QUT0.0 VD124MOV_BEN EHO'.IN OUT100 SMB34ATCHEN ENQINTEVNT工NT0 10 <ENI)MOV—R为实数传输指令。ATCH为中断连接指令,将一个中断源和一个中断程序建立响应。ENI允许中断指令。SMO^O ii TDIEN ENOIN OUTAIWO ;TACODI_REN ENOIN OUTTACO ACODIV_REN ENOINI OUTIN2TACO LJ2000.0 ACO中断程序INT_0。MOVREN ENOLN OUTIrX-LUVD].(J0100PEDEN ENOTBLOUTLOOP♦VJ_>1uu0I_DI将整数类型数据转化为双整数类型。DI_R将双整数类型数据转化为实数类型。I0.0控制手动到自动的切换。0代表手动,1代表自动。PID调用PID模块。MUL―R实数乘法指令。ROUND将实数转换为双整数。DI_I将双整数转换为整数。MOV—W把字原值传送到字存储单元。报警电路程序vwo>=17630VWO<=120430Aiwa<MO.O)(M0.1)<Q1.e)MOV_WENENOINOUTvw手动供水电路程序4.4联机和运行1、联机硬件图(如图4-4)图4-4联机硬件图2、运行单击水泵控制按钮,系统启动时关闭出水口,用手动控制水泵后的输入输出控制液体阀,使水位达到满水位的75%,这时系统装载PID参数和连接PID中断服务程序。装入回路设定值VD104,回路增益VD112,回路采样时间VD118,积分时间VD120,同时设定定时中断0的时间(SMB34)间隔100ms,设定定时中断执行PID程序INT_0。关闭微分作用VD124。在中断处,将过程变量(PV)转换为标准化的实数。首先将整数转换成双整数(AIW0-AC0),将双整数转换为实数,而后将数值标准化(AC0,32000.0TAC0),最后将标准化后的PV存入回路表(AC0-VD100)。而I0.0控制手动到自动的切换,0代表手动,1代表自动。I0.1为急停按钮,按下后整个系统停止工作。自动方式下将把输出值Mn转换成16位的整数,首先判断Mn为单极性且非负的数,把输出值送到累加器(VD108,32000.0tAC0),然后标准化累加器中的值,将实数转换成双整数,再将双整数转换成整数,最后将数值写入模拟量输出(ACO-AQW0)。再去控制输入控制液体阀从而控制水箱维持一定水位。结论这次设计做的是水位控制,发现以往水位控制比较落后。采用PLC控制的系统与老式控制方法相比有很多的优点:灵活、方便、快捷可实现无人职守,省时省力,有很强的可操作性。毕业设计快要结束了,回过头来看这次设计我有很多的感触。这些感触也只有在做了设计之后才能感受得到。首先感受到的是毕业设计要用到知识量的巨大,于是我就拿出我有关PLC方面的课本,又去图书馆借了几本PLC方面的书,然后就是把这书看一下,把重要的部分作了一些摘要。有了这些基础部分,我又去网上找了一些这方面设计的例子。参考这些例子,在心里确定下方案。本以为有了这些准备就足够了,但我错了。做设计需要系统的知识,那些散碎的知识要把他们组织起来,把他们变成一个系统,这样设计的各个部分才是连贯的,前后才能构成一个整体。止匕外,除了PLC之外还需要传感器和阀门的相关知识,这就要求我把测试技术和机械方面的知识也复习了。各方面的东西齐全之后,该进行综合的时候了。综合是一项很繁琐的工作,要根据要求调整字体、字的大小、页边距、行距等等一系列的东西。这是对文档编辑能力的考验,也是对计算机基础知识的考验。这次毕业设计基本上把大学里学到的知识考查了一遍,也让我把他们整体上粗略的复习了一遍。在设计接近尾声时,我回头对这次设计做了一下梳理,在这次设计中有很多老师和同学对我都有过帮助,我在此感谢他们。首先要感谢的是我毕业设计的指导老师朱德荣老师,朱老师为我的设计提供了很多的帮助。我在做设计中只要有不明白的地方,开口向朱老师请教,朱老师就会毫不怜惜的向我讲解,一遍不行就两遍直到我明白为止,朱老师这中诲人不倦的精神给我很深的印相,是我非常的尊敬他。朱老师在我遇到实在找不到的资料时,还帮我找资料,然后给我讲解,他这种关心学生学习的精神让我感动。再设计中不仅老师给了我帮助,同学们也给了我很多的帮助。张浩同学给我了很多关于PLC学习方面的资料,对我设计有很大的帮助。他还对我设计中不好或是不准确的地方给出了他自己的看法。张新奎同学和周中原同学也给了我很大的帮助。这次毕业设计在紧张而充实的氛围里完成了,这意味着我的三年大学生活也要即将结束了,要告别象牙塔般的学校生活,进入社会中。回想这三年的大学生活

温馨提示

  • 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
  • 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
  • 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
  • 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
  • 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
  • 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
  • 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。

评论

0/150

提交评论