陈荣坤
摘 要:介绍了一种以单片机STC12C5A60S2为控制核心,可用于对智能家居环境进行监测、控制、报警、显示的系统。该系统使用传感器技术、单片机技术等实现了对室内家居环境温湿度、光照度采集、设备运行与停止控制、显示与状态报警等功能。通过实际调试,在智能家居环境领域具有现代智能化的应用价值。
关键词:单片机;智能家居;环境监测控制;传感器
中图分类号:TP332.3 文献标识号:A
A Smart Home Environment Monitoring System based on MCU STC12C5A60S2
CHEN Rongkun
(Department of Electronic and Information Engineering, QuanZhou Institute of Information Engineering, Quanzhou, Fujian 362000,China)
Abstract: This paper introduces a microcontroller STC12C5A60S2 as the core, which can be used to monitor, control, alarming and display the smart home environment.The system uses sensor technology, microcontroller technology, etc., to achieve the indoor home environment temperature and humidity, light illumination collection, equipment operation and stop control, display and state alarm and other functions. Through the actual test, it has the application value of modern intelligence in the field of smart home environment.
Keywords: Single Chip Microcomputer;Smart Home;Environmental Monitoring Control;Sensor
0引 言
近年来,随着现代家庭生活水平及选择需求的不断提升,智能家居环境监测控制系统在改善现代人居的生活质量和完善生存环境方面正日渐发挥着其实效且重要的技术推动作用。基于此,本文即针对一套智能家居环境监控系统的研发设计而展开了如下研究。具体来说,该系统可对室内温湿度、光照度进行数据采集;还可将通过传感器采集的数据和预设置的参数进行比较,再利用单片机进行编程控制,从而实现智能家居的合理功能配设,并最终获得理想满意实践效果。
1 系统方案设计
系统以STC12C5A60S2型单片机为中央控制器,主要由温湿度检测模块、光照度检测模块、键盘模块、显示模块、风扇及照明模拟模块、报警提示模块和电源模块组成。系统方案如图1所示。
图1 室内环境监测控制系统原理框图
Fig.1 Block diagram of indoor environment monitoring control system
为了节约系统成本、提高系统稳定性及利于维护维修,系统采用模块化设计方式。该系统的主要功能是根据传感器采集的数据与预设定的参数值进行比较,进而通过单片机系统程序来控制相关模块的运行和停止。由图1可见,温湿度、光照度传感器模块可用于实时采集家居环境的数据;键盘模块则用于设定温湿度和光照度的范围;而显示模块将用于显示温湿度和光照度等级及舒适度情况。除此之外,模拟模块即用于设备运行与停止情况的仿真模拟;特别地,LED报警提示模块会用于当温湿度、光照度数据超过预设定值时来进行闪烁报警指示[ ]。
2 系统硬件设计
由于STC12C5A60S2集成度较高,只需要一块单片机加上一些必要的外围电路就可以完成硬件设计。
2.1 最小控制系统
基于系统的要求,芯片选用的是STC系列单片机STC12C5A60S2。其中复位电路、单片机STC12C5A60S2构成最小控制系统。实现电路如图2所示。
图2 最小控制系统电路
Fig.2 Minimum control system circuit
STC12C5A60S2是一款运算速度快、抗干扰能力强、超低功耗、并可支持SPI在线编程的单片机,其内部自带2路PWM控制器、2个定时器、2个串行口支持独立的波特率发生器、3路可编程时钟输出、10位AD转换器、一个SPI接口。时下,则因其价格低廉、功能完善,已在电子行业获得广泛认可和大量应用。
2.2温湿度传感器电路
温湿度传感器电路采用了DHT系列的数字式温湿度传感器DHT11。DHT11是一款内含有已校准数字信号输出的温湿度复合传感器,但仅有一个单总线制串行输出接口,这一配置使系统集成电路变得简易快捷。只是,由于传感器的单总线制特性,造成其发送和接收皆须为三态特性,因而外接上拉电阻,其在常规状态下将呈现为高电平[ ]。具体电路如图3所示。
图3 温湿度传感器电路
Fig.3 Temperature and humidity sensor circuit
2.3光照度传感器电路
光照度传感器电路选用的是BH系列光照传感器BH1750,BH1750 是一种用于两线式串行总线接口的数字型光强度传感器集成电路。这种集成电路可以根据收集的光线强度数据来调整液晶或者键盘背景灯的亮度,并利用自身的高分辨率探测较大范围的光强度变化。设计电路如图4所示。
图4 光照度传感器电路
Fig.4 Illumination sensor circuit
2.4 液晶显示电路
液晶显示电路采用的是LCD12864。LCD12864是一种低电压低功耗、具有4/8位并行、2线或3线串行多种接口方式,内部含有国标一级、二级简体中文字库的点阵图形液晶显示模块;其显示分辨率为128×64, 内置8 192个16*16点汉字,和128个16*8点ASCII字符集;利用该模块灵活接口方式及简单、方便的操作指令,即可构成全中文人机交互图形界面;而且可以显示8*4行、16*16点阵的汉字,并可完成图形显示。由该模块构成的液晶显示方案与同类型的图形点阵液晶显示模块相比,不论硬件电路结构或显示程序都要简洁许多,且该模块的价格也略低于相同点阵的图形液晶模块[ ]。
2.5 风扇及照明模拟电路
风扇及照明模拟电路选用的是NPN系列的8050三极管,其原理即是利用三极管的开关工作状态。具体地,当监测智能家居环境温湿度数值和预设置数值对比不一样时,单片机将输出PWM1信号控制风扇(本文用马达)进行智能调节;当监测室内光照度比较暗时,单片机将输出PWM2信号控制室内照明,相应地进行室灯照明度的智能调节。反之亦然。基本电路如图5所示。
图5 风扇及模拟照明电路
Fig.5 Alarm and analog lighting circuit
2.6键盘电路
键盘模块电路是由4个轻触式按键S1-S4和最小控制系统组合构建而成。键盘功能设定:按键S1第一次按下修改预设值,而后再按下S2键、S3键或S4键进行参数设置,设置完成后,再按下S1键,参数设置成功。S2键按下就是对任一参数进行设置;S3键和S4键按下则进行相应的加1或减1操作。如果并未按下S1键,即按下了S2键、S3键或S4键,将保持前状态继续进行,数据显示也不会发生改变。
2.7电源电路
单片机及外围电路都需要直流5V工作电压,均由变压器次级线圈输出 ,经由整流、滤波、稳压而得到[ ]。其对应电路如图6所示。
图6 电源电路
Fig 6. Power supply circuit
除以上各电路模块之外,还需要各种信号控制温湿度、光照度、液晶显示、风扇及照明、报警等。各功能模块均通过I/O接口连接至单片机,单片机将集中处理这些信号并作出回应,从而将各个模块连通整合在一起。另外,为了提高系统的抗干扰性能,在有可能出现干扰的输入及输出通道还设置并加强了一定的隔离措施。
3系统软件设计
采用8052内核,具有64K FLASH的程序存储器和1280字节的外部RAM数据存储器,系统选用C语言[ ]进行开发。软件采用模块化设计,重点包括主程序、初始化程序、数据处理显示程序、温湿度传感器DHT11程序、光照度传感器BH1750程序、控制电路程序等。并且将任务分成不同的模块处理,保证系统的稳定性。系统程序流程如图7所示。
图7系统程序流程图
Fig.7 System flow chart
4 系统调试结果
STC12C5A60S2单片机能监测控制智能家居环境系统的运行与停止,并将监测控制数据显示在LCD上。当监测智能家居环境温湿度数值和预设置数值对比不一样时,单片机将输出PWM1信号控制风扇(本文用马达)进行智能调节;当监测室内光照度比较暗时,单片机将输出PWM2信号控制室内照明,也就是智能调节室灯的照明度。反之亦然。
5 结束语
本文研究开发了集温湿度、光照度监测控制为一体的智能家居环境系统,采用了高精度的传感器,并利用C语言编程,实现智能家居环境参数的精准测量。结果表明,该系统测量结果准确,符合智能家居环境的监测控制要求。
参考文献:
[1]于军,关润田.智能家居环境监测控制系统的设计[J].吉林化工学院学报,2011,29(3):67-70.
[2]李天山.基于单片机的室内环境监测仪设计与实现[J].滨州学院学报.2012,28(3):92-95.
[3]徐玮.单片机快速入门[M].北京:北京航天航空大学出版社,2008,5
[4]陈晓文,林春木.基于PIC单片机的UPS监控器设计[J].机电技术,2014,95:36-38.
[5]谭浩强.C程序设计(第四版)[M].北京:清华大学出版社,2010,6