具身智能行业技术全景:从感知、规划、控制到 VLA 与机器人学习

这两年,"具身智能(Embodied AI)"几乎成了 AI 和机器人行业里绕不开的关键词。

很多人第一次听到具身智能,会把它简单理解成:

大模型 + 人形机器人。

这个理解不能说错,但并不完整。

真正落到工程上,具身智能其实是一个非常庞大的技术栈,它至少涉及:

机器人硬件、传感器、计算平台、计算机视觉、SLAM、运动学、动力学、轨迹规划、运动控制、强化学习、模仿学习、VLM、VLA、世界模型、ROS、仿真、数据采集以及 Sim2Real。

如果把 ChatGPT 这样的 AI 看作一个只有"大脑"的智能体,那么具身智能做的事情,就是给这个智能体补上:

text 复制代码
眼睛
耳朵
身体
手
脚
空间感知
运动能力
物理世界交互能力

最终形成:

text 复制代码
感知 → 理解 → 决策 → 规划 → 执行 → 反馈 → 再决策

这篇文章不准备只讲概念,而是从一个工程师的角度,系统拆解一下:

具身智能到底有哪些核心技术,以及这些技术真正落地时是怎么工作的。


一、到底什么是具身智能?

Embodied AI 的核心思想其实很简单:

智能不是只存在于模型里的,智能体需要通过身体与真实世界不断交互。

例如,你对机器人说:

text 复制代码
把桌子上的红色杯子拿给我。

对于 ChatGPT 来说,这只是一句话。

但对于机器人来说,这句话背后可能需要执行几十个步骤:

text 复制代码
识别桌子
↓
识别杯子
↓
判断哪个杯子是红色
↓
计算杯子的三维位置
↓
判断自己和杯子的距离
↓
规划机器人移动路径
↓
移动到底盘目标点
↓
调整机械臂姿态
↓
计算逆运动学
↓
规划机械臂轨迹
↓
避开桌面和其他物体
↓
打开夹爪
↓
移动到抓取点
↓
闭合夹爪
↓
判断是否抓取成功
↓
找到用户的位置
↓
移动过去
↓
递出杯子

所以具身智能本质上是一个闭环系统:

text 复制代码
          ┌─────────────┐
          │   Perception│
          │     感知     │
          └──────┬──────┘
                 ↓
          ┌─────────────┐
          │ World Model │
          │   世界理解   │
          └──────┬──────┘
                 ↓
          ┌─────────────┐
          │   Planning  │
          │     规划     │
          └──────┬──────┘
                 ↓
          ┌─────────────┐
          │   Control   │
          │     控制     │
          └──────┬──────┘
                 ↓
          ┌─────────────┐
          │    Robot    │
          │   机器人     │
          └──────┬──────┘
                 │
                 └──────→ 环境反馈

这也是为什么具身智能比单纯做一个 LLM Agent 难很多。

LLM 输出错误,大不了回答错一句话。

机器人输出错误,可能直接:

text 复制代码
撞墙
摔倒
碰到人
夹坏物体
烧毁电机
损坏机械臂

所以真正的机器人系统,非常强调实时性、确定性、安全边界和反馈控制


二、具身智能第一层:机器人本体

"具身"首先得有一个"身"。

目前常见机器人形态主要有:

类型 典型应用
机械臂 工业制造、抓取、装配
AMR 仓储物流、配送
AGV 工厂运输
轮式机器人 巡检、服务机器人
四足机器人 巡检、复杂地形
双足机器人 人形机器人
灵巧手 精细操作
移动操作机器人 底盘 + 机械臂
Humanoid 通用人形机器人

这里有一个非常重要的行业概念:

Embodiment

也就是:

机器人本体形态。

例如:

text 复制代码
Franka 机械臂
UR5
ALOHA 双臂
Unitree G1
Figure
Tesla Optimus
Apptronik Apollo

它们的 embodiment 都不一样。

因为:

text 复制代码
关节数量不同
关节长度不同
自由度不同
电机不同
传感器不同
运动范围不同

所以同一个 AI 模型想跨机器人使用,并没有想象中那么简单。

这也是现在机器人基础模型研究的重要方向:

Cross-Embodiment

也就是让一个模型能够适配不同机器人本体。

Google DeepMind 在 Gemini Robotics 系列中一直强调这一能力,目前 Gemini Robotics 已经从双机械臂扩展到更多机器人形态,而 2026 年公布的 Gemini Robotics 2 又进一步强调了全身控制、灵巧操作和跨机器人本体适应。


三、自由度 DOF 是什么?

机器人领域会经常看到:

text 复制代码
6 DoF
7 DoF
21 DoF
30+ DoF

DOF:

text 复制代码
Degree of Freedom
自由度

简单理解就是:

机器人有多少个可以独立运动的维度。

例如一个机械臂:

text 复制代码
肩膀旋转
肩膀抬升
肘关节
腕关节旋转
腕关节俯仰
腕关节偏航

可能就是 6 个自由度。

而一个完整的人形机器人可能有:

text 复制代码
头部 2 DoF
双臂 14 DoF
双手 20+ DoF
腰部 3 DoF
双腿 12 DoF

加起来可能达到:

text 复制代码
30~50+ DoF

自由度越高,机器人运动能力越强。

但控制难度也会迅速增加。


四、机器人感知:机器人的"眼睛"和"耳朵"

机器人首先要解决的问题不是"怎么动"。

而是:

我现在在哪里?周围有什么?

这就是:

Perception

也就是感知系统。

机器人常见传感器包括:

text 复制代码
RGB Camera
Depth Camera
LiDAR
IMU
Encoder
Force Sensor
Torque Sensor
Tactile Sensor
Microphone

五、RGB Camera 与 Depth Camera

普通摄像头得到的是二维图像:

text 复制代码
RGB

R
G
B

例如:

python 复制代码
import cv2

cap = cv2.VideoCapture(0)

while True:
    ret, frame = cap.read()

    if not ret:
        break

    cv2.imshow("robot camera", frame)

    if cv2.waitKey(1) == 27:
        break

cap.release()
cv2.destroyAllWindows()

但机器人仅仅知道"这里有个杯子"是不够的。

它还要知道:

text 复制代码
杯子离我多远?

因此机器人经常使用:

text 复制代码
RGB-D Camera

例如:

text 复制代码
Intel RealSense
Orbbec
Azure Kinect
ZED

Depth Camera 除了 RGB 图像,还会输出:

text 复制代码
Depth Map

也就是每个像素到摄像头的距离。

例如:

text 复制代码
pixel (320, 240)

depth = 0.82m

有了深度,就可以把二维像素转换成三维坐标。


六、2D 像素如何变成 3D 坐标?

这是机器人视觉中非常基础但非常重要的一步。

假设:

text 复制代码
像素位置:(u, v)
深度:Z

摄像头内参:

text 复制代码
fx
fy
cx
cy

可以计算:

text 复制代码
X = (u - cx) * Z / fx
Y = (v - cy) * Z / fy
Z = depth

Python 示例:

python 复制代码
def pixel_to_camera(u, v, depth, fx, fy, cx, cy):
    z = depth
    x = (u - cx) * z / fx
    y = (v - cy) * z / fy

    return x, y, z


x, y, z = pixel_to_camera(
    u=320,
    v=240,
    depth=0.82,
    fx=615,
    fy=615,
    cx=320,
    cy=240
)

print(x, y, z)

输出可能是:

text 复制代码
0.0
0.0
0.82

意味着这个物体:

text 复制代码
距离相机大约 82cm

但注意:

这里得到的是:

text 复制代码
Camera Coordinate
相机坐标系

机械臂真正需要的是:

text 复制代码
Robot Base Coordinate
机器人基座坐标系

于是我们就进入机器人领域非常重要的一项技术:

坐标变换。


七、坐标系与 TF

机器人系统里面会存在大量坐标系:

text 复制代码
world
map
odom
base_link
camera_link
camera_optical_frame
shoulder
elbow
wrist
gripper

例如:

text 复制代码
world
  ↓
base_link
  ↓
shoulder
  ↓
elbow
  ↓
wrist
  ↓
gripper

同时摄像头可能又有:

text 复制代码
base_link
    ↓
camera_link

所以你看到一个杯子的位置是:

text 复制代码
camera:
x = 0.2
y = 0.1
z = 0.8

但机械臂控制程序需要:

text 复制代码
base_link:
x = 0.65
y = -0.13
z = 0.42

因此需要:

text 复制代码
Transformation Matrix

通常是一个:

text 复制代码
4 × 4

齐次变换矩阵:

text 复制代码
T =

[R  t]
[0  1]

其中:

text 复制代码
R = Rotation
t = Translation

这类东西以后在 ROS 2 的:

text 复制代码
tf2

里会经常碰到。


八、SLAM:机器人到底在哪里?

移动机器人首先要解决:

text 复制代码
我在哪里?

但同时它又要解决:

text 复制代码
这个地方长什么样?

于是就出现:

SLAM

全称:

text 复制代码
Simultaneous Localization and Mapping

翻译过来就是:

同时定位与建图。

机器人一边移动:

text 复制代码
→ → → → →

一边根据:

text 复制代码
LiDAR
Camera
IMU
Encoder

建立环境地图。

最终获得:

text 复制代码
Map
+
Robot Pose

也就是:

text 复制代码
地图
+
我在地图中的位置

常见 SLAM 技术包括:

text 复制代码
LiDAR SLAM

Visual SLAM

Visual-Inertial SLAM

典型项目包括:

text 复制代码
Cartographer
ORB-SLAM
ORB-SLAM3
RTAB-Map
LIO-SAM
VINS-Fusion

九、传感器融合

真实机器人一般不会只依赖一个传感器。

例如:

text 复制代码
Camera
+
LiDAR
+
IMU
+
Wheel Encoder

为什么?

因为所有传感器都有缺点。

例如 IMU:

text 复制代码
短时间很准
长期会漂移

Wheel Encoder:

text 复制代码
平地不错
打滑就出问题

Camera:

text 复制代码
信息丰富
但怕黑暗和强光

LiDAR:

text 复制代码
测距稳定
但语义信息少

所以机器人通常会进行:

Sensor Fusion

其中非常经典的算法就是:

text 复制代码
Kalman Filter

Extended Kalman Filter

Unscented Kalman Filter

也就是:

text 复制代码
KF
EKF
UKF

十、机器人定位之后:Path Planning

知道自己在哪里以后,下一个问题:

text 复制代码
我要怎么从 A 到 B?

例如:

text 复制代码
当前位置

A

↓ ↓ ↓

桌子
██████

↓ ↓ ↓

目标位置

B

机器人不能直接走直线,因为可能撞到桌子。

因此需要:

Path Planning

经典算法包括:

text 复制代码
Dijkstra

A*

RRT

RRT*

PRM

例如最经典的 A*:

python 复制代码
import heapq


def astar(grid, start, goal):

    open_set = []

    heapq.heappush(open_set, (0, start))

    came_from = {}

    g_score = {start: 0}

    while open_set:

        _, current = heapq.heappop(open_set)

        if current == goal:
            break

        x, y = current

        neighbors = [
            (x + 1, y),
            (x - 1, y),
            (x, y + 1),
            (x, y - 1),
        ]

        for neighbor in neighbors:

            nx, ny = neighbor

            if (
                nx < 0
                or ny < 0
                or nx >= len(grid)
                or ny >= len(grid[0])
            ):
                continue

            if grid[nx][ny] == 1:
                continue

            new_cost = g_score[current] + 1

            if (
                neighbor not in g_score
                or new_cost < g_score[neighbor]
            ):

                g_score[neighbor] = new_cost

                priority = (
                    new_cost
                    + abs(goal[0] - nx)
                    + abs(goal[1] - ny)
                )

                heapq.heappush(
                    open_set,
                    (priority, neighbor)
                )

                came_from[neighbor] = current

    return came_from

真实机器人当然会复杂很多。

因为还要考虑:

text 复制代码
机器人尺寸
速度
加速度
动态障碍物
转弯半径
安全距离

十一、Path Planning 和 Motion Planning 不完全一样

这两个概念很容易混。

Path Planning

更偏:

text 复制代码
A → B 应该走哪条路?

经常用于:

text 复制代码
AMR
自动驾驶
移动机器人

Motion Planning

则更加关注:

text 复制代码
机器人身体应该怎么运动?

尤其是机械臂。

例如:

text 复制代码
机械臂当前姿态
↓

绕开桌子

↓

抓到杯子

机械臂可能有:

text 复制代码
7 DoF

于是规划空间就不再是简单的:

text 复制代码
x, y

而可能是:

text 复制代码
q1
q2
q3
q4
q5
q6
q7

也就是:

Configuration Space

简称:

text 复制代码
C-Space

十二、Forward Kinematics:正运动学

假设我们已经知道机械臂每个关节角度:

text 复制代码
q1
q2
q3
q4
q5
q6

我们想知道:

机械臂末端到底在哪里?

这叫:

Forward Kinematics

即:

text 复制代码
Joint Angle
      ↓
Forward Kinematics
      ↓
End Effector Pose

形式可以写成:

text 复制代码
T = T1 × T2 × T3 × ... × Tn

最后得到:

text 复制代码
x
y
z
roll
pitch
yaw

十三、Inverse Kinematics:逆运动学

反过来:

我希望机械臂末端到:

text 复制代码
x = 0.6
y = 0.2
z = 0.4

那么:

text 复制代码
q1~q7

应该是多少?

这就是:

IK

Inverse Kinematics。

形式上:

text 复制代码
End Effector Pose

        ↓

Inverse Kinematics

        ↓

Joint Angles

例如:

python 复制代码
target_pose = [
    0.60,
    0.20,
    0.40
]

joint_angles = inverse_kinematics(target_pose)

真实工程中可能会使用:

text 复制代码
MoveIt
Pinocchio
Drake
KDL
TRAC-IK

等机器人运动学库。


十四、Trajectory Planning:轨迹规划

找到关节目标角度以后还不能直接:

text 复制代码
q = 0

瞬间变成:

text 复制代码
q = 1.5

真实电机做不到。

因此需要生成:

text 复制代码
position(t)
velocity(t)
acceleration(t)

也就是:

Trajectory

例如:

text 复制代码
t0 → q0

t1 → q1

t2 → q2

t3 → q3

同时要限制:

text 复制代码
最大速度
最大加速度
最大 jerk

否则机器人运动会非常生硬,甚至损坏机械结构。


十五、Control:真正让机器人动起来

规划解决的是:

text 复制代码
我想怎么动。

控制解决的是:

text 复制代码
我怎么让电机真的按照这个轨迹动。

最经典的控制算法:

PID

公式:

text 复制代码
u(t)
=
Kp * e(t)
+
Ki * ∫e(t)dt
+
Kd * de(t)/dt

其中:

text 复制代码
e = target - current

写成 Python:

python 复制代码
class PID:

    def __init__(self, kp, ki, kd):
        self.kp = kp
        self.ki = ki
        self.kd = kd

        self.integral = 0
        self.last_error = 0

    def update(self, target, current, dt):

        error = target - current

        self.integral += error * dt

        derivative = (
            error - self.last_error
        ) / dt

        output = (
            self.kp * error
            + self.ki * self.integral
            + self.kd * derivative
        )

        self.last_error = error

        return output

机器人控制里还会看到:

text 复制代码
Position Control

Velocity Control

Torque Control

Impedance Control

MPC

其中灵巧操作和人机交互领域经常会关注:

Impedance Control

它不是简单地要求机械臂:

text 复制代码
必须到这里。

而是让机械臂表现得像:

text 复制代码
弹簧 + 阻尼器

这样机器人接触人的时候不会特别"硬"。


十六、ROS 2:机器人的操作系统?

如果准备进入具身智能行业:

ROS 2 基本绕不开。

ROS:

text 复制代码
Robot Operating System

但严格来说它不是 Linux 那样的传统操作系统。

它更像:

text 复制代码
机器人中间件
+
通信框架
+
工具链
+
生态

机器人内部可能有:

text 复制代码
camera_node
lidar_node
slam_node
navigation_node
vision_node
arm_controller
gripper_controller

它们彼此需要通信。

ROS 2 最核心的抽象就是:

text 复制代码
Node
Topic
Service
Action
Message
TF

ROS 2 官方文档将常用通信方式分为三类:Topic 适合连续数据流,Service 适合快速请求/响应,而 Action 适合耗时较长、需要反馈甚至需要中途取消的任务。


十七、一个最简单的 ROS 2 Publisher

Python:

python 复制代码
import rclpy

from rclpy.node import Node

from std_msgs.msg import String


class RobotPublisher(Node):

    def __init__(self):

        super().__init__(
            "robot_publisher"
        )

        self.publisher_ = (
            self.create_publisher(
                String,
                "robot_status",
                10
            )
        )

        self.timer = (
            self.create_timer(
                1.0,
                self.publish_status
            )
        )

    def publish_status(self):

        msg = String()

        msg.data = "Robot is running"

        self.publisher_.publish(msg)


def main():

    rclpy.init()

    node = RobotPublisher()

    rclpy.spin(node)

    node.destroy_node()

    rclpy.shutdown()


if __name__ == "__main__":
    main()

另一个 Node 可以订阅:

python 复制代码
class RobotSubscriber(Node):

    def __init__(self):

        super().__init__(
            "robot_subscriber"
        )

        self.subscription = (
            self.create_subscription(
                String,
                "robot_status",
                self.callback,
                10
            )
        )

    def callback(self, msg):

        self.get_logger().info(
            f"robot status: {msg.data}"
        )

这样:

text 复制代码
Robot A Node

    ↓ Topic

Robot B Node

就可以完成机器人模块之间的通信。


十八、传统机器人和具身智能最大的区别在哪里?

传统机器人通常是:

text 复制代码
程序员写规则
↓
机器人执行规则

例如:

python 复制代码
if object_type == "cup":

    move_arm()

    open_gripper()

    move_to_cup()

    close_gripper()

    move_to_target()

问题在于:

现实世界变化太多了。

杯子可能:

text 复制代码
位置变化
颜色变化
角度变化
尺寸变化
被其他东西挡住
换成碗
换成瓶子

程序员不可能把所有规则写完。

于是机器人开始转向:

Learning-Based Robotics

也就是:

让机器人从数据中学习行为。


十九、Imitation Learning:模仿学习

目前机器人学习非常重要的一条路线:

Imitation Learning

简单理解:

text 复制代码
人演示
↓
机器人记录
↓
训练模型
↓
机器人模仿

比如人遥操作机器人:

text 复制代码
抓杯子
抓苹果
叠衣服
打开抽屉

记录的数据可能是:

text 复制代码
camera image
joint position
joint velocity
gripper state
action

数据:

text 复制代码
Observation_t → Action_t

然后训练一个模型:

text 复制代码
π(a | s)

输入状态:

text 复制代码
s

预测动作:

text 复制代码
a

二十、Behavior Cloning

最基础的模仿学习就是:

Behavior Cloning

可以直接理解成监督学习。

例如:

python 复制代码
for image, state, action in dataloader:

    predicted_action = model(
        image,
        state
    )

    loss = mse_loss(
        predicted_action,
        action
    )

    optimizer.zero_grad()

    loss.backward()

    optimizer.step()

本质就是:

text 复制代码
输入:

机器人看到什么
机器人现在什么状态

输出:

人当时做了什么动作

训练多了以后:

text 复制代码
Robot Observation
        ↓
      Model
        ↓
Robot Action

机器人就可以自动执行。


二十一、机器人真正稀缺的东西:数据

LLM 可以从互联网上抓:

text 复制代码
网页
书籍
代码
论坛
文章

机器人不一样。

互联网里几乎没有:

text 复制代码
机械臂关节角
+
摄像头画面
+
夹爪状态
+
力矩
+
操作动作

这样的高质量同步数据。

所以机器人行业一个非常重要的问题就是:

Robot Data

典型数据结构:

text 复制代码
Episode 001

camera_front.mp4
camera_wrist.mp4

state.parquet

action.parquet

task:
"pick up the red cup"

一个 Episode 就代表:

text 复制代码
机器人完成一次任务的全过程。

二十二、LeRobot 为什么值得关注?

Hugging Face 做的:

text 复制代码
LeRobot

就是机器人学习领域非常值得关注的开源生态。

现在它已经覆盖了从:

text 复制代码
Teleoperate
    ↓
Record
    ↓
Dataset
    ↓
Train
    ↓
Evaluate
    ↓
Deploy

的一整套流程,同时支持 ACT、SmolVLA、π0 等策略。官方 LeRobotDataset 还专门对机器人多模态时间序列、传感器状态和多相机视频进行了统一组织。

例如训练一个 ACT Policy,官方文档给出的工作流已经非常接近传统机器学习训练:

bash 复制代码
python lerobot/scripts/train.py \
  --dataset.repo_id=my_user/robot_dataset \
  --policy.type=act \
  --output_dir=outputs/act_robot \
  --policy.device=cuda

这种趋势很重要。

未来机器人开发越来越可能从:

text 复制代码
写大量控制规则

变成:

text 复制代码
收集数据
↓
训练 Policy
↓
部署 Policy

二十三、ACT 是什么?

ACT:

text 复制代码
Action Chunking Transformer

也是目前机器人模仿学习里很重要的一种方法。

传统 Policy 可能每次预测:

text 复制代码
下一步 Action

ACT 则预测:

text 复制代码
未来一段 Action

比如:

text 复制代码
a_t
a_t+1
a_t+2
...
a_t+99

也就是:

Action Chunk

优点是可以缓解机器人长序列执行中的误差累积问题。


二十四、Diffusion Policy

机器人领域另外一个重要方向:

Diffusion Policy

它把机器人动作生成看成一种扩散生成过程。

类似图像生成:

text 复制代码
Noise
↓
Diffusion
↓
Image

机器人则是:

text 复制代码
Noise Action
↓
Diffusion
↓
Robot Action Sequence

例如生成:

text 复制代码
未来 16 步机械臂轨迹

Diffusion Policy 在连续控制和多模态动作分布中尤其有价值。


二十五、Reinforcement Learning:强化学习

机器人还会大量使用:

RL

Reinforcement Learning。

机器人执行:

text 复制代码
Action

环境返回:

text 复制代码
Reward

机器人不断优化策略:

text 复制代码
State
↓
Policy
↓
Action
↓
Environment
↓
Reward

例如训练机器人站立:

python 复制代码
reward = (
    standing_reward
    - fall_penalty
    - energy_penalty
)

如果机器人:

text 复制代码
站得稳

奖励:

text 复制代码
+10

如果摔倒:

text 复制代码
-100

训练几百万甚至几十亿个 simulation steps 后,就可能学会走路。


二十六、为什么强化学习经常在仿真环境训练?

因为真实机器人太贵。

如果机器人学习走路需要:

text 复制代码
摔倒 100 万次

真实机器人可能早就报废了。

所以通常:

text 复制代码
Virtual Robot
     ↓
Simulation
     ↓
Training
     ↓
Policy
     ↓
Real Robot

这就进入具身智能另外一个核心基础设施:

Robot Simulation


二十七、机器人仿真

目前常见机器人仿真平台包括:

text 复制代码
MuJoCo

Isaac Sim

Isaac Lab

Gazebo

PyBullet

Webots

Genesis

现在尤其值得关注的是:

text 复制代码
NVIDIA Isaac Sim
+
Isaac Lab

Isaac Sim 本身更偏:

text 复制代码
高保真物理仿真
传感器仿真
数字孪生
合成数据
测试验证

而 Isaac Lab 更偏:

text 复制代码
Robot Learning

RL

Imitation Learning

Motion Planning

NVIDIA 官方也明确把两者区分为:Isaac Sim 是完整机器人仿真平台,而 Isaac Lab 是建立在 Isaac Sim 上、专门针对机器人学习工作流优化的框架。


二十八、Domain Randomization

仿真最大的问题是:

text 复制代码
模拟世界 ≠ 真实世界

例如:

text 复制代码
光线不同
材质不同
摩擦力不同
摄像头噪声不同
机器人参数不同

因此训练时会故意随机:

text 复制代码
lighting
texture
mass
friction
camera pose
background
object position

这叫:

Domain Randomization

例如:

python 复制代码
import random

friction = random.uniform(
    0.4,
    1.2
)

mass = random.uniform(
    0.8,
    1.2
)

light_intensity = random.uniform(
    500,
    2000
)

这样 Policy 就不会记住:

text 复制代码
某一个固定模拟环境。

而是学习:

text 复制代码
更加鲁棒的策略。

Isaac Sim 就大量支持这类场景随机化与合成数据生成,可随机灯光、颜色、反射、物体位置等属性。


二十九、Sim2Real

把仿真里训练的模型部署到真实机器人:

text 复制代码
Simulation

↓

Real World

这叫:

Sim2Real

其中最大的难题叫:

Reality Gap

例如仿真里面摩擦力是:

text 复制代码
0.8

真实世界可能:

text 复制代码
0.72

电机响应:

text 复制代码
Simulation:
10ms

Real:
18ms

摄像头也可能:

text 复制代码
Simulation:
perfect

Real:
motion blur
noise
exposure

所以 Sim2Real 是具身智能真正走向产品化时的核心难题之一。


三十、VLM:视觉语言模型开始进入机器人

以前机器人视觉可能是:

text 复制代码
YOLO
SAM
Pose Estimation
Depth

它能够知道:

text 复制代码
这里有一个 cup。

但是很难理解:

text 复制代码
"把我刚刚喝水用的那个杯子拿过来。"

于是 VLM 开始进入机器人领域。

VLM:

text 复制代码
Vision Language Model

输入:

text 复制代码
Image
+
Text

输出:

text 复制代码
Language / Reasoning

例如:

text 复制代码
Image:
桌子上有苹果、香蕉和锤子

User:
把可以吃的黄色东西拿过来

VLM:
banana

机器人获得了一种新的能力:

Semantic Understanding

即:

text 复制代码
语义理解。

三十一、VLA:具身智能目前最值得关注的概念之一

再进一步:

VLA

全称:

text 复制代码
Vision
Language
Action

也就是:

Vision-Language-Action Model

它不再只是:

text 复制代码
Image + Text
↓
Text

而变成:

text 复制代码
Image
+
Language
+
Robot State

↓

Robot Action

例如:

text 复制代码
Camera Image
+
"拿起苹果"
+
Joint State

↓

Δx
Δy
Δz
Δroll
Δpitch
Δyaw
gripper

这就是现在机器人 Foundation Model 的核心方向。


三十二、VLA 最经典的思路:Action Tokenization

Google DeepMind 在 RT-2 时代就做了一件很有意思的事情:

把机器人动作也表示成 Token。

例如:

text 复制代码
语言模型:

"I love robots"

↓

Token Token Token

机器人则:

text 复制代码
Δx
Δy
Δz
Δrx
Δry
Δrz
gripper

量化以后变成:

text 复制代码
<action_128>
<action_044>
<action_209>
...

于是 Transformer 原本是在预测:

text 复制代码
Next Text Token

现在可以变成:

text 复制代码
Next Action Token

RT-2 就明确采用了将机器人动作表示成 token 的路线。


三十三、VLA 的简单代码形式

从工程抽象上看,一个 VLA 很可能类似:

python 复制代码
observation = {
    "image": camera_image,
    "instruction": "pick up the red cup",
    "robot_state": joint_state
}

action = model.predict(
    observation
)

robot.execute(action)

展开后:

text 复制代码
Camera
   │
   ↓
Vision Encoder
   │
   ├──────────┐
   │          │
Language      │
Encoder       │
   │          │
   └────┬─────┘
        ↓
 Transformer
        ↓
 Action Decoder
        ↓
 Robot Action

这是目前整个具身智能行业非常核心的一条技术路线。


三十四、OpenVLA、π0、SmolVLA 等是什么?

它们都属于:

text 复制代码
Generalist Robot Policy

或者:

text 复制代码
Robot Foundation Model

这一类方向。

它们希望实现:

text 复制代码
一个模型
↓
多种任务
↓
多种环境
↓
多种机器人

而不是以前:

text 复制代码
抓苹果 → 一个模型

开抽屉 → 一个模型

折衣服 → 一个模型

最终理想状态类似:

text 复制代码
Robot GPT

你告诉机器人:

text 复制代码
"收拾一下这个桌子。"

它自己:

text 复制代码
理解场景
↓
拆解任务
↓
规划步骤
↓
控制机器人
↓
完成任务

三十五、Gemini Robotics 代表了什么趋势?

Google DeepMind 在 2025 年最早推出 Gemini Robotics 时,就明确将它定义成:

text 复制代码
Vision-Language-Action Model

它不是简单输出语言,而是增加:

text 复制代码
Physical Action

作为输出模态。

到 Gemini Robotics 1.5,又进一步强调:

text 复制代码
视觉
语言
规划
推理
工具使用
动作执行

结合起来处理多步骤真实世界任务。

2026 年继续演进到 Gemini Robotics 2,重点进一步扩展到了:

text 复制代码
Whole-body Control
Dexterity
Multi-Robot Collaboration
Cross-Embodiment
On-device

这个演进路线很值得注意:

text 复制代码
LLM

↓

VLM

↓

VLA

↓

Embodied Agent

AI 正在从:

text 复制代码
生成文字

走向:

text 复制代码
操作真实世界。

三十六、World Model:机器人为什么还需要世界模型?

机器人还面临一个问题:

如果我执行这个动作,接下来会发生什么?

例如:

text 复制代码
推杯子

↓

杯子会往哪里移动?

或者:

text 复制代码
继续往前走

↓

会不会撞墙?

如果 AI 可以预测:

text 复制代码
Action
↓
Future World

它就可以在执行之前先"脑补"。

这就是:

World Model

可以理解成:

text 复制代码
Current Observation
+
Action

↓

Future Observation

例如:

python 复制代码
future_state = world_model.predict(
    current_state,
    action
)

机器人甚至可以:

text 复制代码
预测动作 A
↓
看看结果

预测动作 B
↓
看看结果

预测动作 C
↓
看看结果

最后选择最好的动作

某种意义上,这就类似:

在脑子里先模拟一遍。


三十七、Task Planning:大模型真正擅长的地方

LLM 在机器人里面最适合做的,不一定是直接控制电机。

例如:

text 复制代码
用户:

帮我准备一杯咖啡。

LLM 可以生成:

text 复制代码
1. 找到杯子

2. 找到咖啡机

3. 拿起杯子

4. 把杯子放到咖啡机下

5. 操作咖啡机

6. 等待咖啡完成

7. 拿起杯子

8. 递给用户

这叫:

Task Planning

然后底层:

text 复制代码
Navigation

Manipulation

Grasping

Motion Planning

分别完成具体动作。

所以一个实用的具身 Agent 很可能是:

text 复制代码
                    LLM / VLM
                       │
                  Task Planner
                       │
        ┌──────────────┼──────────────┐
        ↓              ↓              ↓
 Navigation       Manipulation      Perception
        │              │              │
        └──────────────┼──────────────┘
                       ↓
                 Motion Control
                       ↓
                     Robot

而不是让一个几十亿参数的 LLM:

text 复制代码
直接 1kHz 控制电机。

三十八、机器人为什么需要分层控制?

这是做 AI 的工程师进入机器人行业时特别容易忽略的一点。

AI 模型可能运行:

text 复制代码
1 Hz
10 Hz
30 Hz

但机器人底层控制可能要求:

text 复制代码
100 Hz

500 Hz

1000 Hz

所以架构通常会分层:

text 复制代码
LLM
1 Hz
│
↓
Task Planner
1~10 Hz
│
↓
VLA / Policy
10~50 Hz
│
↓
Motion Controller
100~500 Hz
│
↓
Motor Controller
1000 Hz+

越往下:

text 复制代码
实时性越高

AI 越少

确定性越强

越往上:

text 复制代码
语义越强

推理越复杂

实时要求越低

这也是一个真正能落地的机器人架构应该考虑的问题。


三十九、具身智能完整技术栈

到这里,我们基本可以整理出一套行业技术地图。

第一层:硬件

text 复制代码
Motor
Servo
Reducer
Encoder
Battery
Controller
Robot Arm
Humanoid
Mobile Base

第二层:传感器

text 复制代码
RGB Camera

Depth Camera

LiDAR

IMU

Encoder

Force/Torque Sensor

Tactile Sensor

第三层:机器人基础软件

text 复制代码
Linux

ROS 2

DDS

URDF

TF

RViz

rosbag

第四层:机器人算法

text 复制代码
Calibration

SLAM

Localization

Sensor Fusion

Forward Kinematics

Inverse Kinematics

Path Planning

Motion Planning

Trajectory Planning

PID

MPC

Whole-body Control

第五层:AI 感知

text 复制代码
Object Detection

Segmentation

Pose Estimation

Depth Estimation

3D Vision

Point Cloud

VLM

第六层:Robot Learning

text 复制代码
Behavior Cloning

Imitation Learning

ACT

Diffusion Policy

Reinforcement Learning

Offline RL

第七层:Foundation Model

text 复制代码
LLM

VLM

VLA

World Model

Robot Foundation Model

第八层:机器人开发基础设施

text 复制代码
Isaac Sim

Isaac Lab

MuJoCo

Gazebo

LeRobot

PyTorch

CUDA

四十、如果我是一个后端/AI 工程师,应该怎么进入具身智能?

如果本身有:

text 复制代码
Java
Go
Python
AI
后端

背景,我不建议一上来就研究:

text 复制代码
电机驱动
FOC
减速器设计
PCB
机械结构

入门成本太高。

更加实际的路线是:

text 复制代码
Python
↓
PyTorch
↓
ROS 2
↓
机器人运动学
↓
MuJoCo
↓
Isaac Sim
↓
LeRobot
↓
Imitation Learning
↓
VLA

四十一、第一阶段:先学 ROS 2

建议至少理解:

text 复制代码
Node

Topic

Service

Action

Message

Launch

TF

URDF

RViz

然后完成:

text 复制代码
Camera
↓
ROS Topic
↓
Vision Node
↓
Control Node

这样一个简单系统。


四十二、第二阶段:学机器人运动学

重点:

text 复制代码
Coordinate System

Rotation Matrix

Quaternion

Homogeneous Transformation

Forward Kinematics

Inverse Kinematics

Jacobian

不用一开始研究得特别深。

先做到:

text 复制代码
给机器人一个 xyz
↓
机械臂能到达目标位置

即可。


四十三、第三阶段:MuJoCo

如果只是学习:

text 复制代码
Robot Control

RL

Robot Policy

MuJoCo 很适合。

因为:

text 复制代码
轻量
快速
Python 生态不错

你甚至不需要先买真实机器人。


四十四、第四阶段:Isaac Sim + Isaac Lab

进一步做:

text 复制代码
GPU Parallel Simulation

Synthetic Data

Robot Learning

RL

Sim2Real

Isaac Sim 支持机器人模型、传感器、合成数据、ROS 2 Bridge 以及软件在环/硬件在环测试,是现在比较完整的一套 Physical AI 工具链。


四十五、第五阶段:LeRobot

如果想快速理解现在机器人 AI 到底是怎么玩的,我非常建议研究:

text 复制代码
LeRobot

因为它已经把很多流程标准化成:

text 复制代码
机器人
↓
遥操作
↓
采数据
↓
Dataset
↓
Train Policy
↓
Deploy

这对 AI/后端工程师非常友好。


四十六、可以自己做一个什么项目?

非常推荐做一个:

"AI 抓取机器人"

硬件可以暂时不要。

全部在 Simulation 里面做。

流程:

text 复制代码
用户:

"抓起红色方块。"

text 复制代码
VLM / Object Detection

识别:

red cube

text 复制代码
获得:

x
y
z

text 复制代码
IK

text 复制代码
Motion Planning

text 复制代码
Robot Arm

text 复制代码
Gripper Close

完成。

完整架构:

text 复制代码
                 User
                  │
                  ↓
         "Pick red cube"
                  │
                  ↓
               VLM
                  │
                  ↓
              Vision
                  │
              RGB-D
                  │
                  ↓
            Object Pose
                  │
                  ↓
                 IK
                  │
                  ↓
          Motion Planning
                  │
                  ↓
             Controller
                  │
                  ↓
             Robot Arm

做完这个项目,基本就已经接触到了具身智能非常核心的一批技术。


四十七、再进阶一点:训练自己的 Robot Policy

下一步可以尝试:

text 复制代码
SO-ARM / SO-101
+
LeRobot

流程:

text 复制代码
Teleoperation
↓
Record 50~500 Episodes
↓
LeRobotDataset
↓
Train ACT
↓
Deploy

模型:

text 复制代码
Camera
+
Robot State
↓
ACT
↓
Action Chunk
↓
Robot

这时候你就真正开始进入:

text 复制代码
Robot Learning

而不是传统机器人编程。


四十八、具身智能未来真正竞争什么?

我认为这个行业未来不会只竞争:

text 复制代码
谁的机器人长得像人。

真正竞争的是整个技术闭环:

text 复制代码
Robot Hardware
        +
Robot Data
        +
Simulation
        +
Foundation Model
        +
Policy
        +
Deployment
        +
Real World Feedback

最终形成:

text 复制代码
真实机器人
   ↓
产生数据
   ↓
训练模型
   ↓
模型升级
   ↓
机器人能力提升
   ↓
产生更多数据

也就是:

Robot Data Flywheel

机器人越多:

text 复制代码
数据越多

数据越多:

text 复制代码
模型越强

模型越强:

text 复制代码
机器人越有用

机器人越有用:

text 复制代码
部署数量越多

最终重新回到:

text 复制代码
更多数据。

四十九、最后总结

如果只用一句话理解具身智能,可以理解成:

让 AI 从"理解数字世界",进一步走向"感知、理解并操作物理世界"。

整个技术演进其实非常清晰:

text 复制代码
传统机器人

规则驱动
↓

Robot Learning

数据驱动
↓

VLM

视觉 + 语言理解
↓

VLA

视觉 + 语言 + 动作
↓

World Model

预测物理世界
↓

Embodied Agent

感知 + 推理 + 规划 + 行动

从软件工程角度看,我反而认为具身智能是一个非常值得开发者提前学习的方向。

因为今天看起来它属于:

text 复制代码
机器人研究

但未来越来越多机器人应用的开发方式,很可能会变成:

text 复制代码
ROS 2
+
Python
+
PyTorch
+
Simulation
+
Dataset
+
Foundation Model
+
Agent

以前机器人开发是:

text 复制代码
给每一个动作写程序。

现在正在变成:

text 复制代码
给机器人采集数据、训练 Policy。

未来很可能进一步变成:

text 复制代码
告诉机器人你想要什么,
机器人自己理解环境、规划步骤并执行。

这才是具身智能真正值得关注的地方。


参考资料

  • ROS 2 官方文档:Topics、Services、Actions 等机器人通信接口。
  • NVIDIA Isaac Sim:机器人仿真、合成数据、ROS 2、SIL/HIL 与 Physical AI 开发。
  • NVIDIA Isaac Lab:基于 Isaac Sim 的机器人学习框架。
  • Hugging Face LeRobot:机器人数据集、模仿学习、VLA 与真实机器人训练工具链。
  • Google DeepMind RT-2:将视觉、语言以及机器人动作统一到 Transformer 模型中的早期 VLA 代表工作。
  • Google DeepMind Gemini Robotics 系列:从 VLA、Embodied Reasoning 逐渐发展到多步骤任务和 Whole-body Robotics。
相关推荐
赛逸会展s2 小时前
2027赛逸展机器人展新闻发布会在京举行
人工智能·机器人
知识分享小能手3 小时前
概理论与数理统计学习教程,从入门到精通,在数理统计中应用R软件(22)
开发语言·学习·r语言
swsauto3 小时前
URDF创建机器人(ROS2)
机器人
陈年老古董3 小时前
CentOS编译安装Python3.11完整教程
linux·笔记·学习·centos·python3.11
戈文波Geir-Wenbo Ge4 小时前
深度七步:从学习到主宰
学习
clorinda4 小时前
OpenCV实战学习记录:图像拼接与答题卡识别
人工智能·opencv·学习
red_redemption4 小时前
自由学习记录(221)
学习·renderdoc
sel_94 小时前
【OPD论文导读(二)】OPD(On-Policy Distillation)全景调研:十篇论文讲透“在自己生成的内容上学习“这件事
人工智能·python·深度学习·学习·算法·语言模型
动词ing4 小时前
【学习笔记】数据结构(数组长度和关键特性+快慢指针+左右指针)
数据结构·笔记·学习