• (笔记)双舵轮AGV里程计&运动控制核心算法


    舵轮AGV可以通过调整两个舵轮的角度及速度,可以使小车在不转动车头的情况下实现变道,转向等动作,甚至可以实现沿任意点为半径的转弯运动,有很强的灵活性。 因此在AGV行业,这种驱动方式应用很广,但是目前能做好控制的厂家并不多。不容置疑,这一点上凤凰动力应该是国内做的比较好的厂家。

    该种AGV,一般包含两个舵轮,通常布置在AGV车体中心前后、或AGV车体对角分布。如图:

    本文将以在车体中心前后分布方式的AGV为例,进行分析。

    大家都知道舵轮的参数有线速度大小、角速度大小、舵向值(v,w,a)三个参数(舵轮线速度方向一定等于舵向值)。同时我们控制双舵轮AGV去跟随路劲的时候,导航算法控制器也会给AGV下发线速度大小、线速度方向、角速度(不同于差速轮AGV,舵轮AGV可以全向行走,因此线速度方向是可以不同于AGV的航向角的,本文假设的线速度方向相对于AGV航向角),然后AGV舵轮驱动算法,将根据导航算法下发的三个参数来解算两个舵轮的三个参数。

    我们可以将该AGV简化成两个舵轮旋转中心支点刚性连接的情况,以两舵轮旋转中心点来计算AGV线速度和角速度。

    已知导航算法下发给AGV中心点的参数为(V,W,A),两舵轮之间的距离D,求舵轮1的参数(V1,W1,A1),舵轮2的参数(V2,W2,A2)。如下图:

    我们其中W=W1=W2

    第一步

    已知参数(V,W,A),求AGV的旋转半径。

    根据A可知旋转半径与AGV中心点速度的几何关系,如下图所示:

    第二步

    由于两个舵轮旋转中心支点与AGV是刚性连接,所以两舵轮的中心支点必定与AGV旋转中心同心。 将AGV旋转中心与两舵轮旋转中心点连接,如下图:

    这里问题变成了,已知A、R,求R1,R2,A1,A2;(提示简单的三角几何计算);

    R1、R2、A1、A2就算到这里。

    第三步

    由于 r=v/w,W1=W2=W

    所以 V1=V*(R1/R);V2=V*(R2/R)

    第四步

    将V1、V2、A1、A2分别解算出来,下发给两舵轮控制器,双舵轮AGV就可以按照你的导航算法去运动了。

    END

    先讲到这一步,面对问题,工程师需具备独立思考的能力,主动探索解决问题的方法。

    另外,双舵轮的里程计,也可以根据此文章,倒推计算出来。

    说明:本文转自:双舵轮AGV里程计&运动控制核心算法|方向|agv|角速度|线速度_网易订阅 (163.com)

  • 相关阅读:
    头文件里面的ifndef /define/endif的作用
    互联网小知识
    IT技术开发人员获得成功的六大步骤
    ab网站压力测试
    微软校招试题
    C程序编译过程浅析
    makefile变量赋值
    printf的题目
    Oracle命名规范
    javascript(js)小数精度丢失的解决方案
  • 原文地址:https://www.cnblogs.com/tdyizhen1314/p/16471124.html
Copyright © 2020-2023  润新知