Obsah:

Kamera senzoru vzdálenosti: 4 kroky
Kamera senzoru vzdálenosti: 4 kroky

Video: Kamera senzoru vzdálenosti: 4 kroky

Video: Kamera senzoru vzdálenosti: 4 kroky
Video: 5 МЕСЯЦЕВ БЕЗ ПОДЗАРЯДКИ, БЕСПЛАТНОЕ ОБЛАКО, беспроводная камера Uniwatch 2024, Červenec
Anonim
Kamera se snímačem vzdálenosti
Kamera se snímačem vzdálenosti

Tento návod vám ukáže, jak vyrobit kameru pro snímač vzdálenosti pomocí malinového pi. Tento projekt použije malinu pi a pro kódování v tomto projektu použije python 3. Kamera se snímačem vzdálenosti nejprve změří 100 cm, poté bliká RGB LED a pořídí snímek. Poté, aby se ukázalo, že byla fotografie pořízena, bude mít LED RGB plnou modrou barvu. Poté pro přístup k fotografii přejděte na desku stolu malinového pi, na které byla fotografie pořízena.

Budete potřebovat:

  • 1x Raspberry Pi
  • 1x T-ševec
  • 1x Breadboard plné velikosti
  • 1x Pi kamera
  • 1x RGB LED (katoda)
  • 1x snímač vzdálenosti
  • 1x rezistor 330 Ω
  • 1x rezistor 560 Ω
  • Modré dráty
  • Černé dráty
  • Červené dráty

Krok 1:

obraz
obraz

Získejte díly a připevněte T-Cobbler k Raspberry Pi a prkénku. Další nastavení zemních a napájecích vodičů. Od 5,0 V odstřihněte a odizolujte dostatek červeného drátu, aby se vešel do otvoru vedle 5,0 V na T-Cobbleru, a vložte na jednu stranu kladné a záporné body na desce. Pak udělejte to, co jste právě udělali, ale s černým drátem do GND a tím se dostanete do negativní části. Poté přejděte na druhou stranu prkénka a spojte dvě kladné strany dohromady a dvě záporné strany dohromady pomocí drátu tak, aby kladná hodnota byla červená a záporná černá. Jak ukazuje toto schéma

Krok 2:

obraz
obraz

Vezměte snímač vzdálenosti, RGB LED a pi kameru a vložte je na místo na pí a breadboardu. Připojte Pi kameru k Raspberry Pi v uvedené poloze. Poté umístěte RGB LED do prkénka a ujistěte se, že všechny plné vodiče jdou do otvoru, do kterého jste jej vložili. Přečtěte si, jaké máte RGB LED diody, a všimněte si, který vývod je jaký. Poté najděte na prkénku místo pro senzor vzdálenosti, kde vám nic nepřekáží. Všimněte si, kudy vede, kam budete potřebovat, abyste pro další krok věděli.

Krok 3:

obraz
obraz

Nyní dokončete zapojení obvodu a najděte správné odpory pro správnou polohu. Abych reprezentoval sílu, použil jsem červené vodiče, pro uzemnění jsem použil černé vodiče a pro vodiče GPIO jsem použil modré vodiče. A v tomto kroku také umístíme odpory na správné místo u senzoru vzdálenosti. V případě potřeby postupujte podle schématu zapojení tohoto obvodu.

Krok 4:

obraz
obraz

Nyní pro tento krok budeme kódovat a pro tento účel použijeme python 3. Co se musí stát, je, že pokud je vzdálenost mezi u a snímačem vzdálenosti větší než 100 cm, fotoaparát pořídí fotografii. Ale těsně před fotografií bude blikat červeně a po fotografii bude mít jasnou modrou barvu.

Kód Pythonu 3

import RPi. GPIO jako GPIOz picamery import PiCamera z času importu spánku, času z gpiozero import LED, tlačítko

kamera = PiCamera ()

GPIO.setmode (GPIO. BCM)

GPIO_TRIGGER = 13GPIO_ECHO = 19 červená = LED (16) zelená = LED (20) modrá = LED (21) znovu = 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 vzdálenost (): GPIO.output (GPIO_TRIGGER, True)

spánek (0,00001) GPIO.output (GPIO_TRIGGER, False)

StartTime = čas () StopTime = čas ()

zatímco GPIO.input (GPIO_ECHO) == 0: StartTime = čas ()

zatímco GPIO.input (GPIO_ECHO) == 1: StopTime = čas ()

TimeElapsed = StopTime - StartTime vzdálenost = (TimeElapsed * 34300) / 2

zpáteční vzdálenost

zkuste: 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 () znovu = nepravdivý tisk ("měřená vzdálenost = %.1f cm" % vzdálenost) spánek (1)

# Resetujte stisknutím CTRL + Cexcept KeyboardInterrupt: tisk („Měření zastaveno uživatelem“) GPIO.cleanup ()

Doporučuje: