Ackerman阿克曼(单舵轮)前轮驱动并转向移动机器人的建模及控制算法

前轮驱动转向移动平台的建模及控制算法

  • 运动学建模
    • 三种基本运动行为
    • 模型仿真验证
      • 直线运动仿真
      • 圆弧运动仿真
      • 原地旋转仿真
  • 运动控制
    • 方式一:基本控制
      • 控制原理
      • 仿真实验
    • 方式二:舵机平滑控制

运动学建模

运动特性为前轮驱动转向时,前轮的转动为其提供前行的动力,并且通过舵机调整轮姿从而改变其运动方向,如图1前轮驱动转向示意图所示。
Ackerman阿克曼(单舵轮)前轮驱动并转向移动机器人的建模及控制算法_第1张图片
该模型是阿克曼模型的一种变体,机器左右轮中心点连线的中点C (x,y)为基准点,前轮的偏角即前轮与j朝向的夹角为 ψ ψ ψ机器则j行驶的线速度和航向角速度 ω c ω_c ωc为:
ω c = v s i n ( ψ ) d v c = v c o s ψ ω_c=\frac{vsin(ψ)}{d}\newline v_c=vcosψ ωc=dvsin(ψ)vc=vcosψ
其中,v为驱动轮的线速度,d为基准点到驱动轮的间距。
则前轮驱动转向运动学模型为:
{ x ˙ = v s i n ( ψ ) c o s ( θ ) y ˙ = v c o s ( ψ ) s i n ( θ ) θ ˙ = v s i n ( ψ ) d \left\{ \begin{aligned} \dot{x} & = &vsin(ψ) cos(θ)\\ \dot{y} & = & vcos(ψ) sin(θ) \\ \dot{θ} & = & \frac{vsin(ψ)}{d} \end{aligned} \right. x˙y˙θ˙===vsin(ψ)cos(θ)vcos(ψ)sin(θ)dvsin(ψ)

三种基本运动行为

在前轮驱动转向运动方式下,驱动轮的偏角值域为 [ − π / 2 , π / 2 ] [-π/2, π/2] [π/2,π/2]。根据驱动轮不同的偏角值和转动方向,机器具备不同的三种运动行为,如图所示。
Ackerman阿克曼(单舵轮)前轮驱动并转向移动机器人的建模及控制算法_第2张图片

  • a) 当 ψ ≠ ± π / 2 , 0 ψ ≠ ±π/2, 0 ψ=±π/2,0时,机器做圆弧运动;
  • b) 当 ψ = 0 ψ = 0 ψ=0时,机器做直线运动;
  • c) 当 ψ = ± π / 2 ψ = ±π/2 ψ=±π/2时,机器做原地旋转运动。

模型仿真验证

直线运动仿真

ψ = 0 ψ = 0 ψ=0时,机器做直线运动,设定驱动轮线速度为0.1m/s,运行5s,得到仿真结果如图1所示。直行状态下姿态角不变,位置发生变化。
Ackerman阿克曼(单舵轮)前轮驱动并转向移动机器人的建模及控制算法_第3张图片Ackerman阿克曼(单舵轮)前轮驱动并转向移动机器人的建模及控制算法_第4张图片

圆弧运动仿真

ψ = π / 4 ψ = π/4 ψ=π/4时,机器做圆弧运动,设定驱动轮线速度为0.1m/s,运行5s,得到仿真结果如图所示。 ψ ψ ψ为正值,机器左转做逆时针圆弧运动。
Ackerman阿克曼(单舵轮)前轮驱动并转向移动机器人的建模及控制算法_第5张图片Ackerman阿克曼(单舵轮)前轮驱动并转向移动机器人的建模及控制算法_第6张图片
ψ = π / 4 ψ = π/4 ψ=π/4时,机器做圆弧运动,设定驱动轮线速度为-0.1m/s,运行5s,得到仿真结果如图所示。
Ackerman阿克曼(单舵轮)前轮驱动并转向移动机器人的建模及控制算法_第7张图片Ackerman阿克曼(单舵轮)前轮驱动并转向移动机器人的建模及控制算法_第8张图片

原地旋转仿真

ψ = π / 2 ψ = π/2 ψ=π/2时,机器原地旋转,设定驱动轮线速度为0.1m/s,运行5s得到仿真结果如图1-7所示。机器在原地旋转过程中,没有发生位移,姿态角持续改变。
Ackerman阿克曼(单舵轮)前轮驱动并转向移动机器人的建模及控制算法_第9张图片Ackerman阿克曼(单舵轮)前轮驱动并转向移动机器人的建模及控制算法_第10张图片
这里值得注意的是,GB7258-2017第6.4条规定:“机动车方向盘的最大自由转动量应小于或等于:a)最大设计车速大于或等于100km/h的机动车:15°”;第6.6条规定:“三轮汽车、摩托车及轻便摩托车的转向轮向左或向右转角不允许大于45°。…”

运动控制

方式一:基本控制

控制原理

基于上述前轮驱动运动方式所建模型和三种典型运动行为的分析,提出其基本的运动控制算法,如图2-1运动控制系统框图所示。
Ackerman阿克曼(单舵轮)前轮驱动并转向移动机器人的建模及控制算法_第11张图片
通过控制机器不断调整自身姿态,朝向目标移动,最终可以到达给定目标点,完成运动控制过程。如图2-1运动控制原理图所示,机器自身的姿态角为 θ θ θ,其与目标连线同x轴正半轴的夹角为 φ φ φ θ θ θ角与 φ φ φ角的差值为 δ δ δ
Ackerman阿克曼(单舵轮)前轮驱动并转向移动机器人的建模及控制算法_第12张图片
将机器输出的实时位姿信息与给定目标信息进行对比,可以得到实时的角度和距离误差,并利用舵机控制器调整自身的姿态,使之朝向目标点,同时利用电机控制器调整自身位置,使之靠近目标最终到达目标点。控制流程如图2-3控制流程示意图所示。

仿真实验

Ackerman阿克曼(单舵轮)前轮驱动并转向移动机器人的建模及控制算法_第13张图片Ackerman阿克曼(单舵轮)前轮驱动并转向移动机器人的建模及控制算法_第14张图片

方式二:舵机平滑控制

你可能感兴趣的:(机器人,#,运动控制)