基于51单片机的温度控制系统设计论文.docx

上传人:b****8 文档编号:9756240 上传时间:2023-02-06 格式:DOCX 页数:23 大小:586.07KB
下载 相关 举报
基于51单片机的温度控制系统设计论文.docx_第1页
第1页 / 共23页
基于51单片机的温度控制系统设计论文.docx_第2页
第2页 / 共23页
基于51单片机的温度控制系统设计论文.docx_第3页
第3页 / 共23页
基于51单片机的温度控制系统设计论文.docx_第4页
第4页 / 共23页
基于51单片机的温度控制系统设计论文.docx_第5页
第5页 / 共23页
点击查看更多>>
下载资源
资源描述

基于51单片机的温度控制系统设计论文.docx

《基于51单片机的温度控制系统设计论文.docx》由会员分享,可在线阅读,更多相关《基于51单片机的温度控制系统设计论文.docx(23页珍藏版)》请在冰豆网上搜索。

基于51单片机的温度控制系统设计论文.docx

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

1引言

1.1课题背景及意义

当今时代,是一个信息化告诉发展的时代。

科学技术的发展速度越来越快,各种新技术层出不穷,被广泛的运用在各个方面。

其中农业就是一个重要的应用领域。

新技术的出现为农业的发展带来了新的动力,让农产品的产量得到增加的同时使用了更少的人力,使生产效率越来越高。

在一些地区,温室大棚得到了广泛的应用,使人们能够吃到许多原本在当前季节吃不到的水果与蔬菜。

但是,温室大棚技术在当前时代的发展水平还不够充足,现今的温室大棚基本为拱形结构,外部为薄膜等透光性较好的材料,这样做使得农作物能够获得较为充足的太阳光,有利于农产品的生长。

但是温度却得不到有效的控制,使得大棚内的温度或高或低,不利于蔬菜或水果的发育和有机物的积累,造成的结果就是大棚内的产物产量不高,从而使得市场上的价格偏高,不能让大棚内的食品成为每个人都有能力食用的产品,让人们不在期盼与尝试,这对于大棚农业的发展有百害而无一利。

为了解决这个不可避免的问题,本设计使用51单片机进行大棚内的温度控制,通过检测大棚内的温度实时调节以保持最佳温度,让大棚里的作物得到最好的生长环境,从而使得产量能够增加。

使用51单片机主要是由于当前单片机的发展与广泛使用,让单片机的价格不断下降,从而使用户得到最高的性价比。

1.2单片机在农业生产自动化中的应用现状

由于人口增长、资源短缺和环境变化,经济发达国家和一些发展中国家都在研究21世纪农业可持续发展的问题。

将各种现代化高新技术应用于农业生产,在有限的自然条件下,通过人工建造的设施控制环境,提高农业自动化水平,于是产生了设施农业,这些设施大部分都是通过单片机进行控制的。

设施农业就是通过采用现代农业技术,改变自然环境,为种植业、养殖业以及产品的储藏保鲜等提供适当的环境条件,而在一定程度上摆脱对自然环境的依赖进行有效生产的农业。

设施农业以其技术含量高、品质高、效益高和集约化等优点,在国外发达国家得到了快速发展。

国外发达国家一直致力于把自动控制技术应用于设施农业中,即将自动化技术应用于农作物的耕种、施肥、灌溉、防治病虫害、收货的全过程,畜禽水产品等饲养全过程,以及农产品的加工、储藏和保鲜的全过程。

随着农业自动化的发展,发达国家的设施农业已经形成设施技术完备、生产规范、质量保证性强的特点,并向高度自动化、智能化方向发展,成为推动现代农业发展的重要方面。

目前,设施农业比较发达的国家有荷兰、以色列、美国和日本。

农业设施自动化的基本特征就是以农业自动化设施代替人的劳作,完成农业生产的部分或全部作业。

建立在以计算机技术、自动传感和控制技术基础上的农业自动化技术在设施农业中的应用主要体现在:

节水灌溉作业的自动控制、农业温室的自动控制、果实收获作业的自动控制、农产品加工的自动控制和农业生产工厂化等方面。

1.3本文结构

本文一共分为6章,包含了从背景、设计、开发,结论等各个方面,比较系统的介绍了基于51单片机的温度控制系统。

本文的具体结构如下:

第一章为引言,重点介绍了当前大棚技术的发展,以及单片机技术在农业生产中的应用,给出了本设计的设计目的。

第二章为主要器件的应用介绍,针对本设计,给出了所使用的一系列器件的基本介绍,告诉了读者这些器件的特性,以及使用这些器件的原因。

第三章为系统的总体设计,给出了总体设计的流程图,介绍了设计的思路,给出了系统的组成与各组成的具体功能。

第四章为硬件设计,介绍了使用的各器件的具体内部电路

第五章为软件设计,给出了相关代码,并对软件实现的过程进行了简单的解释

第六章为总结,主要是对本设计的一个归纳,介绍了本设计的特点与不足,以及对未来此设计的一个发展规划。

 

2主要应用器件介绍

2.1温度传感器DS18B20

DS18B20温度传感器是当前最常用的一种温度传感器,它的有效位数为9位,能够满足大部分的使用场合。

它使用方便,仅需一条线就能正常的读指令、写指令、转换温度,不需要电池等外部供电设备,让它的适应范围得到了最大程度的体现。

同时,由于如今的产量较高,DS18B20的价格比较低廉,使用起来性价比较高,不会承担太多的经济压力。

并且它能够在各种恶劣的环境下完成温度的识别,它可以测量从-55摄氏度到125摄氏度范围内的温度,范围比较广泛。

虽然误差较大,有0.5℃,但是应用在大棚技术上精度已经足够,所以是最适合的一款温度传感器。

图2-1DS18B20的引脚排列

Figure2-1pinarrangementofDS18B20

DS18B20的温度转换速度较快,这就为实时控制温度提供了可能,他可以在一秒内将温度变为数字,也就是说可以该系统的延时不会超过2秒,这远远超过了大棚技术的要求。

同时一条总线上还可以使用多个传感器,这就可以分类控制,让大棚内的作物不必要只有一种,可以一种作物设定一种温度,为农业生产提供了最大的灵活性,同时也不会出现生产过剩的问题,让农民可以合理种植,合理搭配种植的数量与种类。

2.2步进电机

步进电机在大棚温控系统中是相当重要的一个部分,是温控系统的执行器,温度的实时控制全程需要步进电机的模拟,它在大部分领域都有极其重要的应用。

其中,自动化领域是步进电机的主要使用领域,尤其是在微电子和计算机技术飞速发展的先进,步进电机在自动化控制领域的使用越来越普遍。

步进电机的工作原理也相当容易理解,主要就是将接收到的电脉冲转化为角位移。

通俗来说,就是步进电机一开始处于等待状态,之后,脉冲信号开始到来,每当接收一个脉冲信号,步进电机就旋转一个很小的角度,这个角度就叫做角位移。

每种步进电机的角位移都不一样,角位移越小,步进电机的精确程度越高,控制步进电机旋转的角度的就越准确。

想要旋转固定的角度,只需要给它相应数量的脉冲信号。

例如,如果想转动75度,角位移为7.5度,那么只需要给它10个脉冲就能完成。

步进电机速度与加速度的改变也不复杂,主要是通过控制脉冲的频率来完成的,这些功能足以完成当前设计的模拟。

同直流电机相比,虽然成本偏高,但是误差却大大降低,因此还被广泛的应用在各种开环控制中。

现在市场上的步进电机各种各样,但比较常用的差不多4种,用户可以根据自己的需求灵活选择。

永磁式步机电机的角位移较大,无法实现精准的控制。

反应式步进电机转矩很大,角位移比与上一种相比较低,但噪音较大,不适合静音装置,在大型车间可以使用。

混合式步进电机是上面两种步进电机优点的结合体,角位移很小,所有控制的精准度很高,而且噪音不大,适合静音装置的使用。

正是因为优点众多,这种步进电机的使用比上面两种更加广泛,在这次大棚温控系统中使用的就是这种步进电机。

