Altímetro com Arduino e barômetro BMP085

Este projeto usa um Arduino e um barômetro (BMP085) para fazer um altímetro, que pode medir a altitude local e a altitude a partir de um ponto. A ideia é mostrar o valor medido com apenas um LED piscando centena, dezena e unidade, sempre nesta seqüência. Além do LED existe um botão para seleção de funções.

O funcionamento é bem simples, conforme abaixo:
MODO 1: ligando ou resetando o Arduino mantendo o botão pressionado, ele entra no modo de leitura da altitude local, mostrando o valor piscando o LED.
MODO 2: ligando sem pressionar o botão, ele mostra piscando o LED a ultima leitura feita da altitude a partir de um ponto, essa leitura estará sempre gravada na EEPROM.
MODO 3: Mantendo o botão pressionado no fim da seqüência de piscadas do LED, mostrando valores no MODO 1 e MODO2, ele “zera” e inicia a leitura a partir deste ponto, gravando na EEPROM sempre a maior altura lida.
*Pressionado o botão no MODO 3 ele para a leitura e volta ao MODO 2.
*Pressionando o botão no MODO 1 ele vai para o MODO 2.

O barômetro BMP085 funciona com um biblioteca da Adafruit que facilita muito a leitura, no caso peguei apenas o valor de altitude, mas é fácil também buscar valores de pressão barométrica e temperatura. Toda a comunicação é via I2C usando os pinos A4(SDA) e A5(SCL) do Arduino. Para rodar no Arduino é necessário a instalação da biblioteca. Para a montagem é necessário usar um resistor de 10k ohms para o terra no botão conforme abaixo.





Comentários

  1. Boa tarde, como vc mediu a altitude a partir de um certo ponto? N consegui encontrar no código essa parte.

    ResponderExcluir
    Respostas
    1. Ola! É na função getvalue, na linha 71 tem "val = bmp.readAltitude() - val_0;" que pega o valor atual menos o valor lido no inicio do programa em setup, colocado em val_0.

      Excluir
  2. Este comentário foi removido pelo autor.

    ResponderExcluir

Postar um comentário