Skip to content

Commit 289f6e0

Browse files
authored
Implemented a controller coordinator (#63)
* Fixed stale demos * Update package versions * Fix obsolete tf2 header * Added a coordinator to activate controllers/hardware * Address pr comments
1 parent c8d798e commit 289f6e0

File tree

30 files changed

+401
-11
lines changed

30 files changed

+401
-11
lines changed

auv_control_demos/CHANGELOG.md

Lines changed: 2 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -1,5 +1,7 @@
11
# Changelog for package auv_control_demos
22

3+
## 0.3.0 (2025-06-07)
4+
35
## 0.2.1 (2025-06-03)
46

57
- Updates the individual_controller and chained_controllers demos to use the

auv_control_demos/package.xml

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -3,7 +3,7 @@
33
<package format="3">
44

55
<name>auv_control_demos</name>
6-
<version>0.2.1</version>
6+
<version>0.3.0</version>
77
<description>Example package that includes demos for using auv_controllers in individual and chained modes</description>
88

99
<maintainer email="[email protected]">Colin Mitchell</maintainer>

auv_control_msgs/CHANGELOG.md

Lines changed: 2 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -1,5 +1,7 @@
11
# Changelog for package auv_control_msgs
22

3+
## 0.3.0 (2025-06-07)
4+
35
## 0.2.1 (2025-06-03)
46

57
## 0.2.0 (2025-05-03)

auv_control_msgs/package.xml

Lines changed: 2 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -1,8 +1,9 @@
11
<?xml version="1.0"?>
22
<?xml-model href="http://download.ros.org/schema/package_format3.xsd" schematypens="http://www.w3.org/2001/XMLSchema"?>
33
<package format="3">
4+
45
<name>auv_control_msgs</name>
5-
<version>0.2.1</version>
6+
<version>0.3.0</version>
67
<description>Custom messages for AUV controllers</description>
78

89
<maintainer email="[email protected]">Rakesh Vivekanandan</maintainer>

auv_controllers/CHANGELOG.md

Lines changed: 4 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -1,5 +1,9 @@
11
# Changelog for package auv_controllers
22

3+
## 0.3.0 (2025-06-07)
4+
5+
- Implements the controller coordinator
6+
37
## 0.2.1 (2025-06-03)
48

59
- Fixes the auv_control_demos configurations

auv_controllers/package.xml

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -3,7 +3,7 @@
33
<package format="3">
44

55
<name>auv_controllers</name>
6-
<version>0.2.1</version>
6+
<version>0.3.0</version>
77
<description>Meta package for auv_controllers</description>
88

99
<maintainer email="[email protected]">Evan Palmer</maintainer>

controller_common/CHANGELOG.md

Lines changed: 2 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -1,5 +1,7 @@
11
# Changelog for package controller_common
22

3+
## 0.3.0 (2025-06-07)
4+
35
## 0.2.1 (2025-06-03)
46

57
## 0.2.0 (2025-05-03)

controller_common/package.xml

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -3,7 +3,7 @@
33
<package format="3">
44

55
<name>controller_common</name>
6-
<version>0.2.1</version>
6+
<version>0.3.0</version>
77
<description>Common interfaces for controllers used in this project</description>
88

99
<maintainer email="[email protected]">Evan Palmer</maintainer>
Lines changed: 6 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,6 @@
1+
# Changelog for package controller_coordinator
2+
3+
## 0.3.0 (2025-06-07)
4+
5+
- Implements a simple service endpoint for activating and deactivating a
6+
control system.
Lines changed: 39 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,39 @@
1+
cmake_minimum_required(VERSION 3.23)
2+
project(controller_coordinator)
3+
4+
if(CMAKE_CXX_COMPILER_ID MATCHES "(GNU|Clang)")
5+
add_compile_options(-Wall -Wextra -Wpedantic)
6+
endif()
7+
8+
include(GNUInstallDirs)
9+
10+
find_package(rclcpp REQUIRED)
11+
find_package(controller_manager_msgs REQUIRED)
12+
find_package(ament_cmake REQUIRED)
13+
find_package(generate_parameter_library REQUIRED)
14+
find_package(std_srvs REQUIRED)
15+
16+
generate_parameter_library(controller_coordinator_parameters src/coordinator_parameters.yaml)
17+
18+
add_executable(controller_coordinator)
19+
target_sources(controller_coordinator PRIVATE src/coordinator.cpp)
20+
21+
target_compile_features(controller_coordinator PUBLIC cxx_std_20)
22+
target_link_libraries(
23+
controller_coordinator
24+
PUBLIC
25+
controller_coordinator_parameters
26+
rclcpp::rclcpp
27+
${controller_manager_msgs_TARGETS}
28+
${std_srvs_TARGETS}
29+
)
30+
31+
install(
32+
TARGETS
33+
controller_coordinator
34+
controller_coordinator_parameters
35+
DESTINATION
36+
lib/controller_coordinator
37+
)
38+
39+
ament_package()

0 commit comments

Comments
 (0)