İçindekiler:

Nesnelerin Konumsal Değişikliklerini Yakalamak için Ultrasonik Sensör: 3 Adım
Nesnelerin Konumsal Değişikliklerini Yakalamak için Ultrasonik Sensör: 3 Adım

Video: Nesnelerin Konumsal Değişikliklerini Yakalamak için Ultrasonik Sensör: 3 Adım

Video: Nesnelerin Konumsal Değişikliklerini Yakalamak için Ultrasonik Sensör: 3 Adım
Video: DERS :3 | Yeni Başlayanlar İçin Sensörler: İşlevleri, Çeşitleri ve Kullanım Alanları 2024, Temmuz
Anonim
Nesnelerin Konumsal Değişikliklerini Yakalamak için Ultrasonik Sensör
Nesnelerin Konumsal Değişikliklerini Yakalamak için Ultrasonik Sensör

Değerli eşyalarınızı güvende tutmak önemlidir, bütün gün kalenizi korumaya devam ederseniz topal olur. Raspberry pi kamerayı kullanarak doğru anda enstantane çekebilirsiniz. Bu kılavuz, sınır alanı içinde değişiklikler algılandığında bir video çekmenize veya resim çekmenize yardımcı olacaktır.

Donanım:

  1. Ahududu Pi 2/3/4
  2. Ultrasonik sensör
  3. Pi kamera
  4. Süveterler

Adım 1: Bağlantılar

Bağlantılar
Bağlantılar
  • TRIG'den RPI4B 17'ye
  • VCC'den RPI4B 5V'ye
  • GND'den RPI4B GND'ye
  • 470 ohm'luk rezistörden bağlantı-1'e yankı
  • GND - 1K ohm direnç - bağlantı-1
  • bağlantı-1 - RPI4B 4

Devre şeması Circuito.io kullanılarak yapılmıştır, en popüler mikro denetleyicilere, sensörlere vb. sahiptir ve platformun yeni başlayanlar için kullanımı kolaydır

2. Adım: Kodu Yükleyin

Kodu Yükle
Kodu Yükle
Kodu Yükle
Kodu Yükle

Komut dosyasını çalıştırmadan önce, terminali açarak aşağıdaki komutları kullanarak bir klasör oluşturun ve ardından komut dosyasını düzenleyin.

pi@raaspberrypi: mkdir medya

pi@raaspberrypi: nano ölçü.py

Kod, kamera ve GPIO kitaplıklarını kullanır. GPIO_TRIGGER & GPIO_ECHO pinlerinin Raspberry Pi'nin 17. & 4. pinlerine harici olarak düzgün şekilde bağlanıp bağlanmadığını kontrol edin.

Aşağıdaki kodu kopyalayıp yapıştırın veya python dosyasına yazın ve 'measure.py' olarak adlandırın.

#Librariesimport RPi. GPIO as GPIO alma zamanı alma os picamera'dan import PiCamera # Camera Mode camera = PiCamera() camera.rotation = 180 # Görüntü mükemmel açılıysa bu satırı yorumlayın #GPIO Mode GPIO.setmode(GPIO. BCM) GPIO.setwarnings(False) #set GPIO Pinleri GPIO_TRIGGER = 17 GPIO_ECHO = 4 #GPIO yönünü ayarla (GİRİŞ / ÇIKIŞ) GPIO.setup(GPIO_TRIGGER, GPIO. OUT) GPIO.setup(GPIO_ECHO, GPIO. IN) def mesafesi(): # Tetikleyiciyi HIGH GPIO.output(GPIO_TRIGGER, True) olarak ayarlayın # 0.01ms sonra Tetikleyiciyi LOW time.sleep(0.00001) olarak ayarlayın GPIO.output(GPIO_TRIGGER, False) StartTime = time.time() StopTime = time.time() # save StartTime while GPIO.input(GPIO_ECHO) == 0: StartTime = time.time() # varış zamanını kaydet while GPIO.input(GPIO_ECHO) == 1: StopTime = time.time() # başlangıç ve varış arasındaki zaman farkı TimeElapsed = StopTime - StartTime # sonik hız (34300 cm/s) # ile çarpın ve 2'ye bölün, çünkü orada ve geri mesafe = (TimeElapsed * 34300) / _name_ == '_main_' ise 2 dönüş mesafesi: camera.start_preview(alpha=200) try: while True: dist = Distance() print ("Ölçülen Mesafe = %.1f cm" % dist) if dist<= 20: # bu değeri kendi ayarınıza göre değiştirin şimdi = zaman.ctime().replace(" ", "-") camera.capture("media/image%s.jpg" % şimdi) print("Resim media/image-%s.jpg'ye kaydedildi" % şimdi) # kamera.start_recording("media/video-%s.h264" % şimdi) # Video çekmek için bunun yorumunu kaldırın # print("Video media/image-%s.jpg'de kaydedildi" % şimdi) # sleep(5) # Bunun yorumunu kaldır 5 saniyelik bir video çekmek için time.sleep(3) camera.stop_preview() # camera.stop_recording() # Video çekmek için bunun yorumunu kaldırın # KeyboardInterrupt hariç CTRL + C tuşlarına basarak sıfırlayın: print("Ölçüm Kullanıcı tarafından durduruldu") GPIO.cleanup()

Adım 3: Kodu Çalıştırın

Kodu Çalıştır
Kodu Çalıştır
Kodu Çalıştır
Kodu Çalıştır
Kodu Çalıştır
Kodu Çalıştır
Kodu Çalıştır
Kodu Çalıştır

Şimdi betiği şu şekilde çalıştırın

pi@raspberrypi: python ölçüsü.py

Mesafe her 3 saniyede bir ölçülür (komut dosyasındaki değeri değiştirebilirsiniz) ve 20 santimetre içinde bir nesne tanımlanırsa ekrana yazdırılır, pi kamera fotoğraf çeker ve medya klasörüne kaydeder.

Alternatif olarak, yorum yaparak video çekebilir veya yorum olarak belirtilen komut satırı satırlarından hashtag'leri(#) kaldırabilirsiniz. “time.sleep(5)” içindeki değeri basitçe artırarak/azaltarak da video uzunluğunu uzatabilirsiniz.

Mutlu Devreler!

Önerilen: