资源描述
订阅RSS网易博客首页相册 搜索随便看看 注册 登录单片机开发平台首页日志相册音乐收藏博友关于我日志图 单片机开单片机开发平台提供专业单片机学习资料,包括51,ARM,PLC,DSP,CPLD/FPGA,NEC,STM,AVR,开关电源,嵌入式系统等单片机资料,还有单片机毕业论文与技术文章加博友 关注他最新日志三相异步电动机Y-(三角形从C8051F看8位单片机发展之一种基于AT89C2051单片机的全自动洗衣机的PLC控制设计2009年索伊冰箱家电下乡产品基于FPGA芯片的数字频率计设随机阅读FromBerlinwithlove张国焘为何成为一大中的二号人物?魔鬼地洞中国和“流氓”国家成为“朋友”的代价Dr.YOU第62期塑料皮儿该怎么撕?剧的报恩首页推荐翻拍红楼梦堪比创业全球最恐怖四条灵异路美国赌场养两头活狮非诚勿扰改版后不好看丝袜上的插画风情万种相亲会美女盛装登场更多基于单片机的闭环实时温度控制系统基于AT89C51单片机的多路温度检测报警系统基于西门子S7-200 PLC的温度控制系统设计毕业论文默认分类 2009-05-26 21:06:12 阅读 1267 评论 1 字号: 大 中 小基于西门子S7-200 PLC的温度控制系统设计毕业论文本文摘自单片机开发平台:第一章 前 言1.1 课题研究背景温度是工业生产中常见的工艺参数之一,任何物理变化和化学反应过程都与温度密切相关。在科学研究和生产实践的诸多领域中, 温度控制占有着极为重要的地位, 特别是在冶金、化工、建材、食品、机械、石油等工业中,具有举足轻重的作用。对于不同生产情况和工艺要求下的温度控制,所采用的加热方式,燃料,控制方案 也有所不同。例如冶金、机械、食品、化工等各类工业生产中广泛使用的各种加热炉、热处理炉、反应炉等;燃料有煤气、天然气、油、电等1。温度控制系统 的工艺过程复杂多变,具有不确定性,因此对系统要求更为先进的控制技术和控制理论。可编程控制器(PLC)可编程控制器是一种工业控制计算机,是继承计算机、自动控制技术和通信技术为一体的新型自动装置。它具有抗干扰能力强,价格便宜, 可靠性强,编程简单,易学易用等特点,在工业领域中深受工程操作人员的喜欢,因此PLC已在工业控制的各个领域中被广泛地使用2。目前在控制领域中,虽然逐步采用了电子计算机这个先进技术工具,特别是石油化工企业普遍采用了分散控制系统(DCS)。但就其控制策略而言,占统治地位的 仍然是常规的PID控制。PID结构简单、稳定性好、工作可靠、使用中不必弄清系统的数学模型3。PID的使用已经有60多年了,有人称赞它是控制领 域的常青树。组态软件是指一些数据采集与过程控制的专用软件,它们是在自动控制系统监控层一级的软件平台和开发环境,使用灵活的组态方式,为用户提供快速构建工业自动 控制系统监控功能的、通用层次的软件工具。在组态概念出现之前,要实现某一任务,都是通过编写程序来实现的。编写程序不但工作量大、周期长,而且容易犯错 误,不能保证工期。组态软件的出现,解决了这个问题。对于过去需要几个月的工作,通过组态几天就可以完成.组态王是国内一家较有影响力的组态软件开发公司 开发的,组态王具有流程画面,过程数据记录,趋势曲线,报警窗口,生产报表等功能,已经在多个领域被应用4。1.2 温度控制系统的发展状况温度控制系统在工业生产中获得了广泛的应用,在工农业生产、国防、科研以及日常生活等领域占有重要的地位。温度控制系统是人类供热、取暖的主要设备的驱动 来源,它的出现迄今已有两百余年的历史。期间,从低级到高级,从简单到复杂,随着生产力的发展和对温度控制精度要求的不断提高,温度控制系统的控制技术得 到迅速发展。当前比较流行的温度控制系统有基于单片机的温度控制系统,基于PLC 的温度控制系统,基于工控机(IPC)的温度控制系统,集散型温度控制系统(DCS),现场总线控制系统(FCS)等。单片机的发展历史虽不长,但它凭着体积小,成本低,功能强大和可靠性高等特点,已经在许多领域得到了广泛的应用。单片机已经由开始的4位机发展到32位 机,其性能进一步得到改善5。基于单片机的温度控制系统运行稳定,工作精度高。但相对其他温度系统而言,单片机响应速度慢、中断源少,不利于在复杂 的,高要求的系统中使用。PLC是一种数字控制专用电子计算机,它使用了可编程序存储器储存指令,执行诸如逻辑、顺序、计时、计数与演算等功能,并通过模拟和数字输入、输出等组 件,控制各种机械或工作程序。PLC可靠性高、抗干扰能力强、编程简单,易于被工程人员掌握和使用,目前在工业领域上被广泛应用6。相对于 IPC,DCS,FSC等系统而言,PLC是具有成本上的优势。因此,PLC占领着很大的市场份额,其前景也很有前途。工控机(IPC)即工业用个人计算机。IPC的性能可靠、软件丰富、价格低廉,应用日趋广泛。它能够适应多种工业恶劣环境,抗振动、抗高温、防灰尘,防电 磁辐射。过去工业锅炉大多用人工结合常规仪表监控,一般较难达到满意的结果,原因是工业锅炉的燃烧系统是一个多变量输入的复杂系统。影响燃烧的因素十分复 杂,较正确的数学模型不易建立,以经典的PID为基础的常规仪表控制,已很难达到最佳状态。而计算机提供了诸如数字滤波,积分分离PID,选择性PID。 参数自整定等各种灵活算法,以及“模糊判断”功能,是常规仪表和人力难以实现或无法实现的7。在工业锅炉温度检测控制系统中采用控机工可大大改善了对 锅炉的监控品质,提高了平均热效率7。但如果单独采用工控机作为控制系统,又有易干扰和可靠性差的缺点。集散型温度控制系统(DCS)是一种功能上分散,管理上集中上集中的新型控制系统。与常规仪表相比具有丰富的监控、协调管理功能等特点。DCS的关键是通 信。也可以说数据公路是分散控制系统DCS的脊柱。由于它的任务是为系统所有部件之间提供通信网络,因此,数据公路自身的设计就决定了总体的灵活性和安全 性。基本DCS的温度控制系统提供了生产的自动化水平和管理水平,能减少操作人员的劳动强度,有助于提高系统的效率8。但DCS在设备配置上要求网 络、控制器、电源甚至模件等都为冗余结构,支持无扰切换和带电插拔,由于设计上的高要求,导致DCS成本太高。现场总线控制系统(FCS)综合了数字通信技术、计算机技术、自动控制技术、网络技术和智能仪表等多种技术手段的系统。其优势在于网络化、分散化控制。基 于总线控制系统(FCS)的温度控制系统具有高精度,高智能,便于管理等特点,FCS系统由于信息处理现场化,能直接执行传感、控制、报警和计算功能。而 且它可以对现场装置(含变送器、执行器等)进行远程诊断、维护和组态,这是其他系统无法达到的9。但是,FCS还没有完全成熟,它才刚刚进入实用化的 现阶段,另一方面,另一方面, 目前现场总线的国际标准共有12种之多,这给FSC的广泛应用添加了很大的阻力。各种温度系统都有自己的优缺点,用户需要根据实际需要选择系统配置,当然,在实际运用中,为了达到更好的控制系统,可以采取多个系统的集成,做到互补长短。温度控制系统在国内各行各业的应用虽然已经十分广泛,但从生产的温度控制器来讲,总体发展水平仍然不高,同日本、美国、德国等先进国家相比有着较大差距。 成熟产品主要以“点位”控制及常规的PID控制器为主。它只能适应一般温度系统控制,难于控制滞后、复杂、时变温度系统控制。而适应于较高控制场合的智能 化、自适应控制仪表,国内技术还不十分成熟,形成商品化并在仪表控制参数的自整定方面,国外已有较多的成熟产品。但由于国外技术保密及我国开发工作的滞 后,还没有开发出性能可靠的自整定软件。控制参数大多靠人工经验及现场调试确定。国外温度控制系统发展迅速,并在智能化、自适应、参数自整定等方面取得成 果。日本、美国、德国、瑞典等技术领先,都生产出了一批商品化的、性能优异的温度控制器及仪器仪表,并在各行业广泛应用。目前,国外温度控制系统及仪表正 朝着高精度、智能化、小型化等方面快速发展10。1.3本文的研究内容本论文主要是利用PLC S7-200 采用PID控制技术做一个温度控制系统,要求稳定误差不超过正负1,并且用组态软件实现在线监控。具体有以下几方面的内容:第一章,对PLC系统应用的背景进行了阐述,并介绍当前温度控制系统的发展状况。第二章,简单概述了PLC的基本概念以及组成。第三章,介绍了控制系统设计所采用的硬件连接、使用方法以及编程软件的简单介绍。第四章,介绍了本论文中用到的一些算法技巧和思想,包括PWM、PID控制、PID在PLC中的使用方法以及PID的参数整定方法。第五章,介绍了设计程序的设计思想和程序,包括助记符语言表和梯形图。第六章,介绍了组态画面的设计方法。第七章,进行系统设计,检验控制系统控制质量。第八章,对全文进行总结。第二章 可编程控制器的概述2.1 可编程控制器的产生可编程控制器是一种工业控制计算机,英文全称:Programmable Controller,为了和个人计算机(PC)区分,一般称其为PLC。可编程控制器(PLC)是继承计算机、自动控制技术和通信技术为一体的新型自动 装置。其性能优越,已被广泛地应用于工业控制的各个领域。20世纪60年代,计算机技术开始应用于工业控制领域,但由于价格高、输入输出电路不匹配、编程难度大,未能在工业领域中获得推广。1968年,美国的汽车制造公司通用汽车公司(GM)提出了研制一种新型控制器的要求,并从用户角度提出新一代控制器应具备十大条件,立即引起了开发热潮。1969年,美国数字设备公司(DEC)研制出了世界上第一台可编程序控制器,并应用于通用汽车公司的生产线上。可编程控制器自问世以来,发展极为迅速。1971年日本开始生产可编程控制器,而欧洲是1973开始的。如今,世界各国的一些著名的电气工厂几乎都在生产可编程控制器11。可编程控制器从诞生到现在经历了四次更新换代,见表1-1。 表 1-1 可编程控制器功能表代次 器件 功能第一代 1位处理器 逻辑控制功能第二代 8位处理器及存储器 产品系列化第三代 高性能8位微处理器及位片式微处理器 处理速度提高,向多功能及联网通信发展第四代 16位、32位微处理器及高性能位片式微处理器 逻辑、运动、数据处理、联网功能的多功能2.2 可编程控制器的基本组成PLC从组成形式上一般分为整体式和模块式两种。整体式PLC一般由CPU板、I/O板、显示面板、内存和电源组成。模块式PLC一般由CPU模块、I /O模块、内存模块、电源模块、底版或机架组成。本论文实物采用的是模块式的PLC,不管哪种PLC,都是属于总线式的开发结构,其构成如图2-1所示 12。1) CPU(中央处理器)和一般的微机一样,CPU是微机PLC的核心,主要由运算器、控制器、寄存器以及实现他们之间联系的地址总线、数据总线和控制总线构成。CPU在很大程度上决定了PLC的整体性能,如整个系统的控制规模、工作速度和内存容量。CPU控制着PLC工作,通过读取、解释指令,指导PLC有条不紊的工作。2) 存储器 存储器(内存)主要用语存储程序及数据,是PLC不可缺少的组成部分。PLC中的存储器一般包括系统程序存储器和用户程序存储器两部分。系统程序一般由厂 家编写的,用户不能修改;而用户程序是随PLC的控制对象而定的,由用户根据对象生产工艺的控制要求而编制的应用程序。3) 输入输出模块 输入模块和输出模块通常称为I/O模块或I/O单元。PLC提供了各种工作电平、连接形式和驱动能力的I/O模块,有各种功能的I/O模块供拥护选用。按 I/O点数确定模块的规格和数量,I/O模块可多可少,但其最大数受PLC所能管理的配置能力,即底版的限制。PLC还提供了各种各样的特殊的I/O模块,如热电阻、热电偶、高速计算器、位置控制、以太网、现场总线、温度控制、中断控制、声音输出、打印机等专用 型或智能型模块,用以满足各种特殊功能的控制要求。智能接口模块是一独立的计算机系统,它有自己的CPU、系统程序、存储器及与PLC系统总线相连接的接 口。4)编程装置编程器作用是将用户编写的程序下载至PLC的用户程序存储器,并利用编程器检查、修改和调试用户程序,监视用户程序的执行过程,显示PLC状态、内部器件 及系统的参数等。常见的编程器有简易手持编程器、智能图形编程器和基于PC的专用编程软件。目前PLC制造厂家大都开发了计算机辅助PLC编程支持软件, 当个人计算机安装了PLC编程支持软件后,可用作图形编程器,进行用户程序的编辑、修改,并通过个人计算机和PLC之间的通信接口实现用户程序的双向传 送、监控PLC运行状态等。5)电源 PLC的电源将外部供给的交流电转换成供CPU、存储器等所需的直流电,是整个PLC的能源供给中心。PLC大都采用高质量的工作稳定性好、抗干扰能力强 的开关稳压电源,许多PLC电源还可向外部提供直流24V稳压电源,用于向输入接口上的接入电气元件供电,从而简化外围配置。第三章 硬件配置和软件环境3.1实验配置3.1.1 西门子S7-200S7-200系列PLC可提供4种不同的基本单元和6种型号的扩展单元。其系统构成包括基本单元、扩展单元、编程器、存储卡、写入器、文本显示器等。本论文采用的是CUP224。它具有24个输入点和16个输出点。S7-200系列的基本单元如表3-1所示13。3.1.2 传感器热电偶是一种感温元件,它直接测量温度,并把温度信号转换成热电动势信号。常用热电偶可分为标准热电偶和非标准热电偶两大类。所调用标准热电偶是指国家标 准规定了其热电势与温度的关系、允许误差、并有统一的标准分度表的热电偶,它有与其配套的显示仪表可供选用。非标准化热电偶在使用范围或数量级上均不及标 准化热电偶,一般也没有统一的分度表,主要用于某些特殊场合的测量。标准化热电偶我国从1988年1月1日起,热电偶和热电阻全部按IEC国际标准生产, 并指定S、B、E、K、R、J、T七种标准化热电偶为我国统一设计型热电偶。本论文才用的是K型热电阻14。3.1.3 EM 231模拟量输入模块传感器检测到温度转换成041mv的电压信号,系统需要配置模拟量输入模块把电压信号转换成数字信号再送入PLC中进行处理。在这里,我们选用了西门子EM231 4TC模拟量输入模块。EM231热电偶模块提供一个方便的,隔离的接口,用于七种热电偶类型:J、K、E、N、S、T和R型,它也允许连接微小的模拟量信号(80mV范围),所有连到模块上的热电偶必须是相同类型,且最好使用带屏蔽的热电偶传感器。EM231模块需要用户通过DIP开关进行选择的有:热电偶的类型、断线检查、测量单位、冷端补偿和开路故障方向,用户可以很方便地通过位于模块下部的组 态DIP开关进行以上选择,如图3-2所示。本设计采用的是K型热电偶,结合其他的需要,我们设置DIP开关为00100000。对于EM231 4TC模块,SW1SW3用于选择热电偶类型,见表3-3 。SW4没有使用,SW5用于选择断线检测方向,SW6用于选择是否进行断线检测,SW7用于选择测量单位,SW8用于选择是否进行冷端补偿,见表3-415。为了使DIP开关设置起作用,用户需要给PLC的电源断电再通电。3.2 STEP 7 Micro/WIN32软件介绍 STEP 7-MWIN32编程软件是基于Windows的应用软件,是西门子公司专门为SIMTIC S7-200系列PLC设计开发的。该软件功能强大,界面友好,并有方便的联机功能。用户可以利用该软件开发程序,也可以实现监控用户程序的执行状态,该 软件是SIMATIC S7-200拥护不可缺少的开发工具3.2.1安装STEP 7-MWIN32 V4.0在开始安装的时候是选择语言界面,对于版本4.0来说,这时候没有选择中文的,但可以先选择其他语言,见图3-5。等软件安装好之后再进行语言的切换。 在安装的最后,会出现一个界面,按照硬件的配置,我们需要用232通信电缆,采用PPI的通信方式,所以要选择PPI/PC Cable(PPI),这个时候在弹出来的窗口中选择端口地址,通信模式,一般选择默认就可以了,见图3-6。如果想改变编程界面的语言,可在软件的主界面的工具栏中选择tools目录下选择option选项,在出现的界面中选择general,然后在右下角就可以选择中文了。见图3-7所示。3.2.2 系统参数设置系统块用来设置S7-200 CPU的系统选项和参数等。系统块更改后需要下载到CPU中,新的设置才能生效。系统块的设置如下,需要注意的是,PLC的地址默认是2,但本设计中需要 用到的地址是1,如图3-8。通信端口的设置,同样的,我们用到的地址是1,如图3-9所示。图 3-9 通信端口设置 第四章 控制算法描述4.1 PWM技术脉宽调制(PWM)是利用微处理器的数字输出来对模拟电路进行控制的一种非常有效的技术,广泛应用在测量、通信、功率控制与变换的许多领域中。PWM是一种对模拟信号电平进行数字编码的方法。通过高分辨率计数器的使用,方波的占空比被调制用来对一个具体模拟信号的电平进行编码。PWM信号仍然是数字的,因为在给定的任何时刻,满幅值的直流供电要么完全有(ON),要么完全无(OFF) 16。本论文中采样周期和加热周期都是10秒。采样后,根据温差的大小进行PID调节,转化得到一个加热时间(0-10秒)作为下一个加热周期的加热时间。例如 温差大,加热时间就大,温差小,那么加热时间就小。程序采用的是粗调和微控两段式控制方式。在粗控调阶段,占空比恒为一。在微控制阶段,占空比就根据温差 不停地变化。4.2 PID控制程序设计模拟量闭环控制较好的方法之一是PID控制,PID在工业领域的应用已经有60多年,现在依然广泛地被应用。人们在应用的过程中积累了许多的经验,PID的研究已经到达一个比较高的程度。比例控制(P)是一种最简单的控制方式。其控制器的输出与输入误差信号成比例关系。其特点是具有快速反应,控制及时,但不能消除余差。在积分控制(I)中,控制器的输出与输入误差信号的积分成正比关系。积分控制可以消除余差,但具有滞后特点,不能快速对误差进行有效的控制。在微分控制(D)中,控制器的输出与输入误差信号的微分(即误差的变化率)成正比关系。微分控制具有超前作用,它能预测误差变化的趋势。避免较大的误差出现,微分控制不能消除余差。PID控制,P、I、D各有自己的优点和缺点,它们一起使用的时候又和互相制约,但只有合理地选取PID值,就可以获得较高的控制质量17。4.2.1 PID控制算法如图4-1所示,PID控制器可调节回路输出,使系统达到稳定状态。偏差e和输入量r、输出量c的关系: (4.2)控制器的输出为: (4.3)上式中, PID回路的输出; 比例系数P; 积分系数I; 微分系数D;PID调节器的传输函数为: (4.4)数字计算机处理这个函数关系式,必须将连续函数离散化,对偏差周期采样后,计算机输出值。其离散化的规律如表4-5所示:表 4-5 模拟与离散形式模拟形式 离散化形式所以PID输出经过离散化后,它的输出方程为:式4.8中, 称为比例项; 称为积分项; 称为微分项;上式中,积分项 是包括第一个采样周期到当前采样周期的所有误差的累积值17。计算中,没有必要保留所有的采样周期的误差项,只需要保留积分项前值,计算机的处理就是按照这种思想。故可利用PLC中的PID指令实现位置式PID控制算法量18。4.2.2 PID在PLC中的回路指令现在很多PLC已经具备了PID功能,STEP 7 Micro/WIN就是其中之一有的是专用模块,有些是指令形式。西门子S7-200系列PLC中使用的是PID回路指令。见表4-7。表4-7 PID回路指令名称 PID运算指令格式 PID指令表格式 PID TBL,LOOP梯形图使用方法:当EN端口执行条件存在时候,就可进行PID运算。指令的两个操作数TBL和LOOP,TBL是回路表的起始地址,本文采用的是VB100,因 为一个PID回路占用了32个字节,所以VD100到VD132都被占用了。LOOP是回路号,可以是07,不可以重复使用。PID回路在PLC中的地 址分配情况如表4-8所示。表4-8 PID指令回路表偏移地址 名称 数据类型 说明0 过程变量(PVn) 实数 必须在0.01.0之间4 给定值(SPn) 实数 必须在0.01.0之间8 输出值(Mn) 实数 必须在0.01.0之间12 增益(Kc) 实数 比例常数,可正可负16 采样时间(Ts) 实数 单位为s,必须是正数20 采样时间(Ti) 实数 单位为min,必须是正数24 微分时间(Td) 实数 单位为min,必须是正数28 积分项前值(MX) 实数 必须在0.01.0之间32 过程变量前值(PVn-1) 实数 必须在0.01.0之间1) 回路输入输出变量的数值转换方法本文中,设定的温度是给定值SP,需要控制的变量是炉子的温度。但它不完全是过程变量PV,过程变量PV和PID回路输出有关。在本文中,经过测量的温度 信号被转化为标准信号温度值才是过程变量,所以,这两个数不在同一个数量值,需要他们作比较,那就必须先作一下数据转换。温度输入变量的数10倍据转化。 传感器输入的电压信号经过EM231转换后,是一个整数值,他的值大小是实际温度的把A/D模拟量单元输出的整数值的10倍。但PID指令执行的数据必须 是实数型,所以需要把整数转化成实数。使用指令DTR就可以了。如本设计中,是从AIW0读入温度被传感器转换后的数字量。其转换程序如下:MOVW AIW0, AC1DTR AC1, AC1MOVR AC1, VD1002) 实数的归一化处理因为PID中除了采样时间和PID的三个参数外,其他几个参数都要求输入或输出值0.01.0之间,所以,在执行PID指令之前,必须把PV和SP的值作归一化处理。使它们的值都在0.01.0之间。归一化的公式如4.9: (4.9)式中, 标准化的实数值; 未标准化的实数值; 补偿值或偏置,单极性为0.0,双极性为0.5; 值域大小,为最大允许值减去最小允许值,单极性为32000.双极性为6400。本文中采用的是单极性,故转换公式为: (4.10)因为温度经过检测和转换后,得到的值是实际温度的10倍,所以为了SP值和PV值在同一个数量值,我们输入SP值的时候应该是填写一个是实际温度10倍的 数,即想要设定目标控制温度为100时,需要输入一个1000。另外一种实现方法就是,在归一化的时候,值域大小可以缩小10倍,那么,填写目标温度的 时候就可以把实际值直接写进去19。3) 回路输出变量的数据转换本设计中,利用回路的输出值来设定下一个周期内的加热时间。回路的输出值是在0.01.0之间,是一个标准化了的实数,在输出变量传送给D/A模拟量单元之前,必须把回路输出变量转换成相应的整数。这一过程是实数值标准化过程。 (4.11)S7-200不提供直接将实数一步转化成整数的指令,必须先将实数转化成双整数,再将双整数转化成整数。程序如下:ROUND AC1, AC1DTI AC1, VW344.2.3 PID参数整定PID参数整定方法就是确定调节器的比例系数P、积分时间Ti和和微分时间Td,改善系统的静态和动态特性,使系统的过渡过程达到最为满意的质量指标要 求。一般可以通过理论计算来确定,但误差太大。目前,应用最多的还是工程整定法:如经验法、衰减曲线法、临界比例带法和反应曲线法。经验法又叫现场凑试法,它不需要进行事先的计算和实验,而是根据运行经验,利用一组经验参数,根据反应曲线的效果不断地改变参数,对于温度控制系统,工程上已经有大量的经验,其规律如表4-12所示。 表 4-12温度控制器参数经验数据被控变量 规律的选择 比例度 积分时间(分钟) 微分时间(分钟)温度 滞后较大 2060 310 0.53实验凑试法的整定步骤为先比例,再积分,最后微分。1)整定比例控制 将比例控制作用由小变到大,观察各次响应,直至得到反应快、超调小的响应曲线。2)整定积分环节先将步骤1)中选择的比例系数减小为原来的5080,再将积分时间置一个较大值,观测响应曲线。然后减小积分时间,加大积分作用,并相应调整比例系数,反复试凑至得到较满意的响应,确定比例和积分的参数。3)整定微分环节环节先置微分时间TD=0,逐渐加大TD,同时相应地改变比例系数和积分时间,反复试凑至获得满意的控制效果和PID控制参数20。根据反复的试凑,调出比较好的结果是P=120. I=3.0 D=1.0。第五章 程序设计5.1方案设计思路PLC采用的是的S7-200,CPU是224系列,采用了5个灯来显示过程的状态,分别是运行灯,停止灯,温度正常灯,温度过高(警示灯)灯,和加热 灯,可以通过5个灯的开关状况判断加热炉内的大概情况。K型传感器负责检测加热炉中的温度,把温度信号转化成对应的电压信号,经过PLC模数转换后进行 PID调节。根据PID输出值来控制下一个周期内(10s)内的加热时间和非加热时间。在加热时间内使得继电器接通,那加热炉就可处于加热状态,反之则停 止加热21。1) 硬件连线如图5-1所示。2) I/O点地址分配如表5-2所示。地址 名称 功能I0.1 启动按扭 按下开关,设备开始运行I0.2 开关按钮 按下开关,设备停止运行I0.3 保护按钮 按下开关,终止加热Q0.0 运行灯 灯亮表示设备处于运行状态Q0.1 停止灯 灯亮表示设备处于停止状态Q0.3 温度状态指示灯(正常 灯亮表示炉温在正常范围内Q0.4 温度状态指示灯(危险) 灯两表示炉温过高,处于危险状态Q0.5 固态继电器 灯亮表示加热炉正处于加热阶段3)程序地址分配如表5-3所示。 表 5-3 内存地址分配地址 说明VD0 用户设定比例常数P存放地址VD4 用户设定积分常数I存放地址VD8 用户设定微分常数D存放地址VD12 目标设定温度存放地址VD16 系统运行时间秒存放地址VD20 系统运行时间分钟存放地址VD30 当前实际温度存放地址VW34 一个周期内加热时间存放地址VW36 一个周期内非加热时间存放地址4) PID指令回路表如表5-4所示。 表 5-4 PID指令回路表地址 名称 说明VD100 过程变量(PVn) 必须在0.01.0之间VD104 给定值(SPn) 必须在0.01.0之间VD108 输出值(Mn) 必须在0.01.0之间VD112 增益(Kc) 比例常数,可正可负VD116 采样时间(Ts) 单位为s,必须是正数VD120 采样时间(Ti) 单位为min,必须是正数VD124 微分时间(Td) 单位为min,必须是正数VD128 积分项前值(MX) 必须在0.01.0之间VD132 过程变量前值(PVn-1) 必须在0.01.0之间5.2 程序流程图程序流程图如图5-5所示,1个主程序,3个子程序。5.3助记符语言表主程序LD SM0.0 / SM0.0常ONLPS / 将SM0.0压栈AR= VD30, 105.0 / 如果温度大于105S Q0.4, 1 / 使Q0.4保持ONR Q0.3, 1 / 使Q0.3保持OFFLD SM0.0LPSA I0.1 / 按下启动按扭,启动系统AN I0.3 / I0.3为保护关开,一般情况下保持ONS M0.1, 1R M0.2, 1LPPA I0.2 / 按下关闭按扭,停止运行AN I0.3R M0.1, 1S M0.2, 1LD SM0.0AN I0.3LPSA M0.1S M0.0, 1R Q0.1, 1 / 使停止指示灯(Q0.1)OFFS Q0.0, 1 / 使运行指示灯(Q0.0)ONLPPA M0.2S Q0.1, 1 / 使停止指示灯(Q0.1)ONR M0.0, 1R Q0.0, 1 / 使停止指示灯(Q0.0)OFFLD M0.0CALL SBR0 / 调用子程序0LD M0.0CALL SBR1 / 调用子程序1LD M0.0LPSAN M0.3TON T50, 100LPPA T50= M0.3 /每10S使中间继电器M0.3为ONLD M0.3CALL SBR2 /每10S调用一次子程序2LD M0.0AN I0.3LPSAN T52 /T51炉子一个周期内的加热时间TON T51, VW34 /T51炉子一个周期内的非加热时间LRDAN T51= Q0.5 /使继电器(Q0.5)接通,炉子加热LPPA T51TON T52, VW36子程序0LD M0.0LPSAR= VD30, 84.0 /如果温度大于84S I0.5, 1 /使I0.5常ONR I0.4, 1 /使I0.4常OFFLD M0.0 /常ON继电器AN M0.6A I0.4 /如果I0.4为ON,则执行以下程序MOVR 300.0, VD0 /输入P值300到VD0MOVR 999999.0, VD4 /输入I值999999.0到VD4MOVR 0.0, VD8 /输入D值0.0到VD8MOVR 100.0, VD12 /输入设定温度值100.0到VD12LD M0.0AN M0.6A I0.5 /如果I0.5为ON,则执行以下程序MOVR 120.0, VD0 /输入P值120.0到VD0MOVR 3.0, VD4 /输入I值3.0. 到VD4MOVR 1.0, VD8 /输入D值1.0到VD8MOVR 100.0, VD12 /输入设定温度值,100.0到VD12子程序 1LD SM0.0MOVR VD12, VD104 /输入设定温度值/R 3200.0, VD104 /把设定值归一化处理MOVR VD0, VD112 /输入P值到PID回路中MOVR 10.0, VD116 /输入采样时间到PID回路中MOVR VD4, VD120 /输入I值到PID回路中MOVR VD8, VD124 /输入D值到PID回路中子程序2LD M0.0MOVW AIW0, AC1 /采样温度,放于AIW0中DTR AC1, AC1MOVR AC1, VD100/R 32000.0, VD100 /把采样值归一化处理MOVR AC1, VD30/R 10.0, VD30 /把实际温度值放于VD30中LD M0.0PID VB100, 0 /调用PID指令+R 10.0, VD16MOVR VD16, VD20 /计时/R 60.0, VD20LD M0.0MOVR VD108, AC1 /控制器输出*R 100.0, AC1 /把输出值转化为下一周期的加热时间ROUND AC1, AC1DTI AC1, VW34MOVW +100, VW36 /下一周期的非加热时间-I VW34, VW36 第六章 组态画面设计6.1组态软件概述组态软件是指一些数据采集与过程控制的专用软件,可为拥护提供快速构建工业自动控制系统监控功能的、通用层次的软件工具。组态软件一般英文简称有三种,分 别为HMI/MMI/SCADA/.HMI/MMI翻译为人机接口软件,SCADA翻译为监视控制和数据采集软件。国内外的主要产品有 wonderware公司的InTouch软件,Intellution公司的FIX软件,CIT公司的Citech软件,Simens公司的Wincc 软件,亚控公司的组态王,华富计算机公司的Controx软件,力控公司的ForceControl软件和北京昆仓公司的MCGS软件22。6.2组态王的介绍组态王开发监控系统软件是众多组态软件里面的一种,组态王是一个具有丰富功能的HMI/SCADA软件。可用于工业自动化的过程控制和管理监控。它提供了 集成、灵活、易用的开发环境和广泛的功能,能够快速建立、测试和部署自动化应用,来连接、传递和记录实时信息。使用户可以实时查看和控制工业生产过程。该 系统是中文界面,具有人机界面友好、结果可视化的优点。对用户而言,操作简单易学且编程简单,参数输入与修改灵活,具有多次或重复仿真运行的控制能力,可 以实时地显示参数变化前后系统的特性曲线,能很直观地显示控制系统的实时趋势曲线,这些很强的交互能力使其在自动控制系统的实验中可以发挥理想的效果 23。6.3组态画面的建立本论文的组态软件采用亚控公司的组态王6.53版本。组态软件提供了可视化监控画面,包括动画,实时趋势曲线,历史趋势曲线,实时数据报表,历史数据报 表,实时报警窗口,历史报警窗口,配方管理等等的功能。可方便地监视系统的运行。并可在在线修改程序参数,有利于系统的性能发挥。6.3.1创建项目 双击组态王的快捷方式,出现组态王的工程管理器窗口,双击新建按扭,按照弹出的建立向导,填写工程名称。然后打开刚建立的工程。进入组态画面的设计,如图6.1所示。1)新建画面进入工程管理器后,在画面右方双击“先建”,新建画面,并设置画面属性,如图6.2所示,包括画面名称,注释,画面位置,画面风格,画面类型和背景颜色 等。如下图。点击确定,就会出现,画面就会自动打开。画面的工具栏里面,可以选择工具箱,调色板,线形等在画面中显示,这些在画图的时候经常需要用上。2)新建变量要实现组态王对S7-200的在线监控,就先必须建立两者之间的联系,那就需要建立两者间的数据变量。基本类型的变量可以分为“内存变量”和I/O变量两 类。内存变量是组态王内部的变量,不跟被监控的设备进行交换。而I/O变量是两者之间互相交换数据的桥梁,S7-200和组态王的数据交换是双向的,一者 的数据发生变化,另外一者的数据也跟着变化。所以需要在创建连接前新建一些变量,如图6.3所示。本文中,PLC用内存VD30来存放当前的实际温度值。并规定温度超过105为温度过高,立刻要作出相应警示信号。点击工程管理器中的“数据词典”再双击右边窗口的新建,在出现的定义变量口中填写相应的要求项,并可在“报警定义”中设定报警,如图6.4所示。6.3.2建立主画面如图6.5所示,在该画面中,仿真实物设备的连接,通过设置开关按扭和关闭按扭来控制系统的启动和停止。旁边的指示灯,与Q0.0对应绿色表示系统在运 行,红色表示系统停止运行。加热炉的指示灯是表示加热炉的加热状态,与Q0.5对应绿色(亮),表示系统处于加热状态,黑色(暗)表示炉正处于加热状态。 炉子的温度可以在画面中显示出来。6.3.3建立趋势曲线画面实时趋势曲线可在工具箱中双击后在画面直接获得。实时趋势曲线随时间变化自动卷动,可快速反应变量的新变化,但不能查询过去的情况,其画面时间跨度可以通 过动画连接中“表示定义设置”,一个画面最多可以设置四条曲线,本文只需要用到两条曲线,绿色曲线表示设定的温度,红色曲线表示当前实际温度。X方向表示 时间,Y方向表示变量的量程百份比。Y轴上不能直接出现实际的过程值,但可以通过工具箱的文本进行对应的标记,本文中设置了量程是200,故0.50处 的X方向表示100。另外,在画面中设置了返回按扭,点击就可以返回到主画面。如图6.6所示。历史趋势曲线可在图库管理器中得到。历史趋势曲线可以查询查询过去的情况。 历史趋势曲线需要事先建立两个内存变量,分表是调整跨度和举动百分比。调整跨度是为了设置画面跨度的时间。以秒为单位,可以输入3600,表示跨度为1 个小时。卷动百分比是为了控制一次卷动的时间跨度,最小值是0,最大值是100。历史趋势曲线可设置8条曲线,本文只采用了两条。X表示时间,Y表示百分 比,需要另外标识实际的温度。另外,画面中设置了炉温度的在某段时间内的最大值最小值和平均值,时间段可以在画面中通过按扭选择。这里需要应用到一个函 数,HTGetValueAtZone,例如,需要输出最小值,那么需要输入函数HTGetValueAtZone ( 历史曲线,2, MinValue );,如图6.7所示。6.3.4建立数据报表1)建立实时数据报表数据报表是反应生产过程中的数据、状态等,并对数据进行记录的一种重要形式。数据报表有实时数据报表和历史数据报表,既能反应系统实时的运行情况,也能监测长期的系统运行状况。在组态王的工具箱内选择“报表工具”,在数据报表画面中绘制报表,双击窗口灰色部分,在弹出的画面中填写控件名为“实时数据报表”,并设定行数和列数。设置报表时间:在B4,C4单元中分别输入“=Date($年,$月,$日) ”和“=Time($时,$分,$秒)”,这样在系统运行的时候,B4就可以显示当前的日期,C4中就可以显示当前时间。显示变量的实际值:利用数据改变命令语言和报表函数。选种A4单元,在数据改变命令语言中输入ReportSetCellValue(实时报表,4,1 , 当前实际温度VD30);,如图6.8所示。2)建立历史数据报表如图6.9所示,创建历史报表和表格样式设计与实时数据报表一样,并可以通过调用历史报表查询函数实现。在画面中建立一个按扭,命名为报表查询,在“弹起 时”命令语言中输入历史查询函数:ReportSetHistData2();。在设置报表的格式可以根据实际需要设置,在组态王运行的时候可以进行相应 数据变量的选择。6.3.5 建立报警窗口1) 历史报警窗在工具箱中选用报警窗口工具,在面板中绘制报警窗口,添加文本等就可。如图6.10所示。由于前面已经设置了报警变量,所以当变量值超过所设置的温度时,那就会在报警画面中被记录。6.10 历史报警设置2) 实时报警窗口其制作过程和历史报警窗口类似,不同的是,实时报警画面是要弹出来的,所以必须在新建画面的时候,把大小调好,并选择是“覆盖式”。画面的自动弹出,在事 件命令语言中,输入showpicture(实时报警窗口);本站点$新报警=0;,这样每次新报警有产生,就会立刻出报警画面。如图6.11 所示。6.11 实时报警设置6.3.6建立参数监控画面此画面可在线查看当前程序的参数,分别有设定的温度、当前实际温度、运行时间,比例系数P,积分系数I,微分系数D。可以通过手动按扭和自动按扭进行 PID参数的选择。双击自动按钮,系统按程序初始的PID参数进行控制,双击手动按钮,可在线修改PID参数,并使得程序在设定的PID参数下运行。当 然,也可以修改设定的目标温度值,如图6.12所示。第七章 系统测试组态王和PLC编程软件不能同时启动,因为他们使用的是同一个端口,要想在线利用组态王监控程序,那就先必须在关闭组态王的情况下,先把PLC程序下载到PLC中,并且运行程序,再把编程软件关闭,才可以启动组态王,这样就可以利用组态王在线监控了。7.1启动组态王打开组态王的项目工程管理器,点击窗口栏中“WIEW”或者在画面中点击右键,选择“切换到VIEW”,启动组态王,进入主画面。这个时候,系统会自动打 开一个信息窗口,可以通过信息窗口来知道,组态王的运行情况以及和PLC的连接是否成功。如果连接不成功,会出现通信失败的提示语言,那就要查明原因,否 则不能监控。如果提示连接设备成功,窗口会显示开始记录数据,那就表示可以开始系统的运行了。进入系统的主画面后,如图7.2所示。如果没有点击启动按扭,PLC是处于待命停止阶段的,指示灯是红色的。当确定可以开始系统运行的时候,单击启动按 扭,就相当于按下连在PLCI0.1口的开关,程序进入加热模式,指示灯变绿,计时开始。炉子里的灯相当于实物中加热炉的加热指示灯,两者亮暗的步伐是同 步的。如果点击关闭按扭,相当于按下PLC中与I0.2想连接的关闭开关,系统进入停止阶段。画面的下方设置了6个链接,可以点击进入选种画面。如果提示 连接设备成功,窗口会显示开始记录数据,那就表示可以开始系统的运行了。7.2 参数监控和设定如图7.3所示,画面的上半部分可以查询当前的实际温度和系统运行时候的PID参数,还可以观察系统运行了多少时间。下半部分设置改变系统的运行参数。点 击“手动”按扭,可以在下面的PID参数栏中输入新的PID值,系统在下一采样周期就可以按照设定的参数执行。如果想恢复默认的参数值,可以点击“自动” 按扭,点击按扭后,系统又恢复到原来的默认参数。按扭前的灯是用来显示系统正处于哪一种模式下运行。7.3 报警信息提示报警窗口实时报警窗口和历史报警窗口,实时报警窗口是无论用户处于哪个界面,一旦满足报警条件,实时报警窗口就会弹出来,提示用户,本论文中在报警窗口中 设置了两个按扭,一个是停止按扭,按下就会使程序进行停止模式,用于应急,如果用户觉得引起报警的事件还不足于停止设备的运行,那就可以点退出按扭,退出 实时报警窗口。实时报警不能记录。只能显示当前的报警事件历史报警窗口是负责记录过去系统的报警事件,它不会自己弹出来,用户需要切换到他的画面进行查询。系统中设定了一旦温度超过105就报警,但实际操作中,如果没有特殊的情况,一般不会出现那么大的超调,下面的画面是人为的使系统温度过高,来测试一下报警的功能,如图7.4和图7.5所示。7.4报表系统查询数据报表有利于工程人员进行统计、分析和处理。组态王提供的是内嵌式报表系统,可以按自己意愿设置报表格式,下图中集中了实时数据报表和历史数据报表。7.5趋势曲线监控7.5.1实时趋势曲线进入此画面,可以看到当前实际温度和设定目标温度两条曲线的实时走势。蓝色线表示设定温度的趋势曲线,红色表示当前实际
展开阅读全文