Primeiros Passos com o Briick DPS310
![](/upload/tutoriais/435_header_pt_H.jpg)
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
![](/upload/tutoriais/435_header_pt_L.jpg)
Lista completa de produtos
comprar![](https://s3-sa-east-1.amazonaws.com/robocore-lojavirtual/2751/images/2751_1_M.png?20240607145602)
BlackBoard Edge
![](https://s3-sa-east-1.amazonaws.com/robocore-lojavirtual/2749/images/2749_1_M.png?20240605173243)
BRIICK - Sensor de Pressão DPS310
![](https://s3-sa-east-1.amazonaws.com/robocore-lojavirtual/1028/images/1028_1_M.png?20240606091125)
Cabo USB Micro B 80cm
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](https://s3-sa-east-1.amazonaws.com/robocore-tutoriais/435/image6_M.png)
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](https://s3-sa-east-1.amazonaws.com/robocore-tutoriais/435/image4.jpg)
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](https://s3-sa-east-1.amazonaws.com/robocore-tutoriais/435/image7_M.png)
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](https://s3-sa-east-1.amazonaws.com/robocore-tutoriais/435/image2_M.png)
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](https://s3-sa-east-1.amazonaws.com/robocore-tutoriais/435/image3_M.png)
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](https://s3-sa-east-1.amazonaws.com/robocore-tutoriais/435/image1_M.png)
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](https://s3-sa-east-1.amazonaws.com/robocore-tutoriais/435/image5_M.png)
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.