版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领
文档简介
基于单片机的多通道温度传感器数据采集系统设计目录摘要: 摘要:科学技术的持续发展带动着社会经济的发展,经济的不断发展改变着人们的生活生产方式,也改变着人们的生活习惯,从最初家电的出现到现在智能家电的慢慢普及,技术在慢慢的渗透进人们的生活,这也体现出了技术的不断发展与更新,智能家电领域中用到比较多的温度控制技术。温度的显示和采集多路温度是这次设计的核心部分,将会运用到单片机STC89C52,整个设计可以将多路温度都相对应的显示出来,当所显示的温度数值低于或超出所设定的上下值范围的时候就会精准的发出警报,达到提醒人们的目的,这样的话人们就会做出相应的措施以减少温度过高或过低所带来的损失。这次将会运用到数字温度传感器以及液晶显示屏用以显示出对应的数值,这个技术后期将会更广泛的运用到家电行业。整个设计的话对现在家电行业的发展以及家庭安全防范都将会是一个很好促进。关键词:温度控制系统;STC89C52单片机;智能家电1.绪论选题的背景在这个经济腾飞的现代社会中,各个行业的技术都因为经济的腾飞而蓬勃发展,改变着人们的生活和生产方式,其中在电机行业中得到快速发展的就有单片机技术。新兴产业的发展也带动着相关行业的技术革新,同时推动着新兴事物的出现,尤其是现代社会中,许多智能化产物的出现开始慢慢代替人工操作和半机械式的操作。在日常生产和生活中温度是作为一个最基本的物理量存在的,它指的是物体冷热程度,它是人们对是冷还是热的直观感受。现在我们已知的化学及物理现象都跟温度联系密切,在现在这个社会当中,工厂的安全、产品的质量、能源消耗情况和生产效率等等直接和温度相关。就是在这种背景下,在设计中运用单片机技术,它拥有很强的稳定性将有效的避免因温度过高带来的火灾或温度过低给人们带来财产以及人身安全的危害,这次将会用STC89C52单片机作为整个系统的核心。1.2选题意义我国要不断提升生产效率和保证人们在恶劣条件下的生命财产安全,就必须要采集温度数据,保证温度可以满足人们生存与生产的要求。例如大棚作为农业现代化手艺中主要组成部分,大棚可以合理控制室温,给农作物生长营造一个良好的室温环境,可以大量增加农作物的产量,符合国家向农作物提出的多功能与高产要求,这样就需要到对多点进行温度检测。本文主要研究多路测量温度的方式,避免昼夜温差大对农作物生长的影响,对现在家电行业的发展以及家庭安全防范都将会是一个很好促进。保证在某些对温度要求极高的环境下需要对多点温度进行实时把握,通过本系统可以实现的温度多点实时监测。1.3温度传感器的研究现状现在关于温度多路监控的产品是越来越多了,快速发展的社会,使得其在生产的时候,必须要对温度进行检测。本次设计就会关于温度的多路温度报警系统,主要实现的就是对多路温度进行实时显示相关数据,可以设定温度的阈值,当设定的温度测量值不在设定的范围内就会发出提示音。2.系统总体设计2.1方案选择因为数字温度传感器在很多设计方面都有其独特的优点。在很多的设计中都会用到,不只是作为一个测量温度的工具,还可以通过温度进行控制对应的设备进行加热和降温以达到恒温的效果。本次设计选择的是LCD1602对采集到的值进行显示,通过蜂鸣器起到提醒作用。2.2
总体方案设计首要的构成模块具备四个自力按键的键盘扫描模块;发光二极管构成的检测信息提醒模块;采取1602液晶显示模块;温度节制模块和温度丈量模块(DS18B20传感器)。系统总体方案设计框图如图2-1所示:图2-1系统总体方案设计框图3.硬件电路设计3.1系统结构框架系统结构框架图如图3-1所示,我们的控制器选择了STC89C52作为主控系统,通过DS18B20传感器对温度进行检测与控制,又选择了用串口传达数据的液晶显示屏1602来把测量到温度值展现出来。图3-1总体设计框图3.2单片机简介主要微控制器是STC89C52RC的STC系列单片机,这个控制器有STC系列微控制器的可靠性高、功耗小、不易出现问题、花费小和抗干扰能力强等一系列优势,补丁升级还可以远程控制,微控制器高性价比是因为具有互补金属氧化物和半导体特性,STC89C52RC存储器具有一个8位CPU和8KB闪存程序,能把软件重做和来回升级,能够保存部分用户数据与掉电数据,以防止丢失。在这个装备中运用的手艺是密度高的非易失性存储手艺。MCS-51微控制器的内部指令与C52相互兼容,具备WatchDog功能,该功能可以使得稳定性提升。本设计选择的芯片是通过STC89C52进行设计的,其一共有40引脚。其中P1、P2、P3、P0可以直接连接外部端口,共32个。P3口具备第二功效,它的第二功效的表格如图3-2所示:I/O引脚名称第二功能引脚名称第二功能P3^0串口RXD串口通信接收端P3^1串口TXD串口通信发射端P3^2外部中断INT0外部中断0P3^3外部中断INT1外部中断1P3^4定时器T0定时/计数器0P3^5定时器T1定时/计数器1P3^6外部写引脚WR外部写选择信号端P3^7外部读引脚RD外部读选择信号端图3-2P3端口功能除去上述的32个外接控制的引脚之外,其还有一些控制的引脚,其具体的功能如下所示:单片机电源的引脚存有VCC还有GND这两个,单片机中的接地口是它的第20引脚,单片机的VCC端是它的第40引脚。18和19是它的引脚晶振端接入口,它可以接入22uF的电容实现给整个电路输出稳定的频率。编程端口的控制端,其主要就是RST复位电路、EA使能端、ALE引脚、PSE程序调用端口。RST是复位端,只要给其端口输入高电平,其就会使得单片机整个电路实现复位,只要电平触发一次就会复位一次。EA端是使能端,在很多的特殊的比如中断、定时器中都要用到。PAEN是单片机程序的选择端口,当其端口是高电平的时候,其直接选取单片机内部的程序实现,当其是低电平的时候会选择优先读取外部的程序。正常运行的单片机最小的布局体系被叫做单片机的最小系统。其结构如下图3-3所示:图3-3单片机最小系统3.2.1电源单片机工作的电压是5V,其使用USB电源线直接供电,也可使用电池进行供电,本设计采用的是5VUSB电源线实现的,其可以直接插到电脑端的USB口就可以实现本次设计。连接端口的电路图3-4如下所示:图3-4电源输入原理图3.2.2时钟振荡电路时钟电路是为整个设计提供震荡的,其实现的是类似于心脏功能的核心的处理器,它使整个系统可以完整有序的工作。接法如下图3-5所示:图3-5时钟振荡电路3.2.3复位电路复位系统就是在电子系统程序跑偏或者程序卡死的情况下,实现的一种重新启动的装置。复位体系存在两种,通过按键复位是第一种,既可以选择上电也可以按键的方式进行复位是第二种方式。通过这两种方式都可以实现系统的重新启动,完成程序初始化。其接口图如下图3-6所示:图3-6接口图3.3温度传感器及如何实现多路测温3.3.1选择DS18B20温度传感器的理由选择的理由:DS18B20是一种单线接口的传感器,它输出的是数字信号,具有占地小,开销低等优点,可以适用于多种环境,它与单片机的一条线接口就可以实现温度的读取功效。内部结构如图3-7所示:图3-7DS18B20内部结构图3.3.2
DS18B20的测温原理温度传感器的实际温度计算方法如下:实际温度等于0.5的T值,传感器的数据收集由多个温度传感器组成,DS18B20的关键功能是直接输入数字的温度传感器,用户可以通过程序编写来调整温度传感器的精度。18B20的基本精度通电时12位。在激活18B20后,在不使用的时候可以让它保持待机形态,总线控制器发出[44h]指令后开始进行温度丈量和AD转换,然后在高电平的温度寄存器里面存储收集到的温度数据。测温原理图如图3-8所示:图3-8DS18B20测温原理图为了表示4个传感器的温度在焊接的时候,我选择将它们分开焊接。单片机的P2.4口接I/O口。实际温度来自T实际计算=(T完成-0.25度)+(M-m剩余)/M出售。该设计电路主要用于STC89C52电路和设定温度传感器,它们连接在一起。读取数据,接收器数据采集电路主要是指传感器18B20与微机的连接部位,该温度传感器有3根小枝分别是接地的一侧,单总线端口和电源。如图3-9所示:图3-9温度采集电路3.3.3
DS18B20温度传感器如何实现多路采集通过DS18B20不断刷新数据,检测温度,设置多个传感器从而实现多路温度数据采集,若检测到一个温度传感器,那么就会展现出来一个数据,若是显示多个数据便是监测到多个温度传感器的值。在实物制作中设置了多个传感器,实现了温度的多路采集。3.4按键和指示灯模块常见的元器件里面按键可以分为两脚和四脚按键两种,四脚按键更为常见,所以在本次设计中使用了四脚按键。四脚按键其中有两个邻脚是相连通的,被按下的时候,对角产生连通。如图3-10所示:图3-10按键指示灯电路每一个独立按键都可以实现独立的功能,但每个独立按键都需分别与接单片机上的一个引脚对应。在按下的时候,会迅速由高电平转换成低电平,当检测到电压的变化的时候,就被读取一次,按键被按下,然后实现对应的功能。采用自力按键便是因为它编程容易,方便进行处理。3.5LCD1602模块本系统选择的是LCD1602液晶显示器来作为系统的显示模块,测量的数据可以通过该模块全部显示,1602限制字符长度最长为16个且可以显示两行字符,这已经达到显示要求,可以直观的将室内的温度数据显示,让用户一目了然。LCD模块在运行时的电压是5V,图3-8所示为驱动电路与外围电路。LCD1602引脚结构图如图3-11所示:图3-11LCD1602引脚结构图以下都是LCD1602显示版块的引脚的功能:(1)VSS:电源地;(2)VDD:电源正极;(3)VL:液晶显示偏压;(4)RS:选择数据或命令;(5)R/W:读写选择;(6)E:使能信号;(7)D0〜D7:全双工数据传输端口;(8)BLA:背光源正极;(9)BLK:背光源负极。本次设计选用的液晶屏为LCD1602,让我们花费较少,市面上只要四到五元钱。3.6报警模块蜂鸣器是经常被使用的报警模块,它直接被直流电压驱动。大多数的电子产品都会用到,比如冰箱、洗衣机、电视、空调等内部都有蜂鸣器,作为一种警报器,用来提醒故障或警告。蜂鸣器有很多种类,常见的有源蜂鸣器、无源蜂鸣器等。本次设计采用的是有源蜂鸣器,主要实现的功能就是通过单片机驱动内部电流发出提示音。所以在设计中引入了三极管让驱动电流增加从而放大驱动来弥补单片机的端口驱动能力很弱的缺点。蜂鸣器电路如图3-12所示:图3-12蜂鸣器电路3.7继电器模块继电器这种元器件原理是通过电来触发控制的,主要实现的就是开关的作用。当输入量变化的时候,就会控制实现相应的电气转换,使得被接通或断开。整个系统的输入和输出的都被这个小小的继电器所控制。自动化的控制电路中它更是很常见,实际上它是一种“自动开关”,原理是大电流被小电流所节制。继电器在电路中起到的作用是很多很多的,例如它可以实现电路的主动庇护,电压庇护等等。在驱动电路设计中也会被用到,实际上起到的是安全控制和安全电路切换的功能。本设计由于准备由电脑USB接口带动,所以我选择了松乐继电器T73,如图3-13所示:,图3-13继电器在控制外来设备的时,继电器需要驱动芯片才能进行驱动,和上面一样采用三极管放大电路的方式来弥补单片机驱动能力弱的缺点。在设计的时候,驱动电路比较简单,将电信号转换成可控的自动打开和关闭信号,控制其实现自由的通断,继电器可实现高频率的通断,对于一些复杂产品来说。实现的一些基础性的东西足够了,如果输入低电平,其就会进行接通,如果输入高电平的时,其就会实现断开。本次设计的驱动继电器的原理图如图3-14所示:3-14驱动电路单片机电源是5V直流电,端口是5V电,驱动能力弱,功耗低,所以其不足以带动继电器来实现其正常的通断。所以需要加入比较完善的驱动才能实现。继电器驱动器有两种含义:一种本身就是作为单片机的电源设备的驱动继电器。还有一种是被用来运行其他负载的继电器,因此我选用的继电器驱动含义是MCU和其他大功率负载的接口。4.系统软件设计4.1软件设计流程图图4-1主程序框图在计划中,主程序的功能是核心控制,从而达到子程序的和相干程序的处置。4.2读出温度程序下面设计的主要就是液晶显示模块和温度模块的程序,流程图如图4-2:图4-2程序流程图温度检测的子程序如下所示:uchards1820rd1(void){unsignedchari=0;unsignedchardat=0;for(i=8;i>0;i--){DQ1=0;dat>>=1;DQ1=1;if(DQ1)dat|=0x80;delay_18B20(10);}return(dat);}voidds1820wr1(ucharwdata){unsignedchari=0;for(i=8;i>0;i--){DQ1=0;DQ1=wdata&0x01;delay_18B20(10);DQ1=1;wdata>>=1;}}液晶显示的子程序如下所示:voidcommand(uintcom) {RS=0; LCD_BUS=com; delayms(5); EN=1; delayms(5); EN=0; }voidwrite_dat(uchardat) {RS=1; LCD_BUS=dat; delayms(5); EN=1; delayms(5); EN=0; }voidwritestring(ucharx,uchary,uchar*s){if(y==0)command(0x80+x);else command(0xC0+x);while(*s) {write_dat(*s);s++; }}voidwriteChar(ucharx,uchary,uchars){if(y==0)command(0x80+x);else command(0xC0+x);{write_dat(s);}}+voidLCD_Initial() {EN=0; RW=0; command(0x38); command(0x0c); command(0x06); command(0x01); command(0x80+0x02); //}4.3温度数据显示程序主要就是持续的将数组里面的采集到的温度数据刷新来显示,然后通过液晶显示屏来把我们收集到的数据显示出来,这就要经过处理将字节转化变成可以在LCD上显示值。voidDisplay_Temperature(uintvt,uchartg,ucharx,uchary) {ucharflagdat;disdata[0]=vt/1000+0x30;disdata[1]=vt%1000/100+0x30;disdata[2]=vt%100/10+0x30;disdata[3]=vt%10+0x30;if(tg==0)flagdat=43;elseflagdat=0x2d;writeChar(x,y,flagdat);writeChar(x+1,y,disdata[0]);writeChar(x+2,y,disdata[1]);writeChar(x+3,y,disdata[2]);writeChar(x+4,y,0X2E);writeChar(x+5,y,disdata[3]);}voidDispAlData(void){unsignedchari1=0,i2=0,i3=0,i4=0,i5=0,i6=0;i1=AlarmTempLow/100; i2=AlarmTempLow%100/10; i3=AlarmTempLow%10; i4=AlarmTempTop/100; i5=AlarmTempTop%100/10; i6=AlarmTempTop%10; 温度的数据的显示主要是用过温度传感器DS18B20采集然后不断的刷新数据来实现,然后将数据实时显示到液晶显示屏1602上,需要将多个字节经过处理之后转化成可以实现的数据,显示出来。4.4设置温度上下限程序本设计采用的控制单元是按键,通过按键可以设置温度的上下限值,本次设计共3个按键,一个设置按键,另外两个是加按键和减按键。DS18B20温度传感器是经由九位数字量来表现器件的温度数据的。电路基本功能已满足我们的设计要求,但是我们还是要依据校准我们设计的电路,从0°开始到100°C之间采用线性校准方法进行温度校准。首先在100°C的温度下测量热阻谐振温度,按照温度指数在不一样温度下测量数值。我们还要把模拟信号经过处理编程需要的数字信号,让电路变得简单,提高电路运行速度。如图4-3所示:图4-3温度上下限程序图读取每一次DS18B20温度数据都要经过初始化,跳过ROM(命令CCH),温度变换(命令44H)和读暂存存储器的这4个操作步骤;温度传感器能够不停地实施测量温度就是不断重复上面四个步骤的过程。5.软件仿真5.1
Keil
μVision4软件介绍软件代码编写采用C语言编写。我们纠正程序当中的语法和逻辑错误就是软件调试,然后再将其投入使用的过程。这是保障单片机可以正常运作的关键。编译单片机程序后,定要送到单片机运行测试。图5-1建立工程仿真图为什么我们都要先运行一下调试程序?其实这是为了帮助发现与改正程序中的逻辑错误,将编纂一个编译语言程序来进行编译连接,这样才能得到需要的HEX文件,并且我们还要将这个文件下载到芯片里面,才能进行仿真。通过实际操作查找逻辑错误,不断改变流程最终满足了许多要求,本次计划编纂程序创立的工程的界面如上图5-1所示:将已经写好的程序,编译没有错误后将其生成hex文件。编译好的图片如下图5-2所示图5-2编译成功仿真图我们接下来使用的软件是由STC公司制作的ISP下载软件把我们之前生成的hex文件下载到选择的单片机里面。下载界面如图5-3所示。将电脑和烧写软件进行连接,用鼠标点击单片机型号栏的下三角,把对应的型号选择好进行扫描,我们确认HEX文件已经下载到了单片机里面。然后我们就可以开始仿真了。图5-3装入程序仿真图5.2系统原理图绘制图纸设计步骤对我们而言也不是特别的麻烦,第一步就是熟练的掌握绘图软件的使用,选择合适的图纸尺寸,合理的摆放元器件,连接电路图线路。后将各个器件封装,封装以后检查一下有没有问题之后,导入得到PCB。在生成PCB图后一定进行手动的布线,正确的将器件摆放到最后板子打出的位置,最后就是对板子进行覆铜的一个处理,如果是双面板,需要两边都覆铜,如果是单片板,只需要单面覆铜就好啦。整体原理图如图5-4所示:图5-4整体原理图我们可以尝试通过修改和布线将原理图更优化,还可以通过元器件的设置来调整,把直接连接器件的引脚,标定电气网络标号,用电气规则来检查一下是否符合规则,查到错误后从而及时改正,这样才能得到正确得PCB图。PCB板上两个孔之间的距离和每个孔的大小我们都要调整和完善。整体完善后PCB图5-5所示:图5-5PCB仿真图5.3系统调试protues软件是EDA(电子自动化设计自动化)软件工具,在英国中发布,不仅为其他EDA软件提供了仿真功能,还提供了从方案设计到运行、外围设备仿真以及直接转换为PCB的其他功能,是当前集成到方案仿真中的最佳软件产品之一。我们采用protues软件来完成我们的仿真需求。绘制的图如图5-6所示:图5-6整体设计仿真图将仿真图绘制好了之后,就要一遍一遍的调试,直到达到我们的效果。下图是开机以后得到的界面,如图5-7所示:图5-7系统调试仿真图开机之后,需稍微等一会,测量的多路温度的数值就会显示出来。如上图所示,它可以直接显示出4个温度传感器的温度数值。用A,B,C,D代表4个温度的编号。可以通过按键对温度的限制进行设置,当其数值不在设定的范围的时候,就会进行报警。四个按键是设置按键、加按键、减按键、告急报警。如图5-8所示:图5-8温度上下限模块仿真图如上图5-8所示,可以通过按键来进行设置1602液晶显示屏第二行上面显示设定的温度上下限值,。当任何的一路温度不符合我们设定的值的时候,它的指示灯和蜂鸣器就会发出提示。当任何一路温度低于我们设计的温度的限度的时候,我们的蜂鸣器就会响,同时红灯会亮,暗示着过热或过冷。报警模块如下图5-9所示:图5-9报警模块我们设计的风扇和蜂鸣器会在任何一个传感器检测到数据高于我们设置的温度上限就会转动和发出警报。这个采用我们的元器件里面的风扇来显示,报警模块风扇部分如图5-10所示:图5-10报警模块(风扇)对于相应的风扇,只要给低电平,其就会风扇转动,模拟进行降温。当温度到了设定的范畴的时候就会主动停下。6.实物测试为了证明设计的电路可以完成设计目标并对已经制作完成的实物进行功能验证设计功能,实物如下6-1所示:6-1实物图对实物进行开机,连接电脑,通过按钮设置参数,通过下图6-2可得出设计正常进行并且对温度测试模块进行确认,可以得出温度可以正常检测,并且程序运行正常。
温馨提示
- 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
- 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
- 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
- 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
- 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
- 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
- 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。
最新文档
- 2025年通信理论考试题库及答案
- (2025年)护理技能大赛初试题及答案
- 文旅融合文旅环境综合治理提升方案
- 瑞银-美国股票策略:2026年一季报简报:5月5日-US Equity Strategy 1Q26 Earnings Brief:May 05-20260505
- 精密零部件自动化产线项目可行性研究报告模板-立项申报用
- 河池市辅警招聘面试题及答案
- 2026 幼儿情绪管理惊讶情绪心理分析课件
- 2026一年级上《20以内进位加法》易错题解析
- 2026年入党积极分子培训考试卷(十五)及答案
- 2026年入党积极分子结业考试模拟试卷及答案(八)
- 2025年AP考试物理C真题
- 2025课堂惩罚 主题班会:马达加斯加企鹅课堂惩罚 课件
- Maya 2024三维设计基础教程(全彩微课版) 课件全套 来阳 第1-10章 初识Maya 2024 -综合实例
- 售后服务部主管述职报告
- GB/T 6109.5-2025漆包圆绕组线第5部分:180级聚酯亚胺漆包铜圆线
- 《食品冷链物流追溯管理要求编制说明》
- 2025年中国地质调查局招聘面试题预测与备考指南
- 钟山区南开风电场环境影响报告表
- 公司报废件物品管理制度
- 弱电智能化运维管理制度
- 牲畜养殖技术课件
评论
0/150
提交评论