简 介: 你没有想到吧,在第十六届全国大学生智能车竞赛单车拉力组获得单车比赛全国冠军的队伍的单车控制算法居然是PID参数调整不当造成的振荡现象!没错,出乎所有人的意料。下面让我们看看来自上海海事大学单车组队员的分享。

关键词智能车竞赛单车拉力骑摩托的蒙娜丽莎











































01.花式慢跑









文章目录









02.算法分享









公众号留言:







§01 花式慢跑


  在推文 骑摩托的蒙娜丽莎 展示了 上海海事大学 参加第 十六届全国大学生智能车 单车拉力组全国总决赛的 “骑摩托的蒙娜丽莎”队伍比赛成绩以及比赛过程。很多队伍对于他们单车在慢车道上曼妙风骚的“花式慢跑”技术非常感谢兴趣。

  本文特别向该队伍建议将他们的慢车比赛算法及其实现专门成文分享给大家。

▲ 图1.1 骑摩托的蒙娜丽莎的妖娆风骚的花式慢跑

王老师( 王天真 ),您好。我看到参加智能车竞赛的的同学们对于 “骑摩托的蒙娜丽莎” 队伍在运行 慢车道比赛中的 “花式慢跑” 算法及其实现非常感兴趣,可否您让学生们对于这部分的内容专门写一个短文给大家分享一下呢?

  下面是他们队员 王云尧 发送过来的算法分享。再次感谢上海海事大学 骑摩托的蒙娜丽莎队员的技术分享。

§02 算法分享


  大家好,我是上海海事大学单车组“骑摩托的蒙娜丽莎”队员岑衎远,应卓大大邀请来分享一下我们的“花式”慢赛道跑法。

  首先分析一下咱们今年单车的规则。在往届比赛中,车模往往被要求尽快跑完全程,因此车模都是尽量按照已有的赛道路径去跑,甚至在过弯时切内弯以达到最短的行进路径。而今年的单车慢赛道,则正好相反,我们需要让小车以最慢的速度走过尽可能长的路程,同时,按照要求,车模在慢赛道上行进路线要满足简单闭合曲线的要求,即路线自身没有相交点。这样的规则要求之下,行进路线的选择几乎只剩下了S形前进。那么再加上后面对于车模偏离赛道的判定距离,两米,S形前进的范围也已经确定。那么理论存在实践开始

▲ 图2.1 电单车俯视图

  第一步要解决的就是慢车的直立,慢车的直立思路其实跟快车完全相同,只是更改了PID 系数,需要注意的是,慢车的PID参数总体相比快车更大,这其实也与我们的生活实际体验相符:骑自行车的时候,想以慢的速度前进,我们就会以更大的幅度摆动车把。另外,慢车直立PID的调参对于舵机的损耗极大,我们在国赛的前一天就因为调了数天慢赛道,导致舵机出现故障,不受控制地抖动,不得已换了新舵机,对之前保存的所有快慢赛道程序进行参数微调。

  完成直立后的第二步就是让小车以S形巡线。这之前还要再提一下对于慢赛道的设计,最好的设计是简简单单的一个圆,就可以满足慢赛道S形巡线的需求,不会因为各种转弯角度的不同影响小车的稳定性,不过由于圆形铺设难度较大,我们采用了正十六边形的设计,也可以满足要求。

▲ 图2.1 正十六边形的慢车赛道

  对于S形巡线算法的问题,其实刚开始我们也没什么头绪,直到开始调巡线的时候才发现,减小小车巡线的PID控制中的比例项系数,可以让小车产生我们所想要的S形巡线的效果。所以说,在大家眼中我们单车的“花里胡哨”的巡线算法,本质上就是合理激发并利用了传统PID控制中参数调整不当所造成的振荡现象

  看到这里,你肯定想说,我看了这么半天,你就跟我说这是你们参数调节不当造成的?其实这其中还有相当重要的一环——对电磁信号的处理。在对电磁信号的处理中,我们最常用的就是归一化差比和

  这两种算法想必大家都相当熟悉,我就不再赘述。但是这两种算法仅仅是消除了换赛道时电磁值变化的影响,并未对丢线做任何处理。做过电磁车的都知道,电磁杆在偏离赛一定距离后,计算出的电磁偏差值会不增反减,而我们的车在S形巡线时,有时可能会偏离赛道一米以上,这个时候如果单单使用差比和或者归一化做减运算得到的偏差就会很小,小车就会没法儿拐回来。

  既然减运算不行,那就试试加运算,很显然,小车偏离赛道较远时,小车获得的左右电感值的和较小,而小车在赛道中心时左右电感值的和较大。那么我们在发车前寻找到赛道中心处电感和的最大值,再与车模运行时电感和作比较,不就可以获得一个理想偏差值了吗?

  然而并不是,这种方法得出的偏差值在电磁线附近时可能会出现跳变现象,而且在电磁线附近的偏差曲线也并不是我们理想中的平滑曲线,而是略有下凹。所以最后一步,我们将这种偏差计算方法与差比和相结合,即在一定范围内使用差比和算法计算偏差,超出范围后使用电感和的算法计算偏差。

  其实这种算法在慢赛道出现之前,我们就已经投入了使用,跑快赛道效果也相当不错,直角完全不需要处理,全程也只用了两个横电感就完成了巡线(是的,那两个竖电感只是摆设)。

▲ 图2.2 巡线电磁传感器

  分享写到这里已经基本结束。今年的智能车比赛也可以说是一波三折,疫情的反弹更是将国赛逼回了线上。不过好在智能车的组委会相当认真负责,为我们定制了独特的比赛方案。卓大大更是在公众号上非常耐心地为我们答疑解惑,甚至还要听我们发牢骚。

  我本人是第二年做智能车,今年在天时地利人和之下有幸拿到了单车组的全国冠军,可以说是做车生涯了无遗憾了。不过明年我还是会继续做车的,毕竟我才大三,还没到可以做咸鱼的时候。

▲ 图2.3 没想到调坏了的PID参数居然也能拿到单车组全国冠军

世界上最长的路
就是从想法到实现

上海海事大学-单车组-快车道第二次发车

上海海事大学-单车组-慢车道第二次发车


■ 相关文献链接:

  • 骑摩托的蒙娜丽莎
  • 第十六届全国大学智能汽车竞赛竞速比赛规则
  • 王天真

● 相关图表链接:

  • 图1.1 骑摩托的蒙娜丽莎的妖娆风骚的花式慢跑
  • 图2.1 电单车俯视图
  • 图2.1 正十六边形的慢车赛道
  • 图2.2 巡线电磁传感器
  • 图2.3 没想到调坏了的PID参数居然也能拿到单车组全国冠军

◎ 公众号留言:

  • S.S :最后那个没想到,微微凡尔赛了
  • JIN :三分运气,六分努力,一分贵人扶持
  • Dérive :我只是凑数的
  • 文夕 :我们当时也想调s,也发现降p,甚至也重新写了丢线程序,但最后确实做的不够好没能达到预期的效果
  • Arjun :大道至简
  • 小马 :《关于我来智能车比赛凑数的那些日子》
  • 龄龙 :夺笋啊大佬,不如说自己调到极致
  • zbf :车的右边是电路板,左边是什么东东呀
  • 自信即是巅峰 :我们的车不一样,到后期我的车已经不能像一开始一样平衡转圈了,所以也没有了走这种路线的可能。
  • 大志²⁰²¹ :“我想邀你坐上我的野摩托”

