Index: leahi_dialin/dd/modules/concentrate_pump.py =================================================================== diff -u -r9466b5c6b5867f392104a42608aa9542a7ff0358 -r24490d7f6c02832fd39dcb8d3fc8bd8b8cf853df --- leahi_dialin/dd/modules/concentrate_pump.py (.../concentrate_pump.py) (revision 9466b5c6b5867f392104a42608aa9542a7ff0358) +++ leahi_dialin/dd/modules/concentrate_pump.py (.../concentrate_pump.py) (revision 24490d7f6c02832fd39dcb8d3fc8bd8b8cf853df) @@ -29,8 +29,8 @@ class ConcentratePumpsEnum(DialinEnum): D11_CP1_ACID = 0 D10_CP2_BICARB = 1 + D76_UF = 2 - @unique class DDConcentratePumpsStates(DialinEnum): CONCENTRATE_PUMP_OFF_STATE = 0 @@ -59,24 +59,35 @@ self.can_interface.register_receiving_publication_function(channel_id, msg_id, self._handler_concentrate_pumps_sync) - self.d11_cp1_current_set_speed = 0.0 - self.d11_cp1_measured_speed = 0.0 - self.d11_cp1_target_speed = 0.0 - self.d10_cp2_current_set_speed = 0.0 - self.d10_cp2_measured_speed = 0.0 - self.d10_cp2_target_speed = 0.0 - self.d11_cp1_current_state = 0 - self.d10_cp2_current_state = 0 - self.d11_cp1_target_rev_count = 0 - self.d10_cp2_target_rev_count = 0 - self.d11_cp1_measured_rev_count = 0 - self.d10_cp2_measured_rev_count = 0 - self.d11_cp1_parked = False - self.d10_cp2_parked = False - self.d11_cp1_park_fault = False - self.d10_cp2_park_fault = False - self.d11_cp1_pulse_us = 0.0 - self.d10_cp2_pulse_us = 0.0 + + self.d10_current_state = 0 + self.d10_current_set_speed = 0.0 + self.d10_measured_speed = 0.0 + self.d10_target_speed = 0.0 + self.d10_pulse_us = 0.0 + self.d10_target_rev_count = 0 + self.d10_measured_rev_count = 0 + self.d10_parked = False + self.d10_park_fault = False + + self.d11_current_state = 0 + self.d11_current_set_speed = 0.0 + self.d11_measured_speed = 0.0 + self.d11_target_speed = 0.0 + self.d11_pulse_us = 0.0 + self.d11_target_rev_count = 0 + self.d11_measured_rev_count = 0 + self.d11_parked = False + self.d11_park_fault = False + + self.d76_current_state = 0 + self.d76_current_set_speed = 0.0 + self.d76_measured_speed = 0.0 + self.d76_target_speed = 0.0 + self.d76_pulse_us = 0.0 + self.d76_target_rev_count = 0 + self.d76_measured_rev_count = 0 + self.dd_concentrate_pump_timestamp = 0.0 @publish(["dd_concentrate_pump_timestamp", @@ -86,7 +97,11 @@ "d11_cp1_target_rev_count", "d10_cp2_target_rev_count", "d11_cp1_measured_rev_count", "d10_cp2_measured_rev_count", "d11_cp1_parked", "d10_cp2_parked", - "d11_cp1_park_fault", "d10_cp2_park_fault"]) + "d11_cp1_park_fault", "d10_cp2_park_fault", + "d76_current_state","d76_current_set_speed", + "d76_measured_speed","d76_target_speed", + "d76_pulse_us","d76_target_rev_count", + "d76_measured_rev_count"]) def _handler_concentrate_pumps_sync(self, message, timestamp=0.0): """ Handles published concentrate pumps' data messages. Concentrate pumps' speed data are captured @@ -96,49 +111,56 @@ @return: None """ - self.d11_cp1_current_set_speed = struct.unpack('f', bytearray( + self.d11_current_set_speed = struct.unpack('f', bytearray( message['message'][MsgFieldPositions.START_POS_FIELD_1:MsgFieldPositions.END_POS_FIELD_1]))[0] - self.d11_cp1_measured_speed = struct.unpack('f', bytearray( + self.d11_measured_speed = struct.unpack('f', bytearray( message['message'][MsgFieldPositions.START_POS_FIELD_2:MsgFieldPositions.END_POS_FIELD_2]))[0] - - self.d10_cp2_current_set_speed = struct.unpack('f', bytearray( + self.d10_current_set_speed = struct.unpack('f', bytearray( message['message'][MsgFieldPositions.START_POS_FIELD_3:MsgFieldPositions.END_POS_FIELD_3]))[0] self.d10_cp2_measured_speed = struct.unpack('f', bytearray( message['message'][MsgFieldPositions.START_POS_FIELD_4:MsgFieldPositions.END_POS_FIELD_4]))[0] - - self.d11_cp1_target_rev_count = struct.unpack('i', bytearray( + self.d11_target_rev_count = struct.unpack('i', bytearray( message['message'][MsgFieldPositions.START_POS_FIELD_5:MsgFieldPositions.END_POS_FIELD_5]))[0] - self.d11_cp1_measured_rev_count = struct.unpack('i', bytearray( + self.d11_measured_rev_count = struct.unpack('i', bytearray( message['message'][MsgFieldPositions.START_POS_FIELD_6:MsgFieldPositions.END_POS_FIELD_6]))[0] - self.d10_cp2_target_rev_count = struct.unpack('i', bytearray( + self.d10_target_rev_count = struct.unpack('i', bytearray( message['message'][MsgFieldPositions.START_POS_FIELD_7:MsgFieldPositions.END_POS_FIELD_7]))[0] - self.d10_cp2_measured_rev_count = struct.unpack('i', bytearray( + self.d10_measured_rev_count = struct.unpack('i', bytearray( message['message'][MsgFieldPositions.START_POS_FIELD_8:MsgFieldPositions.END_POS_FIELD_8]))[0] - - self.d11_cp1_current_state = struct.unpack('i', bytearray( + self.d11_current_state = struct.unpack('i', bytearray( message['message'][MsgFieldPositions.START_POS_FIELD_9:MsgFieldPositions.END_POS_FIELD_9]))[0] - self.d10_cp2_current_state = struct.unpack('i', bytearray( + self.d10_current_state = struct.unpack('i', bytearray( message['message'][MsgFieldPositions.START_POS_FIELD_10:MsgFieldPositions.END_POS_FIELD_10]))[0] - - self.d11_cp1_pulse_us = struct.unpack('f', bytearray( + self.d11_pulse_us = struct.unpack('f', bytearray( message['message'][MsgFieldPositions.START_POS_FIELD_11:MsgFieldPositions.END_POS_FIELD_11]))[0] - self.d10_cp2_pulse_us = struct.unpack('f', bytearray( + self.d10_pulse_us = struct.unpack('f', bytearray( message['message'][MsgFieldPositions.START_POS_FIELD_12:MsgFieldPositions.END_POS_FIELD_12]))[0] - - self.d11_cp1_target_speed = struct.unpack('f', bytearray( + self.d11_target_speed = struct.unpack('f', bytearray( message['message'][MsgFieldPositions.START_POS_FIELD_13:MsgFieldPositions.END_POS_FIELD_13]))[0] - self.d10_cp2_target_speed = struct.unpack('f', bytearray( + self.d10_target_speed = struct.unpack('f', bytearray( message['message'][MsgFieldPositions.START_POS_FIELD_14:MsgFieldPositions.END_POS_FIELD_14]))[0] - - self.d11_cp1_parked = True if struct.unpack('I', bytearray( + self.d11_parked = True if struct.unpack('I', bytearray( message['message'][MsgFieldPositions.START_POS_FIELD_15:MsgFieldPositions.END_POS_FIELD_15]))[0] == 1 else False - self.d10_cp2_parked = True if struct.unpack('I', bytearray( + self.d10_parked = True if struct.unpack('I', bytearray( message['message'][MsgFieldPositions.START_POS_FIELD_16:MsgFieldPositions.END_POS_FIELD_16]))[0] == 1 else False - - self.d11_cp1_park_fault = True if struct.unpack('I', bytearray( + self.d11_park_fault = True if struct.unpack('I', bytearray( message['message'][MsgFieldPositions.START_POS_FIELD_17:MsgFieldPositions.END_POS_FIELD_17]))[0] == 1 else False - self.d10_cp2_park_fault = True if struct.unpack('I', bytearray( + self.d10_park_fault = True if struct.unpack('I', bytearray( message['message'][MsgFieldPositions.START_POS_FIELD_18:MsgFieldPositions.END_POS_FIELD_18]))[0] == 1 else False + self.d76_target_speed = struct.unpack('i', bytearray( + message['message'][MsgFieldPositions.START_POS_FIELD_19:MsgFieldPositions.END_POS_FIELD_19]))[0] + self.d76_current_set_speed = struct.unpack('i', bytearray( + message['message'][MsgFieldPositions.START_POS_FIELD_20:MsgFieldPositions.END_POS_FIELD_20]))[0] + self.d76_measured_speed = struct.unpack('f', bytearray( + message['message'][MsgFieldPositions.START_POS_FIELD_21:MsgFieldPositions.END_POS_FIELD_21]))[0] + self.d76_target_rev_count = struct.unpack('f', bytearray( + message['message'][MsgFieldPositions.START_POS_FIELD_22:MsgFieldPositions.END_POS_FIELD_22]))[0] + self.d76_measured_rev_count = struct.unpack('f', bytearray( + message['message'][MsgFieldPositions.START_POS_FIELD_23:MsgFieldPositions.END_POS_FIELD_23]))[0] + self.d76_current_state = struct.unpack('f', bytearray( + message['message'][MsgFieldPositions.START_POS_FIELD_24:MsgFieldPositions.END_POS_FIELD_24]))[0] + self.d76_pulse_us = struct.unpack('f', bytearray( + message['message'][MsgFieldPositions.START_POS_FIELD_25:MsgFieldPositions.END_POS_FIELD_25]))[0] self.dd_concentrate_pump_timestamp = timestamp