在节奏过快的生活中,人们承受的精神和心理压力十分巨大,这就使得现代人都希望在当代繁忙而枯燥的工作和学习中能身心愉悦的生活。随着信息化发展水平的逐步提高,智能化系统越来越受到人们的重视。市场上普遍的闹钟只是一种到了人们设定的时间就被令人烦躁的声音而吵醒的机械化闹钟,机械化的闹钟不仅将熟睡的人们从梦中惊醒,影响了人们起床的心情,还影响了人们的身体健康。因此,人性化的唤醒系统显得尤为重要,它以多种方式联动,可对光线亮度、语音提示和人体感应等诸多唤醒元素进行个性化调整或设定,尽可能将对人的刺激减低到最低限度,让睡眠中人在设定的时间里自然醒来[1]。
目前,市场上越来越多小型普遍的电子产品的功能不断地被更替,这一现状由于智能化电子产品的出现, 毋庸置疑闹钟就是一个典型代表。普通的响铃闹钟设计缺乏的是人性化关怀这一理念,比如人们还在熟睡中就会被刺耳的闹铃叫醒,这种唤醒方式不仅会使人感到厌烦、浑身不舒服,更重要的是会影响人们的身体健康,因此,人性化的智能唤醒系统显得相当不可忽视。近年来,智能系统的研究已经带领社会进入了更为人性化的领域,这一现状引起了国内外学者及企业的广泛重视。国内,浙江大学提出了一种人性化控制的智能家居若干关键技术研究;中国信息界提出的一款智能闹钟,每天早上能够温柔的唤醒熟睡中的人们;另外,杭州电子科技大学、吉林大学、山东大学等众多学者也进行了智能唤醒系统的相关研究。其研究成果填补了国内在相关领域的多项空白,为人性化的智能家居设计提供了新的思路和技术支持,在很大程度上推动了国内智能化系统的发展进步[2]。国外有一款地毯闹钟Reggie,这款闹钟功能是在唤醒时倘若不站上去,那么它就会一直响直到将人们唤醒,如此就解决了起床困难户的问题;Baboomi智能闹钟,这款智能化的设计既有为闹钟充电的功能,在一定程度上又有震动的功能。临睡前在枕头下放置智能闹钟的震动设备,早上熟睡的人就会被它人性化地震动声音而慢慢唤醒,这种传达起床信息的方式更加智能化;倘若在智能手机上安装智能闹钟的App,也可以实现智能化的语音闹钟,通过设置起床时间,在早上就能感受到舒适地被唤醒。
针对目前功能比较大众化的闹钟设计中存在的人性化关怀不够,以及没有充分考虑到消费者的使用体验等问题[3-5],本设计做出了进一步的改进,主要体现在在唤醒系统的视觉、听觉等方面。家用智能唤醒系统,可根据人们预先设定的起床时间,慢慢调整周围的光照闹钟响起唤醒熟睡中的人们,同时,以温柔的语音提示当天的室外温度来提醒人们穿衣厚度指数等。本系统不仅能满足普通人的唤醒需求,也能满足老年人以及有耳疾的残疾人的唤醒需求。
2系统的设计方案
一款智能家用唤醒系统必须具备基本的电子时钟功能,这可以根据不同的需求设定不同的操作从而实现不同的功能。智能闹钟在设定的起床时间还没到达之前,自动调光灯由暗变亮,闹钟开始响铃,并进入语音提醒模式,和普通闹钟相比较有很大的创新。如果人们还未从熟睡中醒来,那么闹钟就会持续响起直至手动关闭闹钟。本智能家用唤醒系统核心硬件是以STC89C51单片机为主控芯片,根据主控芯片的外围接口这一特点,在外围加以其他硬件电路,然后根据单片机的指令设计要求,在编译软件中采用C语言设计程序,并通过执行一定的程序来实现此系统的功能。系统设计主要由单片机最小系统、温度检测、实时时钟模块、PWM波调光、具有语音提醒功能的闹钟模块、显示和按键模块等几个部分组成。STC89C51单片机最小系统作为主控模块,时间、日期信息的采集由DS1302时钟芯片来完成,温度的获取用DS18B20温度传感器来实现,时间和温度等的显示主要是在LCD12864液晶显示器中完成的;通过按键完成日期、时间的初始化设置和闹钟的设定;借助PWM波的变化实现唤醒灯自动调光;采用语音模块完成闹钟唤醒和温度提醒功能。家用智能唤醒系统设计原理框图如图1所示。
图1系统原理框图
3系统的硬件设计
根据系统的设计方案,系统的原理图设计如图2所示。总体原理图以单片机STC89C51为核心的控制电路[6],外围辅以时钟电路、温度传感器电路、PWM唤醒灯电路、液晶显示电路及语音播报电路等。通过按键设置闹钟,单片机将温度传感器和实时时钟传来的信息处理后送到液晶显示器显示,在设定的时间提前一段时间单片机控制唤醒灯打开,语音模块与单片机进行通信协议,从而实现各个功能。
图2 系统原理图
3.1控制模块的设计
主控制模块以基于STC89C51单片机为核心,这是智能家用唤醒系统设计的最重要的部分,一个能够正常工作的单片机系统是在核心芯片上加入一些外围电路组成的。最小系统和按键控制电路是控制模块设计中的两个主要部分,控制模块负责整体电路的主要工作,通过操作按键和单片机控制电路的运行。
晶振电路和复位电路是单片机最小系统必不可少的部分[7]。单片机正常工作时的工作速度是由晶振电路提供的,这种工作速度是由晶振电路产生的脉冲信号。在理论上,STC89C51单片机的最小系统本应使用的是和系统相配的晶振,然而在本系统中选取的是比较接近的12MHz晶振。由于单片机内部结构的特殊性,因此,只需要一个晶振和两个电容连接在单片机外面的电路中就可实现时钟电路,电容一般选用的是30pF的容量就可以满足要求,图中C1和C2电容的作用就是为了使单片机能够迅速的起振,并且能够使单片机工作时的频率达到稳定。晶振的一端接XTAL2(19),另一端接的是XTAL2(18),两个电容并联接于振荡源之间,工作时能更好的为单片机服务。智能家用唤醒系统的各个部件在处于初始化状态时,单片机可由此开始工作进行操作,这一系列是复位电路提供的条件,复位电路是单片机的准备工作,包括上电复位和按键复位两种模式。在按键复位中,电容C3取值一般为10uF,电阻R取值约为10KΩ,K5是为实现按键复位而设置的。然而,在上电复位中,由单片机运行后给定的高低电平直接实现复位功能。
按键控制电路中,设置了五个按键实现设计所需的要求,按键在设计中能够起到控制外部电路的作用,不同的操作实现不同的功能。本设计中使用的按键不多,仅需五个按键系统所需要的功能即可完成。按键有四个接脚,两个相连的之间导通,按键其中一端接单片机的I/O接口,另一端可以接电源,也可以接地端,此系统中按键另一端是接地的,低电平完成按键的操作,这样的接法程序是比较简单且系统也相对稳定。五个独立按键实现的功能分别有确认返回、加一、减一、闹钟开关及唤醒灯开关,按键K1、K2、K3、K4和K5分别与单片机的P1.0、P1.1、P1.2、P1.3和P1.4引脚连接,控制模块电路图如图3所示。
图3 控制模块电路图
3.2时钟模块的设计
实时时钟电路的设计是本次设计的基本模块,在数字时钟所具备的功能下才能实现闹钟的设定。时钟模块的设计需要采用时钟芯片DS1302,这款芯片可以精确的计数,具有农历和阳历转换的功能,可以编程接口,与此同时还具有掉电保存等功能,在编写程序时能够对其比较方便的进行程序控制[8]。与直接使用单片机内部定时器实现计数功能相比,DS1302时钟芯片实现的功能很便捷,程序简单易编写,稳定性好、容易控制、时间精度高等。由于单片机内部定时器虽然没有使用芯片,但是实现的时间误差较大,不能满足系统要求。所以系统完成时钟电路的首选芯片就是DS1302时钟芯片。
DS1302时钟芯片与单片机进行通信时,仅需要SCLK、I/O和RST三条线连接的方式,可以实现以一对多的方式传送多个字节的时钟信号或数据。DS1302比同类的芯片性能好,功耗低能更好的为系统的运行减少不必要的负荷。时钟模块有两个电源,在Vcc2 不能正常运行时,时钟依然能在Vcc1的作用下维持原来的状态继续运行。若两个电源大小不一,则使用其中较大的一个电源为电路供电,Vcc1采用3V的纽扣电池,Vcc2主电源使用的是整个系统的电源。DS1302时钟芯片需要使用32.768KHz的晶振,晶振电路可产生计时脉冲。为了对所传送的数据进行初始化,DS1302工作时复位脚就需要被置为高电平,反之,数据的传送就会被停止导致数据不能继续传输。
在本系统的设计中,实时时钟电路主要是为了能够准确的显示电子时钟等信息。通过与单片机连接,将用软件实现功能,然后经过显示器显示需要的时间信息。DS1302时钟芯片与单片机的通信接口由3条线组成,VCC接在系统电源上,GND接在地端, RST复位管脚与单片机的P2.2端口连接,实现了时钟电路在复位时由低电平跳变成高电平并启动一次数据传输的过程,SCLK管脚与P2.1端口连接,时钟输入端将记录的脉冲信号存入时钟芯片,I/O管脚与P2.0端口连接,数据线输入输出记录的时间数据。根据电路的需求,可在三线上加上拉电阻,由于P2口内部的缘故,本系统连接的单片机P2接口也可不加电阻。DS1302时钟电路在设计中的原理图如图4所示。
图4 时钟电路原理图
3.3温度检测模块的设计
为了使测得温度值更加精确,DS18B20温度传感器的高精度性能就成了温度检测模块选取的标准。这款传感器属于数字式传感器,而且在进行数据的传送时仅仅一条数据线就可以实现,最重要的一点是它与单片机连接的时候显得更加简单方便,也鉴于此类传感器的结构简单易懂,不需外围的电路辅助完成所需的功能。若采用热敏电阻和A/D转换器实现温度采集,就需选用标准稳定的电阻才可完成设计要求,并且检测的数值可靠性较差。在经过比较论证后,选用DS18B20能更好的满足设计需求,它的分辨率比起同类型的传感器更高更精确&#