《无人驾驶车辆模型预测控制》书中第四章仿真轨迹为直线及索引超出数组范围

1.书中Carsim版本8.01,大部分人用的版本为2016及以上,轨迹出来的是一条直线。是因为输入的前轮转角没有加到Carsim中,2016版本好像不能直接通过前轮转角直接控制汽车转向。解决办法:添加opt_steer_ext(1) 4,(4前有空格)如图所示:

2.提示超出索引值,是因为约束超出了范围,代码有错误。解决办法:将代码0.05改为-0.05,即:delta_umin=[-0.05;-0.0082;];

3.提示有效集法已移除,换成内点法求解二次规划问题,解决办法将代码中有效集解法这一行注释掉,内点法前的注释去掉,即: %options = optimset('Algorithm','active-set');
    options = optimset('Algorithm','interior-point-convex');

至于还有Flag(3)什么的我刚开始也遇到过,应该是你的.m文件有点问题,我当初都给他保存到carsim.data数据库文件夹下之后改了改这些就没了,反正就是你MPC的S—Function没设置好,改完这些就问题不大了。

最后运行即可得到类似圆的轨迹。

 

————————————————
版权声明:本文为CSDN博主「SSW.hani」的原创文章,遵循CC 4.0 BY-SA版权协议,转载请附上原文出处链接及本声明。
原文链接:https://blog.csdn.net/weixin_44902384/article/details/105495704

posted @ 2021-03-07 20:34  北极星!  阅读(753)  评论(0编辑  收藏  举报