Testando o Sensor de Temperatura DS18B20 no Raspberry Pi
Testando o Sensor de Temperatura DS18B20 no Raspberry Pi
- sudo modprobe w1-gpio
- sudo modprobe w1-therm
- cd /sys/bus/w1/devices
- ls
- cd 28-xxxx (substitua pelo número de série que aparece)
- cat w1_slave
A interface 1-Wire pode ser um pouco instável, mas relata confiavelmente se um valor de temperatura está disponível. Como o sensor expõe seus dados como um simples arquivo de texto, tudo que você precisa fazer é ler o arquivo.
A primeira linha termina com YES ou NO. Se for YES, a segunda linha contém a temperatura em milésimos de grau Celsius. No exemplo acima, o sensor reporta 20.687 °C e depois 26.125 °C.
Quando múltiplos sensores estão conectados, cada um aparecerá como um diretório separado 28-xxxx. Conecte um por vez, anote o diretório criado e rotule o sensor para referência futura.
Trabalhando com Sensores Ultrassônicos
O sensor ultrassônico HC-SR04 é alimentado do trilho +5 V do Pi (pino 2). O pino trigger (GPIO 23) inicia uma medição, enquanto o pino echo retorna um pulso alto cuja largura corresponde à distância de ida e volta. Como pinos GPIO só toleram 3.3 V, um divisor resistivo protege a linha echo.
Código de Exemplo
#!/usr/bin/python
# Import bibliotecas Python necessárias
import time
import RPi.GPIO as GPIO
# Use referências GPIO BCM em vez de números de pinos físicos
GPIO.setmode(GPIO.BCM)
# Defina GPIO a usar no Pi
GPIO_TRIGGER = 23
GPIO_ECHO = 24
print("Medição Ultrassônica")
# Configure pinos como saída e entrada
GPIO.setup(GPIO_TRIGGER,GPIO.OUT) # Trigger
GPIO.setup(GPIO_ECHO,GPIO.IN) # Echo
# Defina trigger para False (Low)
GPIO.output(GPIO_TRIGGER, False)
# Permita módulo estabilizar
time.sleep(0.5)
# Envie pulso de 10us para trigger
GPIO.output(GPIO_TRIGGER, True)
time.sleep(0.00001)
GPIO.output(GPIO_TRIGGER, False)
start = time.time()
while GPIO.input(GPIO_ECHO)==0:
start = time.time()
while GPIO.input(GPIO_ECHO)==1:
stop = time.time()
# Calcule comprimento do pulso
elapsed = stop-start
# Distância que o pulso percorreu naquele tempo é tempo multiplicado pela velocidade do som (cm/s)
distance = elapsed * 34000
// Era a distância de ida e volta, então divida o valor por 2
distance = distance / 2
print("Distância : %.1f" % distance)
# Reset configurações GPIO
GPIO.cleanup()
Lançador de Foguete Alimentado por Ultrassônico
O script a seguir usa o sensor ultrassônico para disparar um lançamento de foguete quando um objeto está mais próximo que uma distância definida pelo usuário. Também captura uma imagem e acende um LED como indicador visual.
#!/usr/bin/python
# Author : Julian and Kyle Milligan
# Date : 09/01/2013
# Import bibliotecas Python necessárias
import time
import RPi.GPIO as GPIO
from subprocess import call
# Use referências GPIO BCM em vez de números de pinos físicos
GPIO.setmode(GPIO.BCM)
# Defina GPIO a usar no Pi
GPIO_TRIGGER = 23
GPIO_ECHO = 24
GPIO_FIRE = 4
print("Medição Ultrassônica")
# Configure pinos como saída e entrada
GPIO.setup(GPIO_TRIGGER,GPIO.OUT) // Trigger
GPIO.setup(GPIO_ECHO,GPIO.IN) // Echo
GPIO.setup(GPIO_FIRE,GPIO.OUT) // Fire
// Defina trigger para False (Low)
GPIO.output(GPIO_TRIGGER, False)
// Permita módulo estabilizar
time.sleep(0.5)
// Defina distância para disparar
setdistance = input('Por favor, insira um valor para disparar a câmera:')
while True:
time.sleep(0.1)
GPIO.output(GPIO_TRIGGER, True)
time.sleep(0.00001)
GPIO.output(GPIO_TRIGGER, False)
start = time.time()
s = start
quit = 0
while quit == 0:
quit = GPIO.input(GPIO_ECHO)
start = time.time()
if start - s > 0.1:
quit = 1
if start - s < 0.1:
while GPIO.input(GPIO_ECHO) == 1:
stop = time.time()
elapsed = stop-start
distance = elapsed * 34300
distance = distance / 2
print("Distância : %.1f" % distance)
if distance < setdistance:
call(["raspistill -o image.jpg"], shell=True) // tire foto com Pi Camera
print("Fogo")
GPIO.output(GPIO_FIRE, True) // Ligue pino GPIO 7 dispare os foguetes
// Reset configurações GPIO
GPIO.cleanup()
Streaming de Webcam do Raspberry Pi
Para transmitir vídeo de uma webcam USB, certifique-se de que seu Pi está conectado a uma rede. Anexe uma webcam recente e siga o guia oficial para configurar streaming MJPEG. Para um mergulho mais profundo, veja a documentação de teste do sensor DS18B20.
Processo de manufatura
- Conecte Múltiplos Sensores DS18B20 1-Wire ao Raspberry Pi para Monitoramento Preciso de Temperatura
- Como Conectar Sensor de Temperatura DS1820 One‑Wire ao Raspberry Pi via GPIO
- Conectando Sensor Ultrassônico HC‑SR04 ao Raspberry Pi 3 – Guia Completo
- Sensor de Rastreamento de Linha com Raspberry Pi – Detector KY‑033 Simples para Porta/Linha
- Como Conectar um Termômetro Digital DS18B20 One-Wire ao Raspberry Pi – Guia Passo a Passo
- Construa Monitor de Temperatura Doméstico com Raspberry Pi, MCP9808, InfluxDB e Grafana
- Domine GPIO do Raspberry Pi: Interface com Sensor PIR de Movimento no B+/Modelo 2
- Sistema de Segurança Residencial com Raspberry Pi: Detecção PIR + Alertas de Câmera por Email
- Como Conectar, Calibrar e Programar Sensor PIR HC‑SR501 com Raspberry Pi
- Sensor de Emoção & EEG: Hardware de Baixo Custo para Detecção de Emoções em Tempo Real