基于STM32单片机声源方向识别器设计与实现毕业设计论文.docx

上传人:b****8 文档编号:11015618 上传时间:2023-02-24 格式:DOCX 页数:80 大小:1.68MB
下载 相关 举报
基于STM32单片机声源方向识别器设计与实现毕业设计论文.docx_第1页
第1页 / 共80页
基于STM32单片机声源方向识别器设计与实现毕业设计论文.docx_第2页
第2页 / 共80页
基于STM32单片机声源方向识别器设计与实现毕业设计论文.docx_第3页
第3页 / 共80页
基于STM32单片机声源方向识别器设计与实现毕业设计论文.docx_第4页
第4页 / 共80页
基于STM32单片机声源方向识别器设计与实现毕业设计论文.docx_第5页
第5页 / 共80页
点击查看更多>>
下载资源
资源描述

基于STM32单片机声源方向识别器设计与实现毕业设计论文.docx

《基于STM32单片机声源方向识别器设计与实现毕业设计论文.docx》由会员分享,可在线阅读,更多相关《基于STM32单片机声源方向识别器设计与实现毕业设计论文.docx(80页珍藏版)》请在冰豆网上搜索。

基于STM32单片机声源方向识别器设计与实现毕业设计论文.docx

基于STM32单片机声源方向识别器设计与实现毕业设计论文

 

本科毕业设计(论文)

基于STM32单片机声源方向识别器设计与实现

 

毕业设计(论文)原创性声明和使用授权说明

原创性声明

本人郑重承诺:

所呈交的毕业设计(论文),是我个人在指导教师的指导下进行的研究工作及取得的成果。

尽我所知,除文中特别加以标注和致谢的地方外,不包含其他人或组织已经发表或公布过的研究成果,也不包含我为获得及其它教育机构的学位或学历而使用过的材料。

对本研究提供过帮助和做出过贡献的个人或集体,均已在文中作了明确的说明并表示了谢意。

作者签名:

     日 期:

     

指导教师签名:

     日  期:

     

使用授权说明

本人完全了解大学关于收集、保存、使用毕业设计(论文)的规定,即:

按照学校要求提交毕业设计(论文)的印刷本和电子版本;学校有权保存毕业设计(论文)的印刷本和电子版,并提供目录检索与阅览服务;学校可以采用影印、缩印、数字化或其它复制手段保存论文;在不以赢利为目的前提下,学校可以公布论文的部分或全部内容。

作者签名:

     日 期:

     

学位论文原创性声明

本人郑重声明:

所呈交的论文是本人在导师的指导下独立进行研究所取得的研究成果。

除了文中特别加以标注引用的内容外,本论文不包含任何其他个人或集体已经发表或撰写的成果作品。

对本文的研究做出重要贡献的个人和集体,均已在文中以明确方式标明。

本人完全意识到本声明的法律后果由本人承担。

作者签名:

日期:

年月日

学位论文版权使用授权书

本学位论文作者完全了解学校有关保留、使用学位论文的规定,同意学校保留并向国家有关部门或机构送交论文的复印件和电子版,允许论文被查阅和借阅。

本人授权    大学可以将本学位论文的全部或部分内容编入有关数据库进行检索,可以采用影印、缩印或扫描等复制手段保存和汇编本学位论文。

涉密论文按学校规定处理。

作者签名:

日期:

年月日

导师签名:

日期:

年月日

摘要

近年来,基于麦克风阵列的声源定位系统被广泛地应用于电话会议、视频会议、语音增强、助听器等系统中,因此受到了越来越多的关注,已经成为一大研究热点。

在各种声源定位方法中,基于到达时延估计的双步定位法原理简单,运算量小,精度相对较高,有利于实时实现,因此它的应用也最为广泛,本文着重研究了该方法。

本文首先给出了麦克风阵列声源定位系统的硬件设计。

该硬件电路实现了在一定的采样率下对多个麦克风通道进行同步采样。

接下来,以STM32F103RBT6为硬件平台,设计了一个可以在二维平面内对声源进行实时定位的实验系统。

STM32F103系列丰富的外设配置,使得STM32系列微型控制器适合于多种应用场合。

系统软件部分的核心算法采用了基于达到时延估计双步定位。

最后,对系统进行大量测试,实验结果表明,该系统硬件性能良好,软件算法实现简单,运算量小,精度较高,可适用于实时定位系统中。

关键词 麦克风阵列;实验估计;声源定位;STM32F103RBT6

 

Abstract

Inrecentyears,sourcelocalizationsystembasedonmicrophonearrayisbeingwidelyusedinthevideoconference,teleconference,speechenhancement,hearingaids.Soithasbeenreceivedagrowinginterestandbecomeaveryhotarea.Invarioussourcelocationmethod,timedifferenceofarrival(TDOA)basedonthedoublestepmethodisthemostwidelyused,whichhassimpleprinciple,lowcalculatedamount,highprecision,andcanrealizereal-timeinpractice.Thepaperalsofocusesonthismethod.

Firstly,thehardwaredesignofthesourcelocalizationsystembasedonmicrophonearrayisbeenpresented.Multi-channelmicrophonesignalcanbesampledatacertainsamplingfrequencyinthesametimeinthisdesign.Secondly,basedonthesinglechipSingle-ChipmicrocomputerofSTM32F103RBT6,standardandadvancedcommunicationinterfaces.ThesefeaturesmaketheSTM32F103linemicrocontrollerfamilysuitableforawiderangeofapplications.Thecriticalsectionofthesystemsoftwareisthedoublestepsoundsourcelocationmethodbasedontimedifferenceofarrival(TDOA).

Finally,doagreatamountofexperimenttest,theexperimentallresultsshowthatthehardwareperformanceofthisisgood,andthesoftwarelocalizationalgorithmhassimpleimplementation,littlecomputationandhighaccuracy,soitcanbeusedinrealtimepositioningsystem.

Keywords Microphonearray;soundsourcelocalization;Timedelayestimation;STM32F103RBT6

 

 

第1章绪论

1.1课题背景及研究的目的和意义

声音是人类进行信息交流和认识外界的重要手段。

对声音信号的处理研究伴随着声学的研究发展而进行。

在信号与信息处理、计算机、数字通信、人工智能等先进技术的推动下,声音信号处理成为当今国内外的研究热点[1]。

早在20世纪七八十年代,就已经开始将麦克风阵列应用于语音信号处理的研究中,进入90年代以来,基于麦克风阵列的语音信号处理算法逐渐成为一个新的研究热点。

1985年Flanagan将麦克风阵列引入到大型会议的语音增强中,并开发出很多实际产品。

1987年Silverman将麦克风阵列引入到语音识别系统,1992年又将阵列信号处理用于移动环境下的语音获取,后来将其应用于说话人识别。

1995年Flanagan在混响环境下用阵列信号处理对声音进行捕获。

1996年Silverman和BrandstEin开始将其应用于声源定位中,用于确定和实时跟踪说话人的位置。

近年来,基于传声器阵列的声源定位技术得到广泛的应用[2]。

系统通过传声器阵列接收声源信息,然后进行数字信号处理,得到声源的位置信息。

目前,基于传声器阵列的声源定位的主要应用有:

(1)人机交互近年来随着机器人技术的发展,人们希望智能化机器人可以服务于人们的日常生活,尤其是为老年人的生活提供帮助,比如为老年人打扫卫生,或是为行动不便的老年人提供其他方面的协助。

先前人们对智能机器人技术的发展主要是集中在移动系统和视觉系统上,缺少人机之间的交流和沟通,因此在人类与机器人之间建立一个有效的沟通方式是非常必要的[3]。

无论对于专家和非专家人员来说,语音是人机交互最有前途的工具之一,因为语言能够提供双向的交互和不同标准的控制,所以机器人听觉系统的发展在家居机器人为人类服务方面提供了潜在的重要作用。

机器人的听觉注意机制可以对外界的声音首先发起响应,进而引导机器人对声音目标进行观察,听觉系统还可以引起机器人的其他感官的注意,这种多信息融合技术已经成为一个重要的研究方向[4,5]。

用于人机交互的机器人听觉系统的核心构成便是声源定位技术[6]。

当一个机器人的使用者和智能机器人进行语言的交流时,机器人能很快发现这个使用者或是找到这个声源的位置。

除此之外,它还能在黑暗的环境中通过声音信号寻找说话者,或是在复杂的环境中寻找危险的声源[7]。

在人机交互设备中,听觉系统水平的高低已经成为智能化水平的重要标志之一。

图1-1机器人利用声源定位确定声源的位置

(2)军事领域在战场上,声源定位技术在反狙击手方面运用广泛,用来探测火炮发射的精确位置。

声源定位技术还为发现和跟踪隐身飞机提供了一种简单的方法,相比于红外和雷达设备,可降低设备的造价[8]。

例如飞行在12000米高空的隐身飞机,以1.5马赫的速度突防,发动机的声音需要40s的时间传播到布置在地面或海洋表面的麦克风阵列,这时隐身飞机刚飞过20公里,只需根据麦克风阵列探测的隐身飞机的飞行轨迹就可以拦截隐身飞机。

(3)视频、电话会议系统目前大多数的视频、电话会议系统均使用了麦克风阵列技术,使用麦克风阵列技术不仅可以判定出当前发言人的位置,而且可以自动的将麦克风阵列的波束方向对准发言人的位置,屏蔽其他方位的噪声,提高了视频、电话会议系统的效果。

(4)大型会场大型会场一般采用固定位置的麦克风,限制了发言人的自由移动,佩戴无线麦克风也有诸多不便。

而采用麦克风阵列的技术,通过对发言人进行声源定位,可以将阵列的波束方向对准发言人的位置,并随着发言人的移动调整波束方向,非常方便。

(5)助听器基于麦克风阵列的助听器可以根据声源的位置,将阵列波束方向对准声源的方向,很好地抑制了环境噪声,提高了助听器的性能。

(6)工业降噪应用声源定位技术,我们还可以对机械设备的不同区域进行降噪处理。

如图1-2和图1-3所示,则是采用麦克风阵列望远镜检测汽车噪声源,及不同部位的噪声能量的分析结果。

图1-2声波阵列望远镜

图1-3汽车不同部位的噪声能量分析

(7)智能手机去噪目前已有智能手机已经采用麦克风阵列技术进行去噪,一般选用多个麦克风分别对准不同的方向,通过阵列信号处理的技术,去除环境噪声,仅放大说话人的声音。

除此之外,声源定位技术还被广泛应用于电视电话会议和安防系统等领域。

在电视电话会议上,声源定位系统可以将摄像头对准正在发言的人,使远方的与会人员也可以看见视频另一端的说话人,这样会使虚拟会议的真实感增强[9]。

在光线昏暗的条件下,传统的视频监控对监控区域内的监控存在死角,声源定位技术不受光线条件的影响,可以弥补视频监控系统的不足,发现异常声源可以及时提醒监控人员。

随着声源定位技术的发展,其应用领域将越来越广,更加接近人们的日常生活。

在现有的银行监控系统中,主要运用的是视频监控,通过摄像机与录像机对监控场景的图像或视频进行采集和存储。

但是其设备本身不具备对视频内容的分析判断能力,需要人工完成。

由于这种单纯的人力监视受限于人体的观察能力,使得系统存在监控漏洞。

如果能够开发一种更加智能化的监控系统,弥补现有系统的不足,有着很大的实用价值。

人类的判断分析能力之所以高,就是因为我们从外界得到的信息较多。

通过视觉、听觉、嗅觉等等,综合判断必定比单纯的一种信息得到的结论更准确。

因此,在监控系统中使用声源定位技术可以使系统更加智能化。

即监控过程分两步进行,声源定位系统不断检测环境中的声音信号,若检测到有异常声音时,立即定位该声源,然后控制摄像机对声源所在区域进行视频采集,同时发出警报提醒监控人员。

因此,这种视频采集结合声源定位的监控系统极大地提高了监控效率。

在军事领域,声源定位技术也起着极其重要的作用。

例如狙击手定位系统就是一种声源定位系统,目标声源信号为狙击手开枪时步枪的膛口激波和弹丸飞行产生的冲击波[10]。

定位系统通过接收这两种声波,确定狙击手的位置。

目前已经研制成功的该类系统有:

美军研制的“哨兵”、“安全”等单兵反狙击手探测定位系统。

美国BBN公司开发的“枪弹定位器”声测系统。

该系统采用2个传声器阵列测量弹丸飞行中的声激波对弹丸进行定位和分类,定位成功率达到90%。

另外,试设想一下多媒体教室,若在传统的麦克风中置入声源定位系统,使得该麦克风不仅可以接收、扩大声音,而且可以对说话人的方位进行实时检测和跟踪,即麦克风始终对准讲话人的方向。

这样就大大方便了讲话人的自由活动或交换。

声音给人们带来了方便,丰富了人们的生活。

而对声源位置的确定能给大家有效的利用声音提供帮助。

事实证明,声源定位系统是一个很有意义的研究课题,随着声源定位技术的发展,其应用领域将越来越广,越来越贴近人们的日常生活[11]。

1.2国内外研究现状

声源定位技术有几十年的发展历程。

其基本原理就是根据收到的音频信号,确定声源的位置。

目前主要采用基于麦克风阵列的信号处理方法。

该方法是在1996年,由Silverman和Brandstein两人首先将其应用于说话人位置识别的定位系统中的。

随着传声器阵列的信号处理技术的迅猛发展,麦克风阵列的产品以其极大的优越性已经应用到社会生活的各个场合。

国外对声源定位技术的研究起步较早,目前的研究成果比也较多。

主要应用于军事领域,如战场目标声音识别系统[12]、飞机探测系统、声探测预警系统[13]等。

除军事领域外,其他领域的声源定位技术的研究成果也很多,如日本HONDA研究院研制的实时跟踪多声源的系统。

该系统由两个麦克风阵列组成,分别为室内的麦克风阵列和嵌入机器人头部的麦克风阵列。

这两个阵列分别采用基于加权延时-累加波束成形法和自适应波束成形器法来定位多声源位置。

加拿大魁北克的珊不勒凯大学机电学院研发的避障机器人,使用8元麦克风阵列采集声音,采用波束成形和粒子滤波方法实现声源的跟踪。

近年来,国内的许多大学和研究所也对声源定位技术进行了研究。

哈尔滨工程大学水声技术国家级重点实验室针对水下近场噪声源的定位,研究了一种矢量阵宽带MVDR聚焦波束形成方法。

该方法解决了“左右舷模糊”问题,提高了处理增益,及对实际水声信号的适用性[14]。

湖南科技大学和中南大学机电工程学院对海底超声波微地形探测系统进行了研究[15]。

安徽理工大学电气与信息工程学院,设计了一种智能视频监控系统。

该系统综合应用了声音和光的信息实现定位,突破了传统监控系统监控范围的局限性,提高了监控系统的监控效率[16]。

另外,如何实现低成本的小型声源定位系统已成为目前研究的一个热点。

例如,移动机器人、智能车等声音定位控制系统。

文献[17]设计了一套基于单片机的声音导引系统,该系统通过检测声音信号到达任意两个探测器的时间差实现移动声源方位的估计,从而控制小车的运动方向,并引导小车到达指定位置。

文献[18]介绍了一种用于移动机器人搜寻目标方向的声源定位系统。

文献[19]设计了一套以STM32芯片为硬件的移动声源实时定位系统。

1.3本文主要工作及论文结构

本文研究的主要内容是设计与实现基于麦克风阵列和STM32单片机的声源方向识别器。

其中,包括麦克风阵列、音频放大电路的设计、A/D转换的电路设计及其相关程序的设计,声源定位算法的程序设计。

但是考虑到时间不够充足这一实际情况,最后决定采用已完成的一套STM32单片机为核心的硬件电路作为实现声源定位的硬件系统。

在最后对整个系统进行软硬联调,对系统进行大量声源定位实验,测试系统的精确程度以保证系统能够应用于实际环境中。

论文共分为六章,章节主要内容如下:

第1章介绍声源定位背景及研究的目的和意义,相关应用以及国内外的研究现状。

第2章主要介绍整个声源定位系统硬件基础知识。

首先介绍STM32F103系列单片机的主要性能、特点以及主要参数。

其次介绍了现有的3类基本声源定位技术。

最后简略介绍编程软件KeilμVision4MDK的使用方法。

第3章主要对声源定位算进行了介绍,包括当下集中主要的声源定位算法,时延估计算法中的基本互相关函数,对时延估计算法误差的分析和改进。

第4章主要介绍基于麦克风阵列和STM3单片机的声源方向识别器硬件整体结构的设计,包括麦克风阵列几何结构的选择,音频放大电路的设计,STM32单片机的A/D转换电路的设计,以及各部分电路与单片机的连接方式。

第5章主要介绍如何设计相关程序以实现STM32单片机的采样和A/D转换,声源定位算法的程序设计。

第6章主要介绍使用已设计好的硬件系统结合声源定位算法算法进行多次声源定位实验并记录过程,进而对测试结果进行分析。

分析系统误差并且提出改进的方法。

最后为结论,主要介绍本次毕业设计工作的内容和取得的成果,设计过程中完成的声源定位系统的优点以及不足之处,并提出一些改进办法。

 

第2章声源定位系统的技术基础

2.1麦克风阵列声源定位系统整体结构

麦克风阵列声源定位系统主要包括四大部分:

麦克风阵列部分、音频放大部分、采样和A/D转换部分以及声源定位算法处理部分。

结构框图如图2-1所示。

如图2-1声源定位系统框图

(1)麦克风阵列麦克风阵列的设计涉及到麦克风种类的选择、麦克风阵列结构的选择、阵元间距和阵元数目这些因素。

麦克风阵列的设计与声源定位算法的选择、声源定位系统的设计细节相关,是实现麦克风阵列声源定位系统的基础。

本系统采用两个麦克风以一定的间距并列放置,用于配合接下来的基于时延估计声源定位的计算方法。

(2)音频放大模块因为声音信号经麦克风转换为电压信号以后是毫伏级的,STM32单片机中的ADC端口不能分辨出如此小的电压,故音频前置放大电路是声源定位系统中必不可少的。

由于所选择的麦克风频率范围为20~16KHz,为保证放大电路在麦克风的频率范围内都能正常工作,所选择的运算放大器应有足够宽的带宽。

另外,所选择的模拟运算放大器应该具有较高的信噪比,以满足系统对采集信号的精度要求。

本系统的运算放大器选用的是德州仪器TL084C,该放大器满足了系统所要求的增益和带宽要求,同时具有较宽的电源电压工作范围,保证了放大电路有着很宽的线性工作区。

模拟运算放大芯片084C为四输入运算放大器,具有较高的转换率,INn+为同相输入端,INn-为反相输入端,OUTn为输出端,硬件电路中使用两个084C,可根据声音信号的大小决定采用一级放大还是两级放大。

将麦克风接到放大器的输入端,经放大后与单片机相连,作为模拟信号的输入端。

(3)采样和A/D转换模块声源信号为模拟信号,在STM32单片机中实现声源定位的计算,则需要将模拟信号转换为数字信号,从而进行接下来的数字信号处理环节。

该模块的作用就是对模拟信号进行等间隔采样,将模拟信号转换为数字信号,为接下来的定位计算提供可用数据。

(4)声源定位算法处理模块该模块主要对采集到的数据进行数字信号处理,依据声源定位算法,进而计算出声源的位置信息。

2.2STM32单片机简介

STM32F103系列微处理器是首款基于ARMv7-M体系结构的32位标准RISC(精简指令集)处理器,提供很高的代码效率,在通常8位和16位系统的存储空间上发挥了ARM内核的高性能。

该系列微处理器工作频率为72MHz,内置高达128K字节的Flash存储器和20K字节的SRAM,具有丰富的通用I/O端口。

作为最新一代的嵌入式ARM处理器,它为实现MCU的需要提供了低成本的平台、缩减的引脚数目、降低的系统功耗,同时提供了卓越的计算性能和先进的中断响应系统。

丰富的片上资源使得STM32F103系列微处理器在多种领域如电机驱动、实时控制、手持设备、PC游戏外设和空调系统等都显示出了强大的发展潜力[6]M32F103系列微处理器主要资源和特点如下:

(1)多达51个快速I/O端口,所有I/O口均可以映像到16个外部中断,几乎所有端口都允许5V信号输入。

每个端口都可以由软件配置成输出(推挽或开漏)、输入(带或不带上拉或下拉)或其它的外设功能口。

(2)2个12位模数转换器,多达16个外部输入通道,转换速率可达1MHz,转换范围为0~3.6V;具有双采样和保持功能;内部嵌入有温度传感器,可方便的测量处理器温度值。

(3)灵活的7路通用DMA可以管理存储器到存储器、设备到存储器和存储器到设备的数据传输,无须CPU任何干预。

通过DMA可以使数据快速地移动这就节省CPU的资源来进行其他操作。

DMA控制器支持环形缓冲区的管理,避免了控制器传输到达缓冲区结尾时所产生的中断。

它支持的外设包括:

定时器、ADC、SPI、I2C和USART等。

(4)内部包含多达7个定时器。

(5)含有丰富的通信接口:

三个USART异步串行通信接口、两个I2C接口、两个SPI接口、一个CAN接口和一个USB接口,为实现数据通信提供了保证[5]。

STM32的通用定时器是一个通过可编程预分频器(PSC)驱动的16位自动装载计数器(CNT)构成。

STM32的通用定时器可以被用于:

测量输入信号的脉冲长度(输入捕获)或者产生输出波形(输出比较和PWM)等。

使用定时器预分频器和RCC时钟控制器预分频器,脉冲长度和波形周期可以在几个微秒到几个毫秒间调整。

STM32的每个通用定时器都是完全独立的,没有互相共享的任何资源。

如图2-2为定时器的框图,其功能包括:

(1)16位向上、向下、向上/向下自动装载计数器(TIMx_CNT)。

(2)16位可编程(可以实时修改)预分频器(TIMx_PSC),计数器时钟频率

的分频系数为1~65535之间的任意数值。

(3)4个独立通道(TIMx_CH1~4),这些通道可以用来作为:

1.输入捕获

2.输出比较

3.PWM生成(边缘或中间对齐模式)

4.单脉冲模式输出

5.可使用外部信号(TIMx_ETR)控制定时器和定时器互连(可以用

一个定时器控制另外一个定时器)的同步电路。

6.支持针对定位的增量(正交)编码器和霍尔传感器电路

7.如下事件发生时产生中断/DMA:

①更新:

计数器向上溢出/向下溢出、计数器初始化(通过软件或者内部/外部触发)

②触发事件(计数器启动、停止、初始化或由内部/外部触发计数)触发输

入作为外部时钟或者按周期的电流管理

④支持针对定位的增量(正交)编码器和霍尔传感器电路

⑤输入捕获

⑥输出比较

图2-2定时器的框图

ADC(AnalogtoDigitalConverter),模拟/数字转换器。

在模拟信号需要以数字形式处理、存储或传输时,ADC必不可少。

STM32系列单片机的ADC转换位数为12位,是一种逐次逼近型模拟数字转换器。

它有多达18个通道,可测量16个外部和2个内部信号源。

各通道的A/D转换可以单次、连续、扫描或间断模式执行。

ADC的结果可以左对齐或右对齐方式存储在16位数据寄存器中,其框图如图2-3所示。

STM32系列在片上集成的ADC外设非常强大,其主要特征如下:

(1)12位分辨率

(2)转换结束、注入转换结束和发生模拟看门狗事件时产生中断

(3)单次和连续转换模式

(4)从通道0到通道n的自动扫描模式

(5)自校准

(6)带内嵌数据一

展开阅读全文
相关资源
猜你喜欢
相关搜索

当前位置:首页 > 表格模板 > 合同协议

copyright@ 2008-2022 冰豆网网站版权所有

经营许可证编号:鄂ICP备2022015515号-1