随笔分类 -  OCS2

摘要:这个文件主要是对最优问题的构造。 1. setupOptimalConrolProblem void LeggedRobotInterface::setupOptimalConrolProblem(const std::string& taskFile, const std::string& urd 阅读全文
posted @ 2025-01-02 14:13 penuel 阅读(144) 评论(0) 推荐(0)
摘要:步态文件: 1. 步态类型 list { [0] stance 静止 [1] trot 快走,一种快速、稳定的交替对角步态 [2] standing_trot 在交替的步伐中插入静止阶段,增加稳定性 [3] flying_trot 在交替的步伐中插入腾空阶段,增加速度 [4] pace 同侧步态,左 阅读全文
posted @ 2025-01-02 10:20 penuel 阅读(194) 评论(0) 推荐(0)
摘要:1. 创建MPC_ROS_Interface接口,以sqpMpc为例 //自定义接口 LeggedRobotInterface interface(taskFile, urdfFile, referenceFile); // 创建同步接口 auto gaitReceiverPtr = std::ma 阅读全文
posted @ 2024-12-30 10:55 penuel 阅读(328) 评论(0) 推荐(0)
摘要:1. ModelHelperFunctions.cpp 1.1 updateCentroidalDynamics() : 质心动力学更新 template <typename SCALAR_T> void updateCentroidalDynamics(PinocchioInterfaceTpl< 阅读全文
posted @ 2024-12-19 17:22 penuel 阅读(675) 评论(0) 推荐(0)
摘要:计算特定时间点指定腿的垂直速度约束 \(v_z=trajectory[index].velocity(time)\) scalar_t SwingTrajectoryPlanner::getZvelocityConstraint(size_t leg, scalar_t time) const { 阅读全文
posted @ 2024-12-11 10:59 penuel 阅读(236) 评论(0) 推荐(0)
摘要:定义: \(g(xee, vee) = Ax * xee + Av * vee + b\) xee:末端位置 vee:线速度 值: vector_t EndEffectorLinearConstraint::getValue(scalar_t time, const vector_t& state, 阅读全文
posted @ 2024-12-10 15:23 penuel 阅读(136) 评论(0) 推荐(0)
摘要:公式: \(h(F) = u(F_z + F_{gripper}) - \sqrt{F^2_x + F^2_y + \epsilon} >= 0\) \(F_{gripper}\):抓力(如果有) \(\epsilon\):正则化参数,用于避免梯度计算时分母为0 vector_t FrictionC 阅读全文
posted @ 2024-12-10 15:05 penuel 阅读(195) 评论(0) 推荐(0)
摘要:1. 启动 共启动3个节点 mobile_manipulator_mpc_node //mpc问题构建,计算 mobile_manipulator_dummy_mrt_node //仿真,承接MPC的输出,发布Observation, 对于仿真来讲,状态发布也是反馈 mobile_manipulat 阅读全文
posted @ 2024-06-21 15:36 penuel 阅读(542) 评论(0) 推荐(0)