﻿ 四轮独立转向电动汽车路径跟踪预测控制
 文章快速检索
 同济大学学报(自然科学版)  2019, Vol. 47 Issue (6): 842-850.  DOI: 10.11908/j.issn.0253-374x.2019.06.014 0

### 引用本文

ZHOU Su, WU Nan, ZHI Xuelei. Path Tracking Predictive Control of Four-wheel Independent Steering Electric Vehicle[J]. Journal of Tongji University (Natural Science), 2019, 47(6): 842-850. DOI: 10.11908/j.issn.0253-374x.2019.06.014

### 文章历史

1. 同济大学 汽车学院, 上海 201804;
2. 同济大学 中德学院, 上海 201804

Path Tracking Predictive Control of Four-wheel Independent Steering Electric Vehicle
ZHOU Su 1,2, WU Nan 1, ZHI Xuelei 1
1. School of Automotive Studies, Tongji University, Shanghai 201804, China;
2. Chinesisch-Deutsches Hochschulkolleg, Tongji University, Shanghai 201804, China
Abstract: Four-wheel independent steering (4WIS) electric vehicle adopts the strategy of simultaneous steering of front and rear wheels; in this paper the dynamic model of the 4WIS electric vehicle is established, and the relevant state space expression is obtained, then the linear time-varying path tracking prediction model is derived. Control algorithm is transformed into standard quadratic programming problem based on model predictive control theory, combined with constraint conditions and optimization objective function. The 4WIS path tracking controller is designed. Then the Matlab/Carsim joint simulation platform is used to carry out the simulation test under double shift line conditions. Finally, the robustness of the control algorithm to speed and road conditions is verified, and the influence of controller parameters on the real-time performance of the algorithm is analyzed.
Key words: four-wheel independent steering    model predictive control    dynamic model    linear time-varying model    path tracking control

4WIS电动汽车低速时具有较好的机动性, 高速时具有较优的操纵稳定性和安全性.除此之外, 通过控制转向角度, 它还能实现诸如斜行、蟹行和原地转向等功能[1], 并且在给定参考路径下具有较优的跟踪性能.

1 4WIS车辆路径跟踪模型

 图 1 4WIS车辆示意图 Fig.1 4WIS Vehicle schematic

 $\left\{\begin{array}{l}{\dot{X}=\dot{x} \cos \varphi-\dot{y} \sin \varphi} \\ {\dot{Y}=\dot{x} \sin \varphi+\dot{y} \cos \varphi}\end{array}\right.$ (1)

 $\left\{ {\begin{array}{*{20}{l}} {{v_{{\rm l}i}} = {v_{xi}}\cos {\delta _i} + {v_{yi}}\sin {\delta _i}}\\ {{v_{{\rm{c}}i}} = {v_{yi}}\cos {\delta _i} - {v_{xi}}\sin {\delta _i}} \end{array}} \right.$ (2)

xoy下和在轮胎坐标系下的轮胎纵向力、侧向力满足式(3)的转换关系.

 $\left\{ {\begin{array}{*{20}{l}} {{F_{{\rm{l}}i}} = {F_{xi}}\cos {\delta _i} + {F_{yi}}\sin {\delta _i}}\\ {{F_{{\rm{c}}i}} = {F_{yi}}\cos {\delta _i} - {F_{xi}}\sin {\delta _i}} \end{array}} \right.$ (3)

 图 2 轮胎与地面作用示意图 Fig.2 Tire and ground action diagram

 图 3 路径跟踪控制系统 Fig.3 Path tracking control system
 $\boldsymbol{u}_{\mathrm{dyn}}=\left[u_{1}, u_{2}, u_{3}, u_{4}\right]^{\mathrm{T}}=\left[\delta_{\mathrm{fl}}, \delta_{\mathrm{fr}}, \delta_{\mathrm{rl}}, \delta_{\mathrm{rr}}\right]^{\mathrm{T}}.$

 ${\mathit{\boldsymbol{\xi }}_{{\rm{dyn}}}} = {\left[ {{\xi _1}, {\xi _2}, {\xi _3}, {\xi _4}, {\xi _5}, {\xi _6}} \right]^{\rm{T}}} = {[\dot y, \dot x, \varphi , \dot \varphi , Y, X]^{\rm{T}}},$

 $\boldsymbol{\eta}=[\varphi, Y, X]^{\mathrm{T}},$

 $\boldsymbol{\eta}_{\mathrm{ref}}=\left[\varphi_{\mathrm{ref}}, Y_{\mathrm{ref}}, X_{\mathrm{ref}}\right],$

 $\left\{\begin{array}{l}{X_{\mathrm{ref}}=X} \\ {\varphi_{\mathrm{ref}}=f_{\varphi}\left(X_{\mathrm{ref}}\right), Y_{\mathrm{ref}}=f_{Y}\left(X_{\mathrm{ref}}\right)}\end{array}\right.$ (4)

 $\boldsymbol{\eta}_{\mathrm{ref}}=\left[\varphi_{\mathrm{ref}}, Y_{\mathrm{ref}}\right]^{\mathrm{T}}.$

 $F_{\mathrm{cfl}}=C_{\mathrm{cll}}\left(\delta_{\mathrm{fl}}-\frac{\dot{y}+l_{\mathrm{f}} \dot{\varphi}}{\dot{x}}\right)$ (5a)
 $F_{\mathrm{cfr}}=C_{\mathrm{cfr}}\left(\delta_{f l}-\frac{\dot{y}+l_{\mathrm{f}} \dot{\varphi}}{\dot{x}}\right)$ (5b)
 $F_{\mathrm{crl}}=C_{\mathrm{crl}}\left(\frac{\dot{y}-l_{\mathrm{r}} \dot{\varphi}}{\dot{x}}-\delta_{\mathrm{rl}}\right)$ (5c)
 $F_{\mathrm{crr}}=C_{\mathrm{crl}}\left(\frac{\dot{y}-l_{\mathrm{r}} \dot{\varphi}}{\dot{x}}-\delta_{\mathrm{rr}}\right)$ (5d)
 ${F_{{\rm{l}}i}} = {C_{{\rm{l}}i}}{S_i}, i = {\rm{fl}}, {\rm{fr}}, {\rm{rl}}, {\rm{rr}}$ (6)

 $\left\{ \begin{array}{l} {{\dot \xi }_1} = - {\xi _2}{\xi _4} + \frac{1}{m}\left[ {{C_{{\rm{cfl}}}}\left( {{u_1} - \frac{{{\xi _1} + {l_{\rm{f}}}{\xi _4}}}{{{\xi _2}}}} \right) + {C_{{\rm{cfr}}}}\left( {{u_2} - \frac{{{\xi _1} + {l_{\rm{f}}}{\xi _4}}}{{{\xi _2}}}} \right) + } \right.\\ \left. {{C_{{\rm{crl}}}}\left( {\frac{{{\xi _1} - {l_{\rm{r}}}{\xi _4}}}{{{\xi _2}}} - {\xi _3}} \right) + {C_{{\rm{crr}}}}\left( {\frac{{{\xi _1} - {l_{\rm{r}}}{\xi _4}}}{{{\xi _2}}} - {u_4}} \right)} \right]\\ {{\dot \xi }_2} = {\xi _1}{\xi _4} + \frac{1}{m}\left[ {{C_{{\rm{lfl}}}}{S_{{\rm{fl}}}} + {C_{{\rm{cfl}}}}\left( {{u_1} - \frac{{{\xi _1} + {l_{\rm{f}}}{\xi _4}}}{{{\xi _2}}}} \right){u_1} + } \right.\\ {C_{{\rm{lfr}}}}{S_{{\rm{fr}}}} + {C_{{\rm{cfr}}}}\left( {{u_2} - \frac{{{\xi _1} + {l_{\rm{f}}}{\xi _4}}}{{{\xi _2}}}} \right){u_2} + {C_{{\rm{lrl}}}}{S_{{\rm{rl}}}} + \\ \left. {{C_{{\rm{crl}}}}\left( {{u_3} - \frac{{{\xi _1} + {l_{\rm{r}}}{\xi _4}}}{{{\xi _2}}}} \right){u_3} + {C_{{\rm{lrr}}}}{S_{{\rm{rr}}}} + {C_{{\rm{crr}}}}\left( {{u_4} - \frac{{{\xi _1} + {l_{\rm{r}}}{\xi _4}}}{{{\xi _2}}}} \right){u_4}} \right]\\ {{\dot \xi }_3} = {\xi _4}\\ {{\dot \xi }_4} = \frac{1}{{{I_z}}}\left[ {{l_{\rm{f}}}\left( {{C_{{\rm{cfl}}}}\left( {{u_1} - \frac{{{\xi _1} + {l_{\rm{f}}}{\xi _4}}}{{{\xi _2}}}} \right) + {C_{{\rm{cfr}}}}\left( {{u_2} - \frac{{{\xi _1} + {l_{\rm{f}}}{\xi _4}}}{{{\xi _2}}}} \right)} \right) - } \right.\\ \left. {{l_{\rm{r}}}\left( {{C_{{\rm{crl}}}}\left( {\frac{{{\xi _1} - {l_{\rm{r}}}{\xi _4}}}{{{\xi _2}}} - {u_3}} \right) + {C_{{\rm{crr}}}}\left( {\frac{{{\xi _1} - {l_{\rm{r}}}{\xi _4}}}{{{\xi _2}}} - {u_4}} \right)} \right)} \right]\\ {{\dot \xi }_5} = {\xi _2}\sin {\xi _3} + {\xi _1}\cos {\xi _3}\\ {{\dot \xi }_6} = {\xi _2}\cos {\xi _3} - {\xi _1}\sin {\xi _3} \end{array} \right.$ (7)
 $\boldsymbol{\eta}_{\mathrm{dyn}}=\left[\xi_{3}, \xi_{5}\right]^{\mathrm{T}}$

2 预测模型的设计 2.1 线性时变模型的转化

 $\mathit{\boldsymbol{\xi }}(k + 1) = \mathit{\boldsymbol{\xi }}(k) + T \cdot f(\mathit{\boldsymbol{\xi }}(k)$ (8a)
 $\boldsymbol{u}_{\mathrm{dyn}}(k) )=F\left(\boldsymbol{\xi}(k), \boldsymbol{u}_{\mathrm{dyn}}(k)\right)$ (8b)

 $\left\{ {\begin{array}{*{20}{l}} {\mathit{\boldsymbol{\tilde \xi }}(k + 1) = F(\mathit{\boldsymbol{\tilde \xi }}(k), \mathit{\boldsymbol{\tilde u}}(k))}\\ {\mathit{\boldsymbol{\tilde \xi }}(k) = \mathit{\boldsymbol{\tilde \xi }}(k)}\\ {\mathit{\boldsymbol{\tilde u}}(k) = \mathit{\boldsymbol{u}}(k - 1)} \end{array}} \right.$ (9)

 $\mathit{\boldsymbol{\tilde \xi }}(k + 1) = {\mathit{\boldsymbol{A}}_k}\mathit{\boldsymbol{\tilde \xi }}(k) + {\mathit{\boldsymbol{B}}_k}\mathit{\boldsymbol{\tilde u}}(k)$ (10)

2.2 预测模型的推导

 $\hat{\boldsymbol{\xi}}(k+1)=\hat{\boldsymbol{A}}_{k} \hat{\boldsymbol{\xi}}(k)+\hat{\boldsymbol{B}}_{k} \Delta \boldsymbol{u}(k)+\hat{\boldsymbol{d}}(k)$ (11a)
 $\hat{\boldsymbol{\eta}}(k)=\hat{\boldsymbol{C}}_{k} \hat{\boldsymbol{\xi}}(k)+\hat{\boldsymbol{D}}_{k} \Delta \boldsymbol{u}(k)$ (11b)

 $\begin{array}{c} \mathit{\boldsymbol{\hat \xi }}(k) = {\left( {\begin{array}{*{20}{c}} {\mathit{\boldsymbol{\xi }}(k)}\\ {\mathit{\boldsymbol{u}}(k - 1)} \end{array}} \right)_{(n + m) \times 1}}, \mathit{\boldsymbol{\hat d}}(k) = {\left( {\begin{array}{*{20}{c}} {\mathit{\boldsymbol{d}}(k)}\\ {{0_m}} \end{array}} \right)_{(n + m) \times 1}}\\ \Delta \mathit{\boldsymbol{u}}(k) = \mathit{\boldsymbol{u}}(k) - \mathit{\boldsymbol{u}}(k - 1)\\ \mathit{\boldsymbol{d}}(k) = \mathit{\boldsymbol{\tilde \xi }}(k + 1) - {\mathit{\boldsymbol{A}}_k}\mathit{\boldsymbol{\tilde \xi }}(k) - {\mathit{\boldsymbol{B}}_k}\mathit{\boldsymbol{\tilde u}}(k), k \ge 0\\ {{\mathit{\boldsymbol{\hat A}}}_k} = {\left( {\begin{array}{*{20}{c}} {{\mathit{\boldsymbol{A}}_k}}&{{\mathit{\boldsymbol{B}}_k}}\\ {{\mathit{\boldsymbol{0}}_{m \times n}}}&{{\mathit{\boldsymbol{I}}_m}} \end{array}} \right)_{(n + m) \times (n + m)}}{{\mathit{\boldsymbol{\hat B}}}_k} = {\left( {\begin{array}{*{20}{c}} {{\mathit{\boldsymbol{B}}_k}}\\ {{\mathit{\boldsymbol{I}}_m}} \end{array}} \right)_{(n + m) \times m}}\\ {{\mathit{\boldsymbol{\hat C}}}_k} = {\left( {{\mathit{\boldsymbol{C}}_k}\quad {\mathit{\boldsymbol{D}}_k}} \right)_{p \times (n + m)}}, {{\mathit{\boldsymbol{\hat D}}}_k} = {\left( {{\mathit{\boldsymbol{D}}_k}} \right)_{p \times m}} \end{array}$

 $\mathit{\boldsymbol{\hat Y}} = {\mathit{\boldsymbol{\psi }}_k}\mathit{\boldsymbol{\widehat \xi }}(k) + {\mathit{\boldsymbol{ \boldsymbol{\varTheta} }}_k}\Delta \mathit{\boldsymbol{U}}(k) + {\mathit{\boldsymbol{ \boldsymbol{\varGamma} }}_k}\mathit{\boldsymbol{\phi}}(k)$ (12)

 $\begin{array}{c} \mathit{\boldsymbol{\hat Y}} = {\left[ {\begin{array}{*{20}{c}} {\mathit{\boldsymbol{\hat \eta }}(k + 1)}\\ {\mathit{\boldsymbol{\hat \eta }}(k + 2)}\\ \vdots \\ {\mathit{\boldsymbol{\hat \eta }}\left( {k + {N_{\rm{p}}}} \right)} \end{array}} \right]_{{N_{\rm{p}}} \times 1}}, \Delta \mathit{\boldsymbol{U}}(k) = {\left[ {\begin{array}{*{20}{c}} {\Delta u(k)}\\ {\Delta u(k + 1)}\\ \vdots \\ {\Delta u\left( {k + {N_{\rm{c}}}} \right)} \end{array}} \right]_{{N_{\rm{c}}} \times 1}}, \\ \phi (k) = {\left[ {\begin{array}{*{20}{c}} {\mathit{\boldsymbol{\hat d}}(k)}\\ {\mathit{\boldsymbol{\hat d}}(k + 1)}\\ \vdots \\ {\mathit{\boldsymbol{\hat d}}\left( {k + {N_{\rm{p}}} - 1} \right)} \end{array}} \right]_{{N_{\rm{p}}} \times 1}}, \end{array}$
 ${\mathit{\boldsymbol{ \boldsymbol{\varTheta} }}_k} = {\left[ \begin{array}{l} \begin{array}{*{20}{c}} {{{\mathit{\boldsymbol{\hat C}}}_k}{{\mathit{\boldsymbol{\hat B}}}_k}}&{{{\mathit{\boldsymbol{\hat D}}}_k}}& \cdots & \cdots &{{\mathit{\boldsymbol{0}}_{p \times m}}}\\ {\mathit{\boldsymbol{\hat C}}{{\mathit{\boldsymbol{\hat A}}}_k}{{\mathit{\boldsymbol{\hat B}}}_k}}&{{{\mathit{\boldsymbol{\hat C}}}_k}{{\mathit{\boldsymbol{\hat B}}}_k}}&{{{\mathit{\boldsymbol{\hat D}}}_k}}& \cdots &{{\mathit{\boldsymbol{0}}_{p \times m}}}\\ \vdots & \vdots & \vdots & \ddots & \vdots \\ {{{\mathit{\boldsymbol{\hat C}}}_k}\mathit{\boldsymbol{\hat A}}_k^{{N_{\rm{p}}} - 1}{{\mathit{\boldsymbol{\hat B}}}_k}}&{{{\mathit{\boldsymbol{\hat C}}}_k}\mathit{\boldsymbol{\hat A}}_k^{{N_{\rm{p}}} - 2}{{\mathit{\boldsymbol{\hat B}}}_k}}& \cdots & \cdots &{{{\mathit{\boldsymbol{\hat C}}}_k}\mathit{\boldsymbol{\hat A}}_k^{{N_{\rm{p}}} - {N_{\rm{c}}}}{{\mathit{\boldsymbol{\hat B}}}_k}} \end{array}\\ \end{array} \right]_{{N_{\rm{p}}} \times {N_{\rm{c}}}}},$
 ${\mathit{\boldsymbol{ \boldsymbol{\varGamma} }}_k} = {\left[ \begin{array}{l} \begin{array}{*{20}{c}} {{{\mathit{\boldsymbol{\hat C}}}_k}}&{{\mathit{\boldsymbol{0}}_{p \times (n + m)}}}& \cdots &{{\mathit{\boldsymbol{0}}_{p \times (n + m)}}}\\ {{{\mathit{\boldsymbol{\hat C}}}_k}{{\mathit{\boldsymbol{\hat A}}}_k}}&{{{\mathit{\boldsymbol{\hat C}}}_k}}& \cdots &{{\mathit{\boldsymbol{0}}_{p \times (n + m)}}}\\ \vdots & \vdots & \ddots & \vdots\\ {{{\mathit{\boldsymbol{\hat C}}}_k}\mathit{\boldsymbol{\hat A}}_k^{{N_{\rm{p}}} - 1}}&{{{\mathit{\boldsymbol{\hat C}}}_k}\mathit{\boldsymbol{\hat A}}_k^{{N_{\rm{p}}} - 2}}& \cdots &{{{\mathit{\boldsymbol{\hat C}}}_k}} \end{array} \end{array} \right]_{{N_{\rm{p}}} \times {N_{\rm{p}}}}},$
 $\boldsymbol{\psi}_{k}=\left[\begin{array}{c}{\hat{{\bf C}}_{k} \hat{\boldsymbol{A}}_{k}} \\ {\hat{\boldsymbol{C}}_{k} \hat{\boldsymbol{A}}_{k}^{2}} \\ {\vdots} \\ {\hat{\boldsymbol{C}}_{k} \hat{\boldsymbol{A}}_{k}^{N_{\mathrm{p}}}}\end{array}\right]_{N_{\mathrm{p}} \times 1}.$

2.3 二次规划问题转化

 $\begin{array}{l} J = \sum\limits_{j = 1}^{{N_{\rm{p}}}} {{{\left( {\mathit{\boldsymbol{\hat \eta }}(k + j) - {\mathit{\boldsymbol{\eta }}_{{\rm{ref}}}}(k + j)} \right)}^{\rm{T}}}} {q_j}(\mathit{\boldsymbol{\hat \eta }}(k + j) - \\ {\mathit{\boldsymbol{\eta }}_{{\rm{ref}}}}(k + j)) + \sum\limits_{j = 1}^{{N_{\rm{c}}} - 1} {{{(\Delta \mathit{\boldsymbol{u}}(k))}^{\rm{T}}}} {r_j}(\Delta \mathit{\boldsymbol{u}}(k)) \end{array}$ (13)

 $u_{\min }(k+i) \leqslant u(k+i) \leqslant u_{\max }(k+i)$ (4a)

 $\Delta u_{\min }(k+i) \leqslant \Delta u(k+i) \leqslant \Delta u_{\max }(k+i)$ (14b)

 $\hat{\boldsymbol{\eta}}_{\min }(k+i) \leqslant \hat{\boldsymbol{\eta}}(k+i) \leqslant \hat{\boldsymbol{\eta}}_{\max }(k+i)$ (14c)

 $\begin{array}{l} J = \sum\limits_{j = 1}^{{N_p}} {{{\left( {\mathit{\boldsymbol{\hat \eta }}(k + j) - {\mathit{\boldsymbol{\eta }}_{{\rm{esf}}}}(k + j)} \right)}^T}} {q_j}(\mathit{\boldsymbol{\hat \eta }}(k + j) - \\ {\mathit{\boldsymbol{\eta }}_{{\rm{ref}}}}(k + j)) + \sum\limits_{j = 1}^{{N_{\rm{c}}} - 1} {{{(\Delta \mathit{\boldsymbol{u}}(k))}^{\rm{T}}}} {r_j}(\Delta \mathit{\boldsymbol{u}}(k)) + \rho {\varepsilon ^2} \end{array}$ (15)

 $\boldsymbol{e}_{k}=\boldsymbol{\psi}_{k} \hat{\boldsymbol{\xi}}(k)+{\mathit{\boldsymbol{ \boldsymbol{\varGamma} }}_k} \boldsymbol{\phi}_{k}-\boldsymbol{Y}_{\mathrm{ref}}(k)$ (16)

 $J=\Delta \boldsymbol{U}(k)^{\mathrm{T}}\left(\mathit{\boldsymbol{ \boldsymbol{\varTheta}}}_{k}^{\mathrm{T}} \boldsymbol{Q} \mathit{\boldsymbol{ \boldsymbol{\varTheta}}}_{k}+R\right) \Delta \boldsymbol{U}(k)+2 \boldsymbol{e}_{k} \boldsymbol{Q} \mathit{\boldsymbol{ \boldsymbol{\varTheta}}}_{k} \Delta \boldsymbol{U}(k)+\\ \boldsymbol{e}_{k}^{\mathrm{T}} \boldsymbol{Q} \boldsymbol{e}_{k}=\frac{1}{2}\left[\begin{array}{c}{\Delta \boldsymbol{U}(k)} \\ {\varepsilon}\end{array}\right]^{\mathrm{T}} \boldsymbol{H}\left[\begin{array}{c}{\Delta \boldsymbol{U}(k)} \\ {\varepsilon}\end{array}\right]+\\ f\left[\begin{array}{c}{\Delta \boldsymbol{U}(k)} \\ {\varepsilon}\end{array}\right]+\boldsymbol{e}_{k}^{\mathrm{T}} \boldsymbol{Q} \boldsymbol{e}_{k}$ (17)

 $\begin{array}{c} \boldsymbol{H}=\left[\begin{array}{cc}{2\left(\mathit{\boldsymbol{ \boldsymbol{\varTheta}}}_{k}^{\mathrm{T}} \boldsymbol{Q} \mathit{\boldsymbol{ \boldsymbol{\varTheta}}}_{k}+\boldsymbol{R}\right)} & {0} \\ {0} & {2 \boldsymbol{e}_{k}}\end{array}\right]_{\left(1+m N_{\mathrm{c}}\right) \times\left(1+M N_{\mathrm{c}}\right)}\\ \boldsymbol{f}=\left[\begin{array}{cc}{2 \boldsymbol{e}_{k}^{\mathrm{T}} \boldsymbol{Q} \mathit{\boldsymbol{ \boldsymbol{\varTheta}}}_{k}} & {} & {0}\end{array}\right]_{1 \times m N_{\mathrm{c}}} \end{array}$

 $\boldsymbol{K}=\left(\begin{array}{cccc}{1} & {0} & {0} & {0} \\ {1} & {1} & {0} & {0} \\ {\vdots} & {\vdots} & {\ddots} & {0} \\ {1} & {1} & {\cdots} & {1}\end{array}\right)_{N_{{\rm c}} \times N_{{\rm c}}}, \quad \boldsymbol{M}=\boldsymbol{K} \otimes \boldsymbol{I}_{m}$

 $\boldsymbol{U}(k)=\boldsymbol{M} \Delta u(k)+\boldsymbol{u}(k-1)$ (18)

 $\operatorname{Min} J(\boldsymbol{\xi}(k), \boldsymbol{u}(k-1), \Delta \boldsymbol{U}(k))$
 $\mathrm{s. t} \left[\begin{array}{c}{\Delta \boldsymbol{U}_{\min }} \\ {0}\end{array}\right] \leqslant\left[\begin{array}{c}{\Delta \boldsymbol{U}(k)} \\ {\varepsilon}\end{array}\right] \leqslant\left[\begin{array}{c}{\Delta \boldsymbol{U}_{\max }} \\ {\rho}\end{array}\right]$ (19)
 $\left[\begin{array}{cc}{\boldsymbol{M}} & {{\bf 0}_{m N_{\mathrm{c}}} \times 1} \\ {-\boldsymbol{M}} & {{\bf 0}_{m N_{\mathrm{c}}} \times 1} \\ {\mathit{\boldsymbol{ \boldsymbol{\varTheta}}}_{k}} & {{\bf 0}_{p N_{\mathrm{p}} \times 1}} \\ {-\mathit{\boldsymbol{ \boldsymbol{\varTheta}}}_{k}} & {{\bf 0}_{p N_{\mathrm{p}} \times 1}}\end{array}\right]\left[\begin{array}{c}{\Delta \boldsymbol{U}(k)} \\ {\varepsilon}\end{array}\right] \leqslant \left[\begin{array}{c}{\boldsymbol{U}_{\max }-\boldsymbol{U}(k)} \\ {-\boldsymbol{U}_{\min }-\boldsymbol{U}(k)} \\ {\hat{\boldsymbol{Y}}_{\max }-\boldsymbol{\psi}_{k} \mathit{\boldsymbol{\hat \xi }}-\mathit{\boldsymbol{ \boldsymbol{\varGamma}}}_{k} \boldsymbol{\phi}(k)} \\ {-\hat{\boldsymbol{Y}}_{\max }+\boldsymbol{\psi}_{k} \mathit{\boldsymbol{\hat \xi }}+\mathit{\boldsymbol{ \boldsymbol{\varGamma}}}_{k} \boldsymbol{\phi}(k)}\end{array}\right]$

 $\Delta \boldsymbol{U}_{k}^{*}=\left[\Delta u_{k}^{*}, \Delta u_{k+1}^{*}, \cdots, \Delta u_{k+N_{{\rm c}}-1}^{*}\right]^{\mathrm{T}}$ (20)

 $u(k)=u(k-1)+\Delta u_{k}^{*}$ (21)

3 4WIS车辆路径跟踪控制器 3.1 平台及模型参数

 图 4 Matlab/Carsim联合仿真模型 Fig.4 Matlab/Carsim joint simulation model

 $\begin{array}{c} \boldsymbol{u}_{\min }=\left[-10^{\circ}, -10^{\circ}, -10^{\circ}, -10^{\circ}\right]^{\mathrm{T}} \\ \boldsymbol{u}_{\max }=\left[10^{\circ}, 10^{\circ}, 10^{\circ}, 10^{\circ}\right]^{\mathrm{T}} \\ \Delta \boldsymbol{u}_{\min }=\left[-0.3^{\circ}, -0.3^{\circ}, \right.-0.3^{\circ}, -0.3^{\circ} ]^{\mathrm{T}} \\ \Delta \boldsymbol{u}_{\max }=\left[0.3^{\circ}, 0.3^{\circ}, \right. 3^{\circ}, 0.3^{\circ} ]^{\mathrm{T}} \end{array}$

 $\left\{\begin{array}{l}{Y_{\mathrm{ref}}(X)=\frac{d_{y 1}}{2}\left(1+\tanh \left(z_{1}\right)\right)-\frac{d_{2}}{2}\left(1+\tanh \left(z_{2}\right)\right)} \\ {\varphi_{\mathrm{ref}}(X)=\arctan \left(d_{y 1}\left(\frac{1}{\cosh \left(z_{1}\right)}\right)^{2}\left(\frac{1.2}{d_{x 1}}\right)-\right.} \\ {d_{y 2}\left(\frac{1}{\cosh \left(z_{2}\right)}\right)^{2}\left(\frac{1.2}{d_{x 2}}\right) )}\end{array}\right.$ (22)

3.2 仿真分析

 图 5 不同路况下仿真结果 Fig.5 Simulation results under different road conditions

 图 6 不同车速下的仿真结果 Fig.6 Simulation results under different vehicle speeds

① 不再单纯通过四轮转角作为输入控制量, 联合直接横摆力矩控制车辆横摆角速度, 实现高速时的路径跟踪;

② 在二次规划问题转化时, 加入质心侧偏角约束;

③ 经仿真验证, 在减小采样时间T时, 同时提高可控车速, 这也提高了对试验硬件的要求.

 图 7 不同预测时域下的仿真结果 Fig.7 Simulation results of different prediction horizon

 图 8 不同控制时域下的仿真结果 Fig.8 Simulation results under different control time domain
4 结论

(1) 4WIS车辆动力学模型建立.车辆动力学模型和轮胎模型是设计控制器的模型基础, 以六自由度的四轮转向车辆动力学状态空间描述模型作为预测模型, 实现路径跟踪.非线性模型需要进行适当的降维和简化, 使用小角度转向时的特性来描述轮胎模型.

(2) 线性时变模型预测控制算法的研究.非线性模型和约束会大大增加模型预测控制问题的求解难度, 在线实时求解较难实现.推导了线性时变预测模型控制算法的公式, 以及将LTV MPC最优问题转化为便于计算机求解的标准二次规划问题.基于此, 设计了4WIS电动汽车路径跟踪模型预测控制算法, 并结合约束条件和优化目标函数进行控制器设计.

(3) 双移线工况下路径跟踪控制算法的仿真验证和性能分析.利用Matlab/Carsim的联合仿真, 将LTV MPC算法以S函数形式进行封装, 在Carsim里建立合适的整车模型, 对算法进行验证.通过对控制器在不同路况、不同车速、不同设计参数下的分析, 验证了控制器在不同车速和不同附着系数下对路径跟踪的鲁棒性, 保证了车辆的稳定行驶; 并且分析了预测时域和控制时域对控制器的准确性、实时性的影响.

(4) 算法约束优化.设计的算法约束只有控制量、控制增量和输出量的范围, 在实际仿真过程中可能会出现非可行解或使整车失稳的控制量序列.因此, 可以考虑加入软约束或设计动力学状态约束(如质心侧偏角), 使算法具有更广泛的应用性.

 [1] 肖志文.四轮独立驱动、独立转向电动汽车: 用于路径控制的车辆动力学建模及分析[D].上海: 同济大学, 2017. XIAO Zhiwen. Four-wheel independent drive, independent steering electric vehicle: vehicle dynamics modeling and analysis for trajectory Control [D]. Shanghai: Tongji University, 2017. [2] GOODARZI A, SABOOTEH A, ESMAILZADEH E. Automatic path control based on integrated steering and external yaw-moment control[J]. Proceedings of the Institution of Mechanical Engineers Part K: Journal of Multi-body Dynamics, 2008, 222(2): 189 DOI:10.1243/14644193JMBD120 [3] SALEHPOUR S, POURASAD Y, TAHERI S H. Vehicle path tracking by integrated chassis control[J]. Journal of Central South University, 2015, 22(4): 1378 DOI:10.1007/s11771-015-2655-y [4] HU C, WANG R, YAN F, et al. Should the desired heading in path following of autonomous vehicles be the tangent direction of the desired path[J]. IEEE Transactions on Intelligent Transportation Systems, 2015, 16(6): 3084 DOI:10.1109/TITS.2015.2435016 [5] MASHADI B, AHMADIZADEH P, MAJIDI M.Integrated controller design for path following in autonomous vehicles[R]. [S.l.]: SAE, 2011. [6] HANG P, LUO F, FANG S, et al. Path tracking control of a four wheel independent steering electric vehicle based on model predictive control[C]//Proceedings of the 36th Chinese Control Conference. Dalian: IEEE, 2017: 9360-9366. http://cpfd.cnki.com.cn/Article/CPFDTOTAL-KZLL201707006193.htm [7] FALCONE P, BORRELLI F, ASGARI J, et al. Predictive active steering control for autonomous vehicle systems[J]. IEEE Transactions on Control Systems Technology, 2007, 15(3): 566 DOI:10.1109/TCST.2007.894653 [8] FALCONE P.Nonlinear model predictive control for autonomous vehicles[D].Benevento: [s.n.], 2007. [9] 张济民, 张继彤, 任利慧. 摆式客车倾摆控制系统神经网络预测控制[J]. 同济大学学报(自然科学版), 2006(7): 947 ZHANG Jimin, ZHANG Jitong, REN Lihui. Predictive control of tilting control system for pendulum-train buses based on neural network[J]. Journal of Tongji University(Natural Science), 2006(7): 947 DOI:10.3321/j.issn:0253-374X.2006.07.020 [10] 胡长健.电动轮驱动车辆的驱动力助力转向技术研究[D].长春: 吉林大学, 2008. HU Changjian. Research on power steering assisted by driving force of electric wheel driven vehicle[D]. Changchun: Jilin University, 2008. http://cdmd.cnki.com.cn/Article/CDMD-10183-2008060853.htm [11] FALCONE P, TUFO M, BORRELLI F, et al.A linear time varying model predictive control approach to the integrated vehicle dynamics control problem in autonomous systems[C]//2007 46th IEEE Conference on Decision and Control.[S.l.]: IEEE, 2008: 2980-2985. [12] 陈虹, 刘志远, 解小华. 非线性模型预测控制的现状与问题[J]. 控制与决策, 2001(4): 385 CHEN Hong, LIU Zhiyuan, XIE Xiaohua. Present situation and problems of nonlinear model predictive control[J]. Control and Decision, 2001(4): 385 DOI:10.3321/j.issn:1001-0920.2001.04.001