Skip to content

运行ocs2控制器报错 #52

@onlyloveyanzi

Description

@onlyloveyanzi

你好,我在执行以下命令
ros2 launch ocs2_quadruped_controller mujoco.launch.py pkg_description:=go2_description
时,遇到如下错误。
ros2_control_node-3] [INFO] [1755065578.049792964] [controller_manager]: Loading controller 'ocs2_quadruped_controller'
[ros2_control_node-3] [INFO] [1755065578.121800219] [ocs2_quadruped_controller]: Controller Manager Update Rate: 500 Hz
[ros2_control_node-3] [LeggedInterface] Loading task file: "/home/shangguan/code/ros2_ws/install/go2_description/share/go2_description/config/ocs2/task.info"
[ros2_control_node-3] [LeggedInterface] Loading Pinocchio model from: "/home/shangguan/code/ros2_ws/install/go2_description/share/go2_description/urdf/robot.urdf"
[ros2_control_node-3] [LeggedInterface] Loading target command settings from: "/home/shangguan/code/ros2_ws/install/go2_description/share/go2_description/config/ocs2/reference.info"
[ros2_control_node-3] [CppAdInterface] Loading Shared Library: /home/shangguan/ocs2_cpp_ad/go2/dynamics_systemFlowMap/cppad_generated/dynamics_systemFlowMap_lib.so
[ros2_control_node-3] WARNING: Loaded at least one default value in matrix: "Q"
[ros2_control_node-3] terminate called after throwing an instance of 'boost::wrapexceptboost::bad_get'
[ros2_control_node-3] what(): boost::bad_get: failed value get using boost::get
[ros2_control_node-3] Stack trace (most recent call last):
[ros2_control_node-3] #31 Object "/opt/ros/humble/lib/controller_manager/ros2_control_node", at 0x64048f507ee4, in
[ros2_control_node-3] #30 Source "../csu/libc-start.c", line 392, in __libc_start_main_impl [0x76a005e29e3f]
[ros2_control_node-3] #29 Source "../sysdeps/nptl/libc_start_call_main.h", line 58, in libc_start_call_main [0x76a005e29d8f]
[ros2_control_node-3] #28 Object "/opt/ros/humble/lib/controller_manager/ros2_control_node", at 0x64048f50774f, in
[ros2_control_node-3] #27 Object "/opt/ros/humble/lib/librclcpp.so", at 0x76a006683b24, in rclcpp::executors::MultiThreadedExecutor::spin()
[ros2_control_node-3] #26 Object "/opt/ros/humble/lib/librclcpp.so", at 0x76a0066836e9, in rclcpp::executors::MultiThreadedExecutor::run(unsigned long)
[ros2_control_node-3] #25 Object "/opt/ros/humble/lib/librclcpp.so", at 0x76a00667c395, in rclcpp::Executor::execute_any_executable(rclcpp::AnyExecutable&)
[ros2_control_node-3] #24 Object "/opt/ros/humble/lib/librclcpp.so", at 0x76a00667c029, in rclcpp::Executor::execute_service(std::shared_ptrrclcpp::ServiceBase)
[ros2_control_node-3] #23 Object "/opt/ros/humble/lib/librclcpp.so", at 0x76a00667e645, in
[ros2_control_node-3] #22 Object "/opt/ros/humble/lib/libcontroller_manager.so", at 0x76a0068a7d4a, in
[ros2_control_node-3] #21 Object "/opt/ros/humble/lib/libcontroller_manager.so", at 0x76a00687107b, in std::Function_handler<void (std::shared_ptr<controller_manager_msgs::srv::LoadController_Request<std::allocator > >, std::shared_ptr<controller_manager_msgs::srv::LoadController_Response
<std::allocator > >), std::Bind<void (controller_manager::ControllerManager::(controller_manager::ControllerManager, std::Placeholder<1>, std::Placeholder<2>))(std::shared_ptr<controller_manager_msgs::srv::LoadController_Request<std::allocator > >, std::shared_ptr<controller_manager_msgs::srv::LoadController_Response<std::allocator > >)> >::M_invoke(std::Any_data const&, std::shared_ptr<controller_manager_msgs::srv::LoadController_Request<std::allocator > >&&, std::shared_ptr<controller_manager_msgs::srv::LoadController_Response<std::allocator > >&&)
[ros2_control_node-3] #20 Object "/opt/ros/humble/lib/libcontroller_manager.so", at 0x76a0068571e8, in controller_manager::ControllerManager::load_controller_service_cb(std::shared_ptr<controller_manager_msgs::srv::LoadController_Request
<std::allocator > >, std::shared_ptr<controller_manager_msgs::srv::LoadController_Response<std::allocator > >)
[ros2_control_node-3] #19 Object "/opt/ros/humble/lib/libcontroller_manager.so", at 0x76a006849d60, in controller_manager::ControllerManager::load_controller(std::__cxx11::basic_string<char, std::char_traits, std::allocator > const&)
[ros2_control_node-3] #18 Object "/opt/ros/humble/lib/libcontroller_manager.so", at 0x76a006848179, in controller_manager::ControllerManager::load_controller(std::__cxx11::basic_string<char, std::char_traits, std::allocator > const&, std::__cxx11::basic_string<char, std::char_traits, std::allocator > const&)
[ros2_control_node-3] #17 Object "/opt/ros/humble/lib/libcontroller_manager.so", at 0x76a0068512e5, in controller_manager::ControllerManager::add_controller_impl(controller_manager::ControllerSpec const&)
[ros2_control_node-3] #16 Object "/opt/ros/humble/lib/libcontroller_interface.so", at 0x76a006484c86, in controller_interface::ControllerInterfaceBase::init(std::__cxx11::basic_string<char, std::char_traits, std::allocator > const&, std::__cxx11::basic_string<char, std::char_traits, std::allocator > const&, rclcpp::NodeOptions const&)
[ros2_control_node-3] #15 Object "/home/shangguan/code/ros2_ws/install/ocs2_quadruped_controller/lib/ocs2_quadruped_controller/libocs2_quadruped_controller.so", at 0x769f9d0e3313, in ocs2::legged_robot::Ocs2QuadrupedController::on_init()
[ros2_control_node-3] #14 Object "/home/shangguan/code/ros2_ws/install/ocs2_quadruped_controller/lib/ocs2_quadruped_controller/libocs2_quadruped_controller.so", at 0x769f9d232f61, in ocs2::legged_robot::CtrlComponent::CtrlComponent(std::shared_ptr<rclcpp_lifecycle::LifecycleNode> const&, CtrlInterfaces&)
[ros2_control_node-3] #13 Object "/home/shangguan/code/ros2_ws/install/ocs2_quadruped_controller/lib/ocs2_quadruped_controller/libocs2_quadruped_controller.so", at 0x769f9d2319d8, in ocs2::legged_robot::CtrlComponent::setupLeggedInterface()
[ros2_control_node-3] #12 Object "/home/shangguan/code/ros2_ws/install/ocs2_quadruped_controller/lib/ocs2_quadruped_controller/libocs2_quadruped_controller.so", at 0x769f9d1fe5db, in ocs2::legged_robot::LeggedInterface::setupOptimalControlProblem(std::__cxx11::basic_string<char, std::char_traits, std::allocator > const&, std::__cxx11::basic_string<char, std::char_traits, std::allocator > const&, std::__cxx11::basic_string<char, std::char_traits, std::allocator > const&, bool)
[ros2_control_node-3] #11 Object "/home/shangguan/code/ros2_ws/install/ocs2_quadruped_controller/lib/ocs2_quadruped_controller/libocs2_quadruped_controller.so", at 0x769f9d1fdcad, in ocs2::legged_robot::LeggedInterface::getBaseTrackingCost(std::__cxx11::basic_string<char, std::char_traits, std::allocator > const&, ocs2::CentroidalModelInfoTpl const&, bool)
[ros2_control_node-3] #10 Object "/home/shangguan/code/ros2_ws/install/ocs2_quadruped_controller/lib/ocs2_quadruped_controller/libocs2_quadruped_controller.so", at 0x769f9d1fc6eb, in ocs2::legged_robot::LeggedInterface::initializeInputCostWeight(std::__cxx11::basic_string<char, std::char_traits, std::allocator > const&, ocs2::CentroidalModelInfoTpl const&)
[ros2_control_node-3] #9 Object "/home/shangguan/code/ros2_ws/install/ocs2_quadruped_controller/lib/ocs2_quadruped_controller/libocs2_quadruped_controller.so", at 0x769f9d2199f7, in ZNKR5boost7variantIN9pinocchio21JointModelRevoluteTplIdLi0ELi0EEEJNS2_IdLi0ELi1EEENS2_IdLi0ELi2EEENS1_22JointModelFreeFlyerTplIdLi0EEENS1_19JointModelPlanarTplIdLi0EEENS1_30JointModelRevoluteUnalignedTplIdLi0EEENS1_22JointModelSphericalTplIdLi0EEENS1_25JointModelSphericalZYXTplIdLi0EEENS1_22JointModelPrismaticTplIdLi0ELi0EEENSG_IdLi0ELi1EEENSG_IdLi0ELi2EEENS1_31JointModelPrismaticUnalignedTplIdLi0EEENS1_24JointModelTranslationTplIdLi0EEENS1_30JointModelRevoluteUnboundedTplIdLi0ELi0EEENSO_IdLi0ELi1EEENSO_IdLi0ELi2EEENS1_39JointModelRevoluteUnboundedUnalignedTplIdLi0EEENS1_20JointModelHelicalTplIdLi0ELi0EEENSU_IdLi0ELi1EEENSU_IdLi0ELi2EEENS1_29JointModelHelicalUnalignedTplIdLi0EEENS1_22JointModelUniversalTplIdLi0EEENS_17recursive_wrapperINS1_22JointModelCompositeTplIdLi0ENS1_25JointCollectionDefaultTplEEEEENS12_INS1_18JointModelMimicTplIdLi0ES14_EEEEEE13apply_visitorINS1_6fusion21JointUnaryVisitorBaseINS1_4impl25JointJacobiansForwardStepIdLi0ES14_N5Eigen3RefIKNS1G_6MatrixIdLin1ELi1ELi0ELin1ELi1EEELi0ENS1G_11InnerStrideILi1EEEEENS1I_IdLi6ELin1ELi0ELi6ELin1EEEEEvE27InternalVisitorModelAndDataINS1_13JointModelTplIdLi0ES14_EENS_6fusion6vectorIJRKNS1_8ModelTplIdLi0ES14_EERNS1_7DataTplIdLi0ES14_EERKS1N_RS1O_EEEEEEENT_11result_typeERS28
[ros2_control_node-3] #8 Object "/home/shangguan/code/ros2_ws/install/ocs2_quadruped_controller/lib/ocs2_quadruped_controller/libocs2_quadruped_controller.so", at 0x769f9d12dcf2, in boost::add_reference<pinocchio::JointDataRevoluteTpl<double, 0, 0> >::type boost::relaxed_get<pinocchio::JointDataRevoluteTpl<double, 0, 0>, pinocchio::JointDataRevoluteTpl<double, 0, 0>, pinocchio::JointDataRevoluteTpl<double, 0, 1>, pinocchio::JointDataRevoluteTpl<double, 0, 2>, pinocchio::JointDataFreeFlyerTpl<double, 0>, pinocchio::JointDataPlanarTpl<double, 0>, pinocchio::JointDataRevoluteUnalignedTpl<double, 0>, pinocchio::JointDataSphericalTpl<double, 0>, pinocchio::JointDataSphericalZYXTpl<double, 0>, pinocchio::JointDataPrismaticTpl<double, 0, 0>, pinocchio::JointDataPrismaticTpl<double, 0, 1>, pinocchio::JointDataPrismaticTpl<double, 0, 2>, pinocchio::JointDataPrismaticUnalignedTpl<double, 0>, pinocchio::JointDataTranslationTpl<double, 0>, pinocchio::JointDataRevoluteUnboundedTpl<double, 0, 0>, pinocchio::JointDataRevoluteUnboundedTpl<double, 0, 1>, pinocchio::JointDataRevoluteUnboundedTpl<double, 0, 2>, pinocchio::JointDataRevoluteUnboundedUnalignedTpl<double, 0>, pinocchio::JointDataHelicalTpl<double, 0, 0>, pinocchio::JointDataHelicalTpl<double, 0, 1>, pinocchio::JointDataHelicalTpl<double, 0, 2>, pinocchio::JointDataHelicalUnalignedTpl<double, 0>, pinocchio::JointDataUniversalTpl<double, 0>, boost::recursive_wrapper<pinocchio::JointDataCompositeTpl<double, 0, pinocchio::JointCollectionDefaultTpl> >, boost::recursive_wrapper<pinocchio::JointDataMimicTpl<double, 0, pinocchio::JointCollectionDefaultTpl> > >(boost::variant<pinocchio::JointDataRevoluteTpl<double, 0, 0>, pinocchio::JointDataRevoluteTpl<double, 0, 1>, pinocchio::JointDataRevoluteTpl<double, 0, 2>, pinocchio::JointDataFreeFlyerTpl<double, 0>, pinocchio::JointDataPlanarTpl<double, 0>, pinocchio::JointDataRevoluteUnalignedTpl<double, 0>, pinocchio::JointDataSphericalTpl<double, 0>, pinocchio::JointDataSphericalZYXTpl<double, 0>, pinocchio::JointDataPrismaticTpl<double, 0, 0>, pinocchio::JointDataPrismaticTpl<double, 0, 1>, pinocchio::JointDataPrismaticTpl<double, 0, 2>, pinocchio::JointDataPrismaticUnalignedTpl<double, 0>, pinocchio::JointDataTranslationTpl<double, 0>, pinocchio::JointDataRevoluteUnboundedTpl<double, 0, 0>, pinocchio::JointDataRevoluteUnboundedTpl<double, 0, 1>, pinocchio::JointDataRevoluteUnboundedTpl<double, 0, 2>, pinocchio::JointDataRevoluteUnboundedUnalignedTpl<double, 0>, pinocchio::JointDataHelicalTpl<double, 0, 0>, pinocchio::JointDataHelicalTpl<double, 0, 1>, pinocchio::JointDataHelicalTpl<double, 0, 2>, pinocchio::JointDataHelicalUnalignedTpl<double, 0>, pinocchio::JointDataUniversalTpl<double, 0>, boost::recursive_wrapper<pinocchio::JointDataCompositeTpl<double, 0, pinocchio::JointCollectionDefaultTpl> >, boost::recursive_wrapper<pinocchio::JointDataMimicTpl<double, 0, pinocchio::JointCollectionDefaultTpl> > >&)
[ros2_control_node-3] #7 Object "/home/shangguan/code/ros2_ws/install/ocs2_quadruped_controller/lib/ocs2_quadruped_controller/libocs2_quadruped_controller.so", at 0x769f9d0b8379, in void boost::throw_exceptionboost::bad_get(boost::bad_get const&) [clone .constprop.0]
[ros2_control_node-3] #6 Object "/usr/lib/x86_64-linux-gnu/libstdc++.so.6.0.30", at 0x76a0062ae4d7, in __cxa_throw
[ros2_control_node-3] #5 Object "/usr/lib/x86_64-linux-gnu/libstdc++.so.6.0.30", at 0x76a0062ae276, in std::terminate()
[ros2_control_node-3] #4 Object "/usr/lib/x86_64-linux-gnu/libstdc++.so.6.0.30", at 0x76a0062ae20b, in
[ros2_control_node-3] #3 Object "/usr/lib/x86_64-linux-gnu/libstdc++.so.6.0.30", at 0x76a0062a2b9d, in
[ros2_control_node-3] #2 Source "./stdlib/abort.c", line 79, in abort [0x76a005e287f2]
[ros2_control_node-3] #1 Source "../sysdeps/posix/raise.c", line 26, in raise [0x76a005e42475]
[ros2_control_node-3] #0 | Source "./nptl/pthread_kill.c", line 89, in __pthread_kill_internal
[ros2_control_node-3] | Source "./nptl/pthread_kill.c", line 78, in __pthread_kill_implementation
[ros2_control_node-3] Source "./nptl/pthread_kill.c", line 44, in __pthread_kill [0x76a005e969fc]
[ros2_control_node-3] Aborted (Signal sent by tkill() 3089305 1000)
[ERROR] [ros2_control_node-3]: process has died [pid 3089305, exit code -6, cmd '/opt/ros/humble/lib/controller_manager/ros2_control_node --ros-args --params-file /home/shangguan/code/ros2_ws/install/go2_description/share/go2_description/config/robot_control.yaml -r ~/robot_description:=/robot_description'].
[spawner-6] [WARN] [1755065588.056728703] [spawner_ocs2_quadruped_controller]: Failed getting a result from calling /controller_manager/load_controller in 10.0. (Attempt 1 of 3.)
[spawner-6] [WARN] [1755065598.057420691] [spawner_ocs2_quadruped_controller]: Failed getting a result from calling /controller_manager/load_controller in 10.0. (Attempt 2 of 3.)
[spawner-6] [WARN] [1755065608.058307948] [spawner_ocs2_quadruped_controller]: Failed getting a result from calling /controller_manager/load_controller in 10.0. (Attempt 3 of 3.)
[spawner-6] Traceback (most recent call last):
[spawner-6] File "/opt/ros/humble/lib/controller_manager/spawner", line 33, in
[spawner-6] sys.exit(load_entry_point('controller-manager==2.51.0', 'console_scripts', 'spawner')())
[spawner-6] File "/opt/ros/humble/local/lib/python3.10/dist-packages/controller_manager/spawner.py", line 227, in main
[spawner-6] ret = load_controller(node, controller_manager_name, controller_name)
[spawner-6] File "/opt/ros/humble/local/lib/python3.10/dist-packages/controller_manager/controller_manager_services.py", line 227, in load_controller
[spawner-6] return service_caller(
[spawner-6] File "/opt/ros/humble/local/lib/python3.10/dist-packages/controller_manager/controller_manager_services.py", line 150, in service_caller
[spawner-6] raise RuntimeError(
[spawner-6] RuntimeError: Could not successfully call service /controller_manager/load_controller after 3 attempts.
[ERROR] [spawner-6]: process has died [pid 3089494, exit code 1, cmd '/opt/ros/humble/lib/controller_manager/spawner ocs2_quadruped_controller --controller-manager /controller_manager --ros-args'].
^C[WARNING] [launch]: user interrupted with ctrl-c (SIGINT)
[robot_state_publisher-2] [INFO] [1755067278.562876082] [rclcpp]: signal_handler(signum=2)
[rviz2-1] [INFO] [1755067278.562876309] [rclcpp]: signal_handler(signum=2)
[INFO] [robot_state_publisher-2]: process has finished cleanly [pid 3089303]
[ERROR] [rviz2-1]: process has died [pid 3089301, exit code -11, cmd '/opt/ros/humble/lib/rviz2/rviz2 -d /home/shangguan/code/ros2_ws/install/ocs2_quadruped_controller/share/ocs2_quadruped_controller/config/visualize_ocs2.rviz --ros-args -r __node:=rviz_ocs2'].
我的系统是ubuntu22.04
ros: ros2-humble
boost:boost 1.74
请问如何解决呢

Metadata

Metadata

Assignees

No one assigned

    Labels

    No labels
    No labels

    Projects

    No projects

    Milestone

    No milestone

    Relationships

    None yet

    Development

    No branches or pull requests

    Issue actions