Determining the darkness level with analog inputs and the mraa library
We will create a new DarknessSensor class to represent the photoresistor included in the voltage divider and connected to our board, specifically, to an analog input pin. As we already wrote code to read and transform an analog input, we will use the previously created VoltageInput class. The following lines show the code for the new DarknessSensor class that works with the mraa library. The code file for the sample is iot_python_chapter_06_02.py.
import mraa
import time
class DarknessSensor:
# Light level descriptions
light_extremely_dark = "extremely dark"
light_very_dark = "very dark"
light_dark = "just dark"
light_no_need_for_a_flashlight = \
"there is no need for a flashlight"
# Maximum voltages that determine the light level
extremely_dark_max_voltage = 2.0
very_dark_max_voltage = 3.0
dark_max_voltage = 4.0
def __init__(self, analog_pin):
self.voltage_input...