week12
课程内容:四足机器狗站立走动 #相比最开始的代码,后面的代码主要做了完整的四足机器人控制优化。首先修改了机器人初始姿态,将原来容易导致侧翻和头部着地的旋转角度改为身体水平或轻微抬头的姿态,使机器人在空中时四脚自然朝下;其次新增了空中姿态控制,通过 air_pose() 提前展开四条腿,并使用 resetBasePositionAndOrientation() 与 resetBaseVelocity() 强制机器人在下落过程中保持水平、防止翻转,从而实现脚先着地。除此之外,还增加了落地检测逻辑,在检测到机器人接近地面后立即切换到 stand() 站立控制,使机器人能够稳定支撑身体后再开始行走。原来的简化逆运动学也被替换成了更加真实的二维腿部 IK 计算,使腿部运动更自然稳定;同时电机力矩从 force=20 提高到 180~260,增强了承重和稳定能力。整个程序结构也从原来的单一循环控制,升级为“空中下落 → 落地站立 → TROT步态行走”三个阶段,整体已经从简单的关节摆动代码,变成了具备空中姿态控制、落地缓冲、稳定站立和步态生成的完整四足机器人控制系统。
学习目标 了解四足机器人的基本结构、运动方式和控制难点。 理解步态规划在四足机器人运动中的作用。 将前面课程中的 ROS2、Docker、OpenCV、传感器和机器人控制知识连接到期末项目。 明确期末项目的选题、功能目标、实现步骤和后续优化方向。 课程重点 四足机器人基础 四足机器人通过四条腿与地面接触,和轮式机器人相比,它可以适应更复杂的地形,但控制难度也更高。需要同时考虑身体姿态、腿部关节角度、足端落点和整体稳定性。
常见关注点:
机身姿态:保持机器人身体不要倾倒。 足端轨迹:规划每条腿抬起、前摆、落地的路径。 支撑相:保证任意时刻有足够的腿支撑身体。 步态:例如 walk、trot、pace 等不同运动方式。 步态规划 步态规划的核心是安排每条腿的运动节奏。以 trot 步态为例,通常是对角腿成组运动:
左前腿 + 右后腿 右前腿 + 左后腿 这种方式可以在速度和稳定性之间取得平衡,是四足机器人仿真中常见的入门步态。
与前面课程的联系 ROS2:可用于发布控制命令、读取传感器状态。 PyBullet:可用于四足机器人仿真和步态验证。 Docker:可保证仿真环境可复现。 OpenCV / ArUco:可扩展为视觉定位或目标识别。 GitHub Pages:用于展示项目过程、代码和运行结果。 期末项目实施计划 项目方向 计划围绕“机器人运动控制与视觉感知”完成一个可展示的小项目。优先选择仿真或软件实现,保证可以稳定复现和录屏展示。
可选方向:
四足机器人步态仿真 TurtleSim / PyBullet 机器人路径控制 ArUco 标记识别与距离测量 OpenCV 视觉识别结合机器人控制 功能目标 基础目标:
能运行程序并展示结果。 有清晰的代码文件和运行命令。 有截图或视频证明实验成功。 README 中说明原理、步骤、问题和总结。 进阶目标:
加入参数调节,例如速度、步长、目标距离。 输出实验数据,例如检测到的 ID、距离、坐标或轨迹。 对比不同参数下的运行效果。 总结失败情况和改进方法。
本周总结 本周重点是把课程前面学过的机器人控制、仿真、视觉和部署知识连接到期末项目。
