Innehållsförteckning:
2025 Författare: John Day | [email protected]. Senast ändrad: 2025-01-13 06:58
I denna instruerbara kommer vi att bygga en park sensor. Tanken med den här parkeringssensorn är att visa grönt när du har gott om utrymme för att dra bilen framåt på parkeringen och sedan bli gul när du närmar dig helt framåtläget och sedan rött när du ska stanna. Vi ska bygga detta system med vår Raspberry Pi och använda några avstånd som vi enkelt kan testa.
Steg 1: Saker du behöver
Du behöver andra komponenter än Raspberry Pi -installationen.
- HC-SR04 ultraljudsavståndssensor
- Led (X3)
- 330Ω motstånd (X3)
- 10KΩ motstånd (x2)
- Man-hane / man-kvinna jumper trådar
- Bakbord
Steg 2: Gör ledningen
- Utlösaren för avståndssensorn är GPIO 4, ekot är GPIO 18, det gröna ljuset är 17, det gula ljuset är 27 och det röda ljuset är 22.
- 330 ohm motstånd är för lysdioderna och de ansluter till lysdiodernas positiva ben och sedan GPIO.
- 10K ohm motstånd är för ekostiftet på avståndssensorn och ansluts till GPIO.
Steg 3: Kod
importera RPi. GPIO som GPIOimporttid
GPIO.setwarnings (falskt)
GPIO.cleanup ()
GPIO.setmode (GPIO. BCM)
TRIG = 4
ECHO = 18
GRÖN = 17
GUL = 27
RÖD = 22
GPIO.setup (TRIG, GPIO. OUT)
GPIO.setup (ECHO, GPIO. IN)
GPIO.setup (GRÖN, GPIO. OUT)
GPIO.setup (GUL, GPIO. OUT)
GPIO.setup (RÖD, GPIO. OUT)
def green_light ():
GPIO.output (GRÖN, GPIO. HÖG)
GPIO.output (GUL, GPIO. LOW)
GPIO.output (RÖD, GPIO. LÅG)
def yellow_light ():
GPIO.output (GRÖN, GPIO. LÅG)
GPIO.output (GUL, GPIO. HÖG)
GPIO.output (RÖD, GPIO. LÅG)
def red_light (): GPIO.output (GRÖN, GPIO. LÅG)
GPIO.output (GUL, GPIO. LOW)
GPIO.output (RÖD, GPIO. HÖG)
def get_distance ():
GPIO.output (TRIG, True)
time.sleep (0,00001)
GPIO.output (TRIG, False)
medan GPIO.input (ECHO) == Falskt: start = time.time ()
medan GPIO.input (ECHO) == True: end = time.time ()
signal_time = slutstart
avstånd = signal_time / 0.000058
returavstånd
medan det är sant:
avstånd = get_distance ()
time.sleep (0,05)
tryck (avstånd)
om avstånd> = 25:
grönt ljus()
elif 25> avstånd> 10:
gult ljus()
elif -avstånd <= 5:
rött ljus()
Om avståndet är större än eller lika med 25 cm visar vi grönt ljus. Om det är mellan 10 och 25 cm blir vi gula och sedan blir vi röda mindre än eller lika med 10 cm.