def __init__(self, i2c_bus, name="sns_uv0", interval=SENSOR_UPDATE_INTERVAL, *args, **kwargs): Device.__init__(self, name=name, interval=interval, *args, **kwargs) import adafruit_veml6075 self.sensor = adafruit_veml6075.VEML6075(i2c_bus, integration_time=100)
import time import board import busio import adafruit_veml6075 i2c = busio.I2C(board.SCL, board.SDA) veml = adafruit_veml6075.VEML6075(i2c, integration_time=100) while True: print(veml.uv_index) print(veml.uva) print(veml.uvb) time.sleep(1)
dt = datetime.now() wind_start_time = time.time() reset_wind() #time.sleep(wind_interval) while time.time( ) - wind_start_time <= wind_interval: # 5 másodperces szél ciklus store_directions.append(wind_direction_byo.get_value()) s += 1 # PMS7003 indítása az adatküldés előtt if s >= 49: # 30 másodperccel pms.on() print(s) if s == 49: print("PMS7003 indítása!") veml = adafruit_veml6075.VEML6075( i2c, integration_time=100) # UV értékek felolvasása store_uva.append(veml.uva) # UVA tárolása store_uvb.append(veml.uvb) # UVB tárolása store_uvi.append(veml.uv_index) # UV-index tárolása uva = max(store_uva) # Maximális UVA számítása uvb = max(store_uvb) # Maximális UVB számítása uv_index = max(store_uvi) # Maximális UV-index számítása int_time = veml.integration_time # Integrálási idő kiolvasás final_speed = calculate_speed(wind_interval) store_speeds.append(final_speed) wind_average = wind_direction_byo.get_average(store_directions) wind_gust = max(store_speeds) wind_speed = statistics.mean(store_speeds)
def __init__(self, integration_time=100): i2c = busio.I2C(board.SCL, board.SDA) self.sensor = adafruit_veml6075.VEML6075( i2c, integration_time=integration_time)
def __init__(self, spi_clock, spi_mosi, spi_miso, i2c_scl, i2c_sda, dsp_command, dsp_chip_select, dsp_reset, i2s_clock, i2s_word, i2s_data, uart_tx, uart_rx): # Turn on the Pico's on-board LED print("Setting up power blinky") self.setupPowerBlinky() time.sleep(1) print("Done power blinky") try: # Create your bus objects self.spi = busio.SPI(clock=spi_clock, MOSI=spi_mosi, MISO=spi_miso) self.display_bus = displayio.FourWire(self.spi, command=dsp_command, chip_select=dsp_chip_select, reset=dsp_reset) self.main_screen = adafruit_ili9341.ILI9341(self.display_bus, width=self.WIDTH, height=self.HEIGHT) self.i2c = busio.I2C(scl=i2c_scl, sda=i2c_sda) self.uart = busio.UART(tx=uart_tx, rx=uart_rx, baudrate=9600, timeout=10) if sounds_enabled: self.i2s = audiobusio.I2SOut(bit_clock=i2s_clock, word_select=i2s_word, data=i2s_data) self.colours = Colours() # Create objects for display self.setupBlinkies() self.setupButtons() if touch_screen_enabled: try: self.touch_screen = adafruit_stmpe610.Adafruit_STMPE610_I2C( self.i2c, address=0x41) except Exception as err: self.led.value = False print("No touch screen could be enabled") self.okuda_font = bitmap_font.load_font("fonts/okuda.pcf") #self.okuda_font = bitmap_font.load_font("fonts/font5x8.bin") #self.okuda_font.load_glyphs(b'ABCDEFGHIJKLMNOPQRSTUVWXYZ0123456789 %.') # Define sensor devices self.thermal_camera = ThermalCamera(width=self.WIDTH, height=self.HEIGHT, i2c=self.i2c, display_bus=self.display_bus, display=self.main_screen, reverse=False, font=self.okuda_font) self.bme680 = adafruit_bme680.Adafruit_BME680_I2C(self.i2c, address=0x77) self.bme680.seaLevelhPa = self.SEA_LEVEL_NORMAL self.veml = adafruit_veml6075.VEML6075(self.i2c, integration_time=100) self.gps = adafruit_gps.GPS(self.uart, debug=False) self.matrix = Matrix(i2c=self.i2c) self.loadSounds() self.setupGPS() self.setupLCARS() except Exception as err: print("Error in PicoPicorder.init()") self.blinkError(err) time.sleep(2)
def __init__(self): self.i2c = busio.I2C(board.SCL, board.SDA) self.veml = adafruit_veml6075.VEML6075(self.i2c, integration_time=100)
lps = adafruit_lps35hw.LPS35HW(i2c) #setup air quality sensor #sgp30 SGP30 = True if SGP30: i2c2 = busio.I2C(board.SCL, board.SDA, frequency=100000) sgp30 = adafruit_sgp30.Adafruit_SGP30(i2c2) sgp30.iaq_init() sgp30.set_iaq_baseline(0x8987, 0x8d39) #setup UV index sensor VEML6075 = True if VEML6075: i2c3 = busio.I2C(board.SCL, board.SDA) veml6075 = adafruit_veml6075.VEML6075(i2c3, integration_time=800) #create data backup text file date_time = now.strftime("%Y%m%d%H%M%S.txt") print(date_time) elapsed_sec = 0 for i in range(20): if LPS35HW: Press = lps.pressure Temp = lps.temperature if SGP30: CO2 = sgp30.eCO2 VOC = sgp30.TVOC if VEML6075: UVA = veml6075.uva
serial = i2c(port=1, address=0x3C) device = ssd1306(serial) #setup BME280 addressbme = 0x76 #BME280 adress bme280.load_calibration_params(bus, addressbme) #setup TSL4531 bus.write_byte_data(0x29, 0x00 | 0x80, 0x03) # TSL45315 address, 0x29(41) # Select Configuration register, 0x01(1), with Command register, 0x80(128) # 0x00(00) Multiplier 1x, Tint : 400ms bus.write_byte_data(0x29, 0x01 | 0x80, 0x00) #setup VEML6075 veml = adafruit_veml6075.VEML6075(busio.I2C(board.SCL, board.SDA), integration_time=100) #create csv file f = open('weather_data.csv', 'w') def main(): print("Dew Point | Absolute altitude | UV light | visible light") #create column headings f.write( "time(s),temperature,atmospheric pressure,humidity,dewpoint,altitude,UV,lux\n" ) tstart = time.time() while (1):