İçindekiler:

Raspberry Pi Park Sensörü: 3 Adım (Resimli)
Raspberry Pi Park Sensörü: 3 Adım (Resimli)

Video: Raspberry Pi Park Sensörü: 3 Adım (Resimli)

Video: Raspberry Pi Park Sensörü: 3 Adım (Resimli)
Video: Raspberry Pi 3 ile Dijital Metre 2024, Kasım
Anonim
Image
Image
İhtiyacınız Olan Şeyler
İhtiyacınız Olan Şeyler

Bu talimatta bir park sensörü oluşturacağız. Bu park sensörünün amacı, otoparkta aracınızı ileri çekmek için yeterli alana sahip olduğunuzda yeşili göstermek ve tam ileri konuma yaklaştığınızda sarıya, durmanız gerektiğinde ise kırmızıya dönmektir. Bu sistemi Raspberry Pi ile kuracağız ve kolayca test edebileceğimiz bazı mesafeler kullanacağız.

Adım 1: İhtiyacınız Olan Şeyler

Raspberry Pi kurulumu dışında aşağıdaki bileşenlere ihtiyacınız olacak.

  1. HC-SR04 Ultrasonik Mesafe Sensörü
  2. Led (X3)
  3. 330Ω Direnç (X3)
  4. 10KΩ Direnç (x2)
  5. Erkek-Erkek / Erkek-Dişi Jumper Telleri
  6. ekmek tahtası

Adım 2: Kablolamayı Yapın

Kablolamayı Yap
Kablolamayı Yap
Kablolamayı Yap
Kablolamayı Yap
Kablolamayı Yap
Kablolamayı Yap
  1. Mesafe sensörünün tetikleyicisi GPIO 4, yankı GPIO 18, yeşil ışık 17, sarı ışık 27 ve kırmızı ışık 22'dir.
  2. 330 ohm dirençler ledler içindir ve ledlerin pozitif ayağına ve ardından GPIO'ya bağlanırlar.
  3. 10K ohm dirençler mesafe sensörünün eko pini içindir ve GPIO'ya bağlanır.

3. Adım: Kodlayın

RPi. GPIO'yu GPIOimport zamanı olarak içe aktar

GPIO.setwarnings(Yanlış)

GPIO.cleanup()

GPIO.setmode(GPIO. BCM)

TETİK = 4

yankı = 18

YEŞİL = 17

SARI = 27

KIRMIZI = 22

GPIO.setup(TRIG, GPIO. OUT)

GPIO.setup(ECHO, GPIO. IN)

GPIO.setup(YEŞİL, GPIO. OUT)

GPIO.setup(SARI, GPIO. OUT)

GPIO.setup(KIRMIZI, GPIO. OUT)

def green_light():

GPIO.output(YEŞİL, GPIO. YÜKSEK)

GPIO.output(SARI, GPIO. LOW)

GPIO.output(KIRMIZI, GPIO. LOW)

tanım sarı ışık():

GPIO.output(YEŞİL, GPIO. DÜŞÜK)

GPIO.output(SARI, GPIO. YÜKSEK)

GPIO.output(KIRMIZI, GPIO. LOW)

def red_light(): GPIO.output(YEŞİL, GPIO. LOW)

GPIO.output(SARI, GPIO. LOW)

GPIO.output(KIRMIZI, GPIO. YÜKSEK)

def get_mesafe():

GPIO.output(TRIG, True)

zaman.uyku(0.00001)

GPIO.output(TRIG, False)

while GPIO.input(ECHO) == False: start = time.time()

while GPIO.input(ECHO) == Doğru: bitiş = time.time()

sinyal_zamanı = bitiş-başlangıç

mesafe = sinyal_zaman / 0.000058

dönüş mesafesi

Doğru iken:

mesafe = get_distance()

zaman.uyku(0.05)

yazdır(mesafe)

mesafe >= 25 ise:

yeşil ışık()

elif 25 > uzaklık > 10:

sarı ışık()

elif mesafesi <= 5:

kırmızı ışık()

Mesafe 25 cm'den büyük veya eşitse, yeşil bir ışık gösteririz. 10 ila 25 cm arasındaysa sarıya döneriz ve ardından 10 cm'ye eşit veya daha az kırmızıya döneriz.

Önerilen: