跳到主要内容

准备组件

外观结构

图1 正面图

图2 俯视图

图3 侧面图

父主题: 样例介绍

功能与原理介绍

智能机械臂基于Atlas 200I DK A2 开发者套件的深度学习AI推理功能和机械臂的二次开发,通过串口硬件通信和python接口软件支持实现。

图1 实现原理

备注

须知

当前功能所用模型,均为已训练并进行模型转换的“.om”文件,如果用户需要使用自己的场景或地图,需参考Atlas 200I DK A2 开发者套件《[使用模型适配工具生成推理应用](https://www.hiascend.com/document/detail/zh/Atlas200IDKA2DeveloperKit/23.0.RC2/Getting Started with Application Development/iaqd/iaqd_0001.html)》,使用模型适配工具自行训练生成模型,并上传至开发者套件。

任意位置积木分拣

基于开发者套件的内置YoloV5神经网络模型的推理结果,标记十字标定板中积木的位置,并使用机械臂进行分拣。

  1. 通过摄像头提取十字标定板轮廓,通过机器视觉方法提取轮廓的四个角点,透视变换轮廓内的平面。
  2. 使用模型适配工具训练转换的om模型进行推理,最后根据推理结果下发指令,控制机械臂抓取在摄像头可视范围内的任意位置摆放的积木,并移动至对应颜色区域。

图2 任意位置积木分拣功能原理

任意位置积木堆叠

基于开发者套件的内置YoloV5神经网络模型的推理结果,标记十字标定板中积木的位置,并使用机械臂进行堆叠。

  1. 通过摄像头提取十字标定板轮廓,通过机器视觉方法提取轮廓的四个角点,透视变换轮廓内的平面。
  2. 使用模型适配工具训练转换的om模型进行推理,最后根据推理结果下发指令,控制机械臂抓取在摄像头可视范围内的任意位置摆放的积木,并移动至灰色区域并堆叠在一起。

图3 任意位置积木堆叠功能原理

父主题: 样例介绍

准备组件

机械臂应用样例所需组件及组件关键部位参数见表1

:::note 说明 机械臂可以通过链接进行单独购买(选择无主板类型),其中物料选型如图1所示。 :::

表1 机械臂应用样例组件表

模块名称

数量/个

是否需要单独购买

开发者套件及电源适配器

1

机械臂及电源适配器

1

是(机械臂套装中包含)

机械臂扩展板

1

USB摄像头

1

标定板地图

1

SD卡

1

40PIN排线

1

路由器

1

网线

1

图1 物料选型图

父主题: 样例组装

组装步骤

备注

须知

因USB摄像头连线长度有限且需要与开发者套件连接,应尽可能地将开发者套件与机械臂放置在邻近的位置。避免后续在机械臂展示样例时,USB摄像头的连线脱落。

  1. 将开发者套件通过RJ45网线与PC连接。

  2. 参考《快速开始》《快速开始》“一键制卡”章节烧录镜像,将SD卡插入开发者套件的卡槽,当前样例仅在Ubuntu OS适配验证过,未在openEuler OS适配验证,推荐烧录Ubuntu OS镜像。

  3. 参考[通过路由器联网](https://www.hiascend.com/document/detail/zh/Atlas200IDKA2DeveloperKit/23.0.RC2/Hardware Interfaces/hiug/hiug_0011.html)章节,连接路由器与开发板eth0网口。

  4. 将开发者套件的40PIN接口与机械臂扩展板的40PIN接口用40PIN排线连接。

    机械臂扩展板功能分布图如下:

    图1 扩展板功能分布

    机械臂与开发者套件排线的正确接法如下图所示。当正确连接时,扩展板的蓝灯点亮(下图红框所示)。为防止排线被拧断,建议购买一根长的排线。

    图2 机械臂与开发者套件排线连接

  5. 将USB摄像头插入开发者套件USB接口,并将摄像头固定在机械臂上。

  6. 将开发者套件和机械臂分别接入电源,并将机械臂扩展板电源接口旁的开关拨至“ON”。

父主题: 样例组装

获取代码

:::note 说明 每开启一个新的远程窗口,都需配置环境变量。 :::

  1. 远程登录开发者套件。

    1. 将PC和路由器接入路由器网络,并登录路由器管理后台查看开发者套件的IP地址(方法请参见[通过路由器联网](https://www.hiascend.com/document/detail/zh/Atlas200IDKA2DeveloperKit/23.0.RC2/Hardware Interfaces/hiug/hiug_0011.html))。
    2. 使用root用户(密码:Mind@123)在PC端的MobaXterm远程连接工具登录开发者套件。
  2. 远程登录开发者套件,进入“/usr/local”目录运行脚本拉取代码。

    cd /usr/local
  3. 运行脚本拉取代码。

    bash E2E_samples_download_tool.sh -d download_destination_path -s source_repository -b branch target_path

    参数说明:

    • -d:指定代码的下载路径。
    • -s:指定开源仓库的clone url。
    • -b:指定开源仓库分支名称及待下载的项目目录。
    • -f:强制更新下载路径中的目录。当样例目录已删除,但重新下载时提示“Already up to date”时可使用此参数。

    命令示例:

    bash E2E_samples_download_tool.sh -d /home/HwHiAiUser/E2ESamples -s https://gitee.com/HUAWEI-ASCEND/ascend-devkit.git -b master src/E2E-Sample/ros2_robot_arm

    回显如下:

    Download E2E samples successfully!

    执行完成后,会在“/home/HwHiAiUser/E2Esamples”目录下生成“src/E2E-Sample/ros2_robot_arm/”目录。

  4. 进入机械臂目录。

    cd /home/HwHiAiUser/E2ESamples/src/E2E-Sample/ros2_robot_arm

父主题: 快速体验

在线提单