主页 > 案例大全 > 论文技巧案例-LED灯语音控制系统的设计与实现

论文技巧案例-LED灯语音控制系统的设计与实现

2021-04-08 18:03:03

  近些年来,“智慧生活”的提出,已经将人工智能大量融入我们的生活。在家用电器方面,智能化电视,智能化冰箱,智能化电饭煲等这些都已经大量运用了人工智能技术,做到了相互联系与协调。但是随着LED灯的广泛应用,给LED灯及其相关领域带来无限广阔的应用前景。是人们的目光注意到了这一领域。当下人们的生活质量的不断提高,人们不单单满足于LED灯的单一使用,这就需要为LED灯增添更多的功能,人工智能也为LED带来了无限可能,也对于家居智能系统提供了新的助力。LED我们无时无刻都在使用的到,无论是手机、电脑、还是台灯。LED基本上无处不在。但是具体到LED灯上的人工智能并不是不是很多了。

  本文想要介绍的是区别于普通单一控制的台灯,我们要设计了一种基于语音控制的智能台灯。该智能台灯的总体是以STC89C52单片机为核心控制器。还有传感器模块、电源模块、LED控制模块共同组成。传感器模块包括人体红外传感器、亮度传感器。LED控制模块LD3320语音识别芯片和STC11L08XEDI单片机组成的语音识别模块、A/D转换模块、按键系统等。台灯模块采用15WLED灯。自动模式与手动模式两种控制方式共存,但两种控制方式依旧相互独立的智能LED灯。软件设计用单片机C语言编写,实现语音控制开关、光敏感应亮度调节、人体感应及报警的控制功能。

  1.1题目背景

  近些年来,随着我们改革开放的程度不断加深,中国的第一个一百年已经到达了收官之年,中国全面建成小康社会的目标即将完成,对于我们来说体现在人们的生活水平不断提高,人们对于生活中使用的物品有了跟高的要求和使用方式。在这样的环境下,智能化的系统也越来越受到人们的青睐.其中对于照明系统来说可以有许多控制方式,例如楼道中声音控灯泡的开启与关闭,通过光线强度来控制灯泡开启与关闭的路灯,这两者虽然属于智能控制,但不能达到精确控制的目的,所以只能安装在公共场所.,物联网手机远程控制灯泡开启与关闭.手机控制虽然很智能,但它需要辅助设备,而且成本太高,操作不便.许多WIFI智能灯泡运用了语音控制系统,已经将语音控制家居推向了智能化、科技化、人性化。总体来说,公众场合所需要的控制系统,需要结实耐用,不需要太过于复杂的操作方式。而对于家居生活中更加智能化、人性化的语音控制系统。具有良好的人机交互功能得到了人们更多的认可和使用,这也为了生活增加趣味性和舒适性,也是我们提高了生活品质。在这样的情况下,相对传统照明方式已经不能胜任我们日常生活的新需求,而LED灯具因使用方便、灵活自然、智能化、多样化等诸多优点引起的人们的广泛关注。又因为LED灯多种多样的控制方式,能够为人们提供更多的操作体验。现最常用LED灯的控制方式有语音控制、光线控制、无线控制等,其中语音控制拥有更加人性化、智能化的人机交互功能,也可以为人们生活增添趣味性,提高生活的舒适度,这样的控制方式得到人们更多的认可和使用。

  2.2研究意义

  LED灯语音控制系统利用语音处理技术来解决LED灯具的智能化控制问题,操作简单方便,具有更高的灵活性;良好的人机交互的方式解决LED灯的远程无线的控制。现今社会已经将“高效、节能、绿色、环保”的理念,已经深入人心了,对于LED灯的广泛使用,却不能使其合理的再每一个地方发挥作用。所以LED的控制方式也再不断的变化,从最先的光线控制转化为无线控制,然后的语音控制,最后人工智能的多种控制方式并存一体化控制。这些智能的控制方式应用到了家居市场的各个照明系统,具有节能环保的功能,也为改善人们的生活质量。有相当广阔的市场,具备相当大的开发前景,会产生重多价值。

  LED灯具也是人们接触最多的家电设备—台灯,也将顺应时代发展的潮流,将智能化、人性化。但相对于目前市场中现有的台灯,大多数是只有单一功能。其控制方式也比较单一。主要是以光敏电阻或光敏三极管对于周围环境的光照度进行采集从而控制台灯的开关。仅仅通过热释电红外线传感或者超声波来探测人是否进入台灯工作范围内,而选择台灯的开启与关闭。而相对能够智能化的语音控制或者自动控制的台灯,对于普通的消费者来说,台灯的价格普遍偏贵,普通台灯不够人性化、不够个性,也消费者不选择它的理由之一。而且普通台灯只有一个控制开关,若开关出现了问题,那么整个台灯就不能正常使用了,就算有些智能台灯,它的控制开关不够独立。例如台灯在自动控制方面一般是使用简单有稳定的光敏电阻,其中这些光敏电阻都比较结实耐用,但是抗干扰能力不够好,容易受到外界环境的影响,这也限制了这种台灯性能的可靠性与稳定性。最后大多数台灯都是手动调光,再夜晚就显得不够方便,也不够实用。

  伴随着语音控制、红外控制、手势控制等多种控制方式普及,家用电器也因为单片机的加入而走向进一步的智能化,更因为人们收入的逐渐提高,智能家用电器走向平民化,我们的生活也因为更加智能,更加便宜的家用电器变得越来越方便、舒适。随着家用电器的发展,作为家用电器当中的小台灯也要顺应科技的发展步伐走向智能化。这样的小台灯具有更高的灵活使用性,更多的实用性,也是具有满满的科技感。这种的控制LED的方法可以不单单应用于台灯,也可以将应用在更多普通的家庭照明电路中来。将自己家里打造成智能家居一体化、智能化、高互动人机交流的新家居模式。

  1.3国内外相关研究情况

  如今国家已经在照明节能的问题上开始大力整改了,现在就开始大力推行使用更加节能环保的LED灯泡.现有LED照明控制方式是有线和无线.有线方式需要大量的综合布线工程、施工成本很高,后期需要长期维护,否则会出现损坏外观、电路老化、难以全部监控等难以解决的问题;而WLAN、CDMA/GSM无线方式仍然存在组网不灵活、运维成本居高不下的问题.ZigBee等无线方式也有系统维护成本高的问题。

  如今的语音识别技术发展日新月异,尤其是中小词汇量非特定人语音识别系统,它的识别精度已大于98%,远远超过了普通的无线传输方式,而对于特定人语音识别系统已基本实现了百分百的准确率.这样的语音识别技术已经基本满足了日常应用的要求.现今工厂里的集成电路技术已经发展巨大,大规模集成电路技术也使芯片上可以集成有1000个以上电子元件。这些技术运用于复杂的语音识别系统制成专用芯片,在工厂中用大量生产。

  西方经济发达国家中,语音识别产品已经进入市场,在服务领域开始起到引领作用了.而将语音识别技术和语音合成技术运用到室内LED家居系统后,如何设计语音处理技术的智能LED台灯就成为了摆在设计师面前的有一个新问题,这样的智能LED台灯可以帮助照明系统节省约20%左右的用电量,还为延长照明灯具的使用寿命做出贡献,这样的智能LED台灯不仅节约室内LED照明经费,也将为人们提供快捷、舒适的生活环境,在大量普遍的使用下,还可以帮助国家解决电力不足、能源紧缺、环保能力不足等诸多等相关领域问题。

  在国内现有智能家居任有诸多不足方面,随着科技与生活不断结合,众多富有科技感的家用电器逐渐走到了人们的面前,他们的应用为人们提供了一种绿色环保、低碳节能、时尚潮流的新生活方式。其中智能LED灯也是智能家居中的代表。本文所提出的基于语音控制智能LED台灯。这将原有台灯的许多弊端都有所改变,不在只有单一的光照强度,具有多亮度的灯光调节功能。对与台灯不字是单一的按键、人体感应或光照感应的控制,而是将语音控制与光照感应有机的结合到一起来,这样对于台灯多种途径控制方式,给智能台灯的灵活、可靠、实用等方面带来了不小的提高,是它们更加适合于人们日渐加快的生活节奏,同样也可以保证人们的生活品质。智能台灯具有报警功能,为人们担心的视力问题、坐姿问题,利用光敏电阻对于外界环境的探测,使其能够反馈到单片机中,使单片机适时发出灯光调整的命令,LED灯做出调节灯光的反映,人体红外检测模块也将时时测量台灯与人体之间的距离,距离过近时将发出警报,此项功能也能帮助父母纠正孩子们的坐姿问题。

  1.4关于LED灯的设想

  台灯的总体设计主要包括两个方向:

  一是具有智能语音识别功能,通过口头语言来控制开关灯,提高亮度,降低亮度,从而解放你的双手,进而可以把更多的精力投入到你的工作和学习当中。

  二是具有智能人体检测功能,可以通过红外线检测人体是否坐在台灯面前;因为我们发现很多人都没有随手关台灯的习惯,所以当人体感应模块感应到室内没人的时候会在延时后自动关闭台灯。当人进入房间后,走到了台灯附近准备工作或学习时,人体红外感应模块检测出信号,会将信号传输到单片机中,单片机发出指令使LED灯,自动开启。这样的生活更轻松、更智能的,同时也更有利于节能和环保。

  2方案设计的比较与论证

  时至今日,在科技发展过程中,随着新的科学技术不断应用于电子产品,致使我们的设计思路可以百花齐放,可供我们选择的方案也变得丰富。只有在无数设计思路的对比中,在具体方案实施的过程中,将不同设计方案的对比与论证后,才能选择出相对符合我们心里预期“完美”的方案。也是为了这完美的方案,我才需要进行不断的实际方案论证与探讨。

  2.1主控制起的选择方案

  每个设计中的中主控芯片都是最核心的选择,主控芯片是在核心控制接受方案中诸多指令信号,将指令信号带来的数据信息进行算术运算和逻辑运算,把运算结果形成反馈信号并由主控芯片发成,使得到反馈信号的元器件迅速运行,在这个过程中要保证信息的及时性,各个器件配合的流畅性。符合这些条件的单片机有很多,结合实际使用情况,与经济适用性综合考虑我们将选择STC89C52单片机。

  2.2语音识别控制系统的选择方案

  方案一:使用孤立词语音识别系统的DSP实现,仍然需要用到动态时间规整(Dynamic Time Warping,DTW),动态时间规整(DTW)算法,该算法基于动态规划(DP)的思想,解决了发音长短不一的模块匹配问题,是语音识别中出现最早、较为经典的一种算法,但是DTW算法因为没有一个有效地用统计方法进行训练的框架,不容易将低层和顶层的各种知识用到语音识别算法中,因此在解决大词汇量、连续语音、非特定人语音识别问题是较为不便。当硬件想要使用DTW算法时,还要对输进的模拟语音信号首先要进行预处理和声学建模,对于本次课题的使用起来比较复杂,算法中孤立词识别方案与实际我们智能语音识别系统所需要是识别方案有较大差异。

  方案二:使用由ICRoute公司生产的LD332非特定人语音识别芯片。该集成了语音识别处理器和一些外部电路,包括AD、DA转换器、麦克风接口、声音输出接口等。本芯片在设计上注重节能高效,不需要外接任何的辅助如FlashRAM等,直接集成在现有的产品中既可以实现语音识别/声控/人机对话功能()。并且,识别的关键词语列表是可以任意动态编辑的,因此我们可以通过在寄存器中写入控制命令的关键词,如:“开灯、关灯、调大灯光、调小灯光”等作为开灯同一类命令,这样能够比较适合本课题的语音控制的要求,能够比较方便的将控制开关灯的多个关键词同时录入,并且能够这些关键词作为开关灯的命令。基本符合本次课题的需求,同样能够满足经济预算,所以选择它作为语音识别系统。

  1.3主电源的选择方案

  电源是所有电子系统设备的基本保障,没有电源再强大的电子系统也不能正常的工作;如果电源电压不够稳定,将会导致电子设备的瘫痪,所以电源的选择也尤为重要。

  方案一:线性稳压电源是应用最广泛的稳压电源之一,最常用的线性稳压芯片有正电压78XX系列、负电压79XX系列等,它们有一个共同的特点就是它的功率器件调整管工作在线性去,靠调整稳压管极间的电压将来稳定输出,所以它们的转换效率普遍较低,而且在接近满负荷工作时,发热量很大,对于本次课题比较不适应。

  方案二:开关电源也与线性稳压电源具有同样的广泛的应用,开关电源不仅具有功耗小效率高等优点,而且它的体积也十分小巧,重量也轻,电路形式灵活多样。而且它的输入电压范围很宽。电压输入的变化并不会电源的稳定输出造成影响,电源依然能够稳定的长时间工作,若不是满负荷工作时,电源的发热量也是很小的,完全可以忽略不计。这样比较适合于本方案的实施与操作,所以选择USB开关电源为本次设计的电源。

  本章小结:方案对比需要考虑到是否便利,技术是否成熟,环境是否容易做到,使用的元件是否常见且易得。还有经济性较高。

  3 LED台灯的智能控制原理

  智能LED灯的控制原理主要从语音识别控制和台灯模式控制与切换等方面进行解释说明。

  3.1语音识别原理

  图(3.1)为语音芯片识别原理框图,LD3320芯片上集成了高精度的A/D和D/A接口,不再需要外接辅助的Flash和RAM,即可以实现语音识别/声控/人机对话功能。并且,识别的关键词语列表是可以进行动态的编辑的。从图()中可以看出,LD3320从MIC中获取语音流并进行AD转换,然后进行频谱分析结果中提取语音的特征信息,得到特征信息后发送到语音识别器,语音识别器将其与关键词语列表中拼音串进行特征匹配,最后将识别结果输送至外部处理器。

  图3.1语音识别系统原理框图

  3.2智能台灯的工作方式

  3.2.1自动模式

  在LED灯处于自动模式时,而光敏电阻一直处于工作状态,当环境比较暗的时候,光敏电阻的阻比较小,台灯在开始状态下,人体红外感器为间歇工作状态,当人体红外感应器检测到了人体的红外信号,就开始测距,当人体距离台灯过近时,自动发出报警声。若在光照强度较强的情况下,光敏电阻阻值较大,台灯关闭,人体红外就处于停止工作状态。

  3.2.2人机交互模式

  当台灯处于人机交互模式时,语音识别芯片将处于间歇工作状态;当语音识别芯片的咪头接收到语音信号后,将传送语音识别芯片中进行处理,将语音信号与事先输入好的语音控制指令进行比较,当语音芯片识别成功后,语音控制指令将传送到单片机,单片机接受到信号后,控制LED灯的变化。

  3.3 LED的PWM调光原理

  PWM调光的基本原来是LED的正向导通电流保持恒定,通过改变控制脉冲的占空比来改变LED的亮度(即控制电流的导通和关断时间比例).PWM脉冲信号可以由STC89C52单片机产生,PWM信号的的高低电平决定LED的通断状态。将PWM波分为100个周期,将这100个周期分为5等分,0~5控制LED的亮暗的不同程度。当PWM开始新的周期后,PWM-F=t时,当前的PWM波的占空比切换输出为高电平,LED灯处于关闭状态。若PWM-T=t时PWM波占空比切换输出为低电平,LED灯处开启状态。同样,也是因为PWM波的频率远高于人眼视物的最大频率,所以使用PWM波调节LED灯,人眼看到不到了灯光闪烁。也是利用人眼睛的视觉暂留性,保护人们的视力。

  本章小结:以上的诸多原理,都将体现在我实际仿真电路中,我认为语音识别的原理将表现在语音控制LED灯,自动模式的原理中也将光敏电阻对于LED灯的辅助作用,人机交互模式也语音识别控制系统的原理,PWM调光的原理也能够体现本系统能够不同的PWM波占空比来调节LED台灯的亮度。

  4设计主要的研究内容

  我的设计以STC89C52单片机为主控制芯片,选用合适的传感器及调光技术,并进行软硬件的合理设计,进而实现台灯的智能化功能。台灯主要包括自动模式和手动模式两种相互独立的控制方式。

  4.1自动模式

  (1)检测台灯周围一定范围内是否有人,(可以调节人体红外检测器检测距离),若检测到没人,则台灯会在延时后(可调节时间的长短)自动关闭,若检测到周围有人,则台灯会在延时后(可调节时间的长短)自动打开,以实现节能的目的。

  (2)可以根据台灯周围环境明暗程度,自动调节台灯的亮度,使环境内的灯光亮度达到最适宜人眼的亮度,这样就能够做到保护人们视力,避免过强或过弱灯光环境下对人眼的伤害。

  (3)检测人体距离桌面的距离,若人体距离台灯过近的话,台灯则会发出嘀嘀嘀的报警声,以提示人及时矫正坐姿。

  4.2手动模式

  (1)手动控制台灯的启动,使用时手动按键打开。

  (2)手动调节台灯亮度,可将灯光亮度与环境亮度相结合,可以随时调节光照强度,使我们处在一个舒适的环境中安心的工作与学习。

  (3)手动调节闹钟,设置用灯时间,到时间蜂鸣器定时振动发声。这样也可以为自己的学习计划明确时间,催促自己调高效率。防止长时间用眼对视力的影响。也能提醒自己已经长时间久坐了,应该起来活动一下腰椎。

  5系统整体结构设计

  针对以上对功能要求分析,我的智能台灯以STC89C52单片机作为主控制芯片,分别具有为手动和自动两种控制模式。在手动控制模式下,光照强度分出5个档,根据环境亮度对台灯光照亮度进行手动调节。在自动控制模式下,台灯通过红外人体探测器检测周围是否有人,如果系统检测到有人,则通过检测光敏电阻的分布电压值,间接测量外界光照强度。然后信号经模拟——数字信号转换芯片传给单片机,单片机对LED显示模块进行控制。单片机通过将测得的电压和内部预设的阈值进行对比,然后调整PWM的占空比,从而对LED灯的内部电流强度进行控制,实现光照亮度的自动调节。与此同时,可通过红外接近传感器检测人体距智能LED台灯的距离,同样与内部预设值进行比较,当检测值不在预设值范围之内时,蜂鸣器发出报嘀嘀嘀警声响,提醒使用者注意坐姿,从而防止近视。如果台灯周围没有人,则台灯会自动熄灭,减少能源的不必要的浪费。通过光敏电阻感应外界光照,进而改变电阻阻值达到自动调节台灯亮度的目的。

  综上所述,硬件电路主要包括STC89C52单片机微处理控制单元、LCD液晶显示模块、语音识别模块、按键控制、实时时钟电路、晶振电路、AD转换等模块化电路组成。如下图所示(图5.1)

  6主要模块设计介绍

  6.1单片机STC89C52RC

  STC89C52RC是STC公司生产的一种低功耗、高性能CMOS8位微控制器,具有低功耗、高性能以及价格低廉抗、干扰能力强等特点,同时8K字节系统可编程Flash存储器。STC89C52使用经典的MCS-51内核,但是做了很多的改进使得芯片具有传统的51单片机不具备的功能。在单芯片上,拥有灵巧的8位CPU和在系统可编程Flash,使得STC89C52为众多嵌入式控制应用系统提供高灵活、超有效的解决方案。

  STC89C52的主要功能具有:8k字节Flash,512字节RAM,32位I/O口线,看门狗定时器,内置4KBEEPROM,MAX810复位电路,三个16位定时器/计数器,一个6向量2级中断结构,全双工串行口。另外STC89C52可降至0Hz静态逻辑操作,支持2种软件可选择节电模式。空闲模式下,CPU停止工作,允许RAM、定时器/计数器、串口、中断继续工作。掉电保护方式下,RAM内容被保存,振荡器被冻结,单片机一切工作停止,直到下一个中断或硬件复位为止。最高运作频率35Mhz,6T/12T可选。

  器件参数

  1.增强型8051单片机,6时钟/机器周期和12时钟/机器周期可以任意选择,指令代码完全兼容传统8051.[1]

  2.工作电压:5.5V~3.3V(5V单片机)/3.8V~2.0V(3V单片机)

  3.工作频率范围:0~40MHz,相当于普通8051的0~80MHz,实际工作频率可达48MHz

  4.用户应用程序空间为8K字节

  5.片上集成512字节RAM

  6.通用I/O口(32个),复位后为:P1/P2/P3是准双向口/弱上拉,P0口是漏极开路输出,作为总线扩展用时,不用加上拉电阻,作为I/O口用时,需加上拉电阻。

  7.ISP(在系统可编程)/IAP(在应用可编程),无需专用编程器,无需专用仿真器,可通过串口(RxD/P3.0,TxD/P3.1)直接下载用户程序,数秒即可完成一片

  8.具有EEPROM功能

  9.共3个16位定时器/计数器。即定时器T0、T1、T2

  10.外部中断4路,下降沿中断或低电平触发电路,Power Down模式可由外部中断低电平触发中断方式唤醒

  11.通用异步串行口(UART),还可用定时器软件实现多个UART

  12.工作温度范围:-40~+85℃(工业级)/0~75℃(商业级)

  13.PDIP封装

  外形及引脚排列如下所示(图6.1)。

  图6.1 STC89C52

  6.1.1 STC89C52端口介绍

  VCC(40引脚)电源电压

  VSS(20引脚)接地

  P0端口(P0.0~P0.7,39~32引脚)P0是一个漏极开路8位双向I/O口。

  P1端口(P1.0~P1.7,1~8引脚)P1口是一个有内部上拉电阻的8位双向I/O端口

  P2端口(P2.0~P2.7,21~28引脚)P2口是一个带有内部上拉电阻的8位双向I/O端口

  P3端口(P3.0~P3.7,10~17引脚)P3是一个内部带上拉电阻的8位双向I/O端口

  RST(9引脚)复位输入

  VPP(31引脚)访问外部程序存储器控制信号

  XTAL1(19引脚)振荡器反相放大器和内部时钟发生电路的输入端。

  XTAL2(18引脚)振荡器反相放大器的输入端

  表6.11 STC89C52引脚

  6.2红外人体感应模块

  红外人体感应模块采用BISS0001芯片,这是一款高效传感信号处理集成电路芯片,通过内部运算放大器、电压比较器、状态控制器、延时定时器、封锁时间定时器通过一系列数模混合运算对信号进行处理。其引脚功能及内部框图如下图所示(图5.1.1):

  图5.1.1 BIS0001引脚功能及内部框图

  A(1引脚):可重复触发和不可重复触发选择端。当A为“1”时,允许重复触发;当A为“0”时,不可重复触发。

  VO(2引脚):控制信号输出端,由VS的上跳前沿触发,使VO输出从低电平跳变到高电平时视为有效触发。在输出延迟时间TX之外和VS没有上跳变时,VO保持低电平状态。

  RR1(3引脚):输出延迟时间TX的调节端。

  RC1(4引脚):输出延迟时间TX的调节端。

  RC2(5引脚):触发封锁时间Ti的调节端。

  RR2(6引脚):触发封锁时间Ti的调节端。

  VSS(7引脚):工作电源负端。

  VRF(8引脚):参考电压及复位输入端,通常接VDD,当接“0”时可使定时器复位。

  VC(9引脚):触发禁止端,当VC<VR时禁止触发;当VC>VR时允许触发。

  IB(10引脚):运算放大器偏置电流设置端。

  VDD(11引脚):工作电源正端。

  人体红外感应模块电路图如下图所示(图5.1.2):

  图5.1.2人体红外感应模块

  5.2.1人体红外感应模块具有的特点

  (1)全自动感应:人进入其感应范围则输出高电平,人离开感应范围则自动延时关闭高电平,输出低电平。

  (2)光敏控制(可选择,出厂时未设)可设置光敏控制,白天或光线强时不感应。

  (3)温度补偿(可选择,出厂时未设):在夏天当环境温度升高至30~32℃,探测距离稍变短,温度补偿可作一定的性能补偿。

  (4)两种触发方式:(可跳线选择)a、不可重复触发方式:即感应输出高电平后,延时时间段一结束,输出将自动从高电平变成低电平;b、可重复触发方式:即感应输出高电平后,在延时时间段内,如果有人体在其感应范围活动,其输出将一直保持高电平,直到人离开后才延时将高电平变为低电平(感应模块检测到人体的每一次活动后会自动顺延一个延时时间段,并且以最后一次活动的时间为延时时间的起始点)。

  (5)具有感应封锁时间(默认设置:2.5S封锁时间):感应模块在每一次感应输出后(高电平变成低电平),可以紧跟着设置一个封锁时间段,在此时间段内感应器不接受任何感应信号。此功能可以实现“感应输出时间”和“封锁时间”两者的间隔工作,可应用于间隔探测产品;同时此功能可有效抑制负载切换过程中产生的各种干扰。(此时间可设置在零点几秒—几十秒钟)。

  (6)工作电压范围宽:默认工作电压DC4.5V-20V。

  (7)微功耗:静态电流<50微安,特别适合干电池供电的自动控制产品。

  (8)输出高电平信号:可方便与各类电路实现对接。

  6.3光敏感应的设计

  光敏感应自动调节亮度的功能我们通过光敏电阻和AD/DA转换芯片PCF8591来实现。光敏电阻产生的模拟量通过PCF8591转换成模拟量输入到STC89C52RC中做相应的处理。

  我们特意把光敏电阻放在台灯上方,这样就可以避免光敏电阻受台灯的光线影响。

  6.4显示模块电路设计

  显示模块我们选用LCD1602。LCD1602工作电压为3.3V或5V,显示对比度可调,内含复位电路,提供各种控制命令,如:清屏、字符闪烁与否、光标闪烁与否、显示移位方向等多种功,能有80字节的显示数据存储器DDRAM,1602内建有192个5X7点阵的字型的字符发生器CGROM和8个可由用户自己定义的5X7的字符发生器CGRAM。

  LCD1602具有微功耗、体积小、显示内容丰富、超薄轻巧,常被用于袖珍式仪表和低功耗应用系统中。LCD1602液晶显示连接电路如下图(图五):

  图6.4液晶显示屏

  6.5按键模块设计

  按键用来调整时间和设置闹钟,调光亮度,各键功能在介绍硬件部分已描述。因为有亮度和定时几个参数要调,所以设置这几个参数的计数。当按下一个键时,单片机进行相应的操作。当调光亮度时,按下降低键变暗,按下身高键变亮,这是通过调PWM实现的。

  图6.5按键模块

  6.6语音识别模块

  本次选择的语音控制器是由LD3320语音芯片和STC11L08XE单片机共同组成。其中具有用ASR语音识别技术的LD3320语音识别芯片,MCU为STC11L08XE。图5.6是语音识别系统原理框图。

  图5.6语音识别系统原理框图

  我们常用的ASR技术,是基于词语列表识别的技术。只需要提前将软件编译好需要识别的关键词列表,并且将这些字符形式传送到芯片内部,这样就可以实现对人说出的关键词语的识别,不需要前期为任何前期人声录音了。这样简单地将语音芯片的寄存器设置好,能够把“ni hao”、“xiao jie”“kai qi”“guan bi”这些识别关键词语动态地传输到芯片里,语音芯片就可以识别这些关键词语。并且能够在同一时刻最多可以在20多条关键词语中进行识别,就根据场景需要还可以电脑终端随时编辑和更新哲50条关键词语.另外,芯片上集成了高精度的D/A和MD接口,且接口Flash和RAM,只需要将咪头上的麦克风接在芯片的AD引脚即可实现语音识别、声控、人机对话等功能。

  6.7整体电路图

  图8.1整体电路原理图

  按照整体电路原理图,本次设计已经基本实现了我们预想的功能。我的智能台灯具体是可以在USB电源接口接入5V电源,电源指示灯亮起,这样的驱使STC89C52单片机正常运行,在自动模式下,当人体感应模块感应到有人体信号后,光敏电阻阻值较小,STC89C52单片机能够使LED灯的开始与关闭,并且能够调节灯光。在手动模式情况下,用按键控制可以调节液晶显示屏中,万年历与时间日期,还有LED灯亮度。在液晶显示中依然能够显示出LED灯的亮度,只要按动按键就可以调节年、月、日,也还要可以调节星期,也能够调节时刻表,这样就能够清晰展示出来,当时智能台灯的灯光亮度,以便于人们进行对于灯光调节。还有在语音识别控制系统下,我们通过人语音控制LED灯的亮度。语音模块将人语音录入识别后,进行识别对照,对于识别成功的语音信号转化为对STC89C52单片机的信号,然后我们能够对于LED灯光进行不断调节。还有能够帮助我们提醒坐姿是否正确,人体红外模块能够测试是否有人,还有测距模块能够是蜂鸣器发出警报声。

  7软件设计

  Keil C51是一款软件开发系统,它最大的特点就是可以用来与51系列所兼容的单芯片C软件开发系统,它是由美国公司Keil software研发的。此软件提供丰富的库函数以及拥有强大的集成开发调试工具,这款系统与传统汇编语言相互比较的话,C语言在结构,功能,可读性和可维护性方面具有十分明显的优势,因此对于学习和使用上手十分简单。使用汇编语言然后使用C进行开发之后,经验更加丰富。Keil C51软件还提供了丰富的库功能以及强大的集成开发和调试工具以及完整的Windows界面。另一个重要的方面是,只要查看编译后生成的汇编代码,就可以清楚的看到Keil C51生成的目标代码是十分有效的。该软件在编程和仿真方面非常的出装,而且可以合二为一,它支持C语言和汇编的混合编程。

  4.2 protel99se应用

  Protel99SE是澳大利亚Protel Technology公司研发的一款电路板设计软件。这款软件非常容易学习用起来非常方便,功能十分强大界面简洁易懂,该软件可以清晰明了的设计出电路图和制作元件电路板图。因为其较高的集成度以及出色的扩展性所以一经推出立即就拥有大量的忠实用户,渐渐的成为了全世界最流行的电子设计自动化软件,并成为了电气原理图工业新的标准。

  Protel99SE软件的组成:

  (1)电路设计:原理设计系统包括原理编辑器以及Sch可以用来修改和生成原理图的原件编辑器,印刷版电路设计系统用来设计电路板的编辑器PCB修改。

  (2)电路仿真和与编程逻辑器件的设计

  Protel99SE软件的特点:

  1可生成30多种格式的电气连接网络表。

  2强大的全局编辑功能。

  3在原理图中选择一级器件,PCB中同样的器件也将被选中。

  4同时运行原理图和PCB,在打开的原理图和PCB图间允许双向交叉查找元器件、引脚、网络。

  5既可以进行正向注释元器件标号(由原理图到PCB),也可以进行反向注释(由PCB到原理图),以保持电气原理图和PCB在设计上的一致性。

  6强大的“规则驱动”设计环境,符合在线的和批处理的设计规则检查

  7智能覆铜功能,覆铀可以自动重铺。

  8提供大量的工业化标准电路板做为设计模版

  9放置汉字功能

  10智能封装导航(对于建立复杂的PGA、BGA封装很有用)

  11方便的打印预览功能,不用修改PCB文件就可以直接控制打印结果

  KEIL C51是一款软件开发系统,它最大的特点就是可以用来与51系列所兼容的单芯片C软件开发系统,它是由美国公司KEIL软件研发的。此软件提供丰富的库函数以及拥有强大的集成开发调试工具,这款系统与传统汇编语言相互比较的话,C语言在结构,功能,可读性和可维护性方面具有十分明显的优势,因此对于学习和使用上手十分简单.使用汇编语言然后使用C进行开发之后,经验更加丰富.KEIL C51软件还提供了丰富的库功能以及强大的集成开发和调试工具以及完整的界面.另一个重要的方面是,只要查看编译后生成的汇编代码,就可以清楚的看到KilC 51生成的目标代码是十分有效的.该软件在编程和仿真方面非常的出装,而且可以合二为一,它支持C语言和汇编的混合编程.

  程序设计流程如下图所示:

  程序说明:

  (1)初始化设置:初始化液晶、按键、时钟、定时器、语音识别模块。

  (2)红外人体检测:通过人体红外模块检测检测范围内出现人体红外信号,若红外探测器检测到人体红外信号后,对应的人体感应指示灯就会常亮,若没有检测到人体红外信号使人体感应指示灯则不会亮。

  (3)语音识别检测:语音识别模块检测到“开灯”语音信号,驱动单片机点亮台灯,检测“升高”语音信号,则把亮度调高,检测到“降低”语音信号则把亮度降低。

  (4)调光模式设置:本作品台灯亮度调节有按键手动和自动调节模式,自动调节是通过光敏电阻采集外界环境光线亮度,A/D芯片转换为数字量,单片机调节占空比来实现自动调节,手动按键控制则不受外界环境影响。

  (5)防近视:通过红外探头,如果人体靠近则驱动蜂鸣器报警提醒调整坐姿,达到预防近视目的。

  以下是自动调节亮度的函数(通过光敏电阻采集外界环境光线亮度,A/D芯片转换为数字量,单片机调节占空比来实现自动调节,手动按键控制则不受外界环境影响)

  //自动调节亮度子函数

  void zd_guangmin()

  {

  if((PWM_zd==0)&&(yuyin_mode==1))//如果检测到设置为自动模式并且开灯的状态下

  {

  delay_K(2);//延时消痘

  if((PWM_zd==0)&&(yuyin_mode==1))

  {

  PWM_mode0=1;//进入自动调光模式

  }

  }

  if(PWM_mode0==1)

  {

  adc_num=ReadADC(2);//AD转换通道为第二通道

  WriteDAC(adc_num);//读取AD转换光敏电阻的数值

  if((0<adc_num)&&(adc_num<=10))//根据阻值参数,变换PWM_T的值

  {

  PWM_T=0;zd_xs();

  }

  if((10<adc_num)&&(adc_num<=100))//根据阻值参数,变换PWM_T的值

  {

  PWM_T=10;zd_xs();

  }

  if((100<adc_num)&&(adc_num<=120))//根据阻值参数,变换PWM_T的值

  {

  PWM_T=20;zd_xs();

  }

  if((120<adc_num)&&(adc_num<=135))//根据阻值参数,变换PWM_T的值

  {

  PWM_T=30;zd_xs();

  }

  if((135<adc_num)&&(adc_num<=160))//根据阻值参数,变换PWM_T的值

  {

  PWM_T=40;zd_xs();

  }

  if((160<adc_num)&&(adc_num<=200))//根据阻值参数,变换PWM_T的值

  {

  PWM_T=80;zd_xs();

  }

  if((200<adc_num)&&(adc_num<=254))//根据阻值参数,变换PWM_T的值

  {

  PWM_T=100;zd_xs();

  }

  }

  if(yuyin_mode==0)//如果语音识别关灯,则台灯灭.

  8系统调试

  8.1多功能智能台灯整体电路图

  硬件组成:52单片机+光线检查模块+电压比较模块+人体感应模块+LED指示灯模块+按键+语言识别模块+电源模块+液晶显示模块,整体电路图如下图所示

  图8.1整体仿真电路

  8.2台灯亮度调节测试

  台灯的亮度调节可以通过光敏感应自动调节和手动调节这两种方式实现,光敏感应自动亮度调节是通过光敏电阻感应外界环境中光线强度来自动调节台灯亮度,使台灯产生合理的亮度。手动调节是通过按键来人为的是台灯产生人们想要达到的亮度。

  调试步骤如下:

  使用亮度挡位不同的手电筒关来照着光敏电阻,以测试光敏电阻是否会根据当前环境光的强弱来自动调节台灯的亮度。