Daftar Isi:

Sensor Ultrasonik untuk Menangkap Perubahan Posisi Objek: 3 Langkah
Sensor Ultrasonik untuk Menangkap Perubahan Posisi Objek: 3 Langkah

Video: Sensor Ultrasonik untuk Menangkap Perubahan Posisi Objek: 3 Langkah

Video: Sensor Ultrasonik untuk Menangkap Perubahan Posisi Objek: 3 Langkah
Video: Tutorial Arduino Mengontrol Servo Dengan Sensor Ultrasonik 2024, Desember
Anonim
Sensor Ultrasonik untuk Menangkap Perubahan Posisi Objek
Sensor Ultrasonik untuk Menangkap Perubahan Posisi Objek

Penting untuk mengamankan barang-barang berharga Anda, itu akan menjadi timpang jika Anda terus menjaga kastil Anda sepanjang hari. Menggunakan kamera raspberry pi Anda dapat mengambil bidikan pada saat yang tepat. Panduan ini akan membantu Anda merekam video atau mengambil gambar saat perubahan dirasakan di dalam area batas.

Perangkat keras:

  1. Raspberry Pi 2/3/4"
  2. Sensor ultrasonik
  3. kamera pi
  4. jumper

Langkah 1: Koneksi

Koneksi
Koneksi
  • TRIG ke RPI4B 17
  • VCC ke RPI4B 5V
  • GND ke RPI4B GND
  • Gema ke resistor 470-ohm ke koneksi-1
  • GND ke resistor 1K ohm ke koneksi-1
  • koneksi-1 ke RPI4B 4

Skema rangkaian dibuat menggunakan circuito.io, ia memiliki semua mikrokontroler, sensor, dll yang paling populer dan platformnya mudah digunakan untuk pemula

Langkah 2: Unggah Kode

Unggah Kode
Unggah Kode
Unggah Kode
Unggah Kode

Sebelum Anda menjalankan skrip, buat folder melalui perintah berikut untuk membuka terminal dan kemudian edit file skrip.

pi@raaspberrypi: mkdir media

pi@raaspberrypi: nano measure.py

Kode menggunakan perpustakaan kamera dan GPIO. Periksa silang pin GPIO_TRIGGER & GPIO_ECHO terhubung dengan benar ke pin 17 & 4 Raspberry Pi secara eksternal.

Salin dan tempel kode di bawah ini atau ketik ke file python dan beri nama 'measure.py'

#Librariesimport RPi. GPIO sebagai GPIO waktu impor os dari picamera impor PiCamera # Mode Kamera camera = PiCamera() camera.rotation = 180 # Beri komentar pada baris ini jika gambar bersudut sempurna #GPIO Mode GPIO.setmode(GPIO. BCM) GPIO.setwarnings(False) #set GPIO Pin GPIO_TRIGGER = 17 GPIO_ECHO = 4 #set arah GPIO (IN / OUT) GPIO.setup(GPIO_TRIGGER, GPIO. OUT) GPIO.setup(GPIO_ECHO, GPIO. IN) def distance(): # atur Pemicu ke HIGH GPIO.output(GPIO_TRIGGER, True) # atur Trigger setelah 0,01ms ke LOW time.sleep(0,00001) GPIO.output(GPIO_TRIGGER, False) StartTime = time.time() StopTime = time.time() # save StartTime while GPIO.input(GPIO_ECHO) == 0: StartTime = time.time() # menghemat waktu kedatangan saat GPIO.input(GPIO_ECHO) == 1: StopTime = time.time() # perbedaan waktu antara mulai dan tiba TimeElapsed = StopTime - StartTime # kalikan dengan kecepatan sonik (34300 cm/s) # dan bagi dengan 2, karena jarak sana dan belakang = (TimeElapsed * 34300) / 2 jarak kembali jika _name_ == '_main_': camera.start_preview(alpha=200) try: while True: dist = distance() print ("Measured Distance = %.1f cm" % dist) if dist<= 20: # ubah nilai ini sesuai dengan pengaturan Anda sekarang = waktu.ctime().replace(" ", "-") camera.capture("media/image%s.jpg" % sekarang) print("Gambar disimpan di media/image-%s.jpg" % sekarang) # kamera.start_recording("media/video-%s.h264" % sekarang) # Batalkan komentar ini untuk mengambil video # print("Video disimpan di media/image-%s.jpg" % sekarang) # sleep(5) # Batalkan komentar ini untuk mengambil video selama 5 detik time.sleep(3) camera.stop_preview() # camera.stop_recording() # Hapus komentar ini untuk mengambil video # Reset dengan menekan CTRL + C kecuali KeyboardInterrupt: print("Pengukuran dihentikan oleh Pengguna") GPIO.pembersihan()

Langkah 3: Jalankan Kode

Jalankan Kode
Jalankan Kode
Jalankan Kode
Jalankan Kode
Jalankan Kode
Jalankan Kode
Jalankan Kode
Jalankan Kode

Sekarang jalankan skrip sebagai

pi@raspberrypi: python measure.py

Jarak diukur setiap 3 detik (Anda dapat mengubah nilai dalam skrip) dan dicetak ke layar jika suatu objek diidentifikasi dalam jarak 20 sentimeter, kamera pi mengambil foto dan menyimpannya di folder media.

Atau, Anda dapat merekam video dengan membatalkan komentar atau menghapus tagar(#) dari baris skrip yang disebutkan sebagai komentar. Anda juga dapat memperpanjang durasi video hanya dengan menambah/mengurangi nilai di "time.sleep(5)".

Selamat Sirkuit!

Direkomendasikan: