【原理分析】Google"炫炸天"的平衡自行车仅仅是概念吗?来看看惯性轮自行车吧...


1、聊一聊

    今天分享一曲经典的bgm,至少90%的人听过,应该只有10%的人知道它的名字,听完以后精神倍佳,听的时候记得闭上眼睛想象一下这个浩大的乐队,也许这才是音乐的魅力!

    好了,今天为大家带来一些机器人制作的原理知识讲解,因为最近很多小伙伴问作者有什么可以锻炼自己的、又非常有意思的小项目吗?想来想去想了很久,大家感兴趣一方面就是GUI了,另一方面就是运动控制了,于是便有了今天的文章。

2、Google平衡自行车

    下面是从谷歌平衡自行车宣传视频截图,大家可以欣赏一下谷歌的自平衡车:

分析分析:

  • 大伙看完应该会不禁惊叹,真的太厉害了,终于可以解放双手了,甚至还会想着什么时候普及上架,遗憾的是,最后谷歌出了解释视频其实全是后期剪辑,大家认为是电影特效就好,仅仅是4月1日愚人节那天的一个玩笑。

  • 其实作者在最初看到这个视频的时候特别惊讶,总是会考虑自行车的每个动作应该用什么样的理论去解释,也许这就是工科男的思维吧。第2张可以通过调整车身重心使得其平衡,第3、4张也就是模拟人的一个正常骑行过程和自动导航功能,之前有百度无人车驾驶技术也就不奇怪了,原理上都说得通,然而第一张真的就有点夸张了吧。

  • 那到底第一张这种自平衡效果能不能实现呢?

3、Motor-Bike Robot

    下图来源于Motor-Bike Robot视频截图,该项目是一个国外学生竞赛的作品视频介绍:

分析分析:

  • 这个视频中的自行车平衡效果与之前谷歌第一张图的平衡效果非常接近了。

  • 大家应该发现了该自行车有一个明显的特点就是其上面有一个轮盘随着车身角度在不断的来回转动,其实原理上该轮盘的转动就维系着自行车的自平衡,至于前后进退通过后轮驱动电机正反转实现,其转向是有对应的伺服电机进行转动。

  • 下面我们就看看这个小车自平衡原理到底是怎样的。

4、惯性轮平衡自行车原理与控制分析

    我们一般叫该自行车上的那个轮盘叫惯性轮,电机对其进行驱动便会产生对应的力矩,有点类似于两个齿轮咬合进行转动的原理。

     不过对于运动控制算法按照正常的开发流程首先我们应该对该自行车进行数学建模,使用的一般就是物理力学定理定律等等,所建立的现实模型都是强耦合、非线性的数学模型,这样就需要进行解耦和线性化从而简化物理模型来便于分析系统稳定性和控制器设计,然后获得初步整定参数,最后基本上就是优化参数和调节了,作者以后会再具体跟你们讲讲建模与控制的,这里就先不啰嗦。

惯性轮自行车基本原理:

    对于自行车仅仅只有左右方向一个自由度,前后方向是受约束稳定的,所以我们只需要控制左右方向,即可控制平衡,然而自行车左右摆动主要是因为其自身重心没有稳定在其机械结构的中心位置,所以需要有一个力来抵消重力的分力,并把系统拉回到中心位置,那么惯性轮通过电机进行驱动就提供了这样一个力,如下图简化模型所示:

  • 由于轮盘通过电机加速转动,会产生一定的力矩,进而产生与重力分量相反的回复力,这样当回复力>重力分量便能够使得平衡车恢复到平衡状态。

  • 同时注意其倾角的不同,对应的轮盘转动的方向不同,最终实现相应控制。

  • 如果大伙仅仅只是DIY,其实这点知识足够了,如果需要深入研究,就需要用matlab进行仿真设计,获得其简化模型,并求出传递函数,进行系统矫正,同时实际实现过程中需要对信号进行处理也是值得注意的。

惯性轮自行车控制简图:

    由于其平衡涉及到左右方向的姿态角,我们也叫横滚角(roll angle),所以需要姿态模块测量角度和角速度,然后进行数据融合,进而计算出系统与垂直方向的角度差来作为误差量输入到所设计的控制器进行控制计算,最后获得输出驱动电机控制轮盘转动提供回复力,维持自行车自平衡。

5、最后小节

    惯性轮自平衡自行车原理就讲到了,简单的玩起来还是不难的,毕竟简单的控制器就可以实现,如何需要更高的性能就需对其模型进行深入分析,并对控制器等进行优化了,获得更快的响应速度和抗干扰能力,大家感兴趣可以自己DIY一个,还是非常有意思的作品,通过整个制作的过程也能提升大家分析解决问题的能力。

    好了,这里是公众号:“最后一个bug”,一个为大家打造的技术知识提升基地。同时非常感谢各位小伙伴的支持,我们下期精彩见!

推荐好文  点击蓝色字体即可跳转

【重磅】【完全解读】RTOS中的任务是线程?进程?还是协程?

【涨知识】OS下的内存使用原来这么复杂

【OS】原来应用是这样访问到底层(系统调用)

【重磅】剖析MCU的IAP升级软件设计(设计思路篇)

☞ 【典藏】别怪"浮点数"太坑(C语言版本)

GUI必备知识之“告别”乱码(浅显易懂)

【典藏】大佬们都在用的结构体进阶小技巧

听说因为代码没"对齐"程序就奔了?(深度剖析)

【典藏】自制小型GUI界面框架(设计思想篇)

  • 7
    点赞
  • 46
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
惯性导航是一种基于惯性传感器的导航系统,主要用于测量和跟踪运动物体的方向、位置和速度。惯性导航的基本原理是基于牛顿的第一和第二定律以及相关的运动学和动力学原理惯性导航系统中的惯性传感器包括加速度计和陀螺仪。加速度计可以测量物体的加速度,而陀螺仪则可以测量物体的角速度。通过对加速度和角速度进行积分,可以得到物体的速度和位置。 在惯性导航系统中,加速度计和陀螺仪通常是以三轴的形式工作,分别是X轴、Y轴和Z轴。加速度计可以测量物体在X、Y和Z轴上的加速度,而陀螺仪可以测量物体绕X、Y和Z轴旋转的角速度。 惯性导航系统的工作过程如下:首先,通过加速度计测量物体在X、Y和Z轴上的加速度,并将其数据积分得到速度。然后,通过陀螺仪测量物体绕X、Y和Z轴的角速度,并将其数据积分得到角度。最后,通过将速度和角度与初始条件相结合,可以计算物体的位置。 然而,惯性导航系统并不是完美的。加速度计和陀螺仪存在误差,这种误差会随着时间的推移累积,导致导航的位置和姿态信息产生漂移。为了解决这个问题,通常需要进行误差补偿和校正,例如使用外部参考源(如全球定位系统)进行校准。 总之,惯性导航系统是通过加速度计和陀螺仪测量物体的加速度和角速度,并通过积分得到位置和姿态信息。虽然它在没有外部参考源的情况下可以提供准确的导航信息,但会受到误差和漂移的影响。因此,在实际应用中,通常需要结合其他传感器和校准技术来提高精度和可靠性。

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值