《基于单片机农业蔬菜大棚多温度检测系统的设计与制作.pdf》由会员分享,可在线阅读,更多相关《基于单片机农业蔬菜大棚多温度检测系统的设计与制作.pdf(14页珍藏版)》请在taowenge.com淘文阁网|工程机械CAD图纸|机械工程制图|CAD装配图下载|SolidWorks_CaTia_CAD_UG_PROE_设计图分享下载上搜索。
1、目录一、设计思路.11.设计的思路和采取的技术方案.12.工具设备要求和技术规范.1二、设计过程与说明.21.设计过程.22.多温度检测系统显示电路设计.33.温度检测系统总流程图设计.54.设计过程中碰到的问题与解决措施.7三、设计成果.81.作品的特点.82.归纳和总结.103.设计成果.12五、参考文献.141一、设计思路1.设计的思路和采取的技术方案1.1 设计的思路本温度控制系统采用现在流行的 STC89C52 单片机,配以 DS18B20 数字温度传感器,该温度传感器可自行设置温度上下限。单片机将检测到的温度信号与输入的温度上、下限进行比较,由此作出判断是否启动继电器以开启设备。温
2、度控制系统采用单片机对它们进行控制不仅具有控制方便、简单、灵活性大等特点,而且还可以大幅度提高被控温度的技术指标,从而能够大大提高产品的质量。因此,智能化温度控制技术正被广泛地采用。本设计还加入了常用的数码管显示及状态灯显示灯常用电路,使得整个设计更加完整,更加灵活。该设计已应用于花房,可对花房温度进行智能监控。1.2 采取的技术方案实现方法:本设计主要通过借阅文献提供思路,图书馆借阅技术元件的资料和相关手册查询。以经济实惠、设计巧妙、思路清晰为设计目标,从控制电路设计入手,通过电路原理分析、设计,C 语言编程、C 语言程序分析调试,硬件设计、组装与调试,故障检修与排除,程序烧录与修改等技术方
3、式完成本次设计。步骤:查阅资料,分析激光雕刻机制作工艺和控制流程,了解其原理结构,撰写任务书,组装硬件研究制作控制系统的原理与设计方式,编写 I/O 分配表,再根据 I/O 分配表设计硬件系统、软件程序设计,选择材料,检查元器件是否损坏,组装硬件模块,在对硬件和软件进行调试,对出现的故障进行分析并解决。2.工具设备要求和技术规范2.1 工具设备要求(1)52 单片机开发平台;(2)Altium Designer20;(3)稳压电源;(4)数字万用表。2.2 技术规范(1)GB/T 51198-2017 电子产品工艺设计规范;(2)GB/T 12856-1991 程序设计语言;(3)GB/T 4
4、728 电子产品调试与检测标准。2温度传感器模块ST数码管显示C9模数转换8C蜂鸣器报警按键52电源二、设计过程与说明2.1.设计过程2.1.1 设计前期调研随着社会的发展,科技的进步,以及测温仪器在各个领域的应用,智能化已是现代温度控制系统发展的主流方向。特别是近年来,温度控制系统已应用到人们生活的各个方面,但温度控制一直是一个未开发的领域,却又是与人们息息相关的一个实际问题。针对这种实际情况,设计一个温度控制系统,具有广泛的应用前景与实际意义。2.1.2 设计方案本设计是对温度进行实时监测与控制,设计的温度控制系统实现了基本的温度检测功能:当温度低于设定下限温度时,系统自动报警,同时报警。
5、当温度高于设定上限温度时,系统自动启动报警。温度在上下限温度之间时,执行机构不执行。数码管即时显示温度。图 2-1 温度检测系统框图2.1.3 设计要求(1)基本范围-55125;(2)精度误差 0.1;(3)数码管直读显示;(4)熟悉 STC89C52单片机开发平台和Altium Designer8.0 熟悉STC89C52 单片机中断、定时器、串口等功能,画出硬件连接图,并进行连接;(5)扩展功能:可以任意设定温度的上下限报警功能;(6)进行答辩,并将所设计的作品(图片或视频)和设计说明书上传到毕业设计管理平台。3P121VCCRP110KPOWERU34-LEDS1R6R7R8R92.2
6、K 2.2K 2.2K 2.2KSWITCHVCCU1AT89C51U2DS18B20bQ1bQ2bQ3bQ4901290129012855VCCVCCR2D1RED2R.32K2.2KVCCD2YELLOWY112MHzR410KC230C330VCCK1+C1110uF32R5b2.2KQ59012LS1K2K3K4R110K13214321432SPEAKERSETDECADD2.1.4 多温度检测控制系统主控电路设计本设计采用 STC89C52 单片机主控,STC89C52 是一种低功耗、高性能 CMOS8 位微控制器,具有 8K 在系统可编程 Flash 存储器。在单芯片上,就拥有灵
7、巧的 8 位 CPU 和在系统可编程 Flash,使得 STC89C52 为众多嵌入式控制应用系统提供高灵活、超有效的解决问题。STC89C52 使用经典的 MCS-51 内核,但是做了很多的改进使得芯片具有传统的 51 单片机不具备的功能。在单芯片上,拥有灵巧的 8 位 CPU 和在系统可编程 Flash,使得 STC89C52为众多嵌入式控制应用系统提供高灵活、超有效的解决方案。32 位 I/O 口线,看门狗定时器,内置 4KB EEPROM,MAX810 复位电路,3 个 16 位定时器/计数器,4 个外部中断,一个 7 向量 4 级中断结构(兼容传统 51 的5 向量 2 级中断结构)
8、,全双工串行口。、图 2-2 温度检测主控电路原理图 12.2多温度检测系统显示电路设计本设计采用 LCD1602 液晶显示数值,是一种专门用来显示字母、数字、符号等的点阵型液晶模块,显示的内容为 16X2,即可以显示两行,每行 16 个字符液晶模块(显示字符和数字)。4图 2-3 数码管显示电路图2.2.12.2.1 温度检测控制按键模块本次温度检测系统设计使用的开关是四角按键开关,四角按键开关是一种触点式开关。主要是通过按键触发来发送控制信号,通过触发 4 个按键,分别控制温度检测的启动、关闭;控制温度检测范围的增加,减小。图 2-4 温度检测系统开关按键2.2.22.2.2 温度的感应模
9、块本设计采用温度检测传感器模块采集噪音、放大模拟信号,可以检测温度的大小,内置放大电路,增益可调,性能稳定,可通过 AD 转换获得温度强度的电压信号,有模拟量输出。图 2-5 温度感应模块52.2.32.2.3 温度报警模块蜂鸣器在本系统中为报警系统部分,感应的温度如果超过设定的阈值时,蜂鸣器报警。图 2-6 温度报警电路控制模块2.3温度检测系统总流程图设计本设计是以 STC89C52 单片机为控制核心,进入主程序后首先进行系统初始化、读 AD数据、液晶显示、按键处理,到按键处理,有设定阈值,如果超过阈值就报警,没有就结束显示当前数值。6图 2-7 系统总流程图72.4设计过程中碰到的问题与
10、解决措施2.4.1 程序编译时的错误与解决方法程序分模块完成之后再结合在一起,进行正常编译过程,但是发现一长串的错误,自己先翻看书籍,发现不是代码错误,试着改,但是又会出现新的错误。通过向同学请教,发现是语法有点小毛病,在去掉一个字符串后,进行编译显示 0 错误 0 警告,问题得以解决。2.4.2 温度模块检测的问题与解决办法出现这种状况我以为可能是温度传感器或者是相关的电子元件出现了故障,但经过我的一一逐步排查之后,发现原件没有问题,随后问了老师与同学,最终确定是在代码烧录时程序出现了问题,最终在多次更改了程序后才得以解决。83.1 作品的特点3.1.1 技术指标三、设计成果类别说明工作电压
11、(V)5V工作电流(mA)100150mA单片机类型STC89C52工作环境温度(C):-2060检测温度()-55+125检测精度()0.1表 1.1 技术指标3.1.2 性能特点(1)能够实时检测蔬菜大棚的温度;(2)产品功能灵活,阈值温度可调控,能够满足不同温度检测需求。(3)在检测温度的基础上增加了报警器,以便及时提醒。3.1.3 创新之处(1)程序可以直接操控按钮来改变可测温度范围;(2)感应温度和放大温度信号在一个模块。3.2 归纳和总结做为对在学校所学知识的总结,通过本次的毕业设计,我学到了很多东西,同时在做的过程中也发现很多的问题,从最初的课题选择到对相关课题资料的搜集与摘选,
12、再到自己毕业设计内容的思路的设计、编写以致最后阶段的修改与完善。单片机课程设计重点就在于软件算法的设计,需要有很巧妙的程序算法,有好多的东西,只有我们去试着做了,才能真正的掌握,只学习理论有些东西而不结合实践是很难理解的,更谈不上掌握。从这次的毕业设计中,我真真正正的意识到,在以后的学习中,要理论联系实际,把我们所学的理论知识用到实际当中,学习单机片机更是如此,程序只有在经常的写与读的过程中才能提高,这就是我在这次课程设计中的最大收获。在此过程中,我也要感谢对我一直悉心指导和帮助的指导教师陈业东老师。正是在他不厌其烦的指导和对我们的启发中,让我对我的毕业设计思路逐渐清晰明朗,每当在我毕业设计中
13、遇到困难时充满希望,总能迎刃而解,总之非常感谢他这段时间对我们的鼓励和指导。93.3 设计成果3.3.1 设计图(总电路图)图 3-1 温度检测主控电路原理图3.3.2 产品实物图103.3.2 温度检测系统 PCB 图图 3-2 多温度检测系统 PCB 图3.3.3 测试文件图 3-3 温度检测系统文件编译113.3.4 程序代码#include#define uint unsigned int#define uchar unsigned char#define SETP3_1/定义调整键#define DECP3_2/定义减少键#define ADDP3_3/定义增加键#define BE
14、EP P3_6/定义蜂鸣器#define LED_H P1_6/定义灯光报警#define LED_L P1_7/定义灯光报警#define DQP3_7/定义 DS18B20 总线 I/Obit shanshuo_st;/闪烁间隔标志bit beep_st;/蜂鸣器间隔标志bit H_ZF=0,L_ZF=0;signed char shangxian=35;/上 限 报 警 温 度signed char xiaxian=15;/下限报警温度bit fuhao=0;uint wendu=0;uchar x=0;uchar qian=0,bai=0,shi=0,ge=0;sbit DIAN=P0
15、5;/小数点uchar set_st=0;/状态标志/ucharcodeLEDData=0 xC0,0 xF9,0 xA4,0 xB0,0 x99,0 x92,0 x82,0 xF8,0 x80,0 x90,0 xff;ucharcodeLEDData=0 x5F,0 x44,0 x9D,0 xDd,0 xC6,0 xD3,0 xDB,0 x47,0 xDF,0 xD7,0 xCF,0 xDA,0 x9B,0 xDC,0 x9B,0 x8B;void Delay_DS18B20(int num)while(num-);/*初始化 DS18B20*/12void Init_DS18B20(voi
16、d)unsigned char x=0;DQ=0;/DQ 复位Delay_DS18B20(8);/稍做延时DQ=1;/单片机将 DQ 拉低Delay_DS18B20(80);/精确延时,大于 480usDQ=0;/拉高总线Delay_DS18B20(34);/*读一个字节*/unsigned char ReadOneChar(void)unsigned char i=0;unsigned char dat=0;for(i=8;i0;i-)DQ=0;/给脉冲信号dat=1;DQ=1;/给脉冲信号if(DQ)dat|=0 x80;Delay_DS18B20(4);return(dat);14五、参
17、考文献1徐波。C 和指针M。人民邮电出版社,2014 年2.童诗白华成英编模拟电子技术基础(第五版)M.北京:高等教育出版社,20153.谭浩强编C 程序设计(第五版)M.北京.清华大学出版社,20174.陈忠平编基于 proteus 的 51 系列单片机设计与仿真(第三版)M.北京.电子工业出版社,20155.白军杰 编AltiumDesigner20PCB 设计实战(视频微课版)M.北京.清华大学出版社,20206.肖金球.单片机原理与接口技术M.北京:清华大学出版社,20047.苏成富.多功能音乐门铃J.电机电器技术,2000,第 3 期8(美)Simon Monk 著,吴兰擒,郑海庭,王天祥 译,基于 Arduino 的趣味电子制作,科学出版社,20159秦晓梅,陈育斌(单片机原理综合实验教程M(大连:大连理工大学出版社,2004.