Inhoudsopgave:

Afstandssensorcamera: 4 stappen
Afstandssensorcamera: 4 stappen

Video: Afstandssensorcamera: 4 stappen

Video: Afstandssensorcamera: 4 stappen
Video: Durf jij een patatje te bestellen tussen deze motorbende? | Mensenkennis 2024, November
Anonim
Afstandssensorcamera
Afstandssensorcamera

Deze instructable laat je zien hoe je een afstandssensorcamera maakt met een Raspberry Pi. Dit project gebruikt de raspberry pi en gebruikt python 3 voor de codering in dit project. De afstandssensorcamera meet eerst 100 cm, knippert dan de RGB-LED en maakt de foto. Om vervolgens te laten zien dat de foto is gemaakt, heeft de RGB-LED een effen blauwe kleur. Om toegang te krijgen tot de foto, ga je naar het bureaublad van de Raspberry Pi waarop de foto is gemaakt.

Je zal nodig hebben:

  • 1x Raspberry Pi
  • 1x T-schoenmaker
  • 1x Broodplank op ware grootte
  • 1x Pi-camera
  • 1x RGB-LED (kathode)
  • 1x afstandssensor
  • 1x 330 Weerstand
  • 1x 560 Weerstand
  • Blauwe draden
  • zwarte draden
  • Rode draden

Stap 1:

Afbeelding
Afbeelding

Schaf de onderdelen aan en bevestig de T-Cobbler aan de Raspberry Pi en het breadboard. Stel vervolgens de grond- en stroomdraden in. Knip en strip vanaf 5,0 v genoeg van de rode draad om in het gat naast 5,0 v op de T-Cobbler te passen en plaats aan de ene kant in de positieve kant van de positieve en negatieve plekken op het bord. Doe dan wat je net deed, maar met een zwarte draad in de GND en die gaat in het negatieve deel. Ga daarna naar de andere kant van het breadboard en verbind de twee positieve kanten met elkaar en de twee negatieve kanten met draad zodat het positieve rood is en het negatieve zwart. Zoals weergegeven in dit schema

Stap 2:

Afbeelding
Afbeelding

Neem de afstandssensor, RGB-led en de pi-camera en plaats ze op hun plaats op de pi en het breadboard. Sluit de pi-camera aan op de raspberry pi in de aangegeven positie. Plaats vervolgens de RGB-LED in het breadboard en zorg ervoor dat alle volledige kabels in het gat gaan waarin u deze hebt geplaatst. Lees welke RGB-LED u hebt en kijk welke kabel wat is. Zoek dan een plek voor de afstandssensor op het breadboard waar niets in de weg staat. Merk op welke lead waarheen gaat, want u zult moeten weten voor de volgende stap.

Stap 3:

Afbeelding
Afbeelding

Maak nu de bedrading van het circuit af en zoek de juiste weerstanden voor de juiste positie. Dus om macht weer te geven heb ik rode draden gebruikt, voor aarde gebruikte ik zwarte draden en voor de GPIO-draden heb ik de blauwe draden gebruikt. En in deze stap zullen we ook de weerstanden op de juiste plaats plaatsen bij de afstandssensor. Volg indien nodig het schema over hoe dit circuit te bedraden.

Stap 4:

Afbeelding
Afbeelding

Voor deze stap gaan we coderen en hiervoor gebruiken we python 3. wat er moet gebeuren is dat als de afstand tussen u en de afstandssensor meer dan 100 cm is, de camera een foto zal maken. Maar net voor de foto zal het rood knipperen en na de foto zal het een effen blauwe kleur hebben.

Python 3-code

importeer RPi. GPIO als GPIOvan picamera importeer PiCamera van tijd import slaap, tijd van gpiozero import LED, Knop

camera = PiCamera()

GPIO.setmode(GPIO. BCM)

GPIO_TRIGGER = 13GPIO_ECHO = 19 rood = LED (16) groen = LED (20) blauw = LED (21) opnieuw = True

GPIO.setwarnings(False)GPIO.setup(GPIO_TRIGGER, GPIO. OUT) GPIO.setup(GPIO_ECHO, GPIO. IN)

def RedLight(): red.blink() green.on() blue.on()

def BlueLight(): red.on() green.on() blue.off()

def GreenLight(): red.on() green.off() blue.on()

def distance(): GPIO.output(GPIO_TRIGGER, True)

sleep(0.00001) GPIO.output(GPIO_TRIGGER, False)

StartTijd = tijd() StopTijd = tijd()

terwijl GPIO.input (GPIO_ECHO) == 0: StartTime = tijd ()

terwijl GPIO.input (GPIO_ECHO) == 1: StopTime = tijd ()

TimeElapsed = StopTime - StartTime afstand = (TimeElapsed * 34300) / 2

retour afstand

probeer: while again: dist = distance() if dist > 100: camera.start_preview() RedLight() RedLight() sleep(5) camera.capture('/home/pi/Desktop/Image.jpg') camera.stop_preview () BlueLight() opnieuw = Valse afdruk ("Gemeten afstand = %.1f cm" % dist) slaap(1)

# Reset door op CTRL + C te drukken behalve KeyboardInterrupt: print ("Meting gestopt door gebruiker") GPIO.cleanup()

Aanbevolen: