|
|
@@ -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:
|