文章目录
-
- 2. Reeds-Shepp求解
-
- 2.1 L + S + L + L^+S^+L^+ L+S+L+
- 2.2 L + S + R + L^+S^+R^+ L+S+R+
- 2.3 L + R − L + L^+R^-L^+ L+R−L+
- 2.4 L + R − L − L^+R^-L^- L+R−L−
- 2.5 L + R + L − L^+R^+L^- L+R+L−
- 2.6 L + R β + L β − R − L^+R_{\beta}^+L_{\beta}^-R^- L+Rβ+Lβ−R−
- 2.7 L + R β − L β − R + L^+R_{\beta}^-L_{\beta}^-R^+ L+Rβ−Lβ−R+
- 2.8 L + R π / 2 − S − L − L^+R^-_{ {\pi}/{2}}S^-L^- L+Rπ/2−S−L−
- 2.9 L + S + R π / 2 + L − L^+S^+R^+_{ {\pi}/{2}}L^- L+S+Rπ/2+L−
- 2.10 L + R π / 2 − S − R − L^+R^-_{ {\pi}/{2}}S^-R^- L+Rπ/2−S−R−
- 2.11 L + S + L π / 2 + R − L^+S^+L^+_{ {\pi}/{2}}R^- L+S+Lπ/2+R−
- 2.12 L + R π / 2 − S − L π / 2 − R + L^+R^-_{ {\pi}/{2}}S^-L^-_{ {\pi}/{2}}R^+ L+Rπ/2−S−Lπ/2−R+
注:由于CSDN篇幅限制,文章只能拆分成三部分,完整的文章可见Reeds-Shepp曲线公式推导及代码实现
CSDN剩余部分:
Reeds-Shepp曲线公式推导及代码实现-第一部分(共三部分)
Reeds-Shepp曲线公式推导及代码实现-第二部分(共三部分)
Reeds-Shepp曲线公式推导及代码实现-第三部分(共三部分)
2. Reeds-Shepp求解
在下面的所有推导中,均是在归一化后的基础上进行的,即车辆的曲率半径为单位长度,并且起始姿态被认为是在原点处。 ( t , u , v ) (t,u,v) (t,u,v)表示所需的每个运动的度量。因此,在转弯机动的情况下,它们表示在转弯圆的中心内切的角度,并且在直线机动的情况下,它们表示要行进的距离。
2.1 L + S + L + L^+S^+L^+ L+S+L+

其中
- □ O 1 O 2 B A \square O_1O_2BA □O1O2BA是一个矩形
- ∠ S O 1 A = ∠ B O 2 E \angle SO_1A=\angle BO_2E ∠SO1A=∠BO2E=t
- t + v = φ t+v=\varphi t+v=φ
- O 2 O_2 O2点坐标为 ( x − sin φ , y + cos φ ) (x-\sin\varphi,y+\cos\varphi) (x−sinφ,y+cosφ)
- O 1 O_1 O1点的坐标的为 ( 0 , 1 ) (0,1) (0,1)
- O 1 O 2 ⃗ \vec{O_1O_2} O1O2在极坐标下可表示为 ( u , t ) (u,t) (u,t),这里 u u u对应的是极径, t t t对应的极角。
因此,可得
- u , t = p o l a r ( x − s i n φ , y + cos φ − 1 ) u,t=polar(x-sin\varphi,y+\cos\varphi-1) u,t=polar(x−sinφ,y+cosφ−1)
- v = φ − t v=\varphi-t v=φ−t
注: p o l a r ( x , y ) polar(x, y) polar(x,y)指的是将笛卡尔坐标系中的点 ( x , y ) (x,y) (x,y)转换为极坐标系中的表示,在极坐标系中,点的位置由半径 r r r和角度 θ \theta θ确定。
对于 r , θ = p o l a r ( x , y ) r,\theta=polar(x,y) r,θ=polar(x,y),有 r = x 2 + y 2 、 θ = a r c t a n y x r=\sqrt{x^2+y^2}、\theta=arctan{\frac{y}{x}} r=x2+y2、θ=arctanxy
2.2 L + S + R + L^+S^+R^+ L+S+R+

其中
- A D = u AD=u AD=u
- O 1 O 2 = u 1 O_1O_2=u_1 O1O2=u1
- B B B是 A D AD AD和 O 1 O 2 O_1O_2 O1O2的中点
- t − v = φ t-v=\varphi t−v=φ
- O 2 O_2 O2点坐标的 ( x + sin φ , y − c o s φ ) (x+\sin\varphi,y-cos\varphi) (x+sinφ,y−cosφ)
- O 1 O_1 O1点坐标为 ( 0 , 1 ) (0,1) (0,1)
- O 1 O 2 ⃗ \vec{O_1O_2} O1O2在极坐标下可表示为 ( u 1 , t 1 ) (u_1,t_1) (u1,t1)
- 在直角 △ O 1 B A \triangle O_1BA △O1BA中有 u 1 2 4 = 1 + u 2 4 \frac{ {u_1}^2}{4}=1+\frac{u^2}{4} 4u12=1+4u2
- θ = arctan O 1 A A B = arctan 2 u \theta=\arctan\frac{O_1A}{AB}=\arctan\frac{2}{u} θ=arctanABO1A=arctanu2
- t 1 + θ = t t_1+\theta=t t1+θ=t
因此,可得
- u 1 , t 1 = p o l a r ( x + sin φ , y − c o s φ − 1 ) u_1,t_1=polar(x+\sin\varphi,y-cos\varphi-1) u1,t1=polar(x+sinφ,y−cosφ−1)
- u = u 1 2 − 4 u=\sqrt{u_1^2-4} u=u12−4
- θ = a r c t a n 2 u \theta=arctan\frac{2}{u} θ=arctanu2
- t = t 1 + θ 1 t=t_1+\theta_1 t=t1+θ1
- v = t − φ v=t-\varphi v=t−φ
2.3 L + R − L + L^+R^-L^+ L+R−L+

其中
- △ O 1 O 2 O 3 \triangle O_1O_2O_3 △O1O2O3为等腰三角形
- O 1 O 3 = u 1 O_1O_3=u_1 O1O3=u1
- t + u + v = φ t+u+v=\varphi t+u+v=φ
- O 1 O_1 O1点坐标为 ( 0 , 1 ) (0,1) (0,1)
- O 3 O_3 O3点坐标为 ( x − sin φ , y + cos φ ) (x-\sin\varphi,y+\cos\varphi) (x−sinφ,y+cosφ)
- O 1 O 3 ⃗ \vec{O_1O_3} O1O3在极坐标下可表示为 ( u 1 , θ ) (u_1,\theta) (u1,θ)
- β = arccos O 1 O 3 / 2 O 1 O 2 = arccos U 1 4 \beta=\arccos\frac{O_1O_3/2}{O_1O_2}=\arccos\frac{U_1}{4} β=arccosO1O2O1O3/2=arccos4U1
- u = π − 2 β u=\pi-2\beta u=π−2β
- t = π 2 + θ + β t=\frac{\pi}{2}+\theta+\beta t=2π+θ+β
综上,可得
- u 1 , θ = p o l a r ( x − sin φ , y + cos φ − 1 ) u_1,\theta=polar(x-\sin\varphi,y+\cos\varphi-1) u1,θ=polar(x−sinφ,y+cosφ−1)
- β = arccos u 1 4 \beta=\arccos\frac{u_1}{4} β=arccos4u1
- t = π 2 + θ + β t=\frac{\pi}{2}+\theta+\beta t=2π+θ+β
- u = π − 2 β u=\pi-2\beta u=π−2β
- v = φ − t − u v=\varphi-t-u v=φ−t−u
2.4 L + R − L − L^+R^-L^- L+R−L−

其中
- △ O 1 O 2 O 3 \triangle O_1O_2O_3 △O1O2O3为等腰三角形
- O 1 O 3 = u 1 O_1O_3=u_1 O1O3=u1
- t + u − v = φ t+u-v=\varphi t+u−v=φ
- O 1 O_1 O1点坐标为 ( 0 , 1 ) (0,1) (0,1)
- O 3 O_3 O3点坐标为 ( x − sin φ , y + cos φ ) (x-\sin\varphi,y+\cos\varphi) (x−sinφ,y+cosφ)
- O 1 O 3 ⃗ \vec{O_1O_3} O1O

&spm=1001.2101.3001.5002&articleId=143200853&d=1&t=3&u=fd6130fb47e84112a6014b7508d9ee1a)
4046

被折叠的 条评论
为什么被折叠?



