基于MCS51单片机的多功能开关论文.docx
《基于MCS51单片机的多功能开关论文.docx》由会员分享,可在线阅读,更多相关《基于MCS51单片机的多功能开关论文.docx(26页珍藏版)》请在冰豆网上搜索。
基于MCS51单片机的多功能开关论文
基于MCS-51单片机的多功能开关
单位名称:
申报工种:
申报等级:
论文作者:
指导老师:
联系电话:
单位地址:
邮政编码:
目录
摘要、关键词..............................................................5
1.前言...................................................................5
1.1系统方案论证..........................................................5
2.硬件电路设计............................................................6
2.1无线遥控功能.......................................................6
2.1.1编码解码芯片PT2262/PT2272芯片原理简介............................7
2.1.2本多功能开关控制器的地址编码设置...................................8
2.1.3本多功能开关控制器无线遥控控制的工作原理...........................8
2.2热释红外线感应功能.................................................8
2.2.1热释红外线感应的工作原理...........................................8
2.2.2本多功能开关控制器热释红外线控制的原理.............................9
2.3光控制功能........................................................10
2.3.1光敏电阻器的原理..................................................10
2.3.2本多功能开关控制器光控制的原理....................................10
2.4电脑串口控制功能..................................................11
2.4.1串行口的简介......................................................11
2.4.2通讯协议设置......................................................11
2.4.3串口通讯功能的实现................................................12
2.5其他硬件电路......................................................13
3.软件设计...............................................................13
3.1软件设计总体思路.....................................................13
3.2各功能程序说明......................................................15
3.2.1输入感应信号及开关定义说明........................................15
3.2.2I/O口及时间地址定义..............................................15
3.2.3初始化程序.....................................................16
3.2.4光敏控制功能.......................................................17
3.2.5热释红外线控制功能.................................................17
3.2.6无线遥控功能....................................................18
3.2.7电脑控制功能.....................................................18
3.2.8定时中断服务子程序.................................................20
3.3使用说明...........................................................20
3.4多功能开关控制器的调试安装和运行....................................20
3.5多功能开关控制器的优点..............................................21
4结束语...............................................................21
5参考文献.............................................................21
6.完整的程序清单.........................................................22
附录1多功能开关控制器原理图.........................................28
附录2多功能开关控制器实物图.........................................29
附录3主要元件表.....................................................30
基于MCS-51单片机的多功能开关
摘要:
本多功能开关控制基于51单片机、结合无线发送接收模块,热释红外线模块、光敏控制以及通过电脑串口传送控制信号来控制四路继电器的开关控制器,来控制会议室的电器设备。
多功能开关成本低廉、实用方便其适应于娱乐场所、办公场所、学校、工厂以及需要照明节能、遥控电器开关等场所。
关键词:
单片机、无线遥控、热释红外线、光敏控制
1.前言:
对一些照明时间较长、照明设备较多的场所(如学校教室、办公场所、公共场合等),其照明系统的使用浪费现象屡见不鲜。
由于缺乏科学管理或管理人员的责任心不强,在借助外界环境能正常工作或者夜晚室内空无一人时,整个房间内也是灯火通明。
这样下来,无形中所浪费的电能是非常惊人的。
同时,在安装了排气扇的场所(如会议室、厕所等),排气扇在没有人在的情况下照样全天24小时不停运行,而且排气扇由于长时间不停工作,造成轴芯损坏而烧毁线圈时有发生。
但浪费了大量电能,而且大大提高了日常的维修成本。
因此,有必要在保证照明和通风排气质量前提下,实施照明、通风排气设备设施的节能措施在目前大力提倡节能降耗的大环境下,显得尤其重要。
1.1系统方案论证
在全球金融危机四处蔓延之际,节能降耗显得尤其重要。
根据集团公司下达的<<关于进一步充分认识节能减排工作的重要性和急迫性>>文件。
在传达、学习相关文件后,公司领导要求我们工程部根据本单位的实际情况,积极开展各项节能降耗的技术改造工作。
公司的会议室是多功能的办公场所,即可做会议室又可做培训室使用。
由于经常被外单位租用,因此在管理上存在着一定的缺失,客户时常会忘记关闭排气风机及照明,这样不但会给公司造成不必要的电能浪费,而且设备设施的长时间不停工作,势必造成损坏率提高提高了设备设施的运营本。
为此我应公司要求,以自己所学的单片机知识,首先对会议室的照明及排气扇的控制进行智能控制改造。
并以此作为试点,以点带面,逐步在公司大范围推广。
在老师指导下以及在公司领导及同事、同学的帮助下,根据会议室的实际情况,设计制作了多工能节能开关控制板。
2.硬件设计:
本多功能节能控制开关控制器主要是基于51单片机,结合无线遥控收发模块,热释红外线模块,光敏控制电路以及电脑串口控制及输出电路等组成,系统硬件方框如图1-1:
图1-1
2.1无线遥控功能:
发射接收采用315MHZ民用公用频段资源,发射采用晶体稳频,以更好地周围的适应使用温度环境。
接收采用PT2262/2270高可靠芯片,以提高接收的准确可靠性。
采用无线遥控电路,可以在200米以内的空间里遥控两路电源的开关。
2.1.1编码解码芯片PT2262/PT2272芯片原理简介:
PT2262/2272是台湾普城公司生产的一种CMOS工艺制造的低功耗低价位通用编解码电路,PT2262/2272最多可有12位(A0-A11)三态地址端管脚(悬空,接高电平,接低电平),任意组合可提供531441地址码,PT2262最多可有6位(D0-D5)数据端管脚,设定的地址码和数据码从17脚串行输出,可用于无线遥控发射电路。
编码芯片PT2262发出的编码信号由:
地址码、数据码、同步码组成一个完整的码字,解码芯片PT2272接收到信号后,其地址码经过两次比较核对后,VT脚才输出高电平,与此同时相应的数据脚也输出高电平,如果发送端一直按住按键,编码芯片也会连续发射。
当发射机没有按键按下时,PT2262不接通电源,其17脚为低电平,所以315MHz的高频发射电路不工作,当有按键按下时,PT2262得电工作,其第17脚输出经调制的串行数据信号,当17脚为高电平期间315MHz的高频发射电路起振并发射等幅高频信号,当17脚为低平期间315MHz的高频发射电路停止振荡,所以高频发射电路完全收控于PT2262的17脚输出的数字信号,从而对高频电路完成幅度键控(ASK调制)相当于调制度为100%的调幅。
如图1-2
图1-2
在通常使用中,我们一般采用8位地址码和4位数据码,这时编码电路PT2262和解码PT2272的第1~8脚为地址设定脚,有三种状态可供选择:
悬空、接正电源、接地三种状态,3的8次方为6561,所以地址编码不重复度为6561组,只有发射端PT2262和接收端PT2272的地址编码完全相同,才能配对使用,遥控模块的生产厂家为了便于生产管理,出厂时遥控模块的PT2262和PT2272的八位地址编码端全部悬空,这样用户可以很方便选择各种编码状态,用户如果想改变地址编码,只要将PT2262和PT2272的1~8脚设置相同即可,例如将发射机的PT2262的第1脚接地第5脚接正电源,其它引脚悬空,那么接收机的PT2272只要也第1脚接地第5脚接正电源,其它引脚悬空就能实现配对接收。
当两者地址编码完全一致时,接收机对应的D0~D3端输出约4V互锁高电平控制信号,同时VT端也输出解码有效高电平信号。
2.1.2本多功能开关控制器的地址编码设置:
在本设计中,将4位数据输出端D0~D3按位信息通过单片机程序控制来分配以下功能:
当D0=1时,J3继电器动作,对应继电器常开触点接通;当D1=1时,J3继电器不动作,对应继电器常开触点断开。
同样,当D2=1时,开J4继电器,当D3=1时,关J4继电器。
2.1.3本多功能开关控制器无线遥控控制的工作原理:
无线接收模块RF1连接到STC89C52单片机的P0口,由于RF1数据端口可以输出高低电平,P0口无需上拉电阻。
无线接收模块在接收到有效信号,并解码成功后,RF1的VT端输出高电平信号,之后在D0~3上输出数据。
单片机IC1首先检测VT信号的有无,有VT信号,才对RF1输出的数据D0~D3信号进行分析处理;处理后,按D0~D3状态去控制对应的继电器吸合或者释放。
2.2热释红外线感应功能:
采用市面现成的热释红外线探测模块,探测感应现场是否有人活动,从而自动控制一路电源的开关。
2.2.1热释红外线感应的工作原理:
热电传感器是一种将热量变化转换为电量变化的一种能量转换器件。
热释电红外线元件是一种典型的热量传感器。
可见光的波长通常在1μm以上,而1μm以下的光人眼是看不到的。
0.8μm以下的红外光具有很高的放射能量(W/m2),差不多等于800K(500℃)以上高温物体释放的能量,因此常用红外光发射能量来检测入侵者的入侵及其活动。
一般的热释电材料为LiTaO3,当受到红外线照射时,热释电材料的温度发生变化,同时其表面电荷也会发生变化。
当以LiTaO3为代表的热释电材料处于自极化状态时,吸收红外线入射波后,结晶的表面温度改变,自极化也发生改变,结晶表面的电荷变得不平衡,把这种不平衡电荷的电压变化取出来,便可测出红外线。
热释电材料只有在温度变化时才产生电压,如果红外线一直照射,则没有不平衡电压,一旦无红外线照射时,结晶表面电荷就处于不平衡状态,从而输出电压。
2.2.2本多功能开关控制器热释红外线控制的原理:
PIR热释电红外线探测模块输出端连接到STC89C52单片机的P2.5脚,当PIR在有效范围内检测到有人活动,其OUT端输出高电平,单片机检测到这个电平变化后,开启J2继电器;当PIR在有效范围内检测到没有人活动,其OUT端输出低电平,关闭J2继电器。
PIR热释红外线模块有配置有重复触发和不重复出发选择跳线,可根据不同环境要求设置;模块还有灵敏度调节和触发延时时间调节电位器,见图1-3
图1-3
2..3光控制功能:
通过光敏电阻配合运算放大器构成光线控制信号输入单片机,已达到利用光线控制一路电源开关的功能。
2.3.1光敏电阻器的原理:
光敏电阻器又光感电阻,是利半导体的光电效应制成的一种电阻值随入射光的强弱而改变的电阻器;(见图1-4)如果入射光强,电阻减小,如果入射光弱,电阻增大。
光敏电阻器一般用于光的测量、光的控制和光电转换(将光的变化转换为电的变化)。
图1-4
2.3.2本多功能开关控制器光控制的原理:
图1-5中的IC2A运放作为为光控比较电路,R6、R12连接中点为电源的1/2,也就是2.5V,这个电压接到IC2的运放负端,R5和R13(光敏电阻)中点连接到IC2运放的正端,运放的输出1脚接到IC1P0.5口上,当有光照时,R13电阻会降低,致使运放正端低于运放负端,运放输出0,单片机检测到后关闭J1继电器;反之,当R13无光照时,阻止变的很大,致使运放正端电压高于负端,运放输出1,单片机检测到后打开J1继电器。
图1-5
2.4电脑串口控制功能
利用电脑的的串口与STC89C51单片机串行口进行通讯,由串行口输出数据来控制单片机硬件,同时通过RS23C转RS485转换器,实现电脑的远程控制两路电源开关。
经测试,控制距离可以达到1000米左右。
2.4.1串行口的简介:
串行口(也称RS232接口)是用途最广的一种通讯接口,一般电脑主机上都有这个接口,缺点是传输距离短,.通过与RS232比较接近的通讯接口是RS485转换,可以实现较远距离通讯,广泛用于工业控制
串行口电平转换一般采用集成电路MAX232接口芯片,本多功能开关控制器的串口由V1、V2以及R7~R11组成三极管式电平转换电路,简单实用。
如图1-6
在串行通讯中波特率越高,通讯速度越快,但也容易出错,一般来说,通讯距离不很远时,可以用较高的波特率,通讯距离较长时,选用较低的波特率可以使得通许更为可靠。
图1-6
2.4.2通讯协议设置:
硬件电路采用不的晶振,波特率设置时的初值是不同的,初始值可以通过公式:
波特率=1/16或1/32*(晶振的频率/12*(256-TH1))取得,通过计算会发现有些晶(6M,12M,24M)
计算结果有余数,实质上就是波特率有误差,最终结构就是用了这个晶振的电路,在通讯时候会出现无法通讯、数据错乱、时好时坏、误动作等情况。
因此,在本多功能开关控制器电路中,采用的晶振选用11.0592M。
这个数值的时钟才能保证9600bps速率误差为零,为可靠通讯创造条件。
本多功能开关控制器的通讯协议为9600bps,8,n,1,hex发送,并有返回:
定义如下:
;A1HJ3开返回A1h
;A2HJ3关返回A2h
;A3HJ4开返回A3h
;A4HJ4关返回A4h
2.4.3串口通讯功能的实现:
为免去编写上位机(也就是电脑)通讯程序编程,我们直接采用现成的串口调试助手来向单片机发送控制数据:
发送HEX数据A1为打开J3,A2H为关闭J3;A3H为
打开J4,A4H为关闭J4(串口调试软件如图1-7)
图1-7
2.5其他硬件电路:
多功能开关控制器的电源电路采用二级稳压,输入电压经防反接二极管D1到U3LM7812,先得到稳定的12V电源,供给继电器使用;从12V电源再经U1LM78L05稳压得到的5V电源,作为单片机、无线接收模块、热释电红外探测模块的工作电源。
如图2-1
图2-1
单片机通过P1口输出,由IC2ULN2003A来驱动继电器;L1~L4为继电器吸合指示灯,吸合时亮,反之灭;继电器输出触点连接到JP1上,便于与外接电器连接。
继电器触点电流可以经受7A220V的负载,为适应会议室更多的负载。
如图2-2图2-2
3.软件设计
3.1程序设计的总体思路
多功能开关扳的工作过程为:
单片机先进行初始化工作,随后根据输入感应信号的电平高低,逐一分析比较,根据判断的结果接通或断开相应的继电器。
T0定时中断服务子程序用于实现50毫秒、1秒、1分钟的定时。
串行通讯中断程序通过把接收到的数据与预先通讯协议定义的数据比较是否相符来实现控制继电器的通断。
程序流程图如图3-1
图3-1
3.2各功能程序的说明
3.2.1输入感应信号及开关定义说明
(1)遥控器按钮定义:
C键:
用来控制继电器J3开
D键:
用来控制继电器J3关
A键:
用来控制继电器J4开
B键:
用来控制继电器J4关
(2)光敏控制:
使用环境有足够光线:
继电器J1关
使用环境没有足够光线:
继电器J1开
(3)热释红外控制:
有人:
继电器J2开
无人:
继电器J2关
3.2.2I/O口及时间地址定义
根据硬件电路,分别定义以下输入输出口:
(1)定义IO口
out1equp1.7;j1继电器输出
out2equp1.6;j2继电器输出
out3equp1.5;j3继电器输出
out4equp1.4;j4继电器输出
flashequp1.2;闪烁指示灯
rfvtequp0.4;无线接收头的VT
rfd3equp0.3;无线接收头的D3
rfd2equp0.2;无线接收头的D2
rfd1equp0.1;无线接收头的D1
rfd0equp0.0;无线接收头的D0
piroutequp2.5;热释电探头输出
cdsoutequp0.5;光控输出
(2)定义寄存器
为了编程方便,分别定义毫秒、秒、分时间地址:
msecequ25h;mS
secequ26h;Sec
minequ27h;Min
3.2.3初始化程序
初始化程序主要包括设置定时T0、T1工作方式,T0中断中50ms、串行通讯波特率9600的T1初始值的置入,以及热释红外控制开机探测矫正程序等,程序如下:
star:
movp1,#00h;开机先清除输出端的不确定状态
movp3,#0
movsp,#30h;堆栈设到30h
movtmod,#21h;t1=mod2,t0=mod1
movth0,#04ch;
movtl0,#00h;t0初值50mS@11.0592mhz
setbet0;
setbtr1;t1启动
movtl1,#0fdh;t1初值;晶体=11.0592mhz,波特率=9600
movth1,#0fdh;8位重装
movscon,#50h;串口为mod1
movpcon,#00h
setbes;串口中断允许
setbea;总中断允许
;第一次启动要延时1分钟,让红外线模块稳定
movmsec,#0
movsec,#0
movmin,#0
setbtr0;;启动t0定时
lotmr:
mova,min
cjnea,#1,lotmr;等待1分钟结束
clrtr0;关定时
setbflash;闪烁灯常亮,表示红外头稳定
movp3,#0ffh
3.2.4光敏控制功能
判别光敏信号输入脚P0.5(定义CDSOUT)电平控制是否开启继电器J1,程序如下:
main:
jbcdsout,cdsj;判断光照
clrout1;有光照,J1关闭
ajmppir;到红外
cdsj:
setbout1;无光照,J1开启
lcalldelay;防止光源不稳定
3.2.5热释红外线控制功能
判别热释红外信号输入脚P2.5(定义PIROUT)电平控制是否开启继电器J2,程序如下:
pir:
jbpirout,pirj;热释红外判断
clrout2;没人,J2关
ajmprf;到无线接
pirj:
setbout2;有人,J2开
3.2.6无线遥控功能
首先判别P0.4电平,确定无线接收模块是否有接收到信号,如果有再通过判别P0.0~P0.3电平,开启关断相应的继电器,程序如下:
rf:
jnbrfvt,jend;没有接收到数据,直接退出
jnbrfd0,d1j;d0不是高电平到d1判断
setbout3;d0=1,开J3
d1j:
jnbrfd1,d2j;d1不是高电平到d2判断
clrout3;d1=1,关J3
d2j:
jnbrfd2,d3j;d2不是高电平到d3判断
setbout4;d2=1,开J4
d3j:
jnbrfd3,jend;d3不是高电平退出循环
clrout4;d3=1,关J4
jend:
ajmpmain
3.2.7电脑控制功能
程序采用串口中断程序,如果单片机接收到电脑从串行口发出的中断请求,立即响应以下的串口中断服务程序。
把接收的的数据与预先定义好的开关数据作比较,接通、关闭相应的继电器,程序如下:
comm:
jbri,recive;ri为1,执行接收子程序
ajmpend1;否则,执行发送子程序
recive:
pushacc
mova,sbuf;接收到数据
clrri
clres;发送时关串口中断
movsbuf,a
jnbti,$
clrti
;判断
cjnea,#0a1h,next1;比较指令,不是到其他数据比较
setbout3;a1h是J3开启指令
ajmpcomend
nex