您好,欢迎访问三七文档
当前位置:首页 > 临时分类 > 基于PLC和PID的温度控制系统开发
1基于PLC和PID的温度控制系统开发【摘要】:在工业生产中,温度作为一项重要的技术指标,很多生产过程都对温度有着严格的要求。相当一部分的生产过程要求恒温条件下才能很好的进行。因此温度自动调节过程对生产发展有重要的意义。本文采用西门子S7-200型PLC,通过对硬件选型和组织,利用编程软件STEP7micr/WIN编写控制程序,实现对生产工程中活动水箱中水温的恒温控制。运用经典的PID算法使得系统有较为满意的温度控制效果。通过调用编程软件中的PID控制模块使得程序简洁,运行速度更快。系统还对各种意外情况作了相应的处理,使得系统的功能完善。本设计注重于硬件选型,并在STEP7micr/WIN中编写程序,实现了要求的各种功能,并能根据生产环境进行参数自整定。【关键词】:温度控制PID控制PLC控制组态王【Abstract】Inallkindsofproductionactivity,temperatureisaveryimportanttechnicalindex.Manyactivitiesfirmtemperaturestrictlyandapartoftheproductionprocessrequiresgoodconstanttemperatureconditions.Sotheautomationoftemperatureprocesshastheimportantmeaningcontroltopromoteproductivitydevelopment.Inthisarticle,weusetheSiemensS7-200PLC,accordingtothehardwaretypeselectionandorganization,towritecontrolprogrambasedontheprogrammingsoftwareSTEP7micro/WIN,realizingthewatertemperaturecontrolinwatertankintheproductionengineeringactivity.UsingtheclassicalPIDalgorithmmakesthesystemhaveamoresatisfactorytemperaturecontroleffect.BycallingthePIDcontrolmoduleofprogrammingsoftwaremakestheprogrammoreconciseandfaster.Atthesametime,thesystemalsomakescorrespondingprocessingtoallsortsofaccidenttomakethefunctionofthesystemperfect.FocusedonahardwareselectionandprogrammedinSTEP7micro/WIN,itachievestherequirementsofvariouskindsoffunctionsthroughabovework.Anditcanaccordingtoproductionenvironmentparameterself-setting.【Keywords】:TemperaturecontrolPIDcontrolPLCcontrolConfigurationking1设计功能简介本温度控制系统的控制对象是一个大容量水箱的水温,其工作过程和要求如下:按要求设定水箱的恒温控制,启动水泵进水,到指定液位后,启动搅拌电机搅拌,测量水温与设定值比较。测量的温度范围:20~80℃温度超限进行报警。若水温高于设定值5℃~10℃进冷水;若水温高于设定值10℃以上时,采用进冷水与风冷同时进行的方法实现降温控制。系统应该提供一个界面对温度、流量、加热电功率进行实测并显示。进水时无流量或加热、冷却时水温无变化时应进行报警。系统能够自动整定PID参数,实现温度的测量与控制。在本系统中,对所有参数的设定和显示,采用在组态王的监控界面进行设定和显示,这样更加形象和生动。2设计的方案温度控制系统不应该只能用于一套设备,当外界环境改变的时候,应该能够进行相应的参数转变,从而达到最优的控制效果,这就是增强温度控制系统的可移植性。设计中采用西门子S7-200系2011年毕业设计摘要2列的PLC,这种PLC内部具有PID参数自整定功能,即使外界环境改变,其能根据设定值自动调整PID的各种控制参数,选择出最优的控制参数。硬件部分水箱按要求容量进行选择,水泵选择小型电动机驱动的水泵,阀门采用电磁阀,搅拌电机也采用三相小型电动机。采用热电偶进行温度的采集,完成温度信号到电信号的转换,关于温度信号的标准化,采用PLC的外设EM231模拟量转换模块。针对不同温度情况通过PLC内部编写的程序来输出各种控制信号,控制阀门、水泵、风扇、搅拌电机等。对温度进行PID调节,PID运算的结果去控制接通电加热器,但加热器采用的是稳定功率的加热器,其状态只能是开或关,不能接受模拟量调节。在实现PID控制时采用了“占空比”的控制方法,即将温度传感器检测到的温度值送入PLC后,经PID指令运算成为一个0~1的实数,把该实数按比例换算成一个0-100的整数,把该整数作为一个范围为0-10s的时间t。设计周期为10s的脉冲,脉冲宽度为t,把该脉冲加给电加热器即可像模拟量一样去控制温度。关于对温度的设定、输出显示等则采用组态王监控界面进行。组态王有着强大的监控功能,通过其与PLC连接可以显示PLC内部的各个接口或者存储器的内容和状态以及各种控制信号状态,在组态王的界面上还可以进行设定值的设定,能记录历史曲线,能报警,完成监控任务。而且这种监控可以在计算机上形象的表示出来,有利于工作人员对各种数据的记录和分析。3系统硬件设计本系统是基于西门子S7-200小型PLC所研制的,在整个系统中有如下部分:采样输入:主要是采集现场的各种信号,包括温度、流量,和各种开关量信号。转换器:将各种采集到的模拟量信号转换为标准的0—20mA的标准电流信号。此处采用EM231模拟量输入模块。S7-200PLC:完成对各个输入量的采集和处理并输出控制信号。信号转换:将各种弱电的控制信号,转换成强电的控制信号,如各种继电器,功率转换装置。控制对象:本系统中的控制对象主要有:进水泵、搅拌电机、冷却风扇、排水阀门、报警器。计算机PLCEM231模块固态继电器热电偶加热器图1温度控制系统结构图姜大巍:基于PLC和PID的温度控制系统开发3系统的整个控制功能图如图2所示报警PID控制是Ts+5TTs+10?否温度是否超限否是否报警是关闭水泵关闭风扇打开排水阀门结束关闭水泵关闭风扇打开排水阀门结束报警停止停止水泵进水是否有流量液位是否到液位是否超限是是是否否否图2温度控制系统工作流程图启动是否Ts+5温度检测启动风扇关闭水泵启动搅拌机2011年毕业设计摘要44系统的I/O分配表1温度控制系统中数字量输入输出点分配数字量输入名称端口数字量输出名称端口启动按钮I0.0水泵Q0.0停止按钮I0.1搅拌电机Q0.1液位开关(中)I0.2冷却风扇Q0.2液位开关(警戒位)I0.3排水阀门Q0.4热保护I0.4报警器Q0.5电加热器Q0.6表2温度控制系统中模拟量输入点分配模拟量输入端口温度采集信号AIW0流量采集信号AIW2本温度控制系统中,除了有开关量输入外,还有温度、流量等模拟量。对于各种开关量,可以直接分配端口,让PLC读取其状态即可。输入量如启动按钮、停止按钮等,输出量如水泵、搅拌电机的启动等。在本系统中还有模拟量,如温度、流量,这些量由传感器测得,但是其信号并不统一,需经过变送器将其转换为标准的0-20mA电流信号以后才能送给PLC进行处理。姜大巍:基于PLC和PID的温度控制系统开发55系统的硬件连接I0.0I0.1I0.2I0.3I0.4Q0.4Q0.3\Q0.2Q0.1Q0.0AIW2AIW0L+DC24VQ0.6COMAC220V温度信号流量信号温度控制信号启动停止液位(中)液位(上)热保护水泵搅拌电机冷却风扇排水阀门报警器EM231模块通信线缆计算机组态监控KM1KM2KM3KM4KM5SB1SB2SQ1SQ2FR图3温控系统接线示意图2011年毕业设计摘要66系统软件设计在PLC编程时,运用到PID控制的,则须按照PID控制回路参数表设定各个变量,PID回路控制参数表如表3所示:表3PID控制回路参数表地址偏移参数备注0Pv0.0~1范围内4Sp(设定值)0.0~1范围内8M(输出)0.0~1范围内12增益K比例16采样时间Ts以秒为单位20积分时间Ti以分为单位24微分时间Tc以分为单位28上次积分值Mt0.0~1.0之间32上次PN最近一次PID运算值在编程中,PID控制的输入和输出虽然都是模拟量,但是在PLC的内部,这两个量都只能以0-1之间的数据处理。编程时,若自己编写PID控制程序,需要对数据进行处理,处理时按以下步骤进行即可。对于输入回路:将回路输入量数值从16位整数转换为32为浮点数或实数。ITDAIW0,AC0//将输入数值转换成双字DTRAC0,AC0//将32位整数转换成实数将实数转换成0.0-1.0之间的标准化数值,写入PID回路参数表中。/R32000.0,AC0//使累加器中的数值标准化MOVRAC0,VD100//将标准化数值写入PID回路参数表中对于输出回路:程序执行后,PID回路输出0.0-1.0之间标准化实数数值,必须被转换为16位成比例整数数值,才能驱动模拟输出。PID回路输出成比例实数数值=(PID回路输出标准化实数值-偏移量)×取值范围MOVRVD108,AC0//将PID回路输出送入AC0*R32000.0,AC0//AC0的值乘以取值范围,变成成比例的实数数值ROUNDAC0,AC0//将实数四舍五入取整,变成32位整数DTIAC0,AC0//32位整数转换成16位整数MOVWAC0,AQW0//16位整数写入AQW0经过以上处理,就可以实现PID的控制和相应的显示等功能。若采用向导生成PID运算模块的话,就可以避免这些工作,直接在向导对话框中设置对应的参数就可以完成PID的运算模块的创建。在本软件中,对各种参数也不必严格设定,PLC可以根据使用环境进行参数自整定,给出推荐的最优参数,大大方便了编程和增强了系统的可移植性。对于温度转换,其接受热电偶经变送转换后的电信号,在端口接收到分辨率为1/32000的对应信号,因为采用的是4-20mA量程,其对应的温度为0-100℃。其计算公式如6-1所示:姜大巍:基于PLC和PID的温度控制系统开发71006400320006400xT℃(6-1)同样的,流量信号也可以按照这样的方法计算,最终换算成具体的流量值,送入相应的内存单元。关于功率的计算,因为本设计中采用了占空比的控制方法,且周期为10s,因为本系统采用的是功率为15kw的电加热器,其加热功率由式6-2求得。101510yPkw(6-2)式中y为从回路表中读出的输出单元的存储值。PLC中许多运算数据都需要组态软件从中读出并给予显示,许多运算的中间数据必须得清楚其所在的内存位置,通过组态王对这些内存的读写可以实现组态界面的监控和设置功能。比如在运算过程中,设定温度存于VD300中,实际温度值存于VD200中等。7总结和致谢本论文成功运用组态王和S7-200系列的PLC构建了一个实时监控的温度控制系统,系统采用了经典的PID算法控制,得到了一个响应迅速、控制精度高、稳定可靠的温度控制系统。关于PID运算中的各种参数,可以同过编程软件中的PID自整定来实现最优参数的选择,同时,这样的具有参数自整定功能的系统,其可移植性也比较强,即使换一个环境,也可以通过参数自整定来选出最优的整定参数,获得最优的控制效果。在此对所有帮助过我们的老师同学们表示感谢。在老师的指导下,我们翻阅了大量的资料,对比各种硬件,从中选取合适的硬件,并针对设
本文标题:基于PLC和PID的温度控制系统开发
链接地址:https://www.777doc.com/doc-2571371 .html