From a6e56056f7ddca9291162614638c0e18a8f2a0d7 Mon Sep 17 00:00:00 2001 From: rschoene <rene.schoene@tu-dresden.de> Date: Thu, 6 May 2021 16:41:35 +0200 Subject: [PATCH] use reachability connection instead of dummies --- .../main/java/de/tudresden/inf/st/placeB/MainB.java | 12 +++++++++--- ros3rag.placeB/src/main/resources/config-b.yaml | 2 +- 2 files changed, 10 insertions(+), 4 deletions(-) diff --git a/ros3rag.placeB/src/main/java/de/tudresden/inf/st/placeB/MainB.java b/ros3rag.placeB/src/main/java/de/tudresden/inf/st/placeB/MainB.java index f41e113..5c7ae32 100644 --- a/ros3rag.placeB/src/main/java/de/tudresden/inf/st/placeB/MainB.java +++ b/ros3rag.placeB/src/main/java/de/tudresden/inf/st/placeB/MainB.java @@ -29,8 +29,9 @@ public class MainB { private final static String TOPIC_EXIT = "place-b/exit"; private final static String TOPIC_MY_SCENE_INIT = "place-b/init"; + private final static String TOPIC_ROBOT_REACHABILITY = "place-b/reachability/%s"; private final static String TOPIC_MY_SCENE_UPDATE_FROM_ROS = "place-b/scene/update"; - private final static String TOPIC_COMMANDS = "place-b/commands"; + private final static String TOPIC_COMMAND = "place-b/command"; private final static String TOPIC_OTHER_SCENE_UPDATE_FROM_PLACE_A = "place-a/logical/update"; @@ -69,7 +70,12 @@ public class MainB { ); Scene myScene = UtilB.convert(scene); model.setMyScene(myScene); - Util.extractRobotNames(scene).forEach(name -> model.addRobot(UtilB.createRobot(name))); + for (String name : Util.extractRobotNames(scene)) { + Robot robot = UtilB.createRobot(name); + model.addRobot(robot); + // assumption: robots do not change during runtime, so we have stable connections + robot.connectCanReachObjectOfInterestWrapper(mqttUri(String.format(TOPIC_ROBOT_REACHABILITY, name), config)); + } /// Set (dummy) reachability, if configured if (config.useReachability) { @@ -91,7 +97,7 @@ public class MainB { /// Connect endpoints model.connectMyScene(mqttUri(TOPIC_MY_SCENE_UPDATE_FROM_ROS, config)); model.connectOtherScene(mqttUri(TOPIC_OTHER_SCENE_UPDATE_FROM_PLACE_A, config)); - model.connectNextOperation(mqttUri(TOPIC_COMMANDS, config), false); + model.connectNextOperation(mqttUri(TOPIC_COMMAND, config), false); logStatus("Start"); diff --git a/ros3rag.placeB/src/main/resources/config-b.yaml b/ros3rag.placeB/src/main/resources/config-b.yaml index 91aa941..e4f1aa8 100644 --- a/ros3rag.placeB/src/main/resources/config-b.yaml +++ b/ros3rag.placeB/src/main/resources/config-b.yaml @@ -1,6 +1,6 @@ mqttHost: "localhost" filenameInitialScene: "src/main/resources/config-scene-b.json" -useReachability: true +useReachability: false reachability: - idRobot: "arm1" filename: "src/main/resources/dummy-reachability-b-arm1.json" -- GitLab