Съдържание:

Автоматизирана фотокабина: 4 стъпки (със снимки)
Автоматизирана фотокабина: 4 стъпки (със снимки)

Видео: Автоматизирана фотокабина: 4 стъпки (със снимки)

Видео: Автоматизирана фотокабина: 4 стъпки (със снимки)
Видео: ⚠️ ПОЛКОВНИК КГБ О НАВАЛЬНОМ, РАЗВЕДКЕ В ИНТЕРНЕТЕ И ШПИОНАЖЕ | АНДРЕЙ МАСАЛОВИЧ, Часть 4 2024, Ноември
Anonim
Автоматизирана фотокабина
Автоматизирана фотокабина

Това ще ви покаже как да направите автоматизирана фотокабина с помощта на малиново пи, ултразвуков сензор за разстояние и няколко други аксесоари. Исках да направя проект, който използва както сложен хардуер, така и програма, която е сложна. Изследвах проекти като този на страницата с ресурси на raspberry pi, някои от тези проекти са физически изчисления с python и микробит селфи. Единият от тях показва как се използва малиновата pi камера, а другият показва как се използва ултразвуковия сензор за разстояние.

Стъпка 1: Материали

Материали
Материали

Преди да започнем да изграждаме нашата верига, ще ви трябват някои материали:

1 x Raspberry Pi 3

1 x T-Cobbler

1 x Pi камера

1 x ултразвуков сензор за разстояние

3 x RGB светодиода

10 x 330 ома резистори

1 x 560 ома резистор

5 x макара от различни цветове кабели

1 x Платка

Стъпка 2: Изграждане на кръга

Изграждане на кръга
Изграждане на кръга
Изграждане на кръга
Изграждане на кръга
Изграждане на кръга
Изграждане на кръга
Изграждане на кръга
Изграждане на кръга

Това е начинът, по който отидох да свържа моята верига:

1. За да направите тази схема, бихте искали да включите камерата Raspberry Pi към съответния контакт

2. Включете T-Cobbler в платката.

3. С помощта на кабели за джъмпер по поръчка свържете един към захранващата шина и един към заземителната шина

4. Включете ултразвуковия сензор за разстояние и включете крака „vcc“в захранването, „gnd“в земята, „триг“в GPIO щифт, а „ехото“в резистор от 330 ома, който се свързва към резистор 560 ома който е свързан към земята и GPIO щифт.

5. Поставете трите RGB светодиода на макета, свързващ анода на светодиодите към захранване, и свържете различните крачета, които контролират цвета на светодиодите към резистори 330 ома, а след това към GPIO щифтове.

Стъпка 3: Кодът

За да може Raspberry Pi да използва GPIO пиновете, ще трябва да кодираме пиновете, за да направим нещо. За да направя кода, който направих, използвах python 3 IDLE. Кодът, който направих, използва RPi. GPIO, както и библиотеката gpiozero, за да функционира. Има процедури за различните цветове и има функция, която изчислява разстоянието с помощта на ултразвуковия сензор за разстояние и когато има нещо в обхвата, той ще отвори визуализацията на камерата pi и светодиодите ще отброяват и след това се прави снимка.

Ето кода, който използвах:

от пикамера импортиране PiCameraот бутон за импортиране gpiozero, LED от време импортиране спящ импорт RPi. GPIO като време за импортиране на GPIO

r = [LED (23), LED (25), LED (12)]

g = [LED (16), LED (20), LED (21)] b = [LED (17), LED (27), LED (22)] бутон = Бутон (24) GPIO.setmode (GPIO. BCM) GPIO_TRIGGER = 19 GPIO_ECHO = 26 GPIO.setup (GPIO_TRIGGER, GPIO. OUT) GPIO.setup (GPIO_ECHO, GPIO. IN)

червено (x):

r [x].off () g [x].on () b [x].on ()

def off (x):

r [x].on () g [x].on () b [x].on ()

def off ():

r [0].on () g [0].on () b [0].on () r [1].on () g [1].on () b [1].on () r [2].on () g [2].on () b [2].on ()

def green (x):

r [x].on () g [x].off () b [x].on ()

def синьо (x):

r [x].on () g [x].on () b [x].off ()

def run ():

camera.capture ('selfie.jpg') camera.stop_preview ()

def разстояние ():

GPIO.output (GPIO_TRIGGER, True) time.sleep (0.00001) GPIO.output (GPIO_TRIGGER, False) StartTime = time.time () StopTime = time.time () докато GPIO.input (GPIO_ECHO) == 0: StartTime = време.time () докато GPIO.input (GPIO_ECHO) == 1: StopTime = time.time () TimeElapsed = StopTime - StartTime разстояние = (TimeElapsed *34300) / 2 разстояние за връщане

изключен ()

while True: d = разстояние (), ако int (d) <= 30: с PiCamera () като камера: camera.start_preview () червено (0) сън (1) синьо (1) сън (1) зелено (2) сън (1) off () camera.capture ('selfie.jpg') camera.stop_preview ()

Препоръчано: