这两天在datawhale社区看到了与具身智能相关的学习项目,十分感兴趣,虽然自己并没有什么基础,但还是探索一下,blog内容估计和学习笔记差不多。

具体项目链接如下:https://github.com/datawhalechina/ai-hardware-robotics

第一节 具身智能概述

参考材料:https://github.com/datawhalechina/ai-hardware-robotics/tree/main/01-具身智能概述

一、什么是具身智能?

具身智能:指的是能够通过物理身体(如机器人、自动驾驶汽车等)在真实世界中进行感知、交互和学习的智能系统,它强调智能体必须拥有一个“身体”(body),并通过这个身体与环境互动,从而获得对世界更深层次、更符合物理规律的理解。“智能的大脑+行动的身体”。

关键三要素

1-身体:智能体的物理形态,包括各种传感器用于感知,以及执行器用于行动。

2-大脑:即智能算法的多核心,负责处理来自传感器的数据,进行思考、决策,并向执行器发出指令,通常涉及深度学习、强化学习、大语言模型等前沿ai技术。

3-环境:智能体所处的世界。它是智能体学习和实践的舞台,充满着不确定性、动态变化和复杂的物理规律。

二、发展脉络

第一阶段:蹒跚学步的先驱(20世纪中叶 - 20世纪末)

理论萌芽:控制论的创始人诺伯特·维纳等人最早提出了关于机器与环境交互的构想。

标志性项目:1966年至1972年,斯坦福研究院研制了第一台真正意义上的移动机器人Shakey,被誉为具身智能的“始祖”,首次将感知,推理和行动整合在一个系统中。

第二阶段:深度学习的赋能(21世纪初-2020年)

技术突破:随着算力的巨大提升与深度学习算法的成熟,计算机视觉技术让机器人拥有了更敏锐的“眼睛”。同时,强化学习让机器人可以通过“试错”来学习复杂技能,而无需人类编写所有规则。

算力的巨大提升可能指的是从传统 CPU → GPU 计算 的关键时代,推动了深度学习的兴起
例如:NVIDIA CUDA(2006):使 GPU 可以用于通用计算(GPGPU)

举例:波士顿动力(Boston Dynamics)公司成为这个时代的绝对焦点。从大狗机器人(BigDog)到能够跑酷、后空翻的人形机器人Atlas,它向世界展示了具身智能在运动控制(Locomotion)和平衡能力上所能达到的惊人高度。

第三阶段:大模型开启新纪元(2021年-至今)

范式转移:以GPT-3、PaLM等为代表的大语言模型(LLM)展现出强大的通用理解和推理能力。研究者们惊喜地发现,可以将LLM作为具身智能的大脑,负责理解高层次的指令,并将其分解为机器人可执行的具体步骤。

代表性突破
谷歌的RT-2模型: 首次证明了可以将视觉和语言模型直接迁移到机器人控制上,实现了“视觉-语言-行动”(Vision-Language-Action)的端到端控制,让机器人能听懂“把桌上那瓶快要掉下去的可乐扶正”这样复杂的指令。

特斯拉的Optimus(擎天柱)机器人: 旨在打造通用的“人形工人”,其背后利用了特斯拉在自动驾驶领域积累的强大视觉感知和AI计算能力。

Figure AI 与 OpenAI 的合作: 将ChatGPT的对话和推理能力集成到Figure 01机器人中,使其能够与人类自然对话,并理解和执行任务,成为具身智能走向通用化的一个重要里程碑。

三、具身智能的应用

具身智能被应用到多个领域:工业制造与物流-家庭服务与陪伴-医疗健康与康复-科学探索与特种作业

四、具身智能面临的挑战与未来展望

核心挑战

"Sim-to-Real"鸿沟:模拟器中训练好的模型,转移到现实世界中往往会“水土不服”,因为现实世界充满了模拟器无法穷尽的细节和意外。

泛化能力:如何让机器人在面对从未见过的物体和环境时,依然能做出正确的决策和行动,实现通用。

数据稀缺:与互联网上取之不尽的文本和图片数据不同,高质量的机器人交互数据既昂贵又难以获取。

关于这一点,能够基于视频进行建模,得到有用的数据?

安全性与伦理:一个拥有强大物理能力的AI系统,如何确保其行为的安全、可控和符合人类伦理。

未来展望

随着大模型、新材料、新传感器技术的不断融合,我们可以预见:

1-更强的通用性:未来的机器人是能够像人一样学习和适应多种任务的“通才”

2-更自然的人机交互:我们可以通过自然语言、手势甚至眼神与机器人协作

3-智能的物理涌现: 最终,具身智能的目标是让智能体在与物理世界的复杂互动中,自发地学习和涌现出我们甚至没有预设过的、更高级的智能形式。

第二节 机器人基础和控制

机器人基础

参考材料:https://fvcs2dhq8qs.feishu.cn/wiki/LUxhwaKyTi7ID9kMz0BcnAWZndc

机器人组成

从控制层面看,机器人可以分成四大部分:即执行系统,驱动系统,传感系统和控制系统,如图所示:
01
具体功能如下:

控制系统:机器人“大脑”,这是机器人的思考与决策中心,负责接收信息、制定指令、控制行为。
类比人类就像是大脑

传感系统:让机器人感知世界的“眼睛、耳朵、皮肤和内感”,可分为外部传感器和内部传感器。

驱动系统:将控制系统下达的命令转换为执行机构所需的信号,相当于神经系统

执行机构:具体完成动作的部分——真正运动的部件,例如电机用于旋转、移动,伺服器用于精准控制角度/位置,传动机构有齿轮、杠杆,可以用于传递力等。

各部分控制关系如图所示:
02
这张图展示了一个机器人系统的完整架构分层,从硬件——控制——计算——智能决策。
这个图中将一个机器人系统氛围三层,第一层是硬件层,可以理解成是机器人的“物理身体”,第二层是驱动控制层,是硬件的“神经系统”,主要的作用是将硬件的数据/动作接入软件中,第三层是决策运算层,可以理解为是机器人的“大脑与智慧”。

机器人的系统氛围两个相对独立的部分(ROS决策运算层与底层驱动硬件层),他们之间采用串口通信的方式进行双向数据连接。

传统机器人架构设计中,Arduino(或者STM32)作为底层驱动控制部分 主要完成直流电机的速度闭环控制,上位机部署ROS获取摄像头、雷达等传感器信息以及运行建图和导航算法。

摄像头和雷达等传感器,他们的数据量大,而单片机性能不能满足该数据量需求,所以让这些传感器直连上位机;轮子编码器,陀螺仪这些数据量不大,所以可以用单片机统一收集后再发给上位机。如果再加上平常PC的调试,整个软件结构应该是下图的样子(其中树莓派与STM32部分也可以合二为一,由一个性能较为强大的单片机处理)
03

RDK X5开发板可以作为上位机,处理底层驱动发送的数据,如YOLO识别(获取相机数据),SLAM(雷达数据与IMU数据)等;也可以作为底层驱动板块控制诸如电机调速(PWM),轮子速度控制(PID控制)等。了解大致的机器人架构之后,我们来看看具体每一个组成部分的具体含义。

执行机构

执行机构是直接面向工作对象的机器装置,相当于人体的手与脚。根据工作对象的不同,适用的执行机构也不同。机械臂一般采用伺服电机作为其运动执行机构,组成各个关节;常用的移动机器人一般采用直流电机作为移动执行机构,在任务场景中进行运动(简单理解伺服电机和直流电机,可以以是否有闭环检测作为判断依据,有闭环检测可以分为伺服电机,无则为直流电机),执行器需要接收驱动系统的信号才能工作。

相较于伺服电机,舵机是一种小型、轻便且经济实惠的执行机构,常用于机器人、无人机、模型、航模以及各种DIY电子项目中,9g舵机是一种迷你型舵机,得名于其重量约为9克,也称为微型舵机。

驱动系统

驱动系统负责驱动执行机构,将控制系统下达的命令转换为执行机构需要的信号,以驱动关节运动,实现机器人的各种运动,相当于人体的神经系统(驱动功能)。机器人驱动系统主要分为电气驱动、液压驱动和气驱动,不同的执行机构所使用的驱动系统也各不相同。
以电气驱动为例,它将控制系统的低功率信号(如MCU的PWM)转换为高功率输出(驱动电机),同时提供保护功能(过流,过热,短路保护)

比如控制系统发送“转速1000RPM”指令——驱动系统调节PWM占空比——电机(执行系统)转动

传感系统

传感系统负责信号的采集与反馈,包括内部传感系统和外部传感系统。内部传感系统包括编码器、陀螺仪等,可以通过自身信号反馈检测位姿状态;外部传感系统包括摄像头、红外、雷达等,可以检测机器人所处的外部环境信息、障碍物信息,并与内部传感器数据进行融合,优化位姿估计。

1-内部传感器组

完成机器人自身位置、速度、力度等实时测量和感知,为实现伺服控制提供依据。

位置(位移)传感器:感知机器人位置和位移状态。当传感器感受到压力,只要读出关节编码器的读数,就可以及时调整伺服控制的给定值,防止机器人出现剧烈的运动。

速度和加速度传感器:主要用于感知旋转运动的速度,常用光电脉冲式转速传感器来实现;加速度传感器可用于测量机器人的动态控制信号,一般由速度测量进行推演。主流的传感器有应力传感器和振动式加速度传感器。

力觉传感器:主要用于测量两个物体之间的作用力分量和力矩分量。主要有半导体型力觉传感器、转矩传感器和机遇弦振动原理的力觉传感器等。

2-外部传感器

通过视觉、触觉以及声觉等感知,实现智能机器人实时反映环境变化,自主调节自身行为的能力。

视觉传感器:机器视觉是智能机器人感知的主要方法,摄像机是机器视觉的主要载体。

触觉传感器:用于感知动作执行器与对象的接触及其程度;微型开关是触觉传感器的常用选择,隔离式双态接触传感器、矩阵传感器、光反射触觉传感器也是新发展的触觉传感器。

声觉传感器:用于感受和解释气体(非接触感受)、液体或固体(接触感受)中的声波。声波传感器可以从简单的声波存在检测到复杂的声波频率分析,直到对连续自然语言中单独语音和词汇的辨别。

滑觉传感器:用于检测物体的滑动。当要求智能及机器人抓住特性未知的物体时,必须确定最适当的握力值,所以要事先检测出握力不够时所产生的物体滑动信号。目前已有基于光学和利用晶体接收器等不同原理的滑觉传感器,后者的检测灵敏度与滑动方向无关。

其他外传感器:用于智能移动机器人的距离感知的激光测距仪、声呐传感器等距离传感器;用于感知环境温度的接触式或非接触式温度传感器;用于检测物体的存在和测量距离的超声波接近度传感器等。

控制系统

控制系统实现机器人系统任务与信息的处理,输出控制命令信号,类似于人的大脑。控制系统的硬件基础是中央处理器(CPU),软件基础是操作系统。

RDK X5提供了网口、USB、摄像头、LCD、HDMI、CANFD、40PIN等功能接口,方便用户进行图像多媒体、深度学习算法等应用的开发和测试。