基于语音技术的智能家居系统的设计毕业论文_第1页
已阅读1页,还剩69页未读 继续免费阅读

下载本文档

版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领

文档简介

1、 学 院 毕毕 业业 设设 计计设计题目:设计题目:基于语音技术的智能家居系统的设计 系系 别:别: 信息工程系 班班 级:级: 11 通信(1)班 姓姓 名:名: 指指 导导 教教 师:师: 2 0 1 5 年6 月2 日基于语音技术的智能家居系统的设计摘摘 要要不管人们身处何地,不管人们身在何时,快节奏的生活是共同的特征,智能化的生活环境成了每一个人的追求。毫无疑问,智能家居系统的出现最符合人们对居住环境的要求。智能家居是现代电子技术、通讯技术及自动化技术相结合的产物。不管人们在哪里,不管人们在做什么,都可以随时知道家庭中各电器的情况,同时也可以控制它们的开启或关闭。语音识别技术是智能家居

2、的一种不可缺少的技术。包含信号处理、模式识别和人工智能等领域。智能家居是新生的一个智能化的系统,本设计模拟了智能家居的工作过程。本设计中所利用的技术有语音识别技术和红外遥控技术。同时以 51 单片机作为整个设计的核心,以它来控制整个系统。智能家居让人们有了一个便捷、舒适的生活环境,同时使人们的生活水平有了一定的提高。在一定程度上,也保障了人们的生命财产安全。可以让人们很放心的去做自己想做的事情。关键词:关键词:智能家居 51 单片机 语音识别 红外遥控Design of Intelligent Home Furnishing System Based on Speech TechnologAb

3、stractNo matter when and where we are,fast-paced life is our common feature, intelligent living environment has become our goal for everyone.There is no doubt that the emergence of smart home system in line with our living environment. Intelligent home furnishing is a product combined with modern el

4、ectronic technology, communication technology and automation technology.No matter where people,and what people are doing,you can always know the family situation of the various appliances,but also can control them on or off.Speech recognition technology is an indispensable technology.It contains sig

5、nal processing, pattern recognition and artificial intelligence.Intelligent home furnishing is a nascent intelligent system.The design simulates the working process of the smart home.The design use speech recognition technology and infrared remote control technology,51 microcontroller,as the centrol

6、 of the design,controls the system.Intelligent home furnishing so that people have convenient and comfortable living environment,while making peoples living standards have improved to some extent.To some extent,but also to protect peoples lives and property.You can make people feel comfortable to do

7、 the things they want.Keywords: intelligent home furnishing; 51 SCM; voice recognition of infrared; remote control目 录1 引言.12 智能家居系统的前期研究.22.1 智能家居系统的发展现状及发展趋势.22.1.1 国外的发展现状.22.1.2 国内的发展现状.22.1.3 智能家居系统发展趋势.32.2 智能家居系统的预期功能.32.3 智能家居系统的设计方案.33 智能家居系统的硬件设计.53.1 单片机模块.53.1.1 单片机的简介.53.1.2 单片机的外围电路.63.

8、1.3 单片机的硬件电路.83.2 语音识别模块.83.2.1 语音芯片 LD3320 的介绍.83.2.2 语音识别的原理.93.2.3 语音识别模块的硬件连接.103.3 红外遥控模块.103.3.1 红外发光二极管的介绍.113.3.2 红外发射部分的介绍.113.3.3 红外发射部分硬件连接.113.3.4 HS0038 的介绍.123.3.5 红外接收过程及硬件连接.123.4 整体实物图.134 智能家居系统软件设计.144.1 语音识别模块.144.1.1 通用初始化.154.1.2 寄存器的初始化.164.1.3 写入识别列表.164.1.4 开始识别.184.2 红外发射部分

9、.204.2.1 红外发射原理.204.2.2 红外发射程序.214.3 红外接收模块.234.4 模拟电器控制部分.255 硬件的调试过程.275.1 连接语音芯片和红外发光二极管的单片机的调试.275.2 红外遥控模块的调试.285.3 语音识别模块的调试.286 总结与展望.296.1 结论.296.2 前景展望.30谢 辞.31参考文献.32附录 I.33附录 II.34唐唐 山山 学学 院院 毕毕 业业 设设 计计1 引言心有多大,舞台就有多大。每个人都怀揣着梦想,想要更好的未来,想要更好的生活,所以每个人都在不断奋斗和创新,这种创新不但推动了个人的进步,更推动了社会的发展。于是人类

10、的生活越来越方便,人们的居住环境也越来越智能化。这种智能化在智能家居上就有很好的体现。语音识别技术在现代生活中有画龙点睛的作用,与很多领域都息息相关。例如信号处理、模式识别、人工智能等领域。其中国内中科院的自动化所、清华大学等科研机构和高校等许多研究机构都在从事语音识别领域的研究和开发,并且国家 863 智能计算机专家组还为语音识别技术研究专门立项,并取得了高水平的科研成果1。语音识别技术的目标是将人类的语言转换为计算机可读的输入。科学家们利用语音数据库里大量的数据进行分析,得到了在统计概率最优化意义上的各个基元语音特征。并且将这些特征和语音模型转化为硬件芯片。在使用这些芯片时,可以直接使用。

11、遥控技术的出现要追溯于 1960 年,它虽然在 60 年代就出现了,但是由于种种原因,并没有得到理想的发展。七十年代末,随着大规模集成电路和计算机技术的发展,遥控技术才得到快速发展。红外遥控的特点是不影响周边环境、不干扰其他电气设备,同时也不容易被其他信号所干扰,是很好的信息传输媒体,所以目前它在通信方面被广泛的应用。51 单片机是一款具有有较强的抗干扰能力,运行速度比较高,功耗比较低的单片机。它可以作为核心处理器来处理信息和控制其他设备,同时价格比较低廉,性价比很高,所以在很多系统中,都有其应用。这些技术的配合 51 单片机,可以为本设计成功的模拟智能家居系统,方便了设计者对智能家居这一课题

12、的研究和学习。智能家居可以为使用者提供更加舒适安全的生活环境,也可以帮助人们合理的分配和利用资源。智能家居系统的出现,让人们的幸福感有所提升,符合现代人的生活理念,相信在不久的未来,它将会普遍被每一个家庭所应用,让人们每一个人,真正享受智能化的生活。唐唐 山山 学学 院院 毕毕 业业 设设 计计2 智能家居系统的前期研究2.1 智能家居系统的发展现状及发展趋势2.1.1 国外的发展现状早在 20 世纪 80 年代,世界上就有智能化的建筑出现。这个建筑出现在美国,它的智能化体现在它利用了计算机系统去监控楼内的空调、照明等用电设备。同时可以提供语音通信和电子邮件等服务。在 21 世纪初期,出现了家

13、庭的智能化系统。这种智能化系统应用于许多的家庭中,帮助人们完成了许多的功能,方便了人们的生活。世界首富比尔盖茨先生也耗资 6000 万美元打造属于自己的高端别墅的智能家居系统。科技在发展,国外的这种技术也在不断的完善。随着技术的成熟,超过一半的家庭都在使用这种家庭智能化系统。在智能家居系统的研发方面,美国及一些欧洲国家一直处于领先地位。好多国家的好多公司都想着研发出属于自己的控制系统。目前市场上出现的智能家居控制系统主要有 X-10、EIB 和 8X 等。这些系统都有属于自己的优势,同样也有属于自己的劣势。X-10 系统采用集中的控制方式,如果家庭在使用这个系统时,它不需要额外的布线,这是它的

14、优势。但是在施工方面,需要开槽或者钻孔,所以难度比较高,又由于施工费用比较高,所以没有应用于国内市场。EIB 系统采用的是预埋总线和中央控制的方式。价格昂贵,没有满足大部分人的消费观,所以没有应用于国内市场。8X 系统采用预处理总线和集中控制的方式。该系统日益成熟并且并且相对来说比较符合中国的国情。但是系统的灵活性不够,所以也没有应用到中国市场。国外的技术相对来说比较先进,发展也很迅速。但是中国的国情,决定了不同地域的不同的使用者会有不同的需求。国外的某种技术,也许可以满足一部分人的需求,但是不适合普遍使用。所以要开发出适合自己的智能家居系统。2.1.2 国内的发展现状20 世纪 90 年代以

15、后,中国的智能家居才开始出现,智能小区开始兴起。中国的智能化的建筑最早出现在上海、深圳和广州等一线的沿海城市,随后大陆才开始陆续发展的。在 1999 年实施的全国住宅小区智能化技术示范工程,使人们国家的智能化又上升到一个新的阶段。到目前为止,在中国的某些大城市中,有近一半的家庭实现了智能化。中国企业也纷纷推出自己的产品,例如海尔的 e 家庭,这个系列的产品以海尔电脑作为控制中心,各种网络家电作为终端设备,海尔移动电话作为移动唐唐 山山 学学 院院 毕毕 业业 设设 计计数字控制中心3。海尔也不定时的推出自己的一系列产品包括网络电视、冰箱、空调、微波炉等。清华同方的 e-home 数字家园,该智

16、能家居控制系统专门针对中国家庭设计。产品以功能模块开发为主,基于国外成熟的智能家居标准之上。很明显,跟国外相比较,中国对智能家居的研究起步比较晚,到目前为止都没有形成一定的标准,现在国内各大软、硬件机构正在积极的研发更为符合市场的智能化家居设备,用来解决当前智能化产品实用性差,使用复杂及产品价格昂贵等缺点,技术创新性也逐步向国际先进水平靠拢,这样的未来真的期待。2.1.3 智能家居系统发展趋势经过哥本哈根会议,中国更明确了节能减排,绿色建筑的目标。为了达到这一目标,中国势必会建设绿色建筑,铺设智能化系统,智能化系统中的智能家居系统将会形成一个新的产业,也可以促进中国房地产业的发展。由于智能家居

17、系统还缺乏统一明确的国际标准,许多公司开发出的产品都是基于自己组的网络和信息交换协议,不具有一般性。技术复杂、接入设备不能兼容以及成本过高,所以限制了产品的发展,同时限制了产品的普及。所以现在的目标是设计出一个符合中国国情、操作实用性强、成本低廉、容易推广和被人们所需求的智能家居控制系统。做为智能家居的核心系统的智能家居控制系统,它的设计功能的完善必将推动住宅智能化的发展。而系统功能的集成化、用户使用的傻瓜化和市场的平民化将是智能家居控制器的发展趋势,系统也将逐步迈向绿色化。人类所想的无非也就是可以不费吹灰之力做成自己想做的事情。而智能家居的终极目标就是可以实现人们的这种梦想,实现智能化。2.

18、2 智能家居系统的预期功能本设计中要求语音识别采用 LD3320,完成语音命令的采集与识别,并将结果传送给单片机;红外发射采用红外发光二极管,在单片机控制下发送相应序列的红外信号;红外接收采用 HS0038,接受红外信号并解码,传送给单片机。利用继电器模拟家用电器;用单片机控制整个系统。可以达到预期的功能。智能家居系统的预期功能是:当对着麦克风下达一个命令时,相应的继电器模块的指示灯会亮或者灭。同样应用到现实中,所实现的功能也应该是当要说出一个命令时,家用电器会自动开启或者关闭。减少了人为操作,让人们真正享受智能化的生活。2.3 智能家居系统的设计方案唐唐 山山 学学 院院 毕毕 业业 设设

19、计计本设计综合性相对比较高,要软硬件相结合。解决了软件问题,还需要知道模拟智能家居系统的硬件是如何工作的。其工作过程:智能家居系统由麦克风、语音芯片 LD3320、红外发光二极管、单片机以及红外一体化接收器HS0038、继电器等硬件组成。语音信号被麦克风收集并传送到语音芯片内部,语音芯片内部已经放置好关键词列表,收集到的语音信息与原先放好的语句进行匹配和对比,得到一个最优的结果,这个结果通过串口发送给单片机,单片机作为核心控制器可以控制红外发光二极管发出载有相应信息的的红外信号,红外一体化接收器接收后,通过解调还原出发来的信息从而去控制继电器的开或者关,从而来模拟实现智能家居系统。智能家居系统

20、的整体设计框图如下图2-1 所示。语音信号LD3320识别数据单片机红外发射头红外信号红外遥控接收头 单片机控制信息 实现相应功能继电器 继电器图 2-1 智能家居系统设计框图唐唐 山山 学学 院院 毕毕 业业 设设 计计3 智能家居系统的硬件设计3.1 单片机模块3.1.1 单片机的简介单片机全称单片微型计算机(Single Chip Microcomputer) , 又称(Micro Controller Unit),是将计算机的基本部分微型化,使之集成在一块芯片上的微机,片内含 CPU、RAM、ROM、并行 I/O 口、串行 I/O 口、定时器/计数器、A/D、D/A、中断系统、系统时钟

21、及系统总线等,它本身就是一个嵌入式系统,同时也是其他嵌入式系统的核心4。关于其内部结构的简介如下表 3-1 所示。表 3-1 单片机内部结构简介名称简介微处理器(CPU)8 位的 CPU,包括了运算器和控制器数据存储器(RAM)可以放数据,内存 128B。最大外扩为64KB程序存储器(ROM/EPROM)用来放程序,最大外扩 64KB。51 单片机是 4KB 的 ROM并行 I/O 口4 个 8 位并行 I/O 口(P0、P1、P2、P3)串行口4 种工作方式。可以与其他单片机相连,实现更加复杂的功能定时器/计数器2 个 16 位定时器/计数器。中断系统具有 5 个中断源,2 级中断优先权。特

22、殊功能寄存器(SFR)一共有 21 个。用于 CPU 对片内其他部分进行管理、控制、监视。上表介绍了单片机的内部结构,在这里值得说明的是 51 单片机有很多种不同的型号。区分它们主要依据存储器的配置。在这里以最简单的例子来说明,8031 芯片内是没有程序存储器的,但是其他型号的芯片里有程序存储器。还有增强型的存储容量比普通型的存储容量要多至少 1 倍。介绍完单片机的内部结构,现在来介绍下单片机的引脚及其功能。单片机分为可总线扩展的和不可以总线扩展的,是因为单片机本身可以满足这些系统所需要的功能,不需要外扩。本设计中所使用的单片机采用的是双列直插式的封装结构,一共有 40 个引脚,本设计中没有用

23、到单片机的所有引脚,只使用了电源端、接地端、串口输入、外部中断以及 P0P3 的某些引脚。在这里介绍下各引脚的功能,如下表 3-2 所示。唐唐 山山 学学 院院 毕毕 业业 设设 计计表 3-2 51 单片机的引脚功能表名称功能简介P1 口(18 脚)P1 口是一个 8 位双向 I/O 口。当 P1 口的锁存器写入 “1”时,P1 口可作为输入端。是低 8 位的地址复用总线端口。P2 口(2128 脚)8 位准双向 I/O 口。既可作为普通 I/O 口引脚。也可作为高 8 位地址总线。P2 口与 P1 口的输出级结构相同,内部都有上拉电阻。整个端口结构基本相同。P3 口(1017 脚)是双功能

24、静态端口。作为第一功能使用时,其功能与 P1 口相同。当作为第二功能使用时,又都有各自的定义。P0 口(3239 脚)8 位双向三态 I/O 口线。既可作为普通 I/O 口引脚。也可作为数据/低 8 位地址总线。VCC(40)电源电压端。GND(20)地端。RST(9)复位输入端。复位后,内部专用寄存器及 I/O 口的处置与8051 的情况一样。而内部的状态保持不变。XTAL1(19)振荡器反相放大器的输入。内部时钟发生器的输入端。XTAL2(20)振荡器反相放大器的输出端。ALE地址锁存允许,当单片机访问外部存储器时。该引脚的输入信号 ALE 用于锁存 P0 的低 8 位地址。ALE 输出的

25、频率为时钟振荡频率的 1/6。PSEN程序存储器允许。输出读外部程序存储器的选通信号。取指令操作周期,PSEN 的频率为振荡频率的 1/6;若此期间有访问外部数据存储器的操作。则有一个机器周期中的 PSEN 信号将不出现。EAEA=0,单片机只访问外部程序存储器。对 8031 此引脚必须接地。EA=1,单片机访问外部程序存储器。对内部有程序存储器的单片机。此引脚必须接高电平。在这里需要注意的是,P3 口具有双功能,介绍下它的第二功能,以便设计者更好的利用单片机以完成本设计所需要的功能。P3 口的特殊功能如下表 3-3 所示。表 3-3 P3 口特殊功能口线特殊功能P3.0RXD ( 串行口输入

26、端 )P3.1TXD ( 串行口输出端 )P3.2/INT0 ( 外部中断 0)P3.3/INT1 ( 外部中断 1)P3.4T0 ( 定时器 0 外部输入 )P3.5T1 ( 定时器 1 外部输入 )唐唐 山山 学学 院院 毕毕 业业 设设 计计3.1.2 单片机的外围电路单片机的外围电路包括复位电路和时钟电路两部分。复位电路的作用主要是,不管单片机遇到什么样的不正常的操作,都可以实现单片机的初始化,使它从某一确定的状态重新开始运行。上电复位和开关复位都可以完成复位电路的作用,它们只是 2 种不同的形式。上电复位要求接通电源后,自动实现复位操作。开关复位要求在电源接通的条件下,在单片机运行期

27、间,如果发生死机,用按钮开关操作使单片机复位4。复位电路如图 3-1 所示。RST图 3-1 RST 电路其中 RST 端接 51 单片机的第 9 引脚,按下复位按键以后,PC 指向 0000H单元、SP 指向 07H 单元、P0 口为 FFH、P1 口为 FFH、P2 口为 FFH、P3 口为FFH 以及其他的寄存器为 0。51 单片机芯片内部有一高增益反相放大器,用于构成振荡器.反相放大器的输入端为 XTAL1,输出端为 XTAL2,在 XTAL1、XTAL2(第 19、18 引脚)两端跨接一个石英晶体振荡器,和两个电容就构成了稳定自激谐振电路,晶振频率为 11.0592MHz。C12,C

28、13 是两个瓷片电容,与晶振 Y2 构成了自激谐振电路,其电容的作用主要是对频率进行微调,一般取 30-45PF 左右,使用该电路可产生稳定的 11.0592MHZ 频率,受外界的环境的干扰影响非常小5。其接法如图 3-2 所示。唐唐 山山 学学 院院 毕毕 业业 设设 计计图 3-2 外围时钟电路3.1.3 单片机的硬件电路本设计最核心的器件是 51 单片机,它控制了整个系统,完成了语音信息的处理、红外信号的发射以及红外信号的接收。它的外围电路如下图 3-3 所示。图 3-3 51 单片机外围电路3.2 语音识别模块3.2.1 语音芯片 LD3320 的介绍LD3320 芯片是一款“语音识别

29、”专用芯片,由 ICRoute 公司设计生产。该芯片集成了语音识别处理器和一些外部电路,包括 AD、DA 转换器、麦克风接唐唐 山山 学学 院院 毕毕 业业 设设 计计口、声音输出接口等,本芯片不需要外接任何的辅助芯片如 Flash、RAM 等,直接集成在现有的产品中既可以实现语音识别、声控、人机对话功能,并且,识别的关键词语列表是可以任意动态编辑的6。主要的特色功能有:非特定人语音识别技术、可动态编辑的识别关键词语列表、单芯片解决方案、高精度A/D 和 D/A 通道、高准确度和实用的语音识别效果、可自由编辑 50 条关键词语7。它的内部逻辑结构如图 3-4 所示。图 3-4 LD3320 内

30、部结构逻辑图LD3320 芯片有 48 个引脚,在图中可以看到 20 个引脚,在本次设计中没有使用所有的引脚。MICP 和 MICN 分别接麦克风的正负引脚、CLK 接外部时钟,频率在 4-48HZ 之间、GND 是接地端和 VDD 是电源端。电源的主要目的是给芯片供电,使它可以正常工作。3.2.2 语音识别的原理语音识别技术是将人类语音中的词汇内容转换为计算机可读的输入。科学家们利用语音数据库里大量的数据进行分析,可以得到在统计概率最优化意义上的各个基元语音特征。并且将这些特征和语音模型转化为硬件芯片。语言识别原理主要是:科学家建立语言模型,分析语音特征,并将这些转化为硬件芯片 LD3320

31、。最先将相关命令的词语列表,写入芯片内。其次通过麦克风采集语音信号,并将得到的信号,送入芯片内部。然后芯片将收到的信号唐唐 山山 学学 院院 毕毕 业业 设设 计计进行频谱分析,提取特征,并根据它内部的这种特殊的算法和编辑好的关键词列表一一匹配,将匹配率最高的结果以串口的形式发回给单片机。语音识别的过程,就是把用户说出的内容,通过频谱转换为语音特征,和这个关键词语列表中的条目进行一一匹配,最优匹配的一条作为识别结果14。在本设计中语音识别列表是打开灯、关闭灯、打开热水器、关闭热水器、打开空调、关闭空调、全部打开、全部关闭灯等。不论这个列表的条目内容是什么,只需要用户设置相关的寄存器,就可以把相

32、应的待识别条目内容以字符形式传递给识别引擎8。语音识别过程如下图 3-5 所示。图 3-5 语音识别芯片识别过程框图3.2.3 语音识别模块的硬件连接该模块由单片机、语音芯片以及麦克风组成。单片机选用的是 51 单片机,语音芯片的型号是 LD3320。单片机是语音模块的核心控制平台,并且它控制着语音芯片去完成对语音信号的采集和对比分析,同时将对比得出的一个最优结果以串口中断的方式传回给单片机。最后通过红外遥控模块传送给另一个单片,使继电器的指示灯亮或者灭。语音识别模块与主控单片机的硬件连接如图 3-6 所示。唐唐 山山 学学 院院 毕毕 业业 设设 计计图 3-6 语音识别模块的硬件连接图3.

33、3 红外遥控模块红外遥控模块主要有两部分构成,红外发送部分和红外接收部分,现在一一介绍这两部分。这个模块最大的优点就是,不会干扰其他的信号,不影响其他设备的正常工作,而自己本身也不受其他信号的影响。3.3.1 红外发光二极管的介绍红外发射部分的主要元件为红外发光二极管,实际上是一只特殊的发光二极管,由于其内部材料不同于普通发光二极管,因而在其两端施加一定电压时,它便发出的是红外线而不是可见光9。在其实际应用中要加上反向电压,才可以正常工作,它发出的红外线的波长在 940 毫米左右。在这需要注意的是:在调试时,如果不知道红外发光二极管是好是坏,能否正常工作,可以用万用表的电阻档量他的正反向电阻。

34、3.3.2 红外发射部分的介绍单片机在空闲时候,功耗比较低,比较节能。当出现语音命令时,语音识别模块会在触发状态下采集语音命令进行分析,并将结果传给单片机,产生串口中断,这时单片机会调用命令函数关闭串口中断,同时开启定时器中断,定时器 T0 作为红外线发射频率控制器,当 T0 定时溢出时中断程序使红外管接口电平反转一次,写入定时器的初值不同,在输出端口就得到不同的发射频率14。在语音识别模块的论述中讲到,语音芯片会将采集到的语音信号与放好的关键词列表进行匹配得到最优结果,这个结果会以串口的方式发送给单片。单片机唐唐 山山 学学 院院 毕毕 业业 设设 计计接收到这个最优结果以后,会打开定时器,

35、产生一个个的高低电平。即完成了发送信号的编码,产生了一个脉冲串信号。这个脉冲串信号载有相应的信息,通过红外发光二极管发射出去。3.3.3 红外发射部分硬件连接这一部分由 51 单片机和红外发光二极管构成。用来发送二进制信号经过编码以后的脉冲串信号。它与单片机的连接方式如下图 3-7 所示。图 3-7 红外发射部分的电路图3.3.4 HS0038 的介绍红外接收部分采用一体化接收器 HS0038。HS0038 黑色环氧树脂封装。一共有三个管脚:地端、电源端和信号输出端。它可以不受其他光源的干扰,功耗低,而且灵敏度高。HS0038 的抗干扰能力较强,成本低,完成对信号进行放大、检波、整形得到 TT

36、L 电平的编码信号,不需要其他外围电路,最后将编码信号传送给单片机,经单片机解码并执行去控制相关对象15。它的引脚及功能如下图 3-8 所示。图 3-8 HS0038 的引脚及功能图在此需要注意,判断 HS0038 是否可以正常工作时,需要在把上图的第二唐唐 山山 学学 院院 毕毕 业业 设设 计计和第三引脚之间连接一个二极管和一个发光二极管,手拿遥控器对着接收头按下任意键,如果发光二极管闪烁,可以证明 HS0038 可以正常工作。3.3.5 红外接收过程及硬件连接红外接收就是对红外信号的接收、放大、检波、整形,之后解调出红外遥控编码脉冲的一种过程16。注意的是接收的波长为 7501150 纳

37、米之间。它的具体实现过程如下图 3-9 所示。单片机红外发射电路一体化红外接收头单片机输出调制发送接收解调图 3-9 红外遥控的实现过程图红外接收部分只需要 HS0038 就可以完成所需要的功能,不需要外加其他设备,HS0038 与单片机的连接方式如下图 3-10 所示。图 3-10 红外接收电路图3.4 整体实物图模拟智能家居系统的实物连接如下图 3-11 所示。解码唐唐 山山 学学 院院 毕毕 业业 设设 计计图 3-11 整体实物图4 智能家居系统软件设计4.1 语音识别模块语音识别模块的整体的流程图如图 4-1 所示。唐唐 山山 学学 院院 毕毕 业业 设设 计计N 开始 是否为触发状

38、态 采集语音命令 识别语音命令 传送相应的语音命令 系统是否继续识别 结束YNY 串口初始化 芯片通用初始化 语音识别初始化写列表 等待语音输入图 4-1 语音模块流程图由图 3-5 可以知道,语音芯片通过 P3.0 与 51 单片机相连接。在送入语音命令之前,所要做的准备工作如下:把所连接的串口、语音芯片以及一些寄存器初始化;把所需要的关键词列表写入到语音芯片中;等待语音信号的输入。当麦克风收集到语音命令时,在语音芯片内部会以一定的算法将关键词列唐唐 山山 学学 院院 毕毕 业业 设设 计计表与该语音信号进行对比匹配。将最终的结果通过 P3.0 送入单片机。要注意的是:对语音芯片、所连接的串

39、口的各种操作都必须通过寄存器的操作来完成,包括设置标志位、读取状态、向 FIF0 写入数据等16。4.1.1 通用初始化让芯片还原最初的方式和状态,等待语音命令的输入,这样会更好的识别信息,完成操作。参考程序如下:Void LD_init_Common( )bMp3play=0;LD_ReadReg(0 x06);/*soft reset.*/LD_WriteReg(0 x1F,0 x0);Delay(10);LD_WriteReg(0 x89,0 x03); LD_WriteReg(0 xCF,0 x43);LD_WriteReg(0 xCB,0 x02);/*PLL setting*/LD

40、_WriteReg(0 x11,LD_PLL_11);If (nLD_Mode=LD_MODE-MP3) LD_WriteReg(0 x1E,0 x00);LD_WriteReg(0 x19,LD_PLL_19);LD_WriteReg(0 x1B,LD_PLL_1B);LD_WriteReg(0 x1D,LD_PLL_1D);LD_WriteReg(0 x79,LD_LEDMTR_FREQ); ELSE LD_WriteReg(0 x1E,0 x00); LD_WriteReg(0 x19,0 x3f); LD_WriteReg(0 x1D,0 x1f); LD_WriteReg(0 x1B

41、,0 x08); LD_WriteReg(0 xCD,0 x04);唐唐 山山 学学 院院 毕毕 业业 设设 计计 LD_WriteReg(0 x17,0 x4c); LD_WriteReg(0 xB9,0 x00) LD_WriteReg(0 xCF,0 x4f);LD_WriteReg(0 x6F,0 xff); 4.1.2 寄存器的初始化语音识别模块中,寄存器有着很重要的作用,可以说大部分的操作是根据它来完成的。对寄存器设置的程序如下:Void LD_init_ASR()nld_Mode=LD_MODE_ASR_RUN;LD_Init_Common();LD_WriteReg(0 xBD

42、,0 x00);LD_WriteReg(0 x17,0 x48); Delay(10);LD_WriteReg(0 x3C,0 x80);LD_WriteReg(0 x3E,0 x07); LD_WriteReg(0 x38,0 xff)LD_WriteReg(0 x3A,0 x07);LD_WriteReg(0 x40,0 x08);LD_WriteReg(0 x42,0 x00); LD_WriteReg(0 x44,0 x08)LD_WriteReg(0 x46,0 x08);LD_WriteReg(0 x1b,0 x48);Delay(1); 4.1.3 写入识别列表LD3320 最多

43、支持 50 个识别条目,每个识别条目可以是单字、词组或短句,长度为不超过 10 个汉字或者 79 个字节拼音串。每个识别条目是标准普听话的汉语拼音(小写),每两个字(汉语拼音)之间用一个空格间隔,编号可以相同,可以不连续,但数值要小于 256(00H-FFH)17。在写入识别列表时,每一个待识别的语句需要一个编号。这个编号是识别出以后,通过串口返回单片唐唐 山山 学学 院院 毕毕 业业 设设 计计机的值。值得注意的是,这个编号是要一字节的。同时列表中不同的待识别语句的编号可以相同。也可以不同。可以连续,也可以不连续。如表 4-1 所示。 表4-1 编写的语音识别列表把关键词列表写入到语音芯片的

44、代码如下:uint8 LD_AsrAddFixed( ) uint8 k, flag; uint8 nAsrAddLength; const char sRecog1015 = da kai deng, guan bi deng, da kai dian shi, guan bi dian shi, da kai kong tiao,guan bi kong tiao,”da kai re shui qi”,”guan bi re shui qi”quan bu da kai”quan bu guan bi;const unit8 pcode10=code_dakaideng, code_gu

45、anbideng, code_dakaidianshi, code_guanbidianshi, code_dakaikongtiao, code_guanbikongtiao, code_dakaireshuiqi, code_guanbireshuiqi, code_quanbudakai, code_quanbuguanbi;flag = 1;for (k=0; k10; k+) if(LD_Check_AsrBusyFlag_b2() = = 0) flag = 0; break; 编号字符串0 x01da kai deng0 x02guan bi deng0 x03da kai ko

