目录
1、传感器特性
2、硬件原理图
3、控制器和传感器连线图
4、驱动程序
4.1、采集数据
4.2、校准传感器
MPX5700AP测量范围15~700kPa,支持I2C数字输出,可以根据已知气压值进行标定,可以快速、准确的测量管路或其他环境中的气压值。适用于管路气压检测,自然科学实验等场景。
1、传感器特性
传感器特性如下所示:
- 检测物理量: 气压
- 工作电压: 3.3~5.5V DC
- 功耗:0.06W(5V)
- 输出信号: I2C输出(0~3V)
- 测量范围: 15-700kPa
- 误差:<2.5%
- 分辨率: ≤1kPa
- 工作温度: 0~85℃
2、硬件原理图
传感器原理图如下所示:
3、控制器和传感器连线图
控制器和传感器连线图如下所示:
4、驱动程序
4.1、采集数据
驱动程序如下所示:
/*!
* @file getPressureValue.ino
@n i2c 地址选择,默认i2c地址为0x16,A1、A0组合成4种IIC地址
| A1 | A0 |
| 0 | 0 | 0x16
| 0 | 1 | 0x17
| 1 | 0 | 0x18
| 1 | 1 | 0x19 default i2c address
* @n 实验现象: 串口打印全部数据
*/
#include "DFRobot_MPX5700.h"
#define I2C_ADDRESS 0x16
DFRobot_MPX5700 mpx5700(&Wire, I2C_ADDRESS);
void setup()
{
Serial.begin(115200);
while (false == mpx5700.begin())
{
Serial.println("i2c begin fail,please chack connect!");
delay(1000);
}
Serial.println("i2c begin success");
/*
*为了平滑数据,需要设置取xx数量的adc数据取平均值
*如果不进行设置,系统会自动获取5个样本数量的平均值
*/
mpx5700.setMeanSampleSize(/*样本总数*/5);
}
void loop()
{
Serial.print("Pressure Value: ");
/*
*获取此时环境气压,可以设置是否启用校准
*1:需要校准
*0:不需要校准
*/
Serial.print(mpx5700.getPressureValue_kpa(1));
Serial.println(" kpa");
delay(1000);
}
运行效果如下所示:
4.2、校准传感器
驱动程序如下所示:
/*!
* @file calibration.ino
@n i2c 地址选择,默认i2c地址为0x16,A1、A0组合成4种IIC地址
| A1 | A0 |
| 0 | 0 | 0x16
| 0 | 1 | 0x17
| 1 | 0 | 0x18
| 1 | 1 | 0x19 default i2c address
* @n 实验现象: 串口打印全部数据
*/
#include "DFRobot_MPX5700.h"
#define I2C_ADDRESS 0x16
DFRobot_MPX5700 mpx5700(&Wire ,I2C_ADDRESS);
void setup() {
Serial.begin(115200);
while(false==mpx5700.begin())
{
Serial.println("i2c begin fail,please chack connect!");
delay(1000);
}
Serial.println("i2c begin success");
/*
*添加现在环境中的标准气压值用以校准
*/
mpx5700.calibration_kpa(110.0);
Serial.println("Calibration_kpa success");
}
void loop() {
}
运行效果如下所示: