基于51单片机的水温测控系统实验报告

合集下载

基于51单片机的温度控制系统设计

基于51单片机的温度控制系统设计

基于51单片机的水温自动控制系统0 引言在现代的各种工业生产中 ,很多地方都需要用到温度控制系统。

而智能化的控制系统成为一种发展的趋势。

本文所阐述的就是一种基于89C51单片机的温度控制系统。

本温控系统可应用于温度范围30℃到96℃。

1 设计任务、要求和技术指标1.1任务设计并制作一水温自动控制系统,可以在一定范围(30℃到96℃)内自动调节温度,使水温保持在一定的范围(30℃到96℃)内。

1.2要求(1)利用模拟温度传感器检测温度,要求检测电路尽可能简单。

(2)当液位低于某一值时,停止加热。

(3)用AD转换器把采集到的模拟温度值送入单片机。

(4)无竞争-冒险,无抖动。

1.3技术指标(1)温度显示误差不超过1℃。

(2)温度显示范围为0℃—99℃。

(3)程序部分用PID算法实现温度自动控制。

(4)检测信号为电压信号。

2 方案分析与论证2.1主控系统分析与论证根据设计要求和所学的专业知识,采用AT89C51为本系统的核心控制器件。

AT89C51是一种带4K字节闪存可编程可擦除只读存储器的低电压,高性能CMOS 8位微处理器。

其引脚图如图1所示。

2.2显示系统分析与论证显示模块主要用于显示时间,由于显示范围为0~99℃,因此可采用两个共阴的数码管作为显示元件。

在显示驱动电路中拟订了两种设计方案:方案一:采用静态显示的方案采用三片移位寄存器74LS164作为显示电路,其优点在于占用主控系统的I/O口少,编程简单且静态显示的内容无闪烁,但电路消耗的电流较大。

方案二:采用动态显示的方案由单片机的I/O口直接带数码管实现动态显示,占用资源少,动态控制节省了驱动芯片的成本,节省了电 ,但编程比较复杂,亮度不如静态的好。

由于对电路的功耗要求不大,因此就在尽量节省I/O口线的前提下选用方案一的静态显示。

图1 AT89C51引脚图2.3 检测系统分析与论证1 温度检测:有选用AD590和LM35D两种温度传感器的方案,但考虑到两者价格差距较大,而本系统中对温度要求的精度不很高,因而选用比较廉价LM35D。

基于51单片机的水温控制系统设计毕业论文

基于51单片机的水温控制系统设计毕业论文

基于51单片机的水温控制系统设计毕业论文基于单片机的水温控制系统摘要水在人们日常生活和工业生产中有着必不可少的作用,在不同环境和不同的需求中,水温的变化也对我们的生活和工业生产有着重要的影响,为了满足人们在各个领域所需要的水温,水温控制系统在各个领域也应运而生。

随着社会的发展,科技的进步,智能化已经是温控系统发展的主流方向,小到人们生活中的饮水机,大到工业生产中的大型水温加热控制设备等各种水温控制系统发展以趋于成熟。

传统靠人工控制的温度,湿度,液位等信号的测压、力控系统,外围电路比较复杂,测量精度较低,分辨率不高,需进行温度校正;并且他们的体积较大适用不方便,在工业生产中也可能应为各种认为的失误发生意外,针对此问题,本系统设计的目的就是实现一种可连续高精度持续调温的温度控制系统,它应用广泛,功能强大,操作简单,便于携带,是一款既实用又廉价的控制系统。

温度检测控制系统在工业生产中主要职责是对温度进行严格的监测,在温度发生变化不符合规定温度时,系统报警提示并做出相应的温度调整措施,以使得生产能够顺利进行,节省了大量的人工,产品的质量也得到充分的保障,同时也避免了各种潜在意外的发生。

从而提高企业的生产效率。

本系统以89C51单片机为核心,扩展外围控制电路,检测变送电路,按键电路,显示电路,复位电路,时钟电路,电源电路,报警电路;本系统的整体运行过程为:通过按键电路设定理想水温范围,实时水温通过检测变送电路模检测,并将检测到的物理量转化成电信号,然后放大电信号并将模拟量同过A/D 转换为单片机识别的数字量发送给单片机。

单片机系统将实时温度与设定温度进行对比,并通过显示电路将实时温度显示出来,如果实时温度大于设定的最高温度或者低于设定的最低温度一定时间,单片机将触发报警电路对过温或者低温进行警报,同时触发控制电路对水温的控制做出适当的调整,确保水温出在理想的温度值,满足需求。

系统检测变送电路中采用电流型温度传感器AD590将温度的变化量转变成电流量,然后采用OP-07将电流量转换为电压量。

单片机实验-单片机水温控制实验

单片机实验-单片机水温控制实验

单片机水温控制实验姓名:徐晨学号:5130209390 班级:F1302014小组成员:王林涛赵路杰一、实验目的综合应用,全面掌握模拟量测量及闭环控制原理。

二、实验分工赵路杰、王林涛负责单片机的编程工作,小组成员共同完成单片机的调试工作。

三、实验设备清单、接线图、原理图1、实验器材:51单片机电路、A/D、D/A电路、温度测量电路。

2、51单片机电路3、温度测量电路4、继电器输出电路四、实验内容及过程1、用单片机控制水壶温度。

测量传感器用热电阻,通过编程,控制水温达到设定值。

要求最终的误差在±1℃ 以内。

2、数码管左边2位显示水温设定值(通过拨码盘设定),右边2位显示水温实测值。

(用十进制数表示)五、编程说明1、实验中水温的控制是通过开关量的输出实现的,即通过控制水壶电源的通断来实现水温的控制。

由实验板上的小继电器来驱动中间继电器,再通过中间继电器来驱动水壶加热电源。

2、为保证继电器的使用寿命,实验中必须考虑继电器的动作时间间隔,避免继电器快速频繁动作。

4、程序框图中断子程序:断点保护入栈读0809转换结转换成对应温度转换成十进制数启动AD转换出栈中断返回5、控制程序LED1 EQU 30HLED2 EQU 31HLED3 EQU 32HLED4 EQU 33HSETL EQU 34HSETH EQU 35HREALL EQU 36HREALH EQU 37HAIM EQU 38H ;目标温度REAL EQU 39H ;真实温度PROTECTION EQU 3AH ;保护现场,将A的值保护起来DIFFERENCE EQU 3BH ;目标温度与真实温度的差值ORG 0000HLJMP BEGINORG 0060HBEGIN:MAIN:MOV REAL,#28H ;对控制目标赋初值,40度CONTROL:LCALL READ_BCD; ;读取拨码盘温度LCALL GETT ; 读取实际温度CLR CY;MOV A,AIM;MOV R0,REAL;SUBB A,R0; 根据目标温度与实际温度的差值,选择相应的加热程序JC OVERHEATPRE;MOV DIFFERENCE,A;SUBB A,#15;JNC TEMP15;CLR CY;MOV A,DIFFERENCE;SUBB A,#5;JNC TEMP5;CLR CY;MOV A,DIFFERENCE;SUBB A,#3;JNC TEMP3;CLR CY;MOV A,DIFFERENCE;JNC TEMP1;LCALL DELAY1_10S;LJMP CONTROL;OVERHEATPRE:LJMP OVERHEAT;TEMP15: ;温差15度及以上加热程序MOV DPTR,#7FFCH ;启动继电器MOV A,#0FFHMOVX @DPTR,A;LCALL DELAY1SLCALL DELAY1SLCALL DELAY1SLCALL DELAY1SLCALL DELAY1SCLR A;MOVX @DPTR,ALCALL DELAY1S ;加热5s等待1sLJMP CONTROL;TEMP5: ;温差5度及以上加热程序MOV DPTR,#7FFCHMOV A,#0FFHMOVX @DPTR,A;LCALL DELAY1SLCALL DELAY1SCLR A;MOVX @DPTR,ALCALL DELAY1SLCALL DELAY1SLCALL DELAY1S ;加热2秒等待3sLJMP CONTROL;TEMP3: ;温差3度及以上加热程序MOV DPTR,#7FFCHMOV A,#0FFHMOVX @DPTR,A;LCALL DELAY1SCLR A;MOVX @DPTR,ALCALL DELAY1SLCALL DELAY1SLCALL DELAY1SLCALL DELAY1S ;加热1秒等待4秒LJMP CONTROL;TEMP1: ;温差1度及以上加热程序MOV DPTR,#7FFCHMOV A,#0FFHMOVX @DPTR,A;LCALL DELAY1_10SLCALL DELAY1_10SLCALL DELAY1_10SLCALL DELAY1_10SLCALL DELAY1_10SCLR A;MOVX @DPTR,ALCALL DELAY1SLCALL DELAY1SLCALL DELAY1SLCALL DELAY1SLCALL DELAY1S ;加热0.5秒等待5秒LJMP CONTROL;OVERHEAT: ;温度过热等待程序MOV DPTR,#7FFCHMOV A,#00HMOVX @DPTR,ALCALL DELAY1SLCALL DELAY1SLCALL DELAY1SLCALL DELAY1SLCALL DELAY1S ;冷却5秒,等待水温下降LJMP CONTROL;READ_BCD:SETB P1.7 ;选择BCD相关数码MOV DPTR,#0BFFFHMOVX A,@DPTRCPL AMOV R0,AANL A,#0FHMOV SETL,AMOV A,R0SWAP AANL A,#0FHMOV SETH,AMOV LED2,SETLMOV LED1,SETH ;设定温度的十位在SETH,个位在LEDH MOV B,#10MOV A,SETHMUL ABADD A,SETL ;MOV AIM,A ;设定温度值存在AIM中RETDELAY1_10S:MOV TMOD,#10H;设定定时器1位方式一MOV TH1,#3CHMOV TL1,#0B0H;SETB TR1L2: JBC TF1,L1SJMP L2 ;假定时钟频率为6MhzL1:CLR TR1RETDELAY1S:MOV R0,#10;MOV TMOD,#10H;设定定时器1位方式一MOV TH1,#3CHMOV TL1,#0B0H;SETB TR1L4: JBC TF1,L3SJMP L4L3:MOV TH1,#3CHMOV TL1,#0B0HDJNZ R0,L4CLR TR1RETDISPLAY: ;显示程序MOV A,LED1ANL A,#0FHMOV DPTR,#DSEG1MOVC A,@A+DPTRMOV DPTR,#7FFBHMOVX @DPTR,AMOV A,LED2ANL A,#0FHMOV DPTR,#DSEG1MOVC A,@A+DPTRMOV DPTR,#7FFAHMOVX @DPTR,AMOV A,REALHANL A,#0FHMOV DPTR,#DSEG1MOVC A,@A+DPTRMOV DPTR,#7FF9HMOVX @DPTR,AMOV A,REALLANL A,#0FHMOV DPTR,#DSEG1MOVC A,@A+DPTRMOV DPTR,#7FF8HMOVX @DPTR,ARETGETT: ;传感器温度获得程序MOV DPTR,#0DFFAH; 信号来源为IN2CLR A ;MOVX @DPTR,A; 开始进行数据转换JB P3.3,$MOV PROTECTION,AMOV DPTR,#0DFFAH; 读取AD转换后的温度MOVX A,@DPTRMOV B,#100;MUL AB ;MOV REAL,B; 真实温度值为BMOV A,B ;MOV B,#10;DIV AB ;MOV REALL,B ;MOV REALH,A;LCALL DISPLAYMOV A,PROTECTIONRETDSEG1:DB 0C0H,0F9H,0A4H,0B0HDB 99H,92H,82H,0F8HDB 80H,90H,88H,83HDB 0C6H,0A1H,86H,8EHEND六、实验结果与分析初始程序运行地并不顺利,之后通过仔细地调试,所有分模块的功能都可以实现,但是出于时间原因,最终的加热效果并没有得到验证。

基于单片机的水温控制系统的设计报告

基于单片机的水温控制系统的设计报告

基于单片机的水温控制系统一、总体模块图二、总体思路用温度传感器AD590检测出水的温度,传感器会把温度值转换为模拟量,再经由一个模数转换器ADC0804把传感器中的模拟量转换为数字量,这样才能传送到单片机中,要温度有范围的限制,则要事先设定出最低和最高温度,这时便要利用键盘,这里采用独立键盘的方式只用到3个按键(一个“设定”键,一个“加一”键,一个“减一”键),设定好的温度就相当于一个标准值,实时的水温都要在单片机中与之进行比较,如果实时值低于最低温度时单片机要有一个输出信号去控制温度控制电路,即执行温度控制的中段,温度控制电路会控制电炉对水进行加热到最高温度时,单片机停止对温度控制电路的作用,水会逐渐降温到最低温度,再加热,如此循环。

其中的实时温度会由单片机来控制LED数码管的显示。

三、分块叙述1、温度传感器AD590测量范围在-50℃--+150℃,满刻度范围误差为±0.3℃,当电源电压在5—10V之间,稳定度为1﹪时,误差只有±0.01℃。

AD590为电流型传感器温度每变化1℃其电流变化1uA。

满足温度范围40-90℃,最小区分度为1℃。

2、模数转换器ADC0804ADC0804的引脚功能如下:1、/CS(片选端)。

用来控制ADC0804是否被选取中,/CS=0时芯片被选中。

2、/RD(读控制端)。

/RD为1时,DB0-DB7处于高阻状态,/RD=0时,DB0-DB7才会输出电压数据。

3、/WR(写控制端)。

当/CS=0时,/WR由1变为0时,转换器被清除,/WR 再次回到1时,转换才重新开始。

4、CLK-IN(时钟输入端)。

5、INTR(中断输出端),低电平有效,接单片机外部中断。

6、Vin+(模拟电压同相输入端),输入电压在DC0-5.12V。

7、Vin-(模拟电压反相输入端),使用时一般接模拟地。

8、A-GND(模拟地)。

9、Vref/2(参考电压端),输入电压最高为5.12V时,应调整至2.56V;即此脚电压为输入最高电压的1/2。

基于51单片机的温湿度检测控制系统

基于51单片机的温湿度检测控制系统

摘要本次设计是采用MSC-51系列单片机中的AT89S51和DHT11构成的低成本的温湿度的检测控制系统。

单片机AT89S51是一款低消耗、高性能的CMOS8位单片机,由于它强大的功能和低价位,因此在很多领域都是用它。

DHT11温湿度传感器是一款含有已校准数字输出的温湿度复合传感器,传感器包括一个电阻式感湿原件和一个NTC测温元件,该产品具有品质卓越、超快响应、抗干扰能力强、性价比极高等优点。

设计主要包括硬件电路的设计和系统软件的设计。

硬件电路主要包括单片机、温湿度传感器、显示模块、报警器以及控制设备等5部分。

其中由DHT11温湿度传感器及1602字符型液晶模块构成系统显示模块;测温湿度控制电路由温湿度传感器和预设温度值比较报警电路组成;用户根据需要预先输入预设值,当实际测量的温湿度不符合预设的温湿度标准时,发出报警信号(蜂鸣器蜂鸣),启动相应控制。

软件部分包括了主程序、显示子程序、测温湿度子程序。

关键词:AT89S51;DHT11;温湿度传感器AbstractMicrocontroller AT89S51 is a low consumption, high performance CMOS8 bit microcontroller.Because of its powerful features and low price, so it is used in many areas.DHT11 temperature and humidity sensor is a temperature and humidity combined sensor contains a calibrated digital output, the sensor consists of a resistor in the original sense of wet and a NTC temperature measurement devices.The product has many advantage,such as excellent quality, fast response, strong anti-jamming capability . This design is fromed by the AT89S51 in MSC-51 Series and DHT11 constitute which is a low-cost temperature and humidity measurement and control system. The design includes the design of hardware circuit design and system software.The hardware has Five modules.They are a microcontroller, temperature and humidity sensors, display module, alarm and control equipment. The 1602-character LCD module constitute the system display module.The temperature and humidity control circuit by the temperature and humidity sensors and preset temperature alarm circuit.According to the need of pre-enter the default value, when the actual measurement of the temperature humidity does not conform the preset temperature and humidity standards, send the alarm signal (buzzer will beep), and start the corresponding control.The software part includes the main program, the display routines, temperature and humidity subroutine.Key words:Temperature and humidity measurement;Temperature and humidity control;AT89S51 ;DHT11目录前言 (1)1.1本文研究的背景及意义 (1)1.2研究现状 (1)1.3本文研究的主要内容 (1)第2章设计任务分析及方案论证 (4)2.1设计过程及其工艺要求设计 (4)2.2设计总体方案及其论证 (4)2.3器件选定 (5)2.4AT89S51单片机 (11)2.5中断系统 (15)2.6复位电路 (16)2.7时钟电路 (17)2.8显示部分 (18)2.9本章小结 (26)第3章硬件设计 (27)3.1主控制电路和测温时控制电路 (27)3.2主要模块的电路 (28)3.3硬件实施控制 (33)3.4设备运行 (35)3.5控制设备: (36)3.6本章小结 (38)第4章软件设计 (39)4.1系统流程图 (39)4.2按键流程图 (41)4.3P ROTUES运行结果 (42)4.4本章小结 (43)结论 (44)参考文献 (45)附录 (47)前言1.1本文研究的背景及意义粮库已经被广泛的运用,是存储粮食的一个重要方式。

