0
  • 聊天消息
  • 系统消息
  • 评论与回复
登录后你可以
  • 下载海量资料
  • 学习在线课程
  • 观看技术视频
  • 写文章/发帖/加入社区
会员中心
创作中心

完善资料让更多小伙伴认识你,还能领取20积分哦,立即完善>

3天内不再提示

单挑稚晖君,设计自动驾驶两轮车,结果发生意外…这个up主超级励志!

Carol Li 来源:电子发烧友网 作者:李弯弯 2022-04-15 00:23 次阅读

电子发烧友网报道(文/李弯弯)近年来自动驾驶大爆发,不仅仅是各大厂商纷纷入局,网络上也涌现出一批科技达人,设计各种类型的自动驾驶自行车,自动驾驶电动车……

最近B站一位UP主发了一条视频,说自己之前以电动汽车为原型,设计了一辆自动驾驶两轮车,车是设计出来了,结果却因为意外把一条腿给炸没了。

车子的核心原理是,基于角动量守恒理论设计的。在车的内部,有一个高速旋转陀螺仪,速度可达到每分钟上万转,当物体高速旋转的时候,它的角动量很大,旋转的轴就会一直稳定的指向一个方向,意思是说,想要更加稳定,就必须转得足够快,以此来保证两轮车平衡。

之所以会出现意外,是因为他当时把转数调太高,导致内部的陀螺仪炸开,飞出的铁块把腿给炸没了。据他描述当时的场面惨不忍睹,机床上两公分厚的铸铁都没有抗住,炸了一个缺口,房屋墙壁也炸出来好多洞。

之前稚晖君设计过无人驾驶自行车,与他的自行车相比,这个以电动车为原型设计的无人驾驶两轮车,可以载人。不过因为受伤的缘故,这位UP主说,之前设计的这个车子也就一直搁置下来,他格外提醒,大家在工作和做研究的时候,一定要注意安全。

真的是被这位UP主深深感动到,可以说是非常励志了,在他的个性签名写的是“意外受伤截肢,很幸运的捡了条命,以后积极生活”,更有意思的是,他给自己设计了各种功能的假肢,果然没有什么可以抵挡对科技创造的热情。

如何设计一辆无人驾驶两轮车

那么具体如何设计一辆两轮无人驾驶车呢?从稚晖君视频,可以详细的了解到每一个设计步骤,他设计的是一辆无人驾驶自行车。

首先,与4个轮子的汽车不同,自行车是一个欠驱动系统,不进行控制的话,不仅不能跑,还站不稳,因此这里需要一套复杂的自动控制系统;

其次,为了把驾驶员工具人的存在性给去掉,需要给车子搭载一套传感器组成的感知网络,以及一个算力足够强大的计算芯片作为大脑;

最后,就是在前面的硬件基础上开发实现一套巧妙的感知和控制算法,俗称注入灵魂。


第一步,硬件改造,让车子跑起来

稚晖君改造的自行车是一辆死飞(Fixed Gear),它结构很简单,没有刹车,减速靠反向蹬车。首先是使用计算机辅助工具CAD来进行建模,一通操作之后得到一辆虚拟的自行车。

图:用CAD建模得到的虚拟自行车


有了车体模型之后,所有的改造工作都可以在计算机上完成。

图:在设计图纸上改造完成的车子


稚晖君给车子安装了两个巨大的无刷电机,以及一个控制龙头的舵机。传感器方面,搭载了一个RGBD的深度相机,加速度计和陀螺仪,以及一个激光雷达。电池使用的是6S的航模动力锂电池,续航大概有2-3个小时。主控计算模块被安置在座椅的后方。


两个无刷电机的作用是什么呢?自行车前后方的平衡靠的是两个轮子,以及地面的摩擦力,而左右的平衡,在骑行的时候靠左右调节龙头,来获得转向加速度,以此抵消重力的影响,而静止状态下怎么平衡呢,靠的是角动量守恒。

角动量守恒定律是自然界中最普遍的守恒定律之一,当系统中一个物体角动量发生变化的时候,就会将力矩传递给其他物体,中间的无刷电机,就是用于驱动的动量轮,后面的无刷电机,则是用于靠摩擦力驱动后轮,让车子整体前后运动。

图纸设计完之后,就是零件加工,其中一部分零件可以用3D打印制作,但由于做的东西功率比较硬核,3D打印塑料的硬度和刚性,都不太适合作为核心的结构件,所以用于固定电机的零件,使用的是金属来加工。凑齐改造所需的所有零件,组装完成就是下面的样子。

第二步,智能化,安装主控模块以及AI计算单元


我们在设计机器人时,会将计算系统分为低算力、低时延、运行实时系统的小脑,用于控制身体,以及高算力、高时延、运行非实时操作系统的大脑,用于感知、思考和决策。


在这个系统中,小脑使用的是MCU ESP32,大脑用的是昇腾310 AI处理器,昇腾310搭载达芬奇Core,可以提供最高22TOPS的AI算力。

图:再设计了一个载板,把两个计算单元整合到一起


