基于carsim的线控转向仿真(1)--carsim车辆模型目标角度跟踪

news2024/11/25 22:41:19

一、Rwa转向执行总成建模

 Rwa包括齿轮齿条机构、转向组件以及转向执行电机;如下图,电机输出轴通过齿轮减速增扭后,再经过一个半径为rp的小齿轮,直接带动齿条左右移动。齿条的移动通过转向摇臂,带动车轮转动,整套系统从电机的转动,转换为齿条的左右移动,再转换成车轮的左右摆动。

1、转向电机建模

在线控转向中,转向电机是一个执行器,上层给多少需求力矩,电机控制器便响应多少力矩。这里,我们用一个一阶惯性环节来简单模拟电机响应。

 仿真响应如下:

2、齿轮齿条机构建模

齿轮齿条动力来源是电机,阻力有左右车轮的阻力,齿条自身的加速度和阻尼,依据牛顿力学第二定律,可以列出微分方程

M_{r}\ddot{X}_{r}+B_{r}\dot{X}_{r}+F_{z}=T_{m}/r_{p}

式中,F_{z}--齿条上等效阻力;T_{fl},T_{fr}--左右前轮主销回正力矩。

参数名称物理意义单位数值
i_{Mot}转向电机减速比--18
l_{fl}左前轮转向摇臂长度m0.132
l_{fr}右前轮转向摇臂长度m0.132
r_{p}小齿轮半径m0.007
B_{r}齿轮齿条阻尼系数N.m/rad651
M_{r}齿轮齿条质量kg2.25

二、搭建Rwa总成simuink模型

依据以上几个公式,搭建Rwa执行总成模型。

三、simulink与carsim的联合仿真

1、仿真接口

低调一点选了个b级车

Carsim与Simulink模型的交互接口如下:

名称含义方向
IMP_STEER_L1左前轮转角simulink给到carsim
IMP_STEER_R1右前轮转角simulink给到carsim
M_TRdL1左前轮转向阻力carsim到simulink
M_TrdR1右前轮转向阻力carsim到simulink
Steer_L1左前轮转角carsim到simulink
Steer_R1右前轮转角carsim到simulink

 此外还需要注意到,carsim前轮转角是带阿克曼转向的,因此再给需求角度时,也需要考虑到,在这里,从carsim的转向系统里,提取出齿条位移--转向角度。

 2、仿真思路

首先,需要关闭carsim原有自带的转向系统;用OPT_STEER_EXT=0这个指令就可以;其次,关闭carsim里路径跟随的功能。这两个设置后,carsim的转向系统便会听simulink的。

整个仿真信号传递思路如下:

 1)根据车辆模型实时转角与参考转角的差距,用pid算出需求电机需求力矩;
 2)一阶电机模型响应电机需求理解;
 3)有了电机力矩,以及车辆模型的转向阻力,便可以套公式算齿条位移;
 4)有了齿条位移,便可以查表得到左右前轮需要的转角,响应前轮需求转角就是carsim的事了。

三、仿真结果

如下图,第一步我们已经实现,通过给需求转角,转向执行机构能实现需求转角,并与carsim实现了联调。

返回专栏目录

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.coloradmin.cn/o/1827484.html

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈,一经查实,立即删除!

相关文章

Django初学者指南

文章目录 Django初学者指南1 Django简介1.1 Django的历史1.2 使用Django的知名网站1.4 Django的主要特点1.5 Django的工作原理 2 Django 使用2.1 Django 支持的 Python 版本2.2 Django 版本 3 Django 开发 Web 程序3.1 安装Django3.2 创建Django项目3.3 运行开发服务器3.4 创建…

【C++】【期末考】【基本概念和语法】概括总结——期末速成

目录 1. C简介 C的历史与发展 C的特点与优势 2. 基本语法 注释 数据类型与变量 常量 运算符 输入与输出 3. 控制结构 条件语句 循环语句 4. 函数 函数定义与声明 参数传递 返回值 函数重载 5. 数组与字符串 一维数组 多维数组 字符串处理 6. 指针 指针的…

数字电路中二进制的数据表达

文章目录 1. 二进制数据表达 1.1 二进制简介 1.2 用二进制表达文字 1.2.1 最开始的表达方式 1.2.2 通讯系统的编码和解码 1.2.3 集成电路 1.2.4 ASCII编码 1.2.5 GBK编码 1.2.6 Unicode编码 2. 用二进制表达图像 2.1 图片像素化 2.2 像素数字化 2.3 二值图像 2.4…

HTML+CSS 旋转呼吸加载器

效果演示 实现了一个旋转加载动画效果,包括一个圆形的加载框和两个不同颜色的圆形旋转动画。加载框和动画都使用了CSS的动画属性,实现了旋转和缩放的效果。整个加载动画的样式比较简单,使用了黑色和黄色的背景色,以及白色的文本颜…

哈希表、递归在二叉树中的应用-1372. 二叉树中的最长交错路径

题目链接及描述 1372. 二叉树中的最长交错路径 - 力扣(LeetCode) 题目分析 题目所述,计算在二叉树中交替遍历的最大深度【左->右->左】【右->左->右】,例如对于从当前根节点root出发,则此时遍历方向有两个…

【健身经验】2 圆肩

1、普拉提是针对小肌肉群锻炼,可以改善圆肩,圆肩就是因为背部没有力量,胸前也没有力量,因为平常没有用到这些肌肉 普拉提会用到小肌肉群,对于体态的纠正会比较好 2、肩背形态其实是发力问题,可以练习&…

springboot优雅shutdown时如何保障异步线程的安全

我前面写了一篇springboot优雅shutdown的文章,看起来一切很美好。 https://blog.csdn.net/chenshm/article/details/139640775 那是因为没有进行多线程测试。如果一个请求中包括阻塞线程(主线程)和非阻塞线程(异步线程&#xff09…

“二分图匹配策略:匈牙利算法详解与应用实践“

二分图的最大匹配 给定一个二分图,其中左半部包含 𝑛1 个点(编号 1∼𝑛1),右半部包含𝑛2 个点(编号1∼𝑛2),二分图共包含 𝑚 条边。 …

ollama 多模态llava图像识别理解模型使用

参考: https://llava-vl.github.io/ https://ollama.com/blog/vision-models https://blog.csdn.net/weixin_42357472/article/details/137666022 下载: ollama run llava:13bcli使用 图片地址前面空格就行 describe this image: /ai/a1.jpg

最新版点微同城源码34.7+全套插件+小程序前后端(含安装教程)

模板挺好看的 带全套插件 自己耐心点配置一下插件 可以H5可以小程序 源码下载:https://download.csdn.net/download/m0_66047725/89394996 更多资源下载:关注我。

维度建模中的事实表设计原则

维度建模是一种数据仓库设计方法,其核心是围绕业务过程建立事实表和维度表。事实表主要存储与业务过程相关的度量数据,而维度表则描述这些度量数据的属性。 以下是设计事实表时需要遵循的几个重要原则,来源于《维度建模》那本书上&#xff0…

正解 x86 Linux 内存管理

1,机器解析的思路 发现网络上大量的教程,多是以讹传讹地讲解 Linux 内存管理; 都是在讲: 逻辑地址 -> 线性地址 -> 物理地址 这个转换关系是怎么发生的。 上面这个过程确实是程序运行时地址的翻译顺序; …

Java课程设计:基于Javaweb的校园订餐系统

文章目录 一、项目介绍二、项目技术栈三、核心代码四、项目展示五、源码获取 一、项目介绍 在当今互联网高速发展的时代,大学校园内的学生生活正在发生着翻天覆地的变化。其中,校园内的餐饮服务无疑是亟需改革和创新的领域之一。 传统的校园食堂模式,往往存在就餐高峰时段拥挤…

[Cloud Networking] SPDY 协议

文章目录 1. 背景2. SPDY 之前3. SPDY 项目目标4. SPDY 功能特点4.1 SPDY基本功能4.2 SPDY高级功能 1. 背景 TCP是通用的、可靠的传输协议,提供保证交付、重复抑制、按顺序交付、流量控制、拥塞避免和其他传输特性。 HTTP是提供基本请求/响应语义的应用层协议。 不…

ubuntu 22.04下载和安装

ubuntu镜像: https://www.releases.ubuntu.com/22.04/ 然后下载vmwareworkstation16 密钥 ZF3R0-FHED2-M80TY-8QYGC-NPKYF

fiddler打开后,requests无法使用

Fiddler实用小技巧 错误情况 打开fiddler后,requests无法请求 requests.exceptions.ProxyError: HTTPSConnectionPool(hosth5api.m.taobao.com, port443): 说明 其实这是一个很小的坑,确也是一个很常见的坑。 在打开fiddler后,根据fiddle…

Linux笔记--ubuntu文件目录+命令行介绍

文件目录 命令行介绍 当我们在ubuntu中命令行处理位置输入ls后会显示出其所有目录,那么处理这些命令的程序就是shell,它负责接收用户的输入,并根据输入找到其他程序并运行 命令行格式 linux的命令一般由三部分组成:command命令、…

Cheat Engine CE v7.5 安装教程(专注于游戏的修改器)

前言 Cheat Engine是一款专注于游戏的修改器。它可以用来扫描游戏中的内存,并允许修改它们。它还附带了调试器、反汇编器、汇编器、变速器、作弊器生成、Direct3D操作工具、系统检查工具等。 一、下载地址 下载链接:http://dygod/source 点击搜索&…

微信小程序毕业设计-实验室管理系统项目开发实战(附源码+论文)

大家好!我是程序猿老A,感谢您阅读本文,欢迎一键三连哦。 💞当前专栏:微信小程序毕业设计 精彩专栏推荐👇🏻👇🏻👇🏻 🎀 Python毕业设计…

为什么用SDE(随机微分方程)来描述扩散过程【论文精读】

为什么用SDE(随机微分方程)来描述扩散过程【论文精读】 B站视频:为什么用SDE(随机微分方程)来描述扩散过程 论文:Score-Based Generative Modeling through Stochastic Differential Equations 地址:https://doi.org/10.48550/arXiv.2011.13…