JSP 基于51单片机的水温控制系统设计(论文+源码)_Nueve


🔥 毕业设计和毕业答辩的要求和难度不断提升,传统的毕设题目缺少创新和亮点,往往达不到毕业答辩的要求,这两年不断有学弟学妹告诉学长自己做的项目系统达不到老师的要求。
为了大家能够顺利以及最少的精力通过毕设,学长分享优质毕业设计项目,今天要分享的是:基于51单片机的水温控制系统设计

第四章 系统硬件的设计

4.1 C51单片机

STC89C51来自于STC公司,是性能非常高但却只有极低功耗的CMOS8位微控制器,具有可以在8K系统里面进行编程操作的Flash存储器。这种单片机所用的内核是非常经典的MCS-51,不过并非原样应用,而是对其做了许多改进,让这个芯片有了很多经典51根本没有的强大功能。从单芯片角度来说,它的8位CPU本身就非常灵活非常巧妙,再加上能在系统里面进行编程的Flash,这就让STC89C51给那些具有嵌入式控制功能的应用系统贡献出来的方案表现出了极高的灵活性以及有效性,并拥有了许多非常标准的实用功能,比如有了8k字节的控制器,也有了512字节的内存,还有了32位I/O口线,以及可发挥监控功能的看门狗,此外,它的内部有4KBEEPROM,还有MAX810复位电路,其中的16位定时(计数)器一共有3个,外部中断全部加在一起一共有4个,7向量4级中断结构共计有4个,这种结构可以与经典51中的5向量2级中断结构实现成功兼容,还有全双工串行口。除此而外,STC89C51能够在低达0Hz的一种静态逻辑里面进行正常操作,还提供了2种允许软件进行做生意选择的可以对于用电进行有效控制的模式。当处于空闲模式的时候,CPU不会继续工作下去,但RAM可以继续工作,定时(计数)器也可以,串口与中断都不必中断工作。当其处于掉电保护的状态之中时,RAM里面的内容会得到有效保存,不会丢失,而振荡器也会呈现冻结状态,单片机当前所做的所有工作都会中断,这种情况会持续至下一次中断或者是持续至硬件复位才能停止。运作过程中能实现的最高频率可达35MHz,在这其中6T还是12T,是允许选择的。

单片机最小系统,简单地理解,就是所用元器件数量最小的可带动单片机进入正常工作状态的系统。下面我们要介绍的就是可支持51单片机进入正常工作状态的最小系统里面一定要有的元器件,以及它们的作用。

4.1.1 C51单片机电源

电源这对于一个电子产品的话是必不可少,它提供能源给系统运作,在本设计中由于51单片机的工作电压在4.5~5.5V之间就能够进入正常工作状态,故而我们在为其充电的过程中,所选的是USB电源线与普通的给手机充电时所用的充电器,使用5V移动电源也可以。

4.1.2 晶振电路

在晶振电路里面,XTAL1以及XTAL2作为两个具有独立性特征的对于反相放大器进行有效输入以及有效输出的端口,在被配置的过程中,可成为基于石英晶振而设计出来的片内荡振器,也可以使器件的驱动通过所处环境里面的时钟来实现。图4.1里面所示的模式就是内时钟的电路,也就是对位于芯片里面的振荡电路进行有效利用,在XTAL1以及XTAL2的引脚处接上外置的石英晶体与电容,前者有一个,后者有两个,可以起到定时作用。在这种情况下,其电路里面的振荡器就会发生自激振荡。通常来看,晶振能够在1.2~12MHz这个范围内任意选择,而它的极限并非如此,达到24MHz乃至更高都是可能的。不过频率越高必然会随之造成越高的功耗。在这篇论文所提及的实验套件里面,我们选择的是12M的石英晶振。与晶振成功并联在一起的那两个电容,它们的大小会使振荡频率受到的影响是相当微小的,故而对于频率来说能进行一定程度的微调,可以起到频率微调作用。若选择的是石英材质的晶振,那么可选的电容范围上下限就是40pF和20pF,本论文中的设计选择的是30pF;若选择的是陶瓷材质的谐振器件,那么电容就必须有一定程度的加大,上下限分别是50pF和30pF,一般情况下只需要选择30pF即可。

4.1.3 复位电路

