家用甲醛pm2.5温湿度传感器实验
最近在装修房子,刷完墙漆铺完了木地板以后,屋里边有很大的味,所以就买了 攀藤科技的PMS5003ST G5ST PM2.5激光粉尘甲醛温湿度三合一传感器,打算自己测一下甲醛浓度,看看什么时候能够入住。
PMS5003ST传感器手册:https://wenku.baidu.com/view/4f6a10bad5d8d15abe23482fb4daa58da0111cf2
使用5V供电,出一路TTL串口,主动输出传感数据。波特率9600,数据格式为40字节二进制数据包。
拿到传感器后,焊了几根线,把5V GND TX RX焊成杜邦线,插在USB转ttl模块上:
接在电脑上,打开串口调试助手,有数据:
这样看二进制数据不方便,于是建立了一个C# WPF工程,简单画了一个界面,定义了自己用得到的几个数据:
1 [StructLayout(LayoutKind.Sequential, Pack = 1)] 2 public struct S_PMS5003ST 3 { 4 public UInt16 syn1; //0x42,0x4d 5 public UInt16 len; 6 public UInt16 pm1_s; 7 public UInt16 pm25_s; 8 public UInt16 pm10_s; 9 public UInt16 pm1; 10 public UInt16 pm25; 11 public UInt16 pm10; 12 public UInt16 res0; 13 public UInt16 res1; 14 public UInt16 res2; 15 public UInt16 res3; 16 public UInt16 res4; 17 public UInt16 res5; 18 public UInt16 J; //0.001 19 public UInt16 T; //0.1 20 public UInt16 H; //0.1 21 public UInt16 res; //0.1 22 public UInt16 ver; //0.1 23 public UInt16 sum; //0.1 24 public UInt16 changeend(UInt16 n) 25 { 26 return (UInt16)((((UInt16)(n)) << 8) | (((UInt16)(n)) >> 8)); 27 } 28 }
这数据类型还是大端存储,还得转换为小端……
于是就做好了,在租的房子里测了一下,各传感器都有值:
甲醛的单位是mg/m3,甲醛的浓度标准:
0.06-0.07mg/m³:儿童轻微气喘;
0.1mg/m³:异味和不适感;
0.5mg/m³:刺激眼睛,引起流泪;
0.6mg/m³:咽喉不适或疼痛。浓度更高时,可引起恶心呕吐,咳嗽胸闷,气喘甚至肺水肿;
30mg/m³:立即致人死亡。
所以室内甲醛的标准是0.1mg/m3。这屋里甲醛浓度合格。
测完以后,又加了个保存日志功能,每小时存一个文本格式的测量日志。
然后就背着笔记本电脑去了装修工地,已通风24小时,但能闻到明显刺激气味。插上传感器,显示甲醛浓度为0,呆了一会,还是0,换了一个屋,还是0,回家洗洗睡了