颗粒物(PM):支持 PM1.0, PM2.5, PM4 和 PM10。【此项目仅在电子墨水屏上显示 PM2.5 浓度】
- 气态污染物:
VOC指数(挥发性有机化合物):反映清洁剂、家具等排放的异味;
NOx指数(氮氧化物):反映燃气灶、室外尾气等燃烧产生的污染物;
CO2(二氧化碳):精准检测通风状况;
环境温湿度:提供高精度的温度和相对湿度数据。
工作电压:3.15V~3.45V;
平均电流:约90mA;
通讯接口:I2C;
寿命:超过10年
智能家居:空气净化器、空调、新风系统;
商业建筑:暖通空调控制、智能办公室监控;
物联网设备:室内空气质量检测仪、环境站;
VDD
GND
SDA
SCL


SEN66 官方驱动放在 github 链接为:https://github.com/Sensirion?q=sen66&type=public&language=&sort=
在树莓派5上仅使用 raspberry-pi-i2c-sen66 驱动即可,这个驱动代码是C语言版本。
https://github.com/Sensirion/raspberry-pi-i2c-sen66.git

(.venv) lintex9527@pi:~/workspace/eepw/elem_rpi5_contest/raspberry-pi-i2c-sen66 $ ll total 204K drwxrwxr-x 7 lintex9527 lintex9527 4.0K Nov 29 11:59 . drwxrwxr-x 7 lintex9527 lintex9527 4.0K Dec 8 10:39 .. drwxrwxr-x 2 lintex9527 lintex9527 4.0K Nov 28 19:43 build -rw-rw-r-- 1 lintex9527 lintex9527 1.8K Nov 28 18:06 CHANGELOG.md -rw-rw-r-- 1 lintex9527 lintex9527 346 Nov 28 18:06 .clang-format drwxrwxr-x 2 lintex9527 lintex9527 4.0K Dec 27 13:44 example-usage drwxrwxr-x 8 lintex9527 lintex9527 4.0K Dec 2 16:33 .git drwxrwxr-x 3 lintex9527 lintex9527 4.0K Nov 28 18:06 .github -rw-rw-r-- 1 lintex9527 lintex9527 95 Nov 29 11:59 .gitignore drwxrwxr-x 2 lintex9527 lintex9527 4.0K Nov 28 18:06 images -rw-rw-r-- 1 lintex9527 lintex9527 1.5K Nov 28 18:06 LICENSE -rw-rw-r-- 1 lintex9527 lintex9527 967 Nov 28 19:43 Makefile -rw-rw-r-- 1 lintex9527 lintex9527 194 Nov 28 18:06 metadata.yml -rw-rw-r-- 1 lintex9527 lintex9527 5.2K Nov 28 18:06 README.md -rw-rw-r-- 1 lintex9527 lintex9527 34K Nov 28 18:06 sen66_i2c.c -rw-rw-r-- 1 lintex9527 lintex9527 41K Nov 28 18:06 sen66_i2c.h -rw-rw-r-- 1 lintex9527 lintex9527 4.2K Nov 28 18:06 sensirion_common.c -rw-rw-r-- 1 lintex9527 lintex9527 6.8K Nov 28 18:06 sensirion_common.h -rw-rw-r-- 1 lintex9527 lintex9527 2.8K Nov 28 18:06 sensirion_config.h -rw-rw-r-- 1 lintex9527 lintex9527 11K Nov 28 18:06 sensirion_i2c.c -rw-rw-r-- 1 lintex9527 lintex9527 15K Nov 28 18:06 sensirion_i2c.h -rw-rw-r-- 1 lintex9527 lintex9527 4.5K Nov 28 18:06 sensirion_i2c_hal.c -rw-rw-r-- 1 lintex9527 lintex9527 4.1K Nov 28 18:06 sensirion_i2c_hal.h
sen66_i2c.c/h 提供用户API,例如sen66_init(), sen66_device_reset(), sen66_read_device_status(), sen66_start_continuous_measurement(), sen66_stop_measurement() ;
sensirion_common.c/h 提供内部数据类型转换的API,例如 sensirion_common_bytes_to_uint32(), sensirion_common_bytes_to_float() 等;
sensirion_i2c.c/h 提供 I2C 通信命令操作,如发送命令、读取数据等,sensirion_i2c_write_cmd(), sensirion_i2c_delayed_read_cmd() 等API;
sensirion_i2c_hal.c/h 实现与 /dev/i2c-1 设备文件操作,实现 I2C 通信接口抽象层,如 sensirion_i2c_hal_init(), sensirion_i2c_hal_write();
在 example-usage 目录下新建 Makefile 文件,内容如下:
src_dir = ..
common_sources = ${src_dir}/sensirion_config.h ${src_dir}/sensirion_common.h ${src_dir}/sensirion_common.c
i2c_sources = ${src_dir}/sensirion_i2c_hal.h ${src_dir}/sensirion_i2c.h ${src_dir}/sensirion_i2c.c
driver_sources = ${src_dir}/sen66_i2c.h ${src_dir}/sen66_i2c.c
i2c_implementation ?= ${src_dir}/sensirion_i2c_hal.c
CFLAGS = -Os -Wall -fstrict-aliasing -Wstrict-aliasing=1 -Wsign-conversion -fPIC -I${src_dir} -I.
ifdef CI
CFLAGS += -Werror
endif
.PHONY: all clean
all: sen66_i2c_example_usage
sen66_i2c_example_usage: clean
$(CC) $(CFLAGS) -o $@ ${driver_sources} ${i2c_sources} \
${i2c_implementation} ${common_sources} sen66_i2c_example_usage.c
clean:
$(RM) sen66_i2c_example_usage(.venv) lintex9527@pi:~/workspace/eepw/elem_rpi5_contest/raspberry-pi-i2c-sen66/example-usage $ make rm -f sen66_i2c_example_usage cc -Os -Wall -fstrict-aliasing -Wstrict-aliasing=1 -Wsign-conversion -fPIC -I.. -I. -o sen66_i2c_example_usage ../sen66_i2c.h ../sen66_i2c.c ../sensirion_i2c_hal.h ../sensirion_i2c.h ../sensirion_i2c.c \ ../sensirion_i2c_hal.c ../sensirion_config.h ../sensirion_common.h ../sensirion_common.c sen66_i2c_example_usage.c
PM1.0
PM2.5
PM4.0
PM10
humidity 相对湿度
temperature 温度
VOC 指数
NOX 指数
CO2
(.venv) lintex9527@pi:~/workspace/eepw/elem_rpi5_contest/raspberry-pi-i2c-sen66/example-usage $ ./sen66_i2c_example_usage serial_number: 5E69ACB9865E07D6 mass_concentration_pm1p0: 6553.50 mass_concentration_pm2p5: 6553.50 mass_concentration_pm4p0: 6553.50 mass_concentration_pm10p0: 6553.50 humidity: 28.52 temperature: 23.82 voc_index: 0.00 nox_index: 3276.70 co2: 65535 mass_concentration_pm1p0: 6553.50 mass_concentration_pm2p5: 6553.50 mass_concentration_pm4p0: 6553.50 mass_concentration_pm10p0: 6553.50 humidity: 28.52 temperature: 23.82 voc_index: 0.00 nox_index: 3276.70 co2: 65535 mass_concentration_pm1p0: 0.00 mass_concentration_pm2p5: 0.00 mass_concentration_pm4p0: 0.00 mass_concentration_pm10p0: 0.00 humidity: 28.52 temperature: 23.82 voc_index: 0.00 nox_index: 3276.70 co2: 65535 mass_concentration_pm1p0: 0.00 mass_concentration_pm2p5: 0.00 mass_concentration_pm4p0: 0.00 mass_concentration_pm10p0: 0.00 humidity: 28.52 temperature: 23.82 voc_index: 0.00 nox_index: 3276.70 co2: 65535 mass_concentration_pm1p0: 0.80 mass_concentration_pm2p5: 1.00 mass_concentration_pm4p0: 1.10 mass_concentration_pm10p0: 1.10 humidity: 28.52 temperature: 23.82 voc_index: 0.00 nox_index: 3276.70 co2: 545 mass_concentration_pm1p0: 1.10 mass_concentration_pm2p5: 1.30 mass_concentration_pm4p0: 1.40 mass_concentration_pm10p0: 1.50 humidity: 28.52 temperature: 23.82 voc_index: 0.00 nox_index: 3276.70 co2: 545 mass_concentration_pm1p0: 1.20 mass_concentration_pm2p5: 1.40 mass_concentration_pm4p0: 1.60 mass_concentration_pm10p0: 1.60 humidity: 28.52 temperature: 23.82 voc_index: 0.00 nox_index: 3276.70 co2: 545 mass_concentration_pm1p0: 1.20 mass_concentration_pm2p5: 1.40 mass_concentration_pm4p0: 1.60 mass_concentration_pm10p0: 1.60 humidity: 28.52 temperature: 23.82 voc_index: 0.00 nox_index: 0.00 co2: 545 mass_concentration_pm1p0: 1.20 mass_concentration_pm2p5: 1.40 mass_concentration_pm4p0: 1.60 mass_concentration_pm10p0: 1.60 humidity: 28.52 temperature: 23.82 voc_index: 0.00 nox_index: 0.00 co2: 545 mass_concentration_pm1p0: 1.20 mass_concentration_pm2p5: 1.40 mass_concentration_pm4p0: 1.60 mass_concentration_pm10p0: 1.60 humidity: 28.52 temperature: 23.82 voc_index: 0.00 nox_index: 0.00 co2: 551 mass_concentration_pm1p0: 1.40 mass_concentration_pm2p5: 1.60 mass_concentration_pm4p0: 1.70 mass_concentration_pm10p0: 1.80 humidity: 28.52 temperature: 23.82 voc_index: 0.00 nox_index: 0.00 co2: 557 mass_concentration_pm1p0: 1.40 mass_concentration_pm2p5: 1.60 mass_concentration_pm4p0: 1.70 mass_concentration_pm10p0: 1.80 humidity: 28.52 temperature: 23.82 voc_index: 0.00 nox_index: 0.00 co2: 563 mass_concentration_pm1p0: 1.40 mass_concentration_pm2p5: 1.60 mass_concentration_pm4p0: 1.70 mass_concentration_pm10p0: 1.80 humidity: 28.52 temperature: 23.82 voc_index: 0.00 nox_index: 0.00 co2: 569 mass_concentration_pm1p0: 1.40 mass_concentration_pm2p5: 1.60 mass_concentration_pm4p0: 1.70 mass_concentration_pm10p0: 1.80 humidity: 28.52 temperature: 23.82 voc_index: 0.00 nox_index: 0.00 co2: 576 mass_concentration_pm1p0: 1.50 mass_concentration_pm2p5: 1.80 mass_concentration_pm4p0: 1.90 mass_concentration_pm10p0: 2.00 humidity: 28.52 temperature: 23.82 voc_index: 0.00 nox_index: 0.00 co2: 580 mass_concentration_pm1p0: 1.50 mass_concentration_pm2p5: 1.80 mass_concentration_pm4p0: 1.90 mass_concentration_pm10p0: 2.00 humidity: 28.52 temperature: 23.82 voc_index: 0.00 nox_index: 0.00 co2: 584 mass_concentration_pm1p0: 1.50 mass_concentration_pm2p5: 1.80 mass_concentration_pm4p0: 1.90 mass_concentration_pm10p0: 2.00 humidity: 28.53 temperature: 23.82 voc_index: 0.00 nox_index: 0.00 co2: 588 mass_concentration_pm1p0: 1.50 mass_concentration_pm2p5: 1.80 mass_concentration_pm4p0: 1.90 mass_concentration_pm10p0: 2.00 humidity: 28.53 temperature: 23.82 voc_index: 0.00 nox_index: 0.00 co2: 592 mass_concentration_pm1p0: 1.50 mass_concentration_pm2p5: 1.80 mass_concentration_pm4p0: 1.90 mass_concentration_pm10p0: 2.00 humidity: 28.53 temperature: 23.82 voc_index: 0.00 nox_index: 0.00 co2: 596 mass_concentration_pm1p0: 1.70 mass_concentration_pm2p5: 1.90 mass_concentration_pm4p0: 2.10 mass_concentration_pm10p0: 2.10 humidity: 28.53 temperature: 23.82 voc_index: 0.00 nox_index: 0.00 co2: 598
从以上采样值来看:
传感器前几次采样值, NOX 不准确,飙到 3276.70,几次之后恢复到0
办公室环境下相对湿度、温度比较准确,二氧化碳数值598也正常,周末办公室没几个人;如果是工作日 CO2 数值达到1500 左右;
PM 数值稳定,接近于0,办公室环境下正常;
我要赚赏金
