Innehållsförteckning:
Video: Ultraljudssensor för att fånga positionsförändringar av objekt: 3 steg
2024 Författare: John Day | [email protected]. Senast ändrad: 2024-01-30 12:39
Det är viktigt att ha dina värdefulla saker säkra, det vore halt om du fortsätter att vakta ditt slott hela dagen. Med hjälp av hallon pi -kameran kan du ta bilderna i rätt ögonblick. Den här guiden hjälper dig att spela in en video eller ta bilden när ändringarna avkänns inom gränsområdet.
Hårdvara:
- Hallon Pi 2/3/4
- Ultraljudssensor
- Pi -kamera
- Tröjor
Steg 1: Anslutningar
- TRIG till RPI4B 17
- VCC till RPI4B 5V
- GND till RPI4B GND
- Eko till 470-ohm motstånd till anslutning-1
- GND till 1K ohm motstånd till anslutning-1
- anslutning-1 till RPI4B 4
Kretsschemat är gjort med circuito.io, det har alla de mest populära mikrokontrollerna, sensorerna etc och plattformen är lätt att använda för nybörjare
Steg 2: Ladda upp koden
Innan du kör skriptet, skapa en mapp genom följande kommandon som öppnar terminalen och redigerar sedan skriptfilen.
pi@raaspberrypi: mkdir media
pi@raaspberrypi: nano measure.py
Koden använder kamera- och GPIO -bibliotek. Kontrollera att GPIO_TRIGGER & GPIO_ECHO-stiften är korrekt anslutna till 17: e och 4: e stiften på Raspberry Pi externt.
Kopiera och klistra in nedanstående kod eller skriv in i python -filen och namnge den som 'measure.py'
#Librariesimport RPi. GPIO som GPIO importtid import os från picamera import PiCamera # Camera Mode camera = PiCamera () camera.rotation = 180 # Kommentera den här raden om bilden är perfekt vinklad #GPIO Mode GPIO.setmode (GPIO. BCM) GPIO.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 (): # ställ Trigger till HIGH GPIO.output (GPIO_TRIGGER, True) # ställ Trigger efter 0.01ms till LOW time.sleep (0.00001) GPIO.output (GPIO_TRIGGER, False) StartTime = time.time () StopTime = time.time () # save StartTime medan GPIO.input (GPIO_ECHO) == 0: StartTime = time.time () # spara ankomsttid medan GPIO.input (GPIO_ECHO) == 1: StopTime = time.time () # tidsskillnad mellan start och ankomst TimeElapsed = StopTime - StartTime # multiplicera med sonisk hastighet (34300 cm / s) # och dividera med 2, eftersom det och bakåt distans = (TimeElapsed * 34300) / 2 retursträcka om _name_ == '_main_': camera.start_preview (alfa = 200) försök: medan True: dist = distance () print ("Measured Distance = %.1f cm" % dist) if dist <= 20: # ändra detta värde enligt din inställning nu = tid.ctime (). Ersätt ("", "-") camera.capture ("media/image % s.jpg" % nu) print ("Bild sparad på media/image- % s.jpg" % nu) # kamera.start_recording ("media/video- % s.h264" % nu) # Kommentera detta för att ta en video # print ("Video sparad på media/image- % s.jpg" % nu) # sleep (5) # Uncomment this för att ta en video i 5 sekunder. sova (3) kamera.stopp_förhandsgranskning () # kamera.stoppa_inspelning () # Avmarkera detta för att ta en video GPIO.cleanup ()
Steg 3: Kör koden
Kör nu skriptet som
pi@raspberrypi: python measure.py
Avståndet mäts var tredje sekund (du kan ändra värdet i skriptet) och skrivs ut på skärmen om ett objekt identifieras inom 20 centimeter, pi -kameran tar ett foto och sparar i mediemappen.
Alternativt kan du spela in en video genom att inte kommentera eller ta bort hashtags (#) från skriptraderna som nämns som kommentarer. Du kan också förlänga videolängden genom att helt enkelt öka/minska värdet i “time.sleep (5)”.
Glad cirkulering!
Rekommenderad:
555 Timer för att avge signal för att avbryta Atmega328: 7 steg
555 Timer to Emit Signal to Interrupt Atmega328: Huvudmålet med denna krets är att spara energi. Så jag tänker inte prata om arduino eftersom styrelsen själv har onödig kraftöverlag för en slutprodukt. Det är bra för utveckling. Men, inte särskilt bra för slutprojekt som körs på batt
Väggfäste för iPad som kontrollpanel för hemautomation, med servostyrd magnet för att aktivera skärmen: 4 steg (med bilder)
Väggfäste för iPad Som kontrollpanel för hemautomation, med servostyrd magnet för att aktivera skärmen: På senare tid har jag ägnat ganska mycket tid åt att automatisera saker i och runt mitt hus. Jag använder Domoticz som min hemautomationsapplikation, se www.domoticz.com för mer information. I min sökning efter en instrumentpanelapplikation som visar all Domoticz -information tillsammans
Skanna närliggande objekt för att göra 3d -modell med ARDUINO: 5 steg (med bilder)
Skanna närliggande objekt för att göra 3d-modell med ARDUINO: Detta projekt är specifikt genom att använda ultraljudssensorn HC-SR04 för att söka efter objekt i närheten. För att göra en 3D -modell måste du svepa sensorn i vinkelrät riktning. Du kan programmera Arduino för att avge ett larm när sensorn detekterar ett föremål
Metoder för att upptäcka vattennivå Arduino med ultraljudssensor och Funduino vattensensor: 4 steg
Metoder för att upptäcka vattennivå Arduino med ultraljudssensor och Funduino vattensensor: I det här projektet visar jag dig hur du skapar en billig vattedetektor med två metoder: 1. Ultraljudssensor (HC-SR04) .2. Funduino vattensensor
Övertyga dig själv om att bara använda en 12V-till-AC-omriktare för LED-ljussträngar istället för att koppla om dem för 12V: 3 steg
Övertyga dig själv om att bara använda en 12V-till-AC-linjeomvandlare för LED-ljussträngar istället för att koppla om dem för 12V: Min plan var enkel. Jag ville klippa upp en väggdriven LED-ljussträng i bitar och sedan dra om den för att gå av 12 volt. Alternativet var att använda en kraftomvandlare, men vi vet alla att de är fruktansvärt ineffektiva, eller hur? Höger? Eller är de det?