基于STC12C5A60S2的智能插座实现
本文提出了一种基于STC12C5A60S2单片机的智能插座的设计方案.该智能插座实现了过热保护、防雷击浪涌保护、按键设置、环境温度检测、实时时钟、信息显示等多种功能,并且可以通过光控、定时控制以及GSM远程控制实现对电器的通断电,从而实现节能以及智能化.从元器件的价格、体积等出发,选择价格较低、体积较小的电子元器件,实现了小型化以及经济性. 1、硬件设计硬件主要包括STC12C5A60S2单片机最小系统、光控电路、晶闸管光耦控制电路、GSM远程控制模块、DS1302时钟部分、OLED显示模块及驱动、按键模块、DS18B20温度检测部分等,考虑到成本以及小型化,在选择元器件时,主要选择价格较低、体积较小的元器件.
系统接于220V的交流电路,经过电压的转换电路降为5V,同时向DS1302、STC12C5A60S2等芯片提供电能.DS1302为时钟芯片,用于产生系统时间,通过相对应的按键控制STC12C5A60S2可设置DS1302芯片,数据返回到STC12C5A60S2,STC12C5A60S2通过OLED的驱动板使OLED将时间显示在数码管上.按下定时键时,可由按键设置家用电器开、关的时间,并且写入STC12C5A60S2,同时STC12C5A60S2不断从DS1302读入时问,当读入的时间与STC12C5A60S2中设置的时间匹配时,晶闸管执行开或关的指令,进而控制用电器的开、关.同理,在GSM远程控制模块、DS18B20温度检测部分以及光控部分,都是通过主控芯片STC12C5A60S2的控制,当满足设定的开或者关的状态时,晶闸管执行开或者关,从而实现电器的开与关. 1.1、单片机最小系统的设计主控器主要由MCU、复位电路和振荡器组成,是单片机工作的必要组成部分和控制中枢.STC12C5A60S2是一款高速、低功耗、超强干扰的新一代8051单片机,指令代码完全兼容传统的8051,但速度快8—12倍,其内部有集成的MAX810专用复位电路、2路PWM、8路高速10位A/D转换(25万次/秒)等. 1.2、光控功能模块的硬件设计
光控模块即通过光敏电阻对光强的感知实现插座的通、断电.光敏电阻对光具有可变性,无光时阻值无限大,相当于短路,随着光照强度的增加阻值逐渐减小,根据这一原理可实现家用电器有光工作、无光停止工作的性能.本次所用的是F5硫化镉光敏电阻MG45,灵敏度高,质量可靠.该光敏电阻可用于光电自动控制,亮阻为2~10KW,暗阻为1—10MW.图2所示即为光控模块的电路原理图。
1.3、DS1302时钟模块设计
DSl302是可以涓流充电的时钟芯片,它需要两个电源以及振荡电路才可以工作,通过单片机的控制,可以提供时间信息.DS1302的电路如图3所示.此系统用时钟芯片提供时间,通过STC12C5A60S2输出给OLED显示器显示当前时间,当按下定时按键后,STC12C5A60S2从时钟芯片读一次数据,传输给显示器.此时,通过按键可设置起始时问.设置好后再按下定时按键,起始时间被储存在STC12C5A60S2内部,同时可设置终止时间.当第三次按下定时按键后,终止时间被储存在STC12C5A60S2内部,同时显示器显示跳回当前时间,当前时间每增加一秒,STC12C5A60S2内部都将起始时间与之进行比较,当两个时间相同时,STC12C5A60S2输出信号使用电器开启,当内部终止时间与当前时间相同时,STC12C5A60S2输出信号使用电器关闭.设计选用的是32.768KHz(3*8mm)的晶振、3.3V的纽扣电池. 1.4、晶闸管与光耦部分的电路设计晶闸管属于半控型电力电子器件和脉冲触发型器件,一旦导通,则需要在主电路使通过晶闸管的电流降到接近于0的某一数值以下.双向晶闸管是一对反并联联结的普通晶闸管集成,晶闸管所能够承受的电压和电流容量很高,工作可靠,故在此智能插座中选用双向可控硅和具有过零检查的光耦晶闸管,通过双向可控硅和光耦的结合实现自动控制的通断电,设计选择的元器件主要有:MOC3023MSOP-6、BT136S-600E的贴片双向可控硅等. 1.5、远程控制功能的GSM模块设计GSM模块主要使用TC351,TC351新版西门子工业CSM模块是一个支持中文短信息的工业级GSM模块,当供电电压低于3.3V就会自动关机.模块在发射时,电流峰值可高达2A,在此电流峰值时电源电压(送人模块的电压)下降值不能超过0.4V.所以该模块对电源的要求较高,电源的内阻+FFC联接线的电阻必须小于200m欧。 1.6、防雷击浪涌保护模块的设计设计在电路之中并联压敏电阻MYN15-681K,它的标称电压是680V,性能高,可用于防止供电电网中出现的过高浪涌电压和雷击对插座的伤害.此外还选取了OLED(128x64)、DS18820等. 2、软件设计2.1、实时时钟功能的程序流程设计DS1302是美国DALLAS公司推出的一种高性能、低功耗的时钟实时芯片.在程序设计的过程之中,必须特别注意时序.图5是DS1302的程序流程图.在读写数据的过程之中,RST/CE脚必须为高电平;对DS1302的操作归根结底是对它的12个寄存器的操作.若要使其在重新启动单片机时,显示的时间不是初始化的DS1302值,则需要在主函数中进行判断:若DS1302的秒寄存器值发生变化,则不进行初始化;否则进入DS1302的初始化函数.通过主控芯片的控制,实现实时时钟的功能.
2.2、温度检测部分的程序流程设计DS18B20是一种单线数字化温度传感器,根据它1的通讯协议可知:MCU控制该芯片完成温度转换需要三个步骤.操作DS18B20时,最关键的就是复位、写数据和读数据,图6是DS18B20的程序操作流程图.单总线器件ROM的获取,可借用读数据函数提前读出,先初始化,再读ROM.通过微处理器的控制,从而将实时温度存储下来.通过比较实时温度与设定温度,控制该智能插座的通断电.
2.3、远程控制功能的程序流程设计模块主要包括GSM初始化、来短信检测等.图7为初始化GSM的程序流程图.单片机通过两个I/O口控制TC351的开关机、复位等,通过串口与TC35进行数据通信,通信速率为9600kbps,采用8位异步通讯方式,l位起始位,8位数据位,1位停止位.GSM模块仅是此系统的一个外围电路,通过单片机的控制实现远程控制.
3、功能说明与测试系统有光控、时控、GSM控制、温度过热保护等功能设置了9个按键,可以实现时间的调整、定时操作、模式选择、显示设置等.光控主要是使该插座有光时工作、无光时断电;时控是使此插座实现定时开关电源,通过程序设计可以实现多次定义通电时间和断电时间;GSM控制主要是为了防止人离开房间之后忘了关闭电器或者是想在人未到房间时开启电器等,故可以在此种情况之下实现通断电;过热保护主要是通过检测温度,若温度超过一特定区间的值,则实现插座的通断电,从而保护电器. 开发过程之中比较重要的几点:(1)DS1302与MCU之间的连线不宜过长;(2)DS1302在初始化的时候要进行判断,否则不能够实现掉电不掉时;(3)光控部分的电路可以使用光敏电阻和一个普通电阻串联,简单易懂; 4、结语本文设计的智能插座可实现光控、时控、GSM远程控制、过热保护等功能,通过使用成本较低、体积较小的芯片使系统更加小巧、实惠.系统具有节能性、经济性、小型性、智能化等特点,这种多功能的智能插座应具有良好的应用前景.
|