BME688 AirMeter App: monitorar a qualidade do ar, pressão do ar, temperatura, umidade, usando o Raspberry Pi

Usando este BME688 AirMeter App para PiCockpitvocê pode ler um BME688 ou sensor BME680 conectado ao Raspberry Pi usando I2C. Nós (pi3g e.K.) oferecemos um Módulo de quebra plug & play BME688que você pode conectar diretamente ao cabeçalho Raspberry Pi.

O aplicativo tem três visões diferentes, permitindo que você visualize os dados do jeito que quiser:

Instalação e Configuração

Desligue o seu Raspberry Pi, e conecte o módulo BME688. Consulte as instruções do seu fornecedor para saber como fazer isso.

pi3g-bme688-breakout-board-raspberry-pi
O módulo de quebra pi3g BME688 ligado a um Raspberry Pi 3B+: pode ser simplesmente ligado ao Cabeçalho GPIO. Observe a orientação especial, para que o SoC não distorça os valores de medição de calor do BME688.

Nota: o BME688 e o BME680 também suportam a operação SPI. Este aplicativo suporta apenas a operação I2C, no entanto.

Liga o teu Raspberry Pi de volta. Por esta altura, esperemos PiCockpit já está instalado. Você não precisa instalar nenhum software além do PiCockpit para que este aplicativo funcione. (De nada :-))

Abra o aplicativo BME688 AirMeter, e clique no botão Setup:

O aplicativo BME688 AirMeter oferece diferentes visões. O botão Setup está localizado na parte superior.
À espera de dados, uma vez que ainda não foram recebidos dados do sensor

Ativar o sensor BME688 clicando na chave "enable sensor".

Verifique se o endereço da I2C está correcto. (Para a placa de quebra pi3g BME688, é 0x77 por padrão - isso pode variar para outros fornecedores).

Se o sensor puder ser alcançado, a mensagem abaixo deve ser atualizada para "Dados recebidos": ..." com um carimbo de data/hora do pacote de dados mais recente recebido.

Nota: a freqüência dos pacotes de dados depende das configurações - se você ativar o cálculo do IAQ, eles podem ser recebidos com menos freqüência.

permitir o cálculo do IAQ

A Bosch envia um software chamado BSEC 2. Incluímo-lo no PiCockpit, para sua comodidade. Este software permite tomar os valores brutos que o sensor mede, e calcular valores adicionais.

Um deles é o IAQ. (Qualidade do Ar Interior) - o que lhe permitirá medir a qualidade do ar interior.

Para ativá-lo, clique no botão de alternância "habilitar cálculo IAQ", e clique em "Eu concordo" no botão Contrato de licença Bosch BSEC diálogo.

Aceitar o contrato de licença Bosch BSEC

Isto instruirá automaticamente o PiCockpit a ter também o IAQ calculado.

vista avançada (mostrar todos os dados)

A ativação da visualização avançada mostrará todos os parâmetros que o software BSEC2 é capaz de calcular.

reiniciar todas as configurações

Este botão permitir-lhe-á repor as definições para as predefinições de fábrica.

Mostrar Linechart

temperatura do ar (em bruto) sendo mostrada no linechart

Use os botões "show me" para selecionar o valor medido que você gostaria de ver.

Use a pesquisa para se concentrar apenas nos valores em que está interessado:

comece a digitar o nome do valor em que está interessado para restringir a seleção

Os elementos na parte inferior e ao lado do gráfico permitem a expansão em determinadas áreas de dados e áreas de valor em que está interessado. Eles são ótimos para fazer zoom em um gráfico:

Zooming in para ver as flutuações de temperatura mais claramente

Observe que os valores dos dados históricos só serão preservados em seu navegador da web enquanto o aplicativo estiver aberto. Uma vez que você navegue fora, ou feche a aba, os dados serão perdidos.

Vista de Bitola

Na vista Gauge, você terá bonitos medidores para exibir os valores atuais. Aqui você pode monitorar os seguintes valores:

  • umidade do ar
  • temperatura do ar
  • pressão atmosférica
  • resistência aos gases
  • qualidade do ar (IAQ) - se habilitado

A vista do medidor também contém uma tabela com os dados na parte inferior.

Vista da Tabela

Para os puristas entre nós, que gostam que os seus dados sejam apresentados de forma tabular, a vista de tabela oferece o ajuste certo:

Você pode usar o recurso de busca para restringir a visão apenas aos itens em que está interessado:

comece a digitar o nome do valor em que está interessado para restringir a seleção

Lista completa de "visualização avançada".

Estes são todos os valores de medição disponíveis no BME688 AirQuality App no PiCockpit, se você habilitar a visualização avançada:

  • umidade do ar
  • umidade do ar (bruto)
  • pressão atmosférica
  • qualidade do ar (IAQ)
  • precisão da qualidade do ar (IAQ)
  • temperatura do ar
  • temperatura do ar (em bruto)
  • equivalente de COV no ar expirado
  • precisão equivalente ao COV de respiração
  • equivalente de CO2
  • Precisão equivalente ao CO2
  • valor do gás comp
  • precisão do valor do gás comp
  • percentagem de gás
  • precisão percentual de gás
  • resistência aos gases (em bruto)
  • número da amostra
  • IAQ estático (em bruto)
  • precisão estática do IAQ
  • carimbo da hora

Nota: para uma melhor precisão na medição de CO2, oferecemos também um Sensor de CO2 App!

FAQ

O BME680 também é suportado?

Sim, o BME680 também é suportado.

E quanto às características de IA do BME688?

Estamos atualmente trabalhando em um aplicativo "Digital Nose" para PiCockpit que permitirá que você reconheça cheiros usando o BME688.

Onde posso comprar um sensor compatível?

Nós (pi3g e.K.) temos desenvolvido um módulo plug & play BME688 para o porto GPIO do Raspberry Pi.

Outros fornecedores, por exemplo, Pimoroni e Adafruit, também vendem placas de quebra BME688 e BME680.

Tratamento de erros

KeyError 'status

sintomas no frontend: "À espera de dados" é mostrado na Configuração, mas não chega nenhum dado.

investigando o registo (utilizando sudo journalctl -u picockpit-cliente -n 250) encontra a seguinte entrada:

Nov 01 17:00:43 jaya picockpit-cliente[4591]: Traceback (última chamada mais recente):
Nov 01 17:00:43 jaya picockpit-cliente[4591]: Ficheiro "/usr/lib/python3.9/threading.py", linha 954, em _bootstrap_inner
Nov 01 17:00:43 jaya picockpit-client[4591]: self.run()
Nov 01 17:00:43 jaya picockpit-cliente[4591]: Ficheiro "/usr/lib/python3.9/threading.py", linha 892, em execução
Nov 01 17:00:43 jaya picockpit-client[4591]: self._target(*self._args, **self._kwargs)
Nov 01 17:00:43 jaya picockpit-cliente[4591]: Ficheiro "/usr/share/picockpit-client/lib/python3.9/site-packages/com_picockpit/bme688airmeter/bme688airmeter.py", linha 136, em stats_thread
Nov 01 17:00:43 jaya picockpit-client[4591]: stats=self.get_stats()
Nov 01 17:00:43 jaya picockpit-cliente[4591]: Ficheiro "/usr/share/picockpit-client/lib/python3.9/site-packages/com_picockpit/bme688airmeter/bme688airmeter.py", linha 231, em get_stats
Nov 01 17:00:43 jaya picockpit-client[4591]: stats['s'] = dados['status']
Nov 01 17:00:43 jaya picockpit-cliente[4591]: KeyError: 'status

Isto acontece porque o frontend está no estado errado - para além de activar o sensor, deve também permitir o cálculo do IAQ:

Como posso verificar se o endereço da I2C está correcto?

Executar i2cdetect como raiz:

 i2cdetect -y 1

Isto mostrar-lhe-á o BME688 e outros acessórios I2C que podem ser detectados usando este algoritmo:

O endereço padrão para o nosso próprio quadro de fuga BME688 é 0x77