Skip to content

Conversation

@AksonovSergei
Copy link
Member

No description provided.

@AksonovSergei AksonovSergei linked an issue May 13, 2025 that may be closed by this pull request
Copy link

Copilot AI left a comment

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Pull Request Overview

This pull request is intended to address Issue #30 by updating and correcting various aspects of the robot’s URDF description. Key changes include:

  • Adjusted base and wheel properties, visual meshes, and joint specifications in the robot_core.xacro.
  • Removed unused xacro includes in robot.urdf.xacro and replaced the lidar Collada mesh with an STL.
  • Updated material definitions and modified the parent link and origin settings for the lidar and IMU.

Reviewed Changes

Copilot reviewed 9 out of 9 changed files in this pull request and generated no comments.

Show a summary per file
File Description
description/robot_core.xacro Revised dimensions, mass calculations, visual meshes, and joint type adjustments.
description/robot.urdf.xacro Removed camera and water_tank includes to streamline the URDF.
description/meshes/lidar.dae Removed outdated Collada file as the lidar mesh is now provided in STL format.
description/materials.xacro Added a new yellow material.
description/lidar.xacro Updated the joint’s parent link and origin, and switched to an STL mesh for the lidar.
description/imu.xacro Updated the IMU origin to reflect the corrected sensor placement.
Comments suppressed due to low confidence (3)

description/robot_core.xacro:86

  • Changing the wheel joint type from 'continuous' to 'fixed' disables rotational actuation. Confirm that this change is intended for the robot's design.
<joint name="${prefix}_joint" type="fixed">

description/lidar.xacro:5

  • The parent link for the laser_joint was changed from 'water_tank_link' to 'base_link'. Verify that this update correctly reflects the intended physical connection in the robot.
<parent link="base_link"/>

description/imu.xacro:6

  • The IMU origin was shifted from '0.0 0 0.068' to '-0.036 0.039 0.015'. Please ensure that these new offsets accurately represent the sensor's physical placement.
<origin xyz="-0.036 0.039 0.015" rpy="0 0 0"/>

@ChVictoria
Copy link
Contributor

I have errors related to ros2 control:

[ros2-7] Traceback (most recent call last):
[ros2-7]   File "/opt/ros/jazzy/bin/ros2", line 33, in <module>
[ros2-7]     sys.exit(load_entry_point('ros2cli==0.32.2', 'console_scripts', 'ros2')())
[ros2-7]              ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[ros2-7]   File "/opt/ros/jazzy/lib/python3.12/site-packages/ros2cli/cli.py", line 91, in main
[ros2-7]     rc = extension.main(parser=parser, args=args)
[ros2-7]          ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[ros2-7]   File "/opt/ros/jazzy/lib/python3.12/site-packages/ros2controlcli/command/control.py", line 37, in main
[ros2-7]     return extension.main(args=args)
[ros2-7]            ^^^^^^^^^^^^^^^^^^^^^^^^^
[ros2-7]   File "/opt/ros/jazzy/lib/python3.12/site-packages/ros2controlcli/verb/load_controller.py", line 56, in main
[ros2-7]     controllers = list_controllers(node, args.controller_manager, 20.0).controller
[ros2-7]                   ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[ros2-7]   File "/opt/ros/jazzy/lib/python3.12/site-packages/controller_manager/controller_manager_services.py", line 172, in list_controllers
[ros2-7]     return service_caller(
[ros2-7]            ^^^^^^^^^^^^^^^
[ros2-7]   File "/opt/ros/jazzy/lib/python3.12/site-packages/controller_manager/controller_manager_services.py", line 132, in service_caller
[ros2-7]     raise ServiceNotFoundError(
[ros2-7] controller_manager.controller_manager_services.ServiceNotFoundError: Could not contact service /controller_manager/list_controllers
[ERROR] [ros2-7]: process has died [pid 20043, exit code 1, cmd 'ros2 control load_controller --set-state active diff_drive_controller'].
[ros2-6] Traceback (most recent call last):
[ros2-6]   File "/opt/ros/jazzy/bin/ros2", line 33, in <module>
[ros2-6]     sys.exit(load_entry_point('ros2cli==0.32.2', 'console_scripts', 'ros2')())
[ros2-6]              ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[ros2-6]   File "/opt/ros/jazzy/lib/python3.12/site-packages/ros2cli/cli.py", line 91, in main
[ros2-6]     rc = extension.main(parser=parser, args=args)
[ros2-6]          ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[ros2-6]   File "/opt/ros/jazzy/lib/python3.12/site-packages/ros2controlcli/command/control.py", line 37, in main
[ros2-6]     return extension.main(args=args)
[ros2-6]            ^^^^^^^^^^^^^^^^^^^^^^^^^
[ros2-6]   File "/opt/ros/jazzy/lib/python3.12/site-packages/ros2controlcli/verb/load_controller.py", line 56, in main
[ros2-6]     controllers = list_controllers(node, args.controller_manager, 20.0).controller
[ros2-6]                   ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[ros2-6]   File "/opt/ros/jazzy/lib/python3.12/site-packages/controller_manager/controller_manager_services.py", line 172, in list_controllers
[ros2-6]     return service_caller(
[ros2-6]            ^^^^^^^^^^^^^^^
[ros2-6]   File "/opt/ros/jazzy/lib/python3.12/site-packages/controller_manager/controller_manager_services.py", line 132, in service_caller
[ros2-6]     raise ServiceNotFoundError(
[ros2-6] controller_manager.controller_manager_services.ServiceNotFoundError: Could not contact service /controller_manager/list_controllers
[ERROR] [ros2-6]: process has died [pid 20042, exit code 1, cmd 'ros2 control load_controller --set-state active joint_state_broadcaster'].

@ChVictoria
Copy link
Contributor

And also gazebo cannot find meshes:

[gazebo-1] [Wrn] [ColladaLoader.cc:2395] Triangle input semantic: 'COLOR' is currently not supported
[gazebo-1] [Err] [SystemPaths.cc:425] Unable to find file with URI [model://kpi_rover/description/meshes/kpi_rover_body.stl]
[gazebo-1] [Err] [SystemPaths.cc:525] Could not resolve file [model://kpi_rover/description/meshes/kpi_rover_body.stl]
[gazebo-1] [Err] [MeshManager.cc:211] Unable to find file[model://kpi_rover/description/meshes/kpi_rover_body.stl]
[gazebo-1] [Wrn] [Util.cc:859] Failed to load mesh from [model://kpi_rover/description/meshes/kpi_rover_body.stl].
[gazebo-1] [Err] [SystemPaths.cc:425] Unable to find file with URI [model://kpi_rover/description/meshes/wheel.stl]
[gazebo-1] [Err] [SystemPaths.cc:525] Could not resolve file [model://kpi_rover/description/meshes/wheel.stl]
[gazebo-1] [Err] [MeshManager.cc:211] Unable to find file[model://kpi_rover/description/meshes/wheel.stl]
[gazebo-1] [Wrn] [Util.cc:859] Failed to load mesh from [model://kpi_rover/description/meshes/wheel.stl].
[gazebo-1] [Err] [SystemPaths.cc:425] Unable to find file with URI [model://kpi_rover/description/meshes/wheel.stl]
[gazebo-1] [Err] [SystemPaths.cc:525] Could not resolve file [model://kpi_rover/description/meshes/wheel.stl]
[gazebo-1] [Err] [MeshManager.cc:211] Unable to find file[model://kpi_rover/description/meshes/wheel.stl]
[gazebo-1] [Wrn] [Util.cc:859] Failed to load mesh from [model://kpi_rover/description/meshes/wheel.stl].
[gazebo-1] [Err] [SystemPaths.cc:425] Unable to find file with URI [model://kpi_rover/description/meshes/wheel.stl]
[gazebo-1] [Err] [SystemPaths.cc:525] Could not resolve file [model://kpi_rover/description/meshes/wheel.stl]
[gazebo-1] [Err] [MeshManager.cc:211] Unable to find file[model://kpi_rover/description/meshes/wheel.stl]
[gazebo-1] [Wrn] [Util.cc:859] Failed to load mesh from [model://kpi_rover/description/meshes/wheel.stl].
[gazebo-1] [Err] [SystemPaths.cc:425] Unable to find file with URI [model://kpi_rover/description/meshes/wheel.stl]
[gazebo-1] [Err] [SystemPaths.cc:525] Could not resolve file [model://kpi_rover/description/meshes/wheel.stl]
[gazebo-1] [Err] [MeshManager.cc:211] Unable to find file[model://kpi_rover/description/meshes/wheel.stl]
[gazebo-1] [Wrn] [Util.cc:859] Failed to load mesh from [model://kpi_rover/description/meshes/wheel.stl].

@AksonovSergei
Copy link
Member Author

@ChVictoria
How to reproduce this issue?

@ChVictoria
Copy link
Contributor

I run it in the simulation without using Docker:

cd ros_ws
colcon build
source install/setup.bash
ros2 launch kpi_rover launch_sim.launch.py

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

Fix URDF

4 participants