X-Git-Url: https://zdv2.bktei.com/gitweb/EVA-2020-02-2.git/blobdiff_plain/870b67fb2aafac5ba97285e9e2f8d3836a89ce10..be4506a78edb35b7bc4514949833cb86459e24c3:/examples/compensated-temperature.py diff --git a/examples/compensated-temperature.py b/examples/compensated-temperature.py index 048eb80..6a9c115 100755 --- a/examples/compensated-temperature.py +++ b/examples/compensated-temperature.py @@ -9,7 +9,14 @@ try: except ImportError: from smbus import SMBus -print("""compensated-temperature.py - Use the CPU temperature +import logging + +logging.basicConfig( + format='%(asctime)s.%(msecs)03d %(levelname)-8s %(message)s', + level=logging.INFO, + datefmt='%Y-%m-%d %H:%M:%S') + +logging.info("""compensated-temperature.py - Use the CPU temperature to compensate temperature readings from the BME280 sensor. Method adapted from Initial State's Enviro pHAT review: https://medium.com/@InitialState/tutorial-review-enviro-phat-for-raspberry-pi-4cd6d8c63441 @@ -24,9 +31,8 @@ bme280 = BME280(i2c_dev=bus) # Get the temperature of the CPU for compensation def get_cpu_temperature(): - process = Popen(['vcgencmd', 'measure_temp'], stdout=PIPE) + process = Popen(['vcgencmd', 'measure_temp'], stdout=PIPE, universal_newlines=True) output, _error = process.communicate() - output = output.decode() return float(output[output.index('=') + 1:output.rindex("'")]) @@ -34,7 +40,7 @@ def get_cpu_temperature(): # temperature down, and increase to adjust up factor = 0.8 -cpu_temps = [0] * 5 +cpu_temps = [get_cpu_temperature()] * 5 while True: cpu_temp = get_cpu_temperature() @@ -43,5 +49,5 @@ while True: avg_cpu_temp = sum(cpu_temps) / float(len(cpu_temps)) raw_temp = bme280.get_temperature() comp_temp = raw_temp - ((avg_cpu_temp - raw_temp) / factor) - print("Compensated temperature: {:05.2f} *C".format(comp_temp)) + logging.info("Compensated temperature: {:05.2f} *C".format(comp_temp)) time.sleep(1.0)