长 龙
2021-10-24 13:37
采纳率: 0%
浏览 110

四轮差速:线速度和角速度的转换

如图:已知四个轮子的速度以及左右前后轮子的间距,求解四个轮子对称中心的线速度和角速度?

img

  • 好问题 提建议
  • 收藏

1条回答 默认 最新

  • 王大师王文峰 2021-10-26 14:52

    大概就是这样,由于不是人工智能专业,给你找了这个,哈哈

    PWM, 线性速度,左右轮子速度和角速度的关系
    机器人线性速度: RobotV

    左右轮速度: LeftWheelV RightWheelV

    角速度: YawRate

    RobotV = ( LeftWheelV + RightWheelV ) / 2 //公式1
    YawRate = delta_t * abs( LeftWheelV - RightWheelV ) //公式2
    PWM 与轮子的关系:

    xxxxWheelV = PWM *factor + offset //公式3

    在实际运行中发现,左右轮的性能因为硬件有所差异,所以 delta_t, factor, offset 对左右两边来讲是不一样的。所以它们各有一套参数。这些参数的确定是要通过大量的数据采集后进行分析得出来的。下面我们讨论如何确定公式2,3中的参数
    3. 左右轮子速度和PID控制
    PWM与轮子转速的关系并不是不变的,当电池放电一段时间后,要增大factor的值才能达到期望的速度。这就是PID的作用,PID要求给一个初始PWM值,上面的公式3就可以算出这个初始值,剩下就交给反馈调整了, ROS有个pid类。

    1. PWM与轮子速度实验数据分析
      PWM从20至100的区间平均取10个值,跑10轮。每轮前行1米,然后后退1米,记录前进后退两个速度。左右两轮各一套数据,每次这样得到了4个数据样本,总共40个,图表分析如下:

    1。左上图 Forward left wheel 前行左轮
    2。左下图 Backward left wheel 后退左轮

    3。右上图 Forward right wheel 前行右轮

    4。右下图 Backward right wheel 后退右轮

    横坐标是PWM值,纵坐标是速度(m/s)
    采样数据的结果非常完美,标准的线性关系图。同时也能看出来左右两轮确实有不一致的地方,但是前进后退的数据很统一。这样就可以测出factor, offset两个参数,左右两轮个一套。

    5.左右轮速度差与角速度实验数据分析
    公式2的分析比较复杂,但是一旦确定就不变了,除非改变环境。分析出delta_t
    转弯分为10种类型:

    1,左轮不转,右轮PWM从20至100的区间平均取10个值,向前跑10轮。每轮跑360度,测出角速度和线速度。

    2,右轮不转,左轮PWM从20至100的区间平均取10个值,向前跑10轮。每轮跑360度,测出角速度和线速度。

    3,左轮比右轮转的慢,速度差逐渐加大取10个值,向前跑10轮。每轮跑360度,测出角速度和线速度。

    4,右轮比左轮转的慢,速度差逐渐加大取10个值,向前跑10轮。每轮跑360度,测出角速度和线速度。

    5,左轮向前,右轮向后,速度差逐渐加大取10个值,顺时针跑10轮。每轮跑360度,测出角速度和线速度。
    6, 左轮不转,右轮PWM从20至100的区间平均取10个值,向后跑10轮。每轮跑360度,测出角速度和线速度。
    7,右轮不转,左轮PWM从20至100的区间平均取10个值,向后跑10轮。每轮跑360度,测出角速度和线速度。

    8,左轮比右轮转的慢,速度差逐渐加大取10个值,向后跑10轮。每轮跑360度,测出角速度和线速度。

    9,右轮比左轮转的慢,速度差逐渐加大取10个值,向后跑10轮。每轮跑360度,测出角速度和线速度。

    10,左轮向后,右轮向前,速度差逐渐加大取10个值,逆时针跑10轮。每轮跑360度,测出角速度和线速度。

    评论
    解决 2 无用
    打赏 举报
    1人已打赏

相关推荐 更多相似问题