RDK X3 机械臂捡垃圾经验分享

2024-10-30 D-Robotics官网
RDK X3,D-Robotics RDK X3,D-Robotics RDK X3,D-Robotics RDK X3,D-Robotics

功能介绍

hobot_arm package是基于mono2d_trash_detection package开发的2D垃圾目标检测+机械臂抓取的应用示例。在地平线的旭日X3派上利用BPU进行模型推理获得感知结果,利用幻尔机械臂作为下位机,进行垃圾抓取的示例。


编译


开发环境

  • 编程语言: C/C++

  • 开发平台: X3/X86

  • 系统版本:Ubuntu 20.04

  • 编译工具链:Linux GCC 9.3.0/Linaro GCC 9.3.0


编译

支持在X3 Ubuntu系统上编译和在PC上使用docker交叉编译两种方式。


Ubuntu板端编译X3


1、编译环境确认

  • 板端已安装X3 Ubuntu系统。

  • 当前编译终端已设置TogetherROS环境变量:source PATH/setup.bash。其中PATH为TogetherROS的安装路径。

  • 已安装ROS2编译工具colcon,安装命令:pip install -U colcon-common-extensions


2、编译


编译命令:colcon build --packages-select hobot_arm


Docker交叉编译X3


1、编译环境确认

  • 在docker中编译,并且docker中已经安装好TogetherROS。docker安装、交叉编译说明、TogetherROS编译和部署说明详见机器人开发平台robot_dev_config repo中的README.md。


2、编译


  • 编译命令:


export TARGET_ARCH=aarch64

export TARGET_TRIPLE=aarch64-linux-gnu

export CROSS_COMPILE=/usr/bin/$TARGET_TRIPLE-

colcon build --packages-select hobot_arm\

--merge-install\

--cmake-force-configure\

--cmake-args\

--no-warn-unused-cli\

-DCMAKE_TOOLCHAIN_FILE=`pwd`/robot_dev_config/aarch64_toolchainfile.cmake


X86 Ubuntu系统上编译X86版本


1、编译环境确认

  • x86 ubuntu版本: ubuntu20.04


2、编译


  • 编译命令:


colcon build --packages-select hobot_arm\

--merge-install\

--cmake-args\

-DTHIRD_PARTY=`pwd`/../sysroot_docker\


注意事项


使用介绍


依赖


  • mono2d_trash_detection package: 发布垃圾检测感知msg


参数


运行

编译成功后,将生成的install路径拷贝到地平线旭日X3开发板上(如果是在X3上编译,忽略拷贝步骤),并执行如下命令运行:


X3 Ubuntu 启动


export COLCON_CURRENT_PREFIX=./install 

source ./install/setup.bash 

# config中为示例使用的模型,根据实际安装路径进行拷贝 

# 如果是板端编译(无--merge-install编译选项),拷贝命令为cp -r install/PKG_NAME/lib/PKG_NAME/config/ .,其中PKG_NAME为具体的package名。 

cp -r install/lib/mono2d_trash_detection/config/ . 


# 启动dnn_node_example package 

# mipi摄像头输入检测,渲染结果在Web页面可视化 

export CAM_TYPE=mipi 

ros2 launch dnn_node_example dnn_node_example.launch.py config_file:=config/ppyoloworkconfig.json msg_pub_topic_name:=ai_msg_mono2d_trash_detection image_width:=1920 image_height:=1080 


# 启动dnn_node_example package 

# usb摄像头输入检测,渲染结果在Web页面可视化 

export CAM_TYPE=usb 

ros2 launch dnn_node_example dnn_node_example.launch.py config_file:=config/ppyoloworkconfig.json msg_pub_topic_name:=ai_msg_mono2d_trash_detection image_width:=1920 image_height:=1080 


ros2 run hobot_arm hobot_arm


X3 Linux

