室内温度检测汇总.docx

上传人:b****6 文档编号:15609597 上传时间:2023-07-06 格式:DOCX 页数:29 大小:229.62KB
下载 相关 举报
室内温度检测汇总.docx_第1页
第1页 / 共29页
室内温度检测汇总.docx_第2页
第2页 / 共29页
室内温度检测汇总.docx_第3页
第3页 / 共29页
室内温度检测汇总.docx_第4页
第4页 / 共29页
室内温度检测汇总.docx_第5页
第5页 / 共29页
室内温度检测汇总.docx_第6页
第6页 / 共29页
室内温度检测汇总.docx_第7页
第7页 / 共29页
室内温度检测汇总.docx_第8页
第8页 / 共29页
室内温度检测汇总.docx_第9页
第9页 / 共29页
室内温度检测汇总.docx_第10页
第10页 / 共29页
室内温度检测汇总.docx_第11页
第11页 / 共29页
室内温度检测汇总.docx_第12页
第12页 / 共29页
室内温度检测汇总.docx_第13页
第13页 / 共29页
室内温度检测汇总.docx_第14页
第14页 / 共29页
室内温度检测汇总.docx_第15页
第15页 / 共29页
室内温度检测汇总.docx_第16页
第16页 / 共29页
室内温度检测汇总.docx_第17页
第17页 / 共29页
室内温度检测汇总.docx_第18页
第18页 / 共29页
室内温度检测汇总.docx_第19页
第19页 / 共29页
室内温度检测汇总.docx_第20页
第20页 / 共29页
亲,该文档总共29页,到这儿已超出免费预览范围,如果喜欢就下载吧!
下载资源
资源描述

室内温度检测汇总.docx

《室内温度检测汇总.docx》由会员分享,可在线阅读,更多相关《室内温度检测汇总.docx(29页珍藏版)》请在冰点文库上搜索。

室内温度检测汇总.docx

室内温度检测汇总

 

长春工程学院电气工程系

课程设计(论文)指导书

设计题目:

室内温度检测及模糊控制系统

专业班级:

自动化专业0841、0842班

学生姓名:

指导教师:

张允

一、课程设计目的

课程设计的目的是:

培养学生综合运用模糊控制技术所学的基本理论、基本知识,分析与解决实际问题的能力。

通过课程设计,使学生基本具备以下五个方面的能力:

1、检索中外文献的能力;

2、独立思考,对方案进行论证、分析与比较的能力;

3、初步掌握模糊控制系统的设计原则、设计方法、设计的主要内容及相关程序的编写的能力;

4、使用计算机的能力、计算与绘图的能力;

5、撰写设计说明书,表述研究结果及答辩的能力。

二、设计的主要内容

1、室内温度检测及控制系统总体方案的设计,画出整个系统的原理框图。

2、系统硬件电路的设计,包括单片机和温度传感器的选择,驱动电路的设计,键盘与显示电路的设计,报警电路的设计,A/D转换电路的设计等。

3、模糊控制推理过程阐述。

4、利用GUI建立FIS,得到输出曲面。

三、设计的步骤

1、确定控制系统的总体方案,画出整个系统的原理框图;

2、CPU型号的选择;

3、单片机和温度传感器的选择;

4、驱动电路的设计;

5、键盘与显示电路的设计;

6、声光报警电路的设计;

7、A/D转换电路的设计;

8、单片机与存储器接口电路的设计等;

9、阐述模糊控制推理过程,利用GUI建立FIS,得到输出曲面;

10、绘制有关图纸,编制设计说明书;

11、答辩;

四、设计的基本要求

1、针对设计题目,综合所学知识进行调研、文献查询等,独立完成设计工作;

2、撰写设计论文一份,字数不少于五千。

设计说明书要条理清晰、内容充

实,采用计算机打印,内容包括以下几部分:

①摘要;

②目录;

③各章节内容;

④结论;

⑤参考文献。

3、图纸采用计算机绘图,要求图形、符号、线条等符合国家标准;

4、完成与设计内容有关的外文翻译一份,字数不少于五千;

五、进度计划安排

序号

起止日期

设计阶段内容名称

1

第1周

查阅资料

2

第2周

模糊控制系统总体结构的确定

3

第3、4、5周

硬件电路的设计

4

第6、7周

软件部分的设计

5

第8、9周

Matlab仿真

6

第10周

准备答辩

六、主要参考文献

1、《单片机模糊逻辑控制》余永权

2、《单片机应用系统的功率接口技术》余永权

3、《MCS-51系列单片机实用接口技术》李华

4、《智能控制技术》易继锴

5、《MATLAB程序设计与应用》肖伟

 

目录

1课程设计的目的和意义1

1.1课题简介1

1.2设计任务1

1.3课程设计的目的1

2系统方案设计2

2.1系统功能2

2.2系统组成2

2.3设计方案的选择3

3系统硬件设计4

3.1AT89S51最小系统设计4

3.1.1时钟电路硬件设计5

3.1.2电路硬件设计6

3.2键盘/显示电路硬件设计6

3.2.1键盘电路硬件设计6

3.2.2显示电路硬件设计8

3.3报警电路设计9

3.3.1报警电路图9

3.3.2报警电路原理9

4系统主程序设计10

4.1系统主程序流程图10

4.2键盘扫描子程序设计10

4.3显示子程序设计13

4.4密码比较子程序设计14

4.5其他主要子程序设计14

5系统调试15

5.1硬件调试15

5.2软件调试步骤16

6总结17

参考文献18

附录19

附录一19

附录二25

附录三26

1课程设计的目的和意义

1.1课题简介

本学期我们学习了单片机原理与应用,智能控制这两学科,在理论课结束之际我们对智能控制进行了课程设计,以便于我们更进一步深刻地理解和掌握单片机原理与智能控制。

此次我们选择的课题是蚕茧站烘烤炉温度模糊控制系统及MATLAB仿真。

电子密码锁是一种通过密码输入来控制电路或是芯片工作,从而控制机械开关的闭合,完成开锁、闭锁任务的电子产品。

它的种类很多,有简易的电路产品,也有基于芯片的性价比较高的产品。

现在应用较广的电子密码锁是以芯片为核心,通过编程来实现的。

其性能和安全性已大大超过了机械锁。

1.2设计任务

(1)控制系统的总体方案设计,画出整个系统的原理框图。

(2)系统硬件电路的设计:

包括传感器的选择,控制电路的设计,键盘与显示电路的设计,报警电路的设计,A/D转换电路的设计,看门狗设计及存储器、定时器等接口电路的设计等。

(3)模糊控制推理过程阐述。

(4)利用GUI建立FIS,得到输出曲面。

1.3课程设计的目的

课程设计的目的是:

培养学生综合运用模糊控制技术所学的基本理论、基本知识,分析与解决实际问题的能力。

通过课程设计,使学生基本具备以下五个方面的能力:

1、检索中外文献的能力;

2、独立思考,对方案进行论证、分析与比较的能力;

3、初步掌握模糊控制系统的设计原则、设计方法、设计的主要内容及相关程序的编写的能力;

4、使用计算机的能力、计算与绘图的能力;

5、撰写设计说明书,表述研究结果及答辩的能力。

1.4课程设计的步骤

1、确定控制系统的总体方案,画出整个系统的原理框图;

2、CPU型号的选择;

3、传感器的选择;

4、控制电路的设计;

5、键盘与显示电路的设计;

6、报警电路的设计;

7、A/D转换电路的设计;

8、看门狗设计及存储器、定时器等接口电路的设计等;

9、阐述模糊控制推理过程,利用GUI建立FIS,得到输出曲面;

10、绘制有关图纸,编制设计说明书;

11、答辩;

2系统方案设计

2.1系统功能

本次设计使用ATMEL公司的AT89S51基于单片机的电子密码锁的设计,其主要具有如下功能:

(1)设置4位密码,密码通过键盘输入,若密码正确,则将锁打开。

(2)默认密码为8888,密码可以由用户自己修改设定(支持4位的任意数字密码)位密码,也可以不设密码,输入密码正确后才能修改密码。

(3)状态指示、报警、锁定键盘功能。

密码输入正确时蜂鸣器不会响、密码输入错误数码显示器会显示最后输入的数字,若密码输入错误次数超过3次,蜂鸣器报警,并且相应的有指示灯指明状态。

电子密码锁的设计主要由三部分组成:

3×4矩阵键盘接口电路、密码锁的控制电路、输出八段显示电路。

另外系统还有LED提示灯,报警蜂鸣器等。

2.2系统组成

本系统由单片机STC89c52系统、独立按键、数码管显示和报警系统组成。

系统组成原理框图如下所示。

2

.3设计方案的选择

方案一:

采用数字电路控制

用以74LS112双JK触发器构成的数字逻辑电路作为密码锁的核心控制,共设了9个用户输入键,其中只有4个是有效的密码按键,其它的都是干扰按键,若按下干扰键,键盘输入电路自动清零,原先输入的密码无效,需要重新输入;如果用户输入密码的时间超过10秒(一般情况下,用户不会超过10秒,若用户觉得不便,还可以修改)电路将报警20秒,若电路连续报警三次,电路将锁定键盘2分钟,防止他人的非法操作

采用数字电路设计的方案好处就是设计简单但控制的准确性和灵活性差。

故不采用

方案二:

采用以单片机为核心的控制方案

由于单片机种类繁多,各种型号都有其一定的应用环境,因此在选用时要多加比较,合理选择,以期获得最佳的性价比。

一般来说在选取单片机时从下面几个方面考虑:

性能、存储器、运行速度、I/O口、定时/计数器、串行接口、模拟电路功能、工作电压、功耗、封装形式、抗干扰性、保密性,除了以上的一些的还有一些最基本的比如:

中断源的数量和优先级、工作温度范围、有没有低电压检测功能、单片机内有无时钟振荡器、有无上电复位功能等。

在开发过程中单片机还受到:

开发工具、编程器、开发成本、开发人员的适应性、技术支持和服务等等因素。

基于以上因素本设计选用单片机AT89S51作为本设计的核心元件,利用单片机灵活的编程设计和丰富的I/O端口,及其控制的准确性,实现基本的密码锁功能。

在单片机的外围电路外接输入键盘用于密码的输入和一些功能的控制,外接LCD1602显示器用于显示作用。

当用户需要开锁时,先按键盘开锁键之后按键盘的数字键0-9输入密码。

密码输完后按下确认键,如果密码输入正确则开锁,不正确显示密码错误重新输入密码,当三次密码错误则发出报警;当用户需要修改密码时,先按下键盘设置键后输入原来的密码,只有当输入的原密码正确后才能设置新密码。

新密码输入无误后按确认键使新密码将得到存储,密码修改成功。

可以看出方案二控制灵活准确性好且保密性强还具有扩展功能,根据现实生活的需要此次设计采用此方案。

3系统硬件设计

3.1STC89c52最小系统设计

单片机的最小系统包括CPU、复位电路和时钟电路。

在本次设计中采用的是STC89c52,STC系列单片机分别带有8位和10位A/D端口。

根据设计要求,输出电流的变化为200mA-2000mA,步进10mA,精度是(2000-200)/10=180,8位AD精度是2^8-1=255,完全能满足要求。

但如果采用10位A/D,精度为2^10-1=1023,更高的精度有利于系统的精准。

3.1.1时钟电路硬件设计

STC89c52单片机各功能部件的运行都以时钟控制信号为基准,因此,时钟频率直接影响单片机的速度,时钟电路的质量也直接影响单片机系统的稳定性。

常用的时钟电路有两种方式,一种是内部时钟方式,另一种方式是外部时钟方式。

内部时钟方式:

STC89c52内部有一个用于构成振荡器的高增益反向放大器,它的输入端为芯片引脚XLAT1,输出端为XLAT2。

这两个引脚跨接石英晶体和微调电容,构成一个稳定的自激振荡器。

外部时钟方式:

外部时钟方式使用现成的外部振荡器产生脉冲信号,常用于多片STC89c52单片机同时工作,以便于多片STC89c52单片机之间的同步,一般为低于12MHz的方波。

外部时钟源直接接到XLAT1端,XLAT2端悬空。

通过比较不难发现,本次设计中应该采用的是内部时钟方式。

本设计晶振电路如图3-1所示。

在本次设计中采用12M的晶振。

晶振的作用是给单片机正常工作提供稳定的时钟信号。

单片机的晶振并不是只能用12M,只要不超过20M就行,在准许的范围内,晶振越大,单片机运行越快,还有用12M的就是好算时间,因为一个机器周期为1/12时钟周期,所以这样用12M的话,一个时钟周期为12us,那么定时器计一次数就是1us了,电容范围在20-40pF之间,这里连接的是33pF的电容。

机器周期=10*晶振周期=12*系统时钟周期

3-1时钟电路

3.1.2电路硬件设计

复位是单片机的初始化操作,只需给STC89c52的复位引脚RST加上大于2个机器周期(即24个时钟振荡周期)的高电平就可使STC89c52复位。

STC89c52的复位是由外部的复位电路实现的。

STC89c52的复位电路通常采用上电自动复位和按钮复位两种方式。

上电自动复位是通过外部复位电路给电容C充电加至RST引脚一个断的高电平信号,此信号随着Vcc对电容的充电过程而逐渐回落,即RST引脚上的高电平持续时间取决于电容的充电时间。

因此为了保证系统可靠的复位,RST引脚上的高电平必须维持足够长的时间。

除了上电复位之外,还可以进行按键手动复位,这种复位是通过RST端经电阻与电源Vcc接通来实现,在本次设计中采用的是上电按钮手动复位电路。

本次设计中复位电路如图3-2所示:

首先经过上电复位,当按下按键时,RST直接与VCC相连,为高电平形成复位,同时电解电容被电路放电;按键松开时,VCC对电容充电,充电电流在电阻上,RST依然为高电平,仍然是复位,充电完成后,电容相当于开路,RST为低电平,单片机芯片正常工作。

其中电阻R23决定了电容充电的时间,R23越大则充电时间长,复位信号从VCC回落到0V的时间也长。

3-2复位电路

3.2键盘/显示电路硬件设计

3.2.1键盘电路硬件设计

由于本设计所用到的按键数量较少而不适合用矩阵式按键键盘。

采用的是独立式按键键盘,它由行线和列线组成,也称行列式键盘,按键位于行列的交叉点上,密码锁的密码由键盘输入完成,与独立式按键键盘相比,要节省很多I/O口。

本设计中使用的这个3*4键盘不但能完成密码的输入还能作特别功能键使用,比如重置密码功能等。

键盘的每个按键功能在程序设计中设置。

其大体功能(看键盘按键上的标记)及与单片机引脚接法如下所示:

键盘输入原理图

当没有按键按下的时候,单片机循环等待按键按下,一旦有按键按下,便转向相应的子程序处理,处理结束再返回。

每一条水平(行线)与垂直线(列线)的交叉处不相通,而是通过一个按键来连通,利用这种行列式矩阵结构只需要N条行线和M条列线,即可组成具有N×M个按键的键盘。

在这种行列式矩阵键盘非键盘编码的单片机系统中,键盘处理程序首先执行等待按键并确认有无按键按下的程序段。

当确认有按键按下后,下一步就要识别哪一个按键按下。

对按键的识别通常有两种方法:

一种是常用的逐行扫描查询法;另一种是速度较快的线反转法。

首先辨别键盘中有无键按下,有则单片机I/O口向键盘送全扫描字,然后读入行线状态来判断。

把每个键都分成水平和垂直的两端接入,比如说扫描码是从垂直的入,那就代表那一行所接收到的扫描码是同一个bit,而读入扫描码的则是水平,扫描的动作是先输入扫描码,再去读取输入的值经

比对之后就可知道是哪个键被按下。

比如说扫描码送入00001111,前面的0000是代表列,而后面的1111代表行,是让读取的4行接脚先设高,若此时第一行的第一列按键被按下,那读取的结果就会变成00001110(注意1111变成1110),其中LSB的第一个bit会由1变成0,这是因为这个按键被按下之后,会被垂直的扫描码电位短路接通,而把读取的LSB的bit电位拉到0,如此我们就知道是第一行有按键按下,然后再送入扫描码11110000,同理可以得出是第一列有按键按下,2次半段后就可以知道结果是按键“1”被按下。

此即为扫描原理。

3.2.2显示电路硬件设计

LED动态显示电路

LED就是lightemittingdiode,发光二极管的英文缩写,简称LED。

它是一种通过控制半导体发光二极管的显示方式,用来显示文字、图形、图像、动画、行情、视频、录像信号等各种信息的显示屏幕。

显示器显示接口按驱动方式可分为静态显示和动态显示,静态显示时,除变更显示数据期间外,各显示器均处于通电状态,每个显示器的通电占空比为100%,静态显示的优点是显示稳定,亮度高,缺点是占用硬件电路多;动态显示的优点是节省硬件电路,缺点是占用软件扫描时占用CPU时间多。

对于多位LED显示器,通常都是采用动态扫描的方法进行显示,即逐个地循环点亮各位显示器,这样虽然在任一时刻只有一显示器被点亮,但是由于人眼具有视觉残留效应,看起来与全部显示器持续点亮效果完全一样。

为了实现LED显示器的动态扫描,除了要给显示器的输入之外,还有对显示器选择位的控制,这就是通常所说的段控和位控。

因此,多位LED显示器接口电路需要有两个输出口,其中一个用于8条段控线,另一个用于输出位控线,位控线的数目等于显示器的位数。

为了方便编写程序,通常在内部RAM中设置显示缓冲区,存放显示的数字或字符,显示缓冲区单元个数与LED显示器位数相同。

3.3报警电路设计

3.3.1报警电路图

报警电路

4系统主程序设计

4.1系统主程序流程图

主程序流程图

开锁程序流程图

改密程序流程图

5系统调试

5.1硬件调试

常见故障:

1、逻辑错误:

它是由设计错误或加工过程中的工艺性错误所造成的。

这类错误包括错线、开路、短路等。

2、元器件失效:

有两方面的原因:

一是器件本身已损坏或性能不符合要求;二是组装错误造成元件失效,如电解电容、集成电路安装方向错误等。

3、可靠性差:

因其可靠性差的原因很多,如金属化孔、接插件接触不良会造成系统时好时坏,经不起振动;走线和布局不合理也会引起系统可靠性差。

4、电源故障:

若样机由电源故障,则加电后很容易造成器件损坏。

电源故障包括电压值不符合设计要求,电源引线和插座不对,功率不足,负载能力差等。

调试方法:

包括多级调试和联机调试。

在调试过程中要针对可能出现的故障认真分析,直至检查出原因并排除。

本次硬件调试过程中,对所出现的问题进行了认真的分析和改正,最后能够很好的达到设计要求的效果。

5.2软件调试步骤

可以用伟福仿真系统,进行单步和断点调试。

软件调试一般分为四个阶段:

1、编写程序并查错;

2、在C语言的编译系统中编译源程序

3、对程序进行编译连接,并及时发现程序中存在的错误;

4、改正错误。

在软件调试过程中,对出现的错误进行了认真的分析和修改,多次调试成功后,能够很好的达到既定的设计效果。

 

6总结

这次单片机课程设计不仅巩固了以前所学过的知识,而且学到了很多在书本上没有学到过的知识,掌握了一种系统的研究方法,可以进行一些简单的编程。

通过这次课程设计使我懂得了理论与实际相结合是很重要的,只有理论知识是远远不够的,只有把所学的理论知识与实践相结合起来,从理论中得出结论,从而提高自己的实际动手能力和独立思考的能力。

同时在设计的过程中发现了自己的不足之处,例如对以前所学过的知识理解得不够深刻,掌握得不够牢固,学习了单片机C语言。

经过三周的努力,顺利的完成了单片机课设。

这是一个磨练意志的过程。

从课题的选择开始,计算器的设计、硬件和软件系统的设计、到最后的Proteus软件仿真完成,这其中经历了很多困难,但是更重要的是在这个过程中我得到了很大的锻炼。

一方面通过C51单片机等一些器件的设计让我学习和掌握了单片机技术的基础知识和技术要点,也使以前学的很多知识都得到了运用;另一方面在用Proteus软件画电路图时,然后再转换成一维的WORD中进行编辑,这个过程中让我掌握了计算机辅助的设计技术。

当然,这是一个需要不断的尝试,不断的校核,不断的修改,最后完成一个合理的设计的过程。

