历史上的今天
今天是:2025年03月30日(星期日)
2021年03月30日 | 基于单片机控制的温度智能控制系统
2021-03-30 来源:eefocus
一、引言
针对实验室等对温度极其敏感的一些大型公共场合,为达到对其温度的良好控制,本文从实用的角度以AT89C51为核心设计了一套温度智能控制系统。实践证实,本系统运行情况良好且经济可靠。
二、硬件组成:
本系统主要是针对实验室等一些大型公共场所的温度进行控制。因此我们要求的温度不是一个点,而是一个范围,因此我们设定了一个温度点,在此温度点的上下限四周设定一个回差带,如下图所示。

图1温度越限控制示意图
针对以上情况,本系统以AT89C51单片机为核心,组成一个集温度的采集、处理、显示、自动控制为一身的闭环控制系统,其原理框图见图2。图中硬件组成主要由以下几部分组成:单片机信息处理、温度采集、信号转换、显示、报警、键声及控制部分。

图2温度控制系统原理框图
具体工作如下:
利用集成温度传感器实现对温度的采集,然后信号通过运算放大器、保持器和A/D转换器将模拟量变为数字量送进单片机进行处理。我们预先从键盘输进一个温度范围(上限报警值和下限报警值、上限值、上限复位值、下限值、下限复位值),通过温度采集系统检测出环境的温度,由数字显示电路显示出当时的温度,当温度高于上限值时,系统将起动制冷设备,把温度降下来,根据采样温度值与下限值的差值占上限与下限之间的差值的百分比均匀地起动设备的台数,当温度低于上限复位值时,才封闭全部的设备。制冷设备停止工作。当温度低于下限值时,与高于上限值的控制方法相同。当温度高于或低于报警的上下限值时,报警器发声,提醒工作职员此时温度太高或太低,以做出相应的措施。
其中:
1、为使整个系统的运行更加完善,本系统在设计时匹配了矩阵式键盘以及由四位LED数码管组成的显示器以显示实时的温度值及事先给定的温度值。
2、为进步系统的抗干扰能力,在原有硬件的基础上设计了电源检测、报警等电路以促进整个系统的功能更加完善。
3、为使掉电后上次设定的参数不至于丢掉,本系统采用串行EEPROM―24C02进行掉电前的参数存储。24C02和AT89C51的典型接口电路如下:

图324C02和AT89C51的接口电路
三、软件设计:
为便于调试,本系统主要采用模块化结构设计,具体由键盘、显示、温度采集、信号处理、A/D转换、D/A转换报警等子程序组成。这里给出主程序框图见图4:

图4主程序流程图
其中,
1、本系统采用矩阵式键盘,应用键扫描法进行识别,其程序流程图见图5:
2、为消除外界对采样系统的干扰,我们采用防脉冲干扰均匀值法,计算方便,速度快,且所需内存很小。
3、在该系统中温度范围设定在0℃~50℃,但经A/D转换后的采样值为对应于该温度的电压值,因此本系统的标变换公式为:

这样计算后该系统中温度范围在0℃~51℃。

图5键盘程序流程图
四、结束语:
整个系统的设计以单片机为核心,实现对温度的采样、处理及控制。本系统运行稳定、工作精度高,且通过键盘可以方便地进行参数修改,真正达到对温度的智能控制。
参考文献
【1】何立民主编。MCS-51系列单片机应用系统设计系统配置与接口技术。北京航空航天大学出版社,1990年1月
【2】杨忠煌,黄博俊主编。单片机8051实务与应用。中国水利水电出版社,2001年6月。
【3】苏文平主编。新型电子电路。北京航空航天大学。1999年1月。
史海拾趣
|
分别用C语言和汇编语言进行程序设计,计算正弦函数值,并比较代码效率。 1)C语言编程 #include #define NX 180 //最大正弦角度 #define pi 3.14159 short i; double x[NX] //定义输入正弦角度数组(弧度值) double r[NX] //定义输出 ...… 查看全部问答> |
|
我现在知道的在ARM里软件中断(SWI call)是用来将模式转换成超级用户模式的(SVC mode) 然后用这两句话可以将SWI的参数储存在R0里面 LDR R0,[LR,#-4] BIC R0,R0, #0xFF000000 因为刚刚学习ARM, 现在我不理解的是这个SWI的参数到底可以用来干什么 ...… 查看全部问答> |
|
求助:VS.NET 2008下WINCE模拟器 需要带网络连接功能 VS.NET 2008不像03提供了WINCE模拟器 求助 刚折腾了一个版本 不带网络功能 即希望在模拟器上可以配置IP PING通 这样可以测试一些访问MSSQL的程序 谢谢 不知道表达清楚了没有……汗… 查看全部问答> |
|
流小驱动SRB.NumberOfPhysicalPages时钟为0 修改DDK中testcap 做的摄像头驱动,想使用DMA得到数据。DDK文档中说SRB的ScatterGatherBuffer就是作为DMA使用的,NumberOfPhysicalPages是其中的元素个数。但是我在生成图像的ImageSynth函数中得到的NumberOfPhysicalPages却始终为0. ...… 查看全部问答> |
|
NandFlash块大小为16K,如果写一个不足16K的文件进去,是不是要把该块剩下的空间写成0? NandFlash块大小为16K,如果写一个不足16K的文件进去,是不是要把该块剩下的空间写成0?… 查看全部问答> |
|
利用控制面板中的“校准”,校准后总是不能正常退出。串口打印提示 : M 474,507 507,520 33,13M 2061,1655 2099,1655 38,0Maximum Allowed Error 7: Maximum error 13325 exceeds calibration th ...… 查看全部问答> |
|
本帖最后由 jameswangsynnex 于 2015-3-3 19:57 编辑 苹果公司的iPhone把智能手机从专注于通讯的设备变成了以应用为中心的多用途移动平台,可以用于许多产业之中。据iSuppli公司,其它智能手机平台迅速跟进,纷纷增加了多点触控用户界面、应用开发 ...… 查看全部问答> |
|
我设计的无限温度传感网络由一个路由设备和两个温度测量节点组成。两个测温节点的程序应该是一样的吧?我是通过长地址(IEEE地址)来在路由设备上区分两个节点的数据的,部分原代码如下:unsigned int current_temperature1 = 0;unsigned int curre ...… 查看全部问答> |




