杭州电子科技大学-杭电信标一队

 

第一章 引言


全国大学生智能汽车竞赛是一项面向全国大学生以智能汽车为研究对象的科技竞赛,以"立足培养,重在参与,鼓励探索, 追求卓越"为指导思想。比赛形式有信标组、创意组等多种。

参加的声音信标组,比赛任务是在比赛场地上存在一定数量的信标灯,响起的信标灯会发出250-2000Hz频率的chirp声音信号、95MHz的FM信号。参赛队伍采用四驱的麦克奈姆轮车模进行规则内的改装,小车定位响起的信标灯并进入信标灯感应线圈范围内使信标灯切换。采用省赛排位,国赛对抗的方式进行比赛。

信标组比赛在第十五届统一采用H车模,并且信标模式由灯光转为声音,使得新一届的信标组比赛各组队伍的小车更具备挑战性以及多样性。本文主要讲述杭电信标一队智能车的制作历程,阐述机械设计、电路设计、软件系统等内容。对于第十五届四驱的H车模,为了方便同时使用四个编码器,采用了英飞凌公司的TC264DA-40F200W(后文简称TC264)作为小车主控器,多个麦克风模块及无线收音模块作为信标位置信息获取的重要传感器,同时因信标灯整体为亮银色外壳与场地区分较大,因此可加装彩色摄像头获取前方信标的位置,使得小车可以对未响起的信标进行避障。

准备比赛过程中收获到的成果离不开学校的大力支持以及老师的悉心教导,在此对学校以及老师表示衷心的感谢。

 

第二章 整体设计


2.1 设计框架概述

相对于灯光信标,采用声音定位后,由于定位精度与麦克风数量及相对距离有关,并且由于MCU自身计算速度及内存空间大小的限制。我们最终采用六个麦克风模块用于确定信标的角度信息,并与无线收音模块配合确定信标的距离信息。通过麦克风计算出的360度的角度范围,结合H车模麦克奈姆轮全向运动的特点,实现灵活的寻标切标任务。

根据小车底盘运动状态解算出四个麦克纳姆轮的转速,再通过编码器脉冲计数后得到的速度反馈信息,通过PWM波以及PID实现电机速度的控制,便可实现小车的全向运动。再通过陀螺仪得到的角速度值可以实时估算出小车偏角,并利用角速度及偏角信息对车辆控制进行优化。

系统中的OLED以及五向按键可以方便调整参数、调试小车。

下图所示为系统框架的设计,根据框架去设计相应的电路系统、机械系统等。

▲ 图2.1 系统框架

▲ 图2.1 系统框架

2.2 车模整体布局

若将小车按照功能细分,可分为主控模块、图像处理模块、电源模块、电机驱动模块、其他传感器模块。由于本届信标组比赛只允许使用H车模进行比赛。对于麦轮的运动解析一般是基于几何中心进行解析,而且对于声源定位的角度信息也基于小车的几何中心,所以小车的整体布局对于其性能是存在一定影响的。一部分布均匀、稳定的车模是必不可少的。同时在布局时要尽量让重心与车模几何中心接近,因此电路主要被分成三部分,分为主控模块、电源驱动模块和麦克风转接模块。三块电路板之间通过FPC排线进行连接。

▲ 图2.2 车模整体布局

▲ 图2.2 车模整体布局

 

第三章 车模机械结构设计


3.1 编码器的安装

电机速度的获取对于电机转速的控制是必不可少的。同时考虑到TC264所带的GPT12的脉冲计数功能,我们采用了龙邱的迷你mini512线编码器,该编码器采用增量式测速,直接方向输出,兼容正交解码。使得仅使用一块TC264便能够简单的实现四个电机的同时测速。编码器固定于配套的编码器支架上,固定上来说比较简单。但编码器齿轮、电机齿轮、轮胎齿轮间距的调节至关重要。尽量使得传动齿轮之间保持平行,传动部分轻松、流畅,并在齿轮间涂抹润滑脂尽可能减弱齿轮传动间的噪音。

▲ 图3.1 编码器安装

