Closed zxfever closed 11 months ago
5. when i run mon launch qm_controllers rviz.launch
, the rviz is
no marker point in the rviz
Hello, I followed the installation to built the code, but l meet some problems and ask for advice.
1. The first is when i run
mon launch qm_gazebo empty_world.launch
in MPC-WBC The shape of the robot seems a bit strange, and it doesn't seem to be quite the same as what you show in the video tutorial you gave, as shown in the image belowand the terminal information is
/spawn_urdf: [SpawnModelNode.run]: Loading model XML from ros parameter qm_description /spawn_urdf: [spawn_urdf_model_client]: Waiting for service /gazebo/spawn_urdf_model /gazebo: [GazeboRosApiPlugin::Load]: Finished loading Gazebo ROS API Plugin. /gazebo: [service::exists]: waitForService: Service [/gazebo/set_physics_properties] has not been advertised, waiting... /gazebo_gui: [GazeboRosApiPlugin::Load]: Finished loading Gazebo ROS API Plugin. /gazebo_gui: [service::exists]: waitForService: Service [/gazebo_gui/set_physics_properties] has not been advertised, waiting... /gazebo: [service::waitForService]: waitForService: Service [/gazebo/set_physics_properties] is now available. /spawn_urdf: [spawn_urdf_model_client]: Calling service /gazebo/spawn_urdf_model /gazebo_gui: ../src/intel/isl/isl.c:2105: FINISHME: ../src/intel/isl/isl.c:isl_surf_supports_ccs: CCS for 3D textures is disabled, but a workaround is available ~ . /spawn_urdf: [spawn_urdf_model_client]: Spawn status: SpawnModel: Successfully spawned entity /spawn_urdf: [set_model_configuration_client]: Waiting for service /gazebo/set_model_configuration /spawn_urdf: [set_model_configuration_client]: temporary hack to **fix** the -J joint position option (issue #93), sleeping for 1 second to avoid race condition ~ . /gazebo: [GazeboRosApiPlugin::physicsReconfigureThread]: Physics dynamic reconfigure ready. /gazebo: [GazeboRosFT::Load]: ft_sensor plugin reporting wrench values to the frame [j2n6s300_link_1] /gazebo: [GazeboRosFT::Load]: imu plugin missing <gaussianNoise>, defaults to 0.0 /gazebo: [GazeboRosFT::Load]: ft_sensor plugin reporting wrench values to the frame [j2n6s300_link_2] /gazebo: [GazeboRosFT::Load]: imu plugin missing <gaussianNoise>, defaults to 0.0 /gazebo: [GazeboRosFT::Load]: ft_sensor plugin reporting wrench values to the frame [j2n6s300_link_3] /gazebo: [GazeboRosFT::Load]: imu plugin missing <gaussianNoise>, defaults to 0.0 /gazebo: [GazeboRosFT::Load]: ft_sensor plugin reporting wrench values to the frame [j2n6s300_link_4] /gazebo: [GazeboRosFT::Load]: imu plugin missing <gaussianNoise>, defaults to 0.0 /gazebo: [GazeboRosFT::Load]: ft_sensor plugin reporting wrench values to the frame [j2n6s300_link_5] /gazebo: [GazeboRosFT::Load]: imu plugin missing <gaussianNoise>, defaults to 0.0 /gazebo: [GazeboRosFT::Load]: ft_sensor plugin reporting wrench values to the frame [j2n6s300_link_6] /gazebo: [GazeboRosFT::Load]: imu plugin missing <gaussianNoise>, defaults to 0.0 /gazebo: [GazeboRosControlPlugin::Load]: Loading gazebo_ros_control plugin /gazebo: [GazeboRosControlPlugin::Load]: Starting gazebo_ros_control plugin in namespace: / /gazebo: [string gazebo_ros_control::GazeboRosControlPlugin::getURDF]: gazebo_ros_control plugin is waiting for model URDF in parameter [qm_description] on ~ the ROS param server. /gazebo: [GazeboRosControlPlugin::Load]: Loaded gazebo_ros_control. /spawn_urdf: [set_model_configuration_client]: Calling service /gazebo/set_model_configuration /spawn_urdf: [set_model_configuration_client]: Set model configuration status: SetModelConfiguration: success /spawn_urdf: /spawn_urdf exited with status 0
2.then when i run
mon launch qm_controllers load_controller.launch
,the controller doesn't seem to be loaded, compared with your tutorial video, and the terminal information is:....... roscore is already running. Running as '/rosmon_1702295726284037689' Warning: Could not create log directory '/home/wuba/.ros/log/ef19ab2c-980f-11ee-ad86-6d39d8f0ce27' /controller_loader: Loaded 'controllers/joint_state_controller' /controller_loader: Loaded 'controllers/qm_controller' /controller_loader: /controller_loader exited with status 0
3. then when i run
rosrun rqt_controller_manager rqt_controller_manager
, the manager is shown asThis manager is stuck and cannot be operated, but this may be caused by the above questions.
4. when i run
roslaunch qm_controllers load_qm_target.launch
, the error information is:SUMMARY ======== PARAMETERS * /joy_node/autorepeat_rate: 20 * /joy_node/deadzone: 1e-3 * /joy_node/dev: /dev/input/js0 * /rosdistro: noetic * /rosversion: 1.16.0 * /teleop/ee/axis_mappings: [{'axis': 0, 'tar... * /teleop/ee/deadman_buttons: [5] * /teleop/ee/message_type: geometry_msgs/Twist * /teleop/ee/topic_name: ee_cmd_vel * /teleop/ee/type: topic * /teleop/walk/axis_mappings: [{'axis': 0, 'tar... * /teleop/walk/deadman_buttons: [4] * /teleop/walk/message_type: geometry_msgs/Twist * /teleop/walk/topic_name: cmd_vel * /teleop/walk/type: topic NODES / joy_node (joy/joy_node) joy_teleop (joy_teleop/joy_teleop.py) legged_robot_gait_command (ocs2_legged_robot_ros/legged_robot_gait_command) qm_target_trajectories_publisher (qm_controllers/qm_target_trajectories_publisher) ROS_MASTER_URI=http://localhost:11311 process[joy_node-1]: started with pid [11297] ERROR: cannot launch node of type [joy_teleop/joy_teleop.py]: joy_teleop ROS path [0]=/opt/ros/noetic/share/ros ROS path [1]=/home/wuba/qm_control_ws/src/ocs2/ocs2_sqp/blasfeo_catkin ROS path [2]=/home/wuba/qm_control_ws/src/hpp-fcl ROS path [3]=/home/wuba/qm_control_ws/src/ocs2/ocs2 ROS path [4]=/home/wuba/qm_control_ws/src/ocs2/ocs2_mpcnet/ocs2_mpcnet ROS path [5]=/home/wuba/qm_control_ws/src/ocs2/ocs2_msgs ROS path [6]=/home/wuba/qm_control_ws/src/ocs2/ocs2_pinocchio/ocs2_pinocchio ROS path [7]=/home/wuba/qm_control_ws/src/ocs2/ocs2_raisim/ocs2_raisim ROS path [8]=/home/wuba/qm_control_ws/src/ocs2_robotic_assets ROS path [9]=/home/wuba/qm_control_ws/src/ocs2/ocs2_robotic_examples/ocs2_robotic_examples ROS path [10]=/home/wuba/qm_control_ws/src/ocs2/ocs2_thirdparty ROS path [11]=/home/wuba/qm_control_ws/src/ocs2/ocs2_core ROS path [12]=/home/wuba/qm_control_ws/src/ocs2/ocs2_frank_wolfe ROS path [13]=/home/wuba/qm_control_ws/src/ocs2/ocs2_oc ROS path [14]=/home/wuba/qm_control_ws/src/ocs2/ocs2_mpc ROS path [15]=/home/wuba/qm_control_ws/src/ocs2/ocs2_test_tools/ocs2_qp_solver ROS path [16]=/home/wuba/qm_control_ws/src/ocs2/ocs2_sqp/hpipm_catkin ROS path [17]=/home/wuba/qm_control_ws/src/ocs2/ocs2_ddp ROS path [18]=/home/wuba/qm_control_ws/src/ocs2/ocs2_ipm ROS path [19]=/home/wuba/qm_control_ws/src/ocs2/ocs2_ocs2 ROS path [20]=/home/wuba/qm_control_ws/src/ocs2/ocs2_raisim/ocs2_raisim_core ROS path [21]=/home/wuba/qm_control_ws/src/ocs2/ocs2_raisim/ocs2_raisim_ros ROS path [22]=/home/wuba/qm_control_ws/src/ocs2/ocs2_robotic_tools ROS path [23]=/home/wuba/qm_control_ws/src/ocs2/ocs2_robotic_examples/ocs2_cartpole ROS path [24]=/home/wuba/qm_control_ws/src/ocs2/ocs2_perceptive ROS path [25]=/home/wuba/qm_control_ws/src/ocs2/ocs2_python_interface ROS path [26]=/home/wuba/qm_control_ws/src/ocs2/ocs2_robotic_examples/ocs2_double_integrator ROS path [27]=/home/wuba/qm_control_ws/src/ocs2/ocs2_robotic_examples/ocs2_quadrotor ROS path [28]=/home/wuba/qm_control_ws/src/ocs2/ocs2_ros_interfaces ROS path [29]=/home/wuba/qm_control_ws/src/ocs2/ocs2_robotic_examples/ocs2_cartpole_ros ROS path [30]=/home/wuba/qm_control_ws/src/ocs2/ocs2_robotic_examples/ocs2_double_integrator_ros ROS path [31]=/home/wuba/qm_control_ws/src/ocs2/ocs2_mpcnet/ocs2_mpcnet_core ROS path [32]=/home/wuba/qm_control_ws/src/ocs2/ocs2_robotic_examples/ocs2_quadrotor_ros ROS path [33]=/home/wuba/qm_control_ws/src/ocs2/ocs2_slp ROS path [34]=/home/wuba/qm_control_ws/src/ocs2/ocs2_sqp/ocs2_sqp ROS path [35]=/home/wuba/qm_control_ws/src/ocs2/ocs2_robotic_examples/ocs2_ballbot ROS path [36]=/home/wuba/qm_control_ws/src/ocs2/ocs2_robotic_examples/ocs2_ballbot_ros ROS path [37]=/home/wuba/qm_control_ws/src/ocs2/ocs2_mpcnet/ocs2_ballbot_mpcnet ROS path [38]=/home/wuba/qm_control_ws/src/pinocchio ROS path [39]=/home/wuba/qm_control_ws/src/ocs2/ocs2_pinocchio/ocs2_pinocchio_interface ROS path [40]=/home/wuba/qm_control_ws/src/ocs2/ocs2_pinocchio/ocs2_centroidal_model ROS path [41]=/home/wuba/qm_control_ws/src/ocs2/ocs2_robotic_examples/ocs2_legged_robot ROS path [42]=/home/wuba/qm_control_ws/src/ocs2/ocs2_robotic_examples/ocs2_legged_robot_ros ROS path [43]=/home/wuba/qm_control_ws/src/ocs2/ocs2_raisim/ocs2_legged_robot_raisim ROS path [44]=/home/wuba/qm_control_ws/src/ocs2/ocs2_mpcnet/ocs2_legged_robot_mpcnet ROS path [45]=/home/wuba/qm_control_ws/src/ocs2/ocs2_pinocchio/ocs2_self_collision ROS path [46]=/home/wuba/qm_control_ws/src/ocs2/ocs2_robotic_examples/ocs2_mobile_manipulator ROS path [47]=/home/wuba/qm_control_ws/src/ocs2/ocs2_pinocchio/ocs2_self_collision_visualization ROS path [48]=/home/wuba/qm_control_ws/src/ocs2/ocs2_robotic_examples/ocs2_mobile_manipulator_ros ROS path [49]=/home/wuba/qm_control_ws/src/ocs2/ocs2_pinocchio/ocs2_sphere_approximation ROS path [50]=/home/wuba/qm_control_ws/src/qm_control/qm_common ROS path [51]=/home/wuba/qm_control_ws/src/qm_control/qm_control ROS path [52]=/home/wuba/qm_control_ws/src/qm_control/qm_description ROS path [53]=/home/wuba/qm_control_ws/src/qm_control/qm_estimation ROS path [54]=/home/wuba/qm_control_ws/src/qm_control/qm_gazebo ROS path [55]=/home/wuba/qm_control_ws/src/qm_control/qm_interface ROS path [56]=/home/wuba/qm_control_ws/src/qm_control/qm_msgs ROS path [57]=/home/wuba/qm_control_ws/src/qm_control/qpoases_catkin ROS path [58]=/home/wuba/qm_control_ws/src/qm_control/qm_wbc ROS path [59]=/home/wuba/qm_control_ws/src/qm_control/qm_controllers ROS path [60]=/home/wuba/qm_control_ws/src/raisimLib ROS path [61]=/opt/ros/noetic/share process[legged_robot_gait_command-3]: started with pid [11298] process[qm_target_trajectories_publisher-4]: started with pid [11299] Loading gait file: /home/wuba/qm_control_ws/src/qm_control/qm_controllers/config/gait.info [ INFO] [1702296760.443255776]: legged_robot_mpc_mode_schedule node is setting up ... #### 'list': {stance, trot, standing_trot, flying_trot, pace, standing_pace, dynamic_walk, static_walk, amble, lindyhop, skipping, pawup} #### 'stance.switchingTimes': {0, 0.5} #### 'stance.modeSequence': {STANCE} #### 'trot.switchingTimes': {0, 0.35, 0.7} #### 'trot.modeSequence': {LF_RH, RF_LH} #### 'standing_trot.switchingTimes': {0, 0.4, 0.5, 0.9, 1} #### 'standing_trot.modeSequence': {LF_RH, STANCE, RF_LH, STANCE} #### 'flying_trot.switchingTimes': {0, 0.25, 0.3, 0.55, 0.6} #### 'flying_trot.modeSequence': {LF_RH, FLY, RF_LH, FLY} #### 'pace.switchingTimes': {0, 0.28, 0.3, 0.58, 0.6} #### 'pace.modeSequence': {LF_LH, FLY, RF_RH, FLY} #### 'standing_pace.switchingTimes': {0, 0.3, 0.35, 0.65, 0.7} #### 'standing_pace.modeSequence': {LF_LH, STANCE, RF_RH, STANCE} #### 'dynamic_walk.switchingTimes': {0, 0.2, 0.3, 0.5, 0.7, 0.8, 1} #### 'dynamic_walk.modeSequence': {LF_RF_RH, RF_RH, RF_LH_RH, LF_RF_LH, LF_LH, LF_LH_RH} #### 'static_walk.switchingTimes': {0, 0.3, 0.6, 0.9, 1.2} #### 'static_walk.modeSequence': {LF_RF_RH, RF_LH_RH, LF_RF_LH, LF_LH_RH} #### 'amble.switchingTimes': {0, 0.15, 0.4, 0.55, 0.8} #### 'amble.modeSequence': {RF_LH, LF_LH, LF_RH, RF_RH} #### 'lindyhop.switchingTimes': {0, 0.35, 0.45, 0.8, 0.9, 1.125, 1.35, 1.7, 1.8, 2.025, 2.25, 2.6, 2.7[ INFO] [1702296760.448694043]: The TargetTrajectories is publishing on qm_mpc_target topic. } #### 'lindyhop.modeSequence': {LF_RH, STANCE, RF_LH, STANCE, LF_LH, RF_RH, LF_LH, STANCE, RF_RH, LF_LH, RF_RH, STANCE} #### 'skipping.switchingTimes': {0, 0.27, 0.3, 0.57, 0.6, 0.87, 0.9, 1.17, 1.2} #### 'skipping.modeSequence': {LF_RH, FLY, LF_RH, FLY, RF_LH, FLY, RF_LH, FLY} #### 'pawup.switchingTimes': {0, 2} #### 'pawup.modeSequence': {RF_LH_RH} [ INFO] [1702296760.449635426]: legged_robot_mpc_mode_schedule command node is ready. Enter the desired gait, for the list of available gait enter "list": [ INFO] [1702296760.453666162]: legged_robot_mpc_mode_schedule node is setting up ... [ INFO] [1702296760.455737871]: legged_robot_mpc_mode_schedule command node is ready. [ WARN] [1702296760.620337142]: Couldn't set gain on joystick force feedback: Bad file descriptor
so the robot can't be controlled. My environment is :
ubuntu 20.04 ros1 noetic
can you give some suggestions for the above problems? thanks a lot!
Thanks for your follow!
joy_teleop
using the command sudo apt-get install ros-neotic-joy-teleop
.joy_teleop
in step 4, you can get the same result as my tutor video. Good luck!@skywoodsz Sorry for the late reply. Thank you very much for your help. I would like to read if the corresponding literature has been published.
编译时,提示缺失的头文件 ocs2_ipm/IpmSettings.h,ocs2_ipm/在哪里获取?感谢呀
Errors << qm_interface:make /home/ocs2_ws/logs/qm_interface/build.make.006.log
In file included from /home/k1314/ocs2_ws/src/qm_control/qm_interface/src/QMInterface.cpp:9:
/home/k1314/ocs2_ws/src/qm_control/qm_interface/include/qm_interface/QMInterface.h:13:10: fatal error: ocs2_ipm/IpmSettings.h: 没有那个文件或目录
13 | #include <ocs2_ipm/IpmSettings.h>
| ^~~~~~~~
compilation terminated.
make[2]: [CMakeFiles/qm_interface.dir/build.make:63:CMakeFiles/qm_interface.dir/src/QMInterface.cpp.o] 错误 1
make[1]: [CMakeFiles/Makefile2:762:CMakeFiles/qm_interface.dir/all] 错误 2
make: *** [Makefile:141:all] 错误 2
cd /home/k1314/ocs2_ws/build/qm_interface; catkin build --get-env qm_interface | catkin env -si /usr/bin/make --jobserver-auth=3,4; cd -
..............................................................................
Failed << qm_interface:make [ Exited with code 2 ]
Failed <<< qm_interface [ 4.5 seconds ]
Abandoned <<< qm_control [ Unrelated job failed ]
Abandoned <<< qm_controllers [ Unrelated job failed ]
Errors << qm_wbc:make /home/ocs2_ws/logs/qm_wbc/build.make.006.log
/home/k1314/ocs2_ws/src/qm_control/qm_wbc/src/WbcBase.cpp: In constructor ‘qm::WbcBase::WbcBase(const PinocchioInterface&, ocs2::CentroidalModelInfo, const ocs2::PinocchioEndEffectorKinematics&, const ocs2::PinocchioEndEffectorKinematics&, ros::NodeHandle&)’:
/home/k1314/ocs2_ws/src/qm_control/qm_wbc/src/WbcBase.cpp:68:84: error: use of ‘auto’ in lambda parameter declaration only available with ‘-std=c++14’ or ‘-std=gnu++14’
68 | dynamic_reconfigure::Server
@nys601350111 It seems you used the older version of OCS2. You need to use the latest version.
Hello, I followed the installation to built the code, but l meet some problems and ask for advice.
1. The first is when i run
mon launch qm_gazebo empty_world.launch
in MPC-WBC The shape of the robot seems a bit strange, and it doesn't seem to be quite the same as what you show in the video tutorial you gave, as shown in the image belowand the terminal information is
2.then when i run
mon launch qm_controllers load_controller.launch
,the controller doesn't seem to be loaded, compared with your tutorial video, and the terminal information is:3. then when i run
rosrun rqt_controller_manager rqt_controller_manager
, the manager is shown asThis manager is stuck and cannot be operated, but this may be caused by the above questions.
4. when i run
roslaunch qm_controllers load_qm_target.launch
, the error information is:so the robot can't be controlled. My environment is :
can you give some suggestions for the above problems? thanks a lot!