Remove localisation logic from Flotilla #1850
Labels
backend
Backend related functionality
epic
improvement
Improvement to existing functionality
Northern Lights
Describe the improvement you would like to see
Localisation status for robots should be treated like any other robot status from ISAR. If a robot is not Offline or Delocalised, it should be assumed to be localised.
How will this change existing functionality?
Localisation (the state if the robot is localized or not) will still be stored in Flotilla, but it will be regarded as telemetry from ISAR, for information not to control the mission flow. As a result, we should no longer set it as a value in Flotilla besides in MQTT event handler, and we should not base mission start logic on it. It a robot is Available, we should assume that it's ready to run missions. Of course, if the mission failure reason for a robot is stated as being caused by delocalisation, we do not need to try to schedule the following missions, but if we do they will fail anyways.
In short, Localisation will be handled by ISAR. We should still send "dock" flags on missions when the queue is empty, as this is not something ISAR is aware of, but ISAR will be aware of when to undock the robot. We also no longer need to send a localisation pose in missions, as this should be handled in ISAR, but this can be relegated to another issue/PR.
ISAR can know its own "dock" position, set in configuration per instance. We can assume only one dock/home/localization position per robot for now.
How will this improvement affect the current Threat Model?
N/A
The text was updated successfully, but these errors were encountered: