跳到主要内容

电机配置

set_motor_cfg_pd()​

Python
set_motor_cfg_pd(
kp_config: Dict[str, list[float]],
kd_config: Dict[str, list[float]]
)

为指定关节组配置 PD 模式的增益参数。

GR-W 不支持外部参数覆盖

GR-W 当前各任务的增益来自任务配置文件(如 upper_body_tele_task/config.yaml 中的 pd_Kp/pd_Kd),状态页标注"关节参数控制:否"。写入命令虽可发布且回读一致,但当前任务不提供外部增益覆盖,写入不同数值不会得到预期效果。请勿在 GR-W 上写入与当前生效值不同的参数。

参数类型说明
kp_configDict[str, list[float]]group 名称 → 各关节比例增益(Kp)列表
kd_configDict[str, list[float]]group 名称 → 各关节微分增益(Kd)列表

每个列表的长度必须与对应 group 的关节数一致。

示例

Python
import os
import time

os.environ.setdefault("FASTDDS_BUILTIN_TRANSPORTS", "UDPv4") # 机器人上运行必须设置

from fourier_aurora_client import AuroraClient

client = AuroraClient.get_instance(domain_id=123, robot_name="grw")
try:
time.sleep(1.0)
# 如需调用此接口,只能以当前读数原样回写(等价参数,行为不变)
kp = client.get_group_motor_cfg("head", key="pd_kp")
kd = client.get_group_motor_cfg("head", key="pd_kd")
client.set_motor_cfg_pd(
kp_config={"head": kp},
kd_config={"head": kd},
)
finally:
client.close()

set_motor_cfg_pos()​

Python
set_motor_cfg_pos(
kp_config: Dict[str, list[float]],
ki_config: Dict[str, list[float]],
kd_config: Dict[str, list[float]]
)

为指定关节组配置位置模式的 PID 增益参数。与 set_motor_cfg_pd() 相同,GR-W 当前任务不提供外部参数覆盖,参见上方的 GR-W 限制说明。

参数类型说明
kp_configDict[str, list[float]]group 名称 → 各关节比例增益(Kp)列表
ki_configDict[str, list[float]]group 名称 → 各关节积分增益(Ki)列表
kd_configDict[str, list[float]]group 名称 → 各关节微分增益(Kd)列表

示例

Python
import os
import time

os.environ.setdefault("FASTDDS_BUILTIN_TRANSPORTS", "UDPv4") # 机器人上运行必须设置

from fourier_aurora_client import AuroraClient

client = AuroraClient.get_instance(domain_id=123, robot_name="grw")
try:
time.sleep(1.0)
# 同样只能以当前读数原样回写(等价参数,行为不变)
kp = client.get_group_motor_cfg("head", key="pos_kp")
ki = client.get_group_motor_cfg("head", key="pos_ki")
kd = client.get_group_motor_cfg("head", key="pos_kd")
client.set_motor_cfg_pos(
kp_config={"head": kp},
ki_config={"head": ki},
kd_config={"head": kd},
)
finally:
client.close()

get_group_motor_cfg()​

Python
get_group_motor_cfg(group_name: str, key: str = 'pd_kp') -> list[float]

读取指定关节组当前的电机配置参数。

当前 GR-W 仅为 waist、head、left_manipulator 和 right_manipulator 发布可查询的电机配置。left_end_effector 与 right_end_effector 不能传入此方法。

参数类型说明
group_namestr关节组名称
keystr配置项,见下表
key 值说明
'pd_kp'PD 模式比例增益,默认
'pd_kd'PD 模式微分增益
'pos_kp'位置模式比例增益
'pos_ki'位置模式积分增益
'pos_kd'位置模式微分增益

示例

Python
import os
import time

os.environ.setdefault("FASTDDS_BUILTIN_TRANSPORTS", "UDPv4") # 机器人上运行必须设置

from fourier_aurora_client import AuroraClient

client = AuroraClient.get_instance(domain_id=123, robot_name="grw")
try:
time.sleep(1.0) # 等待状态数据到达
kp = client.get_group_motor_cfg("waist", key="pd_kp")
kd = client.get_group_motor_cfg("waist", key="pd_kd")
print(f"waist PD gains: kp={kp}, kd={kd}")
finally:
client.close()