卓老师,我们是同济TU-Smart团队,前几天看到公众号里在介绍奥迪杯,也很想把参加Carolo Cup卡杯的经验跟大家分享。前几天就开始写了,没想到公众号很快又推文了,提及到了卡杯,所以趁热度赶紧来发给您。至于奖金,高级组第一名4000欧,初级组第一名也有2000欧奖金喔!
缘 起
我们是来自同济大学汽车学院的TU-Smart智能车队。感谢学校的支持和大众中国的赞助,让我们有幸两次参加卡杯比赛,从第一年的小试牛刀到第二年整体方案的全面升级,成长了很多,学习到了很多丰富的车队管理经验。

简 介
德国不伦瑞克工业大学的CaroloCup始于2008年,已经连续举办十数届,从刚开始的小规模竞赛、到德国各工科高校团队同台竞技,到吸引来自波兰、瑞士、美国、中国的团队,比赛内容推陈出新,引领潮流。也得到德国电气工程师协会VDE、德国工程师协会VDI、大众、博士、大陆等组织和企业的大力支持。

比赛LOGO和相关赞助商
其规则限制极少,即不限算力平台、不限硬件平台。相较于AADC奥迪杯提供整套车模并限制软件架构而专注算法设计的马拉松式算法竞赛,卡杯则聚焦于自主、创新、协作等要素。
通常各团队有一年的时间进行准备,在每年二月进行正式比赛。比赛日共两天,第一日是训练(Training)日,各团队可以在现场自由调试,但需按要求完成车模检查。第二日自由调试的同时完成静态答辩,下午五点左右正式比赛。

参赛同学现场调试
尽管限制不多,但同时,有限的规则被严格地执行。比如车辆宽度高度的尺寸限制、遥控最高车速限制、不能有博士研究生参与等。比如这一次我们由于经验不足,电机选用的是穿越机电调,难以满足遥控下最高速度0.6m/s的限制,差点在初审时被拒之门外。

赛事分为基础组和高级组。无论哪个组别都由静态答辩、无障碍环行、避障赛组成。

比赛现场
静态答辩主要考量评价团队的设计细节,如车辆的成本造价、运用的前沿技术、团队的技术传承方案等。
赛道元素
无障碍环行主要是考察车辆基本功能,需要对基本赛道元素完成识别并进行车模控制,其中加入了自动泊车环节(垂直泊车或侧方泊车)。

平行停车示意图

垂直停车示意图
基础组的障碍赛,主要任务是避障、十字停车、无路权等待、缺失线处理等。
高级组的障碍赛,则有人行横道等待行人、双实线可通行条件判断、限速标志、十字引导线处转弯等要素,难度提高了一个量级。

赛道布局和车道线
车模设计
对于车辆的设计来说,可谓见人见智。
从车辆外观上来说,有乐高积木版(KITRoBoss),有全钢架焊接版(CDLC),有重型推土机版(Spatzenhirn),有3D打印定制版等(KITcar、TU-Smart)。

带有强制停车路标的十字路口
从传感器上来讲,摄像头、红外/超声测距、激光雷达传感器等不一而足,传感器越多越贵,越易于开发,但同时成本造价越高,相对也会拉低答辩分数。

车型风骚的车模
从执行器上来讲,有的是单电机四驱、有的是四舵机+四轮毂电机实现四轮驱动四轮转向、甚至有通过直线电机代替舵机来进行转向控制以达到高速、静音的控制效果。

车内器件布局图
控制算法
从控制器上来讲,有的是简单的预瞄点纯追踪(Pure Pursuit)控制,有的是四轮转向LQR控制器(2018慕尼黑工大Phoenix团队)、2018冠军KITcar使用的STANLEY控制器,而2019年高级组冠军来自Ulm的Spatzenhirn团队据说2018年使用的MPC控制器,今年貌似是PID控制器,然后夺冠了…

在软件架构上也因团队而异。有的团队使用的是和奥迪杯相同的EB公司的ADTF软件,而有的团队使用MATLAB开发并运用到自动代码生成技术,而越来越多的团队也开始使用Linux+ROS平台。

算力平台上,大多使用车载主机+单片机方式,如INTEL-I5/I7,而随着赛事内容的丰富,NVIDIA-TX2平台也开始流行。比较独特的是,仍有团队(Team Oscar)没有使用工控机,而是使用了一块ZynqBerry(ARM Cortex-A9 + FPGA),在成本和算法性能上和自己较真。
算法层面上,由于任务众多,简单罗列下我所知的一些成名技术,赛道提取方面有霍夫识别、RANSAC拟合等;障碍物和标识识别有YOLO,CNN,HOG+SVM等;定位有ODOM里程计等;泊车方面有固定程序方案、REEDS-SHEPP自适应规划方案等
比赛特点
令我感触颇深的是各团队的坚持与创新。
Ulm-Spatzenhirn延续一贯的推土机风格,笨重却不莽撞,借以高超的控制能力,硬是打败了去年冠军KITcar。

慕尼黑工大Phoenix Robotics的四轮转向在避障时显现出高超的控制逻辑,质心侧偏角得到有效抑制,从而在2018基础组障碍赛中独树一帜。Team NAИ则极力轻量节能,通过比赛时长搭载电池,整机仅仅1kg,荣获VDI特别奖。

在我想来,卡杯和恩智浦杯还是有很多不同之处的。
恩杯更为面向底层,面向个人的培养,在规则上对硬件限制颇大,这一方面是为了培养自动化人才,一方面又保证了相对公平性。
而卡杯则更为系统化,造价评估、团队管理、电路设计、感知、规划、控制无所不包,采取的模式更像是车队模式,不限制人数的同时又极为注重传承与创新,每个人在团队中各有各的收获。
有一个小细节,像CDLC、KITCAR等团队的通信层都使用了CAN总线,而不是简简单单的UART串口,大体是因为麻雀虽小五脏俱全,故要按照车规级来设计。

另一方面则是为了进入工业界做准备。另外,由于德国研究生是授课型,同时对工程培养极为重视,很多高校也会对比赛给予学分,以鼓励学生参与各类课外项目。
相关链接
欢迎各高校有兴趣前往德国参赛,也希望卡杯的这种模式能给恩杯带来一些启发。下面是一些网址链接。
(1)B站视频,
https://b23.tv/av74207021/p1
https://b23.tv/av74207547/p1
(2)Carolo-cup官网:
http://carolocup.de/
https://wiki.ifr.ing.tu-bs.de/carolocup/en
(3)Youtube主页:
https://www.youtube.com/user/CaroloCupTuBs
(4)2020高级组规则:
https://wiki.ifr.ing.tu-bs.de/carolocup/system/files/Master-Cup%20Regulations.pdf
(5)TUM-Phoenix Robotics:
https://www.facebook.com/tumphoenixrobotics/
(6)KIT-KITcar:
https://www.facebook.com/KITcarTeam/

提问与回复
提问:敬爱的卓老师您好,如果今年参赛,我们学校就是第二年参赛,对于我们刚开始做的小白来说,困难是可想而知的,并且希望规则变化不要太大,并且赶着双十一还能买几个车模,因此,希望卓大大尽量能够提前给一个规则方向,我们也好有一个买东西的方向,谢谢卓老师了。
回复:谢谢你的建议。我们会尽快落实相关事务。
提问:卓大大,请问电机pid控制的参数怎么调节?
回复:这是个经典问题,存在着比较成熟的方式,但取决于你现在对于PID,反馈控制有多少的了解。只是泛泛的讲,可能无法针对你的情况展开。不如你先在网络上看看相关的介绍,然后将你在实践过程中碰到的问题,提出来再问我吧。

来自吉林大学“三蹦子”队的吴艳红同学,
今年大四,推研到清华自动化系读研,
提前来清华做毕业设计。