diff --git a/config/ana_pan_tilt_effort_sim_config.yaml b/config/ana_pan_tilt_effort_sim_config.yaml new file mode 100644 index 0000000000000000000000000000000000000000..4b3bb1374261f21f64db6a24ab23dda2995b5d1e --- /dev/null +++ b/config/ana_pan_tilt_effort_sim_config.yaml @@ -0,0 +1,24 @@ +ana: + + joint_state_controller: + type: "joint_state_controller/JointStateController" + publish_rate: 50 + + effort_controller: + type: "effort_controllers/JointTrajectoryController" + joints: + - pan + - tilt + gains: + pan: {p: 40, d: 0, i: 10, i_clamp: 1000} + tilt: {p: 20, d: 0, i: 0, i_clamp: 1000} + constrains: + pan: + goal: 0.02 + trajectory: 0.05 + tilt: + goal: 0.02 + trajectory: 0.05 + state_publish_rate: 50 + allow_partial_joints_goal: true + diff --git a/config/ana_pan_tilt_gazebo.yaml b/config/ana_pan_tilt_gazebo.yaml new file mode 100644 index 0000000000000000000000000000000000000000..11f5dfc111ef0ccdd76c3a8b2ff6ac1edf97b160 --- /dev/null +++ b/config/ana_pan_tilt_gazebo.yaml @@ -0,0 +1,3 @@ +robotNamespace: ana +robotParam: ana/robot_description + diff --git a/config/ana_pan_tilt_position_sim_config.yaml b/config/ana_pan_tilt_position_sim_config.yaml new file mode 100644 index 0000000000000000000000000000000000000000..73d76ae0f8c4763726f2e471a116aa842e56d633 --- /dev/null +++ b/config/ana_pan_tilt_position_sim_config.yaml @@ -0,0 +1,34 @@ +ana: + + joint_state_controller: + type: "joint_state_controller/JointStateController" + publish_rate: 50 + + position_controller: + type: "position_controllers/JointTrajectoryController" + joints: + - pan + - tilt + gains: + pan: {p: 40, d: 0, i: 10, i_clamp: 1000} + tilt: {p: 20, d: 0, i: 0, i_clamp: 1000} + constrains: + pan: + goal: 0.02 + trajectory: 0.05 + tilt: + goal: 0.02 + trajectory: 0.05 + state_publish_rate: 50 + allow_partial_joints_goal: true + +gazebo_ros_control: + pid_gains: + pan: + p: 0.01 + i: 0.0 + d: 0.0 + tilt: + p: 0.01 + i: 0.0 + d: 0.0 diff --git a/launch/sim_sample.launch b/launch/sim_sample.launch index bdaf1b7f72537b33e8371fca825f52bdd1dd9b5f..c3fe167b2fe767e65823ac5b2e9e8b2c46269a45 100644 --- a/launch/sim_sample.launch +++ b/launch/sim_sample.launch @@ -8,6 +8,9 @@ <arg name="rviz" default="false"/> <arg name="gui" default="true"/> + <arg name="pan_tilt_controller_config_file" default="$(find iri_ana_gazebo)/config/ana_pan_tilt_effort_sim_config.yaml" /> + <arg name="pan_tilt_controller" default="effort_controller" /> + <include file="$(find iri_gazebo_worlds)/launch/test.launch"> <arg name="gui" value="$(arg gui)"/> <arg name="world_name" value="$(arg world_name)"/> @@ -21,6 +24,8 @@ <arg name="x" value="0.0"/> <arg name="y" value="0.0"/> <arg name="yaw" value="0.0"/> + <arg name="pan_tilt_controller_config_file" value="$(arg pan_tilt_controller_config_file)"/> + <arg name="pan_tilt_controller" value="$(arg pan_tilt_controller)"/> </include> <include file="$(find iri_rosnav)/launch/include/cmd_vel_mux.launch"> diff --git a/launch/spawn.launch b/launch/spawn.launch index 9a350e713af1ca95e2fd9cb76e0395c937fb6e65..d11e9f27ff341103e15746fd7ac63b4667dbd7f2 100644 --- a/launch/spawn.launch +++ b/launch/spawn.launch @@ -6,6 +6,9 @@ <arg name="x" default="0.0"/> <arg name="y" default="0.0"/> <arg name="yaw" default="0.0"/> + + <arg name="pan_tilt_controller_config_file" default="$(find iri_ana_gazebo)/config/ana_pan_tilt_effort_sim_config.yaml" /> + <arg name="pan_tilt_controller" default="effort_controller" /> <include file="$(find iri_ana_description)/launch/description.launch"> <arg name="ns" value="$(arg ns)"/> @@ -22,4 +25,10 @@ </group> + <include file="$(find iri_joint_trajectory_gazebo)/launch/iri_joint_trajectory_gazebo.launch"> + <arg name="config_file" value="$(arg pan_tilt_controller_config_file)"/> + <arg name="controller" value="$(arg pan_tilt_controller)"/> + <arg name="robot_ns" value="$(arg ns)"/> + </include> + </launch> diff --git a/package.xml b/package.xml index 67befa1b56a0d86f30826b74b6761a80adf66866..a656f55b48bf1bd26decb1f51235b4efe974b3eb 100644 --- a/package.xml +++ b/package.xml @@ -55,6 +55,8 @@ <exec_depend>iri_depth_camera_gazebo</exec_depend> <exec_depend>iri_imu_gazebo</exec_depend> <exec_depend>iri_velodyne_gazebo</exec_depend> + <exec_depend>iri_dynamixel_pan_tilt_gazebo</exec_depend> + <exec_depend>iri_joint_trajectory_gazebo</exec_depend> <!-- The export tag contains other, unspecified, tags -->