APP下载

基于STC12C5A60S2卧室智能控制系统设计*

2017-01-09王洪丽

关键词:高电平窗帘遥控

王洪丽

(福州职业技术学院 电子信息工程系,福州 350108)

基于STC12C5A60S2卧室智能控制系统设计*

王洪丽

(福州职业技术学院 电子信息工程系,福州 350108)

系统采用两块STC12C5A60S2芯片作为系统控制核心,由主机控制和从机控制两部分组成.主机对从机发出信息,可对窗帘开度、灯光进行定时和自动模式选择控制,同时亦可用遥控控制.遥控器除了发射主控信号的操作外,还可对灯光的亮度进行调节,窗帘的开度进行调节和关闭闹铃等功能,从而使卧室实现智能化、高效化、便捷化.使我们的生活更加舒适、温馨,让人们享受更加先进的现代化生活.

单片机,智能家居,灯光,窗帘,卧室

0 引言

由于经济迅猛发展,人们生活水平的提高,一个低成本、高效率的智能家居系统,特别是卧室控制系统已成为当今世界的一个讨论话题,深受人们青睐.智能家居是以智能为核心,为人类提供一种智能化的,自动化的建筑风格,为人类提供一种安全、舒适、便捷的生活场景.各国出现了不同的智能家居类的智能产品,其中以灯光和窗帘控制类居多.本文设计一采用两块STC12C5A60S2芯片作为系统控制核心的卧室智能控制系统,该系统可对窗帘开度、灯光进行定时和自动模式选择控制,同时亦可用遥控控制.对灯光和窗帘实现自动化控制可以极大的节省时间,让人们享受更加先进的现代化生活.

1 系统总构架

采用STC12C5A60S2芯片作为最小系统,其内部自带的A/D转化器实现模数转化,可判断光的亮暗程度;采用12864LCD液晶显示器作为时间、窗帘和灯光的动作显示;采用24L01无线通信模块实现主机对从机的控制;采用24C02芯片存储信息,DS1302时钟芯片计时, ULN2803达林顿管驱动步进电机,HC595作为窗帘动作左右停止信号输入;蜂鸣器作为报警信号提示,热敏电阻作为光信号采样;采用遥控接收头LBST0038A作为遥控信号输入,遥控器采用通用型遥控器,系统构架图见图1.

2 硬件设计

2.1 STC12C5A60S2控制系统设计

STC12C5A60S2单片机功耗低,内部自带A/D转化器,转化稳定,其工作在3.3~5.5 V内,运行快,拥有0~35 MHz工作频率范围,60 K的ROM,1280字节的ARM,受干扰小,兼容其他单片机,稳定性好,不用专门的编程器,内部自带PWM波接口,可以编程产生PWM波.一般的单片机定时器有2个,而STC12系列有4个,全双工通信.STC12C5A60S2单片机,响应速度快,工作稳定,I/O口复用功能多.

2.2 LCD12864显示电路设计

12864液晶屏具有读状态,读数据,写指令,写数据,四种并行的基本操作时序,忙标志位为1,表示12864 LCD处于忙状态,数据不允许接收,当忙标志位为0时,可以接收数据.通过设置12864液晶的指令使12864按照我们的要求操作.LCD显示电路见图2,D0~D7口是数据口,VSS电源地,VDD电源正极,RS:数据、命令选择位,WR:读写选择位,LCDE:使能端.

图1 系统构架图

图2 LCD显示电路

2.3 DS1302时钟电路设计

DS1302是一款实时时钟芯片.具有高性能、低功耗的特点, 2.5~5.5 V的正常电压供电.另外31个字节静态RAM,这种时钟芯片一次可以传送好几个字节和一些RAM数据.可采用两种外部方式对其供电:一个是主电源供电,另一个是备用电源供电,备用电源保证了在主电源断电情况下DS1302内部依然工作,数据不会清空.DS1302芯片可以提供年、月、日、星期、小时、分钟、秒钟,可以判断闰年且对其补偿,自动的去取调整每个月份的天数.为了让振荡的更加稳定,最好在晶振外部并上两个电容,两电容间要接地晶振为36.768 kHz,因为有外部直流备用电源,并联电容的目的是滤波.编程时,数据要转化为BCD码的形式.

2.4 步进电机驱动电路设计

步进电机是纯粹的数字控制电机,只要给一个脉冲就转动一个特定的角度,是一种执行机构,精确的实现角位移和控制脉冲之间的精确转化.要使角位移发生改变,可以通过改变脉冲的个数,这样就能精确的确定位置;于此同时用户如果要使步进电机转动的更快,就要使输入的脉冲频率变大,但是它的频率也不能一直变大,否则会失步,电机不转.步进电机驱动电路见图3,ULN2803的1~8脚信号输入,输出分别控制两个步进电机.采用了ULN2803达林顿管驱动芯片驱动28BYJ-48步进电机,因为它有8个NPN晶体管,可以同时驱动2个步进电机.让步进电机工作在四相八拍的方式,也就是说施加脉冲信号,让其依次通一相然后通两相,步进电机就会一个角度稳定运行下去,不断的循环工作,要注意工作电压在直流5~12 V.

图3 步进电机驱动电路

2.5 光电信号输入电路设计

选择随着光度的增强,内部的阻值相应减小的光敏电阻.一般的光敏电阻都做成梳状,其目的是增加它的灵敏度.为了不影响灵敏度,把它封装在密封的壳体内,将很薄的光敏电阻和欧姆电极做在绝缘层上,导线引出.如果没有光线照射在它的表面,内部的电子和空穴会被光子所激发,内部阻值将会变得很大,反之,阻值会变得很小.如果将光敏电阻一端提高电压,另一端和一个10 k的电阻相互串联,电阻一端和光敏电阻相连,另一端接地,在两者相连处为采样输入口.由于光电信号处理用到的了单片机内部的A/D转换,所以只需要在外部的光电信号采样到单片机的A/D口即可.

2.6 灯光控制电路设计

SR501是一种运用红外技术制作而成的能够自动控制的模块,SR501的灵敏度很高,工作的时候具有超低的电压,运行可靠.如果有人从SR501所能感应到的位置经过时,会输出高电平,走开的时候,模块内部会先自动的延时一段时间,过后,关闭高电平,取而代之的是低电平电位,具有光敏控制.如果光线太强就不工作.如果温度升高到一定的范围,可以温度补偿.具有不可重复或者可以重复触发的两种工作方式.不可重复触发方式就是检测到了高电位,内部进行延时一段时间,然后将高电平变成低电平自动的从输出端输出.可重复触发方式就是检测到了输出的是高电平,等待一段时间延时,在模块所能识别的范围,输出一直都是高电平状态,直到有物体穿过这个范围的时候,内部会自动的变为低电平.模块所能识别的时间大概在2.5 s,理想工作电压5~15 V直流电.所损耗的功率也较低,可实现各种电路对接.

3 软件设计

3.1 主机主程序设计

主机主要是用来显示时间,操作和发送数据.电路一上电,程序开始执行时,首先将LCD 12864、24L01无线模块行初始化设置,将24C02存储器中的数据读取出来,当没有进行设置时,能够保证主页面显示年、月、日、星期、时、分、秒,窗帘、灯光的设置.aa中存放的是页面码,比如aa=0时,显示的是主页面;当aa=1的时候,显示的是设置选择页面,包括时间设置选择,窗帘灯光设置选择,窗帘灯光定时设置选择.bb中存放的是选择项,bb=0,选中时间设置,可对时间的年、月、日、时、分、秒、星期进行设置; bb=1,选中窗帘灯光定时设置选择,可对窗帘的状态(全开,全关,定时,自动)选择设置,可对灯光的状态(模式一,模式二,模式三,全关,定时)进行选择设置;bb=2,选中窗帘灯光定时设置选择,可对窗帘及其灯光进行任意一天或者多天的某个时刻进行定时开关.dd是查看的选择,dd=0时可以显示时间、窗帘、灯光的状态,dd=1时可以查看窗帘的定时时间和开关状态,dd=2时可以查看灯光定时的时间和开关的状态.因为保存和确定是同一个按键,所以每个流程对bb,aa的值对应每个的操作进行保存.当处在主页面状态时,通过无线模块发射窗帘灯光信息给从机,主机主程序流程图见图4.

图4 主机主程序流程图

3.2 从机主程序设计

从机也是一个独立的电路板,受单片机控制,所以开始上电复位时,也要对无线摸块24L01初始化设置,中断初始化设置,还要把灯光全关,因为从机的LED连接方式是共阳极接法.初始化完后,先对外部的光敏电阻采样的信号,输入到单片机的A/D转化输入口(本机采用P1.7口),内部A/D处理后可知道输入的是高电平还是低电平,为后面的自动提供依据.对主机发送过来的信号进行接收,然后对窗帘进行控制.紧接着当窗帘的定时信号到来时,可对其进行定时开关.定时开关默认设置为开模式一,然后判断是否是窗帘自动模式,当天亮时,光敏电阻电阻很小,通过A/D采样处理得出高电平,于是窗帘自动开直达接触到两边的左右开关,停止.因为本系统设计有夜间模式功能,采用红外人体模块SR501,夜晚,当窗帘关闭,模式灯全关状态,表明进入夜间睡眠,当半夜有人经过时,灯光自动开,3 s后灭,这样既方便夜间行走,又能很好节约电能.灯光的模式和调光控制设在定时中断中,当中断信号到来,根据窗帘的选择,PWM控制不同模式下的灯光的亮度.因为本系统还有遥控控制功能,该功能体现在外部中断一,红外接收头检测到遥控信号,改变窗帘灯光信号,进行新的窗帘和灯光设置,从机主程序流程图见图5.

图5 从机主程序流程图

3.3 步进电机控制程序设计

由于窗帘的工作状态较多,以窗帘的全开、自动和定时三种模式为例说明,从机会接收主机或者遥控发送过来的窗帘信息,可知道窗帘的工作状态.程序会在窗帘工作前设定各个状态所要执行动作的数组表.判断是否是全开模式的话,判断左窗帘或者右窗帘是碰到开关0或者开关3,如果没有碰到,左窗帘会向左开,直到碰到开关0;右窗帘向右开,直到碰到开关3,窗帘停止工作.如果窗帘不是全开模式,接下来判断是否是其他正常模式(全关,左开,左关,右开,右关),若是自动模式,判断光敏电阻的采样值为高,说明天亮了,窗帘会自动将全开,如果窗帘不在自动模式,判断是否定时,若是,并且时间定时信号到了,在对窗帘状态开还是关进行判断,然后执行开或者关的操作,步进电机控制程序流程图见图6.

图6 电机驱动程序流程图

3.4 遥控控制程序设计

本系统的遥控控制程序在外部中断1中,所以在主程序执行前,将定时器初始化.当遥控器发射信号时,因为接收管接在单片机的P3.2,从机的遥控接收管接收到遥控信号,主程序停止运行,进入到外部中断.接收管没接到信号时处于高电平状态,接收到信号变为低电平,进入中断时候,还要进一步判断是否有遥控信号,如果没有退出中断.然后要等待9 ms左右,信号拉成低电平.变为高电平,又要等待低电平,接收到低电平准备接收数据,因为遥控信号数据由四组组成:用户地址、用户地址相反、数据、数据相反这四种数据组成,所以要判断是否接收到了四组的数据,没接收一组数据需要判断拉高的时间是否过长,过长说明数据丢失,跳出中断.四组数据接收完成,在判断数据位,数据相反是否匹配,不匹配数据传输失败,跳出中断.如果接收到正确数据,就可以对遥控键值对应的参数进行设置,跳出中断,遥控信号接收程序流程图见图7.

图7 遥控信号接收程序流程图

3.5 灯光控制程序设计

