Coverage for src/susi/io/camera_calibration_constants.py: 100%

493 statements  

« prev     ^ index     » next       coverage.py v7.5.0, created at 2025-06-13 14:15 +0000

1""" 

2Calibration constants for SUSI Cameras 

3 

4Authors: K. Heerlein 

5""" 

6 

7from dataclasses import dataclass 

8from . import camera_definitions as cam_defs 

9 

10# calibration parameters for sensor 16301F0_019 

11# EM camera 

12# calibration done during ambient tests and TV test in Vötsch-2 2020 

13s_GSENSE_lotno_16301F0 = '16301F0' 

14s_GSENSE_sn_019 = '019' 

15s_GSENSE_sn_048 = '048' 

16c_Temp_GSENSE_16301F0_019_f = 0.487406 

17c_Temp_GSENSE_16301F0_019_o = -293.346 

18 

19# calibration parameters for sensor 17301F0_003 

20# FM1=SJ 

21# calibration done during TV test in Vötsch-2 2020_06_17 

22# using temp at 20degC and T at 0 degC 

23c_Temp_GSENSE_17301F0_003_f = 0.5005 

24c_Temp_GSENSE_17301F0_003_o = -293.346 

25 

26# calibration parameters for sensor 17301F0_021 

27# FM2=SP2 

28# 2020_10_05 preliminary calibration, tested in clean tent, identical to 16301F0_019 values 

29c_Temp_GSENSE_17301F0_021_f = 0.487406 

30c_Temp_GSENSE_17301F0_021_o = -293.346 

31 

32# conversion factors 

33# BB#1 and #BB2 

34s_calibration = 'calibrations' 

35s_calibrationnote = 'calibrations note' 

36 

37 

38@dataclass 

39class t_ConvBB1(): 

40 cst_ADCconv = 5 / 4095 

41 cst_DACconv = 5 / 4095 

42 f_DAC_cst_VTX_H = 37 / 47 * cst_DACconv 

43 o_DAC_cst_VTX_H = 0 

44 f_DAC_cst_VHDR_L = 82 / 104 * cst_DACconv 

45 o_DAC_cst_VHDR_L = -0.5288 

46 

47 f_DAC_cst_VTX_L = 82 / 104 * cst_DACconv 

48 o_DAC_cst_VTX_L = -0.5288 

49 

50 f_DAC_cst_VRST_L = 82 / 104 * cst_DACconv 

51 o_DAC_cst_VRST_L = -0.5288 

52 

53 f_DAC_cst_VRST_H = 37 / 47 * cst_DACconv 

54 o_DAC_cst_VRST_H = 0 

55 

56 f_DAC_cst_SPARE = 1 * cst_DACconv 

57 o_DAC_cst_SPARE = 0 

58 

59 f_DAC_cst_VHDR_H = 37 / 47 * cst_DACconv 

60 o_DAC_cst_VHDR_H = 0 

61 

62 f_DAC_cst_RAMP_VSIG = 31 / 47 * cst_DACconv 

63 o_DAC_cst_RAMP_VSIG = 0 

64 

65 f_DAC_cst_VREF = 31 / 47 * cst_DACconv 

66 o_DAC_cst_VREF = 0 

67 

68 f_DAC_cst_RAMP_VREF = 31 / 47 * cst_DACconv 

69 o_DAC_cst_RAMP_VREF = 0 

70 

71 f_DAC_cst_VDDPIX = -0.275 * cst_DACconv # -0.00034 

72 o_DAC_cst_VDDPIX = 3.20548 

73 

74 f_DAC_cst_TEST_VSIG = 31 / 47 * cst_DACconv 

75 o_DAC_cst_TEST_VSIG = 0 

76 

77 f_DAC_cst_TEST_VREF = 31 / 47 * cst_DACconv 

78 o_DAC_cst_TEST_VREF = 0 

79 

80 o_ADC_cst_VHDR_L = 0 

81 o_ADC_cst_VTX_L = 0 

82 o_ADC_cst_VRST_L = 0 

83 

84 cst_TemperaturetoADC15_cst1 = -0.0089 

85 cst_TemperaturetoADC15_cst2 = 18.9236 

86 cst_TemperaturetoADC15_offs = 1938.7009 

87 cst_ADC15toTemperature_cst1 = 1.3535E-06 

88 cst_ADC15toTemperature_cst2 = 0.047781 

89 cst_ADC15toTemperature_offs = -97.748 

90 cst_ADC02toTemperature_cst1 = 5E-06 

91 cst_ADC02toTemperature_cst2 = 0.0631 

92 cst_ADC02toTemperature_offs = -238.1 

93 cst_ADC01toTemperature_cst1 = 5E-06 

94 cst_ADC01toTemperature_cst2 = 0.0631 

95 cst_ADC01toTemperature_offs = -238.1 

96 cst_Temp_GSENSE_fac = c_Temp_GSENSE_16301F0_019_f 

97 cst_Temp_GSENSE_offs = c_Temp_GSENSE_16301F0_019_o 

98 

99 

100@dataclass 

101class t_ConvEM1(): 

102 # Version: 2020_07_22 population values of SensorBoard SN2 

103 # do not edit: calibration factors based on populated resistors 

104 VBIAS1_VTXH_f = 0.7881 

105 VBIAS1_VTXH_o = 0.0000 

106 

107 VBIAS5_VRSTH_f = 0.7884 

108 VBIAS5_VRSTH_o = 0.0000 

109 

110 VBIAS4_VRSTL_f = 0.7872 

111 VBIAS4_VRSTL_o = -0.5319 

112 

113 VBIAS3_VTXL_f = 0.7880 

114 VBIAS3_VTXL_o = -0.5299 

115 

116 VBIAS7_VHDRH_f = 0.7896 

117 VBIAS7_VHDRH_o = 0.0000 

118 

119 VBIAS2_VHDRL_f = 0.7869 

120 VBIAS2_VHDRL_o = -0.5328 + 0.08 # 2020_10_21 Bench not optimal yet 

121 

122 VBIAS9_RAMPVSIG_f = 0.6598 

123 VBIAS9_RAMPVSIG_o = 0.0000 

124 

125 VBIAS11_RAMPVREF_f = 0.6567 

126 VBIAS11_RAMPVREF_o = 0.0000 

127 

128 VBIAS13_TESTVSIG_f = 0.6588 

129 VBIAS13_TESTVSIG_o = 0.0000 

130 

131 VBIAS10_VREF_f = 0.6595 

132 VBIAS10_VREF_o = 0.0000 

133 

134 VBIAS14_TESTVREF_f = 0.6592 

135 VBIAS14_TESTVREF_o = 0.0000 

136 

137 VBIAS12_DACVPIX_f = -0.2769 

138 VBIAS12_DACVPIX_o = 3.2121 

139 # _ do not edit: calibration factors based on populated resistors 

140 

141 cst_ADCconv = 5 / 4095 

142 cst_DACconv = 5 / 4095 

143 f_DAC_cst_VTX_H = VBIAS1_VTXH_f * cst_DACconv # 37/47 * cst_DACconv 

144 o_DAC_cst_VTX_H = VBIAS1_VTXH_o 

145 

146 f_DAC_cst_VHDR_L = VBIAS2_VHDRL_f * cst_DACconv # 82/104 * cst_DACconv 

147 o_DAC_cst_VHDR_L = VBIAS2_VHDRL_o 

148 

149 f_DAC_cst_VTX_L = VBIAS3_VTXL_f * cst_DACconv # 82/104 * cst_DACconv 

150 o_DAC_cst_VTX_L = VBIAS3_VTXL_o 

151 

152 f_DAC_cst_VRST_L = VBIAS4_VRSTL_f * cst_DACconv # 82/104 * cst_DACconv 

153 o_DAC_cst_VRST_L = VBIAS4_VRSTL_o 

154 

155 f_DAC_cst_VRST_H = VBIAS5_VRSTH_f * cst_DACconv # 37/47 * cst_DACconv 

156 o_DAC_cst_VRST_H = VBIAS5_VRSTH_o 

157 

158 f_DAC_cst_SPARE = 1 * cst_DACconv 

159 o_DAC_cst_SPARE = 0 

160 

161 f_DAC_cst_VHDR_H = VBIAS7_VHDRH_f * cst_DACconv # 37/47 * cst_DACconv 

162 o_DAC_cst_VHDR_H = VBIAS7_VHDRH_o 

163 

164 f_DAC_cst_RAMP_VSIG = VBIAS9_RAMPVSIG_f * cst_DACconv # 31/47 * cst_DACconv 

165 o_DAC_cst_RAMP_VSIG = VBIAS9_RAMPVSIG_o 

166 

167 f_DAC_cst_VREF = VBIAS10_VREF_f * cst_DACconv # 31/47 * cst_DACconv 

168 o_DAC_cst_VREF = VBIAS10_VREF_o 

169 

170 f_DAC_cst_RAMP_VREF = VBIAS11_RAMPVREF_f * cst_DACconv # 31/47 * cst_DACconv 

171 o_DAC_cst_RAMP_VREF = VBIAS11_RAMPVREF_o 

172 

173 f_DAC_cst_VDDPIX = VBIAS12_DACVPIX_f * cst_DACconv # -0.000336 

174 o_DAC_cst_VDDPIX = VBIAS12_DACVPIX_o 

175 

176 f_DAC_cst_TEST_VSIG = VBIAS13_TESTVSIG_f * cst_DACconv # 31/47 * cst_DACconv 

177 o_DAC_cst_TEST_VSIG = VBIAS13_TESTVSIG_o 

178 

179 f_DAC_cst_TEST_VREF = VBIAS14_TESTVREF_f * cst_DACconv # 31/47 * cst_DACconv 

180 o_DAC_cst_TEST_VREF = VBIAS14_TESTVREF_o 

181 

182 o_ADC_cst_VHDR_L = -0.050 

183 o_ADC_cst_VTX_L = +0.010 

184 o_ADC_cst_VRST_L = +0.003 

185 

186 cst_TemperaturetoADC15_cst1 = -0.0089 

187 cst_TemperaturetoADC15_cst2 = 18.9236 

188 cst_TemperaturetoADC15_offs = 1938.7009 

189 cst_ADC15toTemperature_cst1 = 1.3535E-06 

190 cst_ADC15toTemperature_cst2 = 0.047781 

191 cst_ADC15toTemperature_offs = -97.748 

192 cst_ADC02toTemperature_cst1 = 5E-06 # R34 on FPGA Board SN5 =8k25 

193 cst_ADC02toTemperature_cst2 = 0.0639 # R34 on FPGA Board SN5 =8k25 

194 cst_ADC02toTemperature_offs = -239.01 # R34 on FPGA Board SN5 =8k25 

195 cst_ADC01toTemperature_cst1 = 5E-06 

196 cst_ADC01toTemperature_cst2 = 0.0631 

197 cst_ADC01toTemperature_offs = -238.1 

198 cst_Temp_GSENSE_fac = c_Temp_GSENSE_16301F0_019_f 

199 cst_Temp_GSENSE_offs = c_Temp_GSENSE_16301F0_019_o 

200 

201 

202@dataclass 

203class t_ConvFM1(): 

204 # Version: 2020_07_22 population values of SensorBoard SN3 

205 # do not edit: calibration factors based on populated resistors 

206 VBIAS1_VTXH_f = 0.7887 

207 VBIAS1_VTXH_o = 0.0000 

208 

209 VBIAS5_VRSTH_f = 0.7895 

210 VBIAS5_VRSTH_o = 0.0000 

211 

212 VBIAS4_VRSTL_f = 0.8012 

213 VBIAS4_VRSTL_o = -0.4969 

214 

215 VBIAS3_VTXL_f = 0.8017 

216 VBIAS3_VTXL_o = -0.4957 

217 

218 VBIAS7_VHDRH_f = 0.7906 

219 VBIAS7_VHDRH_o = 0.0000 

220 

221 VBIAS2_VHDRL_f = 0.8009 

222 VBIAS2_VHDRL_o = -0.4979 

223 

224 VBIAS9_RAMPVSIG_f = 0.6593 

225 VBIAS9_RAMPVSIG_o = 0.0000 

226 

227 VBIAS11_RAMPVREF_f = 0.6606 

