ROS命令管理器-介绍
ROS命令管理器-介绍
说明:
- 介绍ROS命令管理器(RCM)功能
- 使用环境:ubuntu20.04 x86架构/arm架构
工具开发灵感
- 从15年开始接触到ros开始,就一直采用命令的方式搭建ros环境,遇到无数的坑
- 相信你如果一直都使用ros,难免跟我一样会遇到如下问题:
- rosdep update 因为网站连接问题,经常不好用
- ros1/ros2的国外源经常出错或导致安装缓慢
- ubuntu系统国外源也经常出错或导致安装缓慢
- python的国外源也经常出错或导致安装缓慢
- 各种包的版本问题,各种安装异常
- ros1/ros2包源码安装,经常不成功
- 不同架构下的,安装方法也不一样
。。。。。。。
- 所以需要保证每次安装的统一: 统一的环境,统一配置,统一的安装方式 尽可能减少出现问题的概率。
- 单个版本解决方法,就是每次安装好,赶紧备份一个版本,出问题就恢复一下,继续干活
- 但是,每当一个新的ros版本出来,难免就要升级,上面的问题不可避免的又出来了。
- 我就想,如果开发一个工具,写好安装脚本,大家可以共享,很多问题,就可以避免,毕竟这个脚本是你经过测试的。
- 每个人可以自己根据安装的流程,生成一个执行脚本,通过这个脚本来完成相应的工作,就可以达到统一化
- 如果每个人可以把自己的脚本共享出来,这个脚本就可以实现了复用,大家就可以节省很多时间。
- 因为维护统一脚本,出现问题,更容易解决。
- 根据不同的需求,也可以建立不同的脚本来解决。
- 基于上面的需求开发了这个工具。
- 比如我想安装ros1, 找到这个脚本,点击一键安装即可,多简单。
工具开发现状
- 目前工具基本雏形已经出来,已经可以完成一些核心的问题解决
- 系统软件的搜索安装
- ros1的安装,源的更换
- ros2的安装,源的更换
- 自定义命令
- 自定义脚本
- 命令集的导出导入功能
- 更新了一些核心命令集
RCM介绍
- ROS命令管理器,全称ROS_Command_Manager,简称RCM, 主要解决如何简化ROS包和系统包的安装,配置,启动, 提高使用ROS的效率.
- 通过常规系统管理来简化系统工具和软件安装, 如安装cheese, vim, kazam, vscode等
- 通过常规命令管理来简化通用性软件的安装,配置和启动.如安装各种软件, ros2, ros1等
- 通过个性命令管理来简化针对个性化机器人的安装,配置和启动. 如安装turtlebot3, turtlebot4的真机和仿真相关包
- 可用功能:
添加命令
删除命令
保存命令列表
清空命令列表
加载命令列表
生成SHELL脚本
搜索命令(精确搜索和模糊搜索)
配置导入, 从命令集文件导入命令列表
配置删除, 删除选择的命令集文件
- 规划功能:
升级RCM
导入命令集, 网友分享出来的命令集. 新建一个gitee空间保存所有的分享的命令集.
生成桌面快捷键
- 命令集分类:
common # 与系统相关的命令集文件,配置,检查等, 如安装vim, 安装vscode, 安装kazam等
ROS2 # 与ROS2相关的命令集文件, 如安装ros2, 新建工作空间, 配置bashrc等
ROS1 # 与ROS1相关的命令集文件, 如安装ros1, 新建工作空间, 配置bashrc等
turtlebot3 # 与Turtlebot3相关的命令集文件
turtlebot4 # 与Turtlebot4相关的命令集文件
以上为官方提供的命令集分类
命令命名规范:
install xxx #安装类型的命令名称
uninstall xxx #卸载类型的命令名称
config xxx #配置类型的命令名称
check xxx #检查类型的命令名称
launch xxx #启动类型的命令名称
update xxx #更新类型的命令名称
upgrade xxx #升级类型的命令名称
- 例如:
命令名称:install vim 命令: sudo apt install -y vim
- 命令集文件命名规范:
install_xxx.json #安装类型的命令集文件
uninstall_xxx.json #安装类型的命令集文件
config_xxx.json #配置类型的命令集文件
check_xxx.json #检查类型的命令集文件
launch_xxx.json #启动类型的命令集文件
update_xxx.json #更新类型的命令集文件
upgrade_xxx.json #升级类型的命令集文件
命令集文件是一个json格式的命令列表
脚本命令集文件命令规范:
install_xxx_list.json #安装类型的命令集文件,添加后缀list说明是为生成脚本文件的命令集文件
- 脚本文件命令规范:
install_xxx_shell.json #安装类型的命令集文件,添加后缀shell说明是执行脚本文件的命令集文件
获取最新文章: 扫一扫右上角的二维码加入“创客智造”公众号