▲ 图3.1 编码器安装

3.2主要传感器的固定

3.2.1 摄像头的安装固定

由于只能采用单个基于NXP的OPENMV摄像头,为了使得H车前后车头调试方便,我们利用舵机对摄像头进行旋转。对于摄像头的仰角的调整,我们的调整原则是能够看到尽量远的信标的同时,也要保证障碍物识别的ROI区域内的干扰项尽可能的少。摄像头固定的杆子采用了轻便坚固的碳纤维管作为安装舵机的材料,再用底座与3D打印支架将摄像头固定下来。摄像头仰角,则由3D打印的支架的斜面倾角决定。

▲ 图3.2 摄像头的固定

▲ 图3.2 摄像头的固定

3.2.2 麦克风及无线收音模块的安装固定

因为各麦克风与小车几何中心的相对位置对角度解算有着至关重要的影响,所以麦克风位置必须精确固定,我们利用麦克风转接盘使六个麦克风模块的咪头均匀分布于以小车几何中心为原点,以14cm为半径的圆周上。并且通过模块中自带的两个定位孔将其固定在转接盘上。

无线收音模块则没有安装位置要求,但为了保证收音效果理想,模块上应焊接天线,并且天线尽可能竖直朝上。因此我们将天线固定于碳纤维杆的上方,并且尽可能地伸直向上,具体见图3.3。

▲ 图3.3 麦克风及无线收音模块的安装固定

▲ 图3.3 麦克风及无线收音模块的安装固定

3.3 系统电路板的固定

小车中系统电路板的固定是非常重要的,我们的三块板子间是用尼龙柱架构成三层结构,之间通过FPC排线及翻盖式FPC座进行连接。这样的连接方式使得板子间连接稳定且连接线轻便易于梳理。

电源驱动模块和电池保护板模块固定见图3.4,主控模块和麦克风转接模块的固定见图3.5。
▲ 图3.4 底层电路板固定 图3.5 上层电路板固定

▲ 图3.4 底层电路板固定 图3.5 上层电路板固定

3.4 车头的设计

因为15届信标改为扁平状,对于车头的要求很高,我们通过行程开关防止我们小车冲上信标。但原有开关的触发区域较小,且因为车模长度限制无法前伸太多,导致只是将其简单安装于车头较难触发,因此我们利用SOLIDWORKS软件自行设计传动装置,使其能稳定触发后置的开关。

车头具体结构如图3.6,其中白色固定支架用于安装两个行程开关及两个弹簧固定件,红色件则以车底盘为导轨,将前方碰撞的力传给后方行程开关。

▲ 图3.6 车头具体结构

▲ 图3.6 车头具体结构

车头底部安装有固定件,用于规范红色传动件的运动方向及防止车头因信标斜面导致的斜向上的力使下方传动件弯曲而卡住。具体见图3.7。

▲ 图3.7 车头底部结构

▲ 图3.7 车头底部结构

3.5 吸音棉结构的设计

因为H车的麦克纳姆轮对地摩擦力较小,所以运动时轮子噪声与齿轮噪声对于声源定位的运算影响较大,所以我们采用吸音棉包裹每一个轮子,并且在麦克风转接盘的底部安装吸音棉,同时用吸音棉包裹麦克风模块,使下方轮子产生的噪音尽可能地被吸收,使麦克风接收到的只有上方信标发出的声音信号,提高信噪比,使小车定位更加准确。具体结构可见前文图2.2。

 

第四章 硬件电路设计


4.1 硬件电路框架设计

从最初进行硬件电路设计时我们就既定了系统的设计目标:可靠、高效、简洁,在整个系统设计过程中严格按照规范进行。可靠性是系统设计的第一要求,我们对电路设计的所有环节都进行了电磁兼容性设计,做好各部分的接地、屏蔽、滤波等工作,使本系统工作的可靠性达到了设计要求,采用IR2104结合MOS管的驱动电路具有稳定高效的特点,在硬件设计过程中为了尽量减轻整车重量,降低模型车的重心位置,应使电路设计尽量简洁,尽量减少元器件使用数量,缩小电路板面积,使电路部分重量轻,易于安装。我们在对电路进行了详细分析后,对电路进行了简化,合理设计元件排列、电路走线,以达到简洁的要求。
▲ 图4.1 硬件电路框架设计图

