阿克曼转向计算过程

阿克曼转向计算过程
本文档详细说明了阿克曼转向的计算过程,确保车辆在转弯时所有车轮沿同一转弯中心的圆形路径运动。计算过程包括将输入指令(转向角和速度)转换为适当的车轮角度和速度。

1. 输入定义

转向输入:输入通常为期望的转向角δ\deltaδ或车辆的角速度ω\omegaω,表示转弯速率。
速度输入:车辆的输入线速度vvv,通常为沿纵轴的速度。
车辆参数:
LLL:轴距,前后轴之间的距离。
ddd:轮距,同一轴上左右轮之间的距离。
vbackv_{\text{back}}vback:后轮速度,在纯阿克曼转向中假设后轮直线运动。

2. 逐步计算过程

2.1 将角速度转换为转向角

如果输入为角速度ω\omegaω和线速度vvv,需要将其转换为平均转向角δ\deltaδ,利用转弯半径与车辆几何的关系:ω=vR,R=Ltan⁡δ\omega = \frac{v}{R}, \quad R = \frac{L}{\tan \delta}ω=Rv,R=tanδL
推导得到δ\deltaδtan⁡δ=ωLv,δ=arctan⁡(ωLv)\tan \delta = \frac{\omega L}{v}, \quad \delta = \arctan \left( \frac{\omega L}{v} \right)tanδ=vωL,δ=arctan(vωL)

如果输入直接是角度,则不需要转换。

2.2 计算转弯半径

转弯半径RRR是从瞬时旋转中心(ICR)到后轴中点的距离:R=Ltan⁡δR = \frac{L}{\tan \delta}R=tanδL

这里的计算不是计算最小转弯半径(最大转角下),而是输入转角下的转弯半径。

2.3 分配前轮转向角

在这里插入图片描述

阿克曼转向要求内外轮转向角不同,以满足转弯半径的几何约束:
内侧轮转向角δin\delta_{\text{in}}δinδin=arctan⁡(LR−d2)\delta_{\text{in}} = \arctan \left( \frac{L}{R - \frac{d}{2}} \right)δin=arctan(R2dL)
外侧轮转向角δout\delta_{\text{out}}δoutδout=arctan⁡(LR+d2)\delta_{\text{out}} = \arctan \left( \frac{L}{R + \frac{d}{2}} \right)δout=arctan(R+2dL)
注意:对于左转,左轮为内侧轮δin\delta_{\text{in}}δin,右轮为外侧轮δout\delta_{\text{out}}δout。右转则相反。

2.4 分配各轮速度

根据阿克曼几何,将车辆速度分配到每个车轮,确保转弯时速度匹配:
后轮速度vbackv_{\text{back}}vback假设为输入线速度vvv,因为后轴直线运动。
前轮速度基于转弯半径和轴距计算:
左前轮速度vLv_LvLvL=v⋅R−d2Rv_L = v \cdot \frac{R - \frac{d}{2}}{R}vL=vRR2d
右前轮速度vRv_RvRvR=v⋅R+d2Rv_R = v \cdot \frac{R + \frac{d}{2}}{R}vR=vRR+2d

将转角和轴距代入可得:vL=v(1−dtan⁡δ2L),vR=v(1+dtan⁡δ2L)v_L = v \left( 1 - \frac{d \tan \delta}{2L} \right), \quad v_R = v \left( 1 + \frac{d \tan \delta}{2L} \right)vL=v(12Ldtanδ),vR=v(1+2Ldtanδ)

  1. 总结

转向角:将角速度转换为平均转向角,然后利用阿克曼几何分配内外轮角度。
速度分配:根据各轮到ICR的径向距离分配输入速度,确保平滑转弯。
该过程保证车辆协调转弯,减少轮胎磨损并保持稳定性。

计算过程:

以给定角速度为例,左转,给定ω=1rad/s\omega = 1 \text{rad/s}ω=1rad/sv=10m/sv = 10 \text{m/s}v=10m/sL=1.6mL = 1.6 \text{m}L=1.6mtan⁡δ=1×1.610=0.16,δ=arctan⁡(0.16)≈0.1585rad\tan \delta = \frac{1 \times 1.6}{10} = 0.16, \quad \delta = \arctan (0.16) \approx 0.1585 \text{rad}tanδ=101×1.6=0.16,δ=arctan(0.16)0.1585rad

δ=0.1585rad\delta = 0.1585 \text{rad}δ=0.1585radL=1.6mL = 1.6 \text{m}L=1.6mR=1.6tan⁡0.1585≈1.60.16=10mR = \frac{1.6}{\tan 0.1585} \approx \frac{1.6}{0.16} = 10 \text{m}R=tan0.15851.60.161.6=10m

R=10mR = 10 \text{m}R=10md=1.0md = 1.0 \text{m}d=1.0mL=1.6mL = 1.6 \text{m}L=1.6m
内侧(左)轮:δin=arctan⁡(1.610−0.5)=arctan⁡(1.69.5)≈0.167rad\delta_{\text{in}} = \arctan \left( \frac{1.6}{10 - 0.5} \right) = \arctan \left( \frac{1.6}{9.5} \right) \approx 0.167 \text{rad}δin=arctan(100.51.6)=arctan(9.51.6)0.167rad
外侧(右)轮:δout=arctan⁡(1.610+0.5)=arctan⁡(1.610.5)≈0.151rad\delta_{\text{out}} = \arctan \left( \frac{1.6}{10 + 0.5} \right) = \arctan \left( \frac{1.6}{10.5} \right) \approx 0.151 \text{rad}δout=arctan(10+0.51.6)=arctan(10.51.6)0.151rad

v=10m/sv = 10 \text{m/s}v=10m/sd=1.0md = 1.0 \text{m}d=1.0mL=1.6mL = 1.6 \text{m}L=1.6mδ=0.1585rad\delta = 0.1585 \text{rad}δ=0.1585radtan⁡δ≈0.16\tan \delta \approx 0.16tanδ0.16
后轮速度:vback=vv_{back}=vvback=v
左前轮速度:vL=10(1−1.0×0.162×1.6)=10(1−0.05)=9.5m/sv_L = 10 \left( 1 - \frac{1.0 \times 0.16}{2 \times 1.6} \right) = 10 \left( 1 - 0.05 \right) = 9.5 \text{m/s}vL=10(12×1.61.0×0.16)=10(10.05)=9.5m/s
右前轮速度:vR=10(1+1.0×0.162×1.6)=10(1+0.05)=10.5m/sv_R = 10 \left( 1 + \frac{1.0 \times 0.16}{2 \times 1.6} \right) = 10 \left( 1 + 0.05 \right) = 10.5 \text{m/s}vR=10(1+2×1.61.0×0.16)=10(1+0.05)=10.5m/s
在这里插入图片描述

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

打赏作者

白云千载尽

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

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

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

打赏作者

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

抵扣说明:

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

余额充值