基于单片机的声源定位系统设计

需积分: 34 8 下载量 152 浏览量 更新于2024-09-12 收藏 413KB DOC 举报
"声音控制系统是2012年全国大学生电子设计大赛中的一个项目,主要涉及电子设计领域。该系统由基于C8051F330芯片的声响模块和基于C8050F020的控制模块组成,用于实现可移动声源的定位。系统通过产生500Hz的声音信号,并通过FPGA采集4个麦克风接收到的时间差,经过算法计算后在液晶屏上显示声源的坐标和运动轨迹。设计中对比了不同方案,最终选择了使用C8051F330单片机生成声音信号,以及利用LF353前置放大电路和比较电路进行声音接收。声源定位分析是通过测量不同接收模块与声源之间的距离来确定声源的位置。" 详细解释: 1. **声响模块设计**: - 方案一采用模拟电路生成500Hz的矩形波,但由于电路复杂且易受干扰,未被采纳。 - 方案二使用C8051F330单片机,通过编程生成声音信号,然后通过三极管驱动扬声器,优点是电路和程序简单,因此被选为实施方案。 2. **声音接收模块设计**: - 首先考虑通过检测声音强度来计算距离,但因实际操作中难以准确测量,故未采用。 - 方案二采用LF353前置放大电路配合带通滤波电路和比较电路,能更好地匹配发送的信息,提高抗干扰能力,因此被采用。 3. **声源定位算法**: - 接收模块分布在坐标纸的四个角落,每个模块都有特定的坐标。 - 声源与各接收模块的距离通过声波传播的时间差计算得出,具体公式涉及三角函数和声速。 - 通过比较各接收模块接收到信号的时间差,可以确定声源的大概位置。 4. **系统实现**: - 控制模块基于C8050F020,负责处理FPGA采集的数据并运行定位算法。 - 结果在128x64分辨率的液晶显示屏上显示,包括声源的坐标和运动轨迹,提供直观的反馈。 这个声音控制系统结合了硬件设计(如C8051F330和FPGA)和软件算法(声源定位),展现了电子设计中的创新和实用性。通过精确的信号生成和接收,以及有效的信号处理,实现了对移动声源的高效定位。