Pular para o conteúdo principal

Grove - Sensor de Barômetro (BME280)

pir

Grove - Temp&Humi&Barometer Sensor (BME280) é uma placa breakout para o sensor combinado de umidade, pressão e temperatura de alta precisão e baixo consumo Bosch BMP280. Este módulo pode ser usado para medir temperatura, pressão atmosférica e umidade com precisão e rapidez. Como a pressão atmosférica muda com a altitude, ele também pode medir a altitude aproximada de um local. Ele pode ser conectado a um microcontrolador com I2C (integrado com soquete Grove) ou através de barramento SPI. Também fornecemos uma biblioteca altamente abstraída para tornar este produto mais fácil de usar.

O BME280 é uma versão atualizada do BMP180, e o BME280 apresenta melhorias significativas em relação ao BMP180. O BME280 vem com um tamanho menor, menor consumo de energia, medições com menos ruído, resoluções mais altas para pressão e temperatura, menor ruído RMS, barramento SPI recém-adicionado, mais modos de medição, taxa de medição mais alta e filtro recém-adicionado contra interferência ambiental. Como a leitura de pressão atmosférica é afetada pela altitude e pela temperatura, adicionamos recursos de compensação. Portanto, o Grove - Temp&Humi&Barometer Sensor (BME280) será mais confiável ao fornecer valores precisos de temperatura, pressão atmosférica, umidade e dados aproximados de altitude.

Usar o sensor é fácil. Para o Seeeduino (compatível com Arduino), basta conectar esta placa breakout usando um cabo Grove ao conector Grove I2C. Em seguida, use a biblioteca fornecida e o código de exemplo do GitHub. Se você estiver usando um Arduino, utilize o Base Shield v2.0 ou simplesmente conecte o pino VCC ao pino de 5V, GND ao terra, SCL ao Clock I2C (Analógico 5) e SDA ao Dados I2C (Analógico 4).

Aplicações típicas: aprimoramento de navegação por GPS, navegação interna/externa, previsão do tempo ou qualquer outro projeto que exija leitura precisa de pressão atmosférica.

pir

Atualizável para Sensores Industriais

Com o controlador S2110 e o registrador de dados S2100 da SenseCAP, você pode facilmente transformar o Grove em um sensor LoRaWAN®. A Seeed não apenas ajuda você na prototipagem, mas também oferece a possibilidade de expandir seu projeto com a série SenseCAP de robustos sensores industriais.

A série de sensores industriais SenseCAP S210x proporciona uma experiência pronta para uso em sensoriamento ambiental. Consulte o Sensor Sem Fio de Temperatura e Umidade S2101, com maior desempenho e robustez, para monitoramento da qualidade do ar. A série inclui sensores para umidade do solo, temperatura e umidade do ar, intensidade de luz, CO2, EC e uma estação meteorológica 8 em 1. Experimente o mais recente SenseCAP S210x em seu próximo projeto industrial bem-sucedido.

Sensor Industrial SenseCAP
S2101 Temperatura & Umidade do Ar

Recursos

  • Obtenha rapidamente dados mais precisos de temperatura, pressão atmosférica, umidade e altitude aproximada.
  • Compatível com Grove e fácil de usar
  • Biblioteca altamente abstraída para construir projetos mais rapidamente
dica

Para mais detalhes sobre módulos Grove, consulte o Grove System

Especificações

ParâmetroValor
Tensão de entrada3,3V ou 5V
Tensão de E/S3,3V ou 5V
Corrente de operação0,4mA
Temperatura de operação-40 - 85 ℃
Faixa de medição do sensor de pressão atmosférica300 - 1100 hPa (1 hPa = cem Pa) com precisão de ±1,0 hPa
Faixa de medição do sensor de temperatura-40 - 85 ℃, com precisão de ±1,0°C
Faixa de medição do sensor de umidade0% - 100% de umidade relativa, com precisão de ±3%
Modos de mediçãoPiezo e Temperatura, forçado ou periódico
ChipBME280(datasheet)
Barramento de interfaceSPI, I2C (use qualquer um deles)
Peso3,2 g (para a placa breakout), 9,3 g para cada peça do pacote completo
Dimensões40 (comprimento) × 20 (largura) mm
I2C0x76(padrão) ou 0x77

Nota

  1. Em breve mostraremos/descreveremos como selecionar o barramento de interface.
  2. A altitude é calculada por uma combinação de temperatura e pressão atmosférica. Não há componentes especializados para altitude.

Plataformas Suportadas

ArduinoRaspberry Pi

pir

pir

cuidado

As plataformas mencionadas acima como suportadas são uma indicação da compatibilidade teórica ou de software do módulo. Na maioria dos casos, fornecemos apenas biblioteca de software ou códigos de exemplo para a plataforma Arduino. Não é possível fornecer biblioteca de software/código de demonstração para todas as possíveis plataformas de MCU. Portanto, os usuários devem escrever sua própria biblioteca de software.

Visão Geral de Hardware

pir

  • Pads de solda SPI, um circuito de monitoramento de tensão.

  • Pads de seleção do barramento de interface, para selecionar o barramento I2C, conecte os dois pads por soldagem (ele vem conectado por padrão); para selecionar o barramento SPI, corte os dois pads com uma faca afiada ou um ferro de solda.

  • Pads de seleção de endereço da placa escrava, para selecionar o endereço da placa escrava e evitar conflito de endereços.

    • Se você selecionou o barramento I2C, o endereço padrão para a placa escrava é 0x76 (os dois pads da direita estão conectados). Se você quiser usar o endereço 0x77, conecte apenas os dois da esquerda (desconecte os dois da direita) por soldagem.

Dica

Você pode desconectar os pads apenas com uma faca afiada.

  • Se você selecionou o barramento SPI, o endereço padrão para a placa escrava é 0x76 (os dois pads da direita estão conectados). Se você quiser usar o endereço 0x77, desconecte todos os três pads.

Nota

Não toque, balance ou deixe este produto em vibração quando estiver funcionando. Isso causará interferência e afetará a precisão dos dados coletados.

Pacote inclui (partes principais)

Nome das partesQuantidade
Grove - Temp&Humi&Barometer Sensor (BME280)1 peça
Grove cable1 peça

Primeiros Passos

Agora vamos executar alguns exemplos básicos com este módulo.

Brincar com Arduino

Hardware

  • Passo 1. Prepare os itens abaixo:
Seeeduino V4.2Base ShieldGrove-Barometer_Sensor-BME280

pir

pir

pir

Adquira agoraAdquira agoraAdquira agora
  • Passo 2. Conecte o Grove-Barometer_Sensor-BME280 à porta I2C do Grove-Base Shield.
  • Passo 3. Conecte o Grove - Base Shield ao Seeeduino.
  • Passo 4. Conecte o Seeeduino ao PC por meio de um cabo USB.

pir

nota

Se não tivermos o Grove Base Shield, também podemos conectar este módulo diretamente ao Seeeduino como abaixo.

seeeduino_v4Grove-Barometer_Sensor-BME280
5VVCC
GNDGND
SDASDA
SCLSCL

Software

Passo 1. Baixe a biblioteca e o código de exemplo do Github.

Passo 2. Consulte How to install library para instalar a biblioteca para Arduino.

Passo 3. Crie um novo sketch Arduino e cole nele o código abaixo ou abra o código diretamente pelo caminho: File -> Example ->Barometer_Sensor->Barometer_Sensor.

Aqui está o código


/*
* bme280_example.ino
* Example sketch for bme280
*
* Copyright (c) 2016 seeed technology inc.
* Website : www.seeedstudio.com
* Author : Lambor
* Create Time:
* Change Log :
*
* The MIT License (MIT)
*
* Permission is hereby granted, free of charge, to any person obtaining a copy
* of this software and associated documentation files (the "Software"), to deal
* in the Software without restriction, including without limitation the rights
* to use, copy, modify, merge, publish, distribute, sublicense, and/or sell
* copies of the Software, and to permit persons to whom the Software is
* furnished to do so, subject to the following conditions:
*
* The above copyright notice and this permission notice shall be included in
* all copies or substantial portions of the Software.
*
* THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR
* IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,
* FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE
* AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER
* LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM,
* OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN
* THE SOFTWARE.
*/
#include "Seeed_BME280.h"
#include <Wire.h>

BME280 bme280;

void setup()
{
Serial.begin(9600);
if(!bme280.init()){
Serial.println("Device error!");
}
}

void loop()
{
float pressure;

//get and print temperatures
Serial.print("Temp: ");
Serial.print(bme280.getTemperature());
Serial.println("C");//The unit for Celsius because original arduino don't support speical symbols

//get and print atmospheric pressure data
Serial.print("Pressure: ");
Serial.print(pressure = bme280.getPressure());
Serial.println("Pa");

//get and print altitude data
Serial.print("Altitude: ");
Serial.print(bme280.calcAltitude(pressure));
Serial.println("m");

//get and print humidity data
Serial.print("Humidity: ");
Serial.print(bme280.getHumidity());
Serial.println("%");

delay(1000);
}

Passo 4. Envie o código. Se você não souber como enviar o código, verifique how to upload code.

Passo 5. Abra o monitor serial para receber os dados do sensor, incluindo temperatura, valor da pressão barométrica, altitude e umidade.

Brincar com Wio Terminal (ArduPy)

Hardware

  • Passo 1. Prepare os itens abaixo:
Wio TerminalGrove-Barometer Sensor-BME280

pir

pir

Adquira agoraAdquira agora
  • Passo 2. Conecte o Grove-Barometer Sensor-BME280 à porta Grove I2C do Wio Terminal.

  • Passo 3. Conecte o Wio Terminal ao PC através de um cabo USB Type-C.

pir

Software

  • Passo 1. Siga ArduPy Getting Started para configurar o ambiente de desenvolvimento ArduPy no Wio Terminal.

  • Passo 2. Certifique-se de que o firmware ArduPy foi gravado no Wio Terminal. Para mais informações, siga here.

aip install Seeed-Studio/seeed-ardupy-bme280
aip build
aip flash
  • Passo 3. Copie o código a seguir e salve-o como ArduPy-bme280.py:
from arduino import grove_bme280
from machine import LCD
from machine import Sprite
import time

bme280 = grove_bme280()
lcd = LCD()
spr = Sprite(lcd) # Create a buff

def main():
spr.createSprite(320, 240)
while True:
spr.setTextSize(2)
spr.fillSprite(spr.color.BLACK)
spr.setTextColor(lcd.color.ORANGE)
spr.drawString("BME280 Reading", 90, 10)
spr.drawFastHLine(40, 35, 240, lcd.color.DARKGREY)
spr.setTextColor(lcd.color.WHITE)
spr.drawString("- Temperature: ", 20, 50)
spr.drawString("- Humidity: ", 20, 80)
spr.drawString("- Pressure: ", 20, 110)

spr.drawFloat(bme280.temperature, 2, 220,50)
spr.drawNumber(bme280.humidity, 220,80)
spr.drawNumber(bme280.pressure, 220,110)
spr.pushSprite(0,0)
time.sleep_ms(500)

print ("\nTemperature: ", bme280.temperature, "C")
print ("Humidity: ", bme280.humidity, "%")
print ("Pressure: ", bme280.pressure, "Pa")

if __name__ == "__main__":
main()
  • Passo 4. Salve o ArduPy-bme280.py em um local que você conheça. Execute o seguinte comando e substitua <YourPythonFilePath> pelo local do seu ArduPy-bme280.py.
aip shell -n -c "runfile <YourPythonFilePath>"
# Example:
# aip shell -n -c "runfile /Users/ansonhe/Desktop/ArduPy-bme280.py"
  • Passo 5. Veremos os valores sendo exibidos no terminal como abaixo e também na tela LCD do Wio Terminal.
ansonhe@Ansons-Macbook-Pro ~:aip shell -n -c "runfile /Users/ansonhe/Desktop/ArduPy-bme280.py"
Positional argument (/dev/cu.usbmodem1414301) takes precedence over --open.
Connected to ardupy

Temperature: 29.88 C
Humidity: 55 %
Pressure: 100332 Pa

Temperature: 29.91 C
Humidity: 55 %
Pressure: 100332 Pa

Temperature: 29.88 C
Humidity: 54 %
Pressure: 100331 Pa

pir

Visualizador de Esquemático Online

Recursos

Projetos

Seeed LoRa IoTea Solution: Um sistema automático de coleta de informações aplicado a plantações de chá. É parte da coleta inteligente de informações agrícolas.

Suporte Técnico & Discussão sobre o Produto

Loading Comments...