网站优化过度的表现,wordpress 作者id,公司网站 正式上线,灯饰网站建设图片写在前面#xff1a; #x1f31f; 欢迎光临 清流君 的博客小天地#xff0c;这里是我分享技术与心得的温馨角落。#x1f4dd; 个人主页#xff1a;清流君_CSDN博客#xff0c;期待与您一同探索 移动机器人 领域的无限可能。 #x1f50d; 本文系 清流君 原创之作 欢迎光临 清流君 的博客小天地这里是我分享技术与心得的温馨角落。 个人主页清流君_CSDN博客期待与您一同探索 移动机器人 领域的无限可能。 本文系 清流君 原创之作荣幸在CSDN首发 若您觉得内容有价值还请评论告知一声以便更多人受益。 转载请注明出处尊重原创从我做起。 点赞、评论、收藏三连走一波让我们一起养成好习惯 在这里您将收获的不只是技术干货还有思维的火花 系列专栏【运动控制】系列带您深入浅出领略控制之美。 愿我的分享能为您带来启迪如有不足敬请指正让我们共同学习交流进步 人生如戏我们并非能选择舞台和剧本但我们可以选择如何演绎 感谢您的支持与关注让我们一起在知识的海洋中砥砺前行~~~ 文章目录 引言一、谨慎、批判、怀疑的态度二、常用工具1、Google2、Github 三、软件组合1、Matlab Carsim2、Linux ROS 四、书籍推荐1、《无人驾驶车辆模型预测控制》龚建伟2、《车辆动力学及控制》拉杰什·拉贾马尼 (Rajesh Rajamani) 五、自动驾驶技术路线六、感知技术的各研究方向1、基于视觉的感知2、基于激光雷达的感知3、多传感器融合感知a视觉与其他传感器的融合b加入高精地图的融合 七、自动驾驶中的芯片难题1、芯片计算速度2、芯片发热问题3、芯片可靠性要求 八、总结1、跨学科挑战与心理准备2、对待新技术的态度 参考资料 引言 各位小伙伴们大家好本篇博客开一个新的系列自动驾驶控制算法。内容整理自 B站知名up主 忠厚老实的老王 的视频作为博主的学习笔记分享给大家共同学习。 自动驾驶是比较新、也比较火的技术这个系列介绍自动驾驶关于控制方面的算法。 一、谨慎、批判、怀疑的态度 在开启这一系列的介绍之前要先提醒大家一句请以审慎批判和怀疑的眼光审视目前市面上所有关于自动驾驶技术方面的书籍、教程、文献以及论文。其原因在于新兴技术往往伴随着模糊性和争议性。自动驾驶技术作为一项相对较新的领域自然也不例外。 自动驾驶技术的创新速度之快使得它不同于那些已经发展了几百年甚至几千年的学科如数学和物理。后者的发展已经相当成熟相关的教科书通常不会存在模糊性或争议也不会有明显的错误。 然而自动驾驶技术则不同由于其新颖性目前学术界和工业界都尚未形成一个成熟的、总结性的文献或著作。虽然网络上充斥着大量介绍自动驾驶技术的文章市面上也有许多相关书籍销售但不可避免的是这些资料普遍存在错误即便是出自知名人士或机构之手的论文和文章也不例外。 无论是斯坦福、麻省理工的学者还是参与 863 计划的科学家他们所出版的书籍和论文中也存在诸多错误。 因此我们在对待这些资料时应持批判性思维取其精华去其糟粕切不可盲目迷信权威。这也适用于本博客所写的教程大家在学习时也应保持谨慎、批判和怀疑的态度。 二、常用工具 下面介绍一下学习自动驾驶的常用工具不限于控制算法如果想做其他的关于自动驾驶的研究这些工具也是必不可少的最有力的工具就是谷歌和GitHub。
1、Google 有人可能会问就用百度搜索行不行 百度的话主要是搜不到GitHub所以建议大家不要用百度了直接用 Google浏览器 就行
2、Github GitHub 上面有很多自动驾驶相关的文献以及相关代码而且 GitHub 上有很多做自动驾驶的技术牛人跟他们学习对自己的提高非常快。 三、软件组合
1、Matlab Carsim 软件需要 Matlab最好是 Matlab R2020a Carsim 2019.1主要是这两个软件。 Casim 是车辆动力学仿真软件对 Matlab的版本有要求如果用其他版本的Matlab可能不兼容所以推荐版本是 Matlab R2020a Carsim 2019.1 的组合。 这两个软件是用来做自动驾驶仿真的 Matlab 主要用来写控制算法的程序然后把程序送到 Carsim 仿真。
2、Linux ROS 如果学得更深入一点就涉及到 ROS 和 Linux 。 四、书籍推荐 主要推荐两本书。
1、《无人驾驶车辆模型预测控制》龚建伟 第一本是《无人驾驶车辆模型预测控制》由北京理工大学的龚建伟教授团队编写这本书在车辆动力学建模方面的内容较为全面读者在阅读时应持有批判和怀疑的态度客观审视理性分析。
2、《车辆动力学及控制》拉杰什·拉贾马尼 (Rajesh Rajamani) 第二本是《车辆动力学及控制》这是原版《Vehicle Dynamics and Control》的中译本。百度 Apollo 的算法就是基于此书中的原理可见其内容具有很强的实用性和参考价值。 五、自动驾驶技术路线 下面探讨自动驾驶技术该技术大致可以分为四个部分 #mermaid-svg-9Du6dAE0RCXLTIPU {font-family:"trebuchet ms",verdana,arial,sans-serif;font-size:16px;fill:#333;}#mermaid-svg-9Du6dAE0RCXLTIPU .error-icon{fill:#552222;}#mermaid-svg-9Du6dAE0RCXLTIPU .error-text{fill:#552222;stroke:#552222;}#mermaid-svg-9Du6dAE0RCXLTIPU .edge-thickness-normal{stroke-width:2px;}#mermaid-svg-9Du6dAE0RCXLTIPU .edge-thickness-thick{stroke-width:3.5px;}#mermaid-svg-9Du6dAE0RCXLTIPU .edge-pattern-solid{stroke-dasharray:0;}#mermaid-svg-9Du6dAE0RCXLTIPU .edge-pattern-dashed{stroke-dasharray:3;}#mermaid-svg-9Du6dAE0RCXLTIPU .edge-pattern-dotted{stroke-dasharray:2;}#mermaid-svg-9Du6dAE0RCXLTIPU .marker{fill:#333333;stroke:#333333;}#mermaid-svg-9Du6dAE0RCXLTIPU .marker.cross{stroke:#333333;}#mermaid-svg-9Du6dAE0RCXLTIPU svg{font-family:"trebuchet ms",verdana,arial,sans-serif;font-size:16px;}#mermaid-svg-9Du6dAE0RCXLTIPU .label{font-family:"trebuchet ms",verdana,arial,sans-serif;color:#333;}#mermaid-svg-9Du6dAE0RCXLTIPU .cluster-label text{fill:#333;}#mermaid-svg-9Du6dAE0RCXLTIPU .cluster-label span{color:#333;}#mermaid-svg-9Du6dAE0RCXLTIPU .label text,#mermaid-svg-9Du6dAE0RCXLTIPU span{fill:#333;color:#333;}#mermaid-svg-9Du6dAE0RCXLTIPU .node rect,#mermaid-svg-9Du6dAE0RCXLTIPU .node circle,#mermaid-svg-9Du6dAE0RCXLTIPU .node ellipse,#mermaid-svg-9Du6dAE0RCXLTIPU .node polygon,#mermaid-svg-9Du6dAE0RCXLTIPU .node path{fill:#ECECFF;stroke:#9370DB;stroke-width:1px;}#mermaid-svg-9Du6dAE0RCXLTIPU .node .label{text-align:center;}#mermaid-svg-9Du6dAE0RCXLTIPU .node.clickable{cursor:pointer;}#mermaid-svg-9Du6dAE0RCXLTIPU .arrowheadPath{fill:#333333;}#mermaid-svg-9Du6dAE0RCXLTIPU .edgePath .path{stroke:#333333;stroke-width:2.0px;}#mermaid-svg-9Du6dAE0RCXLTIPU .flowchart-link{stroke:#333333;fill:none;}#mermaid-svg-9Du6dAE0RCXLTIPU .edgeLabel{background-color:#e8e8e8;text-align:center;}#mermaid-svg-9Du6dAE0RCXLTIPU .edgeLabel rect{opacity:0.5;background-color:#e8e8e8;fill:#e8e8e8;}#mermaid-svg-9Du6dAE0RCXLTIPU .cluster rect{fill:#ffffde;stroke:#aaaa33;stroke-width:1px;}#mermaid-svg-9Du6dAE0RCXLTIPU .cluster text{fill:#333;}#mermaid-svg-9Du6dAE0RCXLTIPU .cluster span{color:#333;}#mermaid-svg-9Du6dAE0RCXLTIPU div.mermaidTooltip{position:absolute;text-align:center;max-width:200px;padding:2px;font-family:"trebuchet ms",verdana,arial,sans-serif;font-size:12px;background:hsl(80, 100%, 96.2745098039%);border:1px solid #aaaa33;border-radius:2px;pointer-events:none;z-index:100;}#mermaid-svg-9Du6dAE0RCXLTIPU :root{--mermaid-font-family:"trebuchet ms",verdana,arial,sans-serif;} 感知 决策 规划 控制 虽然控制理论在严格意义上来说也具有一定的难度但相对来说控制领域更为成熟。通常涉及的控制方法有三种
比例-积分-微分控制器(Proportional-Integral-Derivative Controller, PID)线性二次调节器(Linear Quadratic Regulator, LQR)模型预测控制(Model Predictive Control, MPC) 控制理论相对较为成熟。控制的难点并不在于理论本身而在于有时候理论计算可能非常精确但实际操作中却可能出现与理论不符的情况。 控制技术的路线相对来说已经较为明确方法有限因此相对来说控制技术更容易学习。 六、感知技术的各研究方向 感知技术的每个研究方向都有其各自的优点和缺点
1、基于视觉的感知 基于视觉的感知方法即利用摄像头进行环境感知。 在这一领域特斯拉的方案尤为著名特斯拉采用的是纯视觉感知方案。然而这种方案的局限性在于在夜间或浓雾等能见度较低的环境条件下其感知性能会显著下降。
2、基于激光雷达的感知 采用基于激光雷达技术的方案即使用激光雷达进行环境感知。 大多数创业公司基本上采用的是激光融合技术。缺点就是激光雷达的成本较高。不过最近激光雷达在成本方面取得了一些突破未来激光雷达的成本有望降低。个人认为激光雷达技术具有很好的发展前景。
3、多传感器融合感知
a视觉与其他传感器的融合 主流方案的是视觉融合其他传感器但不是视觉和激光雷达的融合因为激光雷达太贵了而是比如毫米波雷达、超声波雷达之间的融合主要因为便宜。
b加入高精地图的融合 高精地图是一个未来的发展方向但是现在还进展还比较缓慢主要是因为高精地图的绘制费时费力而且可能属涉及国家安全并不是所有企业和个人都有资格测绘高精地图。 因此感知模块的技术路线目前尚未明确各种方法均在探索之中包括基于视觉的、基于激光的以及多传感器融合的方法都有研究者在研发。目前来看这一模块相对而言不够成熟并且是自动驾驶技术中较难的部分。 七、自动驾驶中的芯片难题
1、芯片计算速度 自动驾驶技术的一个难点在于芯片的计算速度。由于自动驾驶系统需要进行大量计算其所需的芯片性能大致相当于台式机级别这一点看似容易实现因为高性能的台式机芯片如英特尔和AMD生产的芯片早已普及。但实际上这一要求在自动驾驶领域的应用并非简单事。
2、芯片发热问题 车载芯片的工作环境极其恶劣远比台式机的环境要严苛得多。 我们在电脑上使用的CPU需要额外安装风冷或水冷系统来控制其功耗防止因过热而降频。而在车辆中芯片的工作环境更为恶劣。 在家中使用电脑时温度通常只是室温最多达到30至40度而车辆中的芯片却要面对更高的温度问题。如果是燃油车发动机燃烧时产生的温度极高可达几百度。即便是电动车电机和电池在运行时也会产生大量热量温度同样很高。
3、芯片可靠性要求 此外车辆在行驶过程中还会遭受震动和冲击这些都可能影响芯片的可靠性。芯片的计算速度慢并不是最严重的问题最怕的是芯片损坏。在完全自动驾驶的车辆中一旦芯片损坏可能会导致灾难性的后果。电脑CPU损坏顶多导致黑屏但车辆芯片的损坏则可能危及人身安全。 因此车载芯片对在恶劣环境下的稳定性和抗冲击能力有更高的要求。它们需要在高温环境下稳定工作同时能够承受突如其来的猛烈冲击且不能出现故障。这样的技术难度是相当大的。 不过这些内容与本博客的教程无关只是顺便提及我们的教程主要还是讲解控制方面的内容。 八、总结 本篇博客不讲具体的控制算法只是告诉大家要用哪些工具、软件、书籍要把这些东西准备好。
1、跨学科挑战与心理准备 在一般的课程中通常会有一些入门的门槛也就是说需要学习过某些特定的课程之后才能够完全理解这门课程。但在此处不明确指出具体的学习门槛原因在于涉及的学科范围过于广泛。基本没有任何一门专业能够全面覆盖所有这些学科。因此无论读者来自哪个学校、哪个专业后面讲述的内容中必然包含一些不属于所学学科的知识点。因此需要做好相应的心理准备。这门课程的难度恰恰在于其跨学科的广泛性涉及的学科领域实在太多了。
2、对待新技术的态度 最后赠予大家一句忠告不要盲目崇拜所谓的专家或权威也不要对书籍和学术论文过于迷信。面对新技术的任何技术性资料我们都应保持审慎的态度。在学习过程中不可避免地会遇到一些超出自己舒适区的跨学科知识。尽管博主会尽力将这些内容讲解得简洁明了但对于某些人来说可能仍然会有一定的畏惧感。所以有几点比较重要
第一就是要自信其实没什么难的。第二就是要勇敢勇于探索这才是最重要的。 特别是在学习新技术时往往缺乏现成的资料可供查阅也没有现成的技术博客可供参考所有的知识和技能都是通过自己一点一滴的努力逐渐积累起来的。当真正掌握了这些知识成功攻克了难关之后会意识到这一切并没有想象中那么困难。任何学科知识一旦被写入书籍就意味着它已经被人类掌握。尤其是像控制学这样较为成熟的学科其实并无可惧之处尽管它涉及多个学科领域但仍然不必感到害怕要对自己充满信心。 从下一篇博客开始正式讲解无人驾驶的控制算法欢迎关注 参考资料 【基础】自动驾驶控制算法第一讲 绪论与前期准备 后记 感谢您耐心阅读这篇关于 自动驾驶控制算法 | 绪论与前期准备 的技术博客。 如果您觉得这篇博客对您有所帮助请不要吝啬您的点赞和评论 您的支持是我继续创作的动力。同时别忘了收藏本篇博客以便日后随时查阅。 让我们一起期待更多的技术分享共同探索移动机器人的无限可能 感谢您的支持与关注让我们一起在知识的海洋中砥砺前行