From 036f09bd482ace365d31e761daf8ffdf9ab5ff20 Mon Sep 17 00:00:00 2001 From: Hilario Tome <hilario.tome@pal-robotics.com> Date: Thu, 10 Nov 2016 18:16:10 +0100 Subject: [PATCH] Moved the files from talos walking to talos controller configuration --- talos_bringup/package.xml | 10 +++++ .../config/init_offset_controller.yaml | 12 +++++- .../config/offsets.yaml | 4 ++ .../config/walk_poses.yaml | 41 +++++++++++++++++++ .../config/walking_controller.yaml | 33 +++++++++++++++ .../config/walking_params.yaml | 39 ++++++++++++++++++ .../launch/default_controllers.launch | 2 +- .../launch/init_offset_controller.launch | 12 ++++++ .../launch/walking_controller.launch | 14 +++++++ talos_controller_configuration/package.xml | 1 + 10 files changed, 166 insertions(+), 2 deletions(-) create mode 100644 talos_controller_configuration/config/offsets.yaml create mode 100644 talos_controller_configuration/config/walk_poses.yaml create mode 100644 talos_controller_configuration/config/walking_controller.yaml create mode 100644 talos_controller_configuration/config/walking_params.yaml create mode 100644 talos_controller_configuration/launch/init_offset_controller.launch create mode 100644 talos_controller_configuration/launch/walking_controller.launch diff --git a/talos_bringup/package.xml b/talos_bringup/package.xml index ee66770..717517e 100644 --- a/talos_bringup/package.xml +++ b/talos_bringup/package.xml @@ -10,6 +10,16 @@ <buildtool_depend>catkin</buildtool_depend> + <run_depend>talos_controller_configuration</run_depend> + <run_depend>talos_description</run_depend> + <run_depend>robot_state_publisher</run_depend> + <run_depend>tf_lookup</run_depend> + <run_depend>twist_mux</run_depend> + <run_depend>joy</run_depend> + <run_depend>joy_teleop</run_depend> + <run_depend>play_motion</run_depend> + <run_depend>talos_moveit_config</run_depend> + <export> </export> diff --git a/talos_controller_configuration/config/init_offset_controller.yaml b/talos_controller_configuration/config/init_offset_controller.yaml index 3ac7355..02cef75 100644 --- a/talos_controller_configuration/config/init_offset_controller.yaml +++ b/talos_controller_configuration/config/init_offset_controller.yaml @@ -13,7 +13,17 @@ init_offset_controller: - leg_right_4_joint - leg_right_5_joint - leg_right_6_joint - left_ft_sensor: left_ankle_ft right_ft_sensor: right_ankle_ft base_imu_sensor: base_imu + + hip_spacing_x: -0.03 + hip_spacing_y: 0.08 + hip_spacing_z: 0.0 + + femur_length: 0.380 + tibia_length: 0.320 + foot_height: 0.107 + ft_sensor_z: 0.02 + + config_folder: "$HOME/.pal/init_offset_controller/config" diff --git a/talos_controller_configuration/config/offsets.yaml b/talos_controller_configuration/config/offsets.yaml new file mode 100644 index 0000000..3aa0449 --- /dev/null +++ b/talos_controller_configuration/config/offsets.yaml @@ -0,0 +1,4 @@ +{leg_left_1_joint: 0.0, leg_left_2_joint: -0.01020865572279723, leg_left_3_joint: -0.05758404462002641, + leg_left_4_joint: 0.0, leg_left_5_joint: 0.05922924786310778, leg_left_6_joint: 0.01595601924646576, + leg_right_1_joint: 0.0, leg_right_2_joint: -0.01020865572279723, leg_right_3_joint: -0.05758404462002641, + leg_right_4_joint: 0.0, leg_right_5_joint: 0.05593884137694505, leg_right_6_joint: 0.008005548225255048} diff --git a/talos_controller_configuration/config/walk_poses.yaml b/talos_controller_configuration/config/walk_poses.yaml new file mode 100644 index 0000000..4e69bdd --- /dev/null +++ b/talos_controller_configuration/config/walk_poses.yaml @@ -0,0 +1,41 @@ +# Controller to use to move arms while walking. They must expose a FollowJointTrajectory action interface +walk_pose: + controllers: + - right_arm_controller + - left_arm_controller + - head_controller + - torso_controller + + joints_rest_pos: + - arm_left_1_joint : 0.34 + - arm_left_2_joint : 0.15 + - arm_left_3_joint : -0.34 + - arm_left_4_joint : -1.0 + - arm_left_5_joint : 0.0 + - arm_left_6_joint : 0.0 + - arm_left_7_joint : 0.0 + + - arm_right_1_joint: -0.34 + - arm_right_2_joint: -0.15 + - arm_right_3_joint: 0.34 + - arm_right_4_joint: -1.0 + - arm_right_5_joint: 0.0 + - arm_right_6_joint: 0.0 + - arm_right_7_joint: 0.0 + + - torso_1_joint: 0.0 + - torso_2_joint: 0.0 + + - head_1_joint: 0.0 + - head_2_joint: 0.0 + + joints_to_move: + - arm_left_1_joint: -1.0 + - arm_left_3_joint: 1.0 + - arm_left_4_joint: 1.0 + - arm_right_1_joint: -1.0 + - arm_right_3_joint: 1.0 + - arm_right_4_joint: 1.0 + - torso_2_joint: 0.5 + - head_2_joint: 0.5 + diff --git a/talos_controller_configuration/config/walking_controller.yaml b/talos_controller_configuration/config/walking_controller.yaml new file mode 100644 index 0000000..1e0b93c --- /dev/null +++ b/talos_controller_configuration/config/walking_controller.yaml @@ -0,0 +1,33 @@ +walking_controller: + type: walking_controller/ReemcControl + joints: + - leg_left_1_joint + - leg_left_2_joint + - leg_left_3_joint + - leg_left_4_joint + - leg_left_5_joint + - leg_left_6_joint + - leg_right_1_joint + - leg_right_2_joint + - leg_right_3_joint + - leg_right_4_joint + - leg_right_5_joint + - leg_right_6_joint + left_ft_sensor: left_ankle_ft + right_ft_sensor: right_ankle_ft + base_imu_sensor: base_imu + check_mode: True + + actuators: + - leg_left_1_motor + - leg_left_2_motor + - leg_left_3_motor + - leg_left_4_motor + - leg_left_5_motor + - leg_left_6_motor + - leg_right_1_motor + - leg_right_2_motor + - leg_right_3_motor + - leg_right_4_motor + - leg_right_5_motor + - leg_right_6_motor diff --git a/talos_controller_configuration/config/walking_params.yaml b/talos_controller_configuration/config/walking_params.yaml new file mode 100644 index 0000000..2ba0322 --- /dev/null +++ b/talos_controller_configuration/config/walking_params.yaml @@ -0,0 +1,39 @@ +loop_counter_factor: -1 +debug_backdoor: true + +odometry: + enabled : false + vel_window_size: 10 + use_imu_yaw : false + publish_rate : 100.0 + + pose_covariance_diagonal : [0.001, 0.001, 1000000.0, 0.1, 0.1, 0.1] + twist_covariance_diagonal: [0.001, 0.001, 1000000.0, 0.1, 0.1, 0.1] + +biped_controller: + delta_T: 0.001 + ft_sensor_z: 0.02 + variable_joint_offset_hip: -0.6 + variable_joint_offset_ankle: -0.6 + swing_foot_z: 0.03 + z_lipm: 0.86 + +com_stabilizer: + ds_x_p: 0.6 + ds_y_p: 0.6 + ss_x_p: 0.4 + ss_y_p: 0.4 + dead_zone: 0.01 + foot_offset_clamp: 0.05 + hip_offset_x_clamp: 0.05 + hip_offset_y_clamp: 0.05 + hip_offset_decay: 0.995 + +hip_spacing_x: -0.03 +hip_spacing_y: 0.08 +hip_spacing_z: 0.0 +femur_length: 0.380 +tibia_length: 0.320 +foot_height: 0.107 + +read_absolute_encoders: False diff --git a/talos_controller_configuration/launch/default_controllers.launch b/talos_controller_configuration/launch/default_controllers.launch index 76cc67e..4f4bc7b 100644 --- a/talos_controller_configuration/launch/default_controllers.launch +++ b/talos_controller_configuration/launch/default_controllers.launch @@ -1,6 +1,6 @@ <launch> - <include file="$(find talos_walking)/launch/walking_controller.launch" /> + <include file="$(find talos_controller_configuration)/launch/walking_controller.launch" /> <include file="$(find talos_controller_configuration)/launch/upper_body_position_controllers.launch" /> diff --git a/talos_controller_configuration/launch/init_offset_controller.launch b/talos_controller_configuration/launch/init_offset_controller.launch new file mode 100644 index 0000000..e69ce7a --- /dev/null +++ b/talos_controller_configuration/launch/init_offset_controller.launch @@ -0,0 +1,12 @@ +<launch> + + <!-- init offset controller configuration --> + <rosparam command="load" file="$(find talos_controller_configuration)/config/init_offset_controller.yaml" /> + + <!-- Spawn init offset controller --> + <node name="init_offset_controller_spawner" + pkg="controller_manager" type="spawner" output="screen" + args="init_offset_controller --stopped" /> + +</launch> + diff --git a/talos_controller_configuration/launch/walking_controller.launch b/talos_controller_configuration/launch/walking_controller.launch new file mode 100644 index 0000000..96dc0bc --- /dev/null +++ b/talos_controller_configuration/launch/walking_controller.launch @@ -0,0 +1,14 @@ +<launch> + + <!-- Walking controller configuration --> + <rosparam command="load" file="$(find talos_controller_configuration)/config/walking_params.yaml" ns="walking_controller" /> + <rosparam command="load" file="$(find talos_controller_configuration)/config/walking_controller.yaml" /> + <rosparam command="load" file="$(find talos_controller_configuration)/config/offsets.yaml" ns="walking_controller/offsets" /> + + <!-- Spawn walking controller --> + <node name="walking_controller_spawner" + pkg="controller_manager" type="spawner" output="screen" + args="walking_controller" /> + +</launch> + diff --git a/talos_controller_configuration/package.xml b/talos_controller_configuration/package.xml index 86de9f3..eb1f68c 100644 --- a/talos_controller_configuration/package.xml +++ b/talos_controller_configuration/package.xml @@ -15,6 +15,7 @@ <run_depend>joint_trajectory_controller</run_depend> <run_depend>controller_manager</run_depend> <run_depend>joint_state_controller</run_depend> + <run_depend>point_head_action</run_depend> <export> </export> -- GitLab