精彩回顾 | ROS暑期“无人机自主追踪小车”训练营

2024年,正值ROS暑期学校成立十周年。为了继续推动ROS在中国的教育培训、前沿研究和产业落地,暑期学校再度拉开帷幕。阿木实验室自2019年起便受邀参与ROS暑期学校,通过与张新宇教授的合作,持续为国内机器人的技术发展和普及贡献力量。本次训练营在上海的华东师范大学滴水湖国际软件学院举办,30名学员分为5组,进行了为期五天的无人机自主追踪小车训练营。

2024 ROS暑期学校VLOG

训练营的内容和过程

本次训练营的内容丰富且结构严密,分为硬件学习、软件仿真、真机部署和功能复现四个阶段,为学员们提供了从理论到实践的全方位学习体验。

第一天:硬件学习

学员们首先接触了智能无人机的硬件平台,详细的了解了无人机硬件构成和参数设置。他们学习了飞控连接和机载计算机的架构与选型,掌握了如何将机载计算机与飞控进行物理和软件协议的连接。通过对相机驱动(T265/RTK,D435i)的工作状态的熟悉,学员们开始了第一次自主实验,团队协力完成了无人机的手动室内定点飞行。这为后续的课程奠定了基础。

第二天:软件仿真

第二天的课程转向了软件仿真,学员们首先了解了仿真在无人机开发中的重要性以及如何选择合适的平台。随后,通过Prometheus项目,学员们熟悉了仿真系统的运行框架、仿真启动器和地面站的使用。在掌握了无人机起飞降落的demo操作后,每位学员都进行了实际操作,完成了仿真中的起飞降落任务。这一过程不仅巩固了学员们的理论知识,还提升了他们的实际操作能力。

第三天:自主追踪小车实验仿真复现

第三天的课程重点是无人机自主追踪小车实验的仿真复现。学员们首先学习了算法流程图,并通过Prometheus控制接口和SpireCV视觉感知模块获取目标位置,逐步深入无人机的坐标变换知识。随后,他们实现了YOLOv5_tracking的核心应用代码,成功编译生成了应用程序,并将追踪人的COCO数据集改为追踪小车的数据集,完成了仿真复现任务。整个过程让学员们对无人机的智能追踪系统有了更深入的理解。

第四天:真机部署

第四天,学员们迎来了真机部署的挑战。他们学习了机载计算机的编译原理和真机代码的框架,并成功将仿真中的代码移植到真机的机载计算机中。通过实际环境中的实验,学员们实现了无人机对小车的自主追踪,并在调试和对比过程中深入了解了真机与仿真程序数据流的差异。这一环节不仅考验了学员们的理论知识,还极大地锻炼了他们的实践操作能力。

第五天:功能复现比赛

训练营的最后一天,五个小组进行了功能复现比赛。每个小组都展示了他们在训练营中学到的技能和知识,通过对无人机自主追踪小车实验的复现,展示了各自的技术水平。

第一组比赛的队伍在原本功能的基础上,做出了两处创新性的改动:他们将无人机的高度追踪方式设定为固定高度,避免了高度突然变化可能导致的坠落风险,并通过计算物体在相机中的坐标,先修改无人机的偏航角度,再进行追踪,使得追踪过程更加平滑。

第六组的学员也进行了两处关键改动。为了提升飞行的安全性,他们将无人机的飞行高度调低至1米,并为无人机设定了0.065的偏航角速度。这一改动使得无人机能够在目标偏离视野中心时自动调整姿态,通过逐步校正方向,实现更加精准和流畅的追踪。

三组和五组则严格按照原有的实验流程,成功复现了无人机自主追踪小车的功能。虽然没有进行额外的修改,但他们的实验同样展示了无人机系统在追踪小车时的精准性和稳定性,展现了扎实的技术能力。

第二组的队伍还探索了多物体跟踪功能,将视觉识别引擎中car权重更换为YOLO公版权重,使视觉跟踪器能够识别多种物体,并尝试了跟踪瓶子的实验,效果显著。

比赛结果与总结

在最终的比赛结果中,第一组凭借最短的用时和创意的修改,成功获得了第一名的好成绩。第六组也凭借其创新性改动赢得了第二名。虽然其他队伍没有进入前两名,但他们在实验中的专注与努力同样值得表扬。每个团队都成功复现了无人机自主追踪小车的任务,展现了出色的技术能力。

