《基于单片机安防系统的毕业答辩ppt课件.pptx》由会员分享,可在线阅读,更多相关《基于单片机安防系统的毕业答辩ppt课件.pptx(21页珍藏版)》请在三一办公上搜索。
1、指导教师:,基于单片机的安防系统设计,班级:组员:,背景 因为我们学了很多关于单片机,VB,电工等知识,所以就想,如何把我们所学习的知识利用起来,而随着社会的发展,科技的进步,我们发现近年来各种入室盗窃、火灾成为人们家庭生活安全的因素,于是我们就想可不可利用单片机和传感器做一个简单的安防系统,让我们所学的知识可以学以致用并且可以一定程度的减少家庭危害。 意义 当家庭发生异常人员入侵,火灾,门窗未关,可以及时发出警告使家庭损失达到最小.,设计的背景及意义,前期准备阶段,问题1:如何收集到家庭的信息? 因为要收集火灾、门窗未关和异常人员入侵等信息,所以我们想到了用火焰传感器、门磁传感器和人体红外传
2、感器来收集信息问题2:如何把收集到的信息显示出来?我们为了可以把收集到的信息显示出来,想到了用AT89C52单片机来控制信息的输出,并设计了对应的警告灯和VB来显示信息为了可以设计出安防系统,我们提出了俩个问题。,设计的结构和主要内容,第一部分 系统软件的模拟第二部分 硬件电路的焊接与连接第三部分 最终成品的演示,第一部分 系统软件的模拟,1:Proteus仿真图设计首先我们设计了一张仿真图,来模拟现实生活需要的功能,我们的仿真图中分别放置了最小系统,3个按钮,一个通信模块,4个继电器和4个灯,其中3个按钮是作为模拟传感器,继电器是为了给灯供电,因为我们的灯是24V电,单片机只能供5V电,所以
3、使用了继电器,来另行供电。为了可以实现传感器接收到信号对应的指示灯可以亮我们编写的如下程序附录1 Keil C51程序编写,而后我们为了能跟VB结合又加入了以下程序附录2 Keil C51程序编写(仿真程序),最小系统,按键模拟传感器,通信模块,警告灯系统,第一部分 系统软件的模拟,2:关于VB的设计 VB我们主要用到串行通信控件MSComm 。对于控件我们主要需要设置(1)Commport串口号(实际通信端口是COM7)(2)Rthreshold设置要接收的字符数为1 (3) Settings设置为4800,n,8,1(这里由于我们用的是12MHz的晶振所以波特率为4800),MSComm控
4、件,显示对应警告,比如:,第一部分 系统软件的模拟,3:效果演示,第二部分 硬件电路的设计,硬件主要有电路板的设计,指示灯的设计和模型的设计。1:电路板的设计对与电路板我们主要以52单片机为核心,其中包括复位电路、晶振电路、串行通信电路等。复位电路和晶振电路合起来就是我们的最小系统,是单片机工作的最低要求,其中晶振选用12MHz, 串行通信电路中的MAX232芯片是专为RS-232标准串口设计的单电源电平转换芯片。,原理图,附录3 晶振电路,附录4 复位电路,附录5 串行通信电路,第二部分 硬件电路的设计,2:电路板的实物图这是我们实际焊接出来的实物图,其中为了可以跟PC端相连接, RS-23
5、2选用了9针转USB口线.如下图,复位电路,晶振电路,VCC插座,GND插座,连接RS232第3引脚,连接RS232第2引脚,第二部分 硬件电路的设计,2:警告板的设计可以看见我们警告板正面设计了4个灯,用来显示传感器的状态。背面可以看见有4个继电器,单片机主要控制继电器来使对应灯的亮灭,第二部分 硬件电路的设计,3:家庭模型的设计(1)模型中设计了卧室厨房和客厅,分别用于放置传感器(2)然后通过单片机对各个传感器的状态进行读取。(3)最后单片机通过串口连接将数据发送给上位机,人体红外传感器,门磁传感器,火焰传感器,第三部分 最终成品的演示,后期,分工详情,家庭模型设计,调试,VB设计及编程,
6、单片机编程,电路板的焊接,结束,硬件电路的连接,本设计能够顺利完成,要特别感谢我的导师托亚老师,感谢老师对我们的关心和帮助。最后向所有关心和帮助过我们的人表示真心的感谢。,致谢,附录1 Keil C51程序编写(仿真程序),#includesbit N1=P10;sbit N2=P11;sbit N3=P12;sbit L1=P20;sbit L2=P21;sbit L3=P22;sbit L4=P23;/主函数 void main() /初始化L1=1;L2=1;L3=1;L4=0; /当N1按下时,L1灯亮if(N1=0) L1=0;L2=1;L3=1;L4=1; put(1); whil
7、e(N1=0); L1=1;L2=1;L3=1;L4=0; put(4); /当N2按下时,L2灯亮if(N2=0) L1=1;L2=0;L3=1;L4=1; put(2); while(N2=0); L1=1;L2=1;L3=1;L4=0; put(4); /当N3按下时,L3灯亮if(N3=0) L1=1;L2=1;L3=0;L4=1; put(3); while(N3=0); L1=1;L2=1;L3=1;L4=0; put(4); ,对应定义了7个端口用于控制输出输入,N1到N2是按钮的端口,L1到L4是灯的端口,主函数主要是由简单的IF语句组成,用来控制按钮按下时对应的灯可以亮,这里
8、判断按钮是否弹起来,L1到L4是对应的灯,第一部分 系统软件的模拟,附录2 Keil C51程序编写(仿真程序),/*串行通信初始化子函数*/ void usartINit() SCON=0X50; /串行口控制寄存器,工作方式2,容许多机通信接收 REN置位容许接收(可由软件清零或置位) TMOD=0X20; /定时计数控制寄存器,确定定时计数工作方式(T1,工作方式2) TH1=0XF3; /计算波特率初值,波特率4800,频率12M PCON=0X80; /电源与波特率选择寄存器,波特率加倍 TR1=1; /启动T1 ES=1; /串行中断开关 EA=1; /总中断开关 /*发送子函数*
9、/void put(char c) SBUF=c; /发生函数 while(! TI); /判断是否发送完 TI=0; /软件清零,主要工作方式为2和波特率4800,为了把信息传到VB里,第一部分 系统软件的模拟,初始化是为了打开串口,同时设置工作方式和波特率,附录3 晶振电路,(1)晶振电路单片机内部有一个用于构成振荡器的高增益反相放大器。引脚XTAL1和XTAL2分别是此放大器的输入端和输出端。这个放大器与作为反馈元件的片外晶体谐振器一起构成一个自激振荡器。外接晶体谐振器以及电容C1和C2构成并联谐振电路,接在放大器的反馈回路中。对外接电容的值虽然没有严格的要求,但电容的大小会影响震荡器频
10、率的高低、震荡器的稳定性、起振的快速性和温度的稳定性。因此,此系统电路的晶体振荡器的值为12MHz,电容应尽可能的选择陶瓷电容,电容值约为30pF。,第二部分 硬件电路的设计,晶振电路主要是用来控制单片机运行节奏的,附录4 复位电路,复位是由外部的复位电路来实现的。片内复位电路是复位引脚RST通常采用上电自动复位和按键手动复位两种方式,此电路系统采用的是按键手动复位电路,高电平时复位。当时钟频率选用12MHz时,电容选用10F,电阻约为1K。,第二部分 硬件电路的设计,复位电路主要是使系统恢复到初始状态,附录5 串行通信电路,MAX232芯片是专门为电脑的RS-232标准串口设计的接口电路,使
11、用+5v单电源供电。内部结构基本可分三个部分:(1)第一部分是电荷泵电路。由1、2、3、4、5、6脚和4只电容构成。功能是产生+12v和-12v两个电源,提供给RS-232串口电平的需要。(2)第二部分是数据转换通道。由7、8、9、10、11、12、13、14脚构成两个数据通道。其中13脚(R1IN)、12脚(R1OUT)、11脚(T1IN)、14脚(T1OUT)为第一数据通道。8脚(R2IN)、9脚(R2OUT)、10脚(T2IN)、7脚(T2OUT)为第二数据通道。TTL/CMOS数据从T1IN、T2IN输入转换成RS-232数据从T1OUT、T2OUT送到电脑DP9插头;DP9插头的RS
12、-232数据从R1IN、R2IN输入转换成TTL/CMOS数据后从R1OUT、R2OUT输出。(3)第三部分是供电。15脚DNG、16脚VCC(+5v)。 在此用于串口通信,因为电脑的数据逻辑仍用正负12V需用这个芯片将5V和正负10V进行转换。电脑电平进入R1OUT口从T1IN出,由10V转为5V;51的电平从T1IN口入由R1OUT口出转为12V电平。4电容接法的目的是为了升压,是电荷泵电路。接R1,R2电阻是为了阻抗匹配。,第二部分 硬件电路的设计,通信电路主要是为了跟PC端的VB通信.,附录6 VB程序,/*主界面设置*/Private Sub Form_Load()MSComm1.P
13、ortOpen = True /打开串行通信端口End Sub/*通信设置*/Private Sub MSComm1_OnComm()Dim b As Variant /定义变量b If MSComm1.CommEvent = 2 Then /判断信号接收 b = MSComm1.Input End If Select Case b /接收到对应信号VB界面显示对应变化 Case 1 T1.Text = 警告!有人闯入 S1.FillColor = &HFF& Case 2 T1.Text = 警告!门没有关住 S2.FillColor = &HFF& Case 3 T1.Text = 警告!发生火灾 S3.FillColor = &HFF& Case 4 T1.Text = 警告解除 S1.FillColor = &HFF00& S2.FillColor = &HFF00& S3.FillColor = &HFF00& End SelectEnd Sub,附录7 波特率初值表,