Sensor file GC
This commit is contained in:
parent
8058012260
commit
f5af78ffe4
89
software/roboter/raspy/sensors_gc.py
Normal file
89
software/roboter/raspy/sensors_gc.py
Normal file
@ -0,0 +1,89 @@
|
|||||||
|
from picamera import PiCamera
|
||||||
|
from time import sleep
|
||||||
|
from datetime import datetime
|
||||||
|
import RPi.GPIO as GPIO
|
||||||
|
import board
|
||||||
|
import adafruit_dht
|
||||||
|
import smbus
|
||||||
|
import time
|
||||||
|
|
||||||
|
#Connect Sensors
|
||||||
|
#Camera
|
||||||
|
#camera = PiCamera()
|
||||||
|
|
||||||
|
#Air Temp&Humidity
|
||||||
|
dhtDevice = adafruit_dht.DHT22(board.D4, use_pulseio=False)
|
||||||
|
|
||||||
|
#Earth Humidity
|
||||||
|
chanel = 21
|
||||||
|
GPIO.setmode(GPIO.BCM)
|
||||||
|
GPIO.setup(chanel, GPIO.IN)
|
||||||
|
|
||||||
|
# Brightness Sensor
|
||||||
|
bus = smbus.SMBus(1)
|
||||||
|
bus.write_byte_data(0x39, 0x00 | 0x80, 0x03)
|
||||||
|
bus.write_byte_data(0x39, 0x01 | 0x80, 0x02)
|
||||||
|
|
||||||
|
|
||||||
|
def readSensors():
|
||||||
|
#Connect Sensors
|
||||||
|
#Camera
|
||||||
|
#camera = PiCamera()
|
||||||
|
|
||||||
|
#Air Temp&Humidity
|
||||||
|
dhtDevice = adafruit_dht.DHT22(board.D4, use_pulseio=False)
|
||||||
|
|
||||||
|
#Earth Humidity
|
||||||
|
chanel = 21
|
||||||
|
GPIO.setmode(GPIO.BCM)
|
||||||
|
GPIO.setup(chanel, GPIO.IN)
|
||||||
|
#Camera
|
||||||
|
#camera.start_preview()
|
||||||
|
dt = datetime.now()
|
||||||
|
ts = datetime.timestamp(dt)
|
||||||
|
#name = "/home/pi/Pictures/{}.jpg".format(ts)
|
||||||
|
#camera.capture(name)
|
||||||
|
print("Camera on")
|
||||||
|
#camera.stop_preview()
|
||||||
|
|
||||||
|
#Air Temp&Humidity
|
||||||
|
temperature_c = dhtDevice.temperature
|
||||||
|
humidity = dhtDevice.humidity
|
||||||
|
print("Temp: {:.1f} C Humidity: {}% ".format(temperature_c, humidity))
|
||||||
|
|
||||||
|
|
||||||
|
#Earth Humidit:
|
||||||
|
ground_humidity = GPIO.input(chanel)
|
||||||
|
print("Earth Humitiy: {}".format(ground_humidity))
|
||||||
|
|
||||||
|
|
||||||
|
#Brightness Sensor
|
||||||
|
# Read data back from 0x0C(12) with command register, 0x80(128), 2 bytes
|
||||||
|
# ch0 LSB, ch0 MSB
|
||||||
|
data = bus.read_i2c_block_data(0x39, 0x0C | 0x80, 2)
|
||||||
|
|
||||||
|
# Read data back from 0x0E(14) with command register, 0x80(128), 2 bytes
|
||||||
|
# ch1 LSB, ch1 MSB
|
||||||
|
data1 = bus.read_i2c_block_data(0x39, 0x0E | 0x80, 2)
|
||||||
|
|
||||||
|
# Convert the data
|
||||||
|
ch0 = data[1] * 256 + data[0]
|
||||||
|
ch1 = data1[1] * 256 + data1[0]
|
||||||
|
light_intesity = ch0-ch1
|
||||||
|
|
||||||
|
# Output data to screen
|
||||||
|
print("Visible Value :%d lux" %(ch0 - ch1))
|
||||||
|
|
||||||
|
return {"Air_Temperature": temperature_c,
|
||||||
|
"Air_Humidity": humidity,
|
||||||
|
"Ground Humidity": ground_humidity,
|
||||||
|
"Light_Intensity": light_intesity
|
||||||
|
}
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
def main():
|
||||||
|
test = readSensors()
|
||||||
|
|
||||||
|
if __name__ == "__main__":
|
||||||
|
main()
|
Loading…
x
Reference in New Issue
Block a user