Índice:

Leitura e representação gráfica dos dados do sensor de luz e temperatura com Raspberry Pi: 5 etapas
Leitura e representação gráfica dos dados do sensor de luz e temperatura com Raspberry Pi: 5 etapas
Anonim
Leitura e representação gráfica de dados do sensor de luz e temperatura com Raspberry Pi
Leitura e representação gráfica de dados do sensor de luz e temperatura com Raspberry Pi

Neste Instructable, você aprenderá como ler um sensor de luz e temperatura com raspberry pi e ADS1115 analógico para conversor digital e representá-lo graficamente usando matplotlib. Vamos começar com os materiais necessários.

Suprimentos

  1. Framboesa pi (qualquer um serve, embora eu esteja usando um 4)
  2. Cartão MicroSD com Raspbian instalado (bom tutorial:
  3. Monitor HDMI e fonte de alimentação
  4. Cabo micro usb
  5. Conversor analógico para digital Adafruit ADS 1115:
  6. Fios de ligação
  7. sensor de luz (LDR)
  8. sensor de temperatura
  9. potenciômetro x2 (o valor será o ponto médio da faixa de resistência de seus sensores de temperatura e luz, que mediremos mais tarde)
  10. Tábua de pão

Etapa 1: Configurar seu Raspberry Pi

1. Siga este tutorial para configurar seu raspberry pi: https://www.raspberrypi.org/help/noobs-setup/2/2. Habilite I2C: clique no símbolo de framboesa pi no canto superior esquerdo. Vá para preferências> configuração do raspberry pi> interfaces> e marque a caixa "ativar" no I2C. Em seguida, clique em OK.3. Agora abra uma janela de terminal. Na linha de comando, digite:

sudo apt-get upgrade

sudo pip3 install adafruit-circuitpython-ads1x15

sudo apt-get install python-matplotlib

Etapa 2: Meça seus sensores de luz e temperatura

Agora vamos precisar medir a resistência dos sensores de luz e temperatura. Pegue um voltímetro na configuração de medição de resistência e meça através dos cabos de seu sensor de luz na luz e no escuro. Registre os valores. Agora pegue seu voltímetro nas pontas de seu sensor de temperatura no quente e no frio (usei água). Registre os valores. Nós os usaremos mais tarde em nosso circuito.

Etapa 3: Conecte seu circuito

Ligue o seu circuito
Ligue o seu circuito

1. Reúna os materiais listados na lista de suprimentos. Para os potenciômetros, use um valor que é a média dos altos e baixos (claro e escuro, quente e frio).

(alto-baixo) / 2

2. Siga o diagrama de circuito acima:

  1. Conecte o SDA no conversor analógico para digital ao SDA no pi
  2. Conecte SCL no conversor analógico para digital para SCL no pi
  3. Conecte o VDD no conversor analógico para digital a 3,3 V no pi
  4. Conecte o GND no conversor analógico para digital ao aterramento no pi
  5. Conecte o resto dos componentes de acordo com o diagrama do circuito.

Etapa 4: Código

1. Digite o terminal:

nano digital.py

2. Cole o código que tenho abaixo ou no Github no editor de texto que deve aparecer.

import matplotlib.pyplot as plt

import numpy como np import board import busio import time import adafruit_ads1x15.ads1115 as ADS de adafruit_ads1x15.analog_in import AnalogIn i2c = busio. I2C (board. SCL, board. SDA) ads = ADS. ADS1115 (i2c) x = 0 luz = AnalogIn (ads, ADS. P0) temp = AnalogIn (ads, ADS. P1) X1 = X2 = Y1 = Y2 = plt.ylim (-50, 1000) plt.plot (X1, Y1, label = "light", color = '# 0069af') plt.plot (X2, Y2, label = "Temp", color = '# ff8000') plt.xlabel ('Tempo (minutos)') plt.ylabel (' Nível ') plt.title (' Luz e temperatura ao longo do tempo ') plt.legend () enquanto Verdadeiro: x + = 5 Y1.append (light.value / 30) X1.append (x) Y2.append (temp.value / 3) X2.append (x) plt.plot (X1, Y1, label = "light", color = '# 0069af') plt.plot (X2, Y2, label = "Temp", color = '# ff8000') plt.pause (300)

3. Agora pressione CTRL + X para sair, pressione y para salvar e, em seguida, pressione enter.

Execute seu programa digitando terminal:

sudo python3 digital.py

4. Ajuste os potenciômetros para que o gráfico mostre uma ampla gama de valores. Experimente apontar uma luz para o sensor e desligar as luzes da sala para garantir que o gráfico mostre uma ampla gama de valores.

Se algum dos valores cair abaixo da parte inferior, tente diminuir o divisor correspondente (linhas 29 e 31).

Se algum dos valores ficar acima do topo, tente aumentar o divisor correspondente (linhas 29 e 31).

Etapa 5: solução de problemas

1. Verifique todas as conexões em relação ao diagrama de circuito

2. Detecção I2C - Irá mostrar a você todos os dispositivos conectados através do i2c:

Digite no terminal:

sudo apt-get install i2c-tools

sudo i2cdetect - y 1

Recomendado: