#pragma once #include #include #include using namespace std; class RunCfg { public: enum PreJobParamType { Default=0, Data }; RunCfg(); ~RunCfg(); //static void Generate(vector& ins); void GetUpdateSql(vector& ups); void SetOxygenTargeValue(float to) { EnterCriticalSection(&m_CS); m_TargeOxygen = to; LeaveCriticalSection(&m_CS); } float GetOxygenTargeValue() { float fv = 0.0f; EnterCriticalSection(&m_CS); fv = m_TargeOxygen; LeaveCriticalSection(&m_CS); return fv; } void SetOxygenAlarmValue(float to) { EnterCriticalSection(&m_CS); m_AlarmOxygen = to; LeaveCriticalSection(&m_CS); } float GetOxygenAlarmValue() { float fv = 0.0f; EnterCriticalSection(&m_CS); fv = m_AlarmOxygen; LeaveCriticalSection(&m_CS); return fv; } public: bool m_IsDebugMode; float m_TargeOxygen; //目标氧 float m_WarnOxygen; //预警氧 float m_AlarmOxygen; //报警氧 float m_StartCycleOxygen; //循环开启时氧含量值 float m_DangerousOxygen; //氧含量危险提示值 float m_AlarmTemperture; //舱内温度 float m_AlarmTempertureMin; float m_AlarmTempertureMax; float m_AlarmWaterTempDown; //水温下限 float m_AlarmWaterTempDownMin; //水温下限 float m_AlarmWaterTempDownMax; //水温下限 float m_AlarmWaterTempUp; //水温上限 float m_AlarmWaterTempUpMin; //水温上限 float m_AlarmWaterTempUpMax; //水温上限 // float m_CheckWind; //外置风机 开始时循环风速检测 // float m_CheckWindMin; //开始时循环风速检测 // float m_CheckWindMax; //开始时循环风速检测 // float m_AlarmWindLowerLimit; //外置风机 低风报警 unsigned int m_LogPersistInteval; //日志记录间隔 unsigned int m_StatisticsInteval; //系统统计间隔 bool m_OffsetRotateEnable; // float m_ArgonCheckWind; //目标风速 // float m_ArgonTargetWind; //目标风速 // float m_ArgonTargetWindMin; //目标风速 // float m_ArgonTargetWindMax; //目标风速 // float m_NitrogenCheckWind; //目标风速 // float m_NitrogenTargetWind; //目标风速 // float m_NitrogenTargetWindMin; //目标风速 // float m_NitrogenTargetWindMax; //目标风速 // float m_AlarmArgonWindLowerLimit; //风速下限 // float m_AlarmNitrogenWindLowerLimit; //风速下限 float m_StableWindStep; //风稳电压步进值 unsigned int m_SSRTimeLimit; //基板加热输入输出不同步时间 ms unsigned int m_SSRTimeLimitMin; unsigned int m_SSRTimeLimitMax; unsigned int m_HeatingDeleyDisableMinute; //加热延迟关闭 float m_HighOxygenHeatingTemp; float m_LowOxygenHeatingTemp; bool m_UseHeatingMotion; unsigned int m_HeatingMotionPeriodSecond; double m_HeatingMotionDistance; float m_FanVoltageOverLimit; //风机电压越限 bool m_IsAutoReleasePressureWhenFinish; //打印完成后是否自动泄压 uint32_t m_ReleasePressureSeconds; //泄压秒数 float m_ReleasePressureTargeValue; //泄压目标值 bool m_PrintRestEnable; //打印停歇 uint32_t m_PrintContinueMinute; //持续打印分钟 uint32_t m_PrintRestMinutes; //停歇分钟 uint32_t m_BlowbackNotifyTimeout; //反吹提示超时设置 bool m_BlowbackTimeoutExecute; //超时后强制执行 unsigned int m_DownSkinStopTimes; //下表面停止次数 bool m_TimePowerCompensateEnable; bool m_IsPreparePrint; //预打印 int m_PrepareParamType; unsigned int m_WarnAlarmNotifySecond; bool m_HadSetBasePlatformPoint; int m_PowderAlarmPos; //供粉不足报警位 float m_VoltageAlarmOffset; //电源电压报警偏差 unsigned int m_ScannerPowerLogTick; unsigned int m_ScannerPowerLogCount; float m_ScannerVoltageMinLimit; //振镜电压下限 float m_ScannerVoltageMaxLimit; //振镜电压上限 bool m_PrintAutoRenewalGas; //打印自动换气 bool m_MoldDeoxygenEnable; //启用升降除氧 float m_AddPowderWarnPos; //加粉预警位 float m_PowderStickLowLevelAlarmPos; //加粉低位报警位 bool m_UseCoverWindSignal; unsigned int m_MoldServoPosWarnOffset; //升降伺服位置警示值 unsigned int m_LayerLinearPosAlarmOffset; //层光栅位置偏差报警值 unsigned int m_PrintLinearAccDevAlarmOffset; //打印光栅累积误差报警值 bool m_UseLinearJudgePos; double m_CoverSimulateTimeOffset; double m_CoverWindSimulateTimeOffset; bool m_LogDebugInfo; bool m_AutoShutdownPower; float m_FilterOxygenAlarmValue; float m_FanFreqLowLimit; unsigned int m_PrintLayerDelay; unsigned int m_CoverLayerDelay; bool m_SmartCoverEnable; float m_PowderStickCalcLength; int m_PurifierFilterNotifyHour; double m_CheckDiskSpaceG; double m_PerlayerSpaceK; bool m_ShowUnloadHandPos; unsigned int m_PurifierDisconnectAlarmJudgeSecond; unsigned int m_PurifierKeepAliveAlarmJudgeSecond; unsigned int m_OxygenSensorDisconnectAlarmJudgeSecond; unsigned int m_HeatingDisconnectAlarmJudgeSecond; unsigned int m_ChillerDisconnectAlarmJudgeSecond; public: static const string CONFIG_NAME; static const string FIELD_IS_DEBUG_MODE; static const string FIELD_TARGE_OXYGEN; static const string FIELD_WARN_OXYGEN; static const string FIELD_ALARM_OXYGEN; static const string FIELD_DANGEROUS_OXYGEN; static const string FIELD_ALARM_TEMPERTURE; static const string FIELD_ALARM_TEMPERTURE_MIN; static const string FIELD_ALARM_TEMPERTURE_MAX; static const string FIELD_ALARM_WATER_TEMP_DOWN; static const string FIELD_ALARM_WATER_TEMP_DOWN_MIN; static const string FIELD_ALARM_WATER_TEMP_DOWN_MAX; static const string FIELD_ALARM_WATER_TEMP_UP; static const string FIELD_ALARM_WATER_TEMP_UP_MIN; static const string FIELD_ALARM_WATER_TEMP_UP_MAX; // static const string FIELD_CHECK_WIND; // static const string FIELD_CHECK_WIND_MIN; // static const string FIELD_CHECK_WIND_MAX; static const string FIELD_START_CYCLE_OXYGEN; static const string FIELD_LOG_PERSIST_INTEVAL; static const string FIELD_STATISTICS_INTEVAL; static const string FIELD_STABLE_WIND_STEP; // static const string FIELD_WIND_LOWER_LIMIT; static const string FIELD_SSR_TIME_LIMIT; static const string FIELD_SSR_TIME_LIMIT_MIN; static const string FIELD_SSR_TIME_LIMIT_MAX; static const string FIELD_HEATING_DELAY_DISABLE_MINUTE; static const string FIELD_HIGH_OXYGEN_HEATING_TEMP; static const string FIELD_LOW_OXYGEN_HEATING_TEMP; static const string FIELD_USE_HEATING_MOTION; static const string FIELD_HEATING_MOTION_PERIOD_SECOND; static const string FIELD_HEATING_MOTION_DISTANCE; static const string FIELD_FAN_VOLTAGE_OVER_LIMIT; static const string FIELD_IS_AUTO_RELEASE_PRESSURE_WHEN_FINISH; static const string FIELD_RELEASE_PRESSURE_SECONDS; static const string FIELD_RELEASE_PRESSURE_TARGE_VALUE; static const string FIELD_PRINT_REST_ENABLE; static const string FIELD_PRINT_CONTINUE_MINUTES; static const string FIELD_PRINT_REST_MINUTES; static const string FIELD_BLOW_BACK_NOTIFY_TIMEOUT; static const string FIELD_BLOW_BACK_TIMEOUT_EXECUTE; static const string FIELD_DOWM_SKIN_STOP_TIMES; static const string FIELD_TIME_POWER_COMPENSATE_ENABLE; static const string FIELD_IS_PREPARE_PRINT; static const string FIELD_PREPARE_PARAM_TYPE; static const string FIELD_WARN_ALARM_NOTIFY_SECOND; static const string FIELD_POWDER_ALARM_POS; static const string FIELD_VOLTAGE_ALARM_OFFSET; static const string FIELD_SCANNER_POWER_LOG_TICK; static const string FIELD_SCANNER_POWER_LOG_COUNT; static const string FIELD_SCANNER_VOLTAGE_MIN_LIMIT; static const string FIELD_SCANNER_VOLTAGE_MAX_LIMIT; static const string FIELD_PRINT_AUTO_RENEWAL_GAS; static const string FIELD_MOLD_DEOXYGEN_ENABLE; static const string FIELD_ADD_POWDER_WARN_POS; static const string FIELD_POWDER_STICK_LOW_LEVEL_ALARM_POS; static const string FIELD_USE_COVER_WIND_SIGNAL; static const string FIELD_MOLD_SERVO_POS_WARN_OFFSET; static const string FIELD_LAYER_LINEAR_POS_ALARM_OFFSET; static const string FIELD_PRINT_LINEAR_ACC_DEV_ALARM_OFFSET; static const string FIELD_USE_LINEAR_JUDGE_POS; static const string FIELD_COVER_SIMULATE_TIME_OFFSET; static const string FIELD_COVER_WIND_SIMULATE_TIME_OFFSET; static const string FIELD_LOG_DEBUG_INFO; static const string FIELD_AUTO_SHUTDOWN_POWER; static const string FIELD_FILTER_OXYGEN_ALARM_VALUE; static const string FIELD_FAN_FREQ_LOW_LIMIT; static const string FIELD_PRINT_LAYER_DELAY; static const string FIELD_COVER_LAYER_DELAY; static const string FIELD_SMART_COVER_ENABLE; static const string FIELD_POWDER_STICK_CALC_LENGTH; static const string FIELD_PURIFIER_FILTER_NOTIFY_HOUR; static const string FIELD_CHECK_DISK_SPACE_G; static const string FIELD_PERLAYER_SPACE_K; static const string FIELD_SHOW_UNLOAD_HAND_POS; static const string FIELD_PURIFIER_DISCONNECT_ALARM_JUDGE_SECOND; static const string FIELD_PURIFIER_KEEP_ALIVE_ALARM_JUDGE_SECOND; static const string FIELD_OXYGEN_SENSOR_DISCONNECT_ALARM_JUDGE_SECOND; static const string FIELD_HEATING_DISCONNECT_ALARM_JUDGE_SECOND; static const string FIELD_CHILLER_DISCONNECT_ALARM_JUDGE_SECOND; private: CRITICAL_SECTION m_CS; };