- 368.00 KB
- 2022-04-21 发布
- 1、本文档由用户上传,淘文库整理发布,可阅读全部内容。
- 2、本文档内容版权归属内容提供方,所产生的收益全部归内容提供方所有。如果您对本文有版权争议,请立即联系网站客服。
- 3、本文档由用户上传,本站不保证质量和数量令人满意,可能有诸多瑕疵,付费之前,请仔细阅读内容确认后进行付费下载。
- 网站客服QQ:403074932
智能教学楼电子创新设计大赛论文信息学院电子创新设计大赛智能教学楼(论文)IVn智能教学楼电子创新设计大赛论文摘要针对国际能源短缺及高校教学楼用电浪费的现象,,为了有效利用教室灯光、节约能源,我们设计了以STC89C52单片机作为控制核心的教学楼智能控制系统,能根据人物的活动、光强与温度来控制室内的灯光与风扇并且依靠走廊内光强与声音对灯光进行调控,还能对烟雾等进行预警。调试结果证明该系统具有很好的人机交互界面,且电路简单,成本低,节约能源,可移植性好。也可应用于图书馆、会议室、办公室、办公等场所,具有很好的实际应用价值和广泛的应用空间。 本课题针对教学楼各个模块的控制,分析了教学楼灯光智能控制的原理和实现方法,提出了基于单片机设计教室灯光智能控制系统的思路,并在此基础上开发了智能控制系统的硬件模块和相应软件部分。 该系统以STC89C52单片机作为控制模块的核心部件,室内采用热释红外人体传感器检测人体的存在,采用光敏三极管构成的电路检测环境光的强度,采用DS18B20及LCD1602来测量环境温度并显示,并且可以通过设定的温度值来控制风扇的开启与关闭;走廊采用声音传感模块和光敏三极管构成的电路检测环境光的强度从而控制灯的开启并且具有检测烟雾并进行报警的功能,避免了教学楼用电的大量浪费。本系统程序采用C语言编写,采用模块化结构设计、条理清晰、通用性好,便于改进和扩充。该系统具有体积小,控制方便,可靠性高,针对性强,性价比高等优点,可以满足各类院校对教学楼智能控制的要求,很大程度的达到节能目的。IVn智能教学楼电子创新设计大赛论文目录1系统方案11.1XXXX的论证与选择11.2XXXX的论证与选择11.3控制系统的论证与选择11.3控制系统的论证与选择12系统理论分析与计算12.1XXXX的分析12.1.1XXX12.1.2XXX12.1.3XXX12.2XXXX的计算12.2.1XXX12.2.2XXX12.2.3XXX12.3XXXX的计算22.3.1XXX22.3.2XXX22.3.3XXX23电路与程序设计23.1电路的设计23.1.1系统总体框图23.1.2XXXX子系统框图与电路原理图23.1.3XXXX子系统框图与电路原理图23.1.4电源23.2程序的设计23.2.1程序功能描述与设计思路23.2.2程序流程图34测试方案与测试结果34.1测试方案34.2测试条件与仪器34.3测试结果及分析34.3.1测试结果(数据)34.3.2测试分析与结论45总结4附录1:电路原理图5附录2:源程序6IVn智能教学楼电子创新设计大赛论文IVn智能教学楼电子创新设计大赛论文1系统方案本系统主要由智能教室模块、走廊控制模块、电源模块组成,下面分别论证这几个模块的选择。1.1智能教室模块的论证与选择方案一:本系统以STC89C52单片机作为控制模块的核心部件,室内采用热释红外人体传感器检测人体的存在,采用光敏三极管构成的电路检测环境光的强度,采用DS18B20及LCD1602来测量环境温度并显示,并且可以通过设定的温度值来控制风扇的开启与关闭,具体工作流程如下:1.当热释红外人体传感器检测人体的存在(输出一个高信号)并且光强较低(输出一个高信号)的情况下,通过单片机检测到两个高信号来使室内的灯光控制口输出高信号,从而让室内的灯光亮起。2.当热释红外人体传感器检测人体的存在(输出一个高信号)并且温度高于所设定的温度值(输出一个高信号)时,通过单片机检测到两个高信号来使风扇控制口输出高信号,从而使风扇转动。但美中不足的是:灯光过暗甚至没有亮度,并且风扇的转动往往让LCD1602的显示屏闪烁或者没有任何显示。方案二:此方案的设计是在方案一的基础上进行的改进,经过我们数次的测试与论证得出了一些重要的结论:灯光过暗甚至没有亮度是由于电压很小,达不到灯光正常照明的电压,风扇的转动往往让LCD1602的显示屏闪烁或者没有任何显示也是由于电压不足导致的,因此,我们小组成员提出并采用了通过继电器来直接供电的措施,从而解决了这些问题。综合以上方案,选择方案二。1.2烟雾传感器的论证与选择烟雾传感器属于气敏传感器,是气-电变换器,它将可燃性气体在空气中的含量(即浓度)转化成电压或者电流信号,通过A/D转换电路将模拟量转换成数字量后送到单片机,进而由单片机完成数据处理、浓度处理及报警控制等工作。传感器作为烟雾检测报警器的信号采集部分,是仪表的核心组成部分之一。由此可见,传感器的选型是非常重要的。烟雾传感器介绍方案一:利用物理化学性质的烟雾传感器:如半导体烟雾传感器、接触燃烧烟雾传感器等。方案二:利用物理性质的烟雾传感器:如热导烟雾传感器、光干涉烟雾传感器、红外传感器等。方案三:利用电化学性质的烟雾传感器:如电流型烟雾传感器、电势型气体传感器等。烟雾传感器应满足的基本条件一个烟雾传感器可以是单功能的,也可以是多功能23n智能教学楼电子创新设计大赛论文的;可以是单一的实体,也可以是由多个不同功能传感器组成的阵列。但是,任何一个完整的烟雾传感器都必须具备以下条件:(a)能选择性地检测某种单一烟雾,而对共存的其它烟雾不响应或低响应;(b)对被测烟雾具有较高的灵敏度,能有效地检测允许范围内的烟雾浓度;(c)对检测信号响应速度快,重复性好;(d)长期工作稳定性好;(e)使用寿命长;(f)制造成本低,使用与维护方便。MQ-2型烟雾传感器的工作原理半导体烟雾传感器包括用氧化物半导体陶瓷材料作为敏感体制作的烟雾传感器以及用单晶半导体器件制作的烟雾传感器。按敏感机理分类,可分为电阻型和非电阻型。半导体气敏元件也有N型和P型之分。N型在检测时阻值随烟雾浓度的增大而减小;P型阻值随烟雾浓度的增大而增大。半导体气敏传感器的分类如表所示。类型所利用的特性工作温度代表性被检测气体电阻型电阻表面电阻控制器300~450°C可燃性气体体电阻控制器300~450°C700°C以上乙醇、可燃性气体非电阻型二极管整流特性室温~200°CH2、CO、乙醇晶体管特性150°CH2、H2S本设计中采用的MQ-2型烟雾传感器属于二氧化锡半导体气敏材料,属于表面离子式N型半导体。当处于200~300°C温度时,二氧化锡吸附空气中的氧,形成氧的负离子吸附,使半导体中的电子密度减少,从而使其电阻值增加。当与烟雾接触时,如果晶粒间界处的势垒受到该烟雾的调制而变化,就会引起表而电导率的变化。利用这一点就可以获得这种烟雾存在的信息。遇到可燃烟雾(如CH4等)时,原来吸附的氧脱附,而由可燃烟雾以正离子状态吸附在二氧化锡半导体表面;氧脱附放出电子,烟雾以正离子状态吸附也要放出电子,从而使二氧化锡半导体导带电子密度增加,电阻值下降。而当空气中没有烟雾时,二氧化锡半导体又会自动恢复氧的负离子吸附,使电阻值升高到初始状态。这就是MQ-2型燃性烟雾传感器检测可燃烟雾的基本原理。MQ-2型传感器的结构图如图2.1所示,其外观如2.2所示。23n智能教学楼电子创新设计大赛论文图2.1MQ-2型传感器的结构图图2.2MQ-2型传感器的外观MQ-2气敏元件的结构和外形如图1所示(结构AorB),由微型AL2O3陶瓷管、SnO2敏感层,23n智能教学楼电子创新设计大赛论文测量电极和加热器构成的敏感元件固定在塑料或不锈钢制成的腔体内,加热器为气敏元件提供了必要的工作条件。封装好的气敏元件有6只针状管脚,其中4个用于信号取出,2个用于提供加热电流。1.3声光控制的论证与选择方案一:含555定时器、光敏三极管、双向可控硅的声光控电路 优点:此声、光同时控制的新式照明灯用光敏三极管的输出端控制555的触发控制端,用音频放大电路控制555的复位端。555定时器接成单稳态触发器,控制双向可控硅,简单易制、成本低、节电又方便。原理图设计:设计中考虑到光敏电阻的阻值随电压升高有规律的下降,而蜂鸣器则用驻极体话筒代替。具体原理如图2-1: 图2.1设计原理图555定时器接成单稳态触发器,控制双向可控硅,当555定时器输出高电平,触发可控硅导通,灯泡亮,当555定时器输出低电平时,可控硅未导通,灯泡灭。电路由l0V稳压直流电源供电。为使声光同时控制,将光敏三极管的输出端控制555的触发复位端,音频放大电路控制555的触发端。 缺点:该电路在声强>50dB时,对照明灯的有效控制率高于94%,过于敏感。很小的声音也会促使灯发光,会造成能源的浪费。方案二:运用YQ-I制成声光控电路23n智能教学楼电子创新设计大赛论文优点:声光控延时开关的电路原理图见图2-2所示。电路中的主要元器件是使用了数字集成电路YQ-I,其内部含有4个独立的与非门vd 1~vd4,使电路结构简单,工作可靠性高。陶瓷压电蜂呜片B把声音变成直流控制电压。通过光敏电阻的改变,使电位发生改变,从而控制晶闸管的通断,从而达到使灯自动熄灭的目的。 缺点:降压功能不强,对晶闸管的冲击电流大,对灯泡的寿命有影响。方案三:声光控开关 IC CD4011应用电路 优点:其采用集成块IC CD4011,制作起来成本低、并且节电又方便。同时,对声音的灵敏度适中,并且原件容易设计。 综合以上三种电路的优缺点后,我们决定采用第三种方案。23n智能教学楼电子创新设计大赛论文3电路与程序设计3.1电路的设计3.1.1系统总体框图系统总体框图如图所示STC89S52单片机最小系统热释红外传感器环境光采集电路烟雾报警模块声音采集电路LCD显示模块电机驱动模块DS18B20模块继电器驱动模块3.1.2智能教室模块子电路原理图23n智能教学楼电子创新设计大赛论文3.1.3走廊子系统电路原理图3.1.4电源电源由4节电池来提供3.2程序的设计3.2.1程序功能描述与设计思路1、程序功能描述根据题目要求软件部分主要实现键盘的设置和显示。1)键盘实现功能:设置频率值、频段、电压值以及设置输出信号类型。2)显示部分:显示电压值、频段、步进值、信号类型、频率。2、程序设计思路3.2.2程序流程图1、主程序流程图2、XXX子程序流程图23n智能教学楼电子创新设计大赛论文3、XXX子程序流程图4、XXX子程序流程图4测试方案与测试结果4.1测试方案单片机系统的调试应包括硬件及软件两部分,主要是通过调试发现硬件及软件中存在的问题,查看其运行结果是否符合设计要求。在对系统进行实际调试时,首先应对硬件进行静态调试,同时对系统软件进行初步调试,此后再对软件和硬件进行动态调试,最后才能使系统进入正常工作.(1)静态调试:静态调试主要是排除明显的硬件故障。在将芯片、传感器等元件连接到电路板上时,要保证各处电源极性、电压正确,以防止因电源极性接反或电压过高损坏芯片或传感器。此外,插入芯片必须在断电的情况下进行,特别注意芯片的方向不要插反。(2)软件调试:在软件调试时采用在计算机上利用模拟软件实现对单片机的硬件模拟、指令模拟及运行状态模拟,从而完成应用软件开发的全过程。调试过程中的运行状态、各寄存器状态、端口状态等都可以在指定的窗口区域显示出来,通过这些显示结果随时跟踪程序运行状态,以确定程序运行无错误。(3)动态调试:控制系统的软件和硬件是密切相关的,由于软件模拟开发系统不能对硬件部分进行诊断,同时也不能实时在线仿真,所以用户程序还需跟硬件连接起来进行联调,同时对软件和硬件进行检查和诊断。整个单片机系统进行在线调试时,需借助仿真开发工具来对用户软件及硬件电路进行诊断、调试。在应用系统各模块电路调试成功后,将程序加载到在线仿真器上,这时就能单步或连续地执行目标程序,同时也可以根据需要分段设置断点执行程序。而对于一些与硬件相关的用户程序,如接口驱动程序等,则需要配合硬件,进行在线调试,如果有逻辑错误,也要及时纠正修改。程序调试完毕后,利用编程器将程序固化到单片机中,使整个系统运行起来。各模块电路调试流程图如下示:23n智能教学楼电子创新设计大赛论文图4-1电源调试图4-2单片机最小系统调试图4-3按键电路调试图4-4显示电路调试23n智能教学楼电子创新设计大赛论文图4-5采集电路调试4.2测试条件与仪器测试条件:检查多次,仿真电路和硬件电路必须与系统原理图完全相同,并且检查无误,硬件电路保证无虚焊。测试仪器:高精度的数字毫伏表,模拟示波器,数字示波器,数字万用表,指针式万用表。4.3.2测试分析与结论根据上述测试数据,XXXXXXXXXXXXXXXXXXXXXXXXXXXXX,由此可以得出以下结论:1、2、3、综上所述,本设计达到设计要求。5总结23n智能教学楼电子创新设计大赛论文附录1:电路原理图23n智能教学楼电子创新设计大赛论文附录2:源程序#include#include"lcd.h"#include"temp.h"voidLcdDisplay(int);sbitK1=P2^4;sbitK2=P2^5;sbitK=P1^3;externintth=20;sbitbeep=P1^0;sbitredout=P1^2;sbitled=P1^1;voidmain(){LcdInit();LcdWriteCom(0xc7);LcdWriteData('C');while(1){if(K1==0){Delay1ms(500);if(K1==0);th++;}if(K2==0){Delay1ms(500);if(K2==0);th--;}LcdDisplay(Ds18b20ReadTemp());}}voidLcdDisplay(inttemp){inti,tt,mm;unsignedchardatas[]={0,0,0,0},datas1[]={0,0,0};floattp;23n智能教学楼电子创新设计大赛论文if(temp<0){LcdWriteCom(0xc0);LcdWriteData('-');i=1;temp=temp-1;temp=~temp;tp=temp;temp=tp*0.0625*10+0.5;mm=-temp;}else{LcdWriteCom(0xc0);LcdWriteData('+');tp=temp;temp=tp*0.0625*10+0.5;mm=temp;}datas[0]=temp/1000;datas[1]=temp%1000/100;datas[2]=temp%100/10;datas[3]=temp%10;if(th<0){LcdWriteCom(0x89);LcdWriteData('-');tt=-th;}else{LcdWriteCom(0x89);LcdWriteData('+');tt=th;}datas1[0]=tt/100;datas1[1]=tt%100/10;datas1[2]=tt%10;LcdWriteCom(0x87);LcdWriteData('H');LcdWriteCom(0x88);LcdWriteData(':');LcdWriteCom(0x8a);23n智能教学楼电子创新设计大赛论文LcdWriteData('0'+datas1[0]);LcdWriteCom(0x8b);LcdWriteData('0'+datas1[1]);LcdWriteCom(0x8c);LcdWriteData('0'+datas1[2]);if(redout==1&&K==1){led=0;Lcd1602_Delay1ms(5);}else{led=1;Lcd1602_Delay1ms(5);}if(mm>=(th*10)&&redout==1)beep=0;elsebeep=1;LcdWriteCom(0x80);LcdWriteData('T');LcdWriteCom(0x81);LcdWriteData('A');LcdWriteCom(0x82);LcdWriteData('I');LcdWriteData('');LcdWriteCom(0x84);LcdWriteData('A');LcdWriteCom(0x85);LcdWriteData('N');LcdWriteCom(0xc1);LcdWriteData('0'+datas[0]);LcdWriteCom(0xc2);LcdWriteData('0'+datas[1]);LcdWriteCom(0xc3);LcdWriteData('0'+datas[2]);LcdWriteCom(0xc4);LcdWriteData('.');LcdWriteCom(0xc5);LcdWriteData('0'+datas[3]);LcdWriteCom(0xc6);23n智能教学楼电子创新设计大赛论文LcdWriteData('"');}#include"temp.h"voidDelay1ms(unsignedinty)//延时{unsignedintx;for(y;y>0;y--)for(x=110;x>0;x--);}unsignedcharDs18b20Init()//初始化{unsignedinti;DSPORT=0;i=70;while(i--);DSPORT=1;i=0;while(DSPORT){i++;if(i>5000)return0;//失败}return1;//成功}voidDs18b20WriteByte(unsignedchardat)//写字节{unsignedinti,j;for(j=0;j<8;j++){DSPORT=0;//每写入一位数据之前先把总线拉低1us(数据手册上模糊)i++;DSPORT=dat&0x01;i=6;while(i--);DSPORT=1;dat>>=1;}}unsignedcharDs18b20ReadByte(){unsignedcharbyte,bi;unsignedinti,j;23n智能教学楼电子创新设计大赛论文for(j=8;j>0;j--){DSPORT=0;i++;DSPORT=1;i++;i++;bi=DSPORT;byte=(byte>>1)|(bi<<7);i=4;while(i--);}returnbyte;}voidDs18b20ChangTemp()//温度转换{Ds18b20Init();Delay1ms(1);Ds18b20WriteByte(0xcc);Ds18b20WriteByte(0x44);}voidDs18b20ReadTempCom()//读取温度命令{Ds18b20Init();Delay1ms(1);Ds18b20WriteByte(0xcc);Ds18b20WriteByte(0xbe);}intDs18b20ReadTemp()//读取温度{inttemp=0;unsignedchartmh,tml;Ds18b20ChangTemp();Ds18b20ReadTempCom();tml=Ds18b20ReadByte();tmh=Ds18b20ReadByte();temp=tmh;temp<<=8;temp|=tml;returntemp;}#ifndef__TEMP_H_23n智能教学楼电子创新设计大赛论文#define__TEMP_H_#includesbitDSPORT=P3^0;voidDelay1ms(unsignedint);unsignedcharDs18b20Init();voidDs18b20WriteByte(unsignedcharcom);unsignedcharDs18b20ReadByte();voidDs18b20ChangTemp();voidDs18b20ReadTempCom();intDs18b20ReadTemp();#endif#include"lcd.h"voidLcd1602_Delay1ms(uintc)//延时{uchara,b;for(;c>0;c--){for(b=19;b>0;b--){for(a=1;a>0;a--);}}}#ifndefLCD1602_4PINS//当没有定义这个LCD1602_4PINS时voidLcdWriteCom(ucharcom)//写入一个字节命令{LCD1602_E=0;LCD1602_RS=0;LCD1602_RW=0;LCD1602_DATAPINS=com;Lcd1602_Delay1ms(1);LCD1602_E=1;Lcd1602_Delay1ms(5);LCD1602_E=0;}#else23n智能教学楼电子创新设计大赛论文voidLcdWriteCom(ucharcom){LCD1602_E=0;LCD1602_RS=0;LCD1602_RW=0;LCD1602_DATAPINS=com;//由于4位的接线是接到P0口的高四位,所以传送高四位不用改Lcd1602_Delay1ms(1);LCD1602_E=1;Lcd1602_Delay1ms(5);LCD1602_E=0;LCD1602_DATAPINS=com<<4;//发送低四位Lcd1602_Delay1ms(1);LCD1602_E=1;Lcd1602_Delay1ms(5);LCD1602_E=0;}#endif#ifndefLCD1602_4PINSvoidLcdWriteData(uchardat)//写入一个字节数据{LCD1602_E=0;LCD1602_RS=1;LCD1602_RW=0;LCD1602_DATAPINS=dat;Lcd1602_Delay1ms(1);LCD1602_E=1;Lcd1602_Delay1ms(5);LCD1602_E=0;}#elsevoidLcdWriteData(uchardat){LCD1602_E=0;LCD1602_RS=1;LCD1602_RW=0;LCD1602_DATAPINS=dat;//由于4位的接线是接到P0口的高四位,所以传送高四位不用改Lcd1602_Delay1ms(1);LCD1602_E=1;//写入时序Lcd1602_Delay1ms(5);23n智能教学楼电子创新设计大赛论文LCD1602_E=0;LCD1602_DATAPINS=dat<<4;//写入低四位Lcd1602_Delay1ms(1);LCD1602_E=1;//写入时序Lcd1602_Delay1ms(5);LCD1602_E=0;}#endif#ifndefLCD1602_4PINSvoidLcdInit()//LCD初始化子程序{LcdWriteCom(0x38);LcdWriteCom(0x0c);LcdWriteCom(0x06);LcdWriteCom(0x01);LcdWriteCom(0x80);}#elsevoidLcdInit(){LcdWriteCom(0x32);LcdWriteCom(0x28);LcdWriteCom(0x0c);LcdWriteCom(0x06);LcdWriteCom(0x01);LcdWriteCom(0x80);}#endif#ifndef__LCD_H_#define__LCD_H_/**********************************当使用的是4位数据传输的时候定义,使用8位取消这个定义**********************************/#defineLCD1602_4PINS/**********************************包含头文件**********************************/#include//---重定义关键词---//#ifndefuchar23n智能教学楼电子创新设计大赛论文#defineucharunsignedchar#endif#ifndefuint#defineuintunsignedint#endif/**********************************PIN口定义**********************************/#defineLCD1602_DATAPINSP0sbitLCD1602_E=P2^2;sbitLCD1602_RW=P2^1;sbitLCD1602_RS=P2^0;/**********************************函数声明**********************************//*在51单片机12MHZ时钟下的延时函数*/voidLcd1602_Delay1ms(uintc);//误差0us/*LCD1602写入8位命令子函数*/voidLcdWriteCom(ucharcom);/*LCD1602写入8位数据子函数*/voidLcdWriteData(uchardat);/*LCD1602初始化子程序*/voidLcdInit();#endif23n智能教学楼电子创新设计大赛论文#include"led.h"#include"yanwu.h"#include"mokuai1.h"voidmain(){while(1){led();yanwu();tq();}#include"yanwu.h"voiddelay1(uintz){uintx,y;for(x=z;x>0;x--)for(y=110;y>0;y--);}voidyanwu(){if(fog==0){delay1(5);if(fog==0)led3=0;}if(fog==1){delay1(5);if(fog==1)led3=1;}23n智能教学楼电子创新设计大赛论文}#ifndef__YANWU_H__#define__YANWU_H__#include#include"led.h"sbitfog=P2^3;sbitled3=P1^0;voidyanwu();voiddelay1(uintz);#endif#include"led.h"voiddelay(uintz){uinti,j;for(i=z;i>0;i--)for(j=110;j>0;j--);}voidled(){LED1=1;if((light==1)&&(voice==0)){delay(100);if((light==1)&&(voice==0)){LED1=0;//点亮P1.0口灯delay(10000);}}}23n智能教学楼电子创新设计大赛论文#ifndef__LED_H__#define__LED_H__#include#defineucharunsignedchar#defineuintunsignedintsbitLED1=P2^0;sbitlight=P2^6;sbitvoice=P2^7;voidled();voiddelay(uintz);#endif23