一、项目介绍

(一)介绍

装甲板的识别与自瞄算法主要应用于哨兵和步兵在赛场上的击打。本文旨在部署使用业内大佬 chenjunnn (Chen Jun) · GitHub 开源的自瞄项目rm_vision · GitLab ,不对代码及项目架构进行解释。鼓励大家先自行查看理解学习该项目,借此对实际项目开发与应用有一定了解,为作为正式队员入队打下扎实基础。后续可能会更新为选择优化此项目为方向的队员做项目讲解。

(二)所需配置

二、ROS2安装与简单使用

 (一)ROS2简介

ROS机器人操作系统(Robot Operating System)作为快速搭建机器人的一大利器,在机器人行业的开发中被广泛使用。ROS2作为第二代机器人操作系统,继承了ROS强大的生态,采用了全新的架构设计,使得ROS2满足现代机器人系统的实时性、安全性、标准性、可靠性等要求。

在未来,机器人将走进我们的生活之中,掌握机器人技术将成为每一个技术人员的必修课。

ROS2部分的内容基于小鱼的教程完成,以下是小鱼的文档,可以跟着学ROS2的更多内容。

动手学ROS2 (fishros.com)

(二)ROS2安装

直接上小鱼的一键安装,ctrl+alt+t打开终端,运行如下指令。

wget http://fishros.com/install -O fishros && . fishros

 输入密码,在选项界面选择1-一键安装ROS,选择是否更换系统源,选择要安装的ROS2版本,这里选择humble版本的ROS2即可。

这里安装的时候认真看一下小鱼的提示文案,rosdesp也要安,剩下的看自己需求安。

还需要安装驱动库serial,命令如下,参考文章http://t.csdnimg.cn/Fey4I

  git clone git://github.com/ZhaoXiangBox/serial.git
  cd serial
  sudo make install

后来试了一下发现小鱼的一键安装还缺相机包 ,在工作空间运行指令

sudo apt-get install ros-humble-image-transport-plugins

还缺一个图像传输的包,在工作空间运行指令

sudo apt-get install ros-humble-image-transport-plugins

三、rm_vision项目部署

(一)项目准备工作

 创建工作空间

mkdir -p ~/ros_ws/src

 将项目介绍中的整个项目克隆至src目录下

可以先不下载图案分类/Unity仿真模块,即在src目录下输以下指令下载。

git clone https://gitlab.com/rm_vision/rm_vision.git   \\主项目
git clone https://gitlab.com/rm_vision/ros2-hik-camera.git \\相机驱动
git clone https://gitlab.com/rm_vision/rm_auto_aim.git  \\自瞄
git clone https://gitlab.com/rm_vision/rm_serial_driver.git \\串口通信
git clone https://gitlab.com/rm_vision/rm_gimbal_description.git \\URDF模型

下载可视化brige

sudo apt install ros-humble-foxglove-bridge

编译项目

安装依赖

rosdep install --from-paths src --ignore-src -r -y

 编译

colcon build --symlink-install

(二)可视化准备工作

本项目使用foxglove完成可视化工作,可直接使用网页版(有些卡)Foxglove

建议在官网下载客户端使用Download - Foxglove

具体操作即使用方法可以参考古月居的文章ROS2可视化利器---Foxglove Studio - 古月居 (guyuehome.com)学习,本文下一步只着眼于如何在本项目中使用。

四、rm_vision项目运行

ROS2运行 

  • 打开串口(开启串口最高权限,chmod 777指令为权限设置,/后为接入的串行设备)

*执行这步需要有电控端接入,自行尝试视觉部分请跳过这步

sudo chmod 777 \\自行添加设备名称

 (可使用以下指令查看计算机上的串行设备名称)

ls /dev/tty*
  • 加载所需环境变量和设置
cd ros_ws  \\进入创建的工作空间
source install/setup.bash
  • ROS2运行项目
ros2 launch rm_vision_bringup vision_bringup.launch.py

可视化运行

打开一个新的终端,启动foxglove_bridge

source install/setup.bash
ros2 launch foxglove_bridge foxglove_bridge_launch.xml port:=8765

打开上一步所述网页/客户端,点击“打开连接”,在输入框输入“ws://localhost:8765”,点击“open”。

即可进入可视化进程,观看识别追踪等效果。

Logo

开放原子开发者工作坊旨在鼓励更多人参与开源活动,与志同道合的开发者们相互交流开发经验、分享开发心得、获取前沿技术趋势。工作坊有多种形式的开发者活动,如meetup、训练营等,主打技术交流,干货满满,真诚地邀请各位开发者共同参与!

更多推荐