骑摩托的蒙娜丽莎 - 曼妙风骚的花式慢跑算法相关推荐

  1. 第十六届全国大学生智能车竞赛技术报告 | 单车拉力组- 上海海事大学-骑摩托的蒙娜丽莎

    简 介: 本文设计的智能车系统以 STC16F40K128微控制器为核心控制单元,通过车体前方的电感检测赛道电磁信息,通过编码器检测智能车的实时速度,利用陀螺仪检测小车姿态,使用PID 控制算法调节电 ...

  2. 用 AI 分析蒙娜丽莎的微笑,情绪分析认为她没那么高兴

    作者:孙晓 编辑:麦芽杨 凝音 来源:我是科学家iScientist 本文约2800字,建议阅读6分钟 本文为你介绍用算法洞察真实情绪. 合肥工业大学情感计算研究所一直致力于情绪分析的研究,本文为孙晓 ...

  3. 你动、蒙娜丽莎跟着一起动,OpenCV这么用,表情口型造假更难防了

    梅宁航 发自 凹非寺 量子位 报道 | 公众号 QbitAI 有没有想过让蒙娜丽莎跟着你的表情动,来一番亲切的交流? Aliaksandr的一阶运动模型(First Order Motion Mode ...

  4. 让图片动起来,特朗普和蒙娜丽莎深情合唱《Unravel》

    作者 | Jack Cui 来源 | Jack Cui(ID:JackCui-AI) 前言 让一张图片,动起来,应该怎么做? DeepFake 一阶运动模型,让万物皆可动. 利用这项技术,用特朗普和蒙 ...

  5. 英伟达验证图片加载不出来_让大卫雕塑跳舞、蒙娜丽莎说话,英伟达视频合成有如此多「骚操作」...

    用视频到视频的合成技术生成会跳舞的小哥哥(小姐姐) 或自己本人已经不是什么无法解决的问题,但这些方法通常需要大量目标人物的数据,而且学到的模型泛化能力相对不足.为了解决这个问题,来自英伟达的研究者提出 ...

  6. AI用50个三角形画出抽象版蒙娜丽莎,有股后现代的感觉了 | 谷歌大脑出品

    明敏 发自 凹非寺 量子位 报道 | 公众号 QbitAI 现在,给AI一个短语和50个三角形,它就能创作一副极简风格的抽象画了. 只需输入"a drawing of cat(一张猫的画像) ...

  7. 眨眼算什么,让蒙娜丽莎像你一样唠上嗑才算硬核

    第一次写文章还把蒙娜丽莎名字写错了,原谅四川人我N.L不分,蒙娜丽莎表示有很多话要说.这不,三星莫斯科AI中心和Skolkovo 科学技术研究所(DeepWarp也是他们的作品)在19年5月份就发表了 ...

  8. 蒙娜丽莎,品牌创新的探索者

    在只要能生产出类似的产品就能赚到钱,大家都把精力放在捕捉现有市场机会的2000年左右,蒙娜丽莎试水品牌高度的产品创新,从无差异的品牌战略转向有限的差异化多品牌战略,这一成功转型无疑是蒙娜丽莎十年品牌路 ...

  9. Silverlight 解谜游戏 之十六 消失的蒙娜丽莎

    在<Silverlight 解谜游戏 之三 消除名单>中我们通过在物品轮廓画出Path 来达到消除物品的效果,由于游戏中的物品都是Office 图片的一部分所以无法使其真正消失,本篇我们将 ...

最新文章

  1. xp系统电脑ntp服务器,xp 设置ntp服务器
  2. python多进程队列性能测试
  3. ASP超级链接和HTML函数正则表达式 修正版
  4. LogStash 中字段的排除和数据的排除
  5. python的userlist_Python中UserDict、UserString、UserList有用吗?
  6. 如何让 C++ 和 C# 一样易用,而且效率更高?
  7. java做爬虫和python做爬虫_为什么常用Python,Java做爬虫,而不是C#C++等?
  8. java day48【 Maven 介绍 、 Maven 的使用 、Maven 常用命令 、 maven 工程运行调试 、总结】...
  9. 20190605每日一句你的态度决定了你的人生高度
  10. 1核2g服务器能干什么_国内哪个云服务器比较便宜性价比高?大家有什么好推荐...
  11. 全国高级计算机职称考试试题及答案,全国职称计算机考试复习题「附答案」
  12. UVALive 7269 Snake Carpet
  13. MPU6050-扫盲
  14. 三个表情纪念我的像素画讲座
  15. php页眉,FPDF页眉和页脚 - php
  16. 第73节:Java中的HTTPServletReauest和HTTPServletResponse
  17. 单词读音下载-python(英式美式)
  18. PTA 7-10 黑白三子棋局
  19. 用js实现点击切换+自动切换的轮播图
  20. 调整oracle服务器时间,那些年Oracle数据库主机时间调整的风花雪月

热门文章

  1. Pipenv – 超好用的 Python 包管理工具
  2. 用百度地图API分析打交通大数据
  3. Apache commons email 使用过程中遇到的问题
  4. 创业还需要开发 App 么?
  5. python 文件的操作
  6. iOS App 升级时文件的保留情况
  7. hdu1166 敌兵布阵
  8. 项目部署不到tomcat中的原因和解决方法
  9. MFC单文档的背景上绘制一个可以自动显示文字的长方形
  10. vault-使用kubernetes作为认证后端