Innholdsfortegnelse:
Video: Ultralydssensor for å fange posisjonelle endringer av objekter: 3 trinn
2024 Forfatter: John Day | [email protected]. Sist endret: 2024-01-30 11:21
Det er viktig å ha verdifulle ting trygge, det ville være halt hvis du fortsetter å vokte slottet ditt hele dagen. Ved å bruke bringebær pi -kameraet kan du ta snapsene i riktig øyeblikk. Denne guiden hjelper deg med å ta opp en video eller ta bildet når endringene registreres innenfor grenseområdet.
Maskinvare:
- Raspberry Pi 2/3/4
- Ultralydsensor
- Pi kamera
- Gensere
Trinn 1: Tilkoblinger
- TRIG til RPI4B 17
- VCC til RPI4B 5V
- GND til RPI4B GND
- Ekko til 470-ohm motstand til tilkobling-1
- GND til 1K ohm motstand til tilkobling-1
- tilkobling-1 til RPI4B 4
Kretsskjemaet er laget ved hjelp av circuito.io, den har alle de mest populære mikrokontrollerne, sensorene osv. Og plattformen er enkel å bruke for nybegynnere
Trinn 2: Last opp koden
Før du kjører skriptet, må du opprette en mappe gjennom følgende kommandoer som åpner terminalen og deretter redigere skriptfilen.
pi@raaspberrypi: mkdir media
pi@raaspberrypi: nano measure.py
Koden bruker kamera- og GPIO -biblioteker. Kontroller at GPIO_TRIGGER og GPIO_ECHO-pinnene er riktig koblet til 17. og 4. pinne på Raspberry Pi eksternt.
Kopier og lim inn koden nedenfor eller skriv inn i python -filen og navngi den som 'measure.py'
#Librariesimport RPi. GPIO as GPIO import time import os from picamera import PiCamera # Camera Mode camera = PiCamera () camera.rotation = 180 # Kommenter denne linjen hvis bildet er perfekt vinklet #GPIO Mode GPIO.setmode (GPIO. BCM) GPIO.setwarnings (False) #set GPIO Pins GPIO_TRIGGER = 17 GPIO_ECHO = 4 #sett GPIO -retning (IN / OUT) GPIO.setup (GPIO_TRIGGER, GPIO. OUT) GPIO.setup (GPIO_ECHO, GPIO. IN) def distanse (): # sett Trigger til HIGH GPIO.output (GPIO_TRIGGER, True) # sett Trigger etter 0.01ms til 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 () # lagre ankomsttid mens GPIO.input (GPIO_ECHO) == 1: StopTime = time.time () # tidsforskjell mellom start og ankomst TimeElapsed = StopTime - StartTime # multipliser med sonisk hastighet (34300 cm / s) # og divider med 2, fordi der og tilbake distanse = (TimeElapsed * 34300) / 2 returavstand hvis _name_ == '_main_': camera.start_preview (alfa = 200) prøv: while True: dist = distance () print ("Measured Distance = %.1f cm" % dist) if dist <= 20: # endre denne verdien i henhold til innstillingen din nå = tid.ctime (). erstatt ("", "-") camera.capture ("media/image % s.jpg" % nå) print ("Bilde lagret på media/image- % s.jpg" % nå) # kamera.start_recording ("media/video- % s.h264" % nå) # Ikke kommenter dette for å ta en video # print ("Video lagret på media/image- % s.jpg" % nå) # sleep (5) # Ikke kommenter dette for å ta en video i 5 sekunder. sove (3) camera.stop_preview () # camera.stop_recording () # Ikke kommenter dette for å ta en video # Tilbakestill ved å trykke CTRL + C unntatt KeyboardInterrupt: print ("Måling stoppet av bruker") GPIO.cleanup ()
Trinn 3: Kjør koden
Kjør nå skriptet som
pi@raspberrypi: python measure.py
Avstanden måles hvert tredje sekund (du kan endre verdien i skriptet) og skrives ut på skjermen hvis et objekt er identifisert innenfor 20 centimeter, pi -kameraet tar et bilde og lagrer i mediemappen.
Alternativt kan du skyte en video ved å ikke kommentere eller fjerne hashtags (#) fra skriptlinjene nevnt som kommentarer. Du kan også forlenge videolengden ved ganske enkelt å øke/redusere verdien i “time.sleep (5)”.
God sirkus!
Anbefalt:
Objektorientert programmering: Lage objekter Læring/undervisningsmetode/teknikk ved hjelp av Shape Puncher: 5 trinn
Objektorientert programmering: Lage objekter Lærings-/undervisningsmetode/teknikk ved hjelp av Shape Puncher: Lærings-/undervisningsmetode for studenter som er ny i objektorientert programmering. Dette er en måte å la dem visualisere og se prosessen med å lage objekter fra klasser. Deler: 1. EkTools 2-tommers stor slag; solide former er best.2. Papir eller c
Arduino RGB fargevelger - Velg farger fra virkelige objekter: 7 trinn (med bilder)
Arduino RGB Color Picker - Velg farger fra virkelige objekter: Velg enkelt farger fra fysiske objekter med denne Arduino -baserte RGB -fargevelgeren, slik at du kan gjenskape fargene du ser i virkelige objekter på din PC eller mobiltelefon. Bare trykk på en knapp for å skanne fargen på objektet ved hjelp av en billig TCS347
Objektorientert programmering: Lage objekter Læring/undervisningsmetode/teknikk ved hjelp av saks: 5 trinn
Objektorientert programmering: Lage objekter Lærings-/undervisningsmetode/teknikk ved hjelp av saks: Lærings-/undervisningsmetode for studenter som er nye i objektorientert programmering. Dette er en måte å la dem visualisere og se prosessen med å lage objekter fra klasser. Deler: 1. Saks (alle slags vil gjøre). 2. Papir eller kartong. 3. Markør
Oppdag objekter mens du kjører RC -bil: 9 trinn
Oppdag objekter mens du kjører RC -bil: Dette prosjektet handler om bruk av ultralydsensorer på en bil for å oppdage hindringer
Spill av mp3-er på 70 år gammel platespiller-ingen permanente endringer: 3 trinn
Spill av mp3-er på 70 år gammel platespiller-ingen permanente endringer: Det jeg i utgangspunktet har gjort, er å sette opp en monoforbindelse mellom MP3- eller mediekilden du velger, datamaskinen, kassett-esken, walkie-talkie og direktekoblet den direkte til høyttaleren via alligatorklemmer. Som alltid er opplærings-/demovideo: VENNLIGST