“BMP388 Barometric Pressure Sensor”的版本间的差异
Waveshare-admin(讨论 | 贡献) (→接口说明) |
小 (文本替换 - 替换“<h1>技术支持</h1>”为“=售后=”) |
||
(未显示4个用户的20个中间版本) | |||
第1行: | 第1行: | ||
+ | <div class="wiki-pages blue-color"> | ||
+ | <!--<div class="tabberlive newwsnav" id="wsnavbar"> | ||
+ | <ul class="tabbernav"> | ||
+ | <li class="nav-link">[[#myintro|说明]]</li> | ||
+ | <li class="nav-link">[[#myresources|资料]]</li> | ||
+ | <li class="nav-link">[[#myfaq|FAQ]]</li> | ||
+ | <li class="nav-link">[[#mysupport|售后]]</li> | ||
+ | </ul> | ||
+ | </div>--> | ||
<div class="tabber"> | <div class="tabber"> | ||
{{外围模块|colorscheme=blue | {{外围模块|colorscheme=blue | ||
|name = BMP388 Barometric Pressure Sensor | |name = BMP388 Barometric Pressure Sensor | ||
− | |img=[[File:BMP388-Barometric-Pressure-Sensor-intro.jpg|360px |alt=BMP388-Barometric-Pressure-Sensor|link= | + | |img=[[File:BMP388-Barometric-Pressure-Sensor-intro.jpg|360px |alt=BMP388-Barometric-Pressure-Sensor|link=https://{{SERVERNAME}}/shop/BMP388-Barometric-Pressure-Sensor.htm | BMP388 Barometric Pressure Sensor]] |
|category1=温度 | |category1=温度 | ||
|category2=大气压强/海拔高度 | |category2=大气压强/海拔高度 | ||
第11行: | 第20行: | ||
| Product1= [[BME280 Environmental Sensor]] | | Product1= [[BME280 Environmental Sensor]] | ||
}} | }} | ||
− | <div class="tabbertab" title="说明"> | + | <div class="tabbertab" title="说明" id="myintro"> |
+ | =说明= | ||
==产品概述== | ==产品概述== | ||
这是一款 24 位高精度气压传感器,可实现精确的高度跟踪,检测大气压强、温度,支持 | 这是一款 24 位高精度气压传感器,可实现精确的高度跟踪,检测大气压强、温度,支持 | ||
第51行: | 第61行: | ||
|INT|| 中断输出引脚,可接 I/O 口 | |INT|| 中断输出引脚,可接 I/O 口 | ||
|}<br /> | |}<br /> | ||
− | |||
==用于树莓派== | ==用于树莓派== | ||
需要安装必要的函数库,否则以下的示例程序可能无法正常工作。安装方法详见: <br /> | 需要安装必要的函数库,否则以下的示例程序可能无法正常工作。安装方法详见: <br /> | ||
− | + | https://{{SERVERNAME}}/wiki/Pioneer600_Datasheets <br /> | |
*在官网上找到对应产品,在产品资料打开下载路径,在 wiki 中下载示例程序: <br /> | *在官网上找到对应产品,在产品资料打开下载路径,在 wiki 中下载示例程序: <br /> | ||
[[File:BMP388 Barometric Pressure Sensor-1.jpg|800px]]<br /> | [[File:BMP388 Barometric Pressure Sensor-1.jpg|800px]]<br /> | ||
第61行: | 第70行: | ||
[[File:BMP388 Barometric Pressure Sensor-2.jpg|800px]]<br /> | [[File:BMP388 Barometric Pressure Sensor-2.jpg|800px]]<br /> | ||
*将Raspberry文件夹拷贝至树莓派。 | *将Raspberry文件夹拷贝至树莓派。 | ||
+ | *或者使用命令<br /> | ||
+ | sudo wget http://www.waveshare.net/w/upload/0/09/BMP388_Barometric_Pressure_Sensor_Code.7z | ||
+ | 7z x BMP388_Barometric_Pressure_Sensor_Code.7z -O./BMP388_Sensor_Code | ||
+ | cd BMP388_Sensor_Code/Raspberry/ | ||
+ | |||
===前置工作=== | ===前置工作=== | ||
前置工作执行如下命令进行树莓派配置: <br /> | 前置工作执行如下命令进行树莓派配置: <br /> | ||
第80行: | 第94行: | ||
|- align="center" | |- align="center" | ||
|INT|| 不接 | |INT|| 不接 | ||
− | |} | + | |}<br /> |
+ | [[File:BMP388-Raspberry-WS.jpg|800px]] | ||
+ | |||
===Python 例程演示=== | ===Python 例程演示=== | ||
成功将 BMP388 模块连接至树莓派后, 安装 smbus 库 <br /> | 成功将 BMP388 模块连接至树莓派后, 安装 smbus 库 <br /> | ||
第99行: | 第115行: | ||
[[File:BMP388 Barometric Pressure Sensor-4.jpg|800px]]<br /> | [[File:BMP388 Barometric Pressure Sensor-4.jpg|800px]]<br /> | ||
等待一会可以得到稳定的数据。从左至右分别显示了 BME280 测得的大气压(百帕斯卡),相对高度,温度(摄氏度)。 <br /> | 等待一会可以得到稳定的数据。从左至右分别显示了 BME280 测得的大气压(百帕斯卡),相对高度,温度(摄氏度)。 <br /> | ||
+ | |||
==用于Arduino== | ==用于Arduino== | ||
*按照如下方式将模块接到 arduino 开发板中。 | *按照如下方式将模块接到 arduino 开发板中。 | ||
第114行: | 第131行: | ||
|- align="center" | |- align="center" | ||
|INT|| 不接 | |INT|| 不接 | ||
− | |} | + | |}<br /> |
+ | [[File:BMP388-Arduino-WS.jpg|800px]] | ||
*在正确接线,确定通信方式以及器件地址之后,编译,下载到 Arduino | *在正确接线,确定通信方式以及器件地址之后,编译,下载到 Arduino | ||
*打开:工具 -> 串口监视器,选择波特率为 115200,可得如下信息 | *打开:工具 -> 串口监视器,选择波特率为 115200,可得如下信息 | ||
[[File:BMP388 Barometric Pressure Sensor-5.jpg|800px]]<br /> | [[File:BMP388 Barometric Pressure Sensor-5.jpg|800px]]<br /> | ||
等待一会可以得到稳定的数据。其中从左至右分别显示了 BMP388 传感器测得的大气压(百帕斯卡),相对高度(m),温度(摄氏度)。若未成功显示数据,或数据显示不正常请检查连线,通信方式,以及器件地址是否有误。 <br/> | 等待一会可以得到稳定的数据。其中从左至右分别显示了 BMP388 传感器测得的大气压(百帕斯卡),相对高度(m),温度(摄氏度)。若未成功显示数据,或数据显示不正常请检查连线,通信方式,以及器件地址是否有误。 <br/> | ||
+ | |||
==用于STM32== | ==用于STM32== | ||
*将下载的示例程序的压缩包解压后,打开 STM32 文件夹下的 STM32-STM32_BME280->USR 路径下的工程文件: | *将下载的示例程序的压缩包解压后,打开 STM32 文件夹下的 STM32-STM32_BME280->USR 路径下的工程文件: | ||
第135行: | 第154行: | ||
|- align="center" | |- align="center" | ||
|INT|| 不接 | |INT|| 不接 | ||
− | |} | + | |}<br />[[File:BMP388-STM32-WS.jpg|900px]] |
*编译,下载,本次采用的芯片是 STM32F103RBT6,采用 USART2 输出获得的传感器数据。 打开串口调试助手,选择对应的 COM 口,设置波特率为 115200,数据位 8 位,停止位 1位,无奇偶校验位,可得如下数据: | *编译,下载,本次采用的芯片是 STM32F103RBT6,采用 USART2 输出获得的传感器数据。 打开串口调试助手,选择对应的 COM 口,设置波特率为 115200,数据位 8 位,停止位 1位,无奇偶校验位,可得如下数据: | ||
[[File:BMP388 Barometric Pressure Sensor-6.jpg|800px]]<br /> | [[File:BMP388 Barometric Pressure Sensor-6.jpg|800px]]<br /> | ||
等待一会可以得到稳定的数据。其中从左至右分别显示了 BMP388 传感器测得的大气压(百帕斯卡),相对高度(m),温度(摄氏度)。若未成功显示数据,或数据显示不正常请检查连线,通信方式,以及器件地址是否有误 。 | 等待一会可以得到稳定的数据。其中从左至右分别显示了 BMP388 传感器测得的大气压(百帕斯卡),相对高度(m),温度(摄氏度)。若未成功显示数据,或数据显示不正常请检查连线,通信方式,以及器件地址是否有误 。 | ||
</div> | </div> | ||
− | <div class="tabbertab" title="资料"> | + | <div class="tabbertab" title="资料" id="myresources"> |
+ | |||
+ | <h1>资料</h1> | ||
+ | |||
===文档=== | ===文档=== | ||
− | *[ | + | *[https://{{SERVERNAME}}/w/upload/2/22/BMP388_Barometric_Pressure_Sensor_user_manual_cn.pdf 用户手册]<br> |
− | *[ | + | *[https://{{SERVERNAME}}/w/upload/1/10/BMP388_Barometric_Pressure_Sensor_Schematic.pdf 原理图] |
===程序=== | ===程序=== | ||
− | *[ | + | *[https://{{SERVERNAME}}/w/upload/0/09/BMP388_Barometric_Pressure_Sensor_Code.7z 示例程序] |
===软件=== | ===软件=== | ||
*[https://www.arduino.cc/en/Main/Software Arduino IDE] | *[https://www.arduino.cc/en/Main/Software Arduino IDE] | ||
− | *[ | + | *[https://{{SERVERNAME}}/w/upload/5/5f/Sscom.7z 串口调试助手] |
===相关资料=== | ===相关资料=== | ||
− | *[ | + | *[https://{{SERVERNAME}}/w/upload/e/ec/BST-BMP388-DS001.pdf BMP388数据手册] |
+ | |||
+ | </div> | ||
+ | <div class="tabbertab" title="FAQ" id="myfaq"> | ||
+ | |||
+ | <h1>FAQ</h1> | ||
+ | <br />{{BME280-Environmental-Sensor-FAQ}}</div> | ||
+ | <div class="tabbertab" title="售后" id="mysupport"> | ||
+ | =售后= | ||
+ | <br />{{Service06}}</div> | ||
</div> | </div> | ||
− | |||
− |
2023年1月14日 (六) 15:04的最新版本
| |||||||||||||||||||||
| |||||||||||||||||||||
说明
产品概述
这是一款 24 位高精度气压传感器,可实现精确的高度跟踪,检测大气压强、温度,支持 I2C/SPI 接口,兼容 3.3V/5V 电平。尺寸小,低功耗、低噪音,高精度,特别适用于无人机, 精密高度计、环境监测和物联网等应用场景。
特点
- 支持 I2C/SPI 接口通信,默认为 I2C 接口
- 板载电平转换电路,可兼容 3.3V/5V 的工作电平
- 提供完善的配套资料手册(Raspberry/Arduino/STM32 示例程序和用户手册等)
产品参数
- 工作电压: 5V/3.3V
- 通信接口: I2C/SPI
- 气压检测范围: 300~1250hPa
- 气压绝对精度: 0~100%RH (分辨率 0.008%RH,±3% RH)
- 气压相对精度: 300~1100 hPa (分辨率 0.18Pa,误差±1 hPa)
- 温度漂移系数: ±0.75Pa/K (@700~1100hPa,-20~65℃)
- 温度绝对精度: ±0.5℃ (0~65℃)
- 支持分辨率: 0.016Pa (高精度模式下)
- 支持采样率: 200Hz
- 工作温度: -40~85℃
- 产品尺寸: 32mm × 20mm
- 过孔直径: 2.0mm
接口说明
- 引脚功能
功能引脚 | 描述 |
功能引脚 | 描述 |
VCC | 电源正 |
GND | 电源地 |
SDA | I2C 数据线 |
SCL | I2C 时钟线 |
INT | 中断输出引脚,可接 I/O 口 |
用于树莓派
需要安装必要的函数库,否则以下的示例程序可能无法正常工作。安装方法详见:
https://www.waveshare.net/wiki/Pioneer600_Datasheets
- 在官网上找到对应产品,在产品资料打开下载路径,在 wiki 中下载示例程序:
- 解压得到如下:
- 将Raspberry文件夹拷贝至树莓派。
- 或者使用命令
sudo wget http://www.waveshare.net/w/upload/0/09/BMP388_Barometric_Pressure_Sensor_Code.7z 7z x BMP388_Barometric_Pressure_Sensor_Code.7z -O./BMP388_Sensor_Code cd BMP388_Sensor_Code/Raspberry/
前置工作
前置工作执行如下命令进行树莓派配置:
sudo raspi-config
选择 Interfacing Options -> I2C -> yes 启动 I2C 内核驱动 ,保存退出后,重启树莓派:
sudo reboot
将模块按照如下方式接到树莓派
模块 | 树莓派 |
VCC | 3.3V |
GND | GND |
SDA | SDA |
SCL | SCL |
INT | 不接 |
Python 例程演示
成功将 BMP388 模块连接至树莓派后, 安装 smbus 库
sudo apt install python-smbus
- 进入到 python 目录下并运行程序运行:
sudo python bmp388Demo.py
- 将显示如下数据:
从左至右分别显示了 BMP388 测得的温度(摄氏度),大气压(百帕斯卡),相对高度。 若未成功显示数据,或数据显示不正常请检查连线,通信方式,以及器件地址是否有误。
WiringPi 例程演示
- 安装 wiringpi 库
sudo apt install wiringpi
- 进入到 wiringpi 目录下编译并运行程序
- 运行程序:
make sudo ./bmp388Demo
- 将显示如下数据:
等待一会可以得到稳定的数据。从左至右分别显示了 BME280 测得的大气压(百帕斯卡),相对高度,温度(摄氏度)。
用于Arduino
- 按照如下方式将模块接到 arduino 开发板中。
模块 | Arduino |
VCC | 5V |
GND | GND |
SDA | SDA |
SCL | SCL |
INT | 不接 |
- 在正确接线,确定通信方式以及器件地址之后,编译,下载到 Arduino
- 打开:工具 -> 串口监视器,选择波特率为 115200,可得如下信息
等待一会可以得到稳定的数据。其中从左至右分别显示了 BMP388 传感器测得的大气压(百帕斯卡),相对高度(m),温度(摄氏度)。若未成功显示数据,或数据显示不正常请检查连线,通信方式,以及器件地址是否有误。
用于STM32
- 将下载的示例程序的压缩包解压后,打开 STM32 文件夹下的 STM32-STM32_BME280->USR 路径下的工程文件:
- 本程序采用的芯片是 STM32F103VET6,按照如下方式将模块接到 stm32 开发板。
模块 | Arduino |
VCC | 5V |
GND | GND |
SDA | PB7 |
SCL | PB6 |
INT | 不接 |
- 编译,下载,本次采用的芯片是 STM32F103RBT6,采用 USART2 输出获得的传感器数据。 打开串口调试助手,选择对应的 COM 口,设置波特率为 115200,数据位 8 位,停止位 1位,无奇偶校验位,可得如下数据:
等待一会可以得到稳定的数据。其中从左至右分别显示了 BMP388 传感器测得的大气压(百帕斯卡),相对高度(m),温度(摄氏度)。若未成功显示数据,或数据显示不正常请检查连线,通信方式,以及器件地址是否有误 。
FAQ
气压传感器计算得到的高度一般用在短周期内的相对值。比如坐垂直电梯,电梯启动前记录一个高度,电梯上升到3层,记录一个高度,两个高度的高度差是准确的。
如果需要用在绝对场合,可以输入当前位置的高度作为计算的初始值,然后运动观察高度变化就是准确的。不过如果时间长了,也会容易出现高度漂移的问题。
如果项目要求长时间获取准确高度值且频率要求高,就需要融合其他传感器进行处理,比如GPS。