53 lines
1.3 KiB
Python
53 lines
1.3 KiB
Python
from time import sleep # we need to use the sleep function to delay readings
|
|
import datetime # that's for printing the current date
|
|
import time
|
|
import grovepi
|
|
import math
|
|
import json
|
|
|
|
dht_sensor = 7
|
|
ultrasonic_ranger = 5
|
|
light_sensor = 0
|
|
sound_sensor = 1
|
|
button = 6
|
|
led = 3
|
|
ledbar = 4
|
|
ir = 8
|
|
|
|
val = 0
|
|
|
|
# grovepi.additional_waiting = 0.005
|
|
grovepi.pinMode(sound_sensor,"INPUT")
|
|
grovepi.pinMode(button,"INPUT")
|
|
grovepi.pinMode(light_sensor,"INPUT")
|
|
grovepi.pinMode(led, "OUTPUT")
|
|
grovepi.dust_sensor_en()
|
|
grovepi.setDustSensorInterval(5000)
|
|
grovepi.ir_recv_pin(ir)
|
|
# grovepi.ledBar_init(ledbar, 0)
|
|
|
|
data = {
|
|
'sound': 0,
|
|
'light': 0,
|
|
'button': 0,
|
|
'temp': 0,
|
|
'humidity': 0,
|
|
'prox': 0,
|
|
'dust': 0,
|
|
'ir': 3 * [0]
|
|
}
|
|
|
|
while True:
|
|
data['sound'] = grovepi.analogRead(sound_sensor)
|
|
data['light'] = grovepi.analogRead(light_sensor)
|
|
# [data['temp'],data['humidity']] = grovepi.dht(dht_sensor,0)
|
|
data['button'] = grovepi.digitalRead(button)
|
|
data['prox'] = grovepi.ultrasonicRead(ultrasonic_ranger)
|
|
data['dust'] = grovepi.dustSensorRead()
|
|
grovepi.analogWrite(led, val % 256)
|
|
# grovepi.ledBar_setBits(ledbar, val % 1024)
|
|
if grovepi.ir_is_data():
|
|
data['ir'] = list(grovepi.ir_read_signal())
|
|
val += 10
|
|
print(json.dumps(data))
|
|
time.sleep(0.2)
|