Primeiros Passos com o BRIICK DPS310




Introdução

Já precisou medir a pressão atmosférica ou a altura de algum lugar? Com o Briick Sensor de Pressão DPS310 e uma BlackBoard Edge, isso é possível.

Neste tutorial mostraremos como o sensor DPS310 funciona, qual biblioteca instalar e como ler a pressão atmosférica e a temperatura ambiente com ele através da Edge.

Lista de Materiais

Observação: a BlackBoard Edge é vendida "sozinha", portanto é necessário adquirir um cabo Micro USB separadamente se não possuir um.

Conceitos Teóricos

Antes de colocarmos a mão na massa e vermos como usar o Briick DPS310 de fato, vamos entender um pouco melhor como ele realiza a leitura de temperatura e pressão.

Leitura de Pressão

Para realizar a leitura de pressão atmosférica, o sensor possui um furo em seu encapsulamento, como demarcado na imagem abaixo, que permite que a pressão interna do componente varie de acordo com a do ambiente. Caso o sensor fosse "selado", a pressão interna seria sempre a mesma e a leitura nunca variaria.

furo-encapsulamento
Furo do Encapsulamento do DPS310

Dentro do sensor há um sensor capacitivo que se assemelha a um diafragma. Ele é composto de dois terminais (eletrodos) que formam um "sanduíche" contra um material dielétrico maleável, como na imagem a seguir. Essa composição faz com que seja gerada uma variação na tensão de saída quando há uma variação na compressão do material dielétrico.

funcionamento-sensor
Funcionamento do Sensor de Pressão

Um microcontrolador interno então lê essa variação de tensão e calcula a pressão exercida sobre o sensor, fazendo todas as conversões e calibrações necessárias para ter uma precisão típica de leitura de pressão de +/- 1 hPa.

Leitura de Temperatura

Já a leitura de temperatura do sensor é feita através de um simples termistor, que varia a sua resistência de acordo com a temperatura sobre ele, o que permite que o sensor tenha uma precisão típica de +/- 0.5°C.

Circuito

Os módulos Briick foram desenvolvidos para facilitar a vida do maker, portanto o circuito elétrico é extremamente simples. Basta conectar a BlackBoard Edge ao módulo utilizando o cabo incluso com o módulo, como na imagem abaixo.

conexao-modulo
Conexão do Módulo à Placa

Vale lembrar que vários módulos Briick podem ser conectados em série e tanto faz a posição dos módulos nesta linha, todos funcionarão corretamente.

Instalação da Biblioteca

Para ler temperatura e pressão pelo DPS310, precisamos instalar uma biblioteca, e isso pode ser feito diretamente pelo "Gerenciador de Bibliotecas" da Arduino IDE. Para abri-lo na Arduino IDE 2.0, clique sobre o ícone de livros na barra lateral. Caso esteja utilizando uma IDE anterior à versão 2.0, siga o caminho da imagem a seguir, ou pressione "Ctrl+Shift+l".

caminho-gerenciador
Caminho para o "Gerenciador de Bibliotecas"

Com o gerenciador aberto, independentemente da versão, digite "dps310" no campo de pesquisa e busque pela biblioteca desenvolvida pela Infineon Technologies, como demarcado na imagem abaixo.

biblioteca-encontrada
Biblioteca Encontrada

Com a biblioteca encontrada, pressione o botão "Instalar" e aguarde alguns instantes. Assim que a biblioteca estiver instalada, será apresentada uma etiqueta "Instalada" ao lado da versão da biblioteca, como na próxima imagem.

biblitoeca-instalada
Biblioteca Instalada

Leitura das Grandezas

Com a biblioteca instalada, carregue o código a seguir para a sua BlackBoard Edge. Caso seja a sua primeira vez utilizando a placa, recomendamos que siga os passos do tutorial Primeiros Passos com a BlackBoard Edge.

Entendendo o Código

O código se inicia com a inclusão da biblioteca e a criação do objeto sensor_dps que será responsável pela leitura do sensor. Em seguida, para finalizar as declarações globais do código, criamos as variáveis temperatura_ambiente e pressao_atmosferica para armazenar as respectivas leituras.

Já nas configurações do código, apenas inicializamos o monitor serial com a velocidade de 115200 bps e a comunicação I2C com o sensor através do comando sensor_dps.begin(Wire) (o parâmetro "Wire" indica a comunicação I2C, já que o sensor também pode operar em SPI). Caso esteja utilizando o sensor em seu endereço I2C alternativo (0x76, alterável pelo jumper de solda na parte de baixo da placa), utilize o comando sensor_dps.begin(Wire, 0x76).

Por fim, na repetição do código, verificamos através das condições if (sensor_dps.measureTempOnce(temperatura_ambiente) == 0) e if (sensor_dps.measurePressureOnce(pressao_atmosferica) == 0) se as leituras de temperatura e pressão foram feitas corretamente e salvas nas respectivas variáveis. Se as condições forem verdadeiras, os valores são exibidos no monitor serial a cada 1 segundo.

O Que Deve Acontecer

Após carregar o código para a placa, abra o monitor serial e veja as leituras. Lembrando que o sensor irá retornar as leituras do ambiente, portanto a comparação com sites ou aplicativos meteorológicos não será muito precisa, já que essas leituras são retornadas por uma média da sua região ou cidade, enquanto o sensor mede as condições do seu ambiente.

resultado-final
Resultado Final

Conclusão

Neste tutorial vimos como o sensor DPS310 funciona, qual biblioteca usar para lê-lo e como realizar as leituras de temperatura ambiente e pressão atmosférica do sensor.

Avatar