环境监测系统采用LabVIEW软件编写上位机监测程序。程序整体采用生产者—消费者设计模式,主要实现采集数据的TCP方式接收、数据的显示(实时数值和波形)和存储(txt格式)。它在生产者循环中监测事件类型并产生相应的事件命令,在消费者循环中判断事件类型并执行相应操作,例如:当生产者循环中监测到“开始采集”按钮值改变事件时,将对应的“ON”事件命令字符串入队列,消费者循环以TCP方式侦听指定端口,并将命令字符串“ON”出队列,判断出当前事件为“开始采集”按钮值改变事件,一旦TCP连接建立,则读取和分离温湿度和灰尘浓度数据,并以波形图表和数值输出控件进行显示。
环境监测系统监测程序的前面板如上图所示。由于灰尘浓度传感器GP2Y1010AU0F的监测灵敏度高,导致环境监测的灰尘浓度波形1的波动性较大,无法获知灰尘浓度的均值分布情况,故采用移动平均滤波算法得到灰尘浓度波形2,从而改善环境监测的准确度。
利用环境监测系统和专业的环境监测仪同时进行0.5h的监测后,计算得到的平均值如表所示。从对比结果可见,3项测量参数的平均误差小于3%,环境监测数据的准确度较高。