锐单电子商城 , 一站式电子元器件采购平台!
  • 电话:400-990-0325

智能车竞赛技术报告 | 双车接力组 -哈尔滨工业大学 - 紫丁香六队

时间:2022-11-17 13:00:00 高分辨率伺服型加速度传感器

简 介: 本文详细介绍了第十六届全国大学生智能汽车竞赛双车接力组哈尔滨工业大学紫丁香六队的系统方案。我们的团队选择使用官方指定的D模型和F模型来建立直立和三轮模型,32位单片机由智能微电子公司生产 MM32F3277G9P对于核心控制器,智能汽车需要识别道路两侧的黑线,在三岔区完成接力任务,并尽可能快地稳定地完成整个比赛。智能车采用CMOS相机检测轨道信息,根据黑色边线提取轨道中线WIFI通信模块通过编码器监控车辆的实时速度,实现两辆车的通信;使用PID控制算法调节电机转速,实现运动过程中车模速度和方向的闭环控制;使用上位机、按钮、OLED 模块等调试工具,大量的硬件和软件测试。实验结果表明,系统设计方案是可行的。

关键词 MM32F3277G9总钻风灰度摄像头PID陀螺仪

学 校:哈尔滨工业大学
队伍名称:紫丁香六队
参赛队员:吴新奥 谢建山?
张佳闪 程若思?
带队教师:张依???
?

第一章


1.1本文结构

??本文分为九章。第一章主要介绍比赛背景和第十六届双车接力组规则;第二章是我们双车接力系统的总体方案概述;第三章重点介绍系统中涉及的硬件设计方案和原则;第四章从智能汽车系统的机械结构出发,详细阐述了智能车系统各部分机械结构的安装和调整思路;第五章介绍了智能车系统使用的内容PID控制系统;第六章解释图像处理;第七章主要介绍测试系统;第八章简要报告了智能汽车的一些物理参数;第九章是对智能汽车竞争的总结和展望。

1.本次双车接力组比赛规则简介

??双车接力组要求制作两个车模,两个车模分别使用三轮车模(F车模)和两轮车模(D、E车模)允许使用各种电磁、红外光电、摄像头、激光传感器传感器进行轨道和环境检测。

??车模停在三岔路口一岔路口中间。车模从车库出发,到达中间车模位置时,将车上尺寸不小于40mm的球传递给第二车模,然后停止原地等待。第二辆车模在三岔路口的另一个岔路口,只要距离三岔路口一米以上。第一辆车可以重新启动并返回车库。直立车模允许在两车接力过程中暂时倒地。如图1.1。

▲ 图1.1 双车接力组任务示意图

??比赛时间从第一辆车驶出车库开始,直到第一辆车回到车库停止。如果第一辆车最终没有回到车库,则根据最长时间(120秒)记录结果。

??传球体可以使用标准乒乓球或高尔夫球。只要直径不小于40mm,其他材质的球体也可以自制[1]。
??受疫情影响,决定采用线上比赛模式完成第十六届东北智能车竞赛和全国总决赛,根据统一线上比赛结果确定东北赛区奖项和相应的全国比赛奖项。遵循易铺设、积分制、创新等基本原则,自行设计线上赛道。对赛道元素形成的任务给出一定的评分标准,并给出完成赛道运行的标准。未完成赛道元素的,不扣分。

??赛道铺设所占据的场地面积必须能够使用一个矩形进行覆盖。矩形的面积不超过35平方米。必须具有三岔路口、十字路口、环岛、坡道、车库。

??这些元素通过直道和弯道连接成封闭的轨道。轨道元素之间的距离和顺序没有限制。这些元素最多出现两次[2,3]。

▲ 图1.2 赛道设计示意图[2]

??最后,通过计算从比赛开始到2分钟结束,或者模型故障暂停比赛位置的所有得分之和来确定比赛结果。

第二章 总体设计方案


??章节主要介绍了双车接力系统的总体方案设计。在下一章中,智能汽车控制系统将从硬件系统实现、机械结构设计、软件系统调试、图像策略方案和调试工具五个部分进行深入、详细的介绍和分析。

2.总体方案介绍

??双车接力组的任务由两部分组成,一部分是两车完全稳定运行,另一部分是两车接力稳定。受疫情影响,更改后的规则使策略更加多样化。基于这样的背景,我们设计了系统的整体思路框图如图2所示.1所示。

▲ 图2.1 双车接力系统的整体思路

第三章 统一机械设计方案


3.机械结构13轮车

3.1.1 重心

??三轮车模的重心影响车模的加减速性能和最大转弯速度。采用锂电池,适当增加配重,可尽可能降低车辆重心,提供足够的加速度,满足急转弯的需要。三轮车的加减速来自其机械结构的重量分配。当重心向后时,有利于转弯,但容易抬头,因此权衡重心的位置对三轮车尤为重要。我们三轮车模的重心位于电机附近。

3.1.2 重量

??对于三轮车来说,重量越轻越好。同时,为了满足低重心的需要,我们将主控制和驱动分开,尽量减少复杂的外部接线,尽量使用铝螺钉螺母而不是钢材料,尽量减少PCB 同时,接球装置应尽可能使用轻质材料。

3.2直立车的机械结构

3.2.1 重心

??直立车模的重心也会影响车模的加减速性能和最大转弯速度,尤其是转弯是否抬轮。我们采用了第十届重庆大学不慢队的电池支架方案,并适当折断。使用的锂电池可以尽可能减少车辆本身的重心,满足高速不撞坡的要求。在此基础上,我们将发球装置简化为磁铁,简单美观,不会影响结构。

3.2.2 重量

  对于直立车来说,重量越轻越好,这样其转动惯量小过弯将更加迅速。同时为了满足重心低的需求,我们将主控和驱动分开,尽可能的减少使用复杂的外部接线,尽可能使用铝制螺丝螺母而不是钢制材料,尽可能减小PCB 板体积。

3.2.3 重量分配

  直立车的加减速来源于其机械结构的重量分配,有无零位决定了该车模能否静止站立。一般来说无零位的车模加速会快,但是这样的车模无法在运行时适当减速以保证安全,所以我们的车模具有机械零位。

3.3轮胎处理

  要把速度提升到2.5m/s以上,轮胎是不可避免的一个环节。我们对于轮胎的处理是将胎纹磨浅以增大接触面积,并在其上涂抹软化剂,对轮胎边缘用硅橡胶进行了密封。

 

第四章 统硬件设计方案


4.1 总钻风灰度摄像头

  如图4.1为我队使用的摄像头:总钻风灰度摄像头。相比于黑白摄像头,灰度摄像头能够提供更多的赛道信息,且对于不同的比赛环境,适应性较强。

  由于今年内的规则规定车模外轮廓高度不能超过20cm,使得摄像头的前瞻距离显著的下降,为了应对这种情况,我们选择使用了140度广角镜头来解决视野太小的问题。

▲ 图4.1总钻风摄像头   

4.2 MM32单片机

  如图4.2所示为本小组采用的 MM32 单片机。

▲ 图4.2 MM32 单片机   

4.3 ESP8266通信模块

  ESP8266拥有两个 UART 接⼝,2 个 UART 接⼝的数据传输均由硬件实现。数据传输速度可达 115200*40(4.5 Mbps)。与NRF模块相比较,通信更加快速,但较长时间的通信会引起芯片发烫,从而停止工作,接收不到信号。使用如图4.3所示WIFI模块。

▲ 图4.3 ESP8266通信模块

4.4 测距模块

  TFmini_S 是一款小型激光雷达模组。主要实现实时、无接触式的距离测量功能,具有测量准确、稳定、高速的特点。TFmini_S有四根连接线,分别是5V电源线、GND、接收线(RXD)、发送线(TXD),其中开关量信号通过发送线(TXD)给出,与GND间形成参考电压。

▲ 图4.4 TFmini_S

  TFmini Plus 是基于 TFmini 的升级项目,它是一款小型化,单点测距的产品,基于 TOF(飞行时间)原理,配合独特的光学、电学、算法设计,主要实现稳定、精准、高灵敏度和高速的距离测量的功能。产品本身除了具有 TFmini 的低成本、小体积、测距远等特点外,还增加了 IP65 等级防护,测距精度更高,对于室外强光、不同温度、不同反射率等不同环境下适应性更强,更低功耗,探测频率也更加灵活。产品同时兼容 UART 和 I2C 通信接口,可通过指令进行切换。

▲ 图4.5 TFmini Plus

4.5 PCB绘制

  对于pcb的绘制,智能车要求较为简单,基本不用考虑各类的信号干扰、热功率等问题,但是为了提高调车、跑车的效率,在pcb绘制中应该考虑各类交互设备的布局,固定孔的位置,接插口的稳定性,并在此基础上尽可能的减小板子大小,做到小巧精干。

4.6 pcb电路原理介绍

4.6.1 7.2V转5V

  本小组使用稳压芯片 TPS 76850 输出5v电压,用于激光、单片机等供电。原理图如图4.6所示。

▲ 图 4.6 转压电路 7.2v-5v 原理图

4.6.2 5V转3.3V

  如图 4.7 所示,本小组使用稳压芯片 TPS 76833 输出电压 3.3v,用于 OLED、蜂鸣器、陀螺仪、编码器、摄像头、WIFI模块等供电。

▲ 图4.7 转压电路 7.2v-3.3v 原理图

4.6.3 双驱动电路

  选择已做好的集成IC的电机驱动芯片:BTN7971。使用两片 BTN可以构成一路驱动电路,如图 4.8所示。

▲ 图 4.8 电机驱动原理图

 

第五章 PID控制


5.1 PID控制概述

  在工业控制过程中,按被控对象的实时数据采集的信息与给定值比较产生的误差的比例、积分和微分进行控制的控制系统,简称PID控制系统。PID 控制具有原理简单,鲁棒性强和实用面广等优点,是一种技术成熟、应用最为广泛的控制系统。

  在实际应用中根据实际工作经验在线整定PID的参数,往往可以取得较为满意的控制效果。数字PID控制则以此为基础,结合计算机的计算与逻辑功能,不但继承了PID 控制器的这些特点,而且由于软件系统的灵活性,使PID算法可以得到修正更加完善,变得更加灵活多样,更能满足生产过程中提出的多种控制要求。

  在实际应用中,可以根据被控制对象的特性和控制要求灵活地改变其结构,取其中一部分环节构成控制系统。如比例控制、比例积分控制、比例微分控制等。PID 控制从 20 世纪 30 年代末期出现以来,已成为模拟控制系统中技术最成熟、应用最广泛的一种控制方式。技术人员和操作人员对它也最为熟悉。在工业过程控制中,由于难以建立被控对象精确的数学模型,系统的参数经常发生变化,所以运用控制理论分析综合代价比较大。PID 控制技术结构简单,参数调整方便,其实质是根据输入的偏差值,按比例、积分、微分的函数关系进行运算,运算结果用以输出进行控制。它是在长期的工程实践巾总结出来的一套控制方法,实际运行经验和理论分析都表明,对许多工业过程进行控制时,这种方式都能得到比较满意的效果。

  在计算机用于工业控制之前,气动、液动和电动的PID模拟控制器在过程中占有垄断地位。在计算机用于过程控制之后,虽然出现了许多只能用计算机才能实现的先进控制策略,但资料表明,采用PID的计算机控制回路仍占 85%以上。用计算机实现PID控制,形成了数字PID控制技术。它并非只能简单地重现模拟PID控制器的功能,而是在把模拟PID控制规律数字化的同时,结合了计算机控制的特点及计算机逻辑判断功能,增加了许多功能模块,使传统的PID 控制更加灵活多样,更能满足生产过程提出的要求。数字PID控制器的设计是一种连续化设计方法,这种连续化设计技术要求在采样周期化比较短的情况下,才能达到满意的控制效果。

5.2 PID原理

【通用原理部分,此处省略3000字...】

5.5 PID在智能车中的应用

  首先,电机的控制是通过编码器返回的实时速度与期望速度进行PID调节,实现速度上的闭环,从而实现小车的速度与期望的速度实现真正的相同。这里我们采用了增量式PID进行调节如图5.1,当小车比期望速度慢时,通过计算给出一个比较大的占空比,使电机加速旋转,当小车比期望速度快时,通过计算输出一个小的占空比,使电机减速,从而实现速度上的跟随。为了提高小车的速度,我们采用了直道加速弯道减速的策略,通过图像给回来的偏差进行分段,当偏差比较大时,认为此时为弯道,需要减速,此时将期望速度放慢,当偏差较小时,认为此时为直道,从而加大此时的期望速度,从而实现直道的加速。在一些特殊元素处,实现速度的特殊控制,如在环岛处,将速度设定为恒定速度,从而使小车的运行更加流畅。

 

第六章 统图像处理


6.1图像预处理

  精细的硬件构造赋予小车“健康的体魄”,是小车跑起来的基础,软件设计则赋予了小车以“灵魂”。我们的小车通过灰度摄像头采集赛道图像信息,通过图像处理算法提取出道路的中线信息,从而使小车沿着道路行驶。

  第十六届双车接力组别要求摄像头高度不超过20厘米。20厘米摄像头采集到的赛道信息很有限,因此我们采用广角灰度摄像头以获得更多的赛道信息。我们的图像预处理部分主要包括将灰度图二值化,去除车头,除去噪点,判断出有效路径。单片机运算速度有限,我们采用固定分块阈值将图像二值化,并通过滤波算法消去噪点,获得一副客观的黑白图片。

6.2 直道处理赛道中心线提取

6.2.1 原始图像的特点

  由于摄像头自身的特性,图像会产生畸变,这使得摄像头看到的信息不真实,同时由于摄像头高度较低,图像失真较严重。同时因为电路及摄像头本身特性,图像会产生很多噪点,因此我们在采集完图像信息后进行简单的软件去噪处理。图像大小为120行188列。

6.2.2 直道赛道边沿提取

  边沿提取算法的基本思想如下:

(1) 首先判断边沿的初始位置,即近处某行左右边沿。
(2) 根据初始位置进行爬边操作。
(3) 对爬边得到的边沿信息构造中线。
(4) 进出圆环和岔路的时候,进行特殊处理。

6.2.3 赛道中线提取

  对于已经提取出两条边线的情况下,我们采用赛道两边映射法,提取出不失真的中线。处理图像如图6.1。

▲ 图6.1 提取出的中线(红色)

6.2.4 弯道偏差获取策略

  在弯道中的赛道获取中心线比较困难,若处理不好会在连续弯道中造成串道或者转弯不连续的问题。所以我们对此另辟蹊径。
  因为图像本身具有梯形失真,并且会有丢边现象,我们采用单边平移的方式进行弯道处理。即将爬边得到的单边按照一定方向按照赛道宽度平移。

6.2.5 特殊元素处理

(1)圆环

  对于圆环,我们采取了“入口识别、单边寻迹”的方法。在满足电感的条件下,通过一侧是直线,另一侧有折点的方式判断圆环,然后单边循迹,若某侧是直线,循迹则按照直线。

(2)十字

  通过爬边得到的边沿,对其进行找折点的处理,由于摄像头限制,可能无法准确找到十字对面的折点,对于这种情况,按照折点附近几行的斜率给出中线。

(3)岔路

  岔路与十字同样具有两个折点,所以在近处找到折点后,继续向远处搜寻对面的分叉点,并用近处折点附近的赛道边界形状以及电感辅助判断。正确识别后,采用单边循迹的方式给出中线。

 

第七章 统调试


7.1 开发调试工具

  软件开发工具选用的是 Embedded Workbench for ARM。是 IAR Systems 公司为ARM 微处理器开发的一个集成开发环境(下面简称IAR)。比较其他的ARM开发环境,IAR 具有入门容易、使用方便和代码紧凑等特点。它为用户提供一个易学和具有最大量代码继承能力的开发环境,以及对大多数和特殊目标的支持。嵌入式 IAR Embedded Workbench 有效提高用户的工作效率,通过IAR工具,可以大大节省软件调试时间。调试界面如图7.1所示:

▲ 图 7.1 IAR 调试界面

7.2 人机交互工具

  在调试过程中需要不断地修改变量的值来达到整定参数的作用,对此我们选用了液晶屏配合按键和拨码开关的调试方法。此外,比赛的时候,我们同样用这个模块进行对参数的修改。

  其中液晶屏我们选用 OLED 液晶,该液晶具尺寸小,高分辨率等特点。界面如图 7.2 所示。按键采用五向按键其便于操作并且节省空间。设计五向按键以及4个拨码开关进行调参,显示,方案选择等部分。

▲ 图 7.2 液晶屏显示界面   

7.3 上位机调试

  车在同样的赛道上走过的路都是不一样的,所以无论怎么考虑车的状态都是不够完全的,因此需要对运行中的车进行实时监控。为了解决这个问题,我们使用wifi模块配合上位机进行实时观测车模运行状态。如图 7.3 所示。

▲ 图 7.3 上位机示波器图像

 

第八章 能车主要参数说明


8.1 直立车模

  • 模型车基本参数 长 20.5cm
  • 宽 20.5cm
  • 高 19.9cm
  • 车重 853.5g
  • 功耗 空载 10w
  • 带载 大于12w
  • 电池容量 2200mah
  • 传感器 编码器 2个
  • cmos摄像头 1个
  • 陀螺仪 1个
  • 激光测距模块 1个
  • 电磁杆 1个
  • 除了车模原有的驱动电机、舵机之外伺服电机个数 0个
  • 赛道信息 视野范围 30-150cm
  • 精度 2/13mm
  • 频率 50hz

8.2 三轮车模

  • 模型车基本参数 长 27.5cm
  • 宽 18.5cm
  • 高 19.9cm
  • 车重 1152g
  • 功耗 空载 10w
  • 带载 大于12w
  • 电池容量 2200mah
  • 传感器 编码器 2个
  • cmos摄像头 1个
  • 陀螺仪 1个
  • 电磁杆 1个
  • 激光测距模块 1个
  • 除了车模原有的驱动电机、舵机之外伺服电机个数 0个
  • 赛道信息 视野范围 30-150cm
  • 精度 3/6mm
  • 频率 50hz

 

第九章 结与展望


9.1总结

  要实现对高速行驶汽车的自主智能控制并不是一个简单的自动控制问题,它涵盖了控制、模式识别、力学、光学、电磁学、传感技术、电子、电气、计算机、机械及车辆工程等多个学科。本文采用的控制核心是一款灵动公司生产的 32 位微控制器——MM32F3277G9P,利用了微控制器的强大功能实现了智能小车对路径的自主寻迹,以及在未知环境下,结合一定的算法,实现了对智能小车的高速导航控制,从最终测试结果来看,本系统具有较好的控制性能与对未知环境的适应能力。

  对智能小车系统的自主控制,可以分为三大部分:首先是对路径信息的提取与识别,即智能小车的寻迹;然后是计算并规划路径,得出可以安全行驶的路径;最后是对车模车速的控制,即智能小车的驱动控制。

  此份技术报告中,我们主要介绍了准备比赛时的基本思路,包括机械、电路以及最重要的控制算法的创新思想。在机械结构方面,我们分析了直立车车模设计的一些注意点。在电路方面,我们以模块形式分类,在最小系统、主板、电机驱动等模块分别设计,经过不断实验,最后决定了最终的电路图。在程序方面,我们使用C语言编程,利用开发工具调试程序,经过小组成员不断讨论、改进,终于设计出一套比较通用稳定的程序。在这套算法中,我们结合路况调整车速,做到了直道加速、弯道减速,保证在最短时间内稳定地跑完全程,以及在规定时间内获得尽可能多的分数。

9.2 展望

  能够实际应用的智能车系统的研究十分复杂,需要解决的问题很多,任务非常艰巨,不是一蹴而就的,必须经过长期的理论研究和实践探索才能够取得突破和进展。展望未来,对于我们所研究的这类智能小车,我们认为今后还可在以下几个方面做进一步的研究和提升。
  (1)优化直立车模的结构,今年使用锂电池之后,车模整体重量降低了许多,这也就导致之前的祖传结构并不是最优解,如果权衡重心高低前后与加速度的关系,这点更值得后辈去研究。
  (2)在图像处理方面,可以研究更先进的算法,不过,这需要配合微控制器性能的提升,如果MM32微控制器能够具有更强大的运算能力,可以为之后处理更加贴近真实环境的情况提供了基础。

 


  准备参加第十六届全国大学生智能汽车竞赛开始,我们全队从机械、硬件、控制、图像等多方面点点积累,逐步提高,一点点完成比赛任务,应对比赛规则的变动,日臻完善。在备战过程中,场地和经费方面都得到了学校和学院的大力支持,在此特别感谢一直支持和关注智能车比赛的学校和学院领导以及各位指导老师、指导学长,特别感谢哈尔滨工业大学往届紫丁香六队张舜智、陈永哲、韩轩、刘悦等学长学姐,没有你们就不会有十六届紫丁香六队。同时也感谢比赛组委会能组织这样一项有意义的比赛,祝愿之后的比赛能够更加的公平合理,在赛事组织上能更具有适应性,更加富有趣味性和竞争力。

  我们每一个人从最初的盲目参与,逐渐变成真正的热爱。从比赛流程到比赛规则,从硬件到软件,虽然曾多次遇到困难,但我们不曾想过放弃。面对即将到来的大赛,也许我们的知识还不够丰富,考虑问题也不够全面。但是小车见证了我们努力的过程,凝聚着我们组每个人的心血和智慧,同时在备赛期间这份经验将永伴我们一生,成为我们最珍贵的回忆。

 

考文献


  [1]卓晴.第十六届全国大学智能汽车竞赛竞速比赛规则[EB/OL]. https://blog.csdn.net/zhuoqingjoking97298/article/details/110253008,2020.
[2]卓晴. 第十六届全国大学生智能车竞赛线上比赛-赛前开题[EB/OL]. https://blog.csdn.net/zhuoqingjoking97298/article/details/119529837,2021.
[3]卓晴. 第十六届智能车竞赛总决赛线上比赛赛道设计[EB/OL]. https://blog.csdn.net/zhuoqingjoking97298/article/details/119387104,2021.
[4] 王盼宝. 智能车制作: 从元器件、机电系统、控制算法到完整的智能车设计[M]. 北京: 清华大学出版社, 2017.
[5] 王淑娟,蔡惟铮,齐明.模拟电子技术基础 [M].北京:高等教育出版社.2009
[6] 卓晴,黄开胜,邵贝贝.学做智能车 [M].北京:北京航空航天大学出版社.2007.

■ 附录1 主函数程序:

int main(void)
{ 
        
  BOARD_Init();
  Peripheral_Init();
  Ctrl_Init();
  while(true)
  { 
        
    if (ctrl_start == 0)
    { 
        
      if (imageDispFlag == 0)
      { 
        
        if (clearMenuFlag == 0)
        { 
        
          clearMenuFlag = 1;
          oled_fill(0x00);
        }
        HITSIC_Menu_Disp();
      }
    }

    Main_Beep();
    
    if(mt9v03x_finish_flag)
    { 
        
      fullBuffer = mt9v03x_image[0];
      THRE();
      image_main();
      mt9v03x_finish_flag = 0;
    }
  }
}


● 相关图表链接:

  • 图1.1 双车接力组任务示意图
  • [图1.2 赛道设计示意图2
  • 图2.1 双车接力系统整体思路
  • 图4.1总钻风摄像头
  • 图4.3 ESP8266通信模块
  • 图4.4 TFmini_S
  • 图4.5 TFmini Plus
  • 图 4.6 转压电路 7.2v-5v 原理图
  • 图4.7 转压电路 7.2v-3.3v 原理图
  • 图 4.8 电机驱动原理图
  • 图6.1 提取出的中线(红色)
  • 图 7.1 IAR 调试界面
  • 图 7.2 液晶屏显示界面
  • 图 7.3 上位机示波器图像
锐单商城拥有海量元器件数据手册IC替代型号,打造电子元器件IC百科大全!

相关文章