########################################################################### # # Copyright (c) 2021-2024 Diality Inc. - All Rights Reserved. # # THIS CODE MAY NOT BE COPIED OR REPRODUCED IN ANY FORM, IN PART OR IN # WHOLE, WITHOUT THE EXPLICIT PERMISSION OF THE COPYRIGHT OWNER. # # @file test_deprime.py # # @author (last) Quang Nguyen # @date (last) 01-Apr-2021 # @author (original) Quang Nguyen # @date (original) 01-Apr-2021 # ############################################################################ import sys sys.path.append("..") from dialin.dg.dialysate_generator import DG from dialin.hd.hemodialysis_device import HD from dialin.hd.valves import ValvesEnum, ValvesPositions from time import sleep def dePrime(): hd.valves.cmd_set_hd_valve_position(ValvesEnum.VDI.value, ValvesPositions.VALVE_POSITION_B_OPEN.value) hd.valves.cmd_set_hd_valve_position(ValvesEnum.VDO.value, ValvesPositions.VALVE_POSITION_B_OPEN.value) hd.valves.cmd_set_hd_valve_position(ValvesEnum.VBA.value, ValvesPositions.VALVE_POSITION_B_OPEN.value) hd.valves.cmd_set_hd_valve_position(ValvesEnum.VBV.value, ValvesPositions.VALVE_POSITION_B_OPEN.value) hd.dialysate_inlet_flow.cmd_dialysate_inlet_flow_set_point_override(400, 1) hd.dialysate_outlet_flow.cmd_dialysate_outlet_flow_set_point_override(400, 1) hd.bloodflow.cmd_blood_flow_set_point_override(400, 1) def drainReservoirs( drainRes ): if ( drainRes == 1 ): dg.reservoirs.cmd_switch_reservoirs(0) else: dg.reservoirs.cmd_switch_reservoirs(1) sleep(1) dg.hd_proxy.cmd_drain(0) sleep(1) while dg.dg_operation_mode == 5: sleep(1) print("In recirc") while dg.dg_operation_mode == 7: sleep(1) print("Draining") print("Drain Completed") if __name__ == "__main__": dg = DG() hd = HD() counter=0 skipDrain=False dg.cmd_log_in_to_dg() hd.cmd_log_in_to_hd() dg.hd_proxy.cmd_start_stop_dg() if skipDrain == False: drainReservoirs(0) drainReservoirs(1) dg.reservoirs.cmd_switch_reservoirs(0) dg.valves.cmd_valve_override(1, dg.valves.VALVE_RESERVOIR_INLET) dePrime() while True: print("COUNTER: {} - HD {} sub-mode {}, DG {} sub-mode {} RO pump {} Res1 {} Res2 {}".format( counter, hd.hd_operation_mode, hd.hd_operation_sub_mode, dg.dg_operation_mode, dg.dg_operation_sub_mode, dg.ro_pump.measured_flow_rate_lpm, dg.load_cells.load_cell_A1, dg.load_cells.load_cell_B1 )) sleep(1) counter = counter + 1 if counter > 60: hd.dialysate_inlet_flow.cmd_dialysate_inlet_flow_set_point_override(0, 1) hd.dialysate_outlet_flow.cmd_dialysate_outlet_flow_set_point_override(0, 1) hd.bloodflow.cmd_blood_flow_set_point_override(0, 1) break