自动驾驶控制算法——老王Carsim_Simulink环境搭建步骤
老王复盘
Carsim有两个文件路径:Data和Prob
设置Matlab当前路径为Data,设置路径里添加子文件路径包括Data和Prob
修改Matlab当前路径方法:
cd('')
- 在Carsim的
添加在Simulink创建的模型文件,在simulink创建的空文件(.slx),保存到Carsimdata中
- 左下角import和Export设置I/O Channels:Import,link to new dataset,title随便写一个
- 点进去,添加路径文件,Quick Start,Baseline
- 输入:扭矩IMP_MENGINE和制动压力IMP_PCON_BK,输出:车速Vx,加速度Ax,转速Av_eng
- Procedure,修改仿真时间
- send to Simulink,填写simfile.sim
- 搭建需要的所有S-function模块
- predict module模块
function [pre_x,pre_y,pre_phi,pre_vx,pre_vy,pre_phi_dot] = fcn(x,y,phi,vx,vy,phi_dot,ts)pre_x = x +vx*ts*cos(phi)-vy*ts*sin(phi);pre_y = y +vy*ts*cos(phi)+vx*ts*sin(phi);pre_phi = phi+phi_dot*ts;pre_vx = vx;pre_vy = vy;pre_phi_dot = phi_dot;
end
err/kappa calculate module模块
function [kr,err] = fcn(x,y,phi,vx,vy,phi_dot,xr,yr,thetar,kappar)%kappar是曲率n = length(xr);%查看一共有多少规划点d_min = (x-xr(1))^2+(y-yr(1))^2;%找到距离最近的规划点min = 1;for i=1:n%遍历找到最近的点d = (x-xr(i))^2+(y-yr(i))^2;if d < d_mind_min = d;min =i;endenddmin = min;tor = [cos(thetar(dmin));sin(thetar(dmin))];nor = [-sin(thetar(dmin));cos(thetar(dmin))];d_err = [x-xr(dmin);y-yr(dmin)];ed = nor'*d_err;es = tor'*d_err;projection_point_thetar = thetar(dmin);%apollo%projection_point_thetar = thetar(dmin) + kappar(dmin)*es;%老王的改进ed_dot = vy*cos(phi - projection_point_thetar) + vx*sin(phi - projection_point_thetar);%%%%%%ephi = sin(phi - projection_point_thetar);%消除pi的影响%%%%%%s_dot = vx*cos(phi - projection_point_thetar)-vy*sin(phi - projection_point_thetar);s_dot = s_dot/(1-kappar(dmin)*ed);ephi_dot = phi_dot - kappar(dmin)*s_dot;kr = kappar(dmin);err = [ed;ed_dot;ephi;ephi_dot];
lqr_offline
function k = fcn(k1,k2,k3,k4,vx)if abs(vx)<0.01k=[0,0,0,0];elseindex = round(vx/0.01);k = [k1(index),k2(index),k3(index),k4(index)];end
end
forword_angle
function forword_angle = fcn(vx,a,b,m,cf,cr,k,kr)forword_angle = kr*(a+b-b*k(3)-(m*vx*vx/(a+b)*(b/cf)+(a/cr)*k(3)-(a/cr)));
end
- 最后一个模块得到angle输出
function angle = fcn(k,err,forword_angle)angle = -k*err + forword_angle;
end
自动驾驶控制算法——老王Carsim_Simulink环境搭建步骤相关推荐
- 自动驾驶平台Apollo 2.5环境搭建
原文地址:https://blog.csdn.net/jinzhuojun/article/details/80210180 我们知道,自动驾驶在学界其实已经是个很老的topic了.而这几年,伴随着以 ...
- 【学习记录】【B 站忠厚老实的老王】自动驾驶控制算法第一讲 绪论与前期准备
提示:文章写完后,目录可以自动生成,如何生成可参考右边的帮助文档 文章目录 前言 一.对自动驾驶的态度 工具 软件 书籍 自动驾驶技术漫谈 总结 前言 本文内容是对B站忠厚老实的老王视频的整理.侵删. ...
- Win7(老PC)Python环境搭建实战
我的CSDN主页 My Python 学习个人备忘录 我的HOT博 Win7(老PC)Python环境搭建实战 在Python官方网站,准备下载寒佬介绍的最新3.10.2版本. 本来这事儿, ...
- pycharm+python3.7+pyqt配置_Python3+Pycharm+PyQt5环境搭建步骤图文详解
搭建环境: 操作系统:Win10 64bit Python版本:3.7 Pycharm:社区免费版 一.Python3.7安装 下载到安装包后打开,如果想安装到默认路径(C盘)的话一直点下一步就可以了 ...
- pycharm python3.7环境_Python3+Pycharm+PyQt5环境搭建步骤图文详解
搭建环境: 操作系统:Win10 64bit Python版本:3.7 Pycharm:社区免费版 一.Python3.7安装 下载到安装包后打开,如果想安装到默认路径(C盘)的话一直点下一步就可以了 ...
- Robot Framework 环境搭建步骤 RIDE保存时提示没有权限 RIDE使用时候常用问题(在最后)
Robot Framework环境搭建步骤 Robot Framework是基于Python语言开发的一款框架,搭建步骤如下: 对于Robot Framework熟悉的老手尝鲜新版 或 python熟 ...
- Linux测试环境搭建步骤
Linux测试环境搭建步骤 准备工具: SecureCRT工具(Linux工具,连接服务器) FTP传输工具(上传文件到服务器) MySQL连接工具 安装包(以下文件均为压缩包rpm格式和tar.gz ...
- python+pycharm+selenium自动化测试环境搭建步骤
python+pycharm+selenium自动化测试环境搭建步骤 原文链接:https://blog.csdn.net/weixin_51429941/article/details/116850 ...
- eclipse环境搭建步骤_eclipse搭建php开发环境
首先将eclipse和androidsdk的压缩包解压,无需安装.进入eclipse,选择help->installnewsoftware.点击add按钮接着eclipse会自动识别androi ...
最新文章
- python三层架构
- 吴裕雄--天生自然 PYTHON3开发学习:输入和输出
- ASP.NET专题研究——角色和Profile
- mysql操作总结_mysql常用操作总结大全
- Apache Storm的实时情绪分析示例
- el-table列宽自适应;el-table表格的列根据内容自动撑满;el-table内容换行问题;
- R-数据挖掘 | 聚类分析中的各种相异(似)度计算
- access 一亿条数据_操作用户只能看到自己本部门的数据功能
- [转]什么是lib文件,lib和dll的关系如何
- nsis出错_nsis error解决方法
- 天涯上令人肝肠寸断的100个签名
- 大陆、港澳台身份证、护照、军官证、户口本的正则表达式
- 一篇文让你看懂NB-IoT、LoRa、eMTC、Sigfox及ZigBee的应用场景【转】
- Cdoj 24点游戏之解题报告
- 顾大嫂贴肉藏了尖刀 水浒传
- 实验室5位直博生每人一篇 Science!她再获颁“世界杰出女科学家奖”
- 计算机网络实用知识,计算机网络实用技术知识点之ISDN的定义及特性
- spring aop之各advice通知的执行顺序
- 变形金刚ol服务器维护,变形金刚OL5月27日停机更新延迟开服公告
- 2020速卖通入驻条件以及费用现在来做速卖通晚不晚?速卖通还好做吗?