▲ 图4.1 硬件电路框架设计图

4.2 电机驱动电路设计

驱动电路为智能车驱动电机提供控制和驱动,这部分电路的设计要求以能够通过大电流为主要指标。驱动电路的基本原理是 H 桥驱动原理,目前流行的H 桥驱动电路有;集成半桥电路,如 BTS7960等;MOS 管搭建的 H 桥电路,如 IR2104。我们对种两电路都进行了搭建并测试,最终我们采用IR2104驱动芯片结合IRLR7843MOS管的H桥双桥驱动实现将芯片产生的电机控制信号转换成电压控制电机转动,经实践,由IR2104与MOS管搭建的电路在维护维修以及稳定性上有更大的优势。
▲ 图4.2 电机驱动电路原理图

▲ 图4.2 电机驱动电路原理图

关于IR2104的资料,经查阅如下:

关于IRLR7843的资料,经查阅如下:
▲ ##gf

4.3 系统电源电路设计

由于规定比赛采用一组电池供电,为各个电路模块提供稳定的直流电源,保证各个模块稳定工作。电源模块为小车系统的其他各模块提供所需要的电源。设计中,除了需要考虑电压的范围和电流容量等基本参数外,还要在电源转换效率,降低噪声,防止干扰和电路简洁方面进行优化。可靠的电源方案是整个硬件电路稳定可靠运行的基础。全部硬件电路由两块3.7V、2600mAH 的可充电锂电池提供,而各个系统硬件需要不同的电压来进行供电,所以我们采用的电源电路包含了多种稳压电路,将电池电压转换成各个模块所需要的不同的电压。7.4V 电池电压直接接到电机启动模块,5V为速度传感器供电、摄像头,摄像头,舵机等,3.3V为单片机、OLED屏幕、麦克风阵列供电。

通过LM2596S-ADJ芯片对 7.4V 稳压得到 5V 电压。

对于3.3V的降压,出于和5V电源相同的考虑,我们选择了LM2596S-3.3芯片作为我们的3.3V降压芯片,。

对于驱动芯片所需的12V电压,我们采用了LM2577-ADJ芯片实现稳定的12V电压输出。

▲ 图4.3 电源模块原理图

▲ 图4.3 电源模块原理图

4.4系统主板电路设计

系统主板核心电路分为滤波电路,供电电路,时钟电路,复位电路和下载电路。滤波电路将减少由于其他用电原因导致的电压不稳定以及脉冲冲击信号对芯片供电的影响。由于芯片需要1.3V参考电压,通过LM2596芯片将3.3V转化为1.3V实现。下载方式采用DAP下载器对芯片进行下载以及上位机调试。

▲ 图4.4 主控板系统电路设计图

▲ 图4.4 主控板系统电路设计图

4.5 系统外部接口电路设计

编码器,舵机和陀螺仪采用排针直插设计,电机信号,主控板供电,摄像头和麦克风盘的连接采用FPC0.5mm软排线设计

▲ 图4.6系统外部接口电路

▲ 图4.6系统外部接口电路

4.6 OLED按键电路设计

v见图4.6,采用三个普通按键和一个五向按键构成按键电路,OLED采用排针直插的方式安装在主控板上

4.7 摄像头转接板电路设计

为了实现实时避障,我们选择1个OPENMV的摄像头作为我们最主要传感器,由于需要保证OPENMV的稳定性,我们为摄像头制作了一块转接板,将摄像头用FPC软排线和主控板连接,既减轻了重量,又使稳定性有了较大的提升.由于摄像头的5v供电对电压稳定的要求比较高,否则会出现摄像头复位或者卡死的情况,于是在转接板上除了所需引脚的引出外,添加了LM2577芯片构成的稳压电路,确保摄像头供电的 稳定。
▲ 图4.8摄像头转接板电路设计

▲ 图4.8摄像头转接板电路设计

4.8 麦克风转接盘电路设计

麦克风盘主要用于固定六个麦克风的位置,并将其通过软排线与主控板相连进行供电以及信号的传输。
▲ 图4.9麦克风转接盘电路设计

▲ 图4.9麦克风转接盘电路设计

4.9 小结

在进行硬件设计的过程中,首先要解决需求问题,要将几个部分通过合适的方式连接起来成为一个共同运作的整体,同时要将定位孔合理规划,使各个板子能牢固紧密的安装在底盘上的同时也要考虑在调试过程中要尽可能方便通过几个按键与OLED配合进行参数修改。在能解决基本需求的基础上合理考虑走线的粗细,使大电流能顺利通过不会烧坏的同时要让板子布局的尽量美观,对称,每次投板前要仔细检查更改的地方是否合理,是否能解决问题,注意滴泪覆铜以及设计规则检查,确认准确无误。通过一次次的修改和完善,配合上软件的需求,虽然无法做到完美,但要尽可能精益求精做到最好。完整电路见下图4.10


 

第五章 软件设计


5.1 软件整体框架

相比于以往使用过的ARM内核的芯片,这一届信标组所要求的MCU最大的不同便是双核,这使得我们可以同一时间执行两个不同的操作。而且经查阅我们所用的TC264芯片中CPU1型号为TC1.6P,运算速度及内存均超过TC1.6E的CPU0,因此我们选择将耗时较长,运算复杂的声源定位程序放入CPU1中进行运算,而底层控制则交由CPU0进行,防止运算时间过长导致控制滞后。
▲ 图 5.1 软件框架

▲ 图 5.1 软件框架

5.2 声源定位

本次比赛最大的改变便是采用了声音作为信标的定位信息,这需要对多个麦克风采集值进行信号的处理与分析。在传感器的选择上我们使用36dB的咪头配合MAX4468进行放大,而FM信号则由RDA5807模块处理。

5.2.1 声源角度计算

我们基于六元麦克风阵列时延差值进行角度解算,时延估计则采用传统GCC-PHAT-ργ的算法[5],将基准麦克风与其余五个麦克风分别进行时延估计,若此时基准麦克风均领先于其余麦克风,则可以认为声源角度位于该基准麦克风所对应的60°内,最后利用几何关系列解方程组即可,最终角度与时延值间公式如图5.3。利用向量关系,可求出任意麦克风作为基准麦克风与其他麦克风之间的时延值,结论同上,可以做到平面内全角度的声源定位

5.2.2 声源距离计算

相对于角度计算,声源距离仅需一个麦克风传感器与无线收音模块配合即可,因为FM信号为电磁波,其传播速度为光速,相对于声速而言可以认为从信标到小车无时延,因此我们只需要计算出麦克风模块采集到的波形与无线收音模块传回的波形进行时延估计,再将求得时延值与声速相乘即可估算出小车距离信标的距离。

5.2.3 常见问题

噪音的影响对于时延计算有很大的影响,并且随着车轮转速的提高,齿轮及麦轮的噪音也会相应提高,因此我们对于角度计算中各个麦克风模块之间的时延值的错误率也会随着速度提高而升高,而利用错误的时延值计算出的角度也极大概率是错误的值,如果不加以处理和过滤便会使车在错误的方向上运行,使小车运行不稳定。

我们对此的解决方案是利用六个麦克风固有的几何关系排除掉理论上不可能出现的时延组合,具体为麦克风时延值不应超出其本身物理距离,并且计算出的声源位置应位于麦克风整列的六边形外侧,同时受其大小限制,各时延值绝对值之和应大于一定阈值。

5.3 图像处理

图像处理模块的感知芯片是OV7725,图像格式设置为RGB565格式的彩色图像,图像大小设置成320x240,在图像处理的任务中,核心便是基于LAB色彩空间的色块查找。

5.3.1 i.MX RT1060的可编程视觉模块

