Skip to content

Commit 9ddb154

Browse files
authored
Resolved bug in BlueROV2 Heavy and Heavy Reach launch configurations (#193)
* Fixed ardusub_gazebo install and mavros configurations * Remapped controller manager topic to robot state publisher topic * Added missing gstreamer dependency
1 parent 3c1a0e6 commit 9ddb154

File tree

5 files changed

+16
-62
lines changed

5 files changed

+16
-62
lines changed

.docker/Dockerfile

Lines changed: 6 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -81,6 +81,9 @@ RUN sudo apt-get -q update \
8181
gstreamer1.0-plugins-ugly \
8282
gstreamer1.0-plugins-bad \
8383
gstreamer1.0-libav \
84+
libgstreamer1.0-dev \
85+
gstreamer1.0-gl \
86+
libgstreamer-plugins-base1.0-dev \
8487
&& sudo apt-get autoremove -y \
8588
&& sudo apt-get clean -y \
8689
&& sudo rm -rf /var/lib/apt/lists/*
@@ -118,6 +121,9 @@ RUN sudo apt-get -q update \
118121
python3-wxgtk4.0 \
119122
rapidjson-dev \
120123
xterm \
124+
libgz-sim7-dev \
125+
rapidjson-dev \
126+
libopencv-dev \
121127
&& sudo apt-get autoremove -y \
122128
&& sudo apt-get clean -y \
123129
&& sudo rm -rf /var/lib/apt/lists/*

blue_bringup/launch/bluerov2_heavy/bluerov2_heavy.launch.yaml

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -43,7 +43,7 @@ launch:
4343

4444
- arg:
4545
name: mavros_file
46-
default: $(find-pkg-share blue_description)/config/mavros.yaml
46+
default: $(find-pkg-share blue_description)/config/ardusub/mavros.yaml
4747

4848
- arg:
4949
name: manager_file

blue_bringup/launch/bluerov2_heavy_reach/bluerov2_heavy_reach.launch.yaml

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -43,7 +43,7 @@ launch:
4343

4444
- arg:
4545
name: mavros_file
46-
default: $(find-pkg-share blue_description)/config/mavros.yaml
46+
default: $(find-pkg-share blue_description)/config/ardusub/mavros.yaml
4747

4848
- arg:
4949
name: manager_file

blue_demos/control_integration/launch/bluerov2_controllers.launch.py

Lines changed: 4 additions & 30 deletions
Original file line numberDiff line numberDiff line change
@@ -21,12 +21,7 @@
2121
from launch import LaunchDescription
2222
from launch.actions import DeclareLaunchArgument, RegisterEventHandler
2323
from launch.event_handlers import OnProcessExit
24-
from launch.substitutions import (
25-
Command,
26-
FindExecutable,
27-
LaunchConfiguration,
28-
PathJoinSubstitution,
29-
)
24+
from launch.substitutions import PathJoinSubstitution
3025
from launch_ros.actions import Node
3126
from launch_ros.substitutions import FindPackageShare
3227

@@ -52,29 +47,6 @@ def generate_launch_description() -> LaunchDescription:
5247
),
5348
]
5449

55-
robot_description_content = Command(
56-
[
57-
PathJoinSubstitution([FindExecutable(name="xacro")]),
58-
" ",
59-
PathJoinSubstitution(
60-
[
61-
FindPackageShare("blue_demos"),
62-
"control_integration",
63-
"description",
64-
"urdf",
65-
"bluerov2.config.xacro",
66-
]
67-
),
68-
" ",
69-
"prefix:=",
70-
LaunchConfiguration("prefix"),
71-
" ",
72-
"use_sim:=",
73-
LaunchConfiguration("use_sim"),
74-
]
75-
)
76-
robot_description = {"robot_description": robot_description_content}
77-
7850
# The ISMC expects state information to be provided in the FSD frame
7951
mobile_to_maritime_velocity_state = Node(
8052
package="mobile_to_maritime",
@@ -95,7 +67,6 @@ def generate_launch_description() -> LaunchDescription:
9567
executable="ros2_control_node",
9668
output="both",
9769
parameters=[
98-
robot_description,
9970
PathJoinSubstitution(
10071
[
10172
FindPackageShare("blue_demos"),
@@ -105,6 +76,9 @@ def generate_launch_description() -> LaunchDescription:
10576
]
10677
),
10778
],
79+
remappings=[
80+
("/controller_manager/robot_description", "/robot_description"),
81+
],
10882
)
10983

11084
velocity_controller_spawner = Node(

blue_demos/control_integration/launch/bluerov2_heavy_controllers.launch.py

Lines changed: 4 additions & 30 deletions
Original file line numberDiff line numberDiff line change
@@ -21,12 +21,7 @@
2121
from launch import LaunchDescription
2222
from launch.actions import DeclareLaunchArgument, RegisterEventHandler
2323
from launch.event_handlers import OnProcessExit
24-
from launch.substitutions import (
25-
Command,
26-
FindExecutable,
27-
LaunchConfiguration,
28-
PathJoinSubstitution,
29-
)
24+
from launch.substitutions import PathJoinSubstitution
3025
from launch_ros.actions import Node
3126
from launch_ros.substitutions import FindPackageShare
3227

@@ -51,29 +46,6 @@ def generate_launch_description() -> LaunchDescription:
5146
),
5247
]
5348

54-
robot_description_content = Command(
55-
[
56-
PathJoinSubstitution([FindExecutable(name="xacro")]),
57-
" ",
58-
PathJoinSubstitution(
59-
[
60-
FindPackageShare("blue_demos"),
61-
"control_integration",
62-
"description",
63-
"urdf",
64-
"bluerov2_heavy.config.xacro",
65-
]
66-
),
67-
" ",
68-
"prefix:=",
69-
LaunchConfiguration("prefix"),
70-
" ",
71-
"use_sim:=",
72-
LaunchConfiguration("use_sim"),
73-
]
74-
)
75-
robot_description = {"robot_description": robot_description_content}
76-
7749
# The ISMC expects state information to be provided in the FSD frame
7850
mobile_to_maritime_velocity_state = Node(
7951
package="mobile_to_maritime",
@@ -94,7 +66,6 @@ def generate_launch_description() -> LaunchDescription:
9466
executable="ros2_control_node",
9567
output="both",
9668
parameters=[
97-
robot_description,
9869
PathJoinSubstitution(
9970
[
10071
FindPackageShare("blue_demos"),
@@ -104,6 +75,9 @@ def generate_launch_description() -> LaunchDescription:
10475
]
10576
),
10677
],
78+
remappings=[
79+
("/controller_manager/robot_description", "/robot_description"),
80+
],
10781
)
10882

10983
velocity_controller_spawner = Node(

0 commit comments

Comments
 (0)