如果需要在PC端浏览器上渲染显示sensor发布的图片和对应的AI结果,确认旭日X3派已经启动用于web展示的webserver服务(设备启动后只需要启动一次服务,只有设备重启的情况下需要重新启动服务)。旭日X3派执行ps -aux命令查看是否有nginx进程,如果有表示已经启动此服务,如果无,启动服务,运行方法为:


cd /opt/tros/lib/websocket/webservice/ 

chmod +x ./sbin/nginx && ./sbin/nginx -p . 

cd -


export ROS_LOG_DIR=/userdata/ 

export LD_LIBRARY_PATH=${LD_LIBRARY_PATH}:./install/lib/ 


 # config中为示例使用的模型,根据实际安装路径进行拷贝 

cp -r ./install/lib/mono2d_trash_detection/config/ .


# 启动图片发布pkg 

./install/lib/mipi_cam/mipi_cam --ros-args -p out_format:=nv12 -p image_width:=416 -p image_height:=416 -p io_method:=shared_mem -p video_device:=GC4663 --log-level error &


# 启动JPEG图片编码&发布pkg

/install/lib/hobot_codec/hobot_codec_republish --ros-args -p channel:=1 -p in_mode:=shared_mem -p in_format:=nv12 -p out_mode:=ros -p out_format:=jpeg -p sub_topic:=/hbmem_img -p pub_topic:=/image_jpeg --ros-args --log-level error & 


# 启动web展示pkg

/install/lib/websocket/websocket --ros-args -p image_topic:=/image_jpeg -p image_type:=mjpeg -p smart_topic:=/ai_msg_mono2d_trash_detection --log-level error & 


# 启动dnn_node_example node

/install/lib/dnn_node_example/example  --ros-args -p feed_type:=1 -p is_shared_mem_sub:=1 -p dump_render_img:=0 -p msg_pub_topic_name:=/ai_msg_mono2d_trash_detection --log-level warn & 


# 启动hobot node

/install/lib/hobot_arm/hobot_arm --log-level warn


X86 Ubuntu


export COLCON_CURRENT_PREFIX=./install

source ./install/setup.bash

# config中为示例使用的模型,根据实际安装路径进行拷贝

cp -r ./install/lib/mono2d_trash_detection/config/ .

# 启动dnn_node_example node

ros2 run dnn_node_example example --ros-args -p feed_type:=0 -p image:=config/trashDet0028.jpg -p image_type:=0 -p dump_render_img:=1 -p config_file:=config/ppyoloworkconfig.json


结果分析


X3结果展示


输出log日志:


[WARN] [1700107618.608870258] [arm_node]: Parameter: 

targetX: 0.15 

targetY: 0 targetZ: -0.08 

[WARN] [1700107618.609489260] [arm_node]: ArmNode Init Succeed! 

[WARN] [1700107621.610287833] [arm_node]: Operate Succeed! 

^C[INFO] [1700107623.664628627] [rclcpp]: signal_handler(signal_value=2) 

root@ubuntu:~# ros2 run hobot_arm hobot_arm        


This is hobot arm package.


 ============================================         

the robotic arm device 

============================================ 


[WARN] [1700107629.060302603] [arm_node]: Parameter: 

targetX: 0.15 target

Y: 0 targetZ: -0.08 

[WARN] [1700107629.060854068] [arm_node]: ArmNode Init Succeed! 

[WARN] [1700107632.061743344] [arm_node]: Operate Succeed!


结果说明


示例中展示了垃圾检测的实时推理效果。本地效果展示中展示了将回灌图片渲染保存在本地。

设置"dump_render_img"为1时,渲染图片实时保持在当前路径下。

授权代理商:世强先进(深圳)科技股份有限公司
技术资料,数据手册,3D模型库,原理图,PCB封装文件,选型指南来源平台:世强硬创平台www.sekorm.com
现货商城,价格查询,交期查询,订货,现货采购,在线购买,样品申请渠道:世强硬创平台电子商城www.sekorm.com/supply/
概念,方案,设计,选型,BOM优化,FAE技术支持,样品,加工定制,测试,量产供应服务提供:世强硬创平台www.sekorm.com
集成电路,电子元件,电子材料,电气自动化,电机,仪器全品类供应:世强硬创平台www.sekorm.com
  • +1 赞 0
  • 收藏
  • 评论 0

本文由雪飘梦飞转载自D-Robotics官网,原文标题为:RDK X3 机械臂捡垃圾,本站所有转载文章系出于传递更多信息之目的,且明确注明来源,不希望被转载的媒体或个人可与我们联系,我们将立即进行删除处理。

评论

   |   

提交评论

全部评论(0

暂无评论

相关推荐

基于RDK X3的机械臂物体拾取操作实例

本文介绍RDK X3该功能包接收用户选择方块数字的请求,通过yolov5检测目标,在Z轴距离确定的情况下解算出物体的三维坐标,并请求仿真机械臂控制节点夹取物体的应用实例。

设计经验    发布时间 : 2024-10-28

智能语音聊天机器人功能及使用指南

智能语音聊天机器人通过识别用户语音,调用ChatGPT API获取答复并播放,实现语音聊天。需地平线RDK、ChatGPT API Key及音频板等物料。准备、组装后,安装功能包并运行,配置音频和ChatGPT API Key。常见问题包括设备连接、音频驱动、配置文件及网络访问等。

设计经验    发布时间 : 2024-10-18

在RDK X3体验Cartographer激光雷达SLAM技术,实时获取较高精度的地图

本功能所使用的Cartographer是google推出的一套基于图优化的SLAM算法,可以实现机器人在二维或三维条件下的定位及建图功能,这套算法的主要设计目的是满足机器人在计算资源有限的情况下,依然可以实时获取较高精度的地图。该功能支持机器人实物和Gazebo仿真两种体验方式。

设计经验    发布时间 : 2024-11-19

双机械臂四转四驱机器人设计与实现

该研究设计了一种创新的双机械臂四转四驱机器人,旨在突破传统轮式机器人的限制。该机器人底盘采用四转四驱设计,显著提升了灵活性和负载能力,使其能够在复杂环境中精确移动和执行任务。双机械臂系统使机器人能够高效与现实生活互动,完成复杂任务。

应用方案    发布时间 : 2024-10-29

多模态感知仿生机械手项目案例

本项目提供了一款五指仿生机器手,其仿照人手的外观与自由度,使其能够作为人形机器人的末端执行器,完成人手所能完成的任务。

应用方案    发布时间 : 2024-10-29

基于RDK X3的chat robot应用示例,实现用户和机器人语音聊天功能

智能语音聊天机器人识别用户语音内容,然后调用OpenAI API获取答复,最后将该答复播放出来,实现用户和机器人语音聊天功能。

设计经验    发布时间 : 2024-11-18

NodeHub快速入门

NodeHub是地平线为机器人爱好者打造的智能机器人应用中心,旨在以更加简单、高效、开放的方式协助机器人爱好者开发自己的智能机器人。

技术探讨    发布时间 : 2024-10-30

基于RDK X3开发板设计并实现的手持slam建图设计

这里使用RDK X3开发板设计并实现了一款SLAM手持建图设备,它使用RDK X3开发板的计算性能,通过激光雷达实现一个纯激光里程计,通过IMU对激光数据进行畸变矫正和对SLAM的姿态矫正,实现一个手持的SLAM建图功能。

设计经验    发布时间 : 2024-11-04

亚博智能RDK X3 ROBOT机器人项目实例,实现RKD X3 ROBOT的基本运动控制和位姿反馈

亚博智能RKD X3 ROBOT是一款面向机器人开发者和教育生态的智能机器人开发套件。该套件以旭日X3派为核心运算单元,以TogetherROS.Bot为核心机器人操作系统,集成成了建图、导航、人体跟随、手势识别等功能。本项目为亚博智能RKD X3 ROBOT机器人最小功能系统,该系统能够实现RKD X3 ROBOT的基本运动控制和位姿反馈。

设计经验    发布时间 : 2024-11-16

地平线RDK实现智能循线机器人应用示例

巡线任务,即机器人小车能够自主跟着一条引导线向前运行。地平线RDK通过摄像头获取小车前方环境数据,图像数据通过训练好的CNN模型进行推理得到引导线的坐标值,然后依据一定的控制策略计算小车的运动方式,通过UART向小车下发运动控制指令实现整个系统的闭环控制。

设计经验    发布时间 : 2024-11-12

基于RDK X3的人体跟随机器人功能示例

本示例通过视觉进行人体目标检测与跟踪,并生成运动控制指令控制机器人自动跟随目标运动。该功能支持机器人实物和Gazebo仿真两种体验方式。

设计经验    发布时间 : 2024-11-08

基于RDK X3实现的语言大模型操作实例

hobot_llm是地平线RDK平台集成的端侧Large Language Model (LLM) Node,用户可在端侧体验LLM。目前提供两种体验方式,一种直接终端输入文本聊天体验,一种订阅文本消息,然后将结果以文本方式发布出去。

设计经验    发布时间 : 2024-11-16

NodeHub快速入门示例:小海龟绘画

NodeHub快速入门示例,通过键盘控制小乌龟进行绘画。

设计经验    发布时间 : 2024-11-11

镭神激光雷达驱动

镭神激光雷达驱动设计方案及应用介绍, LSLIDAR ROS2驱动链接RDK X3,以ROS2标准消息格式发送激光雷达数据。

设计经验    发布时间 : 2024-11-09

基于RDK X3和OriginBot的手势控制机器人应用案例

通过视觉进行人手检测、跟踪和手势识别,根据手势类别生成不同运动控制指令并控制机器人运动,包括左右旋转和前后平移运动。该功能支持机器人实物和Gazebo仿真两种体验方式。以下操作过程以OriginBot为例,满足条件的其他机器人使用方法类似。

设计经验    发布时间 : 2024-11-13

展开更多

电子商城

查看更多

品牌:D-Robotics

品类:开发套件

价格:¥699.0000

现货: 99

品牌:D-Robotics

品类:开发板套件

价格:¥1,299.0000

现货: 5

品牌:D-Robotics

品类:摄像头单目模组

价格:¥249.0000

现货: 5

品牌:D-Robotics

品类:开发板套件

价格:¥1,299.0000

现货: 5

品牌:D-Robotics

品类:摄像头单目模组

价格:¥199.0000

现货: 5

品牌:D-Robotics

品类:开发套件

价格:¥549.0000

现货: 0

品牌:

品类:

价格:

现货:

品牌:

品类:

价格:

现货:

品牌:

品类:

价格:

现货:

品牌:

品类:

价格:

现货:

品牌:

品类:

价格:

现货:

品牌:

品类:

价格:

现货:

现货市场

查看更多

暂无此商品

海量正品紧缺物料,超低价格,限量库存搜索料号

查看更多

授权代理品牌:接插件及结构件

查看更多

授权代理品牌:部件、组件及配件

查看更多

授权代理品牌:电源及模块

查看更多

授权代理品牌:电子材料

查看更多

授权代理品牌:仪器仪表及测试配组件

查看更多

授权代理品牌:电工工具及材料

查看更多

授权代理品牌:机械电子元件

查看更多

授权代理品牌:加工与定制

世强和原厂的技术专家将在一个工作日内解答,帮助您快速完成研发及采购。
我要提问

954668/400-830-1766(工作日 9:00-18:00)

service@sekorm.com

研发客服
商务客服
服务热线

联系我们

954668/400-830-1766(工作日 9:00-18:00)

service@sekorm.com

投诉与建议

E-mail:claim@sekorm.com

商务合作

E-mail:contact@sekorm.com

收藏
收藏当前页面