Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

[GSOC-87] Robot models with sensor plugins #16

Closed
wants to merge 0 commits into from
Closed

Conversation

rakeshv24
Copy link
Collaborator

@rakeshv24 rakeshv24 commented Aug 29, 2024

This PR includes the following updates:

  1. Added Gazebo plugins for the sensor and DVL systems to the world files.
  2. Removed the redundant DVL world file.
  3. Made a minor modification to the topic name in the sea-pressure sensor plugin's source code.
  4. Integrated all relevant sensor plugins for the rexrov and glider_slocum models.
  5. Created separate launch files for each robot model to initialize a ros_gz_bridge node properly.
  6. Combined dave_robot_launch package with dave_demos for generality.

Documentation: Link

@rakeshv24 rakeshv24 self-assigned this Aug 29, 2024
Comment on lines 141 to 166
# Include the Rexrov launch file if the namespace is "rexrov"
rexrov_launch = IncludeLaunchDescription(
PythonLaunchDescriptionSource(
PathJoinSubstitution(
[FindPackageShare("dave_robot_models"), "launch", "rexrov.launch.py"]
)
),
condition=IfCondition(EqualsSubstitution(namespace, "rexrov")),
)

# Include the Glider launch file if the namespace is "glider_slocum"
glider_launch = IncludeLaunchDescription(
PythonLaunchDescriptionSource(
PathJoinSubstitution(
[
FindPackageShare("dave_robot_models"),
"launch",
"glider_slocum.launch.py",
]
)
),
condition=IfCondition(EqualsSubstitution(namespace, "glider_slocum")),
)

include = [rexrov_launch, glider_launch]

Copy link

@woensug-choi woensug-choi Sep 4, 2024

Choose a reason for hiding this comment

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

@rakeshv24 Could we have those ros_gz_bridge launch files in the each robot's description folder along with the model.sdf? I think those ros_gz configurations are more like descriptions for each robot

Example structure:

  • dave_robot_models
    • description
      • glider_slocum
        • model.sdf
        • ros_gz_bridge.py
      • rexrov
        • model.sdf
        • ros_gz_bridge.py

Choose a reason for hiding this comment

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

This way, we don't need IfCondition and keep upload_robot.launch.py unchanged when adding new robots

Copy link
Collaborator Author

Choose a reason for hiding this comment

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

Sure that is a good idea. Let me try that out!

Copy link
Collaborator Author

Choose a reason for hiding this comment

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

@woensug-choi but how do we invoke those ros_gz_bridge.py files? Don't we still need to use the IfCondition for it?

Copy link

@woensug-choi woensug-choi Sep 4, 2024

Choose a reason for hiding this comment

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

@rakeshv24 something like this?

    ros_gz_bridge = [IncludeLaunchDescription(
        PythonLaunchDescriptionSource(
            PathJoinSubstitution(
                [
                    FindPackageShare("dave_robot_models"),
                    "description",
                    namespace,
                    "ros_gz_bridge.py",
                ]
            )
        ),
    )]

Copy link
Collaborator Author

Choose a reason for hiding this comment

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

Sounds good!

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.

2 participants