Index: dialin/hd/blood_flow.py =================================================================== diff -u -r4bdb012848d1b59be5edc31d677b77b9d95f6190 -r248e2e2c3799d8236da9178ba5c4fd5e51b25776 --- dialin/hd/blood_flow.py (.../blood_flow.py) (revision 4bdb012848d1b59be5edc31d677b77b9d95f6190) +++ dialin/hd/blood_flow.py (.../blood_flow.py) (revision 248e2e2c3799d8236da9178ba5c4fd5e51b25776) @@ -174,18 +174,20 @@ self.measured_blood_pump_mc_current = mccurr[0] self.pwm_duty_cycle_pct = pwm[0] - def cmd_blood_flow_set_point_override(self, flow, reset=NO_RESET): + def cmd_blood_flow_set_point_override(self, flow, mode, reset=NO_RESET): """ Constructs and sends the blood flow set point override command @param flow: integer - flow set point (in mL/min) to override with (negative for reverse direction) + @param mode: integer - 0 for closed loop control mode and 1 for open loop control mode @param reset: integer - 1 to reset a previous override, 0 to override @return: 1 if successful, zero otherwise """ rst = integer_to_bytearray(reset) flo = integer_to_bytearray(flow) - payload = rst + flo + mod = integer_to_bytearray(mode) + payload = rst + flo + mod message = DenaliMessage.build_message(channel_id=DenaliChannels.dialin_to_hd_ch_id, message_id=self.MSG_ID_HD_BLOOD_FLOW_SET_RATE_OVERRIDE, Index: tests/hd_test_pumps_open_loop.py =================================================================== diff -u -r31e54f25bc55ee863fbec78bc23dabdaac30e114 -r248e2e2c3799d8236da9178ba5c4fd5e51b25776 --- tests/hd_test_pumps_open_loop.py (.../hd_test_pumps_open_loop.py) (revision 31e54f25bc55ee863fbec78bc23dabdaac30e114) +++ tests/hd_test_pumps_open_loop.py (.../hd_test_pumps_open_loop.py) (revision 248e2e2c3799d8236da9178ba5c4fd5e51b25776) @@ -38,8 +38,8 @@ # Set HD open loop pumps flow rates in mL/min HD_BLOOD_PUMP_FLOW_RATE = 200 - HD_DIALYSATE_PUMP_IN_FLOW_RATE = 200 - HD_DIALYSATE_PUMP_OUT_FLOW_RATE = 200 + #HD_DIALYSATE_PUMP_IN_FLOW_RATE = 200 + #HD_DIALYSATE_PUMP_OUT_FLOW_RATE = 200 # Log in to HD as tester if hd.cmd_log_in_to_hd() == 0: @@ -50,44 +50,44 @@ # Reset all flow rate broadcast intervals hd.bloodflow.cmd_blood_flow_broadcast_interval_override(RESET, 0) sleep(1) - hd.dialysate_inlet_flow.cmd_dialysate_inlet_flow_broadcast_interval_override(RESET, 0) - sleep(1) - hd.dialysate_outlet_flow.cmd_dialysate_outlet_flow_broadcast_interval_override(RESET, 0) - sleep(1) + #hd.dialysate_inlet_flow.cmd_dialysate_inlet_flow_broadcast_interval_override(RESET, 0) + #sleep(1) + #hd.dialysate_outlet_flow.cmd_dialysate_outlet_flow_broadcast_interval_override(RESET, 0) + #sleep(1) # Reset all flow rate set points hd.bloodflow.cmd_blood_flow_set_point_override(RESET, 0) sleep(1) - hd.dialysate_inlet_flow.cmd_dialysate_inlet_flow_set_point_override(RESET, 0) - sleep(1) - hd.dialysate_outlet_flow.cmd_dialysate_outlet_flow_set_point_override(RESET, 0) - sleep(1) + #hd.dialysate_inlet_flow.cmd_dialysate_inlet_flow_set_point_override(RESET, 0) + #sleep(1) + #hd.dialysate_outlet_flow.cmd_dialysate_outlet_flow_set_point_override(RESET, 0) + #sleep(1) # Reset all flow rate measures hd.bloodflow.cmd_blood_flow_measured_override(RESET, 0) sleep(1) - hd.dialysate_inlet_flow.cmd_dialysate_inlet_flow_measured_override(RESET, 0) - sleep(1) - hd.dialysate_outlet_flow.cmd_dialysate_outlet_flow_measured_override(RESET, 0) - sleep(1) + #hd.dialysate_inlet_flow.cmd_dialysate_inlet_flow_measured_override(RESET, 0) + #sleep(1) + #hd.dialysate_outlet_flow.cmd_dialysate_outlet_flow_measured_override(RESET, 0) + #sleep(1) # Set HD pumps flow rates (open loop) hd.bloodflow.cmd_blood_flow_set_point_override(HD_BLOOD_PUMP_FLOW_RATE, PUMP_CONTROL_MODE_OPEN_LOOP) - hd.dialysate_inlet_flow.cmd_dialysate_inlet_flow_set_point_override(HD_DIALYSATE_PUMP_IN_FLOW_RATE, PUMP_CONTROL_MODE_OPEN_LOOP) - hd.dialysate_outlet_flow.cmd_dialysate_outlet_flow_set_point_override(HD_DIALYSATE_PUMP_OUT_FLOW_RATE, PUMP_CONTROL_MODE_OPEN_LOOP) + #hd.dialysate_inlet_flow.cmd_dialysate_inlet_flow_set_point_override(HD_DIALYSATE_PUMP_IN_FLOW_RATE, PUMP_CONTROL_MODE_OPEN_LOOP) + #hd.dialysate_outlet_flow.cmd_dialysate_outlet_flow_set_point_override(HD_DIALYSATE_PUMP_OUT_FLOW_RATE, PUMP_CONTROL_MODE_OPEN_LOOP) sleep(5) print("Blood Flow Target = {}".format(hd.bloodflow.target_blood_flow_rate)) - print("Dialysate Flow In Target = {}".format(hd.dialysate_inlet_flow.target_dialysate_inlet_flow_rate)) - print("Dialysate Flow Out Target = {}".format(hd.dialysate_outlet_flow.target_dialysate_outlet_flow_rate)) + #print("Dialysate Flow In Target = {}".format(hd.dialysate_inlet_flow.target_dialysate_inlet_flow_rate)) + #print("Dialysate Flow Out Target = {}".format(hd.dialysate_outlet_flow.target_dialysate_outlet_flow_rate)) sleep(1) i = 0 while True: sleep(0.5) print("Measured Blood Flow = {} mL/min".format(hd.bloodflow.measured_blood_flow_rate)) - print("Measured Dialysate Flow In = {} mL/min".format(hd.dialysate_inlet_flow.measured_dialysate_inlet_flow_rate)) - print("Measured Dialysate Flow Out = {} mL/min".format(hd.dialysate_outlet_flow.measured_dialysate_outlet_flow_rate)) + #print("Measured Dialysate Flow In = {} mL/min".format(hd.dialysate_inlet_flow.measured_dialysate_inlet_flow_rate)) + #print("Measured Dialysate Flow Out = {} mL/min".format(hd.dialysate_outlet_flow.measured_dialysate_outlet_flow_rate)) if i > 0 and i % 60 == 0: resp = input("Press 'Enter' to continue or 'q' to quit: ") if resp.lower() == "q":