Indholdsfortegnelse:

Raspberry Pi Park Sensor: 3 trin (med billeder)
Raspberry Pi Park Sensor: 3 trin (med billeder)

Video: Raspberry Pi Park Sensor: 3 trin (med billeder)

Video: Raspberry Pi Park Sensor: 3 trin (med billeder)
Video: Home Assistant. Урок 9.4 ADD-ON - Xiaomi Gateway 3, интеграция в zigbee2mqtt 2024, Juli
Anonim
Image
Image
Ting du får brug for
Ting du får brug for

I denne instruktive vil vi bygge en park sensor. Ideen med denne park sensor er at vise grønt, når du har masser af plads til at trække din bil frem på parkeringspladsen, og derefter blive gul, når du nærmer dig den helt fremadgående position, og derefter rød, når du skal stoppe. Vi skal bygge dette system med vores Raspberry Pi og bruge nogle afstande, som vi let kan teste.

Trin 1: Ting, du får brug for

Du skal bruge følgende komponenter andre end Raspberry Pi -opsætning.

  1. HC-SR04 ultralydsafstandssensor
  2. LED (X3)
  3. 330Ω Modstand (X3)
  4. 10KΩ Modstand (x2)
  5. Mand-Mand / Mand-Kvinde Jumper Wires
  6. Brødbræt

Trin 2: Lav ledningerne

Gør ledningerne
Gør ledningerne
Lav ledningerne
Lav ledningerne
Gør ledningerne
Gør ledningerne
  1. Trigger til afstandssensoren er GPIO 4, ekko er GPIO 18, det grønne lys er 17, det gule lys er 27 og det røde lys er 22.
  2. 330 ohm modstande er til lysdioderne, og de forbinder til lysdiodernes positive ben og derefter GPIO.
  3. 10K ohm modstande er til ekkospidsen på afstandssensoren og tilsluttes GPIO.

Trin 3: Kode

importer RPi. GPIO som GPIOimporttid

GPIO.setwarnings (falsk)

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ØJ)

GPIO.output (GUL, GPIO. LOW)

GPIO.output (RØD, GPIO. LOW)

def yellow_light ():

GPIO.output (GRØN, GPIO. LOW)

GPIO.output (GUL, GPIO. HIGH)

GPIO.output (RØD, GPIO. LOW)

def red_light (): GPIO.output (GRØN, GPIO. LOW)

GPIO.output (GUL, GPIO. LOW)

GPIO.output (RØD, GPIO. HØJ)

def get_distance ():

GPIO.output (TRIG, True)

time.sleep (0,00001)

GPIO.output (TRIG, Falsk)

mens GPIO.input (ECHO) == Falsk: start = time.time ()

mens GPIO.input (ECHO) == True: end = time.time ()

signal_time = slutstart

distance = signal_time / 0.000058

returafstand

mens det er sandt:

distance = get_distance ()

time.sleep (0,05)

print (afstand)

hvis afstand> = 25:

grønt lys()

elif 25> afstand> 10:

gul_lys ()

elif -afstand <= 5:

rødt lys()

Hvis afstanden er større end eller lig med 25 cm, viser vi grønt lys. Hvis det er mellem 10 og 25 cm, bliver vi gule, og derefter bliver vi røde i mindre end eller lig med 10 cm.

Anbefalede: