差速转向机器人数学模型

     机器人控制方面有两种模型,一是自行车模型,二是差速模型,今天主要推导了差速模型,实验室的履带车都是差速模型。

   参考了两轮差速移动机器人运动分析、建模和控制_二轮差速-CSDN博客博文。

                             

          假设电机输出的角速度为\phi l\phi r,轮子驱动半径为r,有如下式子:

          v_{l}=\frac{\phi _{l}cos(\theta )}{2}

          v_{r}=\frac{\phi _{r}cos(\theta )}{2}

       c点的瞬时速度为v_{c}=\frac{v_{r}+v_{l}}{2}

      左右轮间的间距为l,转弯半径oc到c的距离为R,转弯时有w_{l}=w_{r}=w_{c},因为车辆转弯时是同轴的。故有l=\frac{v_{r}}{w_{r}}-\frac{v_{l}}{w_{l}}

,进而有w_{c}=\frac{v_{r}-v_{l}}{l}

   所以可知转弯半径R=\frac{v_{c}}{w_{c}}=\frac{l(v_{r}+v_{l})}{2(v_{r}-v_{l})}.

  上述是基础。需要整合一下,也是最关键一步。结合图分析有如下的:

   x{}' =v_{c}cos\theta =\frac{v_{r}+v_{l}}{2}cos\theta

  y{}' =v_{c}sin\theta =\frac{v_{r}+v_{l}}{2}sin\theta

   \theta {}' =w_{c} =\frac{v_{r}-v_{l}}{l}

需要对上述式子离散化处理:T为采样时间。

x(t+1)=x(t)+v_{c}cos\theta \times T

y(t+1)=y(t)+v_{c}sin\theta \times T

\theta (t+1)=theta (t)+w_{c}\times T

这就是所谓的一个系统的被控对象的状态方程,后续可对其设计控制器等等。这里我们选择输入为vl和vr。

如果是在Ros机器人 操作系统框架下,那么我们选择的输入控制量为w_{c}v_{c},但是在控制电机时,我们比较喜欢vl和vr,所以需要进行反解算出v_{r}=v_{c}+\frac{w_{c}l}{2},v_{l}=v_{c}-\frac{w_{c}l}{2}

 我们要做一个航向角跟踪 a=k*error。

如果觉得文章还不错,可以关注下我的微信公众号:

评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

Jack Ju

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

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

余额充值