2.389c51单片机

单片机简称MCU,学术名称叫做微控制器。

在大多数人眼里,单片机相当于一台小型的计算机,因为二者的结构相似。

都是由5部分组成,包括运算器、控制器、存储器、输入设备、输出设备。

二者都可以外接许多设备,完成一些特定的功能。

与计算机相比,他由于体积的关系,并没有提供外围设备,因此功能相对较少。

但是随着科学技术的飞速发展,自动化和智能设备日新月异的情况下,单片机的应用也越来越广泛,大到国家武器,小到家用家电都离不开单片机的使用。

说的重要一点就是,没有了单片机,就没有如今自动化的发展。

单片机内部存储器和计算机内部的存储器大致类似,可分为两种存储器。

一种为只读存储器(ROM),顾名思义就是存储器里的数据只能读取,不能存储,这种存储器的灵活程度比较低,但是断电后存储器里面的内容不会丢失。

另一种为随机存取存储器(RAM),同上一种存储器相比,这种存储器既可以读取,又可以存储,灵活性大大加强,但与此同时,这种存储器也有一个很大的缺点,断电后存储器里面的内容会清空。

也就是说碰上意外断电的情况时,你的劳动成果可能会一去不回。

存储器中的数据用高低电平表示,通过不同的编码规则确定独一无二的数据。

当你想要存储某个数据时,只需要将数据用特定的0,1代码表示出来,但是在个人电脑上,由于操作系统自动完成这种操作,所以不必需要记住如此复杂的编码。

AT89C51单片机内部含有一个4k大小的而且用flash工艺制造的FPEROM和一个128字节大小RAM。

AT89C51是一种能耗比较高的单片机。

因为它拥有8位的微处理器和用Flash工艺制造的存储器,所以在控制领域游刃有余。

它的具体组成如下:

38个管脚,30个双向端口,4个外部中断接口,4个16位定时计数器,4个串行数据交流接口。

因为它内部有一个随意修改的Flash存储器,用户可以尽情修改,达到高品质、低成本的美好结果。

图2-2单片机原理图

Figure2-2Singlechipschematicdiagram

2.4本章小结

本部分介绍了设计所使用的器件,包括DS18B20温度传感器,步进电机,单片机等,为之后使用这些器件打下了基础。

 

3系统的总体设计

3.1设计思路

本次温度设计以51单片机为控制部分,使用温度传感器DS18B20将大棚里面的温度测量出来,将数据发送给单片机,经过单片机处理和存储后,比较现在的温度与用户所设置的温度界限,如果测量到的温度在设定的温度以下,就通过数码管显示当前的温度,如果不在设定的范围内,就在显示此温度的同时自动改变当前的温度。

本系统的主要功能有能够在数码管上实时显示当前温度以方便用户的读取;并且设有温室大棚的温度限制,超出温度范围后可以自动调节温室大棚的温度,保持温室大棚的正常温度,使农作物可以在最合适的温度下生长。

用户可以在单片机上设定温室大棚所需要的合适温度,并且可以对系统运行的温度进行及时调整。

图3-1系统设计流程图

Figure3-1flowchartofsystemdesign

3.2设计的功能及系统组成

这次的大棚温控系统主要由4部分组成:

AT89C51单片机、温度采集系统,步进电机执行系统,显示模块。

主要功能是实现在在温室大棚中采集实时的温度并将温度显示在静态数码管上,同时自动调节温室大棚的温度,使它始终保持在最适温度范围内。

AT89C51单片机:

系统的主要控制中心,温度传感器采集到的数据需要存储到单片机的存储器中,并且在单片机的处理器进行数据的处理,同时编写的程序也需要下载的单片机中才能实现设定的功能,比如温度和转速的修改等。

温度采集系统:

温度的采集需要依赖温度传感器,考虑到性价比、测量的温度范围以及编程的难度,这次使用的市面上最常见的温度传感器DS18B20。

步进电机执行系统:

步进电机执行系统是系统组成的重要部分,是该设计的执行部分,当温度超出设定温度时,步进电机开始旋转,以此模拟温控设备进行降温;并且温度越高,通过使步进电机的转速加快来模拟降温程度更大,以达到实时控制温室大棚温度的目的。

显示模块:

通过静态数码管显示当前温度,使用户在知道当前温度的前提下合理的设置所需要的合适温度。

3.3本章小结

这部分介绍了本设计的总体设计思路,给出了设计的流程图以及设计的主要思想。

最后给出了一部分的实验方法。

 

4系统硬件组成及硬件设计

4.1温度采集系统

温度采集是大棚温控系统中负责采集温度信息的一个模块,在这个系统中,选用的是DS18B20温度传感器,支持多点测温;同时不需外部电源,所需电源只需数据线就能提供。

初始化操作:

首先将总线电平置零480到960微秒之间,然后将电平设置为1,在15到60微秒之间,温度传感器会做出反应。

如果此时电平为1,初始化成功,反之则失败。

读字节操作:

首先将总线电平拉低1微秒,然后拉高,等待6微秒后读取数据,读取完一个数之后过48微秒在接着读取下一个数。

写字节操作:

首先将总线电平拉低1微秒。

然后写入数据,延时等待不得少于60微秒,之后将总线电平拉高,过1微秒之后重复上述操作写入第二个数据。

4.2步进电机执行系统

步进电机执行系统是系统的执行部分,通过步进电机的转速变化来模拟温控设备对大棚温度的改变。

步进电机的IC型号为UDN2916LB,UDN2916LB能够驱动双绕组双极步进电机。

试用的电机电压范围是10V-45V,逻辑电源电压不超过7V;通过内部脉宽调制控制器(PWM)实现750mA的输出电流。

每个PWM控制器由一组电桥、一个感应电阻、一个内部比较器和一个单稳多谐振荡器组成,来独立感应和控制输出电流。

图4-1步进电机原理图

Figure4-1Schematicdiagramofsteppingmotor

4.3显示模块

数码管在生活中运用广泛,大到每个路口都有的红绿灯,小到电子手表,都已经慢慢的渗透在我们的一言一行之中。

数码管显示的数字都是通过段码控制的,想要使用数码管显示数据时,就是用编程的方法设置数码管的段码和位码。

数码管价格实惠,是当前显示的主要载体,因此在这个设计中使用的数码管。

平常的数码管显示数据只会显示一位数字,这明显不符合期望。

为了显示多位数字,我们可以将数字之间的延时定到合适的大小。

在这种情况下,虽然还是一位一位显示,但是利用眼中的余晖,就会同时看到多位数字,这样就可以读取到大棚的温度了。

数码管也叫7段数码管,他的7段亮光共同组成了一个‘8’字,点亮不同亮段的组合就形成了数字0-9,但其实它一共有8段,第8段是用来控制小数点的位置,与显示的数字没有关系。

其中,数码管有两种类型:

共阴极和共阳极。

二者的差距主要就是看数码管段码连接到一起的地方是接地还是接电源。

如果是接地,就是共阴极,反之,就是共阳极。

二者的点亮方式正好相反,使用共阴极时,如果需要点亮相应的段时,只需要赋予它高电平即可,如果是共阳极,那么点亮它就需要给它低电平,二者的段码是不能共用的。

 

图4-2数码管动态显示原理图

Figure4-2Dynamicdisplayofdigitaltubeschematicdiagram

表4-21602的引脚说明

Table4-21602pinsinstructions

编号

符号

引脚说明

编号

符号

引脚说明

1

VSS

电源地

9

D2

Data1/0

2

VDD

电源正极

10

D3

Data1/0

3

VL

液晶显示偏压信号

11

D4

Data1/0

4

RS

数据命令选择

12

D5

Data1/0

5

R/W

读写选择端

13

D6

Data1/0

6

E

使能信号

14

D7

Data1/0

7

D0

Data1/0

15

BLA

背光源正极

8

D1

Data1/0

16

BLK

背光源负极

4.4电路设计

4.4.1单片机引脚及电路图

了解单片机结构就要先熟悉单片机内部的连线,在单片机内部主要用到一下结构:

(1)电源:

单片机电源为5V或者3.5V,可以通过手工随意切换。

单片机的供电主要是通过与电脑相连的数据线供电,不需外接其他电源,使得单片机的使用比较方便。

(2)振荡模块:

提供定时器所需的时序信号,与外接的晶振电容相连接,外部的晶振电容的频率可以自己选择适合自己的,具有很高的灵活性,没有晶振电容,振荡电路就无法正常的工作。

(3)复位模块:

连接到正电源端。

单片机共有4个端口,分别为P0到P4,其中P0端口是单片机中常用的端口。

如图所示,P0端口包括锁存器、输入缓冲器、锁存器、多路开关、输出缓冲器、内部总线、与非门等器件组成。

输入缓冲器中由两个三台缓冲器,其中的三态指的是三种状态,分别为0态、1态和高阻态,这是数据进入单片机的必经之路。

单片机也是一种时序电路,而要形成锁存器也需要时序电路,形成时序电路,需要触发器保存二进制数和D触发器,对于D触发器,当D触发器的输入端板有数据输入时,只有同时存在时序脉冲式输入信号才能从传到Q端。

与门就是00为0,01为0,11为1。

而与非门则相反,00为1,01为1,11为0。

大部分的与非门就是在与门之前加一个反相器,所以二者的本质是一样的。

 

图4-3P0口工作原理

Figure4-3P0portworkingprinciple

4.4.2晶振模块

时序电路是单片机中不可或缺的一部分,单片机工作离不开时序电路的控制,就如温度传感器一般,温度传感器的使用也需要根据时序图进行编程。

但是单片机的所需的频率是有范围的,必须要有所限制,否则就无法正常工作。

与此同时,所选的晶振频率据定了单片机的频率,由此推断出晶振频率也不能随意选择,必须要进行必要的限制,否则可能会造成频率过高或者过低,定时器等无法正常工作,严重时可能还会损害芯片。

图4-4晶振工作原理图

Figure4-4crystalvibrationprinciplediagram

 

4.4.3复位模块

从日常的生活中,我们无时无刻不能感觉到复位电路的重要性,当一个计算器或者其他电子产品卡死时,除了等它耗光电只有复位键才能拯救他们,没有了复位键,一个电子产品就像少了一个清理工与维修器。

复位模块的原理也不复杂,主要就是通电复位,通过给电路提供电流,造成电容的短接,此时电流无法工作,只能给电容充电,直到RSTC端的电压降低为低电平,电路才能正常工作,复位需要的时间不多,但是却不可缺少,它相当于清除了单片机所有的负面状态。

复位模块的构造也不复杂,它主要由3个元件构成:

在一个电容并联一个开关的前提下在串联一个接地的电阻。

单片机能够复位主要就是因为电容充电导致电路所需的电大不足,当充电完毕后,电压达到了电路的要求,复位就无法继续了。

在每次启动单片机时候,都可以进行复位,这样可以使得单片机可以以最好的状态运行。

图4-5复位电路电路图

Figure4-5resetcircuitdiagram

4.5本章小结

本部分主要介绍了本次设计所需要的硬件开发平台以及所有的外围硬件部分,为之后硬件的使用和连接以及硬件平台的使用奠定了基础。

 

5系统的软件设计

5.1软件设计流程

软件设计就是根据所需功能在相关电路的基础上编写代码的过程。

在硬件设计完成之后,软件设计就是要利用温度传感器读取温度,将读取到的数据经过缓冲器送到存储器之中,在运算器中进行数据的处理,根据不同的温度范围,编程控制步进电机的旋转速度。

温度判断的具体过程,要进行温度判断分析,首先进行初始化,然后读入温度数值。

如果温度没有超过温度界限,那么步进电机不工作,温度不需要改变;假如温度超过值较小,比如在5摄氏度之内,那么步进电机以低速旋转,模拟温控设备降低温度;假如温度超过温度界限较大时,那么步进电机以高速旋转,使温度快速回到限定范围之内,以此来达到控制温度的目的。

同时,将温度数值通过数码管显示出来,让用户了解当前的温度,以此来获得更好的使用感觉。

5.2DS18B20的软件实现

DS18B20的使用需要进行初始化和读、写操作的定义,此定义都是根据温度传感器所给的文档中的时序图进行编程实现的,此程序如下。

图5-1初始化时序图

Figure5-1Initializationsequencediagram

 

unsignedcharDs18b20Init()

{

unsignedinti;

DSIO=0;//将总线拉低480us~960us

i=70;

while(i--);//延时642us

DSIO=1;//然后拉高总线,若DS18B20做出反应会将在15us~60us后将总线拉低

i=0;

while(DSIO)//等待DS18B20拉低总线

{

i++;

if(i>50000)//等待>50MS

return0;//初始化失败

}

return1;//初始化成功

图5-2写电路时序图

Figure5-2Writecircuittimingdiagram

VoidunsignedDs18b20WriteByte(unsignedchardat)

{

unsignedinti,j;

for(j=0;j<8;j++)

{

DSIO=0;//每写入一位数据之前先把总线拉低1us

i++;

DSIO=dat&0x01;//然后写入一个数据,从最低位开始

i=6;

while(i--);//延时68us,持续时间最少60us

DSIO=1;//然后释放总线,至少1us给总线恢复时间才能接着写入第二个数值

dat>>=1;

}

}

图5-3读电路时序图

Figure5-3Readcircuittimingdiagram

unsignedcharDs18b20ReadByte()

{

unsignedcharbyte,bi;

unsignedinti,j;

for(j=8;j>0;j--)

{

DSIO=0;//先将总线拉低1us

i++;

DSIO=1;//然后释放总线

i++;

i++;//延时6us等待数据稳定

bi=DSIO;//读取数据,从最低位开始读取

byte=(byte>>1)|(bi<<7);/*将byte左移一位,然后与上右移7位后的bi,注意移动之后移掉那位补0。

*/

i=4;//读取完之后等待48us再接着读取下一个数

while(i--);

}

returnbyte;

}

表5-1DS18B20控制指令

Table5-1DS18B20controlcommand

将初始化和读、写时序编写完毕后之后,就可以使用以上指令得到温度值,方便实用。

5.3步进电机的软件实现

步进电机的转动分为正转和反转,主要是通过节拍控制的。

电机内部分为两个线圈,节拍就是通过这两个线圈的正反电流来控制的。

正转:

A线圈反向电流B线圈正向电流A线圈正向电流B线圈反向电流

反转:

B线圈反向电流A线圈正向电流B线圈正向电流A线圈反向电流

voidGo()

{//A

PH1=0;//PH1为0则A线圈为反向电流

I01=0;

I11=0;//以最大电流输出

PH2=0;//PH2为0则B线圈为反向电流

I02=1;

I12=1;//输出0

delay(speed);

//0

PH1=0;//PH1为0则A线圈为反向电流

I01=1;//输出0

I11=1;

PH2=1;//PH2为1则B线圈为正电流

I02=0;//以最大电流输出

I12=0;

delay(speed);

PH1=1;//PH1为1则A线圈为正向电流

I01=0;//以最大电流输出

I11=0;

PH2=1;//PH2为1则B线圈为正向电流

I02=1;//输出0

I12=1;

delay(speed);

PH1=1;//PH1为1则A线圈为正向电流

I01=1;

I11=1;

PH2=0;//PH2为0则B线圈为反向电流

I02=0;

I12=0;

delay(speed);

}

5.4Keil应用

Keil相对于单片机就相当于VC++6.0对于C语言和C++,Keil也是一个开发平台,在此平台上人们进行建立新的工程项目,用C语言或者汇编语言编写单片机的程序,之后进行编译,无错后生成HEX文件,这些流程与其他的软件开发平台大致类似,不会让使用者有太多的陌生感,为单片机的开发提供了相当大的便利。

有了Ke

展开阅读全文
相关资源
猜你喜欢
相关搜索

当前位置:首页 > 高中教育 > 数学

copyright@ 2008-2022 冰豆网网站版权所有

经营许可证编号:鄂ICP备2022015515号-1