Pārlūkot izejas kodu

Improve status messages for dso

anfeny 8 mēneši atpakaļ
vecāks
revīzija
8bc3f8b2d8
1 mainītis faili ar 3 papildinājumiem un 3 dzēšanām
  1. 3 3
      simulator/devs_models/dso.py

+ 3 - 3
simulator/devs_models/dso.py

@@ -63,8 +63,8 @@ class DSO(AtomicDEVS):
         phase = self.state.phase.next() if use_next_phase else self.state.phase
         # active = 1 if (self.state.workpiece is not None) else 0
         # code = 1 if (phase == DsoPhase.IDLE) else 0 # TODO: figure out this logic
-        active = 1 if (phase == DsoPhase.WP_RECEIVED) else 0
-        code = 0 if (phase == DsoPhase.AWAIT_PICKUP) else 1 # 1 for idle, 0 for not blocked (wp here)
+        active = 1 if (phase == DsoPhase.WP_RECEIVED) else 0 # 1 if active
+        code = 0 if (self.state.workpiece) else 1 # 0 if workpiece
 
         message = MqttMessage()
         message.topic = "f/i/state/dso"
@@ -115,7 +115,7 @@ class DSO(AtomicDEVS):
         if self.state.phase == DsoPhase.PICKUP:
             return {self.out: [self.state.workpiece], self.mqtt_out: [self.get_status_message()]} # output the workpiece to the collector
 
-        return {}
+        return {self.mqtt_out: [self.get_status_message()]}
 
     def intTransition(self):
         if self.state.visual_update_pending: