16 自由度全身协同
12 自由度四足底盘负责移动与姿态调整,3 自由度机械臂执行抓取,1 自由度旋转台扩展操作范围,让“走到目标—调整姿态—完成操作”在同一平台闭环完成。
- 12
- 四足底盘
- 3
- 机械臂
- 1
- 旋转台
标准版专注具身交互与机器人开发;雷达版在相同平台上增加环境扫描能力,为空间感知与移动机器人研究预留更多可能。
从全身运动、关节反馈到边缘计算,Mini2S 将移动、操作与 AI 集成在同一机体。
12 自由度四足底盘负责移动与姿态调整,3 自由度机械臂执行抓取,1 自由度旋转台扩展操作范围,让“走到目标—调整姿态—完成操作”在同一平台闭环完成。
空心杯电机提供 4.5 kg·cm 扭矩,磁编码器以 0.01° 精度回读关节角度;0–360° 连续行程兼顾动作空间与控制细度,并支持手动示教编程。
头部 XGO AI 模组集成 4GB Raspberry Pi CM5 与 32GB 存储,预装 Luwu-OS;开机即可运行 AI 演示、视觉任务与大模型交互,开发和演示无需外接电脑。
12 自由度移动底盘负责「去任何地方」,4 自由度带旋转台的机械臂负责「拿任何东西」——两者由同一套运动库统一控制,构成一个完整的桌面级移动抓取平台(Mobile Manipulator)。
全向运动算法可同时处理平移与转向
空心杯电机与磁编码器组成闭环执行系统,带来快速响应、连续转动与精细控制。
连续旋转拓展运动空间,为复杂动作留下余量。
为动态步态与传感器负载提供扎实动力。
磁编码器实时感知关节位置,让每次动作可控、可复现。
5MP 相机捕捉画面,双麦克风接收声音,CM5 在本地完成识别与决策,再把结果转化为屏幕表情、语音回应和真实动作。
支持人脸、手势与颜色等视觉任务,可持续获取环境画面。
CM5 提供边缘计算能力,降低云端依赖,也方便替换自己的模型。
通过表情屏与扬声器反馈识别结果,让交互状态清晰可感。

把识别结果连接到步态和机械臂,完成“感知—决策—执行”闭环。
基于 Raspberry Pi CM5、Luwu-OS 与开放 Python 接口,从真实运动控制、相机视觉到 ROS 2 节点,都能在同一平台完成开发与验证。
# xgolib:自动发现串口与机器人型号
from xgolib import XGO
from time import sleep
dog = XGO()
print("firmware:", dog.read_firmware())
dog.pace("high")
dog.move("x", 18)
sleep(1.2)
dog.move("y", -8)
sleep(0.8)
dog.turn(60)
sleep(1.0)
dog.stop()
dog.reset()LUWU-OS 真实 API · xgolib 自动扫描 ttyAMA5 / ttyAMA0
# 识别蓝色目标,并把水平偏差变成转向速度
from picamera2 import Picamera2
from xgolib import XGO
import cv2, numpy as np
cam, dog = Picamera2(), XGO()
config = cam.create_preview_configuration(
main={"size": (640, 480), "format": "RGB888"}
)
cam.configure(config)
cam.start()
while True:
frame = cam.capture_array()
hsv = cv2.cvtColor(frame, cv2.COLOR_RGB2HSV)
mask = cv2.inRange(hsv, np.array([95, 90, 60]),
np.array([130, 255, 255]))
m = cv2.moments(mask)
if m["m00"] > 3000:
cx = int(m["m10"] / m["m00"])
dog.turn(int(np.clip((320 - cx) * 0.25, -60, 60)))
else:
dog.stop()真实视觉链路 · OV5647 → Picamera2 → OpenCV → xgolib
# 用同一个 ROS 2 节点切换“仿真验证 / 真机执行”
import rclpy
from rclpy.node import Node
from xgolib import XGO
class WalkNode(Node):
def __init__(self):
super().__init__("xgo_walk")
self.declare_parameter("simulate", True)
self.sim = self.get_parameter("simulate").value
self.dog = None if self.sim else XGO()
self.timer = self.create_timer(0.1, self.control)
def control(self):
speed = 18
self.get_logger().info(f"cmd_x={speed} sim={self.sim}")
if self.dog:
self.dog.move("x", speed)
rclpy.init()
rclpy.spin(WalkNode())
# ros2 run xgo_demo walk --ros-args -p simulate:=trueLuwu ROS v0.1 · ROS 2 Lyrical 示例节点;仿真模式不写入硬件
自动识别设备与 UART,直接调用 move、turn、pace、stop、reset 等公开 API 组织动作序列。
从 OV5647 获取 RGB 画面,完成 HSV 分割、目标定位与偏差计算,再实时驱动机器人跟随。
Luwu ROS 镜像预装 ROS 2 Lyrical、OpenCV、cv_bridge 与基础示例,可继续接入可视化、仿真和强化学习工作流。
高性能实验平台,仍然只占一小块桌面。