Sadržaj:

Ultrazvučni senzor za snimanje pozicijskih promjena objekata: 3 koraka
Ultrazvučni senzor za snimanje pozicijskih promjena objekata: 3 koraka

Video: Ultrazvučni senzor za snimanje pozicijskih promjena objekata: 3 koraka

Video: Ultrazvučni senzor za snimanje pozicijskih promjena objekata: 3 koraka
Video: 20 товаров для автомобиля с Алиэкспресс, автотовары №37 2024, Srpanj
Anonim
Ultrazvučni senzor za snimanje promjena položaja objekata
Ultrazvučni senzor za snimanje promjena položaja objekata

Važno je da vaše vrijedne stvari budu na sigurnom, bilo bi glupo da cijeli dan čuvate svoj dvorac. Pomoću maline pi kamere možete napraviti snimke u pravom trenutku. Ovaj će vam vodič pomoći pri snimanju videozapisa ili fotografiranju kada se promjene osjete unutar graničnog područja.

Hardver:

  1. Malina Pi 2/3/4
  2. Ultrazvučni senzor
  3. Pi kamera
  4. Džemperi

Korak 1: Veze

Veze
Veze
  • TRIG u RPI4B 17
  • VCC na RPI4B 5V
  • GND u RPI4B GND
  • Odjek na 470-ohmski otpornik na priključak-1
  • GND na 1K ohm otpornik na priključak-1
  • veza-1 na RPI4B 4

Shema kola izrađena je pomoću circuito.io, ima sve najpopularnije mikrokontrolere, senzore itd., A platforma je jednostavna za korištenje za početnike

Korak 2: Prenesite kôd

Učitajte kôd
Učitajte kôd
Učitajte kôd
Učitajte kôd

Prije nego pokrenete skriptu, stvorite mapu kroz sljedeće naredbe otvaranjem terminala, a zatim uredite datoteku skripte.

pi@raaspberrypi: mkdir media

pi@raaspberrypi: nano mjera.py

Kôd koristi biblioteke fotoaparata i GPIO. Unakrsno provjerite da li su pinovi GPIO_TRIGGER i GPIO_ECHO ispravno spojeni na 17. i 4. pinove Raspberry Pi izvana.

Kopirajte i zalijepite donji kôd ili upišite u datoteku python i dajte mu ime "mjera.py"

#Librariesimport RPi. GPIO kao GPIO vrijeme uvoza uvoz os iz pikamere uvoz PiCamera # Način rada kamere Camera = PiCamera () camera.rotation = 180 # Komentirajte ovaj redak ako je slika savršeno pod uglom #GPIO Mode GPIO.setmode (GPIO. BCM) GPIO.setwarnings (False) #set GPIO pinovi GPIO_TRIGGER = 17 GPIO_ECHO = 4 #postavljeni GPIO smjer (IN / OUT) GPIO.setup (GPIO_TRIGGER, GPIO. OUT) GPIO.setup (GPIO_ECHO, GPIO. IN) def distance (): # postavite Trigger na HIGH GPIO.output (GPIO_TRIGGER, True) # postavite Trigger nakon 0,01 ms na LOW time.sleep (0,00001) GPIO.output (GPIO_TRIGGER, False) StartTime = time.time () StopTime = time.time () # spremite StartTime while GPIO.input (GPIO_ECHO) == 0: StartTime = time.time () # spremi vrijeme dolaska dok GPIO.input (GPIO_ECHO) == 1: StopTime = time.time () # vremenska razlika između početka i dolaska TimeElapsed = StopTime - StartTime # pomnožite sa zvučnom brzinom (34300 cm / s) # i podijelite s 2, jer je tamo i udaljenost natrag = (TimeElapsed * 34300) / 2 povratna udaljenost ako je _name_ == '_main_': camera.start_preview (alpha = 200) try: while True: dist = distance () print ("Izmjerena udaljenost = %.1f cm" % dist) ako je dist <= 20: # promijenite ovu vrijednost prema postavkama sada = vrijeme.ctime (). replace ("", "-") camera.capture ("media/image % s.jpg" % now) print ("Slika spremljena na media/image- % s.jpg" % now) # camera.start_recording ("media/video- % s.h264" % now) # Raskomentirajte ovo da biste snimili video zapis # ispis ("Videozapis spremljen na mediju/sliku- % s.jpg" % sada) # sleep (5) # Raskomentirajte ovo za snimanje videozapisa u trajanju od 5 sekundi.sleep (3) camera.stop_preview () # camera.stop_recording () # Raskomentirajte ovo za snimanje videozapisa # Resetirajte pritiskom na CTRL + C osim KeyboardInterrupt: print ("Mjerenje je zaustavio korisnik") GPIO.cleanup ()

Korak 3: Pokrenite kôd

Pokrenite kôd
Pokrenite kôd
Pokrenite kôd
Pokrenite kôd
Pokrenite kôd
Pokrenite kôd
Pokrenite kôd
Pokrenite kôd

Sada pokrenite skriptu kao

pi@raspberrypi: python mjera.py

Udaljenost se mjeri svake 3 sekunde (možete promijeniti vrijednost u skripti) i ispisuje se na zaslon ako se objekt identificira unutar 20 centimetara, pi kamera snima fotografiju i sprema je u mapu s medijima.

Alternativno, možete snimiti videozapis tako što ćete komentirati ili ukloniti hashtagove (#) iz redaka skripte spomenutih kao komentari. Također možete produžiti video zapis jednostavnim povećanjem/smanjenjem vrijednosti u "time.sleep (5)".

Sretno kolo!

Preporučeni: