diff --git a/src/core_rover_description/config/ros2_controllers.yaml b/src/core_rover_description/config/ros2_controllers.yaml
new file mode 100644
index 0000000..c14fbc3
--- /dev/null
+++ b/src/core_rover_description/config/ros2_controllers.yaml
@@ -0,0 +1,35 @@
+controller_manager:
+ ros__parameters:
+ update_rate: 10
+ use_sim_time: true
+
+ diff_controller:
+ type: "diff_drive_controller/DiffDriveController"
+
+ joint_broadcaster:
+ type: "joint_state_broadcaster/JointStateBroadcaster"
+
+diff_controller:
+ ros__parameters:
+ left_wheel_names: ["bl_wheel_joint", "fl_wheel_joint"]
+ right_wheel_names: ["br_wheel_joint", "fr_wheel_joint"]
+
+ wheel_separation: 0.836
+ wheels_per_side: 2
+ wheel_radius: 0.171
+
+ base_frame_id: "base_link"
+ pose_covariance_diagonal: [0.001, 0.001, 0.001, 0.001, 0.001, 0.01]
+ twist_covariance_diagonal: [0.001, 0.001, 0.001, 0.001, 0.001, 0.01]
+
+ position_feedback: true
+ open_loop: false
+ enable_odom_tf: true
+
+ cmd_vel_timeout: 0.5
+ publish_limited_velocity: false
+
+ use_stamped_vel: false
+ publish_rate: 10.0
+
+ # TODO: add reasonable velocity and acceleration limits
diff --git a/src/core_rover_description/launch/display.launch.py b/src/core_rover_description/launch/display.launch.py
index 14a385a..b15f799 100644
--- a/src/core_rover_description/launch/display.launch.py
+++ b/src/core_rover_description/launch/display.launch.py
@@ -21,7 +21,7 @@ def generate_launch_description():
default_rviz_config_path = os.path.join(pkg_share, 'config/rviz_basic_settings.rviz')
# Set the path to the URDF file
- default_urdf_model_path = os.path.join(pkg_share, 'urdf/core_rover_description.urdf')
+ default_urdf_model_path = os.path.join(pkg_share, 'urdf/core_rover_description.xacro')
########### YOU DO NOT NEED TO CHANGE ANYTHING BELOW THIS LINE ##############
# Launch configuration variables specific to simulation
diff --git a/src/core_rover_description/launch/robot_state_publisher.launch.py b/src/core_rover_description/launch/robot_state_publisher.launch.py
index ed3b87b..04bea01 100644
--- a/src/core_rover_description/launch/robot_state_publisher.launch.py
+++ b/src/core_rover_description/launch/robot_state_publisher.launch.py
@@ -115,7 +115,7 @@ def generate_launch_description():
"""
# Define filenames
urdf_package = 'core_rover_description'
- urdf_filename = 'core_rover_description.urdf'
+ urdf_filename = 'core_rover_description.xacro'
rviz_config_filename = 'rviz_basic_settings.rviz'
# Set paths to important files
@@ -233,6 +233,6 @@ def generate_launch_description():
ld.add_action(start_joint_state_publisher_cmd)
ld.add_action(start_joint_state_publisher_gui_cmd)
ld.add_action(start_robot_state_publisher_cmd)
- ld.add_action(start_rviz_cmd)
+ # ld.add_action(start_rviz_cmd)
return ld
diff --git a/src/core_rover_description/urdf/core_rover_description.urdf b/src/core_rover_description/urdf/core_rover.urdf
similarity index 95%
rename from src/core_rover_description/urdf/core_rover_description.urdf
rename to src/core_rover_description/urdf/core_rover.urdf
index bf37292..97f35a5 100644
--- a/src/core_rover_description/urdf/core_rover_description.urdf
+++ b/src/core_rover_description/urdf/core_rover.urdf
@@ -152,7 +152,7 @@
+ xyz="-1 0 0" />
+ xyz="-1 0 0" />
+
+
+
+
+
+
+
\ No newline at end of file
diff --git a/src/core_rover_description/urdf/ros2_control.xacro b/src/core_rover_description/urdf/ros2_control.xacro
new file mode 100644
index 0000000..7924e1f
--- /dev/null
+++ b/src/core_rover_description/urdf/ros2_control.xacro
@@ -0,0 +1,36 @@
+
+
+
+
+
+ gz_ros2_control/GazeboSimSystem
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+ $(find core_rover_description)/config/ros2_controllers.yaml
+
+
+
+
\ No newline at end of file