תוכן עניינים:

חיישן פארק פטל פטל: 3 שלבים (עם תמונות)
חיישן פארק פטל פטל: 3 שלבים (עם תמונות)

וִידֵאוֹ: חיישן פארק פטל פטל: 3 שלבים (עם תמונות)

וִידֵאוֹ: חיישן פארק פטל פטל: 3 שלבים (עם תמונות)
וִידֵאוֹ: בניתי רפסודה מ-1000 בקבוקים ושטתי בים! לא תאמינו מה איבדתי שם!!! 2024, נוֹבֶמבֶּר
Anonim
Image
Image
דברים שתצטרך
דברים שתצטרך

במדריך זה נבנה חיישן פארקים. הרעיון של חיישן הפארק הזה הוא להראות ירוק כאשר יש לך מספיק מקום למשוך את המכונית קדימה בחניון, ואז להצהיב כאשר אתה מתקרב לעמדה קדימה במלואה, ולאחר מכן אדום כאשר עליך לעצור. אנו הולכים לבנות את המערכת הזו עם ה- Raspberry Pi שלנו, ולהשתמש בכמה מרחקים שנוכל לבדוק בקלות.

שלב 1: דברים שתצטרך

תזדקק לרכיבים הבאים מלבד התקנת Raspberry Pi.

  1. חיישן מרחק אולטרסאונד HC-SR04
  2. Led (X3)
  3. נגד 330Ω (X3)
  4. נגד 10KΩ (x2)
  5. חוטי מגשר זכר-זכר / נקבה-נקבה
  6. לוח לחם

שלב 2: בצע את החיווט

עשה את החיווט
עשה את החיווט
בצע את החיווט
בצע את החיווט
עשה את החיווט
עשה את החיווט
  1. ההדק של חיישן המרחק הוא GPIO 4, הד הוא GPIO 18, האור הירוק הוא 17, האור הצהוב הוא 27 והאור האדום הוא 22.
  2. נגדים של 330 אוהם מיועדים לנורמים והם מתחברים לרגל החיובית של הנורות ולאחר מכן ל- GPIO.
  3. נגדי 10K אוהם מיועדים לסיכת ההד של חיישן המרחק ומתחברים ל- GPIO.

שלב 3: קוד

ייבא RPi. GPIO כשעת GPIO יבוא

GPIO.setwarnings (שקר)

GPIO.cleanup ()

GPIO.setmode (GPIO. BCM)

TRIG = 4

ECHO = 18

ירוק = 17

צהוב = 27

אדום = 22

GPIO.setup (TRIG, GPIO. OUT)

GPIO.setup (ECHO, GPIO. IN)

GPIO.setup (ירוק, GPIO. OUT)

GPIO.setup (צהוב, GPIO. OUT)

GPIO.setup (אדום, GPIO. OUT)

def green_light ():

פלט GPIO. GREEN, GPIO. HIGH

פלט GPIO (צהוב, GPIO. LOW)

פלט GPIO. (אדום, GPIO. LOW)

def yellow_light ():

פלט GPIO (ירוק, GPIO. LOW)

פלט GPIO.out (צהוב, GPIO. HIGH)

פלט GPIO (אדום, GPIO. LOW)

def red_light (): GPIO.output (ירוק, GPIO. LOW)

פלט GPIO (צהוב, GPIO. LOW)

פלט GPIO. (אדום, GPIO. HIGH)

def get_distance ():

פלט GPIO.output (TRIG, True)

time.sleep (0.00001)

פלט GPIO.output (TRIG, False)

בעוד GPIO.input (ECHO) == False: start = time.time ()

בעוד GPIO.input (ECHO) == True: end = time.time ()

time_time = סיום-התחלה

distance = signal_time / 0.000058

מרחק חזרה

בעוד שזה נכון:

מרחק = get_distance ()

time.sleep (0.05)

הדפס (מרחק)

אם המרחק> = 25:

אור ירוק()

elif 25> מרחק> 10:

אור צהוב()

מרחק elif <= 5:

אור אדום()

אם המרחק גדול או שווה ל -25 ס"מ, אנו מראים אור ירוק. אם זה בין 10 ל -25 ס"מ, נהיה צהובים, ואז נהיה אדומים בפחות או שווה ל -10 ס"מ.

מוּמלָץ: