cmu中间代码groud_based_autonomy_basic在适配不同机器人时主要修改的参数

这篇具有很好参考价值的文章主要介绍了cmu中间代码groud_based_autonomy_basic在适配不同机器人时主要修改的参数。希望对大家有所帮助。如果存在错误或未考虑完全的地方,请大家不吝赐教,您也可以点击"举报违法"按钮提交疑问。

1.根据使用的slam算法,loam_interface需要修改launch, 具体如何修改其官方给出了文档,

If running on a real robot, launch state estimation module and the system side by side. Use the
command below to launch the system.
roslaunch vehicle_simulator system_real_robot.launch
If playing bagfiles, make sure to set 'use_sim_time = true'. In a terminal,
roscore
In another terminal,
rosparam set use_sim_time true
After launching the state estimation module and the system, play bagfiles with '--clock' flag
(change 'filename' in the command line),
rosbag play --clock filename.bag
Adjust 'obstacleHeightThre' in 'src/local_planner/launch/local_planner.launch' to account for
terrain cloud thickness.
LOAM
Notes: Use 'loam_interface' package as is to bridge over the state estimation output.
Code: https://github.com/cuitaixiang/LOAM_NOTED
Reference: J. Zhang and S. Singh. LOAM: Lidar Odometry and Mapping in Real-time. Robotics:
Science and Systems Conference (RSS). Berkeley, CA, July 2014.
A-LOAM (lidar only without IMU)
Notes: In 'src/loam_interface/launch/loam_interface.launch', set 'stateEstimationTopic =
/aft_mapped_to_init_high_frec', 'flipStateEstimation = false', and 'flipRegisteredScan = false'.
Code: https://github.com/HKUST-Aerial-Robotics/A-LOAM
Reference: N/A
LeGO-LOAM
Notes: In 'src/loam_interface/launch/loam_interface.launch', set 'registeredScanTopic =
/registered_cloud'.
Code: https://github.com/RobustFieldAutonomyLab/LeGO-LOAM
Reference: T. Shan and B. Englot. LeGO-LOAM: Lightweight and Ground-Optimized Lidar
Odometry and Mapping on Variable Terrain. IEEE/RSJ Intl. Conf. on Intelligent Robots and
Systems (IROS). Madrid, Spain, Oct. 2018.LIO-SAM
Notes: In 'src/loam_interface/launch/loam_interface.launch', set 'stateEstimationTopic =
/lio_sam/mapping/odometry', 'registeredScanTopic = /lio_sam/mapping/cloud_registered',
'flipStateEstimation = false', and 'flipRegisteredScan = false'.
Code: https://github.com/TixiaoShan/LIO-SAM
Reference: T. Shan, B. Englot, D. Meyers, W. Wang, C. Ratti, and D. Rus. LIO-SAM: Tightly-
coupled Lidar Inertial Odometry via Smoothing and Mapping. IEEE/RSJ Intl. Conf. on Intelligent
Robots and Systems (IROS). Las Vegas, Nevada, Oct. 2020.
LIO-mapping
Notes: In 'src/loam_interface/launch/loam_interface.launch', set 'stateEstimationTopic =
/lio_map_builder/aft_mapped_to_init', 'registeredScanTopic =
/lio_map_builder/cloud_registered', 'flipStateEstimation = false', and 'flipRegisteredScan =
false'.
Code: https://github.com/hyye/lio-mapping
Reference: H. Ye, Y. Chen, and M. Liu. Tightly Coupled 3D Lidar Inertial Odometry and
Mapping. IEEE Intl. Conf. on Robotics and Automation (ICRA). Montreal, Canada, May 2019.
FAST-LIO2
Notes: In 'src/loam_interface/launch/loam_interface.launch', set 'stateEstimationTopic =
/Odometry', 'registeredScanTopic = /cloud_registered', 'flipStateEstimation = false', and
'flipRegisteredScan = false'.
Code: https://github.com/hku-mars/FAST_LIO
Reference: W. Xu, Y. Cai, D. He, J. Lin, and F. Zhang. FAST-LIO2: Fast Direct LiDAR-Inertial
Odometry. IEEE Transactions on Robotics. vol. 38, no. 4, pp. 2053–2073, 2022.
Faster-LIO
Notes: In 'src/loam_interface/launch/loam_interface.launch', set 'stateEstimationTopic =
/Odometry', 'registeredScanTopic = /cloud_registered', 'flipStateEstimation = false', and
'flipRegisteredScan = false'.
Code: https://github.com/gaoxiang12/faster-lio
Reference: C. Bai, T. Xiao, Y. Chen, H. Wang, F. Zhang, and X. Gao. Faster-LIO: Lightweight
Tightly Coupled Lidar-Inertial Odometry Using Parallel Sparse Incremental Voxels. IEEE Robotics
and Automation Letters. vol. 7, no. 2, pp. 4861–4868, 2022.

2.local_planner

local_planner.launch中

<arg name="sensorOffsetX" default="0.18"/>

<arg name="sensorOffsetY" default="0"/>

<arg name="cameraOffsetZ" default="0"/>

<arg name="twoWayDrive" default="false"/> false-只能前进去目标点

<arg name="maxSpeed" default="0.5"/> 最大线速度

<arg name="autonomyMode" default="true"/> 自动模式

<arg name="autonomySpeed" default="0.5"/> 自动运动时的线速度

<param name="pathFolder" type="string" value="$(find local_planner)/paths" />这个是黄色的局部曲线,根据机器人的外接圆进行修改,如机器人为一个长方体,长L,宽w,则path_generator.m中的 Radius >= sqrt(pow(L/2,2) + pow(W/2,2)),可以稍微大一点.

<param name="vehicleLength" type="double" value="0.65" />

<param name="vehicleWidth" type="double" value="0.65" />宽度可以稍微大个0.1,这个会计算一个半径,因为差速底盘尤其四轮差速有一个中情况就是转向时,障碍物在其侧面,如果点云被包含在这个半径内且在侧面,会对路径作出调整

<param name="useTerrainAnalysis" type="bool" value="true" />在室内结构化平坦场地时不使用地形分析的点云使用slam配准后的scan_registered也可以,不过最好使用地形分析的

<param name="checkRotObstacle" type="bool" value="true" />对应差速度底盘设置为true,,因为其旋转时四差底盘可能碰撞

<param name="adjacentRange" type="double" value="3.5" />局部路径的探测范围,就是那个黄色线的范围

<param name="obstacleHeightThre" type="double" value="0.15" />点云相对高度大于这个值才认为是障碍物点云点,但是高度是一个相对高度,所以根据实际情况设置

<param name="groundHeightThre" type="double" value="0.1" />这个在考虑地形分析点云或者点云点高度大于障碍物阈值时,对路径进行惩罚,当点云点高度大于地面高度时这个路径才会被惩罚,根据实际工况进行调试

/*********************************************************************************************/

local_planner.launch中对path_follow.cpp的配置,这其中有几个比较重要的参数

首先需要设定的是需要的线速度和最大线速度,这个在最开始设置.然后根据这个设置

<param name="yawRateGain" type="double" value="1" />默认是7.5,

这个用来增加角速度的,根据线速度调试确定,否则摆动很大前进时

<param name="stopYawRateGain" type="double" value="1" />,这个同上面类似,是减角速度的,需跟线速度协调

<param name="maxYawRate" type="double" value="40.0" />最大角速度,默认90度,这个也是根线速度协调

<param name="maxAccel" type="double" value="1" />最大加速度,也是与线速度协调,因为会用这个对线速度进行加速和减速

<param name="dirDiffThre" type="double" value="0.2" />重要参数,当目标点与机器人之间的角度差阈值大于这个,则减速.文章来源地址https://www.toymoban.com/news/detail-703137.html

到了这里,关于cmu中间代码groud_based_autonomy_basic在适配不同机器人时主要修改的参数的文章就介绍完了。如果您还想了解更多内容,请在右上角搜索TOY模板网以前的文章或继续浏览下面的相关文章,希望大家以后多多支持TOY模板网!

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处: 如若内容造成侵权/违法违规/事实不符,请点击违法举报进行投诉反馈,一经查实,立即删除!

领支付宝红包 赞助服务器费用

相关文章

  • C语言:编写代码,演示多个字符从两端移动,向中间汇聚

    给出 第一个 字符串 ,如: \\\"welcome to school!!!!!\\\" , 设置 第二个 字符串 : \\\"######################\\\" , 两字符串字符数相等 。 从 第二个字符串 两端开始移动 , 向中间汇聚 , 慢慢显示出 第一个字符串 。                   如: \\\" ###################### \\\" ↓ \\\" we ################## !! \\\" ↓

    2024年02月08日
    浏览(26)
  • CMU15445(2023 spring) lab - 环境配置

    环境配置 Project 0. C++ Primer Project 1. Buffer Pool Project 2. B+Tree 早就想做15445(fall 2020)的lab了,鸽到了现在,赶紧做一下,写一点自己做的时候遇到的坑什么的,记录一下。因为教授禁止上传自己的代码到public,所以本文基本不会出现作业代码内容,只是写一些做的时候遇到的事

    2024年02月05日
    浏览(25)
  • CMU15445 (Spring 2023) #Project0

    写这篇文章,初衷是因为网上很少有关于CMU15445-2023的博客文章。记录下我在做的过程中走过的弯路,一方面是对自己工作的一个总结,另一方面也能帮助到在做这门课的 #project 时踩坑而无从下手的同学,何乐而不为? 我使用的编译环境: 系统:Ubuntu 20.04.1 IDE:Clion 语法要求

    2024年02月09日
    浏览(26)
  • CMU-TARE 探索算法官方社区问答汇总

    参考引用 TARE机器人自主导航系统社区-CSDN社区云 TARE平台资源链接汇总 CMU团队的terrainAnalysis地形分析代码笔记 Local Planner 代码详解以及如何适用于现实移动机器人 论文翻译:Autonomous Exploration Development Environment and the Planning Algorithms Tare planner系列代码解析 首先感谢 CMU 团队的

    2024年04月26日
    浏览(31)
  • CMU DLSys 课程笔记 1 - Introduction and Logistics

    CMU Deep Learning System,教你如何实现一个深度学习系统。 CS 自学指南课程介绍页面 | 课程主页 本节 Slides | 本节课程视频 目前(2024.01.06)课程在线评测账号和课程论坛的注册时间已经结束,只剩下框架代码里的本地测试供大家调试代码。 CMU DLSys 课程笔记 1 - Introduction and Logi

    2024年02月03日
    浏览(34)
  • CMU 15-445 -- Timestamp Ordering Concurrency Control - 15

    本系列为 CMU 15-445 Fall 2022 Database Systems 数据库系统 [卡内基梅隆] 课程重点知识点摘录,附加个人拙见,同样借助CMU 15-445课程内容来完成MIT 6.830 lab内容。 上节课介绍的 2PL 是悲观的并发控制策略,本节课介绍的 Timestamp Ordering (时间戳排序并发控制 – T/O) 则是一个乐观的策略,

    2024年02月15日
    浏览(28)
  • 【cmu15445c++入门】(4)c++中的模板方法

    模板方法是c++的一个特性,可以让你的代码在不指定数据类型的情况下,运行不同的数据类型。 你可以创建模板方法和模板类,本文讨论模板方法。

    2024年02月02日
    浏览(23)
  • SpringBoot--中间件技术-3:整合mongodb,整合ElasticSearch,附案例含代码(简单易懂)

    实现步骤: pom文件导坐标 yaml配置文件配置mongodb: 随便建一个pojo 测试: 装配MongoTemplate模板类,调用方法 整合MongoDB总结: 导坐标 写配置文件 核心类MongoTemplate调用 前提准备:数据库+ES 数据库建表语句: 实现步骤: pom文件到坐标 yaml配置文件 创建实体类: 对应数据库表

    2024年02月04日
    浏览(39)
  • 一篇文章带你从入门都入土 Kafka 消息中间件(原理+代码)

    目录 一、Kafka定义 二、消息队列 三、Kafka基础架构图 四、安装Kafka 4.1 为每台服务器下载Kafka并解压 4.2 查看目录结构 4.3 为每台服务器修改配置文件server.properties 4.4 为每台服务器配置Kafka环境变量 4.5 启动zookeeper集群 4.6 启动Kafka集群 4.7 关闭Kafka集群的注意事项 五、Topic命令

    2024年02月04日
    浏览(31)
  • 【C语言】C语言编程实战:Base64编解码算法从理论到实现(附完整代码)

    🧑 作者简介 :阿里巴巴嵌入式技术专家,深耕嵌入式+人工智能领域,具备多年的嵌入式硬件产品研发管理经验。 📒 博客介绍 :分享嵌入式开发领域的相关知识、经验、思考和感悟,欢迎关注。提供嵌入式方向的学习指导、简历面试辅导、技术架构设计优化、开发外包等服

    2024年03月13日
    浏览(32)

觉得文章有用就打赏一下文章作者

支付宝扫一扫打赏

博客赞助

微信扫一扫打赏

请作者喝杯咖啡吧~博客赞助

支付宝扫一扫领取红包,优惠每天领

二维码1

领取红包

二维码2

领红包