51单片机水温水位控制系统(DOC)
51单片机水温水位控制系统(DOC)
摘要本温度设计采用现常见的89C51单片机,配以DS18B20数字温度传感器,该温度传感器可自行设置温度上下限。
单片机将检测到的温度信号与输入的温度上、下限进行比较,由此作出判断是否启动继电器以开启设备。
系统包括单片机模块、温度检测模块、水位检测模块和驱动电路设计四个部分。
文中对每个部分功能、实现过程作了详细介绍。
关键词: DS18B20数字温度传感器 89C51 水温水位目录一.概述 (3)1.1课题研究的目的及意义 (3)1.2技术指标 (3)二.总体设计方案 (3)三.详细设计方案 (3)1.1温度检测系统 (3)1.2水位检测系统 (5)四.元件说明 (6)1.1 工作原理 (6)1.2单片机的选择 (6)1.3温度传感器 (8)1.4水位传感器 (11)1.5 显示元件 (11)五.硬件模块设计 (12)1.1单片机模块设计 (12)1.2温度检测模块 (13)1.3水位检测模块 (14)1.4 控制模块 (15)1.5 驱动电路设计 (15)六.软件设计 (16)1.2 温度检测系统 (17)1.3 水位检测系统 (18)1.4 DS18B20主程序............................................... 错误!未定义书签。
七.结论 (18)八.参考文献 (18)附录 (18)单片机与显示器件连接图 (18)系统软件源代码 (18)一.概述1.1课题研究的目的及意义目前市场上太阳能热水器的控制系统大多存在功能单一、操作复杂、控制不方便登问题,很多控制器只具有温度和水位显示功能,不具有温度控制功能。
即使热水器具有辅助加热功能,也可能由于加热时间不能控制而产生过烧,从而浪费电能。
鉴于此,我以89C51单片机为检测控制核心,采用数码管显示温度,设计了一种太阳能热水器微控制器,实现了温度和水位参数的实时显示,具有温度设定、水位控制功能。
1.2技术指标设计并制作一个基于单片机的温度控制系统,能够对炉温进行控制。
51单片机编写水位测控系统程序
***********************51液位控制程序******************************* ********带声光报警,锁存器控制LED显示器,通过控制脉冲数来*********** ****控制步进电机的步数来控制阀门的开度,通过采集的数据来决定脉冲数**** #include<reg51.h>unsigned char code table[]={0xfc,0x60,0xda,0xf2,0x66,0xb6,0xbe,0xe0,0xfe,0xf6,0xee,}; //0-9七段共阴数码管编码表sbit START=P3^0;sbit EOC=P3^1;sbit OE=P3^2;sbit pwm=P3^3; //控制放气门开度sbit ONOFF=P3^4; //控制泄水门开或关sbit ALARM=P3^5; //报警喇叭sbit xiaodeng=P3^6; //报警光显示sbit LED1=P3^7;sbit LED2=P3^8; //两个锁存器的锁存使能端sbit zheng=P1^0; //控制步进电机正转的端子sbit fan=P1^1; //控制步进电机反转的端子unsigned int number=0; //开始时加水阀门开度为0unsigned int count1=0;unsigned int count2=0;unsigned int count3=0;unsigned int P;unsigned int diyici=1; //标志,刚开始加水是低于下限值不报警标志//////////C毫秒延时子程序//////////////////delay(uint c){uchar a,b;for( ;c>0;c--)for(b=500;b>0;b--)for(a=2;a>0;a--);}///////////////////定时器初始化///////////////void timer0(void){TMOD=0X01;TH0=FF;TL0=FF; //1us进一次中断TH1=15;TL1=A0; //0.06 ms进一次中断ET0=1; //T0开中断EA=1; //开总中断TR0=1; //启动定时器T0TR1=0; //初始关闭定时器T1}////// AD采集、数字处理//////void shuzi(uint k){ k=k*1.0/255*999; //假设压力是0-999Paif(k<设定值){Dk=设定值-k;zheng=1;//电机正转number=比例*Dk} //PWM0-100间变化if(k>设定值){Dk=k-设定值;fan=1;//电机反转number=比例*Dk;}bai=k/100;shi=k%100/10;ge=k%10;}////////数码管显示程序(锁存器控制,P2口输出)////// void xianshi(uchar bai,uchar shi,uchar ge){P2=0XFE;//选位LE2=1;//位码使能LE2=0;P2=table[ge];LE1=1;//段码使能LE1=0;delay(1);P2=0xfd;LE2=1;//位码使能LE2=0;P2=table[shi];LE1=1;//段码使能LE1=0;delay(1);P2=0XFb;//选位LE2=1;//位码使能LE2=0;P2=table[bai];LE1=1;//段码使能LE1=0;delay(1);}///////////AD转换及数据处理子程序///////////// Unsigned int fun1();{ START=1;START=0;OE=1; //转换结束输出使能P=P0; //AD转换结果赋给POE=0; //停止输出START=1; //启动下一次转换START=0;}//////////////主程序///////////////void main() //主程序{ timer0();START=0; //初始时不进行AD转换ALARM=0;xiaodeng=0; //初始时不报警OE=0;pwm=100; //全开状态加水ONOFF=0; //开始泄水门关闭,有利于空箱加水while(1) //死循环{fun1(); //调用一次转换子程序shuzi(P); //AD采集、数字处理xianshi(uchar bai,uchar shi,uchar ge); //显示if(P>上限值||P<下限值) //判断压力是否超限{if(P>上限值) //压力任超出上限则进行报警{ALARM=1;TR1=1;While(P>上限值){fun1(); //调用一次转换子程序shuzi(P); //AD采集、数字处理xianshi(uchar bai,uchar shi,uchar ge); //显示if(count3>=30)//如果报警超过30秒则关进水阀number=0;}}if(P<下限时) //压力任超出下限则进行报警{ if(diyici=1){ALARM=0;TR1=0;}else{ ALARM=1;TR1=1;while(P<下限值){fun1(); //调用一次转换子程序shuzi(P); //AD采集、数字处理xianshi(uchar bai,uchar shi,uchar ge); //显示}}diyici=0;}if(下限值<PP<176上限值) //压力正常后则不进行报警{ALARM=0;TR1=0;Count3=0;//清空计数值if(diyici=0)ONOFF=1;//当空箱加水高于下限值时泄水阀打开diyici=2;}}}void TO interrupt 1{ TH0=FF;TL0=FF;pwm=!pwm; //1us进一次,进一百次是0.0001s即是10khz if(++count1==number){TR0=0 //脉冲数达到后关定时器使其不输出脉冲count=0;}}void T1 interrupt 3 //0.06ms进一次{ count2++;TH1=15;TL1=A0;If(count2==1600) //约1s闪一次{xiaodeng= !xiaodeng;count2=0;count3++;}}。
[毕业设计]基于51单片机的水箱控制系统
论文设计说明书题目:海丰热电公司800立方米水箱单片机控制系统姓名:指导教师:摘要本单片机系统设计的目的是应用单片机控制技术,以8051单片机为核心控制庆丰热电公司的800立方米的水箱的水位,并实现了报警和手动、自动切换功能。
该系统操作方便、性能良好,比较符合电厂生产用水系统控制的需要。
本文还详细的给出了相关的硬件框图和软件流程图,并编制了该汇编语言程序。
关键词:单片机水位控制报警目录摘要 (1)目录 (2)一、单片机的说明 (3)1、8051单片机简介 (3)2、单片机的时序 (5)3、引脚极其功能 (6)二、水箱给水设备系统的构成 (10)三、本系统8051单片机控制部分 (12)四、本系统的工作原理 (13)五、主程序框图 (14)六、本系统程序清单 (17)七、附录:本系统电路图 (21)一 8051单片机系统说明1. 8051单片机简介目前,8051单片机在工业检测领域中得到了广泛的应用,因此我们可以在许多单片机应用领域中,配接各种类型的语音接口,构成具有合成语音输出能力的综合应用系统,以增强人机对话的功能。
89C51是Intel公司生产的一种单片机,在一小块芯片上集成了一个微型计算机的各个组成部分。
每一个单片机包括:一个8位的微型处理器CPU;一个256K的片内数据存储器RAM;片内程序存储器ROM;四个8位并行的I/O接口P0-P3,每个接口既可以输入,也可以输出;两个定时器/记数器;五个中断源的中断控制系统;一个全双工UART的串行I/O口;片内振荡器和时钟产生电路,但石英晶体和微调电容需要外接。
最高允许振荡频率是12MHZ。
以上各个部分通过内部总线相连接。
下面简单介绍下其各个部分的功能。
中央处理器CPU是单片微型计算机的指挥、执行中心,由它读人用户程序,并逐条执行指令,它是由8位算术/逻辑运算部件(简称ALu)、定时/控制部件,若干寄存器A、B、B5w、5P以及16位程序计数器(Pc)和数据指针寄存器(DM)等主要部件组成。
基于51单片机的智能水温水位控制系统
基于51单片机的智能水温水位控制系统作者:王家祥黄余双张一凡来源:《中国科技博览》2019年第08期[摘要]此水温控制系统采用市场上常见的89C51单片机进行数据的处理,使用DS18B20数字传感器进行温度的采集和数据的处理,利用单片机进行设置和储存温度的上限和下限。
单片机对接收到的温度信号与设定值进行比较判断,从而进行是否启动继电器来打开加热器等设备。
系统分为四个部分:温度检测部分、单片机部分、水位检测部分和驱动电路的设计。
[关键词]DS18B20数字温度传感器;89C51;水温水位电路中图分类号:G712 文献标识码:A 文章编号:1009-914X(2019)08-0081-01目前市场上的太阳能热水器控制系统大多存在功能单一、运行困难、控制不准确等问题。
市场上的加热器只显示温度和水位,实现不了对温度的精确控制,即使有部分热水器有辅助加热功能,也极易发生过烧或者干烧,从而浪费大量的电能,更有甚者会发生危险。
为此,我们以89C51单片机为核心的控制和检测,采用数字管显示温度,设计了太阳能热水器微控制器,从而实现了温度、水位、温度设定和水位控制功能。
炉温可手动设定在一定范围之内,当水箱水温发生变化时可以实现自动控制。
通过继电器的开合,控制加热的时间,使水箱水温保持在人工设定的温度范围之内,从而达到对水温的精确控制。
(1)温度的设定范围为25到85摄氏度,最小区分度为0.1摄氏度,温度控制的误差控制在正负0.5摄氏度之内。
(2)使用四位一体数码管实时显示温度的精确值1总体设计方案使用DS18B20温度传感器进行温度的采集,实时发送给89C51单片机,让单片机对接收到的数据进行分析与处理,并判断是否开合继电器进行加热或者冷却,自行设计水位电路,通过LED灯来显示实时的水位,使用三个按键来设定所需的温度,当水温超过设定值时启动蜂鸣器报警,而且当水箱缺水时,启动控制水泵的继电器进行加水的操作。
2总体结构设计在整个系统的电路设计主要分为三个部分:(1)主控芯片89C51;(2)数据显示部分;(3)传感器部分。
基于51单片机的水温测控系统实验报告
摘要本次实验是软硬件相结合的实验,通过传感器得到的阻值与其它电阻,可以搭建一个电桥,将水温转化为电压,然后通过放大器将电压放大到所需要的值,将所得的电压送入单片机的AD转换电路,将模拟信号转换成数字信号,从而在单片机的液晶屏上显示当前的温度。
此烧水壶是可控制的,即设定温度,使水加热到设定温度且保温,此控制算法采用PID控制算法来控制继电器的通断,来保证水温恒定在设定温度处。
一、设计要求1.传感器:Pt100铂热电阻2.测量放大器:自己设计与搭建3.被控对象:400W电热杯,约0.5公斤自来水4.执行机构:12V驱动,5A负载能力的继电器5.控制系统:51单片机6.控制算法:PID7.温度范围:环境温度~100度8.测量误差1度,控制误差2度二、设计原理及方案1.热电阻传感器热电阻传感器是利用导体或半导体的电阻值随温度变化而变化的原进行测温的。
热电阻的工作原理:温度升高,金属内部原子晶格的振动加剧,从而使金属内部的自由电子通过金属导体时的阻碍增大,宏观上表现出电阻率变大,电阻值增加,我们称其为正温度系数,即电阻值与温度的变化趋势相同。
2.实验原理框图3.测量放大器电路图说明:电位器R10用来调节偏置电压,而电位器R7则用来调节增益。
实验时,用R10来调节零点,用R7来调节满度。
该电路将0℃-100℃转换为0-5V 电压。
上述电路图采用仪表放大器,将铂热电阻两端的电压U2与电位器R10两端的电压U1差放大,放大器输出电压U0与电压差的关系为:)-)(2(1127248U U R RR R U o ⨯+=由铂热电阻阻值与水温的关系可知,铂热电阻的范围是ΩΩ140~100。
则100)10012(12-140)140(1212)-(100)10012(12-100)10012(1212⨯+⨯+≤≤⨯+⨯+K K U U K K 整理得:V U U 04.0)-(012≤≤而仪表放大器的输出电压为0~5V ,所以放大倍数大约为:5/0.04=125。
基于51单片机水温检测控制系统说明书
基于单片机的水温检测控制系统设计学生姓名王培同院系名称机电学院专业名称机械电子工程班级机电132学号201300384228指导教师完成时间目录1 引言 (3)2 设计要求 (3)2.1 基本要求 (3)2.2 扩展功能 (3)3 总体方案设计 (3)3.1 方案论证 (3)3.1.1 方案一 (3)3.1.2 方案二 (4)4 硬件设计 (4)4.1 单片机系统 (4)4.2 数字温度传感器模块 (5)4.2.1 DS18B20性能 (5)4.2.2 DS18B20外形及引脚说明 (5)4.2.3 DS18B20接线原理图 (6)4.2.4 DS18B20时序图 (6)4.2.5 数据处理 (7)4.3 显示电路 (8)4.4 声光报警电路 (9)4.5 键盘输入电路 (10)5 软件设计 (11)5.1 主程序模块 (11)5.2 读温度值模块 (11)5.3 中断模块 (11)5.4 温度设定、报警模块 (12)6 源程序 (12)7 总结 (12)参考文献: (13)1 引言随着人们生活水平的不断提高,单片机控制无疑是人们追求的目标之一,它所给人带来的方便是不可否定的,各种数字系统的应用也使人们的生活更加舒适。
数字化控制、智能控制为现代人的工作、生活、科研等方面带来方便。
其中数字温度计就是一个典型的例子。
数字温度计与传统的温度计相比,具有读数方便、测温范围广、测温精确、功能多样话等优点。
其主要用于对测温要求准确度比较高的场所,或科研实验室使用,该设计使用STC89C52RC单片机作控制器,数字温度传感器DS18B20测量温度,单片机接受传感器输出,经处理用LCD实现温度值显示。
2 设计要求2.1 基本要求实现实时温度显示,测温范围0~1200C,误差50C以内。
2.2 扩展功能温度报警,能任意设定温度范围实现温度的报警。
温度控制,利用继电器控制热得快,当设置好温度上下限后,当没有超过温度上限时,继电器吸合,热得快通电,加热水温。
基于51单片机的饮水机水温控制系统的实现
基于51单片机的饮水机水温控制系统的实现作者:张铭源马万国马甲甲来源:《电脑知识与技术》2016年第26期摘要:本系统以STC89C52单片机为核心,实现饮水机饮用水制冷,主要包括DS18B20温度采集、按键操作、单片机控制、继电器驱动、制冷片、数码管数字显示等部分。
本系统通过信息的交互而实现温度设定、控制和显示。
关键词:半导体制冷片;单片机;Ds18B20中图分类号:TP311 文献标识码:A 文章编号:1009-3044(2016)26-0231-02Realization of the Water Cooler Water Temperature Control System Based on 51 Single Chip MicrocomputerZHANG Ming-yuan1,MA Wan-guo2,MA Jia-jia2(1.Nanjing 29 Middle School, Nanjing 210000, China; 2.Hohai university Wen Tian College, Maanshan 243000, China) Abstract: STC89C52 single-chip microcomputer as the core, Implement water dispenser water cooling ,this system mainly includes the DS18B20 temperature acquisition, button operation, single-chip microcomputer control, relay drivers,refrigeration, such as digital tube digital display part. This system through information interaction of temperature setting, control and display.Key words: Semiconductor refrigeration piece; MCU; Ds18B201 硬件电路设计1.1 控制系统方框图本系统中温度的恒温控制采用STC89C52单片机为核心控制器件,实现对水温在的自动控制。
(完整word版)基于单片机的水位控制系统设计
基于单片机的水位控制系统设计摘要随着微电子工业的迅速发展,单片机控制的智能型控制器广泛应用于电子产品中,为了使学生对单片机控制的智能型控制器有较深的了解。
经过综合分析选择了由单片机控制的智能型液位控制器作为研究项目,通过训练充分激发学生分析问题、解决问题和综合应用所学知识的潜能。
设计一种基于单片机水塔水位检测控制系统。
该系统能实现水位检测、电机故障检测、处理和报警等功能,实现超高、低警戒水位报警,超高警戒水位处理。
介绍电路接口原理图,给出相应的软件设计流程图和汇编程序,并用Proteus软件仿真。
关键字:电子;水位控制;单片机;ProteusAbstractWith the rapid development of microelectronics industry, intelligent MCU is widely used in electronic products, in order to enable students to have a deeper understanding of the intelligent controller controlled by single chip microcomputer. After a comprehensive analysis of selected by the intelligent liquid level controller MCU control as the research project, through training to fully stimulate students to analyze problems, to solve problems and the comprehensive application of knowledge potential. Based on the design of a single-chip microcomputer control system of water tower water level detection. This system can realize the water level detection, motor fault detection, processing and alarm functions, and realize the high, low water level warning alarm, high warning level processing. The interface circuit schematic diagram, the corresponding software design flow chart and assembler, and simulation with Proteus software.Keywords:electronic; water level control; MCU; Proteus1引言水塔供水的主要问题是塔内水位应始终保持在一定范围,避免“空塔”、“溢塔”现象发生。
基于51单片机水温控制系统
基于51单片机水温控制系统1.引言科技是社会发展的中流砥柱,而近几年比较热门的电子技术更是被广泛应用于各行各业。
电子技术衍生的电子产业更是如火如荼,蓬勃发展的电子产业日益趋向智能化、信息化。
2.总体设计控制器采用单片机STC89C51,温度传感器采用DS18B20,显示采用4位LED数码管,报警控制器采用有缘蜂鸣器、LED灯实现,按键用来设定报警上下限温度并将设置好的值保存在STC89C51的EEPROM中(具有掉电保护功能)。
当实测温度值小于设定的温度下限值时系统开启继电器间接控制接在继电器常开端上的加热棒,继电器一开启热得棒就开始工作,继电器关闭热得棒也随着停止工作。
本设计的具体的系统方案如图1所示。
图1 系统方案如图图2 程序流程图3.软件部分3.1 程序设计void main()是程序的主函数,用于构建框架。
程序的开头一般用于初始化和赋值变量,正常的程序运行一次后便结束了,但我们需要不断地运行来检验结果,所以在初始化后加入了死循环,使程序持续运行。
主函数在整个主程序的设计中最好放适量的代码,避免过多。
具体的代码是用函数进行封装然后在主函数进行调用。
程序流程图如图2所示。
3.2 软件使用系统软件测试KEIL软件是单片机编程的一款常用软件,创建空白文件编程编译调试生成HEX文件.随后下载到单片机中,下载器选用PL2303。
观察系统运行的状态,进而进行反复的修改调试程序,得到一个较为完善的程序。
在系统软件调试过程中遇到以下几个问题:(1)数码管没有正常显示出现了闪烁现象。
解决方法:闪烁的原因为每一位显示延时间期过短使得显示频率过快,导致人眼生物极限无法看清超速的显示,只需要调整延时函数就可以显示正常。
(2)EEPROM存储错误。
解决方法:一开始的时候在读写数据前都没有做任何的操作,本以为这样就可以完成数据的存储,但是并没有想的那样,在读与的时候出现与进去的和读出来的并没有相同,后通过查阅资料得知,STC单片机内部的EEPROM在写入数据之前心须擦除扇区,否则写入的数据就是和本身的数据进行相与的结果,而在程序上添加了在写入数据之前加上擦除扇区后,数据存储正常。
推荐-51单片机控制的水塔水位检测 课程设计word格式 精品
目录第1章概述1.1 背景介绍随着科学技术的发展,单片机作为嵌入式微控制器在工业测控系统,智能仪器和家用电器中得到广泛应用。
在实时检测和自动控制的单片机应用系统中,单片机往往是作为一个核心部件来使用。
水塔水位控制系统的基本要求是能够在无人监控的情况下自动进行工作,在水塔中的水位到达水位下限时自动启动电机,给水塔供水;在水塔水位达到水位上限的时候自动关闭电机,停止供水。
并能在供水系统出现异常的时候能够发出警报,以及时排除故障,随时保证水塔的对外的正常供水作用。
水塔是在日常生活和工业应用中经常见到的蓄水装置,通过对其水位的控制对外供水以满足需要,其水位控制具有普遍性。
不论社会经济如何飞速,水在人们正常生活和生产中起着重要的作用。
一旦断了水,轻则给人民生活带来极大的不便,重则可能造成严重的生产事故及损失,从而对供水系统提出了更高的要求,满足及时、准确、安全充足的供水。
如果仍然使用人工方式,劳动强度大,工作效率低,安全性难以保障,由此必须进行自动化控制系统的改造。
从而实现提供足够的水量、平稳的水压、水塔水位的自动控制有设计低成本、高实用价值的控制器。
该设计采用分立的电路实现超高、低警戒水位处理,实现自动控制,而达到节能的目的,提高了供水系统的质量。
1.2 设计要求及意义水位控制在日常生活及工业领域中应用相当广泛,比如水塔、地下水、水电站等情况下的水位控制。
自动检测水位的检测系统能根据水位变化的情况自动调节。
本次课题采用单片机进行主控制,利用水的导电性测量水位的变化,把测量到的水位变化转换成相应的电信号,用单片机对接收到的信号进行数据处理,完成水位的检测、控制及故障报警等功能。
本次课程设计对我有以下意义:(1) 通过这次课程设计,加深对单片机理论方面的理解。
(2) 掌握单片机的内部模块的应用,如片内外存储器、A/D转换器等。
(3) 了解和掌握单片机应用系统的软硬件设计过程、方法及实现,为以后设计和实现单片器应用系统打下良好基础。
基于51单片机的红外遥控水温控制系统的设计
【摘要】本设计基于AT89C51单片机为控制核心,片外配合红外线遥控模块、水温加热模块开关、基于Dallas单线数字式的DS18B20温度传感器模块、蜂鸣器报警模块、按键模块、LCD1602液晶显示器模块、晶振电路模块、复位电路模块以及电源模块为一体构成无线水温控制系统。
本水温控制系统设计采用自上而下的模块化设计,具有形象直观、操作简单、结构紧凑、温度控制灵活等优点。
本系统能够对水温进行实时并且快速地温度采集、温度值显示、超温报警以及加热等功能,并且能够通过红外线遥控器实现对温度值的设定。
经过大量实验测试,本次设计的系统通用性强、功能齐全、简单实用,值得在工控领域被大量推广,它能够将实现水加热系统的自动化,对企业及社会的发展具有重要意义。
【关键词】:AT89C51,DS18B20温度传感器,LCD1602液晶显示器ABSTRACTThe design is based on AT89C51 single chip microcomputer as control core, chip with infrared remote control module, the temperature of the water heating module switch, based on Dallas digital DS18B20 temperature sensor module, buzzer alarm module, a key module, LCD1602 liquid crystal display module, crystal oscillator circuit module, reset circuit module and power module are integrated to form a wireless temperature control system. The water temperature control system design uses the modular design from top to bottom, has the advantages of visual image, simple operation, compact structure, flexible temperature control. The system can real-time temperature and rapid temperature acquisition, temperature display, temperature alarm, heating and other functions, and can realize the setting temperature value through the infrared remote controller. After a lot of experiments testing, the design of the system has strong universality, complete function, simple and practical, it is worth to be popularized in the field of industrial control, it will be able to realize automatic water heating system, has important significance to the development of enterprises and society.【KEY WORD】:AT89C51,DS18B20,LCD1602目录一、引言 (1)(一)选题背景 (1)(二)设计意义 (1)(三)设计任务 (2)二、总体方案设计 (3)(一)方案的选择 (3)(二)方案简述 (3)三、元器件介绍 (5)(一)AT89C51单片机 (5)(二)DS18B20温度传感器 (7)(三)红外遥控系统介绍 (8)四、系统硬件设计 (11)(一)原理图描述 (11)(二)DS18B20温度传感器模块 (12)(三)加热器开关模块 (12)(四)蜂鸣器报警模块 (12)(五)LCD1602液晶显示器模块 (13)(六)按键模块 (13)五、系统软件设计 (15)(一)主程序设计 (15)(二)子程序设计 (15)总结 (18)致谢 (19)参考文献 (20)附录一系统原理图 (21)附录二PCB (22)附录三元器件清单 (23)附录四系统程序 (24)一、引言(一)选题背景对于温度的控制在工业活动中非常普遍,温度参数是一个最常用的被控参数,在化工、食品、燃料以及钢铁产业中都涉及到温控过程。
基于 51 单片机的水温控制系统设计
本科课程设计报告理工大学《单片机应用与仿真训练》设计报告基于51单片机的水温控制系统设计-1-摘要本设计是一个基于单片机的温度控制系统,该设计可以方便地实现温度采集、温度显示等功能。
本设计的温度控制部分采用单片机完成。
单片机有着体积小、功耗低、功能强、性能价格比高、使用电子元件较少、内部配线少、制造调试方便等显著优点,将其用于温度检测和控制系统中可大大地提高控制质量和自动化水平,具有良好的经济效益和推广价值。
利用单片机对温度进行测控的技术,日益得到广泛应用。
在众多的温度控制系统中,测温元件常常选用热敏电阻、半导体测温二极管、三极管、集成温度传感器等。
相比而言,集成温度传感器具有线性好、稳定度高、互换性强、易处理等突出优点,故在许多场所得到了广泛应用。
本系统中单片机作为下位机,完成测温任务,并通过与单片机连接的键盘可以实时设定测控温度的下限。
本系统还可以连接相应的外围加热电路,当环境温度低于设定下限温度时,单片机发出的指令,加热器起动对环境进行加热,当温度回升到下限温度时加热器停止加热。
为了便于操作,还设计一个简单的操作面板,它主要由键盘与按钮开关组成,通过操作面板可以进行系统的开停、RESET、设置温度下限告警值等。
键盘输入部分采用了键盘专用IC 74C922,简化了软件编程,用起来非常方便。
系统软件主要由初始化程序、主程序、监控显示程序等组成。
其中初始化程序是对单片机的接口工作方式,A/D 转换方式等进行设置;显示程序包括对显示模块的初始化、显示方式设定及输出显示;主程序则完成对采集数据进行处理。
该设计应用范围相当广泛,同时采用单片机技术,由于单片机自身功能强大,因而系统设计简单,工作可靠,抗干扰能力强,也可在此基础上加入通信接口电路,实现与上位机之间的通信。
目录1 概述 (4)2 系统总体方案及硬件设计 (5)2.1 系统原理框图 (5)2.2 单片机及输入输出模块选型 (5)2.3 电源模块的选择 (5)2.4 I/O 地址分配 (5)2.5 晶振及复位电路 (6)2.6 数码管驱动电路 (7)2.7 温度显示模块 (7)2.8 DS18B20 温度传感器 (8)2.8.1 DS18B20 的主要特性 (8)3 软件设计 (9)3.1 控制流程图 (9)3.2 DS18B20 的软件设计 (10)3.2.1 DS18B20 的初始化程序 (10)3.2.2 DS18B20 的写操作 (10)3.2.3 DS18B20 的读操作 (11)3.3 程序调试 (12)4 Proteus 软件仿真 (14)5 课程设计体会 (16)参考文献 (17)附1:源程序代码 (18)附2:系统原理图 (24)1 概述1971 年intel 公司霍夫研制出世界上第一块四位的微处理芯片intel4004 芯片,标志着第一代微处理器问世,单片机从此开始了它的发展历程。
基于51单片机的智能水温监控系统
图书分类号:密级:毕业设计(论文)基于51单片机的智能水温监控系统Intelligent Temperature Monitoring SystemBase on 51 SCM学生学号学生姓名学院名称信电工程学院专业名称电子信息工程技术指导教师年月日摘要本文介绍了一种基于51单片机,利用DS18B20对温度的采集,并进行温度的检测与控制,通过LCD液晶显示出来的智能水温监控系统。
该智能水温监控系统使用AT89S52控制器和DS18B20温度传感器,实现温度的检测和显示功能,它能设置上下限温度,当温度超出预设温度范围时报警,并且能够对被控现场的温度进行智能调节,以保持被控现场温度基本不变。
关键词单片机;温度检测;DS18B20;智能监控;AbstractThis paper introduces a kind of based on 51 SCM, the use of the collection of temperature DS18B20, and temperature measurement and control of, through the LCD display of intelligent water temperature monitoring system. The intelligent water temperature monitoring system using AT89S52 devices controller and the temperature sensor DS18B20, realize temperature testing and display function, it can set the lower temperature, when the temperature is beyond the scope of temperature alarm, and for the accused the temperature of the intelligent adjustment, to keep the temperature accused basically unchanged.Keywords Single chip microcomputer; Temperature detection; DS18B20; Intelligent monitoring;目录1 绪论 (1)1.1 设计的背景及意义 (1)1.2 设计的内容 (1)2 监控系统的控制原理及主要器件 (2)2.1 智能水温控制系统原理 (2)2.2 AT89S52单片机的组成结构及功能 (2)2.2.1 AT89S52单片机的主要功能 (2)2.2.2 AT59S52单片机的封装及其引脚功能说明 (3)2.2.3 外接晶振或外部振荡器引脚 (4)2.2.4 AT89S52复位 (5)2.3 温度测量传感器DS18B20介绍 (5)2.3.1 DS18B20简介 (5)2.3.2 DS18B20的引脚、封装和结构 (5)2.3.3 寄生电源 (7)2.3.4 温度测量原理 (7)2.4 LCD1602液晶 (8)3 系统控制电路原理 (10)3.1 单片机最小系统 (10)3.2 输入模块 (11)3.3显示模块 (11)3.4温度控制模块 (11)4 控制系统软件设计 (12)4.1控制系统主程序 (12)4.2 DS18B20控制程序 (13)4.2.1 DS18B20复位 (13)4.2.2 DS18B20写数据 (14)4.2.3 DS18B20读数据 (15)4.3温度读取及转换程序 (16)4.4温度控制程序 (17)4.5 LCD1602控制程序 (18)4.5.1 LCD1602写指令程序 (18)4.5.2 LCD1602写数据程序 (19)4.5.3 LCD1602初始化程序 (20)4.6 温度显示程序 (21)4.6.1 实际温度值显示程序 (21)4.6.2 显示设定温度值程序 (23)结论 (25)致谢 (26)参考文献 (27)附录 (28)附录1 (28)附录2 (29)1 绪论1.1 设计的背景及意义温度是工业生产中常见的工艺参数之一,任何物理变化和化学变化都与温度密切相关。
基于51单片机的水温自动控制系统的设计
基于51单片机的水温自动控制系统的设计学生:汪凡,信息工程学院指导教师:朱嵘涛,信息工程学院一、题目来源题目来源于生产/社会实际。
二、研究背景及其意义目的随着社会主义现代化的发展,在科学技术突飞猛进的今天,人工智能起到不可忽视的作用。
尤其是各种智能化的仪器、仪表在农、工业的广泛应用给社会带来了极大的便利。
文章就是一个利用温度来实现简单智能控制的例子。
它完成了从温度的采集、转换、显示以及控制的一系列任务。
由于篇幅关系,文章并未深入探讨温度的具体实例。
例如根据温度来控制热水器、电风扇等与温度有关的设备,提供了一个通过温度来控制设备的基本思想和原理。
测温仪器在各个领域的应用,智能化是现代温控系统发展的主流方向,特别是今年来,温度控制系统已应用到生活的各个方面,但是温度控制一直是一个未开发的领域,是与人们息息相关的一个问题。
针对这种实际情况,设计一个温度控制系统,具有广泛的应用前景和实际意义。
温度是科学技术中最基本的物理量之一。
物理、化学、生物等学科都离不开温度,在工业生产等许多领域,温度常常是表征对象和过渡状态的重要物理量。
各行各业对温度的要求越来越高,可见温度的测量和控制是非常重要的。
单片机在电子产品中的应用已经越来越广泛,在很多的电子产品中也用到了温度检测和温度控制。
随着温度控制器应用越来越广泛,各种试用于不同场和的温度控制器应运而生。
目前市场上经销的温度控制系统大多是采用模拟电路及继电器控制,存在电路繁琐,可调节性差,受温度影响大,响应速度慢,有噪音等缺点,针对这些缺点我们对它进行了再次设计。
实现满足题目要求的水温自动控制系统需要解决以下两个方面的问题:一是高精度的水温测量电路及其数据处理的实现,另一个是控制方法及其控制电路实现的研究。
数字控制方法远远优于模拟控制方法。
目前,实现水温的高精度控制常采用数字控制方法,可用的控制算法有开关控制、经典PID控制、模糊控制等。
为了追求控制系统具有最小的稳态误差、最好的动态过程,即具有最小的超调量和最短的稳定时间,人们一直在不断研究各种控制方法的应用。
AT89C51单片机水温控制系统
张鹏:基于AT89C51单片机的水温控制系统设计正文第1 页共25 页1 引言1.1 单片机1.1.1 单片机简介单片机是一种集成在电路芯片,是采用超大规模集成电路技术把具有数据处理能力的中央处理器CPU随机存储器RAM、只读存储器ROM、多种I/O口和中断系统、定时器/计时器等功能(可能还包括显示驱动电路、脉宽调制电路、模拟多路转换器、A/D转换器等电路)集成到一块硅片上构成的一个小而完善的计算机系统。
单片微型计算机简称单片机,是典型的嵌入式微控制器(Microcontroller Unit),常用英文字母的缩写MCU表示单片机,它最早是被用在工业控制领域。
单片机由芯片内仅有CPU的专用处理器发展而来。
最早的设计理念是通过将大量外围设备和CPU集成在一个芯片中,使计算机系统更小更容易集成进复杂的而对体积要求严格的控制设备当中。
INTEL的Z80是最早按照这种思想设计出的处理器,从此以后,单片机和专用处理器的发展便分道扬镳。
单片机又称单片微控制器,它不是完成某一个逻辑功能的芯片,而是把一个计算机系统集成到一个芯片上。
相当于一个微型的计算机,和计算机相比,单片机只缺少了I/O设备。
概括的讲:一块芯片就成了一台计算机。
它的体积小、质量轻、价格便宜、为学习、应用和开发提供了便利条件。
同时,学习使用单片机是了解计算机原理与结构的最佳选择。
1.1.2 单片机应用目前单片机渗透到我们生活的各个领域,几乎很难找到哪个领域没有单片机的踪迹。
导弹的导航装置,飞机上各种仪表的控制,计算机的网络通讯与数据传输,工业自动化过程的实时控制和数据处理,广泛使用的各种智能IC 卡,民用豪华轿车的安全保障系统,录像机,摄像机、全自动洗衣机的控制,以及程控玩具、电子宠物等等,这些都离不开单片机。
更不用说自动控制领域的机器人、智能仪表、医疗器械以及各种智能机械了。
因此,单片机的学习、开发与应用将造就一批计算机应用与智能化控制的科学家、工程师。
- 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
- 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
- 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。
摘要本温度设计采用现常见的89C51单片机,配以DS18B20数字温度传感器,该温度传感器可自行设置温度上下限。
单片机将检测到的温度信号与输入的温度上、下限进行比较,由此作出判断是否启动继电器以开启设备。
系统包括单片机模块、温度检测模块、水位检测模块和驱动电路设计四个部分。
文中对每个部分功能、实现过程作了详细介绍。
关键词: DS18B20数字温度传感器 89C51 水温水位目录一.概述 (3)1.1课题研究的目的及意义 (3)1.2技术指标 (3)二.总体设计方案 (3)三.详细设计方案 (3)1.1温度检测系统 (3)1.2水位检测系统 (5)四.元件说明 (6)1.1 工作原理 (6)1.2单片机的选择 (6)1.3温度传感器 (8)1.4水位传感器 (11)1.5 显示元件 (11)五.硬件模块设计 (12)1.1单片机模块设计 (12)1.2温度检测模块 (13)1.3水位检测模块 (14)1.4 控制模块 (15)1.5 驱动电路设计 (15)六.软件设计 (16)1.2 温度检测系统 (17)1.3 水位检测系统 (18)1.4 DS18B20主程序............................................... 错误!未定义书签。
七.结论 (18)八.参考文献 (18)附录 (18)单片机与显示器件连接图 (18)系统软件源代码 (18)一.概述1.1课题研究的目的及意义目前市场上太阳能热水器的控制系统大多存在功能单一、操作复杂、控制不方便登问题,很多控制器只具有温度和水位显示功能,不具有温度控制功能。
即使热水器具有辅助加热功能,也可能由于加热时间不能控制而产生过烧,从而浪费电能。
鉴于此,我以89C51单片机为检测控制核心,采用数码管显示温度,设计了一种太阳能热水器微控制器,实现了温度和水位参数的实时显示,具有温度设定、水位控制功能。
1.2技术指标设计并制作一个基于单片机的温度控制系统,能够对炉温进行控制。
炉温可以在一定范围内由人工设定,并能在炉温变化时实现自动控制。
若测量值高于温度设定范围,由单片机发出控制信号,经过驱动电路使加热器停止工作。
当温度低于设定值时,单片机发出一个控制信号,启动加热器。
通过继电器的反复开启和关闭,使炉温保持在设定的温度范围内。
⑴温度设定范围为0~99℃,最小区分度为1℃,温度控制的误差≤1℃⑵能够用数码管精确显示当前实际温度值⑶按键控制:设置键、加一键、减一键二.总体设计方案以89C51为主控制芯片,温度采集采用DS18B20温度传感器,通过外围电路来采集水位,用四位数码管显示当前的水温,用LED灯指示水位,并且通过键盘来输入所需控制的水温。
并且当水温水位超于限制时启动报警系统。
如图2.1总体设计方案图所示。
图2.1 总体设计方案图三.详细设计方案3.1 总体结构设计方案一:测温电路的设计,可以使用DS18B20温度传感器利用其感温效应,在将随被测温度变化的电压或电流采集后,把采样得到的模拟信号送入ADC0809进行A/D转换读入单片机进行A/D转换后,通过串行口输入,就可以用单片机进行数据的处理,同时在显示电路上,就可以将被测温度显示出来。
方案二:考虑使用温度传感器,结合单片机电路设计,采用一只DS18B20温度传感器,直接读取被测温度值,之后进行A/D转换,依次完成设计要求。
比较以上两种方案,很容易看出,采用方案二,电路比较简单,软件设计容易实现,故实际设计中拟采用方案二。
在本系统的电路设计方框图如图3.1.1.2所示,它由三部分组成:⑴主控芯片89C51;⑵数据显示部分;⑶传感器部分。
图3.1.1 温度计电路总体设计方案(1)控制部分采用传统的数字模似电路,功能可以实现,但电路复杂,温度误差大,成本高,可靠性也比较差;于是我选择采用单片机89C51控制,它结构简单,可以减少外围电路的搭接,并且89C51使用方便,成本比较低,性能稳定,还可以控制各模块输入输出。
但是由于其不能直接进行模数转换,因此要做外围电路设计中加AD0809芯片。
(2)显示部分四位一体的共阳数码管,(3)传感器部分DS18B20温度传感器是美国DALLAS半导体公司最新推出的一种改进型智能温度传感器,与传统的热敏电阻等测温元件相比,它能直接读出被测温。
这一部分主要完成对温度信号的采集和转换工作,由DS18B20数字温度传感器及其与单片机的接口部分组成。
数字温度传感器DS18B20把采集到的温度经数模转换后通过数据引脚传到单片机的P1口,单片机接受温度并存储。
此部分只用到DS18B20、AD0809和单片机,硬件很简单。
3.2水位检测系统对于水位进行控制的方式有很多,而应用较多的主要有3种,三种方式的实现如下:方案一:简单的机械式控制方式。
其常用形式有浮标式、电极式等,这种控制形式的优点是结构简单,成本低廉。
方案二:利用单片机进行水位检测和控制,基于数字电路的全自动控制,其工作过程是被测水位经过模拟信号采集模块进行采样,然后把采样得到的模拟信号送入ADC0809进行A/D转换读入单片机,再由单片机进行处理,得出结果是否启动/停止控制电路执行信号以达到水位的控制,具体硬件流程框图入图3.2.1所示。
图3.2.1 方案二具体流程框图方案三:采用89C51单片机为核心控制器的电路。
因为单片机电路结构简单成本低廉、可靠性高,便于实现各个控制功能能很好的完成设计任务。
水位检测由本设计使用的电极式水位传感器通过检测来实现水位的改变。
获得当前水位并通过LED 灯显示。
综合以上三种方案,方案一和方案二由于缺少温度检测模块,而水温也是影响太阳能热水器很重要的一方面:比如说水箱中水温度过高导致水沸腾这时候虽然水所在刻度不是满的,实际上已经溢出,这样说来方案一和方案二的设计算不上智能。
方案三是在方案二的基础上完善和加强的,采用单片机键的双边通信,比起方案二更加方便,也更加合理。
四.元件说明4.1 工作原理本文阐述了基于单片机的水温水位控制系统的设计方法,此种方法是以89C51单片机为主控制单元,对水温水位参数进行控制,从而提高了电器的工作稳定性。
以DS18B20为温度传感器的对水温进行数据采集并实现温度控制。
该控制系统还可以实时存储相关的温度数据以及水位高度并能记录当前的时间。
为了实现功能本系统设计了相关的硬件电路和相关应用程序。
硬件电路主要包括89C51单片机最小系统,测温电路、测水位电路、LCD12864液晶显示电路以及报警电路、键盘输入参数等。
系统程序主要包括主程序,读出温度子程序,计算温度子程序、水位显示子程序、按键处理程序、12864液晶显示程序以及数据存储程序以及时间显示程序等4.2单片机的选择单片机的选择在整个系统设计中至关重要,要满足大内存、高速率、通用性、价格便宜等要求,本课题选择89C51作为主控芯片。
89C51是一种带4K字节闪烁可编程可擦除只读存储器的低电压,高性能CMOS8位微处理器,俗称单片机。
它是美国ATMEL公司的低电压,高性能CMOS8位单片机。
89C2051是一种带2K字节闪烁可编程可擦除只读存储器的单片机。
单片机的可擦除只读存储器可以反复擦除100次。
该器件采用ATMEL高密度非易失存储器制造技术制造,与工业标准的MCS-51指令集和输出管脚相兼容。
由于将多功能8位CPU 和闪烁存储器组合在单个芯片中,ATMEL的89C51是一种高效微控制器,89C2051是它的一种精简版本。
89C51单片机为很多嵌入式控制系统提供了一种灵活性高且价廉的方案。
实物图如图4.1.2所示。
图4.1.2所示实物图1.2.1主要特性:⑴与MCS-51 兼容⑵4K字节可编程闪烁存储器寿命:1000写/擦循环数据保留时间:10年⑶全静态工作:0Hz-24Hz⑷三级程序存储器锁定⑸128*8位内部RAM⑹32可编程I/O线⑺两个16位定时器/计数器⑻5个中断源⑼可编程串行通道⑽低功耗的闲置和掉电模式⑾片内振荡器和时钟电路1.2.2管脚说明:VCC:供电电压。
GND:接地。
P0口:P0口为一个8位漏级开路双向I/O口,每脚可吸收8TTL门电流。
当P1口的管脚第一次写1时,被定义为高阻输入。
P0能够用于外部程序数据存储器,它可以被定义为数据/地址的第八位。
在FIASH编程时,P0 口作为原码输入口,当FIASH进行校验时,P0输出原码,此时P0外部必须被拉高。
P1口:P1口是一个内部提供上拉电阻的8位双向I/O口,P1口缓冲器能接收输出4TTL门电流。
P1口管脚写入1后,被内部上拉为高,可用作输入,P1口被外部下拉为低电平时,将输出电流,这是由于内部上拉的缘故。
在FLASH编程和校验时,P1口作为第八位地址接收。
P2口:P2口为一个内部上拉电阻的8位双向I/O口,P2口缓冲器可接收,输出4个TTL门电流,当P2口被写“1”时,其管脚被内部上拉电阻拉高,且作为输入。
并因此作为输入时,P2口的管脚被外部拉低,将输出电流。
这是由于内部上拉的缘故。
P2口当用于外部程序存储器或16位地址外部数据存储器进行存取时,P2口输出地址的高八位。
在给出地址“1”时,它利用内部上拉优势,当对外部八位地址数据存储器进行读写时,P2口输出其特殊功能寄存器的内容。
P2口在FLASH 编程和校验时接收高八位地址信号和控制信号。
P3口:P3口管脚是8个带内部上拉电阻的双向I/O口,可接收输出4个TTL 门电流。
当P3口写入“1”后,它们被内部上拉为高电平,并用作输入。
作为输入,由于外部下拉为低电平,P3口将输出电流(ILL)这是由于上拉的缘故。
P3口也可作为AT89C51的一些特殊功能口,如下表所示:口管脚备选功能P3.0 RXD(串行输入口)P3.1 TXD(串行输出口)P3.2 /INT0(外部中断0)P3.3 /INT1(外部中断1)P3.4 T0(记时器0外部输入)P3.5 T1(记时器1外部输入)P3.6 /WR(外部数据存储器写选通)P3.7 /RD(外部数据存储器读选通)P3口同时为闪烁编程和编程校验接收一些控制信号。
RST:复位输入。
当振荡器复位器件时,要保持RST脚两个机器周期的高电平时间。
ALE/PROG:当访问外部存储器时,地址锁存允许的输出电平用于锁存地址的地位字节。
在 FLASH编程期间,此引脚用于输入编程脉冲。
在平时,ALE端以不变的频率周期输出正脉冲信号,此频率为振荡器频率的1/6。
因此它可用作对外部输出的脉冲或用于定时目的。
然而要注意的是:每当用作外部数据存储器时,将跳过一个ALE脉冲。
如想禁止ALE的输出可在SFR8EH地址上置0。
此时, ALE只有在执行MOVX,MOVC指令是ALE才起作用。
另外,该引脚被略微拉高。