0
  • 聊天消息
  • 系统消息
  • 评论与回复
登录后你可以
  • 下载海量资料
  • 学习在线课程
  • 观看技术视频
  • 写文章/发帖/加入社区
会员中心
创作中心

完善资料让更多小伙伴认识你,还能领取20积分哦,立即完善>

3天内不再提示

技术融合与创新大象机器人水星Mercury X1人形机器人案例研究!

大象机器人科技 来源:大象机器人科技 作者:大象机器人科技 2024-04-28 14:18 次阅读

引言
科技迅速发展的当下,人形机器人正变得日益重要,其应用范围从工业自动化到服务业不断扩展。本文将通过Mercury X1大象人形机器人的案例,探讨如何利用尖端技术如大型语言模型(LLM)、同时定位与映射(SLAM)、机器人操作系统ROS)、开源计算机视觉(OpenCV)和S-Tag标记码技术来实现复杂环境中的精确物体抓取和移动。

此案例不仅展示了机器人的高级功能,也体现了现代机器人如何有效解决实际问题,预示着未来技术在工业和服务业中的应用前景。接下来的内容将详细说明实验的技术设置、步骤与成果。

wKgaomYt55mAOKkVAAgINhZXgIs297.png

技术点介绍
在Mercury X1的应用案例中,整合了多种技术使得机器人能够在复杂的环境中执行精准的物体抓取和移动任务。以下是案例中涉及到的关键技术和详细介绍:

1.LLM(Large Language Model)
大型语言模型(LLM)如ChatGPT系列,在机器人技术中的应用允许机器人理解和执行基于自然语言的指令。这种模型通过处理大量的文本数据学习语言的复杂性和上下文关系,使机器人能够解析用户的指令并转化为动作。

将一个对话形式的大语言模型,嵌入到机器人当中是目前一种比较热门的一种技术。

在Mercury X1机器人中,LLM用于理解自然语言解释操作命令,为后续的动作提供给决策。

wKgaomYt596AFbHrAAFOXZiH4eY815.png

2.同时定位与建图SLAM
SLAM技术是现代机器人和自动驾驶汽车中不可或缺的一部分,它允许机器人在没有外部帮助的情况下,在未知环境中进行定位和地图创建。通过使用激光雷达、摄像头和其他传感器,SLAM帮助Mercury X1机器人构建环境地图,实时更新其位置,并规划行动路径。这对于确保机器人在复杂环境中能够自主导航至关重要。

wKgaomYt6B2ABtkuAA2awJafRbM391.png

3.机器人操作系统 (ROS)
机器人操作系统(ROS)是一个灵活的框架,用于编写机器人软件。它提供了一系列工具和库,使开发者能够构建复杂而可靠的机器人行为。ROS的模块化设计允许Mercury X1机器人的开发者轻松集成不同的硬件和软件比如说机械臂的路径规划,移动地盘的建图导航避障等功能,处理数据通信,并管理多个传感器和执行器之间的交互。

ROS是一个非常强大的工具,在机器人应用领域当中,在全球范围内也是非常多人使用的。

wKgaomYt6F-APwnPAAMXLv3q99U603.png

4.开源计算机视觉库 (OpenCV)
OpenCV是用于实现图像处理和计算机视觉的开源库,它在本次的案例中扮演了至关重要的角色,没有它就不能完成这个项目。机器人的摄像头通过OpenCV分析收集到的视觉数据,识别和定位物体。OpenCV的算法使机器人能够识别物体形状、大小和精确坐标,这些信息对于精确抓取和操作至关重要。

提供了物体的坐标给机器人,就可以实现精准的抓取。

wKgaomYt6GyAeAI4AACUErg-VYA693.png

5.S-Tag标记码技术
S-Tag标记码是一种高度可靠的标识系统,设计用于在视觉上挑战的环境中提供准确的标记识别。这些标记被用于标识Mercury X1机器人操作环境中的物体和位置。即使在光线不足或视线受阻的情况下,S-Tag也能确保机器人通过其摄像头系统准确识别目标物体。

https://youtu.be/vnHI3GzLVrY

6.pymycobot
pymycobot是用于控制Mercury X1机器人机械臂和末端执行器(如夹爪)的Python库。它允许开发者精确控制机械臂的角度、坐标以及运动模式,包括差补模式和刷新模式。此库为机器人提供了高度的灵活性和可定制性,使得机器人能够执行复杂的抓取和操控任务,并适应各种操作需求。

产品介绍
Mercury X1
Mercury X1是由Elephant Robotics开发的一款先进的人形机器人,特别设计用于应对各种自动化任务。它拥有19个自由度,(单臂7个自由度)使其在执行任务时具有极高的灵活性和适应性。Mercury X1配备了轮式移动底座,由高性能直驱电机驱动,能够在复杂环境中稳定移动,并具备高达8小时的电池续航能力,适合个人和商业应用。

这款机器人采用高性能主控制器系统,配置了NVIDIA Jetson Xavier提供强大的计算支持,以处理视觉测距、传感器融合、定位与地图构建、障碍检测和路径规划等复杂算法。此外,Mercury X1的移动基座装备了LiDAR、超声波传感器和2D视觉系统,能够实现高感知的环境交互。

wKgZomYt6KOAZVVQAADLT5jrUWk064.png

myCobot Pro Adaptive Gripper
2 指自适应夹持器可实现内部和外部平行夹持,以及独特的环绕式夹持模式。它可以拾起任何形状的任何物体并且不会松开。使用它来完成一系列完整的应用,并快速投入生产 - 无需机器人专业知识。它是高度灵活和可靠的机器人单元的关键。

wKgaomYt6LCAZJiwAAFIqf-5yi0330.pngwKgaomYt6MaAZXaxAAKN4cT8K_s018.png

myCobot Pro Camera Flange
使用USB-B数据线能够获取到图像的相机模组。

wKgZomYt6NCAOKh6AAMCmt9eI9A356.png

接下来,我们将探讨这些技术在实际应用中是如何被集成到机器人中,并展示其在具体任务中的表现。

wKgaomYt6NqACx0NAAFlNrVAmJo760.png

场景流程介绍
建图设立标记点
建图:首先在所处的环境里,使用Mercury X1自带的雷达,通过ROS中的SLAM技术进行建图,用的是gmapping算法进行2D建图。启动机器人,对系统进行初始化,在所处的环境中移动,通过雷达传感器收集数据,SLAM算法将这些数据转化为一个结构化的地图,同时实时更新机器人的位置,为了确保地推的准确性,建议在环境中多移动会。

标记A,B点:在RViz中使用“Publish Point”工具,在地图上点击想要标记的位置,就会发布一个点到ROS的默认话题,重复这个过程在B点也进行标记,记录下A,B点的坐标

wKgZomYt6POAHKaJAAkIF76vDuM274.png

在程序中修改好保存的点位,之后就可以进行定点巡航了。

wKgaomYt6P-APzCYAA9dhWLisC8367.png

移动到A桌,进行物体的识别与抓取
完成完上一步骤之后,Mercury X1运动到A桌进行物体的抓取。

wKgaomYt6QmAafnxABrKBXqebEE213.png

因为物体的检测是根据手臂末端的摄像头进行的,所以在一开始未知的情况下,会对周围的环境先进行一个巡视,发现目标之后快速计算目标物体的位置。

#扫描全部物体的代码

def detect_objects_all(flag):
   if flag == 0:
       detect_objects("left", ml_camera_pos_a, camera_data_a)
       detect_objects("right", mr_camera_pos_a, camera_data_a)
       cube_data, tray_data = judge_tray_cube(camera_data_a)      else:
       ml.send_angles([-41.88, 30.62, -1.14, -102.57, 59.89, 58.11, 9.63], 10)
       mr.send_angles([45.94, 25.33, 0.15, -102.31, -58.65, 55.8, -13.94], 10)
       waitl()
       ml.set_gripper_value(0, 10)
       mr.set_gripper_value(0, 10)
       time.sleep(12)
       detect_objects("left", ml_camera_pos_b, camera_data_b)
       detect_objects("right", mr_camera_pos_b, camera_data_b)
       ml.set_gripper_value(50, 10)
       mr.set_gripper_value(50, 10)
       cube_data, tray_data = judge_tray_cube(camera_data_b)      return cube_data, tray_data

每个物体的表面都有贴有STag码,可以通过标记码来精准的获得物体的坐标参数,在此获得的物体坐标和机械臂的坐标并不在同一个坐标系当中,所以在机械臂的机器视觉算法当中,都会有一个世界坐标系,将物体的坐标,机械臂末端的坐标转化为世界坐标,这样就方便机械臂对物体进行抓取。

wKgZomYt6SOAG1HDAAC3H75cjyQ326.pngwKgaomYt6SqAdB0pABwb8fy6Z4A335.png

移动到B桌
拿着收纳箱,前往B桌进行分类。

对物体进行分类
跟第二步,物体的识别和抓取的算法是一样的,都是通过STag标记码识别之后获取物体的坐标进行分类。

wKgaomYt6TOAH45HABRelv7pg5s193.png

技术难点
在开发过程中的难点最核心的是,双臂人形机器人协同控制的问题,主要从以下几个方面来分析:

精确的坐标和时间同步:
要精确计算两个手臂的运动轨迹,确保它们在抓取托盘时能同时到达预定位置。这要求系统能够同步控制两个独立的驱动系统,确保动作的协调性和同步性。

在Mercury X1夹爪托起托盘的时候,需要同时夹住托盘的边缘并且同时抬起托盘,为了确保同步进行,避免一方提前抬起,预设了1s的时间进行等待。

def put_up_tray(tray_data):
   ml.set_gripper_value(60, 10)
   mr.set_gripper_value(60, 10)
   time.sleep(1)
   for tray in tray_data:
       offset, fact_bcl = get_obj_coords(tray["corners"], tray["ids"], tray["cur_coords"], tray['arm'])
       point = fact_bcl.copy()
       px, py, pz = point[0], point[1], point[2]
       if tray["ids"] == [4] and tray['arm'] == "left":
           af = (offset + 90) * pi / 180
           mc = ml
           Hei = 57
           Len = -20
       elif tray["ids"] == [5] and tray['arm'] == "right":
           af = (offset - 90) * pi / 180
           mc = mr
           Hei = 57
           Len = 30
       else:
           continue
       # p3
       px3 = px + Hei * cos(af) + Len * sin(af)
       py3 = py + Hei * sin(af) - Len * cos(af)
       pz3 = pz
       p3 = [px3, py3, pz3]
       mc.send_base_coord(6, offset, sp)
       mc.send_base_coord(2, py3, sp)
       mc.send_base_coord(1, px3, sp)
       mc.send_base_coord(3, pz - 10, sp)
   waitl()
   ml.set_gripper_value(0, 10)
   mr.set_gripper_value(0, 10)
   time.sleep(2)
   current_coordsl = ml.get_base_coords()
   current_coordsr = mr.get_base_coords()
   waitl()
   ml.send_base_coord(3, current_coordsl[2] + 20, 20)
   mr.send_base_coord(3, current_coordsr[2] + 20, 20)
   waitl()

力学平衡和稳定性
在抓取大型或重物体时,双臂的协调尤为重要。需要确保机器人在执行任务时保持稳定,避免因力学不平衡造成的倾倒或损坏。这涉及到复杂的力学计算和实时反馈调节。

在本次项目中,因为动作并不算是很复杂,只需要将托盘同时抬起,同时放下就能够保证托盘的稳定性。如果在复杂的场景,比如说用手持乒乓球拍保证乒乓球拍上的球不会掉落,这个涉及力学平衡和稳定性就要考虑的多。

碰撞避免
在双臂操作中,防止手臂之间、手臂与机器人体、手臂与环境之间的碰撞是一大挑战。需要精确地规划每个手臂的运动路径,同时保持足够的安全距离。

总结
此案例不仅凸显了机器人技术在工业和服务领域的实际应用潜力,也展示了技术融合的重要性。通过详细介绍技术背景、实施步骤和具体应用,我们看到了Mercury X1在提高生产效率、减少人工成本和应对复杂操作环境中的重要价值。

如果你对该案例感兴趣的话麻烦点赞留言支持我们,你的支持是我们更新的动力!

审核编辑 黄宇

声明:本文内容及配图由入驻作者撰写或者入驻合作网站授权转载。文章观点仅代表作者本人,不代表电子发烧友网立场。文章及其配图仅供工程师学习之用,如有内容侵权或者其他违规问题,请联系本站处理。 举报投诉
  • 开源
    +关注

    关注

    3

    文章

    3040

    浏览量

    41829
  • python
    +关注

    关注

    53

    文章

    4701

    浏览量

    83703
  • 机械臂
    +关注

    关注

    12

    文章

    483

    浏览量

    24043
  • 人形机器人
    +关注

    关注

    2

    文章

    315

    浏览量

    16242
收藏 人收藏

    评论

    相关推荐

    基于FPGA EtherCAT的六自由度机器人视觉伺服控制设计

    概述 中国制造 2025 是中国政府实施制造强国战略的第一个十年行动纲领,是全面提升中国制造业发展质量和水平的重大战略部署,其中明确指出了围绕工业机器人创新技术的重要地位。目前工业机器人
    发表于 05-29 16:17

    其利天下技术·搭载无刷电机的扫地机器人的前景如何?

    了使用体验,其发展前景愈发广阔。 1. 搭配无刷电机的扫地机器人之优势 无刷电机相较于传统有刷电机,具有更高的效率、更低的噪音和更长的使用寿命。这一技术的应用,使得扫地机器人能够在同
    发表于 05-05 15:03

    自动化革命:大象机器人Mercury A1机械臂

    Mercury系列的推出,反映了大象机器人机器人技术未来趋势的洞察,旨在满足工业、教育和研究
    的头像 发表于 01-15 14:41 375次阅读
    自动化革命:<b class='flag-5'>大象</b><b class='flag-5'>机器人</b>的<b class='flag-5'>Mercury</b> A1机械臂

    大象机器人首发万元级水星Mercury人形机器人系列

    水星Mercury机器人系列共有三款产品:水星Mercury A1 七轴协作机械臂和水星
    发表于 01-03 09:59 166次阅读
    ​<b class='flag-5'>大象</b><b class='flag-5'>机器人</b>首发万元级<b class='flag-5'>水星</b><b class='flag-5'>Mercury</b><b class='flag-5'>人形</b><b class='flag-5'>机器人</b>系列

    【开源项目】Emo:基于树莓派 4B DIY 能笑会动的桌面机器人

    使用 Autodesk Fusion 360 来设计 Emo 机器人,其中融合了实体和自由形式的建模技术。 为了简化打印过程,我们将机器人的主体分成几个部分,方便用螺钉组装。 我
    发表于 12-26 15:18

    大象机器人发布万元级水星Mercury人形机器人产品系列,联结未来,一触即达!

    机器人作为机器人产业中重要的一环,其有着独特的技术和功能,广泛应用于教育、科研、服务、娱乐和工业等领域,带来了前所未有的便利和效率。 2023年10月,工信部发布了《人形
    的头像 发表于 12-22 16:51 271次阅读
    <b class='flag-5'>大象</b><b class='flag-5'>机器人</b>发布万元级<b class='flag-5'>水星</b><b class='flag-5'>Mercury</b><b class='flag-5'>人形</b><b class='flag-5'>机器人</b>产品系列,联结未来,一触即达!

    大象机器人发布万元级水星Mercury人形机器人产品系列

    人形机器人作为机器人产业中重要的一环,其有着独特的技术和功能,广泛应用于教育、科研、服务、娱乐和工业等领域,带来了前所未有的便利和效率。
    发表于 12-22 16:19 193次阅读
    <b class='flag-5'>大象</b><b class='flag-5'>机器人</b>发布万元级<b class='flag-5'>水星</b><b class='flag-5'>Mercury</b><b class='flag-5'>人形</b><b class='flag-5'>机器人</b>产品系列

    LabVIEW的六轴工业机器人运动控制系统

    。 系统研究与算法开发:首先,项目围绕机器人的数学模型,特别是空间位姿描述和D-H模型展开研究。在此基础上,开发了机器人的运动学正反解算法,使用了雅克比-迭代法等先进
    发表于 12-21 20:03

    高动态人形机器人“夸父”通过OpenHarmony 3.2 Release版本兼容性测评

    深圳开鸿数字产业发展有限公司(以下简称”深开鸿“)OpenHarmony生态建设能力和在新兴行业领域的技术创新实力,也标志着OpenHarmony在新兴行业领域又向前迈进了一步。 夸父人形机器人由深开
    发表于 12-20 09:31

    人形机器人重磅文件出炉!

    人形机器人
    北京中科同志科技股份有限公司
    发布于 :2023年11月03日 10:56:59

    机器人编程需要什么软件?

    机器人编程需要什么软件
    发表于 11-01 07:34

    Arduino教学机器人的使用教程

    本文档的主要内容详细介绍的是Arduino教学机器人的使用教程
    发表于 09-27 06:53

    ai人工智能机器人

    的运营成本、人力成本还在不断提高(如:办公场地的租金、员工的工资、社保公积金、节假日福利等)。 如今的智能电话机器人,每天的电话拨打量可达800-1000通,相比人工提高了3-5倍,大大缩短了名单的筛选
    发表于 09-21 11:09

    基于Matlab和VR技术的移动机器人建模及仿真

    利用 Matlab 建立移动机器人的动力学模型 ,在虚拟现实 (VR )环境下 ,实时仿真移动机器人路径跟踪的运动特性 ,为基于 Internet 的机器人遥操作试验搭建了仿真平台 。 实验结果表明
    发表于 09-20 06:24

    profinet转ethernet网关连接发那科机器人配置案例

    本案例是西门子1200PLC通过PROFINET转EtherNet网关连接发那科搬运机器人配置案例。所需设备:西门子1200PLC、Profinet转EtherNet IP网关、Fanuc机器人
    发表于 08-03 17:58