Creating an adjustable distance parking sensor using a GrovePi+ board, an ultrasonic ranger, two LEDs, buzzer and and RGB LCD Display.
The adjustable distance parking sensor measures the distance the sensor is from an object or obstacle and it will change an LED from blue to red as the object is within range and closer to the target area.
I have set up the target area to be less than 30 cm and the range to be less than 100 cm, but you can adjust the distance to any distance you like. When the sensor detects an object within the 100-cm range, the blue LED will light up. When the objects is within the 30-cm target area, the red LED will light up and the buzzer will buzz.
ConnectionsConnections made to the GrovePi+ with the sensors:
- Ultrasonic distance sensor (connected to D2)
- Green LED (connected to D5)
- Red LED (connected to D6)
- Buzzer (connected to the D8)
- RGB LCD (connected to any I2C port on the GrovePi+)
In order for the ultrasonic range data to display on the RGB LCD, you must import the following two lines:
import sys
sys.path.append("/home/pi/GrovePi/Software/Python/grove_rgb_lcd")
from grove_rgb_lcd import *
And write the following lines to your code:
distance = ultrasonicRead (ultrasonic_ranger)
print distance
dist = int (distance)
if dist> 100:
setText ("distance =" + str (dist))
elif dist> 30:
setText ("distance =" + str (dist))
else:
setText ("distance =" + str (dist))
The RGB LCD back light may flicker when it's connected to the board, just power off the unit and power it back on.
SetRGB()The function SetRGB
is for changing the background color of the LCD display. You can have the background color with a solid color, shades of a color or random colors. I have SetRGB
set to shade of white (255 - c, 255 - c, 255) with sleep time 0.0039 but if you want solid green color simply write (0, 255, 0). If you want random colors write the following: (random.randint (0, 255
) , random.randint (0, 255)
, random.randint (0, 255)
). For more color variations, check out Dexter Industries GitHub.
Executing the code is easy. You can either use the sudo python command or use the python shell run module command by pressing F5 on your keyboard, which is much faster.
Comments