nord vpnnord vpn
Ad

Untitled

mail@pastecode.io avatar
unknown
python
a year ago
3.5 kB
1
Indexable
Never

import RPi.GPIO as GPIO
import time
import Adafruit_DHT

sensor = Adafruit_DHT.DHT22
gpio = 21
 
#GPIO Mode (BOARD / BCM)
GPIO.setmode(GPIO.BCM)
GPIO.setwarnings(False)
#set GPIO Pins
GPIO_TRIGGER1 = 2
GPIO_ECHO1 = 3
GPIO_TRIGGER2 = 4
GPIO_ECHO2 = 17
GPIO_TRIGGER3 = 27
GPIO_ECHO3 = 22
# GPIO_TRIGGER4 = 6
# GPIO_ECHO4 = 13
# GPIO_TRIGGER5 = 19
# GPIO_ECHO5 = 26
# GPIO_TRIGGER6 = 25
# GPIO_ECHO6 = 12




 
#set GPIO direction (IN / OUT)
GPIO.setup(GPIO_TRIGGER1, GPIO.OUT)
GPIO.setup(GPIO_ECHO1, GPIO.IN)
GPIO.setup(GPIO_TRIGGER2, GPIO.OUT)
GPIO.setup(GPIO_ECHO2, GPIO.IN)
GPIO.setup(GPIO_TRIGGER3, GPIO.OUT)
GPIO.setup(GPIO_ECHO3, GPIO.IN)
# GPIO.setup(GPIO_TRIGGER4, GPIO.OUT)
# GPIO.setup(GPIO_ECHO4, GPIO.IN)
# GPIO.setup(GPIO_TRIGGER5, GPIO.OUT)
# GPIO.setup(GPIO_ECHO5, GPIO.IN)
# GPIO.setup(GPIO_TRIGGER6, GPIO.OUT)
# GPIO.setup(GPIO_ECHO6, GPIO.IN)
 
def distance(GPIO_TRIGGER,GPIO_ECHO):
    # set Trigger to HIGH
    GPIO.output(GPIO_TRIGGER, True)
 
    # set Trigger after 0.01ms to LOW
    time.sleep(0.00001)
    GPIO.output(GPIO_TRIGGER, False)
 
    StartTime = time.time()
    StopTime = time.time()
 
    # save StartTime
    while GPIO.input(GPIO_ECHO) == 0:
        StartTime = time.time()
 
    # save time of arrival
    while GPIO.input(GPIO_ECHO) == 1:
        StopTime = time.time()
 
    # time difference between start and arrival
    TimeElapsed = StopTime - StartTime
    # multiply with the sonic speed (34300 cm/s)
    # and divide by 2, because there and back
    distance = (TimeElapsed * 34300) / 2
 
    return distance
 
if __name__ == '__main__':
    try:
        while True:
            humidity, temperature = Adafruit_DHT.read_retry(sensor, gpio)
            print("Temperature: {0:0.1f}*C Humidity: {1:0.1f}%".format(temperature,humidity))
            dist1 = distance(GPIO_TRIGGER1,GPIO_ECHO1)
            print("Distance 1: "+str(dist1))
            dist2=distance(GPIO_TRIGGER2,GPIO_ECHO2)
            print("Distance 2: "+str(dist2))
            dist3=distance(GPIO_TRIGGER3,GPIO_ECHO3)
            print("Distance 3: "+str(dist3))
            # dist4=distance(GPIO_TRIGGER4,GPIO_ECHO4)
            # print("Distance 4: "+str(dist4))
            # dist5=distance(GPIO_TRIGGER5,GPIO_ECHO5)
            # print("Distance 5: "+str(dist5))
            # dist6=distance(GPIO_TRIGGER6,GPIO_ECHO6)
            # print("Distance 6: "+str(dist6))
            print (dist1,dist2,dist3)#,dist4,dist5,dist6)
            time.sleep(1)
 
        # Reset by pressing CTRL + C
    except KeyboardInterrupt:
        print("Measurement stopped by User")
        GPIO.cleanup()
########################################


import firebase_admin
from firebase_admin import credentials
from firebase_admin import db

cred = credentials.Certificate("./carparking-646df-firebase-adminsdk-iwhni-0447ad8836.json")

# Initialize the app with a None auth variable, limiting the server's access
firebase_admin.initialize_app(cred, {
    'databaseURL': 'https://carparking-646df-default-rtdb.firebaseio.com',
    'databaseAuthVariableOverride': None
})

# The app only has access to public data as defined in the Security Rules
ref = db.reference('/')
print(ref.get())

users_ref = ref.child('Parking')
users_ref.set({
    'Location 1': {
        'Temperature': 25,
        'Humidity': 30,
        'Parking Space 1': {
        'availabe' : 0
        },
        'Parking Space 2': {
        'availabe' : 0
        },
        'Parking Space 3': {
        'availabe' : 0
        }
        
    }
})

nord vpnnord vpn
Ad