Advertisement
Not a member of Pastebin yet?
Sign Up,
it unlocks many cool features!
- import RPi.GPIO as GPIO
- import time
- GPIO.setmode(GPIO.BOARD)
- maxParkingSpaces=10
- parkingSpaces=maxParkingSpaces
- TRIG = 13
- ECHO = 15
- GREEN = 37
- RED = 35
- print "Distance Measurement In Progress"
- GPIO.setup(TRIG,GPIO.OUT)
- GPIO.setup(15,GPIO.IN)
- GPIO.setup(11,GPIO.IN)
- GPIO.setup(RED,GPIO.OUT)
- GPIO.setup(GREEN,GPIO.OUT)
- GPIO.output(TRIG, False)
- print "Waiting For Sensor To Settle"
- time.sleep(2)
- lastEntryDistance=0
- lastExitDistance=0
- if parkingSpaces>0:
- GPIO.output(GREEN,GPIO.HIGH)
- GPIO.output(RED,GPIO.LOW)
- try:
- while 1:
- if ECHO == 15:
- ECHO=11
- else :
- ECHO =15
- time.sleep(0.3)
- GPIO.output(TRIG, True)
- time.sleep(0.00001)
- GPIO.output(TRIG, False)
- while GPIO.input(ECHO)==0:
- pulse_start = time.time()
- while GPIO.input(ECHO)==1:
- pulse_end = time.time()
- pulse_duration = pulse_end - pulse_start
- distance = pulse_duration * 17150
- distance = round(distance, 2)
- if ECHO == 15:
- print "Distance Entry:",distance,"cm"
- if distance < 16 and lastEntryDistance>16:
- parkingSpaces = parkingSpaces - 1
- lastEntryDistance=distance
- else :
- print "Distance Exit:",distance,"cm"
- if distance < 16 and lastExitDistance>16 and parkingSpaces<maxParkingSpaces:
- parkingSpaces = parkingSpaces + 1
- lastExitDistance=distance
- if parkingSpaces>0 :
- print "Parking Spaces Available : ",parkingSpaces
- else:
- print "Parking Spaces Available : 0"
- if parkingSpaces<=0:
- GPIO.output(GREEN,GPIO.LOW)
- GPIO.output(RED,GPIO.HIGH)
- else:
- GPIO.output(GREEN,GPIO.HIGH)
- GPIO.output(RED,GPIO.LOW)
- except KeyboardInterrupt:
- GPIO.cleanup()
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement