shineblink CCS811传感器检测Tvoc/CO2
作者:互联网
CCS811传感器测量Tvoc,以及eCO2
一、本例程实现功能
通过CCS811传感器模块测量室内空气质量(IAQ),并将测量到的Tvoc(单位ppb)、eCO2(单位ppm)以及Rawdata数据打印输出在电脑串口调试终端上面。
二、基本概念
- Tvoc: 室内空气品质的研究人员通常把他们采样分析的所有室内有机气态物质称为TVOC,它是Volatile Organic
Compound三个词第一个字母的缩写,各种被测量的VOC被总称为总挥发性有机物TVOC(Total Volatile Organic
Compounds)。TVOC是三种影响室内空气品质污染中影响较为严重的一种。TVOC是指室温下饱和蒸气压超过了133.32pa的有机物,其沸点在50℃至250℃,在常温下可以蒸发的形式存在于空气中,它的毒性、刺激性、致癌性和特殊的气味性,会影响皮肤和黏膜,对人体产生急性损害。世界卫生组织(WHO)、美国国家科学院/国家研究理事会(NAS/NRC)等机构一直强调TVOC是一类重要的空气污染物。美国环境署(EPA)对VOC的定义是:除了一氧化碳,二氧化碳,碳酸,金属碳化物,碳酸盐以及碳酸铵外,任何参与大气中光化学反应的含碳化合物。 - eCO2: CCS811传感器测量出的等效二氧化碳浓度。
- PPb(part per
billion),是一个无量纲量,在溶液中是用溶质质量占全部溶液质量的十亿分比来表示的浓度,也称十亿分比浓度(1/10,十亿分之一,10-9),经常用于浓度非常小的场合下。与之相似的还有ppm(part
per million,百万分之一),ppb=1/1000ppm。
三、接线图
五、完整代码
--配置USB以虚拟串口模式工作,这样调用print()函数就会在电脑串口终端打印输出
LIB_UsbConfig("CDC")
--配置CCS811气体传感器开始工作,占用IIC0接口,每1秒出一组测量结果
LIB_CCS811Config("IIC0", "1S")
--开始大循环
while(GC(1) == true)
do
--查询传感器是否出数
flag, tvoc, eCO2, raw_i, raw_u = LIB_CCS811GetResult()
if flag == 1 then
--打印Tvoc和eCO2的值以及rawdata数据i和u
print(string.format("Tvoc:%d, eCO2:%d, i=%d, u=%d", tvoc,eCO2,raw_i,raw_u))
end
end
六、代码运行结果
电脑串口调试终端上显示的Tvoc(单位ppb)、eCO2(单位ppm)、以及Rawdata如下图:
七、CCS811官方资料中需要注意的地方
更多详情请参看 shineblink.com官网链接
标签:shineblink,--,eCO2,CO2,Tvoc,CCS811,TVOC,串口 来源: https://blog.csdn.net/ucos_hqu/article/details/118095919