基于51单片机的温度检测系统_单片机C语言课题设计报告

基于51单片机的温度检测系统_单片机C语言课题设计报告

单片机C语言课题设计报告设计题目:温度检测电气系2011级通信技术一班级通信技术一班通才达识,信手拈来通才达识,信手拈来1摘要本课题以51单片机为核心实现智能化温度测量。

利用18B20温度传感器获取温度信号,将需要测量的温度信号自动转化为数字信号,利用单总线和单片机交换数据,最终单片机将信号转换成LCD 可以识别的信息显示输出。

基于STC90C516RD+STC90C516RD+的单片机的智能温度检测系统,的单片机的智能温度检测系统,设计采用18B20温度传感器,其分辨率可编程设计。

本课题设计应用于温度变化缓慢的空间,综合考虑,以降低灵敏度来提高显示精度。

设计使用12位分辨率,因其最高4位代表温度极性,故实际使用为11位半,位半,而温度测量范围为而温度测量范围为而温度测量范围为-55-55-55℃~℃~℃~+125+125+125℃,℃,则其分辨力为0.06250.0625℃。

℃。

设计使用LCD1602显示器,可显示16*2个英文字符,显示器显示实时温度和过温警告信息,和过温警告信息,传感器异常信息设。

传感器异常信息设。

传感器异常信息设。

计使用蜂鸣器做警报发生器,计使用蜂鸣器做警报发生器,计使用蜂鸣器做警报发生器,当温度超过当温度超过设定值时播放《卡农》,当传感器异常时播放嘟嘟音。

单片机C 语言课题设计报告语言课题设计报告电动世界,气定乾坤2目录一、设计功能一、设计功能................................. ................................. 3 二、系统设计二、系统设计................................. .................................3 三、器件选择三、器件选择................................. .................................3 3.1温度信号采集模块 (3)3.1.1 DS18B20 3.1.1 DS18B20 数字式温度传感器数字式温度传感器..................... 4 3.1.2 DS18B20特性 .................................. 4 3.1.3 DS18B20结构 .................................. 5 3.1.4 DS18B20测温原理 .............................. 6 3.1.5 DS18B20的读写功能 ............................ 6 3.2 3.2 液晶显示器液晶显示器1602LCD................................. 9 3.2.1引脚功能说明 ................................. 10 3.2.2 1602LCD 的指令说明及时序 ..................... 10 3.2.3 1602LCD 的一般初始化过程 (10)四、软件设计四、软件设计................................ ................................11 4.1 1602LCD 程序设计流程图 ........................... 11 4.2 DS18B20程序设计流程图 ............................ 12 4.3 4.3 主程序设计流程图主程序设计流程图................................. 13 五、设计总结五、设计总结................................. ................................. 2 六、参考文献六、参考文献................................. ................................. 2 七、硬件原理图及仿真七、硬件原理图及仿真......................... .........................3 7.1系统硬件原理图 ..................................... 3 7.2开机滚动显示界面 ................................... 4 7.3临界温度设置界面 ................................... 4 7.4传感器异常警告界面 (4)电气系2011级通信技术一班级通信技术一班通才达识,信手拈来通才达识,信手拈来3温度温度DS18B20 LCD 显示显示过温函数功能模块能模块传感器异常函数功能模块数功能模块D0D1D2D3D4D5D6D7XT XTAL2AL218XT XTAL1AL119ALE 30EA31PSEN29RST 9P0.0/AD039P0.1/AD138P0.2/AD237P0.3/AD336P0.4/AD435P0.5/AD534P0.6/AD633P0.7/AD732P2.7/A1528P2.0/A821P2.1/A922P2.2/A1023P2.3/A1124P2.4/A1225P2.5/A1326P2.6/A1427P1.01P1.12P1.23P1.34P1.45P1.56P1.67P1.78P3.0/RXD 10P3.1/TXD11P3.2/INT012P3.3/INT113P3.4/T014P3.7/RD17P3.6/WR 16P3.5/T115U180C51X1CRYST CRYSTAL ALC122pFC222pFGNDR110kC31uFVCCGND234567891RP1RESPACK-8VCC0.0DQ 2VCC 3GND 1U2DS18B20R24.7K LCD1LM016LLS2SOUNDERMUC八、程序清单八、程序清单................................. .................................5 一、设计功能·由单片机、温度传感器以及液晶显示器等构成高精度温度监测系统。

基于51单片机的温度报警控制系统报告

基于51单片机的温度报警控制系统报告

报告评分批改老师《现代电子综合实验》课程设计报告基于单片机的温度检测控制系统设计学生姓名 学 号专 业 班 级同组学生 提交日期 年 月 日指导教师目录2一、实验目的 .....................................................................................2二、实验要求 .....................................................................................2三、实验开发环境及工具 ...........................................................................2四、按键扫描和液晶显示功能实现 ...................................................................24.1矩阵键盘电路 ...............................................................................4.1.1矩阵键盘电路简介 .....................................................................224.1.2矩阵式按键扫描原理 ...................................................................24.1.3 按键扫描子程序设计思想及流程图 ......................................................34.2 LCD1602显示电路 ..........................................................................34.2.1 LCD1602模块简介 ....................................................................34.2.2 LCD1602模块引脚说明 .................................................................4.2.3 LCD1602控制方式及指令 ..............................................................344.2.4 LCD1602液晶显示子程序设计思想及流程图 ..............................................5五、基于单片机的温度检测控制系统设计过程 .........................................................55.1 系统整体电路框图及功能说明 ................................................................55.2 DS18B20数字温度传感器电路 ..............................................................55.2.1 单总线通信方式简介 ..................................................................65.2.2 DS18B20简介 ......................................................................5.2.3 DS18B20读写操作 ..................................................................665.3 声光报警及控制电路 ........................................................................75.4 软件设计 ..................................................................................5.4.1 主程序设计流程图 ....................................................................775.4.2 DS18B20子程序设计思想及流程图 ...................................................85.4.3 声光报警子程序设计思想及流程图 .....................................................9七、 实验过程及实验结果 ...........................................................................9八、实验中遇到的问题及解决方法 ...................................................................10附件 ............................................................................................一、实验目的(1). 掌握单片机应用系统的设计方法与步骤;(2).掌握硬件电路各功能模块的工作原理、应用电路与编程方法;(3).熟练掌握单总线的应用及编程;(4). 掌握基于单片机的温度检测控制系统的设计与实现。

基于51单片机的水温控制系统设计毕业论文

基于51单片机的水温控制系统设计毕业论文

基于51单片机的水温控制系统设计毕业论文基于51单片机的水温控制系统设计毕业论文基于单片机的水温控制系统摘要水在人们日常生活和工业生产中有着必不可少的作用,在不同环境和不同的需求中,水温的变化也对我们的生活和工业生产有着重要的影响,为了满足人们在各个领域所需要的水温,水温控制系统在各个领域也应运而生。

随着社会的发展,科技的进步,智能化已经是温控系统发展的主流方向,小到人们生活中的饮水机,大到工业生产中的大型水温加热控制设备等各种水温控制系统发展以趋于成熟。

传统靠人工控制的温度,湿度,液位等信号的测压、力控系统,外围电路比较复杂,测量精度较低,分辨率不高,需进行温度校正;并且他们的体积较大适用不方便,在工业生产中也可能应为各种认为的失误发生意外,针对此问题,本系统设计的目的就是实现一种可连续高精度持续调温的温度控制系统,它应用广泛,功能强大,操作简单,便于携带,是一款既实用又廉价的控制系统。

温度检测控制系统在工业生产中主要职责是对温度进行严格的监测,在温度发生变化不符合规定温度时,系统报警提示并做出相应的温度调整措施,以使得生产能够顺利进行,节省了大量的人工,产品的质量也得到充分的保障,同时也避免了各种潜在意外的发生。

从而提高企业的生产效率。

