洛陽理工學院游泳池水温控制系统设计课程答辩王明超2014/12/29班级:B110411学号:B11041117姓名:王明超游泳池水温控制系统设计2摘要随着人民生活的进步,恒温游泳池走进了我们的生活,而游泳池的保温控制器,它能自动控制游泳池的水温。从而大大的方便了人们对游泳池水温恒温的需求。本文对该测控仪系统进行了分析设计。本游泳池恒温控制系统选用AT89C51单片机作为控制器,利用PID和PWM技术实现对游泳池的水温控制。该控制系统主要由CPU主控制模块、主电源模块、键盘处理模块、温度采集模块、继电器控制模块及LED显示模块构成。本游泳池恒温控制系统选用AT89C51单片机作为控制器,利用PID和PWM技术实现对游泳池的水温控制。该控制系统主要由CPU主控制模块、主电源模块、键盘处理模块、温度采集模块、继电器控制模块及LED显示模块构成。DS18B20用来采集温度信号,其体积小,精度高,适用电压宽,抗干扰能力强。继电器控制两台电机的转动,分别对应控制热水阀和冷水阀,从而,实现水温的实时控制。最后,采用共阳极数码管LG5641A动态显示水温。关键词:AT89C51单片机,游泳池,温度控制,模糊控制。游泳池水温控制系统设计3Ⅰ目录第1章绪论31.1选题的背景与意义31.1.1自动控控系统可温度控制系统31.2温度控制系统的设计3第2章系统总体设计42.1方案的选择42.2系统总体设计4第3章硬件设计53.1硬件选型53.2硬件电路设计53.2.1主电源电路53.2.2温度采集模块63.2.3按键输入电路63.2.4继电器模块73.2.5显示模块7第4章软件设计84.1系统程序设计84.2各部分程序流程图84.2.1.计算温度子程序94.2.2.按键处理子程序94.2.3.计算温度子程序10第5章仿真结果125.2仿真结果125.1本系统仿真135.2仿真结果13结论14参考文献15附录16游泳池水温控制系统设计4第1章绪论1.1选题的背景与意义1.1.1自动控控系统可温度控制系统电子技术的发展,特别是随着大规模集成电路的产生,给人们的生活带来了根本性的变化,如果说微型计算机的出现使现代的科学研究得到了质的飞跃,那么单片机技术的出现则是给现代工业控制测控领域带来了一次新的革命。目前,单片机在工业控制系统诸多领域得到了极为广泛的应用。特别是其中的C51系列的单片机的出现,具有更好的稳定性,更快和更准确的运算精度,推动了工业生产,影响着人们的工作和学习。自动控制系统在各个领域尤其是工业领域中有着及其广泛的应用,温度控制是控制系统中最为常见的控制类型之一。随着单片机技术的飞速发展,通过单片机对被控对象进行控制日益成为今后自动控制领域的一个重要发展方向,电流、电压、温度、压力、流量、流速和开关量都是常用的主要被控参数。例如:在冶金工业、化工生产、电力工程、造纸行业、机械制造和食品加工等诸多领域中,人们都需要对各类加热炉、热处理炉、反应炉和锅炉中的温度进行检测和控制。采用MCS-51单片机来对温度进行控制,不仅具有控制方便、组态简单和灵活性大等优点,而且可以大幅度提高被控温度的技术指标,从而能够大大提高产品的质量和数量。因此,单片机对温度的控制问题是一个工业生产中经常会遇到的问题。单片机具有集成度高,处理能力强,可靠性高,系统结构简单,价格低廉的优点,因此被广泛应用。温度控制系统则是单片机在工业生产中的一个典型的应用。温度控制系统就是通过单片机的控制,使温度再设定的范围内。在现代社会中,温度控制不仅应用在工厂生产方面,其作用也体现到了各个方面,随着人们生活质量的提高,酒店厂房及家庭生活中都会见到温度控制的影子,温度控制将更好的服务于社会。空调等家用电器随着生产技术的发展和生活水平的提高越来越普及,一个简单,稳定的温度控制系统能更好的适应市场。1.2温度控制系统的设计我国目前在恒温控制技术这方面总体技术水平处于20世纪80年代中后期水平,成熟产品主要以“点位”控制及常规的PID控制器为主,它只能适应一般温度系统控制,难于控制滞后、复杂、时变的温度系统控制。在适应于较高控制场合的智能化、自适应控制仪表领域内,国内技术还不十分成熟,形成商品化并广泛应用的控制仪表较少。本文设计一个游泳池恒温自动控制系统,游泳池中的水温可以在一定范围内由人工设定,并能在环境温度降低时实现自动调节,以保持与设定的温度一致。利用单片机AT89C51实现水温的智能控制,采用数字温度传感器读出水温,并在此基础上将水温调节到键盘设定的温度,并通过数码管显示器实现当前温度的实时显示。游泳池水温控制系统设计5第2章系统总体设计2.1方案的选择方案一:采用运放等模拟电路搭建一个控制器,用模拟方式实现PID控制,对于纯粹的水温控制,这是足够的。但是附加显示、温度设定等功能,还要附加许多电路,稍显麻烦。同样,使用逻辑电路也可实现控制功能,但总体的电路设计和制作比较烦琐。方案二:采用FPGA实现控制功能。使用FPGA时,电路设计比较简单,通过相应的编程设计,可以很容易地实现控制和显示、键盘等功能,是一种可选的方案。但与单片机相比,价格较高,显然大材小用。方案三:单片机为控制核心的控制系统,尤其对温度控制,它可达到核心的控制作用,并且可方便实现数码显示、键盘设定及利用PID算法来控制PWM波形的产生,进而控制继电器的通断,最终实现游泳池的恒温控制,其所测结果精度也大大的得到了提高,利用PID算法来控制PWM波形的产生,并有效地控制数字脉冲的输出宽度,使固态继电器得到有效和有序的逻辑控制,不会使固态继电器产生误动作。论证选择方案三2.2系统总体设计此方案是以单片机为控制核心的控制系统,尤其对温度控制,它可达到核心的控制作用,并且可方便实现数码显示、键盘设定及利用PID算法来控制PWM波形的产生,进而控制继电器的通断,最终实现游泳池的恒温控制,其所测结果精度也大大的得到了提高,利用PID算法来控制PWM波形的产生,并有效地控制数字脉冲的输出宽度,使固态继电器得到有效和有序的逻辑控制,不会使固态继电器产生误动作。游泳池恒温自动控制系统主要由六部分组成CPU主控制模块、主电源模块、键盘处理模块、温度采集模块、继电器控制模块及LED显示模块。CPU主控制模块采用AT89C51芯片,把数字温度传感器采集到的温度信号与原预先设定值进行比较,然后根据其差值通过PID调节进行整定,控制继电器的通断,进而控制冷水还是热水电机的转动,能用键盘输入数据以及温度信号的实时显示。本着简单、实用的原则,这里最后选用了一个比较典型的硬件方案:测温电路可选用DS18B20集成数组测温电路;芯片采用常见的AT89C51显示方式采用1602字符液晶显示器1602键盘采用4独立按键次用RS-232串口与计算机通行。游泳池水温控制系统设计6图2.2.系统框图第3章硬件设计3.1硬件选型游泳池恒温自动控制系统主要由六部分组成CPU主控制模块、主电源模块、键盘处理模块、温度采集模块、继电器控制模块及LED显示模块。3.1.1CPU主控模块等主要部分元件选型CPU主控制模块采用AT89C51单片机,把数字温度传感器采集到的温度信号与原预先设定值进行比较,然后根据其差值通过PID调节进行整定,控制继电器的通断,进而控制冷水还是热水电机的转动,能用键盘输入数据以及温度信号的实时显示。主电源模块采用整流桥进行AC-DC电源变换,电容用470uf5v,0.1uf,100uf5v的构成稳压谐波调节电路,稳压器采用三端稳压集成电路LM7805。由于单片机供电电压5V故继电器采用5V-SPDTOMRON继电器即可满足设计要求。温度采集采用DS18B20温度传感器。DS18B20是一种新型的“一线器件”,其体积更小、更适用于多种场合、且适用电压更宽、更经济。DALLAS半导体公司的数字化温度传感器DS18B20是世界上第一片支持“一线总线”接口的温度传感器。温度测量范围为-55~+125摄氏度,可编程为9位~12位转换精度,测温分辨率可达0.0625摄氏度,分辨率设定参数以及用户设定的报警温度存储在EEPROM中,掉电后依然保存。3.2硬件电路设计3.2.1主电源电路键盘设定复位电路数据采集1数据采集2单片机电源电路数据PID调整LED数码管显示固态继电器2电机2固态继电器1电机1游泳池水温控制系统设计7图3.2.1主电源电路为防止电源之间的相互干扰,需对电路进行独立供电,本系统采用双电源输出,一个正常之用,一个应急备用。因此电源电路设计输出两路为+5V的稳压电源,同时主电路的开关元件为固态继电器,其直流侧的供电电源可选择为+5V。由于固态继电器内部带有光耦,其直流侧与交流侧相互隔离,因此其直流侧的供电电源可与数字电路的+5V电源共用,另外DS18B20也用+5V的稳压电源供电,另外一个+5V的稳压电源用来备用,当遇到系统断电时可以把那个备用的稳压电源来应急,这样就给系统增加了一道应急保险。本装置的直流稳压电源采用通常的桥式全波整流、电容滤波、三端固定输出的集成稳压器件进行设计。系统的供电电源电路如图2所示3.2.2温度采集模块由于在传统的模拟信号远距离温度测量系统中,需要很好的解决引线误差补偿问题、多点测量切换误差问题和放大电路零点漂移误差问题等技术问题,这样才能达到较高的测量精度。而且一般监控现场的电磁环境都非常恶劣,各种干扰信号较强,模拟温度信号容易受到干扰而产生测量误差,影响测量精度。本设计的温度测量系统采用美国Dollas半导体公司的DS18B20温度芯片对游泳池的水温进行温度数据的采集。DS18B20数字温度计是单总线器件,具有线路简单,体积小的特点。因此,用它来组成一个测温系统在一根通信线上可以挂很多个这样的数字温度计。DS18B20的测温电路如图所示游泳池水温控制系统设计8图3.2.2.DS18B20的测温电路3.2.3按键输入电路在按键模块电路中有4个按键,温度设定范围是24℃到29℃,可通过温度上限加一减一按钮改变设定温度上限,温度下限加一减一按钮改变温度下限。四个键分别为:温度上限加一键,温度上限减一键,温度下限加一键,温度下限减一键图3.2.3.显示电路3.2.4继电器模块是一个控制电机的电路图,单片机通过P3.1和P3.4口的输出控制继电器游泳池水温控制系统设计9的开合并进行通讯,其中P3.1口的输出控制继电器RL1的开合进而控制COLDWATER电机的转动,决定向游泳池中加入冷水来降温;P3.4口的输出控制继电器RL2的开合进而控制HOTWATER电机的转动,决定向游泳池中加入热水来升温系统图3.2.4.继电器电路3.2.5显示模块用单片机驱动LCD数码管有很多方法,按显示方式分,有静态显示和动态显示,按译码方式可分硬件译码和软件译码之分。静态显示数据稳定,使用的硬件较多本电路采用共阳极数码管LG5641A进行动态显示,用P2.0~P2.7口作为位选控制,P0.0~P0.7口传输要显示的数据,数据线和位选线直接接AT89C51单片机的I/O口即可,因为I/O口输出电流很小并且加上了上拉电阻,这样可以对LCD进行驱动,它的电压值足以驱动LCD。本设计就是采用动态显示电路,其电路如图3.2.5所示。图3.2.5显示电路游泳池水温控制系统设计10第4章软件设计4.1系统程序设计系统的软件主要是采用C语言,对单片机进行变成实现各项功能。主程序对模块进行初始化,而后调用读温度、处理温度、显示、键盘等模块。用的是循环查询方式,来显示和控制温度,主程序的主要功能是负责温度的实时显示、读出并处理DS18B20的测量的当前温度值并负责调用各子程序,其程序流程如图4.1系统程序流程图。图4.1.系统程序流程图4.2各部分程序流程图4.2.1.计算温度子程序读出温度子程序的主要功能包括初始化,判断DS18B20是否存在,若存在则进行一系列的读操,作若不存在则返回。其程序流程图如图4.2所示。游泳池水温控制系统设计11图4.2.读程序流程图4.2.2.按键处理子程序按键处理子程序主要是负责参数的设置,主程序每循环一次都要对按键进行