跳到主要内容

电机配置

set_motor_cfg_pd()​

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

为指定关节组配置 PD 模式的增益参数。通常在进入 UserCmd 或 UpperBodyUserCmd 状态前设置,以匹配所需的控制刚度。

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

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

示例

Python
client.set_motor_cfg_pd(
kp_config={
"left_leg": [400, 200, 200, 400, 200, 26],
"right_leg": [400, 200, 200, 400, 200, 26],
"left_manipulator": [400, 200, 200, 200, 50, 50, 50],
"right_manipulator": [400, 200, 200, 200, 50, 50, 50],
},
kd_config={
"left_leg": [20, 20, 20, 20, 20, 2.6],
"right_leg": [20, 20, 20, 20, 20, 2.6],
"left_manipulator": [20, 10, 10, 10, 2.5, 2.5, 2.5],
"right_manipulator": [20, 10, 10, 10, 2.5, 2.5, 2.5],
},
)

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 增益参数。

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

get_group_motor_cfg()​

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

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

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

示例

Python
kp = client.get_group_motor_cfg("left_leg", key="pd_kp")
kd = client.get_group_motor_cfg("left_leg", key="pd_kd")
print(f"left_leg PD gains: kp={kp}, kd={kd}")