复位电路并不是完全一样的,其中有的属于上电复位,还有的属于开关复位。在图4.2里面就展示了一个复位电路,在这个电路里面,上面提到的两种都在其中。在上电的那个瞬间之内,无论是位于电容的哪一端的电压,都是不可以突然间发生变化的,在这一时刻,电容负极是与RESET连接在一起的,所有的电压都集中在电阻上,RESET这时的输入达到了最高点,于是芯片被复位了。接下来+5V电源会为电容进行充电,集中于电阻上面的那些电压会一点一点减小,直到几乎为零,这时芯片的工作会恢复正常。在电容两端与之并联在一起的复位按键,在未被按下的情况下,电路以上电的方式实现复位,而当芯片恢复到正常工作状态后,将按键按下,让RST管脚呈现出以手动的方式使高电平实现复位时所能产生的效果。通常来看,假如RST管脚一直保持着超过10ms这个限度的高电平,那么单片机

就完全可以实现有效复位。在4.2图里面所展示出来的复位电阻以及电容都已经是经典值了,在着手进行实际制作的过程里面,可以选择代替品,也就是与其处于同数量级之内的电阻以及电容,至于RC充电时间,取得的方式也很简单,或者是自行计算,也或者是去其工作所处环境里面进行实地测量,从而保证单片机里面所用的复位电路的确是值得依靠的。

4.1.4 单片机最小系统电路图

完整的STC89C51单片机最小系统电路图如图4.3所示。

图4.3STC89C51单片机最小系统

4.2 DS18B20温度传感器

4.2.1 DS18B20的概述

DS18B20来自于DALLAS公司,这是它们研发的一款新产品,是一种经过改进的具有智能化特征的温度传感器,和此前通常所用的传统型的包括热敏电阻在内的一些测温元件进行对比,会发现它不仅可以把被测物的实时温度读出来,还能根据当前必须满足的实际要求进行简单编程,从而确定数位范围在9~12位之间的对于实际数字进行正确读数的方式。从性能方面看,DS18B20所具有的突出特点包括:接口非常独特,只有一个,单线连接即可,端口引脚只用一个就可以实现通信了;一个以上的DS18B20能够被同时并联在仅有的一组三线上面,从而具有多点组网应有的强大功能;不需要在外部连接任何器件;能够利用数据线进行有效供电,电压的允许范围在3.0~5.5v之间;在待机的过程中不会发生任何功耗;在对温度的实际值进行表示时,可用二进制数字,数位为9位或者是12位;用户对于系统的报警功能可以进行设置;报警搜索的器件,是命令中要求识别的,并且出现了明显的超出了程序中所设定的温度极限的标志的,这里提到的温度极限就是报警的条件;负电压所表现出来的特性,当不慎将电源极性进行了反向连接的时候,温度计尽管并不会由于发热导致被烧毁,但也是无法正常工作的。图4.4里面所展示的就是DS18B20的引脚。

4.2.2 DS18B20的工作原理

通讯协议里面规定,DS18B20在主机(单片机)的实际控制之下顺利实现温度转换的过程里面,一定会走三步,一是任何一次对于温度进行读写之前,都必定会对DS18B20执行使其复位的具体操作,二是在复位成功后,必定会发出ROM指令,三是发出RAM指令,这样才可以按照预定的程序对DS18B20进行有效操作。在执行复位操作的过程里面,必须要求主CPU将它的数据线进行时长为500μs的下拉,而后松开释放,而DS18B20在接到了信号之后,大约会延迟16~60μs的时间才会发出时长在60~240μs之间较低的存在低脉冲,若主CPU成功地接收到了这个信号,就意味着复位已经成功了。表4-1里面所列的就是DS18B20发出的各种ROM指令,而表4-2为RAM指令表。

表4-1DS18B20的ROM指令表

指令

约定代码

功能

ROM

33H

DS1820温度传感器ROM中的编码(即64位地址)

符合ROM

55H

发出此命令之后,接着发出64位ROM编码,访问单总线上与该编码相对应的DS1820使之做出响应,为下一步对该DS1820的读写作准备。

搜索ROM

0FOH

用于确定挂接在同一总线上DS1820的个数和识别64位ROM地址。为操作各器件作好准备。

跳过ROM

0CCH

忽略64位ROM地址,直接向DS1820发温度变换命令。适用于单片工作。

警搜索命令

0ECH

执行后只有温度超过设定值上限或下限的片子才做出响应。

表4-2DS18B20的RAM指令表

指令

约定代码

功能

度变换

44H

启动DS1820进行温度转换,12位转换时最长为750ms(9位为93.75ms)。结果存入内部9字节RAM

读暂存器

0BEH

读内部RAM中9字节的内容

存器

4EH

发出向内部RAM的3、4字节写上、下限温度数据命令,紧跟该命令之后,是传送两字节的数

制暂存器

48H

RAM中第3、4字节的内容复制到EEPROM中。

EEPROM

0B8H

EEPROM中内容恢复到RAM中的第2、3字节。

供电方式

0B4H

DS1820的供电模式。寄生供电时DS1820发送“0”,外接电源供电DS1820发送“1”。

第六章 仿真及实物的设计

6.1 仿真设计

仿真设计主要实现从温度传感器处采集到的水温显示到数码管上,自行设置温度上下限,并且达到该限度时对应蜂鸣器和继电器进行相应的工作。仿真图如图6.1。

6.1仿真图

当仿真开始运行时,DS18B20会把它测量回来的实际温度传递到单片机里面,单片机接收到这些数据后,会把它传递给数码管,数码管在收到这些实时的温度数据后,就会使其成功地显示出来。如图6.2。

图6.2仿真运行图

在仿真运行开始时,首次把设置键按下去,就能对于目标温度进行最高值的设置,操作时通过反复地按加值键以及反复地按减值键来完成。再次按下设置键时可以对目标温度的下限按照同样的方法进行设置。设置的温度都会显示到数码管上。第三次按下设置键时,数码管恢复到实时温度的显示,如图6.3所示

图6.3仿真时温度范围的设

当仿真运行时数码管上显示的实时水温低于提前设置好的最低的温度的时候,蜂鸣器就会以非常突出的声音对人进行示警,这时继电器会随之进行吸合。当实时温度比提前设置好的最高温度还要更高的时候,蜂鸣器也会对人进行示警,这时继电器也会随之立刻断开。如果这时的实时温度恰好在所设置的温度范围内,继电器保持原有的工作状态,如图6.4所示。

图6.4仿真运行图

6.2 原理图设计

这份设计所用的完整的原理图,是使用ALTIUMDESIGNER软件绘制出来的,内容齐全完善,可以帮助设计者或加工者完善和加工设计内容,原理图如图6.2。

6.5原理图

6.3 PCB图设计

PCB图是本次毕业设计实物制作的基础,通过该图能直观地了解到相关器件及其分布情况和布线情况,如图6.3。

图6.6PCB图

6.4 实物设计

实物的制作需要非常细心地按照图示完成所有元器件的焊接,尤其注意元器件位置的摆放和朝向,焊接时也注意防止出现虚焊漏焊的情况,焊接完成后也应该及时使用万用表等器件进行检查。四个按键从左到右依次为设置键、加值键、减值键和复位键。实物图如图6.4。

当接通电源时,DS18B20所测量出来的实际水温的数值就会被传递给单片机,单片机接收到这些数据之后,会把它们传递给数码管,而数码管在收到这些实时的温度数据后,就会使其成功地显示出来。如图6.8所示。

图6.8实物运行图

第一次按下设置键,可以对目标水温的上限通过加值键和减值键进行设置,在数码管上会显示当前所设置的水温上限。如图6.9所示。

图6.9水温上限设置

再次按下设置键,可以对目标水温的下限通过加值键和减值键进行设置,并在数码管上显示当前设置的水温下限,如图6.10所示。

6.10水温下限设置

第三次按下设置键,会将之前设置好的水温上下限保存到单片机中,在数码管上会重新显示实时水温,单片机会根据用户设置的水温上下限并结合实时水温开始工作,分为以下几种情况:1.如果实时水温正好在用户设置好的水温上下限范围内,那么将保持原有的工作状态。2.如果实时水温低于用户设置好的目标水温下限,那么蜂鸣器报警,单片机将控制继电器吸合,继电器连接的加热棒会开始工作,直至水温达到用户设置好的目标水温上限,蜂鸣器报警,单片机将控制继电器断开,加热棒停止工作。如图6.11所示。

图6.11实物工作图

如果学弟学妹们在毕设方面有任何问题,随时可以私信我咨询哦,有问必答!学长专注于单片机相关的知识,可以解决单片机设计、嵌入式系统、编程和硬件等方面的难题。
愿毕业生有力,陪迷茫着前行!

  • 26
    点赞
  • 26
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值