Satura rādītājs:

Ultraskaņas sensors, lai fiksētu objektu pozicionālās izmaiņas: 3 soļi
Ultraskaņas sensors, lai fiksētu objektu pozicionālās izmaiņas: 3 soļi

Video: Ultraskaņas sensors, lai fiksētu objektu pozicionālās izmaiņas: 3 soļi

Video: Ultraskaņas sensors, lai fiksētu objektu pozicionālās izmaiņas: 3 soļi
Video: Ультразвуковой сонар с HC-SR04, сервоприводом, SSD1306 128x64 OLED и NodeMCU ESP32S на Arduino IDE 2024, Novembris
Anonim
Ultraskaņas sensors, lai fiksētu objektu pozicionālās izmaiņas
Ultraskaņas sensors, lai fiksētu objektu pozicionālās izmaiņas

Ir svarīgi, lai jūsu vērtīgās lietas būtu drošībā, būtu nožēlojami, ja visu dienu turpinātu sargāt savu pili. Izmantojot aveņu pi kameru, jūs varat uzņemt momentuzņēmumus īstajā brīdī. Šī rokasgrāmata palīdzēs jums uzņemt video vai nofotografēt, kad izmaiņas ir pamanāmas robežjoslā.

Aparatūra:

  1. Raspberry Pi 2/3/4
  2. Ultraskaņas sensors
  3. Pi kamera
  4. Džemperi

1. darbība. Savienojumi

Savienojumi
Savienojumi
  • TRIG uz RPI4B 17
  • VCC līdz RPI4B 5V
  • GND līdz RPI4B GND
  • Atbalss līdz 470 omu rezistoram savienojumam-1
  • GND līdz 1K omu rezistors savienojumam-1
  • savienojums-1 ar RPI4B 4

Shēmas shēma ir veidota, izmantojot circuitito.io, tajā ir visi populārākie mikrokontrolleri, sensori utt., Un platformu ir viegli izmantot iesācējiem

2. darbība: augšupielādējiet kodu

Augšupielādējiet kodu
Augšupielādējiet kodu
Augšupielādējiet kodu
Augšupielādējiet kodu

Pirms skripta palaišanas izveidojiet mapi, izmantojot šādas komandas, atverot termināli, un pēc tam rediģējiet skripta failu.

pi@raaspberrypi: mkdir media

pi@raaspberrypi: nano pasākums.py

Kods izmanto kameru un GPIO bibliotēkas. Pārbaudiet, vai GPIO_TRIGGER un GPIO_ECHO tapas ir pareizi savienotas ar Raspberry Pi 17. un 4. tapu ārēji.

Nokopējiet un ielīmējiet tālāk norādīto kodu vai veidu python failā un nosauciet to par "intézkedés.py"

#Librariesimport RPi. GPIO kā GPIO importēšanas laika importēšana os no picamera importa.setwarnings (False) #set GPIO Pins GPIO_TRIGGER = 17 GPIO_ECHO = 4 #set GPIO direction (IN / OUT) GPIO.setup (GPIO_TRIGGER, GPIO. OUT) GPIO.setup (GPIO_ECHO, GPIO. IN) def distance (): # iestatīt aktivizētāju uz HIGH GPIO.output (GPIO_TRIGGER, True) # iestatīt aktivizētāju pēc 0,01 ms uz LOW time.sleep (0.00001) GPIO.output (GPIO_TRIGGER, False) StartTime = time.time () StopTime = time.time () # save Sākuma laiks, kamēr GPIO.input (GPIO_ECHO) == 0: StartTime = time.time () # ietaupīt ierašanās laiku, savukārt GPIO.input (GPIO_ECHO) == 1: StopTime = time.time () # laika starpība starp sākuma un ierašanās laikuElapsed = StopTime - StartTime # reiziniet ar skaņas ātrumu (34300 cm / s) # un daliet ar 2, jo attālums turp un atpakaļ = (TimeElapsed * 34300) / 2 atgriešanās attālums, ja _name_ == '_main_': camera.start_preview (alpha = 200) try: while True: dist = distance () print ("Measured Distance = %.1f cm" % dist) if dist <= 20: # mainīt šo vērtību atbilstoši jūsu iestatījumam tagad = laiks.ctime (). aizstāt ("", "-") camera.capture ("multivide/attēls % s.jpg" % tagad) drukāt ("Attēls saglabāts medijā/attēls- % s.jpg" % tagad) # kamera.start_recording ("media/video- % s.h264" % tagad) # Noņemiet komentāru, lai uzņemtu videoklipu # print ("Video saglabāts multivides failā/attēls- % s.jpg" % tagad) # miega režīms (5) # Noņemt komentāru lai uzņemtu video 5 sekundes. miega (3) camera.stop_preview () # camera.stop_recording () # Noņemiet komentāru, lai uzņemtu videoklipu. GPIO.cleanup ()

3. darbība: palaidiet kodu

Palaidiet kodu
Palaidiet kodu
Palaidiet kodu
Palaidiet kodu
Palaidiet kodu
Palaidiet kodu
Palaidiet kodu
Palaidiet kodu

Tagad palaidiet skriptu kā

pi@raspberrypi: python intézkedés.py

Attālums tiek mērīts ik pēc 3 sekundēm (varat mainīt skripta vērtību) un tiek izdrukāts uz ekrāna, ja objekts tiek identificēts 20 centimetru robežās, pi kamera uzņem fotoattēlu un saglabā to multivides mapē.

Varat arī uzņemt videoklipu, nekomentējot vai noņemot atsauces (#) no skripta rindām, kas minētas kā komentāri. Varat arī pagarināt video garumu, vienkārši palielinot/samazinot vērtību “time.sleep (5)”.

Laimīgu ķēdi!

Ieteicams: