ROS:从零开始的智能车与机械臂协同仿真一:项目简介和使用方法

一个支持机器人底盘和地盘上搭载的机械臂同时进行仿真的开源项目,用于ROS入门使用。
已经实现的功能如下:
(1)底盘仿真,建图,导航
(2)机械臂仿真,规划
(3)机械臂静态抓取,机械臂移动抓取

项目代码地址:https://github.com/lishuai-cau/caurobot_simulation.git
后期逐步更新各个组件的实现方法
路过请点一个star,欢迎交流,提问,纠错~

准备

项目依赖:

安装步骤:

mkdir -p ~/catkin_ws/src
cd ~/catkin_ws/src
git clone https://github.com/lishuai-cau/caurobot_simulation.git
cd caurobot_simulation
git submodule update --init --recursive
cd ../../
rosdep install -iry --from-paths src
cd ~/catkin_ws/
catkin init
catkin build rm_msgs
catkin build 

除此之外,您可能需要安装以下功能包以满足依赖:

sudo apt-get install ros-melodic-moveit*
sudo apt-get install ros-melodic-move-base*
sudo apt-get install ros-melodic-controller*
sudo apt-get install ros-melodic-navigation

Gazebo 所需模型可以在一下地址处下载

链接:https://pan.baidu.com/s/1uAkSy3GE0iD8sR5fg-KS2Q
提取码:b08h

  • Unzip the model and put it in the following folder ~/.gazebo/models

yolov8模型可以在以下地址处下载:

链接:https://pan.baidu.com/s/1oHFdu6ggIDsaFEIYoBNIEw
提取码:28uz

仿真一:机器人底盘仿真

运行机器人底盘仿真,可以看到机器人处于加油站场景当中,并通过rviz显示各个传感器的信息:

roslaunch caurobot_gazebo caurobot_sim_arm.launch

运行机器人底盘仿真,可以看到机器人处于加油站场景当中,并通过rviz显示包括雷达,摄像头,IMU等传感器的数据情况。
在这里插入图片描述
在这里插入图片描述

仿真二:机器人建图仿真

运行机器人底盘节点打开gazebo场景,打开不同的建图算法,通过rqt_robot节点对机器人进行遥控完成建图:
在这里插入图片描述
Gmapping建图:

roslaunch caurobot_gazebo caurobot_nav.launch
roslaunch caurobot_nav gmapping.launch

在这里插入图片描述
Hector建图:

roslaunch caurobot_gazebo caurobot_nav.launch

roslaunch caurobot_nav hector.launch

在这里插入图片描述

Karto建图:

roslaunch caurobot_gazebo caurobot_nav.launch

roslaunch caurobot_nav karto_slam.launch

在这里插入图片描述

地图建立完毕后使用map_server保存地图:

rosrun map_server map_saver -f name

仿真三:机器人自主导航仿真

运行机器人底盘节点打开gazebo场景,在建图算法的基础上,通过move_base节点对机器人导航规划:

导航:

roslaunch caurobot_gazebo caurobot_nav.launch

roslaunch caurobot_nav cau_nav.launch

在这里插入图片描述

仿真四:机器人机械臂规划

使用moveit对机器人机械臂进行规划,无论底盘是否处于移动状态都可以进行机械臂仿真,能够达到更加贴近实际情况的仿真效果:

roslaunch caurobot_gazebo caurobot_xx.launch

roslaunch caurobot_moveit moveit_planning_execution.launch

在这里插入图片描述

除此之外,我们提供了一个通过c++对moveit进行操作的代码示例,可以通过以下指令进行测试:

rosrun caurobot_moveit moveit_test

仿真五:机器人机械臂抓取仿真

在一个专门的苹果采摘场景当中,通过机械臂进行苹果的抓取:

roslaunch caurobot_gazebo caurobot_pick.launch
roslaunch caurobot_moveit moveit_planning_execution.launch
roslaunch yolov8trt yolov8.launch
roslaunch caurobot_moveit moveit_grasp.launch

在这里插入图片描述

仿真六:机器人移动抓取案例

在一个专门的苹果采摘场景当中,通过机械臂进行苹果的抓取,不同的是,这里先通过机器人规划到达采摘点后再进行采摘仿真:

roslaunch caurobot_gazebo caurobot_nav_with_pick.launch
roslaunch caurobot_nav cau_nav_with_pick.launch
roslaunch pure_persuit pure_persuit.launch  `
roslaunch caurobot_moveit moveit_grasp.launch

在这里插入图片描述

ROS 话题

  • /cmd_vel - 机器人的速度指令话题
传感器话题
  • /odom - 里程计话题
  • /imu/data - Imu 数据指令话题
  • /scan - 雷达数据话题
  • /d435/color/xxx - 彩色图像话题
  • /d435/depth/xxx - 深度图像话题
注意事项

如果在虚拟机或者没有gpu的计算机上使用,您需要使用项目中的yolov5_ros功能包替代yolov8, yolov5_ros参考:https://github.com/qq44642754a/Yolov5_ros/tree/v7.0进行配置 同时项目中和yolov8有关的命令使用 roslaunch yolov5_ros yolo_v5.launch

联系方式

qq:614483067

评论 2
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

lishuai-cau

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值