自动驾驶仿真:Carsim转向传动比设置

文章目录

  • 一、转向传动比概念
  • 二、设置转向传动比
    • 1、C factor概念
    • 2、Steer Kinematics概念
    • 3、传动比计算公式
  • 三、转向传动比验证


一、转向传动比概念

转向传动比(Steering Ratio)表示方向盘转动角度与车轮转动角度之间的关系。公式如下:

转向传动比 = 方向盘转动角度 车轮转动角度 \text{转向传动比} = \frac{\text{方向盘转动角度}}{\text{车轮转动角度}} 转向传动比=车轮转动角度方向盘转动角度

例如,假设方向盘转动 360 度,而车轮转动 30 度,那么转向传动比为:

转向传动比 = 36 0 ∘ 3 0 ∘ = 12 : 1 \text{转向传动比} = \frac{360^\circ}{30^\circ} = 12:1 转向传动比=30360=12:1

二、设置转向传动比

1、C factor概念

C factor : 方向盘转一圈齿条移动的位移 \text{C factor} : {\text{方向盘转一圈齿条移动的位移}} C factor:方向盘转一圈齿条移动的位移
在这里插入图片描述

2、Steer Kinematics概念

Rack to front wheels: Steer Kinematics : 齿条位移和前轮转角之间的关系 \text{Rack to front wheels: Steer Kinematics} : {\text{齿条位移和前轮转角之间的关系}} Rack to front wheels: Steer Kinematics:齿条位移和前轮转角之间的关系
在这里插入图片描述

3、传动比计算公式

1)由于Carsim中没有直接设置转向传动比的关系,在Carsim中计算传动比的关系式如下:

转向传动比 = 1 / ( (C factor / 360) ∗ Steer Kinematics ) \text{转向传动比} = 1 / ({\text{(C factor / 360)}}*{\text{Steer Kinematics}}) 转向传动比=1/((C factor / 360)Steer Kinematics)

注意:这里需要c factor / 360,因为要将rev转换成deg;

2)假设取左前轮斜率的平均值,得Steer Kinematics(平均) = 0.45 (deg/mm);
在这里插入图片描述


计算Steer Kinematics平均值:

在这里插入图片描述


3)假设你需要的传动比是12,推导得:

转向传动比 = 1 / ( (C factor / 360) ∗ Steer Kinematics ) \text{转向传动比} =1 / ({\text{(C factor / 360)}}*{\text{Steer Kinematics}}) 转向传动比=1/((C factor / 360)Steer Kinematics)
得:
12 = 1 / ( (C factor / 360) ∗ Steer Kinematics ) \text{12} =1 / ({\text{(C factor / 360)}}*{\text{Steer Kinematics}}) 12=1/((C factor / 360)Steer Kinematics)
得:
12 = 1 / ( (C factor / 360) ∗ 0.452 ) 得 : C f a c t o r ≈ 66.67 ( m m / r e v ) \text{12} =1 / ({\text{(C factor / 360)}}*{\text{0.452}}) 得 : C factor ≈ 66.67(mm/rev) 12=1/((C factor / 360)0.452):Cfactor66.67(mm/rev)


三、转向传动比验证

1、由上述可得传动比为12的时候,C factor为66.67(mm/rev),代入carsim:

在这里插入图片描述


2、设置方向盘输出角度为120deg,由于12 = 传动比 = 方向盘角度 / 前轮转角,因此前轮转角大概为10deg左右;

在这里插入图片描述


曲线结果符合预期,因此公式正确;

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

如若内容造成侵权/违法违规/事实不符,请联系长河编程网进行投诉反馈email:809451989@qq.com,一经查实,立即删除!

相关文章

电脑怎么录音?分享2种音频录制方法

在日常生活和工作中,我们经常需要录制电脑上的音频,无论是为了记录会议内容、保存网络课程,还是为了制作自己的音频素材,录音功能都显得尤为重要。那么电脑怎么录音?本文将详细介绍2种方法教你如何在电脑上进行录音&am…

Ajax的应用

1. Ajax Ajax是Asynchronous Javascript And XML(异步JavaScript和XML)的缩写。 Ajax技术描述了使用脚本操纵HTTP和Web服务器进行数据交换,在页面不刷新的情况下,实现页面的局部更新。 重点: Ajax 是一种在无需重新加…

C++设计模式——Facade外观模式

一,外观模式简介 外观模式是一种结构型设计模式, 又称为门面模式,也是一种基于创建对象来实现的模式,为子系统中的各组接口的使用提供了统一的访问入口。 外观模式对外提供了一个对象,让外部客户端(Client)对子系统的…

四十七、openlayers官网示例Image Filters——给地图添加锐化、浮雕、边缘等滤镜效果

官网demo示例: Image Filters 这篇讲的是如何给地图添加滤镜。 一看代码,,好家伙,信息量满满,全都看不懂。。。 咱只能一段一段扒。。。 首先添加一个底图到地图上,这个好理解。 const imagery new Til…

macOS vscode常用快捷键

1、shiftoption上下箭头 复制当前行 2、commandd 选定多个相同的单词 先双击选定一个单词,然后按下commandd 依次选中要修改的单词,直接修改即可 3、全局替换某个单词 comandh 4、快速定位到某一行 controlg 5、选中某个区域 shiftoption,然…

Adobe Photoshop cc快速抠图与精致抠图方法

一、背景 Photoshop cc绝对是最好用的抠图and修图软件,但是即使最简单的抠图,每次用时都忘记怎么做,然后再去B站搜,非常费时,下面记录一下抠图过程,方便查阅。 一、Adobe Photoshop快速抠图 选择——主体…

web系统数据库敏感数据处理

一、前言 web系统数据库中保存的公民信息不允许明文存储,比如手机号,身份证号,收货地址等。 二、处理方式 数据库中密文存储,web通过注解的方式对数据加解密处理,下面是处理方法 1、编写接口 public interface E…

提取人脸——OpenCV

提取人脸 导入所需的库创建窗口显示原始图片显示检测到的人脸创建全局变量定义字体对象定义一个函数select_image定义了extract_faces函数设置按钮运行GUI主循环运行显示 导入所需的库 tkinter:用于创建图形用户界面。 filedialog:用于打开文件对话框。 …

【JS】上传文件显示文件的为空,显示的文件参数内容只有uid

上传的文件参数file里面只包含uid,没有其他信息 例子解决办法 例子 例如使用elment ui的el-upload组件上传文件,会导致上传的文件参数file里面只包含uid,没有其他信息,如图: 正确应为如下图: 解决办法 …

MySQL 基本语法讲解及示例(上)

第一节:MySQL的基本操作 1. 创建数据库 在 MySQL 中,创建数据库的步骤如下: 命令行操作 打开 MySQL 命令行客户端或连接到 MySQL 服务器。 输入以下命令创建一个数据库: CREATE DATABASE database_name;例如,创建一…

了解Nest.js

一直做前端开发,都会有成为全栈工程师的想法,而 Nest 就是一个很好的途径,它是 Node 最流行的企业级开发框架,提供了 IOC、AOP、微服务等架构特性。接下来就让我们一起来学习Nest.js Nest.js官网地址 一,了解Nest Cli …

第十二章:会话控制

会话控制 文章目录 会话控制一、介绍二、cookie2.1 cookie 是什么2.2 cookie 的特点2.3 cookie 的运行流程2.4 浏览器操作 cookie2.5 cookie 的代码操作(1)设置 cookie(2)读取 cookie(3)删除 cookie 三、se…

56.SAP MII开发的一个系统响应错误 Error code: ICMETIMEOUT

问题 一个SAP MII开发的项目&#xff0c;最近新增了一个功能&#xff0c;查询数据源量比较大&#xff0c;逻辑有点复杂&#xff0c;大约7-8分钟。发布到生产系统后&#xff0c;发生响应错误&#xff0c;返回 Error code: ICMETIMEOUT <!-- Error code: ICMETIMEOUT -->\r…

Petalinux由于网络原因产生的编译错误(2)--Fetcher failure:Unable to find file

1 Fetcher failure:Unable to find file 错误 如果编译工程遇到如下图所示的“Fetcher failure for URL”或相似错误 出现这种错误的原因是 Petalinux 在配置和编译的时候&#xff0c;需要联网下载一些文件&#xff0c;由于网 络原因这些文件不能正常下载&#xff0c;导致编译…

Vue 路由:一级路由,嵌套路由

1、安装路由插件,因为用的是vue2 所以路由版本要和vue2对应上&#xff0c;所有有3 yarn add vue-router3 2、在main.js里引入 import VueRouter from vue-router Vue.use(VueRouter) 3、新建文件夹 router,创建index.js 4、引入路由插件&#xff0c;并且暴露出来这个路由 5、在…

「TCP 重要机制」滑动窗口 粘包问题 异常情况处理

&#x1f387;个人主页&#xff1a;Ice_Sugar_7 &#x1f387;所属专栏&#xff1a;计网 &#x1f387;欢迎点赞收藏加关注哦&#xff01; 滑动窗口&粘包问题&异常情况处理 &#x1f349;滑动窗口&#x1f34c;流量控制&#x1f34c;拥塞控制&#x1f34c;延时应答&…

Docker overlay磁盘使用100%处理方法overlay 100%

一、问题描述 服务器上运行了几个docker容器,运行个一周就会出现overlay 100%的情况&#xff0c;经查找&#xff0c;是容器里生成了很多core.xxx的文件导致的。 二、解决方法 首先通过以下命令查看&#xff1a; df -h 可以看的overlay已经100%了&#xff0c;进入到/var/lib/d…

C++之std::type_identity

目录 1.简介 2.C20的std::type_identity 3.使用 type_identity 3.1.阻止参数推导 3.1.1.模板参数推导过程中的隐式类型转换 3.1.2.强制显式实例化 3.2.阻止推断指引 3.3.类型保持 3.4.满足一些稀奇古怪的语法 4.示例 5.总结 1.简介 std::type_identity 是 C17 引入的…

element-ui将组件默认语言改为中文

在main.js中加入以下代码即可 // 引入 Element Plus 及其样式 import ElementPlus from element-plus import element-plus/dist/index.css// 引入中文语言包 import zhCn from element-plus/es/locale/lang/zh-cn// 使用 Element Plus 并设置语言为中文 app.use(ElementPlus,…

RNN的变种们:GRULSTM双向RNN

上篇笔记记录到RNN的一个缺点&#xff1a;训练时会出现梯度消失&#xff0c;解决的办法是找到一个更优的计算单元。这里也有GRU和LSTM。 GRU&#xff08;Gated Recurrent Unit&#xff09;门控训练网络 什么是门控机制&#xff1f;就是对当前的输入进行一个筛选。门打开&…