|
|
@ -42,26 +42,6 @@ void ProjectPort::initProjectSetting(int projectTypeInt) { |
|
|
|
projectTypeInt = projectTypeInt; |
|
|
|
projectType = projectType2Str(projectTypeInt); |
|
|
|
|
|
|
|
if (projectTypeInt == klarge_space_disinfection_machine) { |
|
|
|
extSensorNum = LARGE_SPACE_DM_EXT_SENSOR_NUM; |
|
|
|
gpmToSpeedRadio = LARGE_SPACE_DM__GPM_TO_SPEED_RADIO; |
|
|
|
disinfectantBucketCapacity = LARGE_SPACE_DM__DISINFECTANT_BUCKET_CAPACITY; |
|
|
|
} else if (projectTypeInt == ksmall_space_disinfection_machine) { |
|
|
|
extSensorNum = SMALL_SPACE_DM_EXT_SENSOR_NUM; |
|
|
|
gpmToSpeedRadio = SMALL_SPACE_DM__GPM_TO_SPEED_RADIO; |
|
|
|
disinfectantBucketCapacity = SMALL_SPACE_DM__DISINFECTANT_BUCKET_CAPACITY; |
|
|
|
} else if (projectTypeInt == kpipe_disinfection_machine) { |
|
|
|
extSensorNum = PIPE_DM_EXT_SENSOR_NUM; |
|
|
|
gpmToSpeedRadio = PIPE_DM_GPM_TO_SPEED_RADIO; |
|
|
|
disinfectantBucketCapacity = PIPE_DM__DISINFECTANT_BUCKET_CAPACITY; |
|
|
|
} else if (projectTypeInt == kdraw_bar_disinfection_box) { |
|
|
|
extSensorNum = DRAW_BAR_DM_EXT_SENSOR_NUM; |
|
|
|
gpmToSpeedRadio = DRAW_BAR_DM_GPM_TO_SPEED_RADIO; |
|
|
|
disinfectantBucketCapacity = DRAW_BAR_DM__DISINFECTANT_BUCKET_CAPACITY; |
|
|
|
} else { |
|
|
|
ZCHECK(false, "projectTypeInt not support: " + to_string(projectTypeInt)); |
|
|
|
} |
|
|
|
|
|
|
|
// 设备ID初始化
|
|
|
|
if (isLageSpaceDM() || isSmallSpaceDM() || isPipeDM()) { |
|
|
|
// 加液泵
|
|
|
@ -85,21 +65,17 @@ void ProjectPort::initProjectSetting(int projectTypeInt) { |
|
|
|
// 液体重量传感器
|
|
|
|
INSERT(HardwareComponent::kLiquidWeightPS, kFixBoardId_LiquidCtrl, 1); |
|
|
|
// 空压机后压力传感器
|
|
|
|
INSERT(HardwareComponent::kACPostPS, kFixBoardId_LiquidCtrl, 0); |
|
|
|
INSERT(HardwareComponent::kACPostPS, kFixBoardId_LiquidCtrl, 2); |
|
|
|
// 喷雾泵后压力传感器
|
|
|
|
INSERT(HardwareComponent::kSprayPumpPostPS, kFixBoardId_LiquidCtrl, 0); |
|
|
|
INSERT(HardwareComponent::kSprayPumpPostPS, kFixBoardId_LiquidCtrl, 3); |
|
|
|
// 加液泵后压力传感器
|
|
|
|
INSERT(HardwareComponent::kAddLiquidPumpPostPS, kFixBoardId_LiquidCtrl, 0); |
|
|
|
INSERT(HardwareComponent::kAddLiquidPumpPostPS, kFixBoardId_LiquidCtrl, 4); |
|
|
|
|
|
|
|
if (isPipeDM()) { |
|
|
|
// 正压比例阀
|
|
|
|
INSERT(HardwareComponent::kPositivePressureProportional, kFixBoardId_LiquidCtrl, POSITIVE_PRESSURE_PROPORTIONAL_ID); |
|
|
|
// 负压比例阀
|
|
|
|
INSERT(HardwareComponent::kNegativePressureProportional, kFixBoardId_LiquidCtrl, NEGATIVE_PRESSURE_PROPORTIONAL_ID); |
|
|
|
// 气密传感器
|
|
|
|
INSERT(HardwareComponent::kAirLeakDetectPS, kFixBoardId_LiquidCtrl, 0); |
|
|
|
// 空气密度测试空压机
|
|
|
|
INSERT(HardwareComponent::kAirLeakDetectTestAC, kFixBoardId_LiquidCtrl, 0); |
|
|
|
// 空气密度测试通道控制
|
|
|
|
INSERT(HardwareComponent::kAirLeakDetectTestChannelCtrl, kFixBoardId_LiquidCtrl, 0); |
|
|
|
} |
|
|
@ -114,8 +90,30 @@ float ProjectPort::LiquidWeightPS_To_Pa(int rawval) { return rawval; } |
|
|
|
float ProjectPort::SprayPumpPostPS_To_Pa(int rawval) { return rawval; } |
|
|
|
float ProjectPort::AddLiquidPumpPostPS_To_Pa(int rawval) { return rawval; } |
|
|
|
|
|
|
|
double ProjectPort::gpm2speed(double gpm) { return gpm * gpmToSpeedRadio; } |
|
|
|
double ProjectPort::speed2gpm(double speed) { return (speed / gpmToSpeedRadio) + 0.5; } |
|
|
|
double ProjectPort::getGpm2SpeedRadio() { |
|
|
|
float gpmToSpeedRadio = 0; |
|
|
|
if (isLageSpaceDM()) { |
|
|
|
gpmToSpeedRadio = LARGE_SPACE_DM__GPM_TO_SPEED_RADIO; |
|
|
|
} else if (isSmallSpaceDM()) { |
|
|
|
gpmToSpeedRadio = SMALL_SPACE_DM__GPM_TO_SPEED_RADIO; |
|
|
|
} else if (isPipeDM()) { |
|
|
|
gpmToSpeedRadio = PIPE_DM_GPM_TO_SPEED_RADIO; |
|
|
|
} else if (isDrawBarDM()) { |
|
|
|
gpmToSpeedRadio = DRAW_BAR_DM_GPM_TO_SPEED_RADIO; |
|
|
|
} else { |
|
|
|
THROW_APP_EXCEPTION(err::kappe_code_error, "project [%s(%d)] not support: ", to_string(projectTypeInt).c_str(), projectTypeInt); |
|
|
|
} |
|
|
|
return gpmToSpeedRadio; |
|
|
|
} |
|
|
|
|
|
|
|
double ProjectPort::gpm2speed(double gpm) { |
|
|
|
float gpmToSpeedRadio = getGpm2SpeedRadio(); |
|
|
|
return gpm * gpmToSpeedRadio; |
|
|
|
} |
|
|
|
double ProjectPort::speed2gpm(double speed) { |
|
|
|
float gpmToSpeedRadio = getGpm2SpeedRadio(); |
|
|
|
return (speed / gpmToSpeedRadio) + 0.5; |
|
|
|
} |
|
|
|
|
|
|
|
float ProjectPort::pressurePa2VolumeG(int pa) { |
|
|
|
if (isLageSpaceDM()) { |
|
|
@ -130,23 +128,68 @@ float ProjectPort::pressurePa2VolumeG(int pa) { |
|
|
|
if (isDrawBarDM()) { |
|
|
|
return VolumeConvertor(VolumeConvertor::drawBarBoxParam).pressurePa2VolumeG(pa); |
|
|
|
} |
|
|
|
THROW_APP_EXCEPTION(err::kappe_code_error, "project [%s(%d)] not support: ", to_string(projectTypeInt).c_str(), projectTypeInt); |
|
|
|
return 0; |
|
|
|
//
|
|
|
|
} |
|
|
|
|
|
|
|
int32_t ProjectPort::getMainH2O2SensorId() { return getId(HardwareComponent::MainH2O2Sensor).boardId; } |
|
|
|
int32_t ProjectPort::getSprayLiquidPumpMaxRPM() { |
|
|
|
if (isLageSpaceDM()) { |
|
|
|
return 400; |
|
|
|
return 600; |
|
|
|
} |
|
|
|
if (isSmallSpaceDM()) { |
|
|
|
return 600; |
|
|
|
} |
|
|
|
if (isPipeDM()) { |
|
|
|
return 600; |
|
|
|
} |
|
|
|
if (isDrawBarDM()) { |
|
|
|
return 100; |
|
|
|
} |
|
|
|
return 0; |
|
|
|
} |
|
|
|
int32_t ProjectPort::getEmptyPipeSprayPumpRPM() { |
|
|
|
if (isLageSpaceDM()) { |
|
|
|
return 600; |
|
|
|
} |
|
|
|
if (isSmallSpaceDM()) { |
|
|
|
return 400; |
|
|
|
return 600; |
|
|
|
} |
|
|
|
if (isPipeDM()) { |
|
|
|
return 400; |
|
|
|
return 600; |
|
|
|
} |
|
|
|
if (isDrawBarDM()) { |
|
|
|
return 100; |
|
|
|
} |
|
|
|
return 0; |
|
|
|
} |
|
|
|
|
|
|
|
int32_t ProjectPort::getDisinfectantBucketCapacity() { |
|
|
|
if (isLageSpaceDM()) { |
|
|
|
return LARGE_SPACE_DM__DISINFECTANT_BUCKET_CAPACITY; |
|
|
|
} |
|
|
|
if (isSmallSpaceDM()) { |
|
|
|
return SMALL_SPACE_DM__DISINFECTANT_BUCKET_CAPACITY; |
|
|
|
} |
|
|
|
if (isPipeDM()) { |
|
|
|
return PIPE_DM__DISINFECTANT_BUCKET_CAPACITY; |
|
|
|
} |
|
|
|
if (isDrawBarDM()) { |
|
|
|
return DRAW_BAR_DM__DISINFECTANT_BUCKET_CAPACITY; |
|
|
|
} |
|
|
|
return 0; |
|
|
|
} |
|
|
|
int32_t ProjectPort::getExtH2O2SensorNum() { |
|
|
|
if (isLageSpaceDM()) { |
|
|
|
return 2; |
|
|
|
} |
|
|
|
if (isSmallSpaceDM()) { |
|
|
|
return 2; |
|
|
|
} |
|
|
|
if (isPipeDM()) { |
|
|
|
return 0; |
|
|
|
} |
|
|
|
if (isDrawBarDM()) { |
|
|
|
return 0; |
|
|
|
} |
|
|
|
return 0; |
|
|
|
} |