Skip to content

Commit

Permalink
Launch Iris: update README
Browse files Browse the repository at this point in the history
Signed-off-by: Rhys Mainwaring <[email protected]>
  • Loading branch information
srmainwaring committed Apr 16, 2023
1 parent 3525ff4 commit 54c58aa
Showing 1 changed file with 60 additions and 34 deletions.
94 changes: 60 additions & 34 deletions ardupilot_gz/README.md
Original file line number Diff line number Diff line change
@@ -1,25 +1,23 @@
# ardupilot_gz

Adapted from the ros_gz_project_template project integrating ROS and Gazebo simulator
Adapted from the [`ros_gz_project_template`](https://github.com/gazebosim/ros_gz_project_template) project integrating ROS 2 and Gazebo.

## Included packages

* `ardupilot_gz_description` - holds the sdf description of the simulated system and any other assets
* `ardupilot_gz_description` - Contains the sdf description of the simulated
system and any other assets.

* `ardupilot_gz_gazebo` - holds gazebo specific code and configurations. Namely this is where systems end up.
* `ardupilot_gz_gazebo` - Contains Gazebo specific code and configurations such
as system plugins.

* `ardupilot_gz_application` - holds ros2 specific code and configurations
* `ardupilot_gz_application` - Contains ROS 2 specific code and configuration.

* `ardupilot_gz_bringup` - holds launch files and high level utilities
* `ardupilot_gz_bringup` - Contains launch files and high level utilities.


## Install
### Use as template
Directly `Use this template` and create your project repository on github.

### On Host System
##### Requirements
On Ubuntu Jammy
### Dependencies

1. Install [ROS 2 Humble](https://docs.ros.org/en/humble/index.html)

Expand All @@ -29,22 +27,19 @@ On Ubuntu Jammy

`sudo apt install python3-vcstool python3-colcon-common-extensions git wget`

##### Usage
### Usage

1. Create a workspace, for example:

```
mkdir -p ~/template_ws/src
cd ~/template_ws/src
mkdir -p ~/ros2_ws/src
cd ~/ros2_ws/src
```
1. Clone the template:
1. Clone the project:
```
git clone
wget https://raw.githubusercontent.com/gazebosim/ros_gz_project_template/main/template_workspace.yaml
vcs import < template_workspace.yaml
cd ~/template_ws
TBC
```
1. Set the Gazebo version to Garden:
Expand All @@ -64,39 +59,70 @@ On Ubuntu Jammy
1. Build and install
```
cd ~/template_ws
cd ~/ros2_ws
colcon build --cmake-args -DBUILD_TESTING=ON
```
##### Run
### Run
1. Source the workspace
`. ~/template_ws/install/setup.sh`
`. ~/ros2_ws/install/setup.sh`
1. Launch the simulation
`ros2 launch ardupilot_gz_bringup example.launch.py`
`ros2 launch ardupilot_gz_bringup bringup_iris.launch.py`
1. Launch the a GCS
`mavproxy.py --console --map`
1. Inspect topics
```bash
$ ros2 topic list
/ROS2_BatteryState0
/ROS2_NavSatFix0
/ROS2_Time
/clicked_point
/clock
/goal_pose
/initialpose
/iris/odometry
/joint_states
/parameter_events
/robot_description
/rosout
/tf
/tf_static
```
## Notes
1. Additional dependency
`ros_gz` has a dependency on `gps_msgs` from
`ros_gz` has a dependency on `gps_msgs` included in
```bash
git clone https://github.com/swri-robotics/gps_umd.git -b ros2-devel
```
```bash
git clone https://github.com/swri-robotics/gps_umd.git -b ros2-devel
```
Add `COLCON_IGNORE` to `gpsd_client` as this package is not required and
will not build on macOS.
2. sdformat_urdf
1. sdformat_urdf
On macOS the `robot_state_publisher` node cannot load the
`sdformat_urdf_plugin` plugin unless the
suffix is changed:
On macOS the `robot_state_publisher` node cannot load the
`sdformat_urdf_plugin` plugin unless the
suffix is changed:
```bash
cd ./install/sdformat_urdf/lib
ln -s libsdformat_urdf_plugin.so libsdformat_urdf_plugin.dylib
```
```bash
cd ./install/sdformat_urdf/lib
ln -s libsdformat_urdf_plugin.so libsdformat_urdf_plugin.dylib
```
1. Model URIs
The `<uri>` element must use the `package` prefix for resource to be located
by RViz.

0 comments on commit 54c58aa

Please sign in to comment.