コード例 #1
0
ファイル: sensor_class.py プロジェクト: colestrine/NYSG
 def __init__(self, i2c_channel):
     """
     __init__(self, i2c_channel) creates a light sensor object on I2c channel
     [i2c_channel]
     """
     self.channel = i2c_channel
     sensor = adafruit_veml7700.VEML7700(i2c_channel)
     self.sensor = sensor
コード例 #2
0
class Light():

    i2c = busio.I2C(board.SCL, board.SDA)
    VEML_SENSOR = adafruit_veml7700.VEML7700(i2c)

    def read(self):
        self.VEML_SENSOR.light_gain = self.VEML_SENSOR.ALS_GAIN_1_8
        self.VEML_SENSOR.light_integration_time = self.VEML_SENSOR.ALS_25MS
        return self.VEML_SENSOR.lux
コード例 #3
0
    def __init__(self,
                 i2c_bus,
                 name="sns_lt0",
                 interval=SENSOR_UPDATE_INTERVAL,
                 *args,
                 **kwargs):
        Device.__init__(self, name=name, interval=interval, *args, **kwargs)

        import adafruit_veml7700
        self.sensor = adafruit_veml7700.VEML7700(i2c_bus)
コード例 #4
0
ファイル: veml_7700.py プロジェクト: ganonp/GardenHub
 def __init__(self,
              scl=board.SCL,
              sda=board.SDA,
              serial_no=None,
              channels=None,
              *args,
              **kwargs):
     self.i2c = busio.I2C(scl, sda)
     self.veml7700 = adafruit_veml7700.VEML7700(self.i2c)
     self.type = __name__
     super().__init__(serial_no, channels, *args, **kwargs)
コード例 #5
0
ファイル: sensor_class.py プロジェクト: colestrine/NYSG
def basic_light_test(n_iter):
    """
    basic_light_test(n_iter) runs basic test on light sensor to make sure
    hardware reads properlu
    """
    i2c = busio.I2C(board.SCL, board.SDA)
    sensor = adafruit_veml7700.VEML7700(i2c)

    for _ in range(n_iter):
        print("Ambient Light: %0.1f " % sensor.light)
        time.sleep(2)

    i2c.deinit()
コード例 #6
0
    async def _control(self):
        config = self._config.auto_backlight

        backlight = Backlight(self._config.backlight_sysfs_path)
        i2c = busio.I2C(board.SCL, board.SDA)
        veml7700 = adafruit_veml7700.VEML7700(i2c)
        backlight.fade_duration = config.fade_duration

        while True:
            light = veml7700.light
            rel_light = min(1, light / config.light_max)
            brightness = round(exponential_ease_out(min(1, rel_light)) * 100)
            limited_brightness = max(config.brightness_min, brightness)
            backlight.brightness = limited_brightness
            logger.debug("light: %s, rel_light: %s, brightness: %s, limited_brightness: %s", light, rel_light, brightness, limited_brightness)
            await asyncio.sleep(config.refresh)
コード例 #7
0
ファイル: sensor_class.py プロジェクト: colestrine/NYSG
def three_sensor_test(n_iter):
    """
    three_sensor_test(n_iter) runs basic test on all three sensors to make sure
    hardware reads properlu
    """
    i2c = busio.I2C(board.SCL, board.SDA)
    temp_humid = adafruit_si7021.SI7021(i2c)
    light = adafruit_veml7700.VEML7700(i2c)
    moisture = MCP3001()

    for _ in range(n_iter):
        print("\nTemperature: %0.1f C" % temp_humid.temperature)
        print("Humidity: %0.1f %%" % temp_humid.relative_humidity)

        print("Ambient Light: %0.1f " % light.light)

        print("Moisture Level: %f " % moisture.value)

        time.sleep(2)

    i2c.deinit()
コード例 #8
0
import adafruit_adxl34x
import adafruit_si7021
import adafruit_veml7700

i2c1 = busio.I2C(board.SCL, board.SDA)
i2c2 = busio.I2C(board.SCL, board.SDA)
i2c3 = busio.I2C(board.SCL, board.SDA)

# For ADXL343
accelerometer = adafruit_adxl34x.ADXL343(i2c1)
accelerometer.enable_motion_detection()

while True:
    try:
        sensor = adafruit_si7021.SI7021(i2c2)
        break
    except:
        continue
veml7700 = adafruit_veml7700.VEML7700(i2c3)

while True:
    print("******************************")
    print("\nAcceleration: %f %f %f" % accelerometer.acceleration)
    print("Motion detected: %s" % accelerometer.events["motion"])

    print("\nTemperature: %0.1f C" % sensor.temperature)
    print("Humidity: %0.1f %%" % sensor.relative_humidity)

    print("\nAmbient light:", veml7700.light)
    time.sleep(0.5)
コード例 #9
0
import time
import board
import busio
import adafruit_veml7700

i2c = busio.I2C(board.SCL, board.SDA)
veml = adafruit_veml7700.VEML7700(i2c)

while (True):
    print("ambiant light: ", veml.light)
    print("ux:", veml.lux)
    time.sleep(0.5)
コード例 #10
0
from time import sleep

# neopixels
neop = neopixel.NeoPixel(board.D21, 12)
pixel_num = 12
neop.brightness = 0.2
neop.auto_write = True
bright_f = 0.2
bright_r = 0.2

# multiplexer
i2c = busio.I2C(board.SCL, board.SDA)
tca = adafruit_tca9548a.TCA9548A(i2c)

# lux sensors
veml1 = adafruit_veml7700.VEML7700(tca[0])
veml2 = adafruit_veml7700.VEML7700(tca[1])
lux_min = 20
lux_max = 6000


def constrainLux(lux):
    return min(max(lux_min, lux), lux_max)


def mapLux(lux):
    lux_range = lux_max - lux_min
    return (lux - lux_min) / lux_range


def constrainAndMapLux(lux):
コード例 #11
0
})
# firebase = None

# # For debugging
# firebase.delete()

# For setting up the ADC
adc = Adafruit_ADS1x15.ADS1115()
GAIN = 2 / 3
# AO Channel for Moisture is 0
# AO channel for Temperature is 1
temperatureAo = 1
moistureAo = 0
# Lux sensor setup
i2c = busio.I2C(board.SCL, board.SDA)
luxSensor = adafruit_veml7700.VEML7700(i2c)
luxA0 = 2

# Moisture sensor calibration test results without soil
# Range 20523 -> 0%, 17366 -> 100%. Assume 18935 -> 50%
moistureZero = 19000

# Water pump
motorPin = 7
# Flowrate of 8ml/s
flowRate = 14
total = 0
container = total

run = False
# Time gap between each probe in second