APP下载

基于STC89C52 构建摄像头的声音定位系统

2023-12-08范华翔李文华赵仁凯

电子制作 2023年22期
关键词:时间差麦克风声源

范华翔,李文华,赵仁凯

(广东工业大学,广东广州,510006)

0 引言

随着物质生活水平的不断提高,人们的资产也随之增加。但社会上的盗窃事件频频发生,使人们的防范意识在不断地加强,越发意识到防盗系统的重要性,开始安上防盗窗和防盗门,装上防盗摄像头。目前,摄像头大多通过算法对图像进行分析从而实现定位[1~2],但存在因画面变化而产生误判。如今高度智能化的社会发展,声音定位技术成为多个领域的基础需求,是一项具有广泛应用的技术,因此将声音定位技术融入防盗设备具有十分可观的前景。

为了提高防盗摄像头的功能性,解决摄像头对目标误判问题,对防控摄像头进行智能化设计,增强了防盗摄像头的定位功能而开发了此声音定位系统加以辅助。通过声音定位系统通过目标发出的声音确定目标位置,再将数据传给摄像头,当数据与摄像头内的算法相匹配时,摄像头根据结果进行对目标锁定。本系统采用到达时差法(Time Difference of Arriva1,TDOA),即声波传播需要时间,两个相距固定距离的传感器接收到声波信号存在时间差Δt 的原理。由此原理而构建的模型为:通过4 个麦克风进行收音,每2 个为一组,两组麦克风分别收集声音信号,将信号传递给以STC89C52 单片机为核心的处理器,对传递的声音信号进行处理可获得两个时间差,再对时间差进行处理与计算,通过时间差构建两组双曲线,再利用双曲线的性质进行运算即可得到声源的坐标。

1 系统理论分析与模型

如今通过传感器对声源进行定位方式主要有三种,第一种是基于目标信号到达时差法(Time Difference of Arriva1,TDOA),即声波传播需要时间,两个相距固定距离的传感器接收到声波信号存在时间差Δt 的原理,通过时间差构建双曲线,多个双曲线相交的交点来确定声源位置;第二种是基于目标信号的能量来分析,通过构建声音能量传播衰减模型进行分析[3],传感器对接收的信号进行处理,分析出其距离与能量的关系,通过能量衰减模型构建圆形,多个圆形相交的交点即为声源位置;第三种则是声源的到达方位(Directions of Arrival,DOA)[4],即通过传感器接收不同方向的声源信号,对每个方向的信号进行分析,从而确定声源的方位,通过多个传感器找出声源方向,后各方向交点即为声源位置。其中第二种方式通过能量衰减模型对声源进行定位,需要较高的硬件设备要求,声源信号能量衰减公式较为复杂不易计算,同时环境对能量衰减影响较大;而第三种方式通过到达方位则对设备要求十分高,同时相当于另两者精准度较低;第一种方式通过到达时差法对声源定位,其对声音传感器的时间同时性要求较高,但相当于其他两项较为简单,只需简单的声音触发装置与计时器即可,在当前防盗摄像头的应用中,其误差(定时器频率所产生的误差)可忽略不计,因此该装置采用到达时差法对声源进行定位。

通过对到达时差法的应用,声波传播需要时间,两个相距固定距离的声音传感器接收到的信号会存在时间差Δt,将此时间差与声速进行相乘即可得到声源到两个传感器的距离的差值,结合双曲线的性质可知此差值为双曲线的长轴2a 的大小,以此构建二维平面,并将双曲线方程表示出来,如图1 所示。若存在两组声音传感器,其位置一组传感器的连线与另一组的连线垂直,则可构建两组双曲线,此时出现4 个交点,最后通过传感器触发先后判断方向,确定象限,即可确定声源,如图2[5]所示。

图1 构建双曲线实验原理图示

图2 实验二维平面图示

传感器1 与传感器2 在x 轴上,中点为坐标原点,相距为2c,声音到达两者需要时间,这时间可得到一个时间差 1tΔ,传感器3 与传感器4 在y 轴上,其连线刚好与传感器1 与传感器2 的连线垂直平分线,相距也为2c,同理可得一个时间差Δt2,两者可求两个双曲线的长轴长2a,即:

为方便计算,原先就控制好双曲线的焦距为2c(即一组传感器的距离),再通过双曲线的性质可得到其短半轴长b 的平方,即:

设所求声源在二维平面上的位置为(x0,y0),又因为双曲线是基于声源到两传感器的距离差所构建,所以声源必在双曲线上,则两个双曲线表达式可为:

2 电路与程序设计

■2.1 电路设计

核心设备:单片机STC89C52(频率为12MHz,周期为1μs,误差系统为±0.10mm,满足应用需求);4 个麦克风(以声强触发,可通过改变麦克风的可调电阻的阻值来调控灵敏度,从中可过滤环境中的杂音,防止环境中的噪音影响);LCD1602 显示屏(16*2 的网格,满足数据的显示)。

定位系统分3 个模块,分别为接收模块,处理数据模块和显示模块。三者都有现成的模块:麦克风、STC89C52单片机与LCD1062 显示屏,因此直接将三者连接起来即可,麦克风接收到信号传递给单片机,单片机处理完数据,传递给屏幕。将4 个麦克风分别连接单片机STC89C52 的4 个IO 口,单片机STC89C52 又与LCD1062 显示屏连接即可。同时4 个麦克风呈十字摆放,用杜邦线将麦克风与单片机连接,同时使杜邦线都为同样长度,保证即使麦克风传递信号存在延迟,也能使在处理数据时,延迟对结果无影响。同时单片机与屏幕位置不影响定位。单片机的4 个IO 口一直保持高电平,当一个麦克风接收到声音信号后会传送一个低电平信号给单片机,单片机接收到低电平后会启动定时器进行计时,当第二个IO 口出现低电平时停止计时,即可得时间段,再计算出双曲线长轴长2a,再将结果在显示屏上显示。

■2.2 程序设计

若传感器1,传感器2,传感器3,传感器4,对应STC89C52 单片机IO 为P1,P2,P3,P4。传感器1 和传感器2 对应定时器T1;传感器3 和传感器4 对应定时器T2。

首先STC89C52 单片机会先重置一组传感器的电平信号为高电平,后检测电平信号是否改变,当改变时,会记录哪个传感器先发生改变,并根据该传感器所在位置判断方向,同时在LCD1602 显示屏上显示,在STC89C52 单片机在记录传感器的同时,会启动对用组的定时器,开始计时,此时再次检测是否存在信号的变化,当检测到另一个传感器也传递了高电平信号时,定时器停止计时,定时器所计的时间即为到达时差法所需的时间差,得到时间差后进行计算即可得到声源的坐标。

图3 算法流程图

如图1 所示,传感器1 与传感器2 为一组,先重置P1与P2 的电平为高电平,后一直检测电平十分发生改变,当声源发声后,声音会先传播到传感器2,传感器2 接收到信号后,会给一个低电平信号到STC89C52 单片机,当STC89C52 单片机检测到电平的变化,会记录P2,同时使定时器T1 开始计时,直到声音传递到传感器1 时,传感器1 也会给一个低电平信号给单片机,单片机停止计时,并由计算出2a1,由于P2 先触发,因此在负半轴,显示在显示屏上。传感器3 与传感器4 为另一组,同理得出2a2,同时判断所在半轴。由此得出x0与y0的值和其所在象限[6]。

在实际监控摄像头的应用中,可将单片机传递给显示屏的数据换为传递给摄像头,后摄像头结合自身算法对图像处理的结果与声音定位的结果配对,当在允许的误差范围内配对成功,摄像头再对目标进行定位。

3 定位误差与精确度

■3.1 误差计算

由于在二维平面中测量数据,数据是个二维数据,所以误差也存在两个维度,用测量点与实际点的x 轴坐标差Δx和测量点与实际点的y 轴坐标差Δy 来描述该误差,一个点位,多次测量的Δx 与Δy 为:

结Δx 与Δy 的实际意义,即为多次测量后计算出来的平均测量点位与实际点位的x 轴坐标差和y 轴坐标差,所以为更好的反映出误差,则把定位的误差以定位的实际点位和平均测量点位的距离来衡量,即:

由此选取两个点使用基于该定位系统的定位装置进行的多次测试得表1。

表1 实验结果图

由表1 得,该装置能以小于40mm 的误差得到十分精确位置,后经过大量不同点位,多次测量与计算,并对数据进行处理,得到误差为(29.65±13.87)(均值±标准差)mm。对于防盗的实际应用以小于5cm 的误差进行定位,基本满足使用。

■3.2 精确度分析

(1)由于计算时规定声速为340m/s,没有考虑环境对声速的影响,从而产生计算的误差。影响声速(v)的环境因素有温度(T),湿度(Pw 是空气中水蒸气的分压强)和大气压强(P),关系式为:

由于自然界中,大气压强幅度与湿度对速度影响因素较小,同时当温度升高时Pw 会增大与P 会下降,都使速度变大,因此经过综合的分析声速可与温度直接相关联,则(12)可简化为:

由(13)可得若每增加10 开尔文,即10℃,速度变化6m/s,代入计算点位公式可近似得出其误差约为10mm。由于当时实验时气温约为26℃,产生的误差约为10mm,在误差为(29.65±13.87)(均值±标准差)mm 中,其占较大影响,但在实际应用中可忽略不计。该点也为下一步改进的方向,即增加温度测量装置,以减少其误差。

(2)无法保证两坐标轴角度为90 º,但由于传感器布置区域易控制,能保证其偏离不超过0.5 º,其误差较小,在实际应用中可忽略。

(3)由于定时器频率的影响,经过查阅使用的单片机相关资料得到其晶振频率为12MHz,经过计算12MHz 除12 为1MHz,也就是说一秒=1000000 次机器周期,所以周期为1μs,因此定时器的精确度为1μs。若定340m/s为声速,所以其最大出现的误差为一周期声音运动距离为0.34mm,代入计算定位公式可近似得到误差系统为±0.10mm,满足应用需求。

4 结束语

本系统把声音定位技术融入防盗系统,辅助监控摄像头对目标的定位功能,解决摄像头对目标锁定出现误判的问题。以到达时间差为基础,STC89C52 为核心与4 个麦克风组成了简易的声音定位系统并能基本满足防盗系统所需的声音定位精度。与此同时也存在一些可改进的地方,如增加温度测量装置,减少其误差,或是使用速度更快,造价更低的芯片。但本装置的优势也十分突出:原理简单,操作方便,体积小,成本低廉,且能以误差为(29.65±13.87)(均值±标准差)mm 精准地定位。这些优点为产品可大规模应用提供了保障,同时也具有十分广阔的市场。

猜你喜欢

时间差麦克风声源
虚拟声源定位的等效源近场声全息算法
量子定位系统中符合计数与到达时间差的获取
Binaural Rendering based on Linear Differential Microphone Array and Ambisonic Reproduction
基于GCC-nearest时延估计的室内声源定位
基于数字麦克风的WIFI语音发射机
基于BP网络的GIS局部放电声电联合检测故障定位方法
立体声音乐节目后期制作中声像定位的探讨
麦克风的艺术
运用内积相关性结合迭代相减识别两点声源
麦克风