需要的是细心和耐心。

在很大程度上培养了我拼搏的工作精神。

使我受益匪浅,更加明确了自己专业的方向。

通过本次课设,我不仅学到了关于单片机技术方面的许多专业知识,同时也让我感觉到团队合作的重要性。

其实如何有效和快速的找到资料也是课设给我的启发,利用好图书馆和网络,是资源的到最好的利用。

与他人交流思想是取得成功的关键,在交流中,不仅强化了自己原有的知识体系,也扩展了自己的思维。

课设是一个通过思考、发问、自己解惑并动手、提高的过程。

我会在以后的学习中不断学习,积累经验,完善自己。

这里我要感谢实验室的指导老师,没有老师的细致讲解和耐心的检查,也就没有我的电子密码锁。

常感谢!

 

参考文献

[1]周文龙.基于单片机控制的电子密码锁.大众商务2009年第3期

[2]金长茂.数字电子密码锁.科技广场2011年第03期

[3]邹逢兴.计算机硬件技术基础试验教程[M].高等教育出版社,2000

[4]周佩玲.16位微型计算机原理接口及其应用[M].中国科学技术大学出版社,

2000

[5]吴秀清.微型计算机原理与接口技术[M].中国科学技术出版社,2001

[6]邓亚平.微型计算机接口技术[M].清华大学出版社,2001

[7]王迎旭.单片机原理及及应用[M].机械工业出版社,2001

[8]周航慈.单片机应用程序设计技术[M].北京航空航天大学出版社,2002

[9]谢宜仁.单片机实用技术问答[M].人民邮电出版社,2002

附录

附录一

烧入芯片程序清单

#include

#defineucharunsignedchar

#defineuintunsignedint

unsignedchars[13]={0xc0,0xf9,0xa4,0xb0,0x99,0x92,0x82,0xf8,0x80,0x90,0x88,0x80,0xff};

uintpassword[4];

uintorgpassword[4]={8,8,8,8};

uintpwrong=0;

sbitrelay=P2^3;

sbitspeaker=P3^0;

sbitLED0=P3^1;

sbitLED1=P3^2;

sbitLED2=P3^3;

sbitLED3=P3^4;

uintsetted=1;

uintkey=12;

uintdx1=12;

uintdx2=12;

uintdx3=12;

uintdx4=12;

voiddelay(unsignedintc)

{

unsignedinti;

while(c--)

{

for(i=0;i<110;i++);

}

}

voidrelayon()

{

relay=1;

delay(2000);

relay=0;

}

voidsound()

{

speaker=0;

delay(500);

speaker=1;

}

uintpcompare()

{

uinti;

uintj=0;

for(i=0;i<4;i++)

{

if(password[i]!

=orgpassword[i])

{

j++;

}

}

returnj;

}

voidkey_A()

{

password[0]=dx1;

password[1]=dx2;

password[2]=dx3;

password[3]=dx4;

dx1=12;

dx2=12;

dx3=12;

dx4=12;

if(pcompare()==0)

{

relayon();

setted=0;

}

elseif(pwrong<2)

{

sound();

pwrong++;

}

else

{

speaker=0;

delay(3000);

speaker=1;

}

}

voidkey_B()

{

orgpassword[0]=dx1;

orgpassword[1]=dx2;

orgpassword[2]=dx3;

orgpassword[3]=dx4;

dx1=12;

dx2=12;

dx3=12;

dx4=12;

}

voiddisplay(uinta,uintb,uintc,uintd,uinte)

{

LED0=a;

LED1=b;

LED2=c;

LED3=d;

P0=s[e];

delay

(2);

}

voidled()

{

display(0,1,1,1,dx1);

display(1,0,1,1,dx2);

display(1,1,0,1,dx3);

display(1,1,1,0,dx4);

}

ucharkeyscan(void)

{

ucharshuru;

P2=0xf6;

shuru=P2;

shuru=shuru&0xf0;

if(shuru!

=0xf0)

{

delay(5);

shuru=P2;

shuru=shuru&0xf0;

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

当前位置:首页 > 经管营销 > 经济市场

copyright@ 2008-2023 冰点文库 网站版权所有

经营许可证编号:鄂ICP备19020893号-2