济海追风-声音信标
扫描二维码
随时随地手机看文章
01引言
技术报告主要讲述了本组信标车的机械、硬件、算法情况。今年的信标组有别于往年的光电信标,采用声音信标的形式,场地中的信标灯发出以0.2048s为周期的Chirp信号,要求信标车完成定位、追踪和避障。和传统利用摄像头来进行搜灯任务的信标车相比,今年的声音信号定位具有精度低、周期长的特点,使得更高精度的定位,更加有效的降噪,以及在定位信号没有更新的时候如何进行运动控制成了本届信标车的难点。
此外,今年高反光率的圆台型信标灯以及可能出现的室外光环境为避障任务增加了巨大的挑战。机械结构方面,需要设计低噪声的麦克风支架,降低运动过程中由轮子、齿轮等部件带来的噪声影响。软件方面,需要对不同的环境噪声进行分析,针对各种噪声的特点设计滤波算法;围绕信标灯的光学和形态特征,结合摄像头和测距模块进行避障方案设计;利用卡尔曼滤波等算法实现运动传感器和声音定位的融合,实现在声音定位信号更新前的运动控制。
硬件电路方面,过大的信息量和过多的外设传感器对芯片的算力有着不低的要求,因此必须选用多块MCU才能达到要求,由于TC264DA的耗电量巨大,也对稳压部分设计有了新的要求。
本篇技术报告将针对这些问题,提出比较可行的解决方案。
02机械结构设计
2.1 电磁直立组比赛任务
(1)车模
可以选用H型两轮车模或者自制车模。
(2)传感器
允许使用摄像头、麦克风、陀螺仪等不含有自解算功能的传感器。
(3)比赛赛道
比赛是在指定蓝底布上进行,底布上铺设有声音信标灯。
2.2 机械结构设计
本车的结构设计较为复杂,因组委会指定的TC264DA算力有限,我们不得不使用多块核心板,从而必须搭建多层电路板结构。H车模为麦克纳姆轮车模,无需安装舵机。
第一层原计划用来固定碳杆支架,但由于碳杆较易将高频振动传至麦克风处产生强烈的噪声,因而作为备用层处理。
第二层为主控板层,负责主要的传感器采集、信息结算、运动控制任务,留有各类接口以便于未来的调试与拓展。
第三层为摄像头采集板层,使用两块TC264DA核心板用以采集MT9V034摄像头回传的信息,经过处理后通过串口传回主控板。
第四层为摄像头安装板层,用以固定前后两个摄像头。
第五层为麦克风固定层,采用了传导振动能力较差的木材搭建。
整体视图如图2.3.1所示。
▲ 图2.3.1 车模结构设计
2.3 传感器的安装与架设
我们主要使用的传感器为用于声音定位的麦克风模块和用于避障的传感器MT9V034摄像头,其固定位置与方式如图2.4.1所示。
▲ 图2.4.1 传感器安装方式
2.4智能车主要技术参数
智能车主要技术参数包括物理尺寸、电路指标等,具体参数见表 2.1。
▲ 表 2.1 智能车主要参数表
03电路设计
3.1总览
受疫情影响,今年我们的正式准备时间不足两个月,因此,比起高性能的IC选型,我们更倾向于高稳定性的IC选型,以保证尽可能低的电路故障率。
稳压芯片采用LM2596S系列和AMS1117系列,来自于TI和AMS公司的这两款芯片久经市场的考验,十分稳定可靠。其中作为LDO的AMS1117存在着电流过大时发热严重的现象,为了避免结温,我们于其上安装了散热片,发热情况得以减轻。
3.2主控板设计
主控板是整个车模的核心,我们采用稳定可靠的LM2596S与AMS1117系列作为电源管理芯片,龙邱公司的TC264DA核心板作为主运算及控制单元。为了方便调试、检修与拓展,我们电源线的连接均使用KF128压线端子,并且在主控板上留有各式接口,方便未来的编程及维护。
▲ 图3.2.1 主控板部分原理图
▲ 图3.2.2 主控板部分PCB
3.3 摄像头拓展板设计
在之后的工作中,为了更好地进行避障,我们计划加装两个MT9V034摄像头,而一块TC264DA的算力明显是不够的,因此我们单独设计了一板搭载有两块TC264DA核心板的拓展板,通过串口与主板进行通讯,电源管理部分沿用主控板的设计。
▲ 图3.3.1 摄像头拓展板部分原理图
▲ 图3.3.2 摄像头拓展板部分PCB
3.4 电机驱动设计
为了考虑到整体硬件的稳定性,我们选用往届智能车竞赛中被大量使用的方案,也是我们认为较为稳妥的方案–英飞凌公司生产的电机驱动芯片BTN7971B。
我们在数据手册中发现BTN7971B自带电流检测引脚,因此我们决定尝试在电路中加入电流环,但实际测试中其效果并不令人满意–两片驱动芯片会发生电磁干扰的情况,由于时间紧迫,我们并未做进一步尝试。
就隔离部分而言,我们采用的是逻辑芯片的隔离方法,逻辑芯片的内部效果接近于磁耦隔离,只能单向导通,但是隔离效果较差,对于大功率电器基本无隔离效果,其基础隔离能力足够。光耦隔离的原理是一端利用光源发射信号,另一端接收光信号,两边以光作为信号传输介质,相当于单向导通,所以不存在一方面电压电流过大将另一方面烧毁的情况。
▲ 图3.9电机驱动部分原理图
▲ 图3.10电机驱动部分PCB
04软件算法
信标车的运动总共分成了追灯和避障两个部分。而为了满足对应的运动控制需要,信标车需要完成信标位置信息的获取,障碍物位置信息的获取,以及车模自身的角速度、电机转速、车身运动的速度矢量等信息的获取。
4.1 声音定位
今年的信标组采用声音信标的形式,圆台型的信标灯发出Chirp声音信号以及相应的FM调频信号,信标车需要根绝声音和FM信号来完成信标灯的定位。由于信标灯发出的声音可以基本视为远场信号,因此可以通过不同麦克风互相关得到不同声音信号的相位差,并以此来近似获得声源与两个麦克风连线的夹角。经过试验发现,在两个麦克风连线的法线正负30°范围内的声源可以基本定位准确。因此两个麦克风可以完成前后各60°,共120°的角度定位。全车三个麦克风,两两互相关,共三组,完成四周360°的信标灯定位。
互相关运算通常依靠FFT来缩短运算用时,但是使用FFT时需要存储空间来存储中间运算步骤中产生的复数序列,并且需要对ADC采集得到的序列通过补零加长。这样的空间代价对于单片机而言是不太划算的。反观FFT在时间上带来的缩短,由于声速很快,因此在20cm间距的麦克风之间产生的相移很有限,获取互相关最大值根本不需要计算整个互相关序列,只需要在首尾的一小段查找即可。计算可得,在这样的条件下,FFT带来的运算时间缩短并不明显,因而车模采用直接互相关的方法进行运算。
通过互相关可以根据信标灯发出的声音来定位信标灯,但是由于车模在运动过程中轮子、齿轮等机械结构会发出噪声,而这些噪声会影响定位的准确性,因此需要对采集到的声音信号进行滤波处理。根据录音采集不同车速下的声音信号,经过FFT变换进行频谱分析,判断得出车轮噪声较信标声音而言相对高频,因此在频域采用理想低通滤波器,对超过信标灯Chirp信号频率的高频信号进行截止。通过低通滤波和机械减震配合,综合取得了相对良好的定位效果。
4.2避障算法
今年的信标灯由于呈圆台型,所以一旦车模往上撞击,很可能会发生四轮悬空,卡住下不来的情况。而又因为圆台的底角较小,所以依靠反射的测距传感器在此处应用的效果都会比它们面对平面应用的效果要差得多。为了确保避障的稳定性,我们采用了摄像头避障的方案。
由于与往年不同,十五届的信标灯外观呈金属光泽,因此信标灯的外观很大程度上取决于环境光的影响。经过实际测试,当场地光源在信标灯的一侧时,信标灯的向光面和背光面图像差异十分明显。
为了获取更好的障碍物判断效果,在摄像头上加上高通滤镜,用以加大蓝底布和信标灯的图像差异。之后,通过偏振片和基于索贝尔算子的边缘检测来实现对灯光或者阳光在蓝底布上形成的光斑的滤除。由于信标灯罩与场地之间的边缘较为明显,而在高通滤镜的作用下,相较蓝底布灰度值也较高,因此在获得了边缘检测的结果后,再在满足灰度值条件的边缘点上通过区域生长法来找到完整的信标灯图像。
4.3运动控制
车模通过编码器和MPU6050来获取自身的车轮转速和转向角速度信息。通过角度,角速度和转速的串级来实现对智能车的运动控制。在避障的时候基于当前的运动速度进行曲率规划,防止出现突然打滑的情况,导致避障失败。由于不同车速下,在摄像头判断出障碍物带来的时延中车辆向前行进的距离不同,所以对不同车速下的避障过程线性地规划不同的曲率半径以达到更好的避障效果。
05开发与调试
5.1 开发工具
程序的开发是在TASKING 下进行的,包括源程序的编写、编译和链接,并最终生成可执行文件。Tasking公司 1977年成立,是 8 位、16 位、32 位嵌入式微控制器开发工具 提供商,Tasking 开发工具被汽车制造商广泛使用。对高度复杂和功能丰富的嵌 入式系统的依赖程度很高,这意味着您需要一款能保证产品质量、安全性和可靠 性的嵌入式设计工具。
TASKING 开发工具以及我们的认证服务,将有助于确保 设计一次成功。他可以支持 DSP 和 8 位、16 位、32 位处理器,为微控制器和软核提供开发工具。
在对不同的噪声进行录音分析的过程中使用了Octave等数学软件,通过仿真和对录制声音的处理,我们大大缩短了方案设计的时间。同时,通过将麦克风录制的音频通过串口发送至电脑并转化为音频放出,帮助我们直观地判断了噪声的情况。
在摄像头的使用过程中使用了山外调试助手,串口上传采集到的图像,在我们选择滤镜和设计图像处理算法的过程中提供了巨大的帮助。
此外,我们使用名为vofa+的上位机,这款通用工具能让嵌入式开发人员在实时环境中监测嵌入式系统。有了vofa+,不再需要像以前一样为了得到系统反馈必须停止一个应用程序;有了 vofa+,用户 可以图形化方式 观测正在运行的嵌入式应用程序的内部,这样节省了大量的开发时间;有了vofa+,开发者可以保证系统正确地运行,或者迅速找到系统的不稳定性 , 这些不稳定性一般情况下 ( 不用工具 ) 在系统运行时才能被发现。
※ 结束语
2020是无比特殊的一年,许许多多的科创竞赛都延期或者选择了取消,在这样严峻的疫情下,全国大学生智能汽车竞赛能够正常举办对于所有参赛的选手来说无疑都是一个巨大的惊喜。
由于东北疫情的反复,今年大部分时间,我们都没有办法在学校里进行智能车的设计和调试,大家只能在家里尽可能地创造条件,不论是购置仪器工具还是在家里铺设赛道,大家都毫无怨言,积极地做出自己的贡献。在今年如此艰难的条件下,与其说我们是为了比智能车比赛而做的这些,倒不如说是那份智能车精神在不断激励着我们。
今年的信标组,不论是全新的TC264单片机还是从未接触过的声音定位,对我们来说是完完全全陌生的挑战。虽然非常辛苦,但也收获良多,对于麦克风、咪头、放大器的进一步认识,对于声音信号处理的初步熟悉,对于信号与系统的加深理解以及对于硬件运算加速的接触、使用等等知识和经历都是做其他任何组别都无法体验的。最后尽管由于时间仓促,仍旧没有让信标车达到我们心目中的预期,但也算是善始善终,取得了不错的结果。
智能车的经历对我来说,不仅仅是知识的学习、工程的认识,更重要的是,他向我展示了无垠的技术天地。 我在感慨于其浩渺的同时,也深深认识到自己的渺小,而也正是这样一份渺小与无力激励着我在不断进取。两年前初识智能车的我是一个不折不扣的小白,回顾那时我犯过的许多错误,真是幼稚可笑。然而,现在的我又何尝不是什么都不会的菜鸟呢?曾经的我以为努力拼搏,终成雄鹰,翱翔蓝天。如今发现,技术的天空永远是那么的宽阔,在这片充满着无穷魅力的蔚蓝下,我永远是一只小小鸟吧。
愿所有在蓝底布上,信标灯的声音里,焊锡、松香的气味中度过一个个日日夜夜的智能车人们,继续怀揣着极速的梦想与激情,勇敢前进!
免责声明:本文内容由21ic获得授权后发布,版权归原作者所有,本平台仅提供信息存储服务。文章仅代表作者个人观点,不代表本平台立场,如有问题,请联系我们,谢谢!