该模块主控芯片采用NXP i.MX RT1062,600MHz Cortex-M7,600MHZ的主频使得其即使在分辨率为320x240的彩色图像上进行色块识别也能具有较高的速度。集成了Micropython运行环境,使用开发效率高的Python编写应用程序。同时其兼容Openmv IDE 的调试,对于平时图像的调试工作高效直观

5.3.2 LAB色彩空间

LAB色彩空间(Lab color space)是颜色-对立空间,带有维度L表示亮度,a和b表示颜色对立维度,基于了非线性压缩的CIE XYZ色彩空间坐标。对于RGB颜色空间,LAB空间更接近人类的视觉感受,其中的L分量匹配人类对于亮度的感知,用于表示像素的亮度,取值范围是[0,100],表示从纯黑到纯白;A分量表示从红色到绿色的范围,取值范围是[127,-128];B分量表示从黄色到蓝色的范围,取值范围是[127,-128]。
▲ 图5.2 LAB色彩空间

▲ 图5.2 LAB色彩空间

5.3.3 常见问题

在调试过程中。会发现信标的色彩以及场地灯光在地面上的反光的色彩有一定差别。利用这个特性配合偏振片,可以解决反光问题。但由于采用色块寻找银色弧面,这样的话干扰项会比较多,因此除了选择的ROI重要之外,对于其色块形状等也应有限制。

建议使用黑色电工胶布粘上模块背面的扩展口(粘在M12底座的两个定位螺丝口中间),背面扩展口是会透光的,严重影响图像的效果。

5.4 底层控制算法

5.4.1 位置型PID

四驱的麦可纳姆轮是全向运动的,运用位置型PID结合信标的角度信息,实现了向信标移动的闭环控制,具体步骤是先通过位置型PID控制计算出输出值,再将输出值带入到运动解析公式中计算出四轮速度。由于四驱的麦可纳姆轮小车在转向上是存在惯性的,不像舵机转向一样即时迅速,因此结合陀螺仪到位置型PID中,用水平角速度替换微分项会有很好的效果。

5.4.2 增量式PID

电机如果采用开环控制,由于控制系统中扰动的存在,电机往往是与期望值有较大偏差的,采用增量式PID闭环控制,能够减小扰动的影响,使系统的输出符合预期要求。由于惯性的存在,小车对于加减速的控制尤为重要,快速且稳定的加减速是需要注重的问题。

5.4.3 丢失处理

因为随着速度增加,角度运算正确率下降,我们便会丢失当前时刻的角度信息,如不加以处理,此时小车便处于失控状态。对此我们利用陀螺仪取得的角速度值与定时中断可以估算出小车自身的方位角,并且在新的正确角度得出前,利用上一次取得的正确值与自身方位角结合,便可以使小车在没有实时角度信息时仍可以向信标定向运动。因为时延估计的正确率与声源和传感器的距离也有很大的关系,在小车距离信标较远时,由于噪声干扰可能出现连续较多值均为错误值,此时应控制小车减速或停车,以此重新取得一次正确的角度信息。
 

第六章 开发及调试工具


6.1 TASKING IDE

开发工具使用的TASKING,目前可以为英飞凌8位,16位,32位单片机提供编译工具。TASKING_TriCore-VX是专用于英飞凌TriCore系列的编译器,也是AURIX开发使用最普遍的开发工具,目前我们所使用的版本为TASKING_TriCore-VX_v6.3r1。
▲ 图6.1 IDE 界面

▲ 图6.1 IDE 界面

6.2 Openmv IDE

Openmv IDE具有一个强大的文本编辑器,调试终端,帧缓冲区查看器和直方图显示。OpenMV IDE使得我们的OpenMV图像识别模块易于编程。

▲ 图6.2 工作台界面

▲ 图6.2 工作台界面

在工作台界面的右上角是图像缓冲区,能够直观的对图像进行分析。右下角的统计区域可以选择不同色彩空间,动态显示图像的统计信息。可以统计所有的区域, 也可以选中目标区域,只统计区域内的图像信息。具有RGB颜色空间、LAB颜色空间、YUV颜色空间、以及灰度色彩空间的信息统计。

▲ 图6.3 统计区域

▲ 图6.3 统计![](https://img-blog.csdnimg.cn/20200831224008949.png#pic_center ) 区域

还有阈值编辑器,通过拖动滑动条,用于色块识别,方便快捷地调整阈值。

▲ 图6.4 阈值编辑器

▲ 图6.4 阈值编辑器

 

第七章 主要参数说明


7.1 参数表



 

第八章 总结


从决定参加全国大学生智能车竞赛那一刻,从刚开始的大家各自学习单片机、图像、硬件等基础知识。到后来的开始组队,并合作。从查找资料,绘制电路板,程序一个个模块的建立。在这份报告中虽然不能完全体现出我们所付出的精力以及时间,但仍然希望我们的这份报告能对他人有所启发以及帮助。同时也存在各种各样的不足,因为这一届规则改动较大,准备较为仓促,我们在声源距离的计算上没有找到一个良好的算法,在信标距离较远的时候,无论麦克风接收值还是FM信号接收都存在问题,也没有找到很好的方法进行滤波。而且我们的算法受速度影响较大,提速后小车定位便会出现问题。

在实际测试中,RDA5807模块在两米内的表现较好,但随着距离的加大,输出波形明显变小,在接近三米的距离时便基本完全接收不到信标的信号,因此小车若距离信标两米外则距离信息完全无法正常使用。同时在速度的测试方面,小车低速在1.8m/s时运行较为流畅,可以较为稳定的执行切灯任务,但低速增加至2m/s时,小车在近灯处距离角度均会出现较大波动,撞灯概率大大增加,且近灯减速也会出现问题,导致切灯后冲出赛场的几率增加。

总之,我们的信标方案仍有许多待改进的方面,也希望能够为我们提出宝贵的意见指正。竞赛将会成为我们的奋斗的回忆,我们仍将在奋斗的道路上前进。
 

※ 致谢


从加入到学院科协开始,我们便投入到了比赛的准备中。在这段时间,也碰到了大大小小的困难。从一个个模块的学习,到将模块结合起来使用完成信标组比赛的任务。虽然会被困难所扰,但这一路走下来我们所收获的却是颇为丰富的。特别感谢学校对于竞赛的大力支持,也特别感谢一路下来学长以及老师的指导帮助。

  • 6
    点赞
  • 54
    收藏
    觉得还不错? 一键收藏
  • 打赏
    打赏
  • 0
    评论
杭州电子科技大学ACM是指杭州电子科技大学(Hangzhou Dianzi University)学生所组成的参与国际大学生程序设计竞赛(ACM-ICPC)的团队。ACM-ICPC是全球规模最大、最具影响力的大学生程序设计竞赛,由美国计算机协会(ACM)主办。 作为杭州电子科技大学的代表,ACM团队的成员经过选拔和培训,是学校优秀的计算机科学与技术专业学生。这些学生掌握了扎实的算法和编程基础,具有丰富的解决问题的能力和团队协作精神。 参加ACM竞赛对于学生们来说,不仅是锻炼自己的编程能力和算法思维,更是一个展示才华和拓宽视野的平台。比赛中,团队成员将面对各种难题,需要快速思考并给出高效的解决方案,这对于他们的综合素质和实践能力是一个重要的考验。 杭州电子科技大学ACM团队在比赛中取得了优异的成绩,多次进入国际赛区的决赛,甚至获得了国际冠军头衔。这不仅彰显了团队成员的个人才华,更体现了学校培养优秀计算机人才的实力和质量。 ACM竞赛的参与不仅对于学生个人的成长和发展有积极的影响,也对学校提升学科建设和促进学院声誉有着重要的意义。杭州电子科技大学ACM团队的出色表现是学校计算机学科实力的一大体现,也是学校教育理念和教学质量的有力证明。 总的来说,杭州电子科技大学ACM是一支备受期待和骄傲的团队,他们的参赛经历和成果不仅彰显了他们个人的才华,更代表了学校在计算机科学与技术领域的卓越实力和卓越教育质量。

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

卓晴

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值