电子系统设计大赛作品申报Word格式.docx
《电子系统设计大赛作品申报Word格式.docx》由会员分享,可在线阅读,更多相关《电子系统设计大赛作品申报Word格式.docx(19页珍藏版)》请在冰点文库上搜索。
手动模式拥有最高优先处理权,有两个按键对其进行操作,可以控制电机的正反转,即可实现窗帘的开关;
若处于自动状态下,用光敏电阻对外部环境进行采光,通过单片机对电机进行控制,实现天亮窗帘自动打开,天黑窗帘自动关闭这一功能;
若采用遥控方式,用遥控电路对其控制,实现遥控开启关闭窗帘及自动模式的开启关闭的功能。
2工作原理
远程遥控功能本智能窗帘通过stc15f2k60s2单片机、红外发射器、一体化接收头以及电机控制系统实现对窗帘的远程控制。
用户通过对遥控器的操作发射红外信号,装在窗帘上的一体化接收头接收到信号后通过解码,再将解码后的信号传给单片机的响应输入口,单片机立即处理信号,控制电机系统拉动窗帘,使其打开或者关闭到用户所需状态。
光控调节功能在屋内合适的地点安放光敏模块,当光照强度改变时,光敏电阻的阻值会随着改变,通过光敏模块的A/D转换器将模拟信号转化成数字信号,单片机处理此信号后控制直流电机,通过直流电机的转动方向控制窗帘的开关。
按键控制功能本系统设计两个按键,分别实现电机正反转,以应对遥控失灵等意外情况。
体现了本系统的人性化设计。
3单元电路原理
(1)电源模块
三端集成稳压器的组成包括了串联型直流稳压电路的各个组成部分,另外加上保护电路和启动电路。
在W7800系列三端集成稳压器中,已将三种保护电路集成在芯片内部,作用是限流保护电路、过热保护电路和过压保护电路。
三端集成稳压器电路
当输出电压比较高,应在输入端与输出端之间跨接一个保护二极管VD,如图中有断线点。
其作用是在输入端短路时,使Co通过二极管放电,以便保护集成稳压器内部的调整管。
(2)遥控模块
1号键为整个系统的电源总开关键,1键按下,电机停止转动。
2号健是电机正转键,窗帘打开。
3号键电机反转,窗帘关闭键。
4号键负责开启和关闭自动模式。
自动模式状态下,用光敏电阻对外部环境进行采光,通过单片机对电机进行控制,实现天亮窗帘自动打开,天黑窗帘自动关闭这一功能。
1、红外线发射电路
使用由常规集成电路组成的双通道红外遥控电路,这种遥控电路不需要使用较贵的专用编译码器,因此成本较低。
红外发射模块
2、红外线接收电路
采用是一种一体化的红外线接收头,体积小巧、价格低廉、使用方便、无须调整、抗干扰能力强、工作稳定可靠。
三个输出脚依次为:
OUT(红外线接收后经解调、整形的输出脚步)、GND(地)、+(电源正端)。
红外接收模块
红外接收模块原理图
(3)光敏电阻模块
应用光控原理工作,天亮窗帘自动打开,天黑窗帘自动关闭。
由运放组成比较电路,同向输入端有两个电阻分压得到一个电压值,作为基准电压进行比较,而反相输入端用一个光敏电阻对外部环境的光线进行采集,利用光敏电阻暗时电阻大,亮时电阻小的特点,来确定反向输入端的电压值。
再两者进行比较,比较后的信号再送入stc15f2k60s2单片机的P3.2口,从而控制电机的正反转。
来实现天亮窗帘自
动打开,天黑窗帘自动关闭这一自动控制功能。
(4)光电开关
采用光电开关来判定窗帘开合是否达到设定要求,控制电机自动关闭
光电对射模块
程序流程图
附录1:
原程序
/*-----------------------------------------------
名称:
智能窗帘
日期:
2012.11
------------------------------------------------*/
#include"
STC15F2K.h"
//包含头文件,一般情况不需要改动,头文件包含特殊功能寄存器的定义
sbitIR=P3^2;
//红外接口标志
sbitx=P1^0;
//窗帘开启停止
sbity=P1^1;
//窗帘关闭停止
sbitt=P1^2;
//光敏
sbitMA=P0^0;
//电机
sbitMB=P0^1;
sbitMC=P0^2;
sbitMD=P0^3;
/*------------------------------------------------
全局变量声明
unsignedcharirtime;
//红外用全局变量
bitirpro_ok,irok,z=0;
unsignedcharIRcord[4];
unsignedcharirdata[33];
函数声明
voidDelay(unsignedintt);
voidIr_work(void);
voidIrcordpro(void);
voidgm(void);
定时器0中断处理
voidtim0_isr(void)interrupt1using1
{
irtime++;
//用于计数2个下降沿之间的
}
/*------------------------------------------------
延时函数,含有输入参数unsignedintt,无返回值
unsignedint是定义无符号整形变量,其值的范围是
0~65535
voidDelay(unsignedintt)
while(--t);
外部中断0中断处理
voidEX0_ISR(void)interrupt0//外部中断0服务函数
staticunsignedchari;
//接收红外信号处理
staticbitstartflag;
//是否开始处理标志位
if(startflag)
{
if(irtime<
63&
&
irtime>
=33)//引导码TC9012的头码,9ms+4.5ms
i=0;
irdata[i]=irtime;
//存储每个电平的持续时间,用于以后判断是0还是1
irtime=0;
i++;
if(i==33)
{
irok=1;
i=0;
}
}
else
{
irtime=0;
startflag=1;
}
定时器0初始化
voidTIM0init(void)//定时器0初始化
TMOD=0x02;
//定时器0工作方式2,TH0是重装值,TL0是初值
TH0=0x00;
//重载值
TL0=0x00;
//初始化值
ET0=1;
//开中断
TR0=1;
外部中断0初始化
voidEX0init(void)
IT0=1;
//指定外部中断0下降沿触发,INT0(P3.2)
EX0=1;
//使能外部中断
EA=1;
//开总中断
键值处理
voidIr_work(void)//红外键值散转程序
switch(IRcord[2])//判断第三个数码值
case0x0c:
MA=0;
MB=0;
MC=0;
MD=0;
z=0;
break;
//1相应的按键值
case0x18:
MA=1;
MC=1;
//2
case0x5e:
MB=1;
MD=1;
//3
case0x08:
z=1;
//4
default:
}
irpro_ok=0;
//处理完成标志
红外码值处理
voidIrcordpro(void)//红外码值处理函数
{
unsignedchari,j,k;
unsignedcharcord,value;
k=1;
for(i=0;
i<
4;
i++)//处理4个字节
for(j=1;
j<
=8;
j++)//处理1个字节8位
cord=irdata[k];
if(cord>
7)//大于某值为1,这个和晶振有绝对关系,这里使用12M计算,此值可以有一定误差
value|=0x80;
if(j<
8)
value>
>
=1;
k++;
IRcord[i]=value;
value=0;
}
irpro_ok=1;
//处理完毕标志位置1
主函数
voidmain(void)
EX0init();
//初始化外部中断
TIM0init();
//初始化定时器
MA=0;
MB=0;
MC=0;
MD=0;
while
(1)//主循环
if(irok)//如果接收好了进行红外处理
{
Ircordpro();
irok=0;
if(irpro_ok)//如果处理好后进行工作处理,如按对应的按键后显示对应的数字等
Ir_work();
if(z==1)
if(t==1)
MA=0;
if(x==0)
Delay(200);
if(x==0)
{
MA=0;
while(t)
if(irok)//如果接收好了进行红外处理
else
MA=1;
if(y==0)
if(y==0)
{MA=0;
while(!
t)
{if(irok)//如果接收好了进行红外处理
}
附录2:
电路图
作品特色
对于室内的窗帘而言,它不仅要具有遮光作用和美化功能,更要具有方便智能的使用功能。
红外远程控制窗帘的开合程度;
根据光强度自动调节窗帘以使屋内达到舒适惬意的环境;
还可以进行定时开闭窗帘。
我们的设计兼容自动模式和遥控模式,使得我们的设计更加人性化、智能化,使得我们的设计更具有实用性和创新性。
另外,我们所涉及的报警功能,是利用人体感应模块,人体发射的红外线被模块感应,一定距离内报警,这比以往的红外对射报警或接触性报警更安全、可靠,更具先进性。
声明
本参赛队伍所有成员一致同意,在不涉及技术泄密的情况下,大赛主办方及相关技术支持单位,可以将该参赛作品用于大赛等有关活动使用。