46、ng tiao 0 x04guan bi kong tiao 0 x05da kai dian shi0 x06guan bi dian shi0 x07da kai re shui qi0 x08guan bi re shui qi0 x09quan bu da kai0 x0aquan bu guan bi唐唐 山山 学学 院院 毕毕 业业 设设 计计 LD_WriteReg(0 xc1, pCodek ); LD_WriteReg(0 xc3, 0 ); LD_WriteReg(0 x08, 0 x04); Delay(1); LD_WriteReg(0 x08, 0 x00); Del

47、ay(1); for (nAsrAddLength=0; nAsrAddLength20; nAsrAddLength+) if (sRecogknAsrAddLength = 0) break; LD_WriteReg(0 x5, sRecogknAsrAddLength LD_WriteReg(0 xb9, nAsrAddLength); LD_WriteReg(0 xb2, 0 xff); LD_WriteReg(0 x37, 0 x04); return flag; 4.1.4 开始识别完成各初始化,并且将关键词列表写入芯片以后,就可以等待语音命令的输入。当有信号输入时,语音芯片会调用

48、识别程序。单片机程序中,一般会用一个全局变量控制当前状态,在编程时把对该状态的设置放在 LD3320 芯片开始识别以前18。uint8 LD_AsrRun() nAsrStatus=LD_ASR_RUNING; LD_WriteReg(0 x35,MIC_VOL); LD_WriteReg(0 x1C,0 x09); LD_WriteReg(0 xBD,0 x20); LD_WriteReg(0 x08,0 x01); delay( 1 ); LD_WriteReg(0 x08,0 x00); delay( 1 );唐唐 山山 学学 院院 毕毕 业业 设设 计计将识别到的结果存放到 C5 寄存

49、器。如果麦克风采集到声音,不管是否是正常结果,都会产生一个中断信号,而中断程序要根据寄存器的值分析结果。读取 BA 寄存器的值,可以知道有几个候选答案,而 C5 寄存器里的答案是得分最高、最可能正确的答案18。麦克风采集到语音信号以后,送入到 LD3320 的内部。与写入的关键词列表进行对比与匹配,会得到一个最优结果。将该结果所对应的序号传递给单片机。此时单片机会把该信号进行调制然后通过红外发光二极管发射出去。语音控制指令所对应的返回值如下表 4-2 所示。表 4-2 语音控制指令对应的串口返回值buff=USART_Receive(); switch (buff)case 00:clrbit

50、( PortA, PA0 ); /对 PA0 写 0break;case 01:setbit( PortA, PA0 ); /对 PA0 写 1break;case 02:clrbit( PortA, PA2 ); /对 PA2 写 0break; case 03: setbit( PortA, PA2 ); /对 PA2 写 1 break; case 04:语音控制指令对应串口返回值打开灯0 x01关闭灯0 x02打开空调0 x03关闭空调0 x04打开电视0 x05关闭电视0 x06打开热水器0 x07关闭热水器0 x08全部打开0 x09全部关闭0 x0a唐唐 山山 学学 院院 毕毕

51、业业 设设 计计 clrbit( PortA, PA4 ); /对 PA4 写 0 break; case 05: setbit( PortA, PA4 ); /对 PA4 写 1 break; case 06: PortA=0 xFF; break; default: break;本设计中利用该芯片模拟了智能家居系统。设计的过程中,设计者常常需要下达一些短口令,而在所设计的训练环境中,如果口令采用键盘或鼠标的方式进行输入,这显然违背了设计的初衷,所以使用 LD3320 控制电路用语音识别的方式,将获得的识别结果再换成串口信号,输入单片机,达到语音控制的目的。4.2 红外发射部分4.2.1 红

52、外发射原理单片机接收到串口发送的信息以后,会打开定时器,产生一个个的高低电平,产生了一个脉冲串信号。这个脉冲串信号载有相应的信息,然后通过单片机的控制,从红外发光二极管中发出调制好的脉冲串信号。这就是红外发射的原理。编码方式采用的是 PPM 编码。这种编码具有以下特征:(1) 编码后的信号是由前导码、16 位地址码(8 位地址码、8 位地址码的反码)和 16 位操作码(8 位操作码、8 位操作码的反码)组成。前导码:是一个遥控码的起始部分,由一个 9ms 的高电平和一个 4.5ms 的低电平组成,作为接受数据的准备脉冲19。地址码可以用来区分设备。16 位操作码用来执行不同的操作。需要注意的是

53、,红外遥控设备不同,16 位的地址码是不相同的。所以地址码的作用就是防止不同遥控设备发射的码型的干扰。(2) 采用脉宽调制的串行码,是二进制码,由0和1组成。这 2 个字符的周期不同。而且高低电平的顺序也相同,先有一个高电平,后有一个低电平。高电平持续的时间也一样为 0.56ms。低电平持续的时间不同,字符0的电平持续的时间为 0.56ms。字符1持续的时间为 1.12ms。二进制编码如下图 4-2 所示。唐唐 山山 学学 院院 毕毕 业业 设设 计计图 4-2 二进制编码4.2.2 红外发射程序首先初始化串口中断,等待串口中断响应。当有语音信号输入时,语音芯片将通过匹配得到的最优的结果以串口

54、的形式发回单片机,这时单片机出现串口中断,会执行串口中断函数。得到命令代码,开启定时器中断,调用发射函数。最终可以使红外发光二极管发出载有相应信息的信号。红外发射函数要先发送一个前导码由 9ms 的高电平和 4.5ms 的低电平构成,之后在发送 16 位地址码,16 位地址码能区别不同的红外遥控设备,防止不同机种遥控码互相干扰。本设计中的地址码为 3,地址反码为 252。最后发送 16 位数据操作码和数据操作反码。本设计中的数据操作码就是语音识别结果。具体流程图如图 4-3 所示。唐唐 山山 学学 院院 毕毕 业业 设设 计计图 4-3 红外发射流程图本设计中波特率默认为 9600bps。则串

55、口初始化代码如下所示:#define FOSC 11059200 /11.0592M 晶振#define BAUD 9600void UART_Init(void)PCON |= 0 x00;SCON = 0 x50; /8 位数据,可变波特率TMOD = 0 x20;TL1 = -(FOSC/12/32/BAUD); /设定定时初值TH1 = TL1; /设定定时器重装值ET1 = 0; /禁止定时器 1 中断TR1 = 1; /启动定时器 1本设计中,当串口接收到信息以后,会产生串口中断,在接收数据时需要清除串口中断标志位,同时打开定时器,利用定时器,产生一串高低电平。这串高低电平就是要发

56、送的信息。而定时器中断响应函数如下所示:void timeint(void) interrupt 1 开始串口初始化等待是否串口中断发送信号否是唐唐 山山 学学 院院 毕毕 业业 设设 计计 TH0=0 xFF; TL0=0 xE6; /设定时值为 38K,也就是每隔 26us 中断一次count+;if (flag=1)OP=OP; /如果是待发送的有效数据 flag=1elseOP = 0; ir_in = OP;4.3 红外接收模块在红外接收模块与单片机的外部中断 0 口相连接。当检测到有红外信号输入时,会产生外部中断。就会进入外部中断处理程序。在处理数据的过程中还要关闭外部中断直到接收

57、完数据,才可以再打开外部中断19。对红外遥控的数据接收主要是在外部中断函数中进行的,处理过程为:当有语音送入到语音芯片内部,进过识别分析以后,由单片机控制发送信号。这时红外一体化接收器最先会接收到一个低电平。因为接收器连接外部中断 0 口同时采用下降沿的触发方式。红外接收程序中已经将 P3 口设置为高电平。当接收到低电平时,产生一个下降沿,会产生外部中断。这时程序计数器 PC 会指向外部中断程序的入口地址。去执行外部中断处理函数。首先关闭外部中断。然后根据一体化接收器脉冲信号输出引脚的高低电平持续的时间判断红外遥控发送的数据。这个数据有 4 个字节,而单片机会根据第 3 个字节数据的不同来执行

58、不同的操作。红外接收器在接收时会有自己的一个判断。只接收正确的红外信号。这个判断主要是根据前导码来完成。之后接收到地址码和数据操作码。单片机根据数据操作码来控制相应的继电器。红外接收函数的流程图如下图 4-4 所示。唐唐 山山 学学 院院 毕毕 业业 设设 计计继电器控制返回调用红外接收函数 开始端口初始化是否外部 0 中断否是图 4-4 红外接收流程图外部中断函数的代码如下所示:void interrupt0()interrupt 0uchar i=0,j=0,k=0,us=0;uchar addr4=0;EX0=0;for(i=0;i255;i+) /9ms 内有高电平认为是干扰if(P3

59、&0 x04) /255 的值实际时间为 800usEX0=1;return;while(!(P3&0 x04); /等待 9ms 低电平过去唐唐 山山 学学 院院 毕毕 业业 设设 计计 for(i=0;i4;i+)for(j=0;j8;j+)while(P3&0 x04);/等待 4.5ms 高电平过去while(!(P3&0 x04); /等待高电平while(P3&0 x04)/计算这个高电平的时间for(us=0;us=30)EX0=1;return;addri=addri1;/接收一位数据if(k=8)addri=addri|0 x80; /高电平大于 0.56ms,则为 1k=0

60、;P2=(addr2); /P2 的 LED 显示二进制键值4.4 模拟电器控制部分本设计中选用继电器模拟家用电器,继电器模块指示灯的亮灭代表家用电器的开启或关闭。继电器上一共有 4 个指示灯分别连着 51 单片机的P1.0P1.3,由这四个口来控制,低电平可以使继电器的指示灯亮。当红外一体化接收器 HS0038 接收到红外信号时,会产生一个下降沿,使 51 单片机产生外部中断,调用外部中断函数。在外部中断函数中,有相应的程序控制 P1 口的电平的高低。从而控制继电器模块指示灯的亮灭。这部分程序代码如下:sbit num1=P10;sbit num2=P11;sbit num3=P12;sbi

温馨提示

  • 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
  • 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
  • 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
  • 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
  • 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
  • 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
  • 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。

评论

0/150

提交评论