Index: HD/HD_TestScript.py =================================================================== diff -u -r0da0106eca868b9144298c60911710b3414a5837 -rc652777ecb913a96a3bd61ca0bb0c062091f45e3 --- HD/HD_TestScript.py (.../HD_TestScript.py) (revision 0da0106eca868b9144298c60911710b3414a5837) +++ HD/HD_TestScript.py (.../HD_TestScript.py) (revision c652777ecb913a96a3bd61ca0bb0c062091f45e3) @@ -13,49 +13,59 @@ # @brief This is an example test script for the HD. # ############################################################################ -# TODO: Use .format or f" {varname}" instead of casting to string. -# TODO: Break while loops on some condition, shouldn't rely on Ctrl-C. - +from utils import RESET, NO_RESET from HemodialysisDevice import HD from time import sleep if __name__ == "__main__": - hd = HD(can_interface_name="vcan0") + hd = HD() sleep(2) if hd.basics.cmd_log_in_to_hd() == 0: exit(1) - hd.bloodflow.cmd_blood_flow_broadcast_interval_override(hd.RESET, 0) + hd.bloodflow.cmd_blood_flow_broadcast_interval_override(RESET, 0) sleep(2) - print("Blood Flow Target = " + str(hd.bloodflow.TargetBloodFlowRate)) - print("Blood Pump Current= " + str(hd.bloodflow.MeasuredBloodPumpMCCurrent)) + print("Blood Flow Target = {}".format(hd.bloodflow.target_blood_flow_rate)) + print("Blood Pump Current = {}".format(hd.bloodflow.measured_blood_pump_mc_current)) sleep(5) - print("Blood Pump Current= " + str(hd.bloodflow.MeasuredBloodPumpMCCurrent)) + print("Blood Pump Current = {}".format(hd.bloodflow.measured_blood_pump_mc_current)) - hd.bloodflow.cmd_blood_pump_measured_current_override(hd.NO_RESET, 140) + hd.bloodflow.cmd_blood_pump_measured_current_override(NO_RESET, 140) sleep(1) - print("Blood Pump Current= " + str(hd.bloodflow.MeasuredBloodPumpMCCurrent)) + print("Blood Pump Current= {}".format(hd.bloodflow.measured_blood_pump_mc_current)) sleep(5) - hd.bloodflow.cmd_blood_pump_measured_current_override(hd.RESET, 0) + hd.bloodflow.cmd_blood_pump_measured_current_override(RESET, 0) + i = 0 while True: sleep(0.5) - print("Measured Flow = " + str(hd.bloodflow.MeasuredBloodFlowRate) + " mL/min") + print("Measured Flow = {} mL/min".format(hd.bloodflow.measured_blood_flow_rate)) + if i > 0 and i % 60 == 0: + resp = input("Press 'Enter' to continue or 'q' to quit: ") + if resp.lower() == "q": + break + i += 1 tgtRate = 0 - hd.BloodFlow.cmd_blood_flow_broadcast_interval_override(hd.NO_RESET, 2000) + hd.bloodflow.cmd_blood_flow_broadcast_interval_override(NO_RESET, 2000) + i = 0 while True: - if hd.BloodFlow.TargetBloodFlowRate == 0: + if hd.bloodflow.target_blood_flow_rate == 0: if tgtRate != 0: - hd.BloodFlow.cmd_blood_flow_broadcast_interval_override(hd.NO_RESET, 2000) + hd.bloodflow.cmd_blood_flow_broadcast_interval_override(NO_RESET, 2000) tgtRate = 0 else: if tgtRate == 0: - hd.BloodFlow.cmd_blood_flow_broadcast_interval_override(hd.NO_RESET, 200) - tgtRate = hd.BloodFlow.TargetBloodFlowRate + hd.bloodflow.cmd_blood_flow_broadcast_interval_override(NO_RESET, 200) + tgtRate = hd.bloodflow.target_blood_flow_rate + if i > 0 and i % 60 == 0: + resp = input("Press 'Enter' to continue or 'q' to quit: ") + if resp.lower() == "q": + break + i += 1 -# hd.bloodflow.cmd_blood_flow_broadcast_interval_override(hd.RESET,0) +# hd.bloodflow.cmd_blood_flow_broadcast_interval_override(RESET,0) Index: HD/HemodialysisDevice.py =================================================================== diff -u -r0da0106eca868b9144298c60911710b3414a5837 -rc652777ecb913a96a3bd61ca0bb0c062091f45e3 --- HD/HemodialysisDevice.py (.../HemodialysisDevice.py) (revision 0da0106eca868b9144298c60911710b3414a5837) +++ HD/HemodialysisDevice.py (.../HemodialysisDevice.py) (revision c652777ecb913a96a3bd61ca0bb0c062091f45e3) @@ -32,7 +32,6 @@ DenaliChannels) - class HD: def __init__(self, can_interface_name="can0"): Index: HD/UI.py =================================================================== diff -u -r0da0106eca868b9144298c60911710b3414a5837 -rc652777ecb913a96a3bd61ca0bb0c062091f45e3 --- HD/UI.py (.../UI.py) (revision 0da0106eca868b9144298c60911710b3414a5837) +++ HD/UI.py (.../UI.py) (revision c652777ecb913a96a3bd61ca0bb0c062091f45e3) @@ -121,30 +121,30 @@ self.handler_treatment_param_ranges) # initialize variables that will be populated by treatment parameter ranges message - self.MinTreatmentDurationMin = 0 - self.MaxTreatmentDurationMin = 0 - self.MinUFVolumeMl = 0 - self.MaxUFVolumeMl = 0 - self.MinDialysateFlowRateMlMin = 0 - self.MaxDialysateFlowRateMlMin = 0 + self.min_treatment_duration_min = 0 + self.max_treatment_duration_min = 0 + self.min_uf_volume_ml = 0 + self.max_uf_volume_ml = 0 + self.min_dialysate_flow_rate_ml_min = 0 + self.max_dialysate_flow_rate_ml_min = 0 # initialize variables that will be populated by response from HD to treatment duration change request - self.DurationChangeSucceeded = False - self.DurationChangeRejectReason = 0 - self.DurationChangeTimeMin = 0 - self.DurationChangeUFVolMl = 0 + self.duration_change_succeeded = False + self.duration_change_reject_reason = 0 + self.duration_change_time_min = 0 + self.duration_change_uf_vol_ml = 0 # initialize variables that will be populated by response from HD to UF change request - self.UFChangeSucceeded = False - self.UFChangeRejectReason = 0 - self.UFChangeVolumeMl = 0 - self.UFChangeTimeMin = 0 - self.UFChangeRateMlMin = 0.0 - self.UFChangeTimeDiff = 0 - self.UFChangeRateDiff = 0.0 + self.uf_change_succeeded = False + self.uf_change_reject_reason = 0 + self.uf_change_volume_ml = 0 + self.uf_change_time_min = 0 + self.uf_change_rate_ml_min = 0.0 + self.uf_change_time_diff = 0 + self.uf_change_rate_diff = 0.0 # initialize variables that will be populated by response from HD to blood & dialysate flow rate change request - self.BloodAndDialysateFlowRateChangeSucceeded = False - self.BloodAndDialysateFlowRateChangeRejectReason = 0 - self.TargetBloodFlowRate = 0 - self.TargetDialysateFlowRate = 0 + self.blood_and_dialysate_flow_rate_change_succeeded = False + self.blood_and_dialysate_flow_rate_change_reject_reason = 0 + self.target_blood_flow_rate = 0 + self.target_dialysate_flow_rate = 0 def handler_treatment_param_ranges(self, message): """ @@ -173,12 +173,12 @@ maxDialRt = struct.unpack('i', bytearray( message['message'][self.START_POS_MAX_DIAL_RATE:self.END_POS_MAX_DIAL_RATE])) - self.MinTreatmentDurationMin = minTime[0] - self.MaxTreatmentDurationMin = maxTime[0] - self.MinUFVolumeMl = minUFVol[0] - self.MaxUFVolumeMl = maxUFVol[0] - self.MinDialysateFlowRateMlMin = minDialRt[0] - self.MaxDialysateFlowRateMlMin = maxDialRt[0] + self.min_treatment_duration_min = minTime[0] + self.max_treatment_duration_min = maxTime[0] + self.min_uf_volume_ml = minUFVol[0] + self.max_uf_volume_ml = maxUFVol[0] + self.min_dialysate_flow_rate_ml_min = minDialRt[0] + self.max_dialysate_flow_rate_ml_min = maxDialRt[0] def handler_treatment_duration_change_response(self, message): """ @@ -201,10 +201,10 @@ vol = struct.unpack('i', bytearray( message['message'][self.START_POS_TIME_CHG_RSP_UF_VOL:self.END_POS_TIME_CHG_RSP_UF_VOL])) - self.DurationChangeSucceeded = rsp[0] - self.DurationChangeRejectReason = rea[0] - self.DurationChangeTimeMin = tim[0] - self.DurationChangeUFVolMl = vol[0] + self.duration_change_succeeded = rsp[0] + self.duration_change_reject_reason = rea[0] + self.duration_change_time_min = tim[0] + self.duration_change_uf_vol_ml = vol[0] def handler_blood_and_dialysate_change_response(self, message): """ @@ -231,10 +231,10 @@ resp = False else: resp = True - self.BloodAndDialysateFlowRateChangeSucceeded = resp - self.BloodAndDialysateFlowRateChangeRejectReason = rea[0] - self.TargetBloodFlowRate = bld[0] - self.TargetDialysateFlowRate = dil[0] + self.blood_and_dialysate_flow_rate_change_succeeded = resp + self.blood_and_dialysate_flow_rate_change_reject_reason = rea[0] + self.target_blood_flow_rate = bld[0] + self.target_dialysate_flow_rate = dil[0] def handler_uf_change_response(self, message): """ @@ -270,12 +270,12 @@ resp = False else: resp = True - self.UFChangeSucceeded = resp - self.UFChangeRejectReason = rea[0] + self.uf_change_succeeded = resp + self.uf_change_reject_reason = rea[0] self.UFChangeVolumeL = vol[0] / self.LITER_TO_ML_CONVERSION_FACTOR - self.UFChangeTimeMin = tim[0] - self.UFChangeTimeDiff = tmd[0] - self.UFChangeRateMlMin = rat[0] + self.uf_change_time_min = tim[0] + self.uf_change_time_diff = tmd[0] + self.uf_change_rate_ml_min = rat[0] self.UFChangeRateDifff = rtd[0] def cmd_ui_checkin_with_hd(self):