灯光控制具有模式选择、灯光调控和定时功能.因为调光采用的是PWM调光,所以灯光控制设计在定时器1,主程序要对定时器初始化,如果进入中断,对timer1进行加1,接着对灯光的工作模式进行选择,因为本次设计有三种灯光模式,工作方式相同,现在支队模式一说明,进入模式一工作状态,让灯光亮timer1次,灭100减去timer1次,实现PWM波调光,退出中断.如果选择关闭时,对灯光进行关闭,退出中断.如果工作在定时状态时,等待定时信号到来,定时一到,判断灯光定时状态开还是关,如果是开,默认开模式一,否则定时关闭后直接退出中断.

4 结论

本系统系统由主机和从机两个部分组成,主机通过无线模块将所要操作的信息传递给从机,从机执行相应的动作.通过LCD12864进行显示时间信息和相应的操作,时间通过DS1302实现,带外部电源,断电时间信息依然保存.本系统可对灯光和窗帘实现定时功能,将时间信息和相应操作信息存储在24C02芯片中,可通过查看键查看相应的定时信息.主机可对窗帘进行全开、全关、定时和自动等控制.可对灯光进行模式一、模式二、模式三、全关和定时功能选择.系统可对灯光和窗帘在每周的任何时段进行定时开或关.从机负责系统的执行操作,可对主机或者遥控器发送过来的信息进行操作.从机由灯光电路、步进电机驱动电路、蜂鸣器驱动电路、输入输出扩展电路和遥控信号采集电路等组成.遥控器除了发射主控信号的操作外,还具有灯光的亮度进行调节、窗帘的开度进行调节和关闭闹铃等功能.使卧室实现智能化,高效化,便捷化.

[1] 杨 晶,唐小琦,宋 宝.智能护理床无线控制软件的设计与实现[J]. 机械与电子,2015(2):74-77.

[2] 郭天祥.新概念51单片机C语言教程[M].电子工业出版社,2009.

[3] 胡乾斌,李光斌,李 玲,等.单片微型计算机原理与应用[M].(第二版).武汉:华中科技大学出版社,2006.

[4] 樊昌信 曹丽娜.通信原理[M].(第六版).北京:国防工业出版社,2009.

[5] 徐 鹏,郭燕锦. 智能家居控制系统的设计与实现[J]. 科技广场,2015(1):85-89.

[6] 曾小波,旷永红.基于自适应模糊PID控制的整流器设计与实现[J]. 湖南工程学院学报(自科版),2015,25(3):13-17.

[7] 梁晓梅.智能家居系统设计与研究[J].科技风,2012(18):150-150.

[8] 康祥喆.浅谈我国智能家居的现状及发展趋势 [J].中国科技信息,2014(8):121-122.

Design of Bedroom Intelligent Control System Based on STC12C5A60S2

WANG Hong-li

(Department of Electric and Electrical Engineering, Fuzhou Vocational and Technical College, Fuzhou 350108, China)

The system adopts two STC12C5A60S2 chips as the system control core, consisting of the host control and the machine control. The host gives a message to the machine. Timing, curtains opening and lighting for automatic control mode selection can be done. At the same time, the remote control can also berealized. In addition to launching the operation of the main signal, the remote control can adjust the brightness of the light, the opening of the curtain. It can also close the alarm and operate other functions. The intelligence, efficiency and convenience of the bedroom makes our life more comfortable and enjoyable.

single chip microcomputer; intelligent household; light; curtain

2016-05-09

王洪丽(1977-),女,硕士,副教授,研究方向:电子通信工程.

TN916.42

A

1671-119X(2016)04-0018-05

猜你喜欢

高电平窗帘遥控
一种基于FPGA的PWM防错输出控制电路
“遥控”老师
赶路人
TS-03C全固态PDM中波发射机开关机控制电路原理及故障分析
他是如何遥控引爆的
巧做窗帘
相思湖
浅谈物理电路与数字电路
PDM 1kW中波广播发射机保护电路分析
窗帘