我的RasPi 3在I2C总线上有以下传感器:BME280,BH1750,MLX90614。
所有传感器的所有数据都可以读取。 使用4个月后,BME280在100%相对湿度(rH)下卡住。 当时温度和压力读数有效且精确。 动力循环没有帮助。代码审查/重写没有帮助。
我添加了HTU21D传感器以供参考。同时BME280卡在最大计算rH,HTU21D读数正确,有效值为bith湿度和温度。
再过2个月后,HTU21D拧紧并开始显示76-118%的rH,同时温度读数正确且准确(与BME280相似)。尽管HTU21D没有停留在单个值,但它的测量结果是错误的。奇怪的是,在黑暗时期,它总是118%rH。 来自HTU21D的rH读数的原始数据是:
这意味着CRC正常,传感器认为它报告的值正确。同样,正确的CRC和其他数据读数OK也意味着I2C总线也可以正确构建。
代码尝试了:
与此同时,BME280仍然停留在100%rH:纯计算值为150-180%,软件限制为100%。
I2C总线详细信息:
当来自不同制造商的2个类似传感器的部分数据卡在更高的数字而其他数据合适时,是否有人遇到此问题?
在其他数据正确的情况下,只有湿度错误的原因是什么?