对于每一位参赛者来说,这次训练营只是他们探索无人机技术的起点。通过此次学习与实践,他们不仅掌握了无人机的基础操作与开发技能,还积累了宝贵的实践经验。未来的道路上,还有更多的创新机会等待着他们去发掘与探索。相信在不久的将来,他们将在机器人领域取得更大的成就,为行业的发展贡献更多的力量。

结语

ROS暑期学校的成功举办,不仅为学员们提供了一个学习和展示自我的平台,也推动了ROS技术在中国的普及与应用。阿木实验室将继续致力于机器人技术的发展,为更多的学员提供学习与实践的机会。期待明年,我们能够在这一平台上再度相遇,共同见证中国机器人技术的成长与进步。

  • 6
    点赞
  • 10
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
ROS小车自主巡航文档 本文档介绍如何使用ROS和一些常用的ROS软件包来实现小车自主巡航功能。我们将主要使用ROS Navigation软件包来实现这一目标。 1. 硬件要求 - 小车底盘:常用的小车底盘有Turtlebot、Husky等。 - 激光雷达:常用的激光雷达有Hokuyo、Sick等。 - IMU:常用的IMU有ADXL345、MPU6050等。 - 计算机:需要一台能够运行ROS的计算机,建议使用Ubuntu系统。 2. 软件要求 - ROS:需要安装ROS,建议使用ROS Kinetic版本。 - ROS Navigation软件包:需要安装ROS Navigation软件包,包括move_base、amcl、costmap_2d等。 - 小车驱动程序:需要安装小车的驱动程序,例如Turtlebot驱动程序、Husky驱动程序等。 3. 安装ROS Navigation软件包 在终端中运行以下命令来安装ROS Navigation软件包: ``` sudo apt-get install ros-kinetic-navigation ``` 安装完成后,需要将ROS Navigation软件包添加到ROS环境变量中。在终端中运行以下命令: ``` echo "source /opt/ros/kinetic/setup.bash" >> ~/.bashrc echo "source /usr/share/gazebo/setup.sh" >> ~/.bashrc echo "export ROS_PACKAGE_PATH=$ROS_PACKAGE_PATH:/opt/ros/kinetic/share" >> ~/.bashrc echo "export ROS_MASTER_URI=http://localhost:11311" >> ~/.bashrc echo "export ROS_HOSTNAME=localhost" >> ~/.bashrc source ~/.bashrc ``` 4. 配置小车驱动程序 需要根据小车的型号和底盘来配置小车驱动程序。一般情况下,驱动程序会提供一些ROS节点和话题,用于控制小车的运动。 例如,Turtlebot提供了以下节点和话题: - /cmd_vel:用于控制小车的速度和角速度。 - /odom:用于发布小车的里程计数据。 - /scan:用于发布激光雷达数据。 需要根据实际情况来配置小车驱动程序,使它能够正常工作。 5. 配置move_base参数 move_base是ROS Navigation软件包中的一个重要组件,用于规划小车的运动路径。在使用move_base之前,需要对它的参数进行配置,以满足实际需求。 move_base的参数主要包括: - base_global_planner:全局路径规划器。 - base_local_planner:局部路径规划器。 - global_costmap:全局代价地图。 - local_costmap:局部代价地图。 - transform_tolerance:坐标系转换容忍度。 - controller_frequency:控制频率。 - planner_frequency:规划频率。 需要根据实际需求来配置这些参数,以使move_base能够正常工作。 6. 启动ROS Navigation软件包 在终端中运行以下命令来启动ROS Navigation软件包: ``` roslaunch turtlebot_navigation amcl_demo.launch ``` 这将启动AMCL(自适应蒙特卡洛定位)算法,用于估计小车的姿态和位置。在启动过程中,需要指定一些参数,例如地图文件、激光雷达数据等。 启动完成后,可以在RViz中看到小车的姿态和位置,并且可以通过RViz中的2D Nav Goal按钮来指定小车的目标位置。 7. 总结 本文介绍了如何使用ROS Navigation软件包来实现小车自主巡航功能。需要注意的是,小车的硬件和软件配置可能会因型号和底盘而有所不同,需要根据实际情况进行调整。
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

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

余额充值