You need to enable JavaScript to run this app.
优惠活动
大模型
产品
解决方案
定价
更多

如何让NAO机器人行走时维持手臂初始位置不变?

NAO行走时保持手臂位置不变的解决方案

你当前的代码仅设置了手臂刚度,但NAO的行走运动默认会驱动手臂配合步态调整平衡,所以需要补充两步来锁定手臂位置:

  • 第一步:在设置手臂刚度后,调用motion.setArmsMotionEnabled()方法,禁用手臂的步态关联运动,让手臂不跟随行走动作调整姿态。
  • 第二步:确保在执行行走命令前,手臂已经准确到达你预设的目标关节位置(如果之前的位置设置代码没在当前逻辑里,需要补充执行)。

修改后的代码示例:

self.motion.wakeUp()
# 先执行手臂关节角度设置代码,确保手臂处于目标位置
# 示例:self.motion.setAngles(['RShoulderPitch', 'RShoulderRoll', ...], target_angles, 0.5)
self.set_stiffness(['RArm', 'LArm'], 1.0)
# 禁用左右手臂的行走关联运动
self.motion.setArmsMotionEnabled(False, False)
self.motion.moveTo(0.3, 0.0, 0.0)
# 若行走结束后需要恢复手臂的正常运动能力,可调用:
# self.motion.setArmsMotionEnabled(True, True)

关键说明:

  • setArmsMotionEnabled(left, right)参数分别控制左臂和右臂是否参与行走步态,设为False后,手臂会保持当前位置,不会被行走动作带动偏移。
  • 务必保证在调用moveTo前,手臂已经稳定在目标位置,否则锁定的会是错误姿态。

内容的提问来源于stack exchange,提问作者Sam

相关产品推荐
方舟 Agent Plan

超全模态模型 × Harness 升级,最新支持 Deepseek-V4.1-Flash、GLM-5.3 系列、Doubao-Seedream-5.0-pro、Kimi-K3 (部分), 限时 9.9 元起

最近更新时间:2026.06.18 12:45:56