Índice:
Vídeo: Sensor ultrassônico para capturar mudanças de posição de objetos: 3 etapas
2024 Autor: John Day | [email protected]. Última modificação: 2024-01-30 11:35
É importante ter suas coisas valiosas seguras, seria ruim se você continuasse guardando seu castelo o dia todo. Usando a câmera raspberry pi você pode tirar as fotos no momento certo. Este guia o ajudará a gravar um vídeo ou tirar uma foto quando as alterações forem detectadas dentro da área limite.
Hardware:
- Raspberry Pi 2/3/4
- Sensor ultrasônico
- Câmera pi
- Jumpers
Etapa 1: conexões
- TRIG para RPI4B 17
- VCC para RPI4B 5V
- GND para RPI4B GND
- Resistor de eco para 470 ohms para conexão-1
- GND para resistor de 1K ohm para conexão-1
- conexão-1 para RPI4B 4
O esquema do circuito é feito usando circuito.io, possui todos os microcontroladores, sensores, etc mais populares e a plataforma é fácil de usar para iniciantes
Etapa 2: faça upload do código
Antes de executar o script, crie uma pasta por meio dos comandos a seguir, abrindo o terminal e, a seguir, edite o arquivo de script.
pi @ raaspberrypi: mkdir media
pi @ raaspberrypi: nano measure.py
O código usa câmeras e bibliotecas GPIO. Verifique se os pinos GPIO_TRIGGER e GPIO_ECHO estão conectados corretamente ao 17º e 4º pinos do Raspberry Pi externamente.
Copie e cole o código abaixo ou digite no arquivo python e nomeie como 'measure.py'
#Librariesimport RPi. GPIO as GPIO import time import os from picamera import PiCamera # Camera Mode camera = PiCamera () camera.rotation = 180 # Comente esta linha se a imagem estiver perfeitamente angulada #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 (): # definir Trigger para HIGH GPIO.output (GPIO_TRIGGER, True) # definir Trigger após 0,01 ms para LOW time.sleep (0,00001) GPIO.output (GPIO_TRIGGER, False) StartTime = time.time () StopTime = time.time () # save StartTime while GPIO.input (GPIO_ECHO) == 0: StartTime = time.time () # salvar tempo de chegada enquanto GPIO.input (GPIO_ECHO) == 1: StopTime = time.time () # diferença de tempo entre início e chegada TimeElapsed = StopTime - StartTime # multiplique pela velocidade sônica (34300 cm / s) # e divida por 2, porque distância de ida e volta = (TimeElapsed * 34300) / 2 distância de retorno se _name_ == '_main_': camera.start_preview (alpha = 200) try: while True: dist = distance () print ("Distância medida =%.1f cm"% dist) if dist <= 20: # altere este valor de acordo com sua configuração agora = tempo.ctime (). replace ("", "-") camera.capture ("media / image% s.jpg"% now) print ("Imagem salva em media / image-% s.jpg"% now) # camera.start_recording ("media / video-% s.h264"% now) # Remova o comentário para fazer um vídeo # print ("Vídeo salvo em media / image-% s.jpg"% now) # sleep (5) # Remova o comentário para gravar um vídeo por 5 segundos time.sleep (3) camera.stop_preview () # camera.stop_recording () # Remova o comentário para gravar um vídeo # Redefina pressionando CTRL + C exceto KeyboardInterrupt: print ("Medição interrompida pelo usuário") GPIO.cleanup ()
Etapa 3: execute o código
Agora execute o script como
pi @ raspberrypi: python measure.py
A distância é medida a cada 3 segundos (você pode alterar o valor no script) e é impressa na tela se um objeto for identificado dentro dos 20 centímetros, a câmera pi tira uma foto e salva na pasta de mídia.
Como alternativa, você pode gravar um vídeo removendo o comentário ou removendo as hashtags (#) das linhas do script mencionadas como comentários. Você também pode estender a duração do vídeo simplesmente aumentando / diminuindo o valor em “time.sleep (5)”.
Circuito feliz!
Recomendado:
Sensor de posição do suporte para bicicleta da Magicbit [Magicblocks]: 8 etapas
Sensor de posição de suporte para bicicleta da Magicbit [Magicblocks]: Projeto DIY simples para fazer o sensor de posição de suporte de apoio com um Magicbit usando Magicblocks. Estamos usando o magicbit como placa de desenvolvimento neste projeto que é baseado no ESP32. Portanto, qualquer placa de desenvolvimento ESP32 pode ser usada neste projeto
Programação Orientada a Objetos: Criando Objetos Aprendizado / Método / Técnica de Ensino Usando o Perfurador de Formas: 5 Passos
Programação Orientada a Objetos: Criando Objetos de Aprendizagem / Método / Técnica de Ensino Usando Shape Puncher: Método de aprendizagem / ensino para alunos iniciantes em programação orientada a objetos. Esta é uma forma de permitir que eles visualizem e vejam o processo de criação de objetos a partir de classes.Parte: 1. EkTools soco grande de 2 polegadas; formas sólidas são as melhores. Pedaço de papel ou c
Interface do Arduino com sensor ultrassônico e sensor de temperatura sem contato: 8 etapas
Interface do Arduino com sensor ultrassônico e sensor de temperatura sem contato: Hoje em dia, os fabricantes e desenvolvedores estão preferindo o Arduino para o desenvolvimento rápido da prototipagem de projetos. Arduino é uma plataforma eletrônica de código aberto baseada em hardware e software fáceis de usar. O Arduino tem uma comunidade de usuários muito boa. Neste projeto
Programação Orientada a Objetos: Criando Objetos Aprendizagem / Método / Técnica de Ensino com Tesouras: 5 Passos
Programação Orientada a Objetos: Criando Objetos. Aprendizagem / Método / Técnica de Ensino com Tesouras: Método de aprendizagem / ensino para alunos iniciantes em Programação Orientada a Objetos. Esta é uma forma de permitir que eles visualizem e vejam o processo de criação de objetos a partir de classes. Peças: 1. Tesouras (qualquer tipo serve). 2. Pedaço de papel ou cartolina. 3. Marcador
Medindo mudanças de força de uma rede de fibra gerada quando deslocada com força externa: 8 etapas
Medindo as mudanças na força de uma rede de fibra gerada quando deslocada com força externa: As células são capazes de interagir com sua matriz extracelular circundante (ECM) e podem tanto aplicar como responder às forças exercidas pelo ECM. Para o nosso projeto, simulamos uma rede interligada de fibras que atuariam como o ECM e veremos como o