【自动驾驶】ROS小车系统介绍

文章目录

    • 小车组成
    • 轮式运动底盘的组成
    • 轮式运动底盘的分类
    • 轮式机器人的控制方式
    • 感知传感器
    • ROS决策主控
    • ROS介绍
    • ROS的坐标系
    • ROS的单位
    • 机器人电气连接
    • 变压模块
    • 运动底盘的电气连接
    • ROS主控与传感器的电气连接
    • 运动底盘基本组成
    • 电池
    • 电机
    • 控制器与驱动器
    • 控制器与运动底盘状态数据:里程计、IMU
    • 运动学分析与轮子
    • 运动学分析公式

小车组成

在这里插入图片描述

轮式运动底盘的组成

在这里插入图片描述

• 电源电池
提供能源。
• 控制器、驱动器
控制器产生控制信号,驱动器放大信号以驱动电机。可以驱控一体设计。
• 电机、舵机
电能转化为动能的装置。
• 轮子
连接电机,根据应用需求选择不同的轮子。
• 运动底盘
以上4部分安装到车架上即可组成一个运动底盘。

轮式运动底盘的分类

在这里插入图片描述
在这里插入图片描述

轮式机器人的控制方式

在这里插入图片描述

感知传感器

在这里插入图片描述

ROS决策主控

ROS主控的作用是获取各个传感器的数据,并根据功能需要对数据进行处理、解析,然后控制(决策)机器
人执行运动、抓取等动作。
例如希望实现机器人跟随红色物体的功能,首先相机传感器获取环境图像信息,ROS主控处理图像信息获取红色
物体的位置,然后ROS主控控制机器人靠近红色物体。
ROS主控可以认为就是一个可以运ROS的电脑,由于需要安装在机器人内,所以会要求该电脑的体积比较小。
在这里插入图片描述

ROS介绍

ROS最重要最基本的特性是其提供了一个通信环境,在该通信环境内,所有机器人、传感器的数据都可以通过编程实现共享,该通信环境使用无线、有线网络都可以实现。
在这里插入图片描述

ROS的坐标系

X:代表前后方向,向前为正
Y:代表横向方向,向左为正
Z:代表上下方向,向上为正
旋转正方向使用右手定则:右手大拇指朝向坐标系正方向,四指握拳,此时四指弯曲方向为旋转正方向。
据此可以知道,ROS机器人在地面的逆时针旋转,对应绕坐标系Z轴正方向旋转。

ROS的单位

ROS中所有数值的单位都为国际标准单位,常见的如下:
时间:秒、s
质量:千克、kg
长度:米、m;角度:弧度、rad
线速度:m/s;角速度:rad/s
加速度:m/s^2

在这里插入图片描述

机器人电气连接

完整的ROS机器人主要包括运动底盘(执行)、ROS主控(决策)、传感器(感知)、电池(能源)四个部分。
其中电池一般集成在运动底盘上,电池通过各种电气线路给机器人上的所有电气元件供电。
运动底盘(执行)、ROS主控(决策)、传感器(感知)之间也通过各种电气线路进行通信。
所以ROS机器人的电气线路可以大致分为【供电】与【信号】两类。

在这里插入图片描述

变压模块

ROS主控、传感器等电气元件要求的供电输入电压大小各种各样。
如果实际供电电压大于元件要求电压范围,会有过压损坏元件的风险;
如果实际供电电压小于元件要求电压范围,欠压可能会导致元件不能正常工作。
而电池输出的电压大小是固定(小范围波动)的,当电池电压范围与元件要求电压不匹配时,
需要使用变压模块,把电池电压转换到合适的大小再给元件供电。
电压大小与剩余电量成正比(以上基于三元锂电池,磷酸铁锂电池略有差异)

电气元件的供电参数要求除了电压还有电流,电源的电流输出参数必须大于或等于元件的电流输入参数。否则欠流可能导致元件不能工作在最佳状态。
元件的电流参数代表其需要的最高的稳定电流,实际工作时不一定一直满电流运行。
电源的电流参数代表其最高可以稳定输出的电流,实际工作时输出的电流大小取决于元件的工作状态需要多大的电流。

在这里插入图片描述

运动底盘的电气连接

供电:起源于电池,主要通过T头线或其它分流线输出到其它部件。
信号:起源于控制器,通过各种专用线材连接,最后控制电机与轮子转动。

在这里插入图片描述
在这里插入图片描述

ROS主控与传感器的电气连接

根据不同的供电参数要求使用不同的供电方式。
ROS主控的供电
5V供电要求:使用运动底盘(STM32)控制器的TypeC电源接口供电。
12V/25V供电要求:在电池供电范围内的,使用电池直接供电;不在则使用变压模块供电。
其它供电电压要求或5V接口数量不足:使用变压模块供电。

传感器的供电
5V供电要求:大部分传感器的供电要求都是5V,一般直接使用USB数据线连接ROS主控的USB母口,同时完成供电与通信。
也有部分传感器功耗较高,需要两个USB数据线分别进行供电与通信。
12V/25V供电要求:在电池供电范围内的,使用电池直接供电;不在则使用变压模块供电。
其它供电电压要求或5V接口数量不足:使用变压模块供电。

在这里插入图片描述

• ROS主控的信号连接
ROS主控的信号连接全部通过USB接口进行,包括传感器与运动底盘。
其中运动底盘是连接STM32控制器的串口3-TypeC接口,实现对运动底盘的控制与数据获取。

• 传感器的信号连接
所有传感器(感知)通过USB数据线与ROS主控(决策)进行信号连接。

• USB扩展坞/HUB
一般ROS主控上只配备有2-4个USB接口,当传感器数量过多时,就需要用到USB扩展坞来获取更多的USB接口。

运动底盘基本组成

电机、舵机、运动底盘、轮子、电源电池

• 电源电池
提供能源。

• 控制器、驱动器
控制器负责接收控制命令,产生控制信号,以及外发底盘运动状态数据。驱动器负责放大控制信号以驱动电机。可以驱控一体设计。

• 电机、舵机
电能转化为动能的装置。

• 轮子
连接电机,根据应用需求选择不同的轮子。

• 运动底盘
以上4部分安装到车架上即可组成一个运动底盘。

在这里插入图片描述

电池

关键参数介绍与选型参考
• 电芯类型
常用的有碳酸锂铁与三元锂电池,两种电芯各有特点,两者对比,三元锂能量密度更高、耐低温、充电更慢、成本更高等等。
大家选择主要参考以下电压、电流、体积、容量、保护等参数选择即可。
三元锂的剩余电量与电压成正比,碳酸锂铁则是阶梯式的(90%-10%电量期间电压基本不变)。
• 电压、电流
电池是由多个电芯并联或串联组成的。
电芯标称电压:磷酸铁锂电芯3.2V、三元锂电芯3.7V。
电芯串联提高电压,并联提高容量。右图4款电池依次为7串1并、6串2并、6串4并、6串8并。
电压*电流=功率,两者共同决定电池的供电能力。运动底盘电池的电压电流要求一般来自电机。
假设需要4个MD36NP27_24电机在额定功率下运行,电池电压要求≈ 24𝐀,电池放电性能要求≥ 2.3 ∗ 4 = 9.2𝐀。
关键参数介绍与选型参考
• 电量、续航、充电电流、体积、重量与接口插头
6100mAh电量代表电池可以持续输出6.1A电流1小时,恒定电流输出下的续航
计算公式:续航时间(ℎ) = 电量(𝐀𝐀ℎ)
电流(𝐀) ,𝐀 = 1000𝐀𝐀,充电时间同理。
大电量一般代表大体积,根据预算与运动底盘结构要求选择。
接口插头自行评估是否适合自身已有设备,如不合适需要另外采购转接头。
• 保护
短路、过流、过充、过放保护,支持边充边用,内置压力安全阀,阻燃板。

在这里插入图片描述

电机

电机是把电能转化为动能的装置。本节以直流电机为例讲解一般电机的构成:电机、编码器和减速器。
直流电机把电能转换为动能的原理为通电导线在磁场中会受到洛伦兹力的作用,电流越大,受力越大。所以提高输入电压,可以加大电流,
提高扭矩、转速。
编码器的作用是检测电机的转速,编码器的AB线会产生与转速成比例的脉冲,例如13线霍尔编码器,电机转子转一圈编码器的AB线各产生13个脉冲。转速检测用于实现电机的速度、位置闭环控制。
减速器的作用是提高扭矩,但是会降低转速。电机原始扭矩较小,扭矩不足容易导致堵转损坏电机,故需要减速器。假设电机使用减速比
为27的减速器,那么电机转子转27圈,电机最终输出轴转1圈。
电机的功率、体积、价格,基本成正比例关系,需要底盘设计者根据项目实际需求权衡选择。
舵机可以认为是一种特殊的电机,一般用于阿克曼底盘的前轮转向结构和机械臂上。

在这里插入图片描述

控制器与驱动器

控制器
负责接收速度控制命令,产生控制信号,以及外发底盘运动状态数据。
编码器转速反馈,是为了控制电机的转速更接近速度控制命令的要求。

驱动器
驱动电机需要较大功率的电压电流,一般控制器的无大功率输出能力。所以需要驱动器放大控制信号以驱动电机。驱控一体设计
如果电机的功率要求不高,那么控制器和驱动器是可以集成到一个较小的控制板上的,如右图所示。

在这里插入图片描述

控制器与运动底盘状态数据:里程计、IMU

控制器需要负责外发底盘运动状态数据,这里最重要的数据就是里程计和IMU,它们的作用都是用于机器人定位的,即用于确认机器人
目前所在的物理位置。

里程计的推导流程如图所示,其中运动学分析部分是运动底盘控制器需要做的工作。
轮式底盘的XYZ三轴里程计数据为:X-前后方向的位移、Y-左右方向的位移、Z-旋转的角度(航向角)。

IMU数据可以来自运动底盘自身板载的IMU芯片,也可以来自外置的IMU模块。我司的运动底盘一般都有板载IMU。
其工作流程如图所示,控制器只需要负责发送IMU数据,解算为姿态角部分由上层决策部分(ROS)处理。

扩展内容
IMU的角速度可以通过时间积分(速度*时间)计算三轴姿态角。
IMU的加速度可以通过特定公式计算除Z轴航向角外的XY两轴姿态角,IMU的加速度通过时间积分计算三轴位移。
里程计提供了XY两轴位移和Z轴航向角。
XYZ三轴位移、XYZ三轴姿态角,有两个或以上的数据来源,就可以融合计算出相对更准确的位姿数据。

在这里插入图片描述

在这里插入图片描述
在这里插入图片描述

在这里插入图片描述

运动学分析与轮子

不同类型的轮子、底盘结构决定了运动底盘的运行场景与特点,也决定了其运动学分析公式。
运动学分析正解:根据各个轮子的当前线速度求出机器人当前的三轴速度。(对应控制器向外发送机器人三轴速度用于计算里程计)
运动学分析逆解:根据三轴目标速度求出各个轮子的目标线速度。(对应控制器接收速度控制命令,然后向驱动器发送控制信号以控
制电机转动)
轮子的线速度(m/s)=电机转速(圈/s)2𝐀*轮子半径

从轮子、电机、到控制器,其中核心是控制器,控制器负责对外界的控制命令进行响应和反馈。

在这里插入图片描述

运动学分析公式

在这里插入图片描述
在这里插入图片描述

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

如若内容造成侵权/违法违规/事实不符,请联系我们进行投诉反馈qq邮箱809451989@qq.com,一经查实,立即删除!

相关文章

大学课设项目,Windows端基于UDP的网络聊天程序的服务端和客户端

文章目录 前言项目需求介绍一、服务端1.对Udp套接字进行一个封装2. UdpServer的编写3. Task.h4.protocol.h的编写5.线程池的编写6.main.cc 二、客户端1. Socket.h2.protocol.h3.UdpClient4.menu.h5.main.cpp 三、运行图 前言 本次项目可以作为之前内容的一个扩展,学…

汇聚荣拼多多运营策略是怎么样的?

拼多多作为中国领先的电商平台,其运营策略一直备受关注。拼多多的成功不仅在于其创新的“社交电商”模式,更在于其精细化的市场定位和高效的用户增长策略。本文将深入分析拼多多的运营策略,探讨其如何在激烈的电商竞争中突围而出。 一、用户增…

Vue3-滑动到最右验证功能

1、思路 1、在登录页面需要启动向右滑块验证 2、效果图 3、文章地址:滑动验证码的实现-vue-simple-verify 2、成分分析 1、由三块构成,分别是底部条、拖动条、拖动移动部分 2、底部条:整体容器,包括背景、边框和文字&#xf…

企业级Flask项目移植记录【待补完】

背景 Flask项目A从老电脑C1移植到新电脑C2上 更新日志 1-240614上线第一版经验,博主关于这个项目包的问题还没有解决,正在解决中,但是整体思路大家在移植的时候可以借鉴。 思路 1-首先生产环境的python解释器等相关的东西最好严格保持一…

基于自编码器的心电信号异常检测(Pytorch)

代码较为简单,很容易读懂。 # Importing necessary libraries for TensorFlow, pandas, numpy, and matplotlib import tensorflow as tf import pandas as pd import numpy as np import matplotlib.pyplot as plt import copy# Importing the PyTorch library im…

项目管理进阶之EVM(挣值管理)

前言 项目管理进阶系列,终于有时间更新啦!!!欢迎持续关注哦~ 上一节博主重点讲了一个环:PDCA,无论各行各业,上到航空航天、下到种地种菜,都离不开对质量的监督和改进。这个环既是一…

轻松4步!格式工厂怎么转换mp3教会你

在数字化时代,音频文件格式转换变得越发重要,而格式工厂作为一款强大而多功能的工具,为我们提供了便捷的音频转换解决方案。特别是在将音频文件转换为MP3的需求上,格式工厂以其简便易用的特点备受欢迎。格式工厂怎么转换mp3&#…

力扣172. 阶乘后的零

Problem: 172. 阶乘后的零 文章目录 题目描述思路及解法复杂度Code 题目描述 思路及解法 1.要使得末尾出现0,则乘式中必须出现因子2与5; 2.而由于对于一个数的阶乘,易知因子2的个数是大于因子5的个数(因为只要出现偶数则可以分解出…

好的品牌营销策划方案需包含哪些?

现在很多企业家和创业者,对品牌营销知之甚少。作为一个多年的老营销人,可以来谈谈我们写一个品牌方案一般包含哪些内容。 首先,我们必须认识到,品牌策划的第一步其实是市场调研。 这不仅仅是对企业的简单了解,更包括…

计数排序(Counting Sort)

计数排序(Counting Sort) 计数排序是一个非基于比较的排序算法,该算法于1954年由 Harold H. Seward 提出。它的优势在于在对一定范围内的整数排序时,快于任何比较排序算法。排序思路: 1.找出待排序数组最大值2.定义一个索引最大…

鸿蒙: 基础认证

先贴鸿蒙认证 官网10个类别总结如下 https://developer.huawei.com/consumer/cn/training/dev-cert-detail/101666948302721398 10节课学习完考试 考试 90分合格 3次机会 1个小时 不能切屏 运行hello world hvigorfile.ts是工程级编译构建任务脚本 build-profile.json5是工程…

裁剪图片的最简单方法?这四种裁剪方法真的超级简单!

裁剪图片的最简单方法?在丰富多彩的现代生活中,图片成为了我们表达、沟通甚至展示身份的重要媒介,然而,无论是出于个人审美还是专业需求,图片的格式和尺寸往往成为了我们不得不面对的问题,特别是那些未经雕…

小孟再接盲盒小程序,3天开发完!

大家好,我是程序员小孟。 前面开发了很多的商业的单子,私活联盟的小伙伴慢慢的逐渐搞自己的产品。 前面的话,开发了盲盒小程序,最近又接了一款盲盒小程序。因为前面有开发过,所以我们的成本也少了很多。 盲盒小程序…

2024年最佳插电式混合动力电动汽车

对电动汽车充满好奇和环保意识的司机们还没有准备好跨入纯电动汽车,他们可以找到一个折衷方案,即插电式混合动力车。 在过去的16年里,我一直在把握汽车行业的脉搏。试驾数百辆汽车、电动汽车、插电式混合动力车,跟踪汽车行业的新闻…

一行代码实现鼠标横向滚动

🧑‍💻 写在开头 点赞 收藏 学会🤣🤣🤣 在项目中我们可能会遇到当鼠标在某个区域内,我们希望滚动鼠标里面的内容可以横向滚动; 比如我们一些常见的后台状态栏: 那这种该怎么写&…

GitLab安装部署以及bug修复

使用git,还需要一个远程代码仓库。常见的github、gitee这种远程代码仓库,公司中一般不会使用,因为他们是使用外网的,不够安全。一般企业都会搭建一个仅内网使用的远程代码仓库,最常见就是 GitLab 安装准备 需要开启s…

2024中国应急(消防)品牌巡展成都站成功召开!

汇聚品牌力量,共同相聚成都。6月14日,由中国安全产业协会指导,中国安全产业协会应急创新分会、应急救援产业网联合主办,四川省消防协会协办的“一切为了安全”2024年中国应急(消防)品牌巡展-成都站成功举办。该巡展旨在展示中国应…

NATAPP-内网穿透工具----下载与配置

NATAPP-内网穿透工具 基于ngrok的国内高速内网穿透服务,natapp提供了一种便利的方式,使得开发和测试过程更加高效,尤其是在需要进行远程调试或展示时。无论是进行web开发、微信和支付宝的本地开发调试,还是简单地从外部网络访问家…

win10 修改远程桌面端口,win10 修改远程桌面端口详细步骤

在Windows 10中修改远程桌面端口是一个涉及系统配置和网络安全的任务,需要谨慎操作以确保系统的稳定性和安全性。 以下是详细的步骤内容,供您参考: 一、通过注册表编辑器修改远程桌面端口 1. 打开注册表编辑器: - 首先&#…

美国犹他州立大学《Nature Geoscience》(IF=18)!揭示草本植物对土壤有机碳的重要贡献!

随着全球变暖的影响越来越显著,碳固定成为了一个备受关注的话题。在这个背景下,热带草原被认为是一个潜在的碳固定区域。然而,目前的研究主要关注于在热带草原中种植树木,以期望增加土壤有机碳含量。但是,热带草原中的…