大脑和小脑通过总线相连,并在软件上实现一套RPC框架,让它们可以方便地进行通信

小脑的框架是基于FreeRTOS,主要是实现传感器的数据处理,以及电机的控制算法,简单地划分了三个任务:闭环控制线程,电机通信线程,以及屏幕刷新线程。


大脑的软件框架则要复杂很多,除了基于昇腾的整个AI栈之外,稚晖君还在系统中使用了ROS,这是机器人界常用的框架,它本质上是一个高性能的通信中间件,后面的消息分发、业务串流、SLAM等的实现都是基于ROS开发的。


大脑和小脑有了之后,电路方面还有一个很重要的模块,那就是心脏,采用的是Ctrl-FOC驱动器,这个驱动器很厉害,虽然体积很小,却实现了两路共100A的无刷电机FOC控制,同时还顺便驱动了前面的60KG舵机,以及一个散热风扇。

图:把结构零件和电路全部整合起来,就完成了


第三步,算法,给机器注入灵魂

稚晖君介绍,机器人是一个复杂的系统,设计的时候,科学的方法是首先对机器人进行理论上的分析,也就是运动学和动力学的建模,数学建模会告诉我们哪些事情是相对容易的,哪些是复杂的。

举例来说,在这个车子的控制代码中,有超过50个重要参数、控制周期、反馈矩阵、PID增益、滤波器截止频率等,这些数字要全部得到合理设置,才能使系统进入稳定,且快速收敛的状态。


而一些物理参数的设置,比如说,电机功率应该选多大?飞轮质量应该选多少?重心的分布怎么设置才比较合理等,也都需要有准确的数学模型来进行指导。

在得到模型之后,为了进一部验证理论的准确性,一般会先在计算机中进行仿真,视频中,稚晖君用的是一个游戏引擎Unity,在游戏引擎中构建一个虚拟的物理环境,赋给小车真实的质量和重力,然后将控制算法的计算结果可视化显示出来。


验证完成之后,还有一个sim2real的过程,就是把仿真的结果迁移到现实环境中,这个过程很复杂,因为现实中有很多的不确定性因素,很多情况下,机器人往往是在仿真中重拳出击,然后在现实中唯唯诺诺,所以整个调试的过程也是异常艰辛。


这套系统,姿态控制使用的是LQR控制器,方向控制使用的是PID,传感器则是对加速度计和陀螺仪,数据使用二阶的巴特沃斯滤波器之后,再通过卡尔曼滤波进行数据融合,最终得到车身的姿态。经过漫长的参数整定之后,控制算法终于收敛了完美的效果,到这里,一辆成熟的自行车就完成了。

图:一辆成熟的自行车

经过测试,车载的姿态保持性能非常好,受到一定冲击,或者突然增加负载,也能稳定的保持平衡。


结合后轮电机的驱动能力,让它走两步也毫无压力。至此,能动的基本目标已经达成了。


最后引入AI,实现一定程度的自动驾驶。这个自行车搭载了深度相机,可以在电脑上看到,车子WIFI实时的RGB图,再结合一些AI算法,可以实现避障、让它在行驶过程中,识别各种物体,进行跟随等功能。


除此之外,自动驾驶中的一个很重要的技术,就是路径规划,车子搭载了激光雷达,激光雷达通过测量,激光发射到反射回来所消耗的时间,乘以光速就可以获得目标的距离位置。

由此360度成像就能够获得比摄像头更可靠的深度信息,将这些数据用于进行SLM图与路径规划,最后就可以实现让自行车进行自主探索环境了。


小结

稚晖君之前在设计完这辆无人驾驶自行车的时候,提到由于开发时间有限,本次项目只是实现了非常基础的自动驾驶功能功能,还有很多可以改进的地方,比如,受限于整车的功率,这套系统目前无法实现载人,如果换成电动车,就不一样了,而如今用无人驾驶电动车载人的设计也已经有人设计出来啦,给科技爱好者们的创造力点赞。

声明:本文内容及配图由入驻作者撰写或者入驻合作网站授权转载。文章观点仅代表作者本人,不代表电子发烧友网立场。文章及其配图仅供工程师学习之用,如有内容侵权或者其他违规问题,请联系本站处理。 举报投诉
  • 电动自行车
    +关注

    关注

    4

    文章

    253

    浏览量

    28556
  • 自行车
    +关注

    关注

    0

    文章

    110

    浏览量

    24584
  • 自动驾驶
    +关注

    关注

    781

    文章

    13449

    浏览量

    165258
  • 稚晖君
    +关注

    关注

    5

    文章

    34

    浏览量

    5091
收藏 人收藏

    评论

    相关推荐

    LTE-CAT1模组在两轮电池中的应用

    随着城市交通拥堵问题的加剧和环保意识的提升,两轮电动成为越来越多人的首选出行工具。作为其核心部件,电池的性能和安全性直接影响到两轮电动的整体使用体验。为了提升电池管理系统的智能化水
    的头像 发表于 09-14 16:56 1029次阅读
    LTE-CAT1模组在<b class='flag-5'>两轮</b><b class='flag-5'>车</b>电池中的应用

    常见的电动两轮BMS架构应用说明

    电子发烧友网站提供《常见的电动两轮BMS架构应用说明.pdf》资料免费下载
    发表于 09-12 09:28 0次下载
    常见的电动<b class='flag-5'>两轮</b><b class='flag-5'>车</b>BMS架构应用说明

    FPGA在自动驾驶领域有哪些优势?

    FPGA(Field-Programmable Gate Array,现场可编程门阵列)在自动驾驶领域具有显著的优势,这些优势使得FPGA成为自动驾驶技术中不可或缺的一部分。以下是FPGA在自动驾驶
    发表于 07-29 17:11

    FPGA在自动驾驶领域有哪些应用?

    FPGA(Field-Programmable Gate Array,现场可编程门阵列)在自动驾驶领域具有广泛的应用,其高性能、可配置性、低功耗和低延迟等特点为自动驾驶的实现提供了强有力的支持。以下
    发表于 07-29 17:09

    两轮电动遥控解锁方案

    两轮电动遥控解锁方案
    的头像 发表于 05-09 09:33 589次阅读
    <b class='flag-5'>两轮</b>电动<b class='flag-5'>车</b>遥控解锁方案

    未来已来,多传感器融合感知是自动驾驶破局的关键

    可以引导本的摄像头针对运动目标做快速局部修正曝光(见下图),以此实时获取运动目标的分辨细节特征,并将局部修正曝光的图像融合雷达数据传输至自动驾驶系统,避免撞击危险发生。 昱感微的融合感知技术方案
    发表于 04-11 10:26

    基于ACM32 MCU的两轮充电桩方案,打造高效安全的电池管理

    桩不仅能解决两轮充电难、乱摆放的问题,而且能够更大限度的保证了用户的充电安全,有效降低了充电过程火灾事故的发生两轮充电桩解决方案
    发表于 03-06 15:10

    两轮事故频发,什么才是解决之道?

    长期存在电动乱停乱充的消防隐患。……近年来,我国两轮电动车市场快速增长。截至2022年末,两轮电动保有量已达3.5亿辆,与此同时,电动
    的头像 发表于 03-05 08:17 229次阅读
    <b class='flag-5'>两轮</b><b class='flag-5'>车</b>事故频发,什么才是解决之道?

    比亚迪旗下弗迪电池将加大两轮电池的研发投入

    2月25日,比亚迪旗下弗迪电池表示,经探讨决定,弗迪电池将把乘用车的研发成果应用到两轮领域,加大两轮电池的研发投入,协同各方正能量,开发出更安全的电池。
    的头像 发表于 02-26 14:46 1004次阅读

    控制器在两轮中的位置和作用

    两轮,又称摩托车或电动自行车,是一种常见的交通工具。在两轮中,控制器起着至关重要的作用,它负责控制整车的运行状态,包括电机的转速、方向和制动等。本文将详细介绍控制器在
    的头像 发表于 01-15 16:12 1998次阅读

    新国标红利过后,智能网联化能否带动电动两轮的下一增长?

    波红利,然而在中国、欧美等地,政策红利已经快要过去。如今智能网联化成了下一个竞争赛道,却也为这个市场带来了不少变数。   电动两轮的定义   两轮
    的头像 发表于 12-20 09:05 2181次阅读
    新国标红利过后,智能网联化能否带动电动<b class='flag-5'>两轮</b><b class='flag-5'>车</b>的下一<b class='flag-5'>轮</b>增长?

    LabVIEW开发自动驾驶的双目测距系统

    LabVIEW开发自动驾驶的双目测距系统 随着车辆驾驶技术的不断发展,自动驾驶技术正日益成为现实。从L2级别的辅助驾驶技术到L3级别的受条件约束的
    发表于 12-19 18:02

    APM32F035电动两轮电机控制器方案介绍

    电动两轮以其便捷、灵活、节能环保等优势,承载了大部分短途出行需求。随着智能技术的引进,电动两轮在安全性、可靠性、舒适性、远程控制、数据传输等方面有更高升级需求。
    的头像 发表于 11-09 10:09 966次阅读
    APM32F035电动<b class='flag-5'>两轮</b><b class='flag-5'>车</b>电机控制器方案介绍

    MOSFET在电动两轮车上的应用

    电动两轮,按照行驶速度和续航标准分为电动自行车和电动摩托车大类。电动两轮具有经济、环保、便捷等优势,已成为主要的短距离交通工具之一,在
    的头像 发表于 11-06 14:17 511次阅读
    MOSFET在电动<b class='flag-5'>两轮</b>车上的应用

    注意这一点 即可避免表面贴装 LED在焊盘上发生意外滑移

    , 表面贴装 LED 会在焊盘上发生意外滑移(如下方PCB图所示)。 在回流焊制程中,PCB在回流焊炉中的前进方式会导致表面贴装 LED的侧加热不均匀,进而致使LED在板上发生意外移动。如何解决这一
    的头像 发表于 11-01 20:30 498次阅读
    注意这一点 即可避免表面贴装 LED在焊盘上<b class='flag-5'>发生意外</b>滑移