|  |  |  | @ -1,12 +1,12 @@ | 
		
	
		
			
				|  |  |  |  | package com.yinuo.safetywatcher.watcher.port | 
		
	
		
			
				|  |  |  |  | 
 | 
		
	
		
			
				|  |  |  |  | import com.yinuo.safetywatcher.watcher.port.cmd.C02 | 
		
	
		
			
				|  |  |  |  | import com.yinuo.safetywatcher.watcher.port.cmd.CO2 | 
		
	
		
			
				|  |  |  |  | import com.yinuo.safetywatcher.watcher.port.cmd.CL2 | 
		
	
		
			
				|  |  |  |  | import com.yinuo.safetywatcher.watcher.port.cmd.CO | 
		
	
		
			
				|  |  |  |  | import com.yinuo.safetywatcher.watcher.port.cmd.H2 | 
		
	
		
			
				|  |  |  |  | import com.yinuo.safetywatcher.watcher.port.cmd.H2S | 
		
	
		
			
				|  |  |  |  | import com.yinuo.safetywatcher.watcher.port.cmd.HF | 
		
	
		
			
				|  |  |  |  | import com.yinuo.safetywatcher.watcher.port.cmd.MOLECULAR_C02 | 
		
	
		
			
				|  |  |  |  | import com.yinuo.safetywatcher.watcher.port.cmd.MOLECULAR_CO2 | 
		
	
		
			
				|  |  |  |  | import com.yinuo.safetywatcher.watcher.port.cmd.MOLECULAR_CL2 | 
		
	
		
			
				|  |  |  |  | import com.yinuo.safetywatcher.watcher.port.cmd.MOLECULAR_CO | 
		
	
		
			
				|  |  |  |  | import com.yinuo.safetywatcher.watcher.port.cmd.MOLECULAR_H2S | 
		
	
	
		
			
				
					|  |  |  | @ -14,11 +14,11 @@ import com.yinuo.safetywatcher.watcher.port.cmd.MOLECULAR_HF | 
		
	
		
			
				|  |  |  |  | import com.yinuo.safetywatcher.watcher.port.cmd.MOLECULAR_NH3 | 
		
	
		
			
				|  |  |  |  | import com.yinuo.safetywatcher.watcher.port.cmd.MOLECULAR_NO | 
		
	
		
			
				|  |  |  |  | import com.yinuo.safetywatcher.watcher.port.cmd.MOLECULAR_NO2 | 
		
	
		
			
				|  |  |  |  | import com.yinuo.safetywatcher.watcher.port.cmd.MOLECULAR_S02 | 
		
	
		
			
				|  |  |  |  | import com.yinuo.safetywatcher.watcher.port.cmd.MOLECULAR_SO2 | 
		
	
		
			
				|  |  |  |  | import com.yinuo.safetywatcher.watcher.port.cmd.NH3 | 
		
	
		
			
				|  |  |  |  | import com.yinuo.safetywatcher.watcher.port.cmd.NO | 
		
	
		
			
				|  |  |  |  | import com.yinuo.safetywatcher.watcher.port.cmd.NO2 | 
		
	
		
			
				|  |  |  |  | import com.yinuo.safetywatcher.watcher.port.cmd.S02 | 
		
	
		
			
				|  |  |  |  | import com.yinuo.safetywatcher.watcher.port.cmd.SO2 | 
		
	
		
			
				|  |  |  |  | 
 | 
		
	
		
			
				|  |  |  |  | // ppm转mgm3转化率 | 
		
	
		
			
				|  |  |  |  | const val PPM_TO_MGM3_CONVERSION_RATE = 0.0409f | 
		
	
	
		
			
				
					|  |  |  | @ -41,8 +41,8 @@ const val H2_MIN_LEL = 25f | 
		
	
		
			
				|  |  |  |  | const val H2_MAX_LEL = 50f | 
		
	
		
			
				|  |  |  |  | const val NH3_MIN_PPM = 25f | 
		
	
		
			
				|  |  |  |  | const val NH3_MAX_PPM = 50f | 
		
	
		
			
				|  |  |  |  | const val S02_MIN_PPM = 2f | 
		
	
		
			
				|  |  |  |  | const val S02_MAX_PPM = 5f | 
		
	
		
			
				|  |  |  |  | const val SO2_MIN_PPM = 2f | 
		
	
		
			
				|  |  |  |  | const val SO2_MAX_PPM = 5f | 
		
	
		
			
				|  |  |  |  | const val CL2_MIN_PPM = 0.5f | 
		
	
		
			
				|  |  |  |  | const val CL2_MAX_PPM = 1f | 
		
	
		
			
				|  |  |  |  | const val NO2_MIN_PPM = 2f | 
		
	
	
		
			
				
					|  |  |  | @ -51,8 +51,8 @@ const val NO_MIN_PPM = 13f | 
		
	
		
			
				|  |  |  |  | const val NO_MAX_PPM = 25f | 
		
	
		
			
				|  |  |  |  | const val HF_MIN_PPM = 2f | 
		
	
		
			
				|  |  |  |  | const val HF_MAX_PPM = 6f | 
		
	
		
			
				|  |  |  |  | const val C02_MIN_PPM = 5000f | 
		
	
		
			
				|  |  |  |  | const val C02_MAX_PPM = 30000f | 
		
	
		
			
				|  |  |  |  | const val CO2_MIN_PPM = 5000f | 
		
	
		
			
				|  |  |  |  | const val CO2_MAX_PPM = 30000f | 
		
	
		
			
				|  |  |  |  | 
 | 
		
	
		
			
				|  |  |  |  | //?? TODO VOCS 这个值现在不对 | 
		
	
		
			
				|  |  |  |  | const val VOCS_MIN_PPM = 2f | 
		
	
	
		
			
				
					|  |  |  | @ -77,8 +77,8 @@ val default_threshold_map_ppm = hashMapOf( | 
		
	
		
			
				|  |  |  |  | //    Pair("${H2}_$MAX_SUFFIX", lel2ppm(H2_MAX_LEL, H2_LEL2PPMFACTOR)), | 
		
	
		
			
				|  |  |  |  |     Pair("${NH3}_$MIN_SUFFIX", NH3_MIN_PPM), | 
		
	
		
			
				|  |  |  |  |     Pair("${NH3}_$MAX_SUFFIX", NH3_MAX_PPM), | 
		
	
		
			
				|  |  |  |  |     Pair("${S02}_$MIN_SUFFIX", S02_MIN_PPM), | 
		
	
		
			
				|  |  |  |  |     Pair("${S02}_$MAX_SUFFIX", S02_MAX_PPM), | 
		
	
		
			
				|  |  |  |  |     Pair("${SO2}_$MIN_SUFFIX", SO2_MIN_PPM), | 
		
	
		
			
				|  |  |  |  |     Pair("${SO2}_$MAX_SUFFIX", SO2_MAX_PPM), | 
		
	
		
			
				|  |  |  |  |     Pair("${CL2}_$MIN_SUFFIX", CL2_MIN_PPM), | 
		
	
		
			
				|  |  |  |  |     Pair("${CL2}_$MAX_SUFFIX", CL2_MAX_PPM), | 
		
	
		
			
				|  |  |  |  |     Pair("${NO2}_$MIN_SUFFIX", NO2_MIN_PPM), | 
		
	
	
		
			
				
					|  |  |  | @ -87,8 +87,8 @@ val default_threshold_map_ppm = hashMapOf( | 
		
	
		
			
				|  |  |  |  |     Pair("${NO}_$MAX_SUFFIX", NO_MAX_PPM), | 
		
	
		
			
				|  |  |  |  |     Pair("${HF}_$MIN_SUFFIX", HF_MIN_PPM), | 
		
	
		
			
				|  |  |  |  |     Pair("${HF}_$MAX_SUFFIX", HF_MAX_PPM), | 
		
	
		
			
				|  |  |  |  |     Pair("${C02}_$MIN_SUFFIX", C02_MIN_PPM), | 
		
	
		
			
				|  |  |  |  |     Pair("${C02}_$MAX_SUFFIX", C02_MAX_PPM), | 
		
	
		
			
				|  |  |  |  |     Pair("${CO2}_$MIN_SUFFIX", CO2_MIN_PPM), | 
		
	
		
			
				|  |  |  |  |     Pair("${CO2}_$MAX_SUFFIX", CO2_MAX_PPM), | 
		
	
		
			
				|  |  |  |  | ) | 
		
	
		
			
				|  |  |  |  | 
 | 
		
	
		
			
				|  |  |  |  | // 气体默认阈值表 | 
		
	
	
		
			
				
					|  |  |  | @ -103,8 +103,8 @@ val default_threshold_map_mgm3 = hashMapOf( | 
		
	
		
			
				|  |  |  |  | //    Pair("${H2}_$MAX_SUFFIX", ppm2mgm3(lel2ppm(H2_MAX_LEL, H2_LEL2PPMFACTOR), MOLECULAR_H2)), | 
		
	
		
			
				|  |  |  |  |     Pair("${NH3}_$MIN_SUFFIX", ppm2mgm3(NH3_MIN_PPM, MOLECULAR_NH3)), | 
		
	
		
			
				|  |  |  |  |     Pair("${NH3}_$MAX_SUFFIX", ppm2mgm3(NH3_MAX_PPM, MOLECULAR_NH3)), | 
		
	
		
			
				|  |  |  |  |     Pair("${S02}_$MIN_SUFFIX", ppm2mgm3(S02_MIN_PPM, MOLECULAR_S02)), | 
		
	
		
			
				|  |  |  |  |     Pair("${S02}_$MAX_SUFFIX", ppm2mgm3(S02_MAX_PPM, MOLECULAR_S02)), | 
		
	
		
			
				|  |  |  |  |     Pair("${SO2}_$MIN_SUFFIX", ppm2mgm3(SO2_MIN_PPM, MOLECULAR_SO2)), | 
		
	
		
			
				|  |  |  |  |     Pair("${SO2}_$MAX_SUFFIX", ppm2mgm3(SO2_MAX_PPM, MOLECULAR_SO2)), | 
		
	
		
			
				|  |  |  |  |     Pair("${CL2}_$MIN_SUFFIX", ppm2mgm3(CL2_MIN_PPM, MOLECULAR_CL2)), | 
		
	
		
			
				|  |  |  |  |     Pair("${CL2}_$MAX_SUFFIX", ppm2mgm3(CL2_MAX_PPM, MOLECULAR_CL2)), | 
		
	
		
			
				|  |  |  |  |     Pair("${NO2}_$MIN_SUFFIX", ppm2mgm3(NO2_MIN_PPM, MOLECULAR_NO2)), | 
		
	
	
		
			
				
					|  |  |  | @ -113,8 +113,8 @@ val default_threshold_map_mgm3 = hashMapOf( | 
		
	
		
			
				|  |  |  |  |     Pair("${NO}_$MAX_SUFFIX", ppm2mgm3(NO_MAX_PPM, MOLECULAR_NO)), | 
		
	
		
			
				|  |  |  |  |     Pair("${HF}_$MIN_SUFFIX", ppm2mgm3(HF_MIN_PPM, MOLECULAR_HF)), | 
		
	
		
			
				|  |  |  |  |     Pair("${HF}_$MAX_SUFFIX", ppm2mgm3(HF_MAX_PPM, MOLECULAR_HF)), | 
		
	
		
			
				|  |  |  |  |     Pair("${C02}_$MIN_SUFFIX", ppm2mgm3(C02_MIN_PPM, MOLECULAR_C02)), | 
		
	
		
			
				|  |  |  |  |     Pair("${C02}_$MAX_SUFFIX", ppm2mgm3(C02_MAX_PPM, MOLECULAR_C02)), | 
		
	
		
			
				|  |  |  |  |     Pair("${CO2}_$MIN_SUFFIX", ppm2mgm3(CO2_MIN_PPM, MOLECULAR_CO2)), | 
		
	
		
			
				|  |  |  |  |     Pair("${CO2}_$MAX_SUFFIX", ppm2mgm3(CO2_MAX_PPM, MOLECULAR_CO2)), | 
		
	
		
			
				|  |  |  |  | ) | 
		
	
		
			
				|  |  |  |  | 
 | 
		
	
		
			
				|  |  |  |  | val default_threshold_map_unit = hashMapOf( | 
		
	
	
		
			
				
					|  |  |  | @ -132,7 +132,7 @@ val so2_gas_cross_impact_map = hashMapOf( | 
		
	
		
			
				|  |  |  |  | 
 | 
		
	
		
			
				|  |  |  |  | val co_gas_cross_impact_map = hashMapOf( | 
		
	
		
			
				|  |  |  |  |     Pair(H2S, -0.25f), | 
		
	
		
			
				|  |  |  |  |     Pair(S02, -0.25f), | 
		
	
		
			
				|  |  |  |  |     Pair(SO2, -0.25f), | 
		
	
		
			
				|  |  |  |  |     Pair(NO, -0.5f), | 
		
	
		
			
				|  |  |  |  |     Pair(H2, -0.125f) | 
		
	
		
			
				|  |  |  |  | ) | 
		
	
	
		
			
				
					|  |  |  | @ -144,9 +144,9 @@ val h2s_gas_cross_impact_map = hashMapOf( | 
		
	
		
			
				|  |  |  |  | val nh3_gas_cross_impact_map = hashMapOf( | 
		
	
		
			
				|  |  |  |  |     Pair(CO, 0.02f), | 
		
	
		
			
				|  |  |  |  |     Pair(H2S, -3.4f), | 
		
	
		
			
				|  |  |  |  |     Pair(C02, 0.0005f), | 
		
	
		
			
				|  |  |  |  |     Pair(CO2, 0.0005f), | 
		
	
		
			
				|  |  |  |  |     Pair(H2, 0.0015f), | 
		
	
		
			
				|  |  |  |  |     Pair(S02, -1.6f), | 
		
	
		
			
				|  |  |  |  |     Pair(SO2, -1.6f), | 
		
	
		
			
				|  |  |  |  |     Pair(NO2, 1f), | 
		
	
		
			
				|  |  |  |  |     Pair(CL2, 0.5f) | 
		
	
		
			
				|  |  |  |  | ) | 
		
	
	
		
			
				
					|  |  |  | @ -160,7 +160,7 @@ val no_gas_cross_impact_map = hashMapOf( | 
		
	
		
			
				|  |  |  |  |  * 气体交叉影响系数表 | 
		
	
		
			
				|  |  |  |  |  */ | 
		
	
		
			
				|  |  |  |  | val gas_cross_impact_map = hashMapOf( | 
		
	
		
			
				|  |  |  |  |     Pair(S02, so2_gas_cross_impact_map), | 
		
	
		
			
				|  |  |  |  |     Pair(SO2, so2_gas_cross_impact_map), | 
		
	
		
			
				|  |  |  |  |     Pair(CO, co_gas_cross_impact_map), | 
		
	
		
			
				|  |  |  |  |     Pair(H2S, h2s_gas_cross_impact_map), | 
		
	
		
			
				|  |  |  |  | //    Pair(CL2, gas_cross_impact_map), | 
		
	
	
		
			
				
					|  |  |  | 
 |