Como ler dados DHT no LCD usando Raspberry Pi: 6 etapas
Como ler dados DHT no LCD usando Raspberry Pi: 6 etapas
Anonim
Como ler dados DHT no LCD usando Raspberry Pi
Como ler dados DHT no LCD usando Raspberry Pi

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

Sensor DHT
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:

Instalando a biblioteca Adafruit LCD no Raspberry Pi
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

Diagrama de circuito
Diagrama de circuito
Diagrama de circuito
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:

Imagem
Imagem
Imagem
Imagem

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!')