Índice:
2025 Autor: John Day | [email protected]. Última modificação: 2025-01-13 06:58
A temperatura e a umidade relativa são importantes
dados meteorológicos nos ambientes. Os dois podem ser os dados que uma mini estação meteorológica fornece. A leitura de sua temperatura e umidade relativa com Raspberry Pi pode ser alcançada usando uma variedade de módulos e complementos diferentes. Neste tutorial, usaremos um Sensor DHT11 comum para ler a temperatura e exibiremos os dados em um display LCD de 16 bits.
Etapa 1: Sensor DHT
O sensor DHT11 pode medir umidade relativa e temperatura com as seguintes especificações
Faixa de temperatura: 0-50 ° C
Precisão de temperatura: ± 2 ° C
Faixa de umidade: 20-90% UR
Precisão de umidade: ± 5%
Etapa 2: Instalando a biblioteca Adafruit LCD no Raspberry Pi:
Com a casca do raspberry pi aberta, siga as instruções abaixo para instalar a biblioteca de monitores LCD da Adafruit no raspberry pi. O valor da temperatura e umidade serão exibidos em um display LCD
Etapa 1: instale o git em seu Raspberry Pi usando a linha abaixo. O Git permite clonar qualquer arquivo de projeto no Github e usá-lo no seu Raspberry pi. Nossa biblioteca está no Github, então temos que instalar o git para baixar essa biblioteca no pi.
apt-get install git
Etapa 2: a linha a seguir leva à página do GitHub onde a biblioteca está presente, basta executar a linha para clonar o arquivo do projeto no diretório inicial do Pi
git clone git: //github.com/adafruit/Adafruit_Python_CharLCD
Passo 3: Use o comando abaixo para mudar a linha de diretório, para entrar no arquivo de projeto que acabamos de baixar. A linha de comando é fornecida abaixo
cd Adafruit_Python_CharLCD
Passo 4: Dentro do diretório terá um arquivo chamado setup.py, temos que instalá-lo, para instalar a biblioteca. Use o seguinte código para instalar a biblioteca
sudo python setup.py install
Etapa 3: Instalação da biblioteca Adafruit DHT11 no Raspberry Pi:
A biblioteca DHT11 fornecida pela Adafruit pode ser usada para DHT11, DHT22 e outros sensores de temperatura de um fio também. O procedimento para instalar a biblioteca DHT11 também é semelhante ao seguido para instalar a biblioteca LCD. A única linha que mudaria é o link da página GitHub na qual a biblioteca DHT é salva.
Insira as quatro linhas de comando uma por uma no terminal para instalar a biblioteca DHT
git clone
cd Adafruit_Python_DHT
sudo apt-get install build-essential python-dev
sudo python setup.py install
Etapa 4: Diagrama de Circuito
O módulo DHT11 vem em 3 pinos, conecte o Vcc a 5V no pi, conecte o pino de aterramento a qualquer pino de aterramento no pi e conecte o pino de dados ao pino GPIO de sua escolha no pi, neste tutorial estamos usando GPIO 17 que é o pino número 11 no pi.
NOTA: O DHT11 vem em Módulo ou tipo de sensor, o mostrado no esquema abaixo é o tipo de sensor que possui 4 pinos, um resistor é conectado entre o pino de dados e o Vcc, se você estiver usando o tipo de módulo com apenas 3 pinos, não há necessidade de resistor.
Consulte o diagrama abaixo para ver a pinagem dos pinos pi de framboesa.
Etapa 5:
Abaixo está o esquema completo para a conexão. Como o LCD usará os dois 5 V disponíveis no pi, podemos usar uma placa de ensaio para compartilhar os 5 V entre o LCD e o módulo DHT11. Os pinos do LCD serão conectados ao pi na seguinte ordem. Observe que os pinos 7, 8, 9 e 10 do LCD não serão usados
Etapa 6:
O código completo para ler os dados e exibi-los no LCD é mostrado abaixo
do tempo importar sono importar Adafruit_DHT de Adafruit_CharLCD import Adafruit_CharLCD sensor = Adafruit_DHT. DHT11 pino = 17 umidade, temperatura = Adafruit_DHT.read_retry (sensor, pino) lcd = Adafruit_CharLCD (rs = 26, en = 19, d4 = 13, d5 = 6, d6 = 5, d7 = 11, cols = 16, linhas = 2) #DISPLAY UM TEXTO ESTÁTICO lcd.clear () se a umidade não for None e a temperatura não for None: print ('Temp = {0: 0.1f} * C Umidade = {1: 0,1f}% '. Formato (temperatura, umidade)) lcd.mensagem (' Temp = {0: 0,1f} * C / n Umidade = {1: 0,1f}% '. Formato (temperatura, umidade)) else: print ('Falha ao obter a leitura. Tente novamente!') lcd.message ('Falha ao obter a leitura. Tente novamente!')