基于NodeHub智能机器人应用中心是深度学习巡线小车实现示例
racing_line_follower
视觉巡线Demo基于纯视觉的方法实现赛车在赛道内运动,其中赛道中间有引导线辅助赛车保持在赛道内。
为实现上述功能,需要视觉输入、环境感知、运动控制三大模块,其中:
视觉输入模块负责获取真实世界(或仿真世界)的图像并传递给下一级环境感知模块;
环境感知模块负责感知赛车在赛道中的位置,并将相关信息传递给运动控制模块;
运动控制模块根据环境感知模块输出的赛车位置信息计算得出合理的运动控制指令并下发给赛车进行对应运动。
接下来需要对上述三个大的模块进行细化和实现以完成视觉巡线Demo。NodeHub是地平线为广大机器人开发者提供的“智能机器人应用中心”,该应用中心包含多个类别不同功能的开源Node,能够快速安装和使用,通过串联不同的Node可以完成对上述三大模块的实现。
实现细节
视觉输入
NodeHub中“外设适配”栏目包含多种传感器和机器人底盘的适配,可以轻松获取图像、点云数据。这里选择《MIPI相机驱动》来获取实现视觉输入模块。选择该模块的主要原因是该模块支持GC4663大FOV相机,视角更大,有利于赛车完成巡线。
查看《MIPI相机驱动》Node可知:
该Node支持1920x1080、640x480等多种常见分辨率;
发布话题为/hbmem_image、/image_raw、/camera_info;
可以通过ros2 launch加载不同launch文件的方式选择分辨率。
综合考虑下一级感知模块的精度和系统负载,这里选择mipi_cam_640x480_nv12_hbmem.launch.py配置文件,即以共享内存的方式发布640x480分辨率的NV12格式图像。
点击Node页面“一键部署”按钮,将生成的如下命令拷贝至RDK X3终端运行
在完成“一键部署”后,启动该Node的命令为
环境感知
赛道检测,检测赛道中引导线相对赛车本体的位置关系
NodeHub中“比赛专区”栏目中《赛道检测》基于深度学习的方法识别图像中赛道的中点并以话题的形式发布。
查看《赛道检测》Node可知:
该Node订阅/hbmem_image话题,类型为hbm_img_msgs/msg/HbmMsg1080P,此话题与视觉输入模块发布的话题一致,可以获取视觉输入模块的图像数据;
该Node将计算处理后的赛道中点值以/racing_track_center_detection话题发布,类型为geometry_msgs/msg/PointStamped;
模型文件默认路径/opt/nodehub_model/race_detection/race_track_detection.bin,更新模块可以替换该文件;
点击Node页面“一键部署”按钮,将生成的如下命令拷贝至RDK X3终端运行
在完成“一键部署”后,启动该Node的命令为
模型训练方式可参考《赛道检测模型训练部署全过程讲解》
运动控制
NodeHub中“比赛专区”栏目中《小车巡线控制》接收赛道识别节点的消息,控制小车巡线。
查看《小车巡线控制》Node可知:
该Node订阅/racing_track_center_detection话题,类型为geometry_msgs/msg/PointStamped,此话题与《赛道检测》Node发布的话题一致,用于获取赛道信息进行巡线控制;
该Node综合感知信息将计算处理后将控制信息以/cmd_vel话题发布,类型为geometry_msgs/msg/Twist;
点击Node页面“一键部署”按钮,将生成的如下命令拷贝至RDK X3终端运行
在完成“一键部署”后,启动该Node的命令为
source /opt/tros/local_setup.bash
ros2 launch racing_control racing_control.launch.py avoid_angular_ratio:=0.2 avoid_linear_speed:=0.1 follow_angular_ratio:=-1.0 follow_linear_speed:=0.1
启动底盘
NodeHub中“外设适配”栏目包含多种机器人底盘,需要按照机器人型号选择,此处以《Originbot底盘驱动》为例,该节点接收控制节点的消息,分解为对各个电机的控制,实现小车运动
查看《Originbot底盘驱动》Node可知:
该Node订阅/cmd_vdel话题,类型为geometry_msgs/msg/Twist,此话题与《小车巡线控制》Node发布的话题一致,用于获取控制信息进行电机控制;
点击Node页面“一键部署”按钮,将生成的如下命令拷贝至RDK X3终端运行
在完成“一键部署”后,启动该Node的命令为
至此,视觉循线Demo已经搭建完成整体详细框图如下图所示。
- |
- +1 赞 0
- 收藏
- 评论 0
本文由雪飘梦飞转载自D-Robotics官网,原文标题为:深度学习巡线小车,本站所有转载文章系出于传递更多信息之目的,且明确注明来源,不希望被转载的媒体或个人可与我们联系,我们将立即进行删除处理。
相关推荐
智能语音聊天机器人功能及使用指南
智能语音聊天机器人通过识别用户语音,调用ChatGPT API获取答复并播放,实现语音聊天。需地平线RDK、ChatGPT API Key及音频板等物料。准备、组装后,安装功能包并运行,配置音频和ChatGPT API Key。常见问题包括设备连接、音频驱动、配置文件及网络访问等。
设计经验 发布时间 : 2024-10-18
基于RDK X3的机械臂物体拾取操作实例
本文介绍RDK X3该功能包接收用户选择方块数字的请求,通过yolov5检测目标,在Z轴距离确定的情况下解算出物体的三维坐标,并请求仿真机械臂控制节点夹取物体的应用实例。
设计经验 发布时间 : 2024-10-28
在RDK X3体验Cartographer激光雷达SLAM技术,实时获取较高精度的地图
本功能所使用的Cartographer是google推出的一套基于图优化的SLAM算法,可以实现机器人在二维或三维条件下的定位及建图功能,这套算法的主要设计目的是满足机器人在计算资源有限的情况下,依然可以实时获取较高精度的地图。该功能支持机器人实物和Gazebo仿真两种体验方式。
设计经验 发布时间 : 2024-11-19
NodeHub包含各种开源Node,能够快速安装和使用 ,助您快速搭建室内服务机器人Demo!
NodeHub是地平线为广大开发者提供给的“智能机器人应用中心”,该应用中心中包含各种不同功能的开源Node,能够快速安装和使用,通过串联不同的Node可以完成室内服务机器人的搭建。该Demo包含了室内服务机器人所需的基础功能,包括地图建立、自主导航、垃圾检测以及人体骨骼关键点检测等,有助于您快速搭建室内服务机器人!
设计经验 发布时间 : 2024-11-06
NodeHub快速入门
NodeHub是地平线为机器人爱好者打造的智能机器人应用中心,旨在以更加简单、高效、开放的方式协助机器人爱好者开发自己的智能机器人。
技术探讨 发布时间 : 2024-10-30
基于RDK X3的chat robot应用示例,实现用户和机器人语音聊天功能
智能语音聊天机器人识别用户语音内容,然后调用OpenAI API获取答复,最后将该答复播放出来,实现用户和机器人语音聊天功能。
设计经验 发布时间 : 2024-11-18
多模态感知仿生机械手项目案例
本项目提供了一款五指仿生机器手,其仿照人手的外观与自由度,使其能够作为人形机器人的末端执行器,完成人手所能完成的任务。
应用方案 发布时间 : 2024-10-29
双机械臂四转四驱机器人设计与实现
该研究设计了一种创新的双机械臂四转四驱机器人,旨在突破传统轮式机器人的限制。该机器人底盘采用四转四驱设计,显著提升了灵活性和负载能力,使其能够在复杂环境中精确移动和执行任务。双机械臂系统使机器人能够高效与现实生活互动,完成复杂任务。
应用方案 发布时间 : 2024-10-29
亚博智能RDK X3 ROBOT机器人项目实例,实现RKD X3 ROBOT的基本运动控制和位姿反馈
亚博智能RKD X3 ROBOT是一款面向机器人开发者和教育生态的智能机器人开发套件。该套件以旭日X3派为核心运算单元,以TogetherROS.Bot为核心机器人操作系统,集成成了建图、导航、人体跟随、手势识别等功能。本项目为亚博智能RKD X3 ROBOT机器人最小功能系统,该系统能够实现RKD X3 ROBOT的基本运动控制和位姿反馈。
设计经验 发布时间 : 2024-11-16
RDK X3 机械臂捡垃圾经验分享
hobot_arm package 是基于 mono2d_trash_detection package 开发的2D垃圾目标检测+机械臂抓取的应用示例。在地平线的旭日X3派上利用BPU进行模型推理获得感知结果,利用幻尔机械臂作为下位机,进行垃圾抓取的示例。
设计经验 发布时间 : 2024-10-30
基于RDK X3开发板设计并实现的手持slam建图设计
这里使用RDK X3开发板设计并实现了一款SLAM手持建图设备,它使用RDK X3开发板的计算性能,通过激光雷达实现一个纯激光里程计,通过IMU对激光数据进行畸变矫正和对SLAM的姿态矫正,实现一个手持的SLAM建图功能。
设计经验 发布时间 : 2024-11-04
基于RDK X3实现的语言大模型操作实例
hobot_llm是地平线RDK平台集成的端侧Large Language Model (LLM) Node,用户可在端侧体验LLM。目前提供两种体验方式,一种直接终端输入文本聊天体验,一种订阅文本消息,然后将结果以文本方式发布出去。
设计经验 发布时间 : 2024-11-16
地平线RDK实现智能循线机器人应用示例
巡线任务,即机器人小车能够自主跟着一条引导线向前运行。地平线RDK通过摄像头获取小车前方环境数据,图像数据通过训练好的CNN模型进行推理得到引导线的坐标值,然后依据一定的控制策略计算小车的运动方式,通过UART向小车下发运动控制指令实现整个系统的闭环控制。
设计经验 发布时间 : 2024-11-12
NodeHub快速入门示例:小海龟绘画
NodeHub快速入门示例,通过键盘控制小乌龟进行绘画。
设计经验 发布时间 : 2024-11-11
基于RDK X3和OriginBot的手势控制机器人应用案例
通过视觉进行人手检测、跟踪和手势识别,根据手势类别生成不同运动控制指令并控制机器人运动,包括左右旋转和前后平移运动。该功能支持机器人实物和Gazebo仿真两种体验方式。以下操作过程以OriginBot为例,满足条件的其他机器人使用方法类似。
设计经验 发布时间 : 2024-11-13
电子商城
服务
提供稳态、瞬态、热传导、对流散热、热辐射、热接触、和液冷等热仿真分析,通过FloTHERM软件帮助工程师在产品设计初期创建虚拟模型,对多种系统设计方案进行评估,识别潜在散热风险。
实验室地址: 深圳 提交需求>
使用FloTHERM和Smart CFD软件,提供前期热仿真模拟、结构设计调整建议、中期样品测试和后期生产供应的一站式服务,热仿真技术团队专业指导。
实验室地址: 深圳 提交需求>
登录 | 立即注册
提交评论