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

ROS: modify iris example to support sdformat_urdf #56

Merged

Conversation

srmainwaring
Copy link
Collaborator

Modifications to support running ArduPilot SITL / Gazebo with ROS 2.

The ros2 branch includes changes to make the iris model compatible with the package sdformat_urdf. The package allows a SDFormat robot model to be used as a robot description by ROS tools such as RViz, however it imposes some restrictions on the model.

Details

Changes to model structure

  • The prefix model://{model_name} must be replaced by package://{package_name}/models/{model_name}.
  • Nested models must use the //model/include/@merge="true" attribute which requires elements in included models to have unique names.

Transform fix

  • An additional rotation is needed to correctly map from the Gazebo ENU world frame to the ArduPilot NED frame.

Rendering

  • The rotor blades are colour coded to match the ArduPilot wiki frame diagrams (Blue => CCW, Green => CW)

Additional sensors

  • The model has additional sensors to illustrate Gazebo sensor capabilities and bridging the topics from Gazebo to ROS.

Future work: merging changes back into main

- Correct <gazeboXYZToNED> transform for Iris to use ENU.
- Colour code rotors in Iris base model.

Signed-off-by: Rhys Mainwaring <[email protected]>
- Use //model/include/@merge
- Update gimbal position.
- Add Pose and Odometry publisher systems.

Signed-off-by: Rhys Mainwaring <[email protected]>
- Add air_pressure, air_speed, altimeter, magnetometer, navsat.

Signed-off-by: Rhys Mainwaring <[email protected]>
- Add simple 3500mHh battery model to Iris.

Signed-off-by: Rhys Mainwaring <[email protected]>
@srmainwaring srmainwaring added the enhancement New feature or request label May 9, 2023
@srmainwaring srmainwaring self-assigned this May 9, 2023
@srmainwaring srmainwaring requested a review from khancyr May 9, 2023 08:35
@srmainwaring srmainwaring merged commit 0830aa9 into ArduPilot:ros2 May 9, 2023
@srmainwaring srmainwaring deleted the prs/pr-ros2-support-sdformat-urdf branch May 9, 2023 08:43
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
enhancement New feature or request
Projects
None yet
Development

Successfully merging this pull request may close these issues.

1 participant