本系统以89C51单片机为核心,扩展外围控制电路,检测变送电路,按键电路,显示电路,复位电路,时钟电路,电源电路,报警电路;本系统的整体运行过程为:通过按键电路设定理想水温范围,实时水温通过检测变送电路模检测,并将检测到的物理量转化成电信号,然后放大电信号并将模拟量同过A/D 转换为单片机识别的数字量发送给单片机。

单片机系统将实时温度与设定温度进行对比,并通过显示电路将实时温度显示出来,如果实时温度大于设定的最高温度或者低于设定的最低温度一定时间,单片机将触发报警电路对过温或者低温进行警报,同时触发控制电路对水温的控制做出适当的调整,确保水温出在理想的温度值,满足需求。

  1. 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
  2. 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
  3. 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。
由此,我们可以选择R8=20K,R4=10K,R2=10K,R7=2K的电位器,为了使放大器的性能更好,我们可以把R10选为200欧姆的电位器。调节R,可以调节电平,调节R7是调节放大倍数。
4.
调节测量放大电路的电位器R2和R7,使差分放大器输出0-5V电压,送入单片机。单片机的A/D转换电路将0-5V电压划分为1024个量化台阶,即0-5V对应0-1023。用10位二进制数表示。采样读出DIO口的连续10个电平值,当量化台阶为1000时,刚好1000对应的是100摄氏度,所以只需把采样读出的电平值左移一位,即可换算出对应的温度值。
TMOD设置
1.采用T1定时/计数器,工作在方式1下,见下表:
GATE
C/T
M1
M0
GATE
C/T
M1
M0
0
0
0
1
0
0
0
0
所以 TMOD=10H
2.开中断:EA=1;
定时器T1开:ET1=1
3.TH1、TL1设置
定时时间设为50ms,所以
50×10-3=(216-初始值)×(12/11.0592)×10-6
delay(100);
key=XBYTE[0x8fff];//再次读取按键
key&=0x0f;
if(key==tempKey)
{
while(key==tempKey)//等待按键弹起
{
key=XBYTE[0x8fff];
key&=0x0f;
}
switch(tempKey)
{
case 1:if(settemp<=900)settemp+=100;break;
一、设计要求
1.传感器:Pt100铂热电阻
2.测量放大器:自己设计与搭建
3.被控对象:400W电热杯,约0.5公斤自来水
4.执行机构:12V驱动,5A负载能力的继电器
5.控制系统:51单片机
6.控制算法:PID
7.温度范围:环境温度~100度
8.测量误差1度,控制误差2度
二、
1.
热电阻传感器是利用导体或半导体的电阻值随温度变化而变化的原进行测温的。
main()
{
pout=1;
LCD_inti();
AD_init();
timer_init();
if (adflag)
{
nowtemp=AD();
nowtemp=AD();
adflag=0;
pid();
}
while (1)
{
keyscan();
if (showflag)
{
LCD_inti();
摘要
本次实验是软硬件相结合的实验,通过传感器得到的阻值与其它电阻,可以搭建一个电桥,将水温转化为电压,然后通过放大器将电压放大到所需要的值,将所得的电压送入单片机的AD转换电路,将模拟信号转换成数字信号,从而在单片机的液晶屏上显示当前的温度。此烧水壶是可控制的,即设定温度,使水加热到设定温度且保温,此控制算法采用PID控制算法来控制继电器的通断,来保证水温恒定在设定温度处。
uchar num2[13]={0x4E,0x4F,0x57,0x54,0x3A,0,0,0,0x2E,0,0xDF,0x43};
unsigned int settemp=500,nowtemp;
unsigned char timecount=0;
bit adflag,showflag; //ad标志位
系统地址:0A000H0A001H0A002H0A003H
源程序附在附录里面。
四、实验结果
在电热水杯加热的初始阶段,继电器始终保持接通状态,电热水杯全速加热。当水温到达50℃以上,继电器在PID算法的控制下开始通断交替,且随着水温的升高,继电器接通的时间逐渐减少,断开的频率逐渐增大。当水温到达设定温度左右(±2℃)时,继电器通断时间比例不再变化,电热水杯处在保温状态,水温恒定在设定温度上下。经过调试和温度的校后显示的温度值是比较准确的,误差大约在零点几摄氏度内.在做温度控制的时候,由于我显示出了占空比值和时间t,故调整系数很方便和直观.控制误差大约一摄氏度左右,也是符合要求的,但系统的超调量还是比较大的,故做了适当软件上的调整,如温度超过设定值时直接将继电器断开,而不是等待PID做出反应,毕竟温度控制是一个大滞后性和大惯性的系统.
5.
三、程序设计
主要思想:首先AD转换器TLC1549是10位的,故转换最大值为1023,为显示及计算方便,只取到1000,对应输入电压值4.88V,对应显示温度值100摄氏度.由于温度传感器基本是线性的,故0摄氏度对应电压值0V,取放大器放大倍数约100倍,将输入的微小电流放大.程序中计时器定时为50ms,每50次也就是2.5秒进行一次AD转换,显示及PID计算,也就是2.5秒的加热周期,故占空比的比例为五十分之几,这个几是PID计算出来的u换算出来的.u的取值有负有正,且大小范围非常大,不好确定,故对u经行比例压缩,u越大加热的占空比就越高,u为0对应不加热,这样就将u转换为占空比.虽然可能精度不够,但基本实现了温度的控制.关于PID三个系数的确定问题,比例项应大,使温度反应快一点.积分微分项系数也稍微取大一点,使震荡次数下降,稳定值波动较小.系统也许需要比较长的时间才能准确的跟踪设定值.
上述电路图采用仪表放大器,将铂热电阻两端的电压U2与电位器R10两端的电压U1差放大,放大器输出电压U0与电压差的关系为:
由铂热电阻阻值与水温的关系可知,铂热电阻的范围是 。则 整理得:
而仪表放大器的输出电压为0~5V,所以放大倍数大约为:5/0.04=125。
当假设R8/R4=2时,R2/R7=30
{
while(XBYTE[0xa001]&0x80);//等待可写
XBYTE[0xa002]=(data1);//向数据端口写入数据
}
void writeString(uchar data1[],int len)
{
int k=0;
for(k=0;k<len;k++)//写入字符串
writeData(data1[k]);
unsigned char duty=0,duty_tem=0; //输出控制量
float el,en=0,es=0;
float p_out,i_out,d_out;
void write();
void BUSY();
void LCD_inti();
void delay(uchar n)
{
int ii,jj;
}
else
{
pout=0;
}*/
if (timecount%10==0)
{showflag=1; //0.5秒对屏幕进行一次刷新
//nowtemp+=1;
}
TR1=1; //开始计时
EA=1;
}
//pid控制算法
pid()
{
el=en;
en=(signed)settemp-(signed)nowtemp;
}
void BUSY()
{
uchar BUSYBF=0;
while(1)
{
BUSYBF=XBYTE[0xa001];
if(BUSYBF <0x80) break;
}
return;
}
//AD初始化
void AD_init()
{
AD_CS=1; //必须为高
SCLK=1; //上升沿有效
DIO=1;//置高
for(ii=0;ii<n;ii++)
for (jj=0;jj<120;jj++);
return;
}
void keyscan()
{ uchar key=0,tempKey=0;
XBYTE[0x8fff]=0x0f;
delay(100);
tempKey=XBYTE[0x8fff];//读取按键
tempKey&=0x0f;
附:源程序
#include <REG52.H>
#include <absacc.h>
#include <intrins.h>
#include <math.h>
#define uchar unsigned char
#define uint unsigned int
#define KP 0.55 //比例系数
}
//LCD初始化
void LCD_inti()
{
BUSY();
XBYTE[0xa000]=0x01;
BUSY();
XBYTE[0xa000]=0x06;
BUSY();
XBYTE[0xa000]=0x1c;
BUSY();
XBYTE[0xa000]=0x38;
BUSY();
XBYTE[0xa000]=0x0c;
{
TR1=0; //停止计时
EA=0;
TH1=0x4C;
TL1=0x00;//初值19456
timecount++;
if (timecount>50) //2.5秒进行一次PID控制
{
timecount=1;
adflag=1;//ad采样开始控制
}
/*if (timecount<=duty)
{
pout=1;
热电阻的工作原理:温度升高,金属内部原子晶格的振动加剧,从而使金属内部的自由电子通过金属导体时的阻碍增大,宏观上表现出电阻率变大,电阻值增加,我们称其为正温度系数,即电阻值与温度的变化趋势相同。
相关文档
最新文档