Skip to the content.

四足机器人控制实验报告(PyBullet) 一、实验目标

本实验基于 PyBullet 物理仿真平台,构建四足机器人控制系统,主要实现以下目标:

实现四足机器人基础步态控制(trot gait) 实现机器人自动空翻动作控制 使用有限状态机(FSM)管理复杂动作流程 使用时间控制机制实现自动循环行为 二、系统组成

本系统主要由以下三个模块构成:

1️⃣ 步态控制系统

机器人四条腿通过关节角度控制实现周期性运动,其核心特点如下:

采用固定关节角度实现 trot 步态 采用对角腿交替运动方式(diagonal gait) 使用 POSITION_CONTROL 进行关节控制

该方法本质上是通过周期函数模拟行走行为,而非基于动力学求解的真实运动控制模型。

2️⃣ 空翻动作控制(状态机设计)

空翻动作采用有限状态机(Finite State Machine, FSM)进行分阶段控制,包括以下状态:

CROUCH:下蹲蓄力阶段 LAUNCH:起跳阶段 ROTATE:空中翻转阶段 LAND:落地阶段 SETTLE:姿态恢复与稳定阶段

在实现过程中,通过 resetBaseVelocity 向机器人施加瞬时角速度,使其产生翻转运动效果。

3️⃣ 时间控制系统

系统采用基于时间的触发机制,实现自动行为控制:

初始阶段:机器人稳定站立约 5 秒 运行阶段:进入正常步态循环 每 10 秒触发一次空翻动作 使用时间差(time delta)进行动作调度 三、核心技术原理

  1. 有限状态机(FSM)

通过状态划分与状态迁移,实现复杂动作的模块化控制,使机器人能够按阶段执行完整动作流程。

  1. 时间驱动控制(Time-based Control)

利用时间间隔作为触发条件,实现机器人行为的周期性自动执行,提高系统自主性。

  1. 角动量控制原理

在空翻过程中,通过施加角速度改变机器人角动量,实现翻转运动效果。

  1. 转动惯量变化机制

机器人在空中通过收腿减小转动惯量,从而提高角速度,实现更快速的旋转动作。

四、运行流程

系统整体运行流程如下:

0–5 秒:机器人初始化并保持静止站立 5 秒后:进入正常 trot 步态行走 每 10 秒:触发一次空翻动作 空翻结束后:恢复站立状态并继续行走循环 五、实验结果

实验最终实现效果如下:

四足机器人可稳定站立与周期性行走 成功实现自动空翻动作控制 空翻过程包含完整的起跳、旋转与落地阶段 系统可长期稳定运行,无需人工干预 六、总结

本实验基于 PyBullet 仿真平台,实现了四足机器人基础步态控制与复杂动作设计。通过引入有限状态机与时间驱动机制,使机器人具备自动行走与周期性空翻能力。

该实验加深了对机器人行为控制、状态机设计以及基本动力学原理的理解,为后续机器人强化学习、轨迹规划与动态控制研究奠定了基础。