228 VBIAS11_RAMPVREF_o = 0.0000 

229 

230 VBIAS13_TESTVSIG_f = 0.6582 

231 VBIAS13_TESTVSIG_o = 0.0000 

232 

233 VBIAS10_VREF_f = 0.6591 

234 VBIAS10_VREF_o = 0.0000 

235 

236 VBIAS14_TESTVREF_f = 0.6586 

237 VBIAS14_TESTVREF_o = 0.0000 

238 

239 VBIAS12_DACVPIX_f = -0.2757 

240 VBIAS12_DACVPIX_o = 3.2236 

241 # _do not edit: calibration factors based on populated resistors 

242 cst_ADCconv = 5 / 4095 # 2020_07_22: we use 5/4095 

243 cst_DACconv = 5 / 4095 # 2020_07_22: we use 5/4095 

244 f_DAC_cst_VTX_H = VBIAS1_VTXH_f * cst_DACconv # 37/47 * cst_DACconv 

245 o_DAC_cst_VTX_H = VBIAS1_VTXH_o 

246 

247 f_DAC_cst_VHDR_L = VBIAS2_VHDRL_f * cst_DACconv # 82/104 * cst_DACconv 

248 o_DAC_cst_VHDR_L = VBIAS2_VHDRL_o 

249 

250 f_DAC_cst_VTX_L = VBIAS3_VTXL_f * cst_DACconv # 82/104 * cst_DACconv 

251 o_DAC_cst_VTX_L = VBIAS3_VTXL_o 

252 

253 f_DAC_cst_VRST_L = VBIAS4_VRSTL_f * cst_DACconv # 82/104 * cst_DACconv 

254 o_DAC_cst_VRST_L = VBIAS4_VRSTL_o 

255 

256 f_DAC_cst_VRST_H = VBIAS5_VRSTH_f * cst_DACconv # 37/47 * cst_DACconv 

257 o_DAC_cst_VRST_H = VBIAS5_VRSTH_o 

258 

259 f_DAC_cst_SPARE = 1 * cst_DACconv 

260 o_DAC_cst_SPARE = 0 

261 

262 f_DAC_cst_VHDR_H = VBIAS7_VHDRH_f * cst_DACconv # 37/47 * cst_DACconv 

263 o_DAC_cst_VHDR_H = VBIAS7_VHDRH_o 

264 

265 f_DAC_cst_RAMP_VSIG = VBIAS9_RAMPVSIG_f * cst_DACconv # 31/47 * cst_DACconv 

266 o_DAC_cst_RAMP_VSIG = VBIAS9_RAMPVSIG_o 

267 

268 f_DAC_cst_VREF = VBIAS10_VREF_f * cst_DACconv # 31/47 * cst_DACconv 

269 o_DAC_cst_VREF = VBIAS10_VREF_o 

270 

271 f_DAC_cst_RAMP_VREF = VBIAS11_RAMPVREF_f * cst_DACconv # 31/47 * cst_DACconv 

272 o_DAC_cst_RAMP_VREF = VBIAS11_RAMPVREF_o 

273 

274 f_DAC_cst_VDDPIX = VBIAS12_DACVPIX_f * cst_DACconv # -0.000336 

275 o_DAC_cst_VDDPIX = VBIAS12_DACVPIX_o 

276 

277 f_DAC_cst_TEST_VSIG = VBIAS13_TESTVSIG_f * cst_DACconv # 31/47 * cst_DACconv 

278 o_DAC_cst_TEST_VSIG = VBIAS13_TESTVSIG_o 

279 

280 f_DAC_cst_TEST_VREF = VBIAS14_TESTVREF_f * cst_DACconv # 31/47 * cst_DACconv 

281 o_DAC_cst_TEST_VREF = VBIAS14_TESTVREF_o 

282 

283 o_ADC_cst_VHDR_L = 0 

284 o_ADC_cst_VTX_L = 0 

285 o_ADC_cst_VRST_L = 0 

286 

287 cst_TemperaturetoADC15_cst1 = -0.0089 

288 cst_TemperaturetoADC15_cst2 = 18.9236 

289 cst_TemperaturetoADC15_offs = 1938.7009 

290 cst_ADC15toTemperature_cst1 = 1.3535E-06 

291 cst_ADC15toTemperature_cst2 = 0.047781 

292 cst_ADC15toTemperature_offs = -97.748 

293 cst_ADC02toTemperature_cst1 = 5E-06 

294 cst_ADC02toTemperature_cst2 = 0.0631 

295 cst_ADC02toTemperature_offs = -234.1 # 2020_06_06 offset raised by 4 degC to match TV measurements 

296 cst_ADC01toTemperature_cst1 = 5E-06 

297 cst_ADC01toTemperature_cst2 = 0.0639 # to be verified if 8k25 was populated 

298 cst_ADC01toTemperature_offs = -233.1 # 2020_06_06 offset raised by 4 degC to match TV measurements 

299 cst_Temp_GSENSE_fac = c_Temp_GSENSE_17301F0_003_f 

300 cst_Temp_GSENSE_offs = c_Temp_GSENSE_17301F0_003_o 

301 

302 

303@dataclass 

304class t_ConvFM2(): 

305 # Version: 2020_07_22 population values of SensorBoard SN4 

306 # do not edit: calibration factors based on populated resistors 

307 VBIAS1_VTXH_f = 0.7898 

308 VBIAS1_VTXH_o = 0.0000 - 0.006 # 2020_10_21 Bench 

309 

310 VBIAS5_VRSTH_f = 0.7900 

311 VBIAS5_VRSTH_o = 0.0000 - 0.006 # 2020_10_21 Bench 

312 

313 VBIAS4_VRSTL_f = 0.8013 

314 VBIAS4_VRSTL_o = -0.4967 

315 

316 VBIAS3_VTXL_f = 0.8012 

317 VBIAS3_VTXL_o = -0.4969 

318 

319 VBIAS7_VHDRH_f = 0.7899 

320 VBIAS7_VHDRH_o = 0.0000 - 0.009 # 2020_10_21 Bench 

321 

322 VBIAS2_VHDRL_f = 0.8018 

323 VBIAS2_VHDRL_o = -0.4955 

324 

325 VBIAS9_RAMPVSIG_f = 0.6594 

326 VBIAS9_RAMPVSIG_o = 0.0000 

327 

328 VBIAS11_RAMPVREF_f = 0.6603 

329 VBIAS11_RAMPVREF_o = 0.0000 

330 

331 VBIAS13_TESTVSIG_f = 0.6578 

332 VBIAS13_TESTVSIG_o = 0.0000 

333 

334 VBIAS10_VREF_f = 0.6591 

335 VBIAS10_VREF_o = 0.0000 

336 

337 VBIAS14_TESTVREF_f = 0.6523 

338 VBIAS14_TESTVREF_o = 0.0000 

339 

340 VBIAS12_DACVPIX_f = -0.2820 

341 VBIAS12_DACVPIX_o = 3.2555 - 0.025 # 2020_10_21 Bench 

342 # _ do not edit: calibration factors based on populated resistors 

343 

344 cst_ADCconv = 5 / 4095 

345 cst_DACconv = 5 / 4095 

346 f_DAC_cst_VTX_H = VBIAS1_VTXH_f * cst_DACconv # 37/47 * cst_DACconv 

347 o_DAC_cst_VTX_H = VBIAS1_VTXH_o 

348 

349 f_DAC_cst_VHDR_L = VBIAS2_VHDRL_f * cst_DACconv # 82/104 * cst_DACconv 

350 o_DAC_cst_VHDR_L = VBIAS2_VHDRL_o 

351 

352 f_DAC_cst_VTX_L = VBIAS3_VTXL_f * cst_DACconv # 82/104 * cst_DACconv 

353 o_DAC_cst_VTX_L = VBIAS3_VTXL_o 

354 

355 f_DAC_cst_VRST_L = VBIAS4_VRSTL_f * cst_DACconv # 82/104 * cst_DACconv 

356 o_DAC_cst_VRST_L = VBIAS4_VRSTL_o 

357 

358 f_DAC_cst_VRST_H = VBIAS5_VRSTH_f * cst_DACconv # 37/47 * cst_DACconv 

359 o_DAC_cst_VRST_H = VBIAS5_VRSTH_o 

360 

361 f_DAC_cst_SPARE = 1 * cst_DACconv 

362 o_DAC_cst_SPARE = 0 

363 

364 f_DAC_cst_VHDR_H = VBIAS7_VHDRH_f * cst_DACconv # 37/47 * cst_DACconv 

365 o_DAC_cst_VHDR_H = VBIAS7_VHDRH_o 

366 

367 f_DAC_cst_RAMP_VSIG = VBIAS9_RAMPVSIG_f * cst_DACconv # 31/47 * cst_DACconv 

368 o_DAC_cst_RAMP_VSIG = VBIAS9_RAMPVSIG_o 

369 

370 f_DAC_cst_VREF = VBIAS10_VREF_f * cst_DACconv # 31/47 * cst_DACconv 

371 o_DAC_cst_VREF = VBIAS10_VREF_o 

372 

373 f_DAC_cst_RAMP_VREF = VBIAS11_RAMPVREF_f * cst_DACconv # 31/47 * cst_DACconv 

374 o_DAC_cst_RAMP_VREF = VBIAS11_RAMPVREF_o 

375 

376 f_DAC_cst_VDDPIX = VBIAS12_DACVPIX_f * cst_DACconv # -0.000336 

377 o_DAC_cst_VDDPIX = VBIAS12_DACVPIX_o 

378 

379 f_DAC_cst_TEST_VSIG = VBIAS13_TESTVSIG_f * cst_DACconv # 31/47 * cst_DACconv 

380 o_DAC_cst_TEST_VSIG = VBIAS13_TESTVSIG_o 

381 

382 f_DAC_cst_TEST_VREF = VBIAS14_TESTVREF_f * cst_DACconv # 31/47 * cst_DACconv 

383 o_DAC_cst_TEST_VREF = VBIAS14_TESTVREF_o 

384 

385 o_ADC_cst_VHDR_L = +0.016 

386 o_ADC_cst_VTX_L = +0.031 

387 o_ADC_cst_VRST_L = +0.010 

388 

389 cst_TemperaturetoADC15_cst1 = -0.0089 

390 cst_TemperaturetoADC15_cst2 = 18.9236 

391 cst_TemperaturetoADC15_offs = 1938.7009 

392 cst_ADC15toTemperature_cst1 = 1.3535E-06 

393 cst_ADC15toTemperature_cst2 = 0.047781 

394 cst_ADC15toTemperature_offs = -97.748 

395 cst_ADC02toTemperature_cst1 = 5E-06 

396 cst_ADC02toTemperature_cst2 = 0.0631 

397 cst_ADC02toTemperature_offs = -234.1 # 2020_06_06 offset raised by 4 degC to match TV measurements 

398 cst_ADC01toTemperature_cst1 = 5E-06 

399 cst_ADC01toTemperature_cst2 = 0.0639 # to be verified if 8k25 was populated 

400 cst_ADC01toTemperature_offs = -233.1 # 2020_06_06 offset raised by 4 degC to match TV measurements 

401 

402 cst_Temp_GSENSE_fac = c_Temp_GSENSE_17301F0_021_f 

403 cst_Temp_GSENSE_offs = c_Temp_GSENSE_17301F0_021_o 

404 

405 

406@dataclass 

407class t_ConvFM3(): 

408 # Version: 2020_07_22 population values of SensorBoard SN5 

409 # do not edit: calibration factors based on populated resistors 

410 VBIAS1_VTXH_f = 0.7889 

411 VBIAS1_VTXH_o = 0.0000 

412 

413 VBIAS5_VRSTH_f = 0.7884 

414 VBIAS5_VRSTH_o = 0.0000 

415 

416 VBIAS4_VRSTL_f = 0.8016 

417 VBIAS4_VRSTL_o = -0.4959 

418 

419 VBIAS3_VTXL_f = 0.8012 

420 VBIAS3_VTXL_o = -0.4969 

421 

422 VBIAS7_VHDRH_f = 0.7894 

423 VBIAS7_VHDRH_o = 0.0000 

424 

425 VBIAS2_VHDRL_f = 0.8011 

426 VBIAS2_VHDRL_o = -0.4973 

427 

428 VBIAS9_RAMPVSIG_f = 0.6594 

429 VBIAS9_RAMPVSIG_o = 0.0000 

430 

431 VBIAS11_RAMPVREF_f = 0.6588 

432 VBIAS11_RAMPVREF_o = 0.0000 

433 

434 VBIAS13_TESTVSIG_f = 0.6595 

435 VBIAS13_TESTVSIG_o = 0.0000 

436 

437 VBIAS10_VREF_f = 0.6584 

438 VBIAS10_VREF_o = 0.0000 

439 

440 VBIAS14_TESTVREF_f = 0.6590 

441 VBIAS14_TESTVREF_o = 0.0000 

442 

443 VBIAS12_DACVPIX_f = -0.2717 

444 VBIAS12_DACVPIX_o = 3.2143 

445 

446 # __do not edit: calibration factors based on populated resistors 

447 cst_ADCconv = 5 / 4095 

448 cst_DACconv = 5 / 4095 

449 f_DAC_cst_VTX_H = VBIAS1_VTXH_f * cst_DACconv # 37/47 * cst_DACconv 

450 o_DAC_cst_VTX_H = VBIAS1_VTXH_o 

451 

452 f_DAC_cst_VHDR_L = VBIAS2_VHDRL_f * cst_DACconv # 82/104 * cst_DACconv 

453 o_DAC_cst_VHDR_L = VBIAS2_VHDRL_o 

454 

455 f_DAC_cst_VTX_L = VBIAS3_VTXL_f * cst_DACconv # 82/104 * cst_DACconv 

456 o_DAC_cst_VTX_L = VBIAS3_VTXL_o 

457 

458 f_DAC_cst_VRST_L = VBIAS4_VRSTL_f * cst_DACconv # 82/104 * cst_DACconv 

459 o_DAC_cst_VRST_L = VBIAS4_VRSTL_o 

460 

461 f_DAC_cst_VRST_H = VBIAS5_VRSTH_f * cst_DACconv # 37/47 * cst_DACconv 

462 o_DAC_cst_VRST_H = VBIAS5_VRSTH_o 

463 

464 f_DAC_cst_SPARE = 1 * cst_DACconv 

465 o_DAC_cst_SPARE = 0 

466 

467 f_DAC_cst_VHDR_H = VBIAS7_VHDRH_f * cst_DACconv # 37/47 * cst_DACconv 

468 o_DAC_cst_VHDR_H = VBIAS7_VHDRH_o 

469 

470 f_DAC_cst_RAMP_VSIG = VBIAS9_RAMPVSIG_f * cst_DACconv # 31/47 * cst_DACconv 

471 o_DAC_cst_RAMP_VSIG = VBIAS9_RAMPVSIG_o 

472 

473 f_DAC_cst_VREF = VBIAS10_VREF_f * cst_DACconv # 31/47 * cst_DACconv 

474 o_DAC_cst_VREF = VBIAS10_VREF_o 

475 

476 f_DAC_cst_RAMP_VREF = VBIAS11_RAMPVREF_f * cst_DACconv # 31/47 * cst_DACconv 

477 o_DAC_cst_RAMP_VREF = VBIAS11_RAMPVREF_o 

478 

479 f_DAC_cst_VDDPIX = VBIAS12_DACVPIX_f * cst_DACconv # -0.000336 

480 o_DAC_cst_VDDPIX = VBIAS12_DACVPIX_o 

481 

482 f_DAC_cst_TEST_VSIG = VBIAS13_TESTVSIG_f * cst_DACconv # 31/47 * cst_DACconv 

483 o_DAC_cst_TEST_VSIG = VBIAS13_TESTVSIG_o 

484 

485 f_DAC_cst_TEST_VREF = VBIAS14_TESTVREF_f * cst_DACconv # 31/47 * cst_DACconv 

486 o_DAC_cst_TEST_VREF = VBIAS14_TESTVREF_o 

487 

488 o_ADC_cst_VHDR_L = 0 

489 o_ADC_cst_VTX_L = 0 

490 o_ADC_cst_VRST_L = 0 

491 

492 cst_TemperaturetoADC15_cst1 = -0.0089 

493 cst_TemperaturetoADC15_cst2 = 18.9236 

494 cst_TemperaturetoADC15_offs = 1938.7009 

495 cst_ADC15toTemperature_cst1 = 1.3535E-06 

496 cst_ADC15toTemperature_cst2 = 0.047781 

497 cst_ADC15toTemperature_offs = -97.748 

498 cst_ADC02toTemperature_cst1 = 5E-06 

499 cst_ADC02toTemperature_cst2 = 0.0631 

500 cst_ADC02toTemperature_offs = -234.1 # 2020_06_06 offset raised by 4 degC to match TV measurements 

501 cst_ADC01toTemperature_cst1 = 5E-06 

502 cst_ADC01toTemperature_cst2 = 0.0639 # to be verified if 8k25 was populated 

503 cst_ADC01toTemperature_offs = -233.1 # 2020_06_06 offset raised by 4 degC to match TV measurements 

504 cst_Temp_GSENSE_fac = c_Temp_GSENSE_17301F0_003_f 

505 cst_Temp_GSENSE_offs = c_Temp_GSENSE_17301F0_003_o 

506 

507 

508@dataclass 

509class t_ConvFM4(): 

510 # not yet updated with population values from FM4 board set 

511 # Version: 2020_07_22 population values of SensorBoard SN5 

512 # do not edit: calibration factors based on populated resistors 

513 

514 VBIAS1_VTXH_f = 0.7889 

515 VBIAS1_VTXH_o = 0.0000 

516 

517 VBIAS5_VRSTH_f = 0.7884 

518 VBIAS5_VRSTH_o = 0.0000 

519 

520 VBIAS4_VRSTL_f = 0.8016 

521 VBIAS4_VRSTL_o = -0.4959 

522 

523 VBIAS3_VTXL_f = 0.8012 

524 VBIAS3_VTXL_o = -0.4969 

525 

526 VBIAS7_VHDRH_f = 0.7894 

527 VBIAS7_VHDRH_o = 0.0000 

528 

529 VBIAS2_VHDRL_f = 0.8011 

530 VBIAS2_VHDRL_o = -0.4973 

531 

532 VBIAS9_RAMPVSIG_f = 0.6594 

533 VBIAS9_RAMPVSIG_o = 0.0000 

534 

535 VBIAS11_RAMPVREF_f = 0.6588 

536 VBIAS11_RAMPVREF_o = 0.0000 

537 

538 VBIAS13_TESTVSIG_f = 0.6595 

539 VBIAS13_TESTVSIG_o = 0.0000 

540 

541 VBIAS10_VREF_f = 0.6584 

542 VBIAS10_VREF_o = 0.0000 

543 

544 VBIAS14_TESTVREF_f = 0.6590 

545 VBIAS14_TESTVREF_o = 0.0000 

546 

547 VBIAS12_DACVPIX_f = -0.2717 

548 VBIAS12_DACVPIX_o = 3.2143 

549 

550 # __do not edit: calibration factors based on populated resistors 

551 cst_ADCconv = 5 / 4095 

552 cst_DACconv = 5 / 4095 

553 f_DAC_cst_VTX_H = VBIAS1_VTXH_f * cst_DACconv # 37/47 * cst_DACconv 

554 o_DAC_cst_VTX_H = VBIAS1_VTXH_o 

555 

556 f_DAC_cst_VHDR_L = VBIAS2_VHDRL_f * cst_DACconv # 82/104 * cst_DACconv 

557 o_DAC_cst_VHDR_L = VBIAS2_VHDRL_o 

558 

559 f_DAC_cst_VTX_L = VBIAS3_VTXL_f * cst_DACconv # 82/104 * cst_DACconv 

560 o_DAC_cst_VTX_L = VBIAS3_VTXL_o 

561 

562 f_DAC_cst_VRST_L = VBIAS4_VRSTL_f * cst_DACconv # 82/104 * cst_DACconv 

563 o_DAC_cst_VRST_L = VBIAS4_VRSTL_o 

564 

565 f_DAC_cst_VRST_H = VBIAS5_VRSTH_f * cst_DACconv # 37/47 * cst_DACconv 

566 o_DAC_cst_VRST_H = VBIAS5_VRSTH_o 

567 

568 f_DAC_cst_SPARE = 1 * cst_DACconv 

569 o_DAC_cst_SPARE = 0 

570 

571 f_DAC_cst_VHDR_H = VBIAS7_VHDRH_f * cst_DACconv # 37/47 * cst_DACconv 

572 o_DAC_cst_VHDR_H = VBIAS7_VHDRH_o 

573 

574 f_DAC_cst_RAMP_VSIG = VBIAS9_RAMPVSIG_f * cst_DACconv # 31/47 * cst_DACconv 

575 o_DAC_cst_RAMP_VSIG = VBIAS9_RAMPVSIG_o 

576 

577 f_DAC_cst_VREF = VBIAS10_VREF_f * cst_DACconv # 31/47 * cst_DACconv 

578 o_DAC_cst_VREF = VBIAS10_VREF_o 

579 

580 f_DAC_cst_RAMP_VREF = VBIAS11_RAMPVREF_f * cst_DACconv # 31/47 * cst_DACconv 

581 o_DAC_cst_RAMP_VREF = VBIAS11_RAMPVREF_o 

582 

583 f_DAC_cst_VDDPIX = VBIAS12_DACVPIX_f * cst_DACconv # -0.000336 

584 o_DAC_cst_VDDPIX = VBIAS12_DACVPIX_o 

585 

586 f_DAC_cst_TEST_VSIG = VBIAS13_TESTVSIG_f * cst_DACconv # 31/47 * cst_DACconv 

587 o_DAC_cst_TEST_VSIG = VBIAS13_TESTVSIG_o 

588 

589 f_DAC_cst_TEST_VREF = VBIAS14_TESTVREF_f * cst_DACconv # 31/47 * cst_DACconv 

590 o_DAC_cst_TEST_VREF = VBIAS14_TESTVREF_o 

591 

592 o_ADC_cst_VHDR_L = 0 

593 o_ADC_cst_VTX_L = 0 

594 o_ADC_cst_VRST_L = 0 

595 

596 cst_TemperaturetoADC15_cst1 = -0.0089 

597 cst_TemperaturetoADC15_cst2 = 18.9236 

598 cst_TemperaturetoADC15_offs = 1938.7009 

599 cst_ADC15toTemperature_cst1 = 1.3535E-06 

600 cst_ADC15toTemperature_cst2 = 0.047781 

601 cst_ADC15toTemperature_offs = -97.748 

602 cst_ADC02toTemperature_cst1 = 5E-06 

603 cst_ADC02toTemperature_cst2 = 0.0631 

604 cst_ADC02toTemperature_offs = -234.1 # 2020_06_06 offset raised by 4 degC to match TV measurements 

605 cst_ADC01toTemperature_cst1 = 5E-06 

606 cst_ADC01toTemperature_cst2 = 0.0639 # to be verified if 8k25 was populated 

607 cst_ADC01toTemperature_offs = -233.1 # 2020_06_06 offset raised by 4 degC to match TV measurements 

608 cst_Temp_GSENSE_fac = c_Temp_GSENSE_17301F0_003_f 

609 cst_Temp_GSENSE_offs = c_Temp_GSENSE_17301F0_003_o 

610 

611 

612@dataclass 

613class t_ConvFM5(): 

614 # not yet updated with population values from FM5 board set 

615 # Version: 2020_07_22 population values of SensorBoard SN5 

616 # do not edit: calibration factors based on populated resistors 

617 

618 VBIAS1_VTXH_f = 0.7889 

619 VBIAS1_VTXH_o = 0.0000 

620 

621 VBIAS5_VRSTH_f = 0.7884 

622 VBIAS5_VRSTH_o = 0.0000 

623 

624 VBIAS4_VRSTL_f = 0.8016 

625 VBIAS4_VRSTL_o = -0.4959 

626 

627 VBIAS3_VTXL_f = 0.8012 

628 VBIAS3_VTXL_o = -0.4969 

629 

630 VBIAS7_VHDRH_f = 0.7894 

631 VBIAS7_VHDRH_o = 0.0000 

632 

633 VBIAS2_VHDRL_f = 0.8011 

634 VBIAS2_VHDRL_o = -0.4973 

635 

636 VBIAS9_RAMPVSIG_f = 0.6594 

637 VBIAS9_RAMPVSIG_o = 0.0000 

638 

639 VBIAS11_RAMPVREF_f = 0.6588 

640 VBIAS11_RAMPVREF_o = 0.0000 

641 

642 VBIAS13_TESTVSIG_f = 0.6595 

643 VBIAS13_TESTVSIG_o = 0.0000 

644 

645 VBIAS10_VREF_f = 0.6584 

646 VBIAS10_VREF_o = 0.0000 

647 

648 VBIAS14_TESTVREF_f = 0.6590 

649 VBIAS14_TESTVREF_o = 0.0000 

650 

651 VBIAS12_DACVPIX_f = -0.2717 

652 VBIAS12_DACVPIX_o = 3.2143 

653 

654 # __do not edit: calibration factors based on populated resistors 

655 cst_ADCconv = 5 / 4095 

656 cst_DACconv = 5 / 4095 

657 f_DAC_cst_VTX_H = VBIAS1_VTXH_f * cst_DACconv # 37/47 * cst_DACconv 

658 o_DAC_cst_VTX_H = VBIAS1_VTXH_o 

659 

660 f_DAC_cst_VHDR_L = VBIAS2_VHDRL_f * cst_DACconv # 82/104 * cst_DACconv 

661 o_DAC_cst_VHDR_L = VBIAS2_VHDRL_o 

662 

663 f_DAC_cst_VTX_L = VBIAS3_VTXL_f * cst_DACconv # 82/104 * cst_DACconv 

664 o_DAC_cst_VTX_L = VBIAS3_VTXL_o 

665 

666 f_DAC_cst_VRST_L = VBIAS4_VRSTL_f * cst_DACconv # 82/104 * cst_DACconv 

667 o_DAC_cst_VRST_L = VBIAS4_VRSTL_o 

668 

669 f_DAC_cst_VRST_H = VBIAS5_VRSTH_f * cst_DACconv # 37/47 * cst_DACconv 

670 o_DAC_cst_VRST_H = VBIAS5_VRSTH_o 

671 

672 f_DAC_cst_SPARE = 1 * cst_DACconv 

673 o_DAC_cst_SPARE = 0 

674 

675 f_DAC_cst_VHDR_H = VBIAS7_VHDRH_f * cst_DACconv # 37/47 * cst_DACconv 

676 o_DAC_cst_VHDR_H = VBIAS7_VHDRH_o 

677 

678 f_DAC_cst_RAMP_VSIG = VBIAS9_RAMPVSIG_f * cst_DACconv # 31/47 * cst_DACconv 

679 o_DAC_cst_RAMP_VSIG = VBIAS9_RAMPVSIG_o 

680 

681 f_DAC_cst_VREF = VBIAS10_VREF_f * cst_DACconv # 31/47 * cst_DACconv 

682 o_DAC_cst_VREF = VBIAS10_VREF_o 

683 

684 f_DAC_cst_RAMP_VREF = VBIAS11_RAMPVREF_f * cst_DACconv # 31/47 * cst_DACconv 

685 o_DAC_cst_RAMP_VREF = VBIAS11_RAMPVREF_o 

686 

687 f_DAC_cst_VDDPIX = VBIAS12_DACVPIX_f * cst_DACconv # -0.000336 

688 o_DAC_cst_VDDPIX = VBIAS12_DACVPIX_o 

689 

690 f_DAC_cst_TEST_VSIG = VBIAS13_TESTVSIG_f * cst_DACconv # 31/47 * cst_DACconv 

691 o_DAC_cst_TEST_VSIG = VBIAS13_TESTVSIG_o 

692 

693 f_DAC_cst_TEST_VREF = VBIAS14_TESTVREF_f * cst_DACconv # 31/47 * cst_DACconv 

694 o_DAC_cst_TEST_VREF = VBIAS14_TESTVREF_o 

695 

696 o_ADC_cst_VHDR_L = 0 

697 o_ADC_cst_VTX_L = 0 

698 o_ADC_cst_VRST_L = 0 

699 

700 cst_TemperaturetoADC15_cst1 = -0.0089 

701 cst_TemperaturetoADC15_cst2 = 18.9236 

702 cst_TemperaturetoADC15_offs = 1938.7009 

703 cst_ADC15toTemperature_cst1 = 1.3535E-06 

704 cst_ADC15toTemperature_cst2 = 0.047781 

705 cst_ADC15toTemperature_offs = -97.748 

706 cst_ADC02toTemperature_cst1 = 5E-06 

707 cst_ADC02toTemperature_cst2 = 0.0631 

708 cst_ADC02toTemperature_offs = -234.1 # 2020_06_06 offset raised by 4 degC to match TV measurements 

709 cst_ADC01toTemperature_cst1 = 5E-06 

710 cst_ADC01toTemperature_cst2 = 0.0639 # to be verified if 8k25 was populated 

711 cst_ADC01toTemperature_offs = -233.1 # 2020_06_06 offset raised by 4 degC to match TV measurements 

712 cst_Temp_GSENSE_fac = c_Temp_GSENSE_17301F0_003_f 

713 cst_Temp_GSENSE_offs = c_Temp_GSENSE_17301F0_003_o 

714 

715 

716# hardware information for already integrated cameras 

717HardwarefromId_unknown = { 

718 cam_defs.s_name: 'unknown configuration', 

719 cam_defs.s_hardwareid: "US500", 

720 cam_defs.s_model: "N/A", 

721 cam_defs.s_description: "unknown configuration", 

722 cam_defs.s_sensor_type: "unknwown", 

723 cam_defs.s_sensor_lotno: "unknwown", 

724 cam_defs.s_sensor_sn: "unknwown", 

725 cam_defs.s_psu_board_id: "unknwown", 

726 cam_defs.s_sensor_board_id: "unknwown", 

727 s_calibration: t_ConvBB1, 

728 s_calibrationnote: '2020_06_18_EM_Calibration' 

729} 

730 

731# hardware information for already integrated cameras 

732HardwarefromId_2 = { 

733 cam_defs.s_name: 'integrated EM', 

734 cam_defs.s_hardwareid: "US520", 

735 cam_defs.s_model: "EM", 

736 cam_defs.s_description: "INTEGRATED EM", 

737 cam_defs.s_sensor_type: "G400-BSI", 

738 cam_defs.s_sensor_lotno: "16301F0", 

739 cam_defs.s_sensor_sn: "0019", 

740 cam_defs.s_psu_board_id: "PSU_SN3", 

741 cam_defs.s_sensor_board_id: "SB_BB2", 

742 s_calibration: t_ConvEM1, 

743 s_calibrationnote: '2020_06_18_EM_Calibration', 

744 cam_defs.s_ID_OW1: '450000038FA46E28', 

745 cam_defs.s_ID_OW2: '??', 

746 cam_defs.s_ID_OW3: '??', 

747 cam_defs.s_ID_OW4: '??' 

748 

749} 

750 

751# hardware information for already integrated cameras 

752HardwarefromId_6 = { 

753 cam_defs.s_name: 'integrated FM1=SJ1', 

754 cam_defs.s_hardwareid: "US540", 

755 cam_defs.s_model: "FM1=SJ1", 

756 cam_defs.s_description: "INTEGRATED FM1", 

757 cam_defs.s_sensor_type: "GSENSE400BSI-VIS", 

758 cam_defs.s_sensor_lotno: "17301F0", 

759 cam_defs.s_sensor_sn: "0003", 

760 cam_defs.s_psu_board_id: "PSU_SN4", 

761 cam_defs.s_sensor_board_id: "SB_SN3", 

762 s_calibration: t_ConvFM1, 

763 s_calibrationnote: '2020_06_18_TV_Test_Vötsch-2', 

764 cam_defs.s_ID_OW1: '900000038FC2E828', 

765 cam_defs.s_ID_OW2: 'F10000038FAAC328', 

766 cam_defs.s_ID_OW3: '450000038FA46E28', 

767 cam_defs.s_ID_OW4: '1E00000A9FF1BC28' 

768} 

769 

770# hardware information for already integrated cameras 

771HardwarefromId_4 = { 

772 cam_defs.s_name: 'integrated FM2=SP1', 

773 cam_defs.s_hardwareid: "US550", 

774 cam_defs.s_model: "FM2=SP1", 

775 cam_defs.s_description: "INTEGRATED FM2", 

776 cam_defs.s_sensor_type: "GSENSE G-400", 

777 cam_defs.s_sensor_lotno: "17F301F0", 

778 cam_defs.s_sensor_sn: "0021", 

779 cam_defs.s_psu_board_id: "PSU_SN5", 

780 cam_defs.s_sensor_board_id: "SB_SN4", 

781 s_calibration: t_ConvFM2, 

782 s_calibrationnote: 'not calibrated', 

783 cam_defs.s_ID_OW1: 'BF0000038FACBE28', 

784 cam_defs.s_ID_OW2: '340000038F8EF928', 

785 cam_defs.s_ID_OW3: '500000038FB4DC28', 

786 cam_defs.s_ID_OW4: '9A00000AA00A1828' 

787} 

788 

789# hardware information for already integrated cameras 

790HardwarefromId_5 = { 

791 cam_defs.s_name: 'integrated FM3=SP2', 

792 cam_defs.s_hardwareid: "US560", 

793 cam_defs.s_model: "FM3=SP2", 

794 cam_defs.s_description: "INTEGRATED FM3", 

795 cam_defs.s_sensor_type: "GSENSE G-400", 

796 cam_defs.s_sensor_lotno: "17F301F0", 

797 cam_defs.s_sensor_sn: "0012", 

798 cam_defs.s_psu_board_id: "PSU_SN6", 

799 cam_defs.s_sensor_board_id: "SB_SN5", 

800 s_calibration: t_ConvFM3, 

801 s_calibrationnote: 'not calibrated', 

802 cam_defs.s_ID_OW1: 'F80000038FB62F28', 

803 cam_defs.s_ID_OW2: 'CE0000038FCEF728', 

804 cam_defs.s_ID_OW3: '0F0000038FC56728', 

805 cam_defs.s_ID_OW4: 'A200000A9FF1C328' 

806} 

807 

808# hardware information for already integrated cameras 

809HardwarefromId_7 = { 

810 cam_defs.s_name: 'FS1', 

811 cam_defs.s_hardwareid: "US570", 

812 cam_defs.s_model: "FS1", 

813 cam_defs.s_description: "FS1 Board Set", 

814 cam_defs.s_sensor_type: "GSENSE G-400", 

815 cam_defs.s_sensor_lotno: "none", 

816 cam_defs.s_sensor_sn: "none", 

817 cam_defs.s_psu_board_id: "PSU_SN7", 

818 cam_defs.s_sensor_board_id: "SB_SN6", 

819 s_calibration: t_ConvFM4, 

820 s_calibrationnote: 'not calibrated', 

821 cam_defs.s_ID_OW1: '0E0000038FAE1C28', 

822 cam_defs.s_ID_OW2: '1100000BE9A2AB28', 

823 cam_defs.s_ID_OW3: '8700000BE9B75628', 

824 cam_defs.s_ID_OW4: 'E600000A9FF1B728' 

825} 

826 

827# hardware information for already integrated cameras 

828HardwarefromId_8 = { 

829 cam_defs.s_name: 'FS2', 

830 cam_defs.s_hardwareid: "US580", 

831 cam_defs.s_model: "FS2", 

832 cam_defs.s_description: "FS2 Board Set", 

833 cam_defs.s_sensor_type: "GSENSE G-400", 

834 cam_defs.s_sensor_lotno: "none", 

835 cam_defs.s_sensor_sn: "none", 

836 cam_defs.s_psu_board_id: "PSU_SN11", 

837 cam_defs.s_sensor_board_id: "SB_SN7", 

838 s_calibration: t_ConvFM5, 

839 s_calibrationnote: 'not calibrated', 

840 cam_defs.s_ID_OW1: 'CA0000038FA43628', 

841 cam_defs.s_ID_OW2: '200000038FA3F928', 

842 cam_defs.s_ID_OW3: '7500000BE9A78B28', 

843 cam_defs.s_ID_OW4: 'DB00000A9FE50428' 

844}