Arm::Controller
上游未提供类型说明。
构造与析构
1Controller
Arm::Controller::Controller (MITMotorCtrl &joint1, MITMotorCtrl &joint2, MITMotorCtrl &joint3, const Config &config)
构造控制器 joint1 关节1电机 joint2 关节2电机 joint3 关节3电机 config 机械臂参数
Core/arm_controller.hpp:64成员函数
12calculateCoriolisComp
void Arm::Controller::calculateCoriolisComp (float q1, float q2, float q3, float dq1, float dq2, float dq3, float &tau1, float &tau2, float &tau3)
计算科里奥利/离心补偿力矩 基于平面 3R 刚体模型:tau_c = C(q, dq) * dq q1 关节1角度(弧度) q2 关节2角度(弧度) q3 关节3角度(弧度) dq1 关节1角速度(弧度/s) dq2 关节2角速度(弧度/s) dq3 关节3角速度(弧度/s) tau1 关节1力矩输出 tau2 关节2力矩输出 tau3 关节3力矩输出
Core/arm_controller.hpp:164calculateGravityComp
void Arm::Controller::calculateGravityComp (float q1, float q2, float q3, float &tau1, float &tau2, float &tau3)
计算重力补偿力矩 q1 关节1角度(弧度) q2 关节2角度(弧度) q3 关节3角度(弧度) tau1 关节1力矩输出 tau2 关节2力矩输出 tau3 关节3力矩输出
Core/arm_controller.hpp:149calculateInertiaComp
void Arm::Controller::calculateInertiaComp (float q1, float q2, float q3, float ddq1, float ddq2, float ddq3, float &tau1, float &tau2, float &tau3)
计算转动惯量补偿力矩 基于平面 3R 刚体模型:tau_i = M(q) * ddq q1 关节1角度(弧度) q2 关节2角度(弧度) q3 关节3角度(弧度) ddq1 关节1角加速度(弧度/s^2) ddq2 关节2角加速度(弧度/s^2) ddq3 关节3角加速度(弧度/s^2) tau1 关节1力矩输出 tau2 关节2力矩输出 tau3 关节3力矩输出
Core/arm_controller.hpp:187getEndEffectorPose
void Arm::Controller::getEndEffectorPose (float &x, float &y, float &phi) const
获取末端位姿 x 末端x y 末端y phi 末端姿态角
Core/arm_controller.hpp:108getJointAngles
void Arm::Controller::getJointAngles (float &q1, float &q2, float &q3) const
获取关节角 q1 关节1角度(度) q2 关节2角度(度) q3 关节3角度(度)
Core/arm_controller.hpp:116getJointAnglesComp
void Arm::Controller::getJointAnglesComp (float &q1, float &q2, float &q3)
获取补偿回程差后的关节角(与目标语义一致) q1 关节1角度(度) q2 关节2角度(度) q3 关节3角度(度)
Core/arm_controller.hpp:124getJointVelocities
void Arm::Controller::getJointVelocities (float &dq1, float &dq2, float &dq3) const
获取关节角速度 dq1 关节1角速度(度/s) dq2 关节2角速度(度/s) dq3 关节3角速度(度/s)
Core/arm_controller.hpp:132init
void Arm::Controller::init ()
初始化电机与内部参考值
Core/arm_controller.hpp:72isEnabled
bool Arm::Controller::isEnabled ()
上游未提供说明。
Core/arm_controller.hpp:134setPayload
void Arm::Controller::setPayload (float mass, float ramp_time=0.5f)
设置负载质量 mass 负载质量 ramp_time 质量变化平滑时间
Core/arm_controller.hpp:94setStreamingTarget
void Arm::Controller::setStreamingTarget (float q1, float q2, float q3, float dq1, float dq2, float dq3, float ddq1, float ddq2, float ddq3)
设置流式目标 q1 关节1角度(度) q2 关节2角度(度) q3 关节3角度(度) dq1 关节1角速度(度/s) dq2 关节2角速度(度/s) dq3 关节3角速度(度/s) ddq1 关节1角加速度(度/s^2) ddq2 关节2角加速度(度/s^2) ddq3 关节3角加速度(度/s^2)
Core/arm_controller.hpp:86update
void Arm::Controller::update (float dt)
执行一次控制周期 dt 周期时间(s)
Core/arm_controller.hpp:100成员变量
30G1_
float Arm::Controller::G1_
上游未提供说明。
Core/arm_controller.hpp:224G2_
float Arm::Controller::G2_
上游未提供说明。
Core/arm_controller.hpp:225G3_
float Arm::Controller::G3_
上游未提供说明。
Core/arm_controller.hpp:226G_payload_factor_1_
float Arm::Controller::G_payload_factor_1_
上游未提供说明。
Core/arm_controller.hpp:228G_payload_factor_2_
float Arm::Controller::G_payload_factor_2_
上游未提供说明。
Core/arm_controller.hpp:229G_payload_factor_3_
float Arm::Controller::G_payload_factor_3_
上游未提供说明。
Core/arm_controller.hpp:230config_
Config Arm::Controller::config_
上游未提供说明。
Core/arm_controller.hpp:204current_payload_mass_
float Arm::Controller::current_payload_mass_
上游未提供说明。
Core/arm_controller.hpp:232current_q1_acc_ref_
float Arm::Controller::current_q1_acc_ref_
上游未提供说明。
Core/arm_controller.hpp:214current_q1_ref_
float Arm::Controller::current_q1_ref_
上游未提供说明。
Core/arm_controller.hpp:206current_q1_vel_ref_
float Arm::Controller::current_q1_vel_ref_
上游未提供说明。
Core/arm_controller.hpp:210current_q2_acc_ref_
float Arm::Controller::current_q2_acc_ref_
上游未提供说明。
Core/arm_controller.hpp:215current_q2_ref_
float Arm::Controller::current_q2_ref_
上游未提供说明。
Core/arm_controller.hpp:207current_q2_vel_ref_
float Arm::Controller::current_q2_vel_ref_
上游未提供说明。
Core/arm_controller.hpp:211current_q3_acc_ref_
float Arm::Controller::current_q3_acc_ref_
上游未提供说明。
Core/arm_controller.hpp:216current_q3_ref_
float Arm::Controller::current_q3_ref_
上游未提供说明。
Core/arm_controller.hpp:208current_q3_vel_ref_
float Arm::Controller::current_q3_vel_ref_
上游未提供说明。
Core/arm_controller.hpp:212is_init_
bool Arm::Controller::is_init_
上游未提供说明。
Core/arm_controller.hpp:198joint1_
MITMotorCtrl& Arm::Controller::joint1_
上游未提供说明。
Core/arm_controller.hpp:200joint2_
MITMotorCtrl& Arm::Controller::joint2_
上游未提供说明。
Core/arm_controller.hpp:201joint3_
MITMotorCtrl& Arm::Controller::joint3_
上游未提供说明。
Core/arm_controller.hpp:202last_connected_
bool Arm::Controller::last_connected_
上游未提供说明。
Core/arm_controller.hpp:197motor1_init_pos_
float Arm::Controller::motor1_init_pos_
上游未提供说明。
Core/arm_controller.hpp:220motor2_init_pos_
float Arm::Controller::motor2_init_pos_
上游未提供说明。
Core/arm_controller.hpp:221motor3_init_pos_
float Arm::Controller::motor3_init_pos_
上游未提供说明。
Core/arm_controller.hpp:222payload_ramp_rate_
float Arm::Controller::payload_ramp_rate_
上游未提供说明。
Core/arm_controller.hpp:234soft_start_duration_
float Arm::Controller::soft_start_duration_
上游未提供说明。
Core/arm_controller.hpp:237soft_start_scale_
float Arm::Controller::soft_start_scale_
上游未提供说明。
Core/arm_controller.hpp:236streaming_enabled_
bool Arm::Controller::streaming_enabled_
上游未提供说明。
Core/arm_controller.hpp:218target_payload_mass_
float Arm::Controller::target_payload_mass_
上游未提供说明。
Core/arm_controller.hpp:233