def get_ambient_temperature(self, n=5):
'''
Populates the self.ambient_temp property
Calculation is taken from Rs232_Comms_v100.pdf section "Converting values
sent by the device to meaningful units" item 5.
'''
self.logger.info('Getting ambient temperature')
values = []
for i in range(0, n):
try:
value = float(self.query('!T')[0]) / 100.
except:
pass
else:
self.logger.debug(' Ambient Temperature Query = {:.1f}'.format(value))
values.append(value)
if len(values) >= n - 1:
self.ambient_temp = np.median(values) * u.Celsius
self.logger.info(' Ambient Temperature = {:.1f}'.format(self.ambient_temp))
else:
self.ambient_temp = None
self.logger.info(' Failed to Read Ambient Temperature')
return self.ambient_temp
评论列表
文章目录