Talaan ng mga Nilalaman:

Automated Photobooth: 4 Hakbang (na may Mga Larawan)
Automated Photobooth: 4 Hakbang (na may Mga Larawan)

Video: Automated Photobooth: 4 Hakbang (na may Mga Larawan)

Video: Automated Photobooth: 4 Hakbang (na may Mga Larawan)
Video: Mga dapat gawin sa bahay kapag nakaranas ng STROKE | Doc Knows Best 2024, Nobyembre
Anonim
Awtomatikong Photobooth
Awtomatikong Photobooth

Ipapakita nito sa iyo kung paano gumawa ng isang awtomatikong booth ng larawan gamit ang raspberry pi, isang ultrasonikong sensor ng distansya, at ilang iba pang mga accessories. Nais kong gumawa ng isang proyekto na gumagamit ng parehong sopistikadong hardware at isang program na sopistikado. Sinaliksik ko ang mga proyektong tulad nito sa pahina ng mapagkukunan ng raspberry pi, ang ilan sa mga proyektong ito ay pisikal na pagkalkula sa python, at micro bit selfie. Ang isa sa mga ito ay nagpakita kung paano gamitin ang raspberry pi camera at ang iba ay ipinakita kung paano gamitin ang ultrasonic distansya sensor.

Hakbang 1: Mga Kagamitan

Mga Kagamitan
Mga Kagamitan

Bago kami magsimulang magtayo ng aming circuit kakailanganin mo ang ilang mga materyales:

1 x Raspberry Pi 3

1 x T-Cobbler

1 x Pi Camera

1 x Ultrasonic Distance Sensor

3 x RGB LEDs

10 x 330 Ohms Resistors

1 x 560 Ohms Resistor

5 x Spool ng iba't ibang mga may kulay na mga kable

1 x Breadboard

Hakbang 2: Pagbuo ng Circut

Pagbuo ng Circut
Pagbuo ng Circut
Pagbuo ng Circut
Pagbuo ng Circut
Pagbuo ng Circut
Pagbuo ng Circut
Pagbuo ng Circut
Pagbuo ng Circut

Ito ang paraan na nagpunta ako sa pagkonekta sa aking circuit:

1. Upang gawin ang circuit na ito nais mong i-plug in ang Raspberry Pi camera sa naaangkop na socket

2. I-plug ang T-Cobbler sa breadboard.

3. Ang paggamit ng mga pasadyang haba ng jumper cables ay kumonekta sa isa sa power rail at isa sa ground rail

4. Isaksak ang sensor ng distansya ng ultrasonic at isaksak ang binti ng 'vcc', ang 'gnd' sa lupa, 'trig' sa isang GPIO pin, at ang 'echo' sa isang 330 ohms resistor na kumokonekta sa isang resistensya ng 560 ohms na konektado sa lupa at isang GPIO pin.

5. Ilagay ang tatlong RGB LEDs sa breadboard inline na kumokonekta sa anode ng LEDs sa lakas, at ikonekta ang iba't ibang mga binti na kumokontrol sa kulay ng LEDs sa 330 ohms resistors at pagkatapos ay sa mga GPIO pin.

Hakbang 3: Ang Code

Upang magamit ng Raspberry Pi ang mga pin ng GPIO kakailanganin naming i-code ang mga pin upang gumawa ng isang bagay. Upang magawa ang code na ginawa ko ginamit ko ang python 3 IDLE. Ang code na ginawa ko ay gumagamit ng RPi. GPIO pati na rin ang gpiozero library upang gumana. Mayroong mga pamamaraan para sa iba't ibang kulay at mayroong isang pagpapaandar na kinakalkula ang distansya gamit ang ultrasonic distansya sensor at kapag may isang bagay sa saklaw bubuksan nito ang preview ng pi camera at ang countdown ng LEDs at pagkatapos ay kunan ng larawan.

Narito ang code na ginamit ko:

mula sa picamera import PiCamerafrom gpiozero import Button, LED mula sa oras na pag-import ng pagtulog import RPi. GPIO bilang oras ng pag-import ng GPIO

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

g = [LED (16), LED (20), LED (21)] b = [LED (17), LED (27), LED (22)] button = Button (24) GPIO.setmode (GPIO. BCM) GPIO_TRIGGER = 19 GPIO_ECHO = 26 GPIO.setup (GPIO_TRIGGER, GPIO. OUT) GPIO.setup (GPIO_ECHO, GPIO. IN)

def pula (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 blue (x):

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

def run ():

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

distansya ng def ():

GPIO.output (GPIO_TRIGGER, True) time.s Sleep (0.00001) GPIO.output (GPIO_TRIGGER, False) StartTime = time.time () StopTime = time.time () habang GPIO.input (GPIO_ECHO) == 0: StartTime = oras.time () habang GPIO.input (GPIO_ECHO) == 1: StopTime = time.time () TimeElapsed = StopTime - StartTime distance = (TimeElapsed * 34300) / 2 return distansya

off ()

habang Totoo: d = distansya () kung int (d) <= 30: kasama ang PiCamera () bilang camera: camera.start_preview () pula (0) pagtulog (1) asul (1) pagtulog (1) berde (2) pagtulog (1) off () camera.capture ('selfie.jpg') camera.stop_preview ()

Inirerekumendang: