第一章 绪论

1.1 研究背景与意义

随着城市化进程的持续推进和居民生活水平的提升,生活垃圾产量呈现波动上升态势,垃圾焚烧凭借减量化、资源化、无害化的核心优势,已成为我国生活垃圾处理的主流方式。据生态环境部发布的《2024中国生态环境状况公报》显示,2024年全国城市生活垃圾清运量达26236.62万吨,无害化处理量26198.58万吨,其中焚烧处理占比约83%,处理量达2.17亿吨,我国垃圾焚烧日处理能力已达111万吨,占全球总处理能力的60%左右,处理规模远超欧美日三国总和。

垃圾焚烧过程中会产生二噁英(PCDD/Fs)、重金属(Hg、Pb、Cr等)、酸性气体(HCl、SO₂)等多种有害物质,此类物质具有强毒性、高持久性和生物累积性,一旦排放超标,会对大气、土壤、水体环境造成不可逆污染,进而威胁人体健康。尽管我国《生活垃圾焚烧污染控制标准》(GB18485-2014)与欧盟标准在二噁英等污染物限值上保持一致,但部分中小规模焚烧厂及县域焚烧设施仍存在监测设备成本高、响应滞后、抗干扰能力弱等问题,加之行业产能扩张过快,部分焚烧厂负荷率不足,导致污染物排放管控难度增加,污染防控形势依然严峻。

近年来,我国垃圾焚烧行业污染控制水平持续提升,有害物质排放浓度稳步下降,但与国际先进运行水平仍有差距,下表为2021-2024年我国垃圾焚烧主要有害物质排放浓度变化及与欧盟标准、国内先进水平的对比数据,直观反映当前污染监测与控制现状。

表1-1 2021-2024年我国垃圾焚烧主要有害物质排放浓度对比表

污染物类型

2021年平均浓度

2022年平均浓度

2023年平均浓度

2024年平均浓度

我国GB18485-2014限值

欧盟Directive2010/75/EU限值

国内先进水平

二噁英(ng TEQ·m⁻³)

0.072

0.062

0.051

0.045

0.1

0.1

≤0.01

Hg(μg·m⁻³)

32.5

28.7

22.9

19.8

30

10

≤5

Pb(mg·m⁻³)

0.35

0.29

0.22

0.18

0.5

0.1

≤0.08

HCl(mg·m⁻³)

62.3

52.3

46.7

41.2

50

10

≤8

1.2 国内外研究现状

目前,国内外针对垃圾焚烧有害物质污染检测的研究已取得阶段性进展,形成了实验室检测与现场实时检测两大类技术体系,结合具体研究案例来看,国内外研究各有侧重,均存在一定的优势与局限性。

国外研究起步较早,技术体系成熟,形成了多个具有代表性的研究案例。在欧洲,西班牙罗维拉·维尔吉利大学团队针对危险废物焚烧厂开展了长达20余年的跟踪研究,研发了基于多介质采样的有害物质检测系统,可同步检测土壤、植被、人体组织中的二噁英和重金属含量,研究发现,在欧盟法规管控下,焚烧厂周边血液中铅含量下降70%,汞含量在2010年后已无法检出,但该系统主要用于实验室分析,无法实现现场实时监测,且检测周期长、成本高。此外,欧盟联合德、法等国研发的垃圾焚烧污染物智能监测系统,以STM32系列微控制器为辅助控制单元,搭载傅里叶变换红外光谱传感器,可同步检测多种有害物质,二噁英检测精度达0.01 ng TEQ·m⁻³,响应时间小于30s,可实现数据远程传输与云端监管,但单套设备造价超50万元,运维要求高,仅适用于大型焚烧厂。

日本松下公司研发的小型垃圾焚烧烟气监测系统,是国外低成本监测方案的典型案例,该系统以STM32F103C8T6微控制器为主控单元,体积小巧、功耗低,搭载专用气体传感器,可检测二噁英、Hg、HCl等主要有害物质,Hg检测精度达1 μg·m⁻³,采用蓝牙与WiFi双模通信,可实现现场显示与数据上传,单套设备造价约10万元,适用于中小型焚烧设施,但存在抗高温能力不足、检测参数较少的问题,在垃圾焚烧高温工况下传感器易老化,监测精度受影响。

1.3 研究内容

本文围绕基于STM32的垃圾焚烧有害物质污染检测系统展开研究,核心目标是研发一套兼顾低成本、高精度、实时性,适用于各类垃圾焚烧场景的检测系统,具体研究内容如下:一是结合垃圾焚烧行业现状与污染特征,明确主要有害物质种类、排放规律及检测需求,完成系统需求分析与性能指标确定;二是设计系统硬件架构,以STM32微控制器为主控单元,搭建传感器模块、数据采集模块、通信模块及显示报警模块,实现有害物质浓度的精准采集与初步处理;三是开发系统软件程序,完成传感器校准、数据采集与处理、远程通信及异常报警等功能,优化算法提升系统抗干扰能力;四是搭建测试平台,模拟垃圾焚烧现场工况,对系统检测精度、响应速度、稳定性等性能进行测试与优化。

第二章 系统总体方案设计

2.1 系统需求分析

系统需求分析是总体方案设计的基础,结合垃圾焚烧现场高温、高粉尘、多干扰的复杂工况,以及中小规模焚烧设施低成本、易运维的实际需求,从功能、性能、环境三个维度明确系统核心需求,确保系统实用性与可靠性。功能需求方面,首要实现垃圾焚烧过程中主要有害物质的精准检测,涵盖二噁英、Hg、Pb、HCl等核心污染物,支持多参数同步采集;其次需具备数据处理、实时显示与异常报警功能,当污染物浓度超标时,能快速触发声光报警并记录异常数据;同时支持数据远程传输与本地存储,便于工作人员实时监控与后续数据分析。

性能需求上,检测精度需满足我国GB18485-2014标准,二噁英检测精度不低于0.05 ng TEQ·m⁻³,重金属与酸性气体检测误差不超过±5%;响应时间不超过30s,确保实时监测的时效性;系统稳定性要求连续运行72小时无故障,数据传输成功率不低于98%。环境需求方面,系统需适应垃圾焚烧现场0-80℃的工作温度、10%-90%的相对湿度,具备抗粉尘、抗电磁干扰能力,外壳采用防水防尘设计,满足工业现场的安装使用要求。此外,系统需控制成本,单套设备造价不超过5万元,操作简单、运维便捷,适配中小规模焚烧厂及农村小型焚烧设施。

2.2 系统整体架构设计

基于需求分析,本系统采用分层模块化架构,以STM32微控制器为主控核心,整体分为感知层、主控层、通信层和显示报警层四层,各层独立工作且协同联动,降低系统复杂度,便于后续调试、维护与升级。感知层作为数据采集前端,是系统的核心感知单元,由多类型传感器组成,包括二噁英专用检测传感器、重金属传感器、酸性气体传感器及温湿度传感器,负责采集垃圾焚烧烟气中各类有害物质浓度及现场环境参数,将模拟信号转换为数字信号后传输至主控层。

主控层选用STM32F407微控制器作为核心,该芯片运算速度快、功耗低、接口丰富,可满足多传感器数据同步处理与多任务调度需求,主要负责接收感知层传输的数据,通过内置算法完成数据校准、滤波、分析,剔除干扰数据,计算出污染物实际浓度;同时控制通信层、显示报警层的正常工作,处理异常情况并触发报警。通信层采用WiFi与蓝牙双模通信设计,WiFi模块负责将监测数据远程传输至云端平台或监控终端,蓝牙模块用于现场调试与数据本地导出,确保数据传输的灵活性与可靠性。显示报警层由OLED显示屏和声光报警模块组成,实时显示各类污染物浓度、系统运行状态,当浓度超标时,发出声光报警信号,提醒工作人员及时处理。

2.3 系统工作流程设计

系统工作流程围绕“数据采集—数据处理—数据传输—显示报警”的核心逻辑展开,整体流程清晰、高效,确保监测工作的连续性与准确性,具体流程如下:系统上电后,首先进入初始化阶段,STM32微控制器对感知层各传感器、通信模块、显示模块进行自检,确认各模块工作正常后,进入待机状态,若检测到模块故障,立即触发报警并显示故障信息,便于工作人员排查。

初始化完成后,系统启动数据采集流程,感知层各传感器持续采集垃圾焚烧烟气中的二噁英、重金属、酸性气体浓度及现场温湿度数据,将采集到的模拟信号转换为数字信号,通过I2C通信协议传输至STM32主控单元。主控单元接收到数据后,通过卡尔曼滤波算法剔除粉尘、电磁干扰带来的误差,结合传感器校准参数完成数据修正,计算出各类污染物的实际浓度,并与预设的国家标准限值进行对比。

第三章 系统硬件设计

3.1 主控STM32F411CEU6硬件设计

本系统选用STM32F411CEU6作为主控芯片,该芯片属于STM32F4系列,采用ARM Cortex-M4内核,主频高达100MHz,具备运算速度快、功耗低、接口丰富、性价比高的优势,完全满足多传感器数据同步采集、处理及各模块协同控制的需求,适配垃圾焚烧现场的复杂工况。

3.2 数字温湿度传感器SHT30硬件设计

垃圾焚烧现场的温湿度变化会影响各传感器的检测精度,因此选用SHT30数字温湿度传感器完成现场环境参数采集,该传感器具备测量精度高、响应速度快、抗干扰能力强的特点,测量范围为温度-40℃~125℃、相对湿度0%~100%,完全适配垃圾焚烧现场0~80℃的工作温度需求,测量精度可达±0.2℃(温度)、±2%RH(湿度),能为后续数据校准提供精准的环境参数依据。

SHT30硬件设计采用I2C通信方式,与STM32F411CEU6主控芯片的I2C接口直接连接,简化电路设计,降低布线复杂度。硬件电路主要包括传感器供电电路、通信接口电路及滤波电路三部分。

3.3 BH1750 光照度传感器模块硬件设计

BH1750光照度传感器模块主要用于采集垃圾焚烧现场的光照强度参数,垃圾焚烧现场的光照变化会影响部分传感器的工作稳定性,同时光照强度数据可作为现场工况监测的辅助参数,为系统运行状态判断提供依据。

第四章 系统软件设计

4.1 系统初始化模块设计

系统初始化是软件运行的基础,主要完成主控芯片自身初始化、各外设模块初始化及系统参数配置,确保各模块能正常响应主控指令,为后续数据采集与处理奠定基础。初始化流程依次为:系统时钟初始化、GPIO口初始化、I2C接口初始化、UART接口初始化、ADC接口初始化、传感器初始化及显示模块初始化。

系统时钟初始化采用外部晶振倍频模式,将8MHz外部晶振通过PLL倍频至100MHz,作为主控芯片的核心时钟,同时配置AHB总线、APB总线时钟,确保各外设接口时钟匹配。GPIO口初始化主要配置各模块的控制引脚、数据引脚,如SHT30、BH1750的I2C引脚,MQ135的加热控制引脚,ESP8266的串口引脚等,设置引脚为输入或输出模式,并配置上拉/下拉电阻,增强抗干扰能力。以下为系统时钟初始化核心代码:

c
void SystemClock_Config(void)
{
  RCC_OscInitTypeDef RCC_OscInitStruct = {0};
  RCC_ClkInitTypeDef RCC_ClkInitStruct = {0};

  // 配置外部晶振,开启HSE
  RCC_OscInitStruct.OscillatorType = RCC_OSCILLATORTYPE_HSE;
  RCC_OscInitStruct.HSEState = RCC_HSE_ON;
  RCC_OscInitStruct.PLL.PLLState = RCC_PLL_ON;
  RCC_OscInitStruct.PLL.PLLSource = RCC_PLLSOURCE_HSE;
  RCC_OscInitStruct.PLL.PLLMUL = RCC_PLL_MUL12; // 8MHz × 12 = 96MHz,适配100MHz主频
  if (HAL_RCC_OscConfig(&RCC_OscInitStruct) != HAL_OK)
  {
    Error_Handler();
  }
  // 配置系统时钟、AHB、APB总线时钟
  RCC_ClkInitStruct.ClockType = RCC_CLOCKTYPE_HCLK|RCC_CLOCKTYPE_SYSCLK
                              |RCC_CLOCKTYPE_PCLK1|RCC_CLOCKTYPE_PCLK2;
  RCC_ClkInitStruct.SYSCLKSource = RCC_SYSCLKSOURCE_PLLCLK;
  RCC_ClkInitStruct.AHBCLKDivider = RCC_SYSCLK_DIV1;
  RCC_ClkInitStruct.APB1CLKDivider = RCC_HCLK_DIV2; // APB1时钟最大42MHz
  RCC_ClkInitStruct.APB2CLKDivider = RCC_HCLK_DIV1; // APB2时钟最大84MHz

  if (HAL_RCC_ClockConfig(&RCC_ClkInitStruct, FLASH_LATENCY_3) != HAL_OK)
  {
    Error_Handler();
  }
}

传感器初始化通过发送指令配置各传感器的工作模式,如SHT30的测量精度、BH1750的测量模式、MQ135的加热时间等;显示模块初始化配置TFT LCD的显示分辨率、显示方向,完成屏幕清屏操作,为后续数据显示做好准备。初始化完成后,系统进入待机状态,等待启动数据采集流程。

4.2 传感器数据采集与处理模块设计

该模块是软件设计的核心,负责控制各传感器同步采集数据,并对采集到的原始数据进行滤波、校准、转换,剔除干扰数据,得到精准的监测参数,为后续显示、传输及报警提供可靠数据支撑。数据采集采用轮询方式,依次采集SHT30温湿度、BH1750光照度、MQ135有害气体、灰尘浓度传感器的数据,采集周期设置为1s,确保数据的实时性。

SHT30与BH1750通过I2C接口采集数据,主控芯片通过发送读取指令,接收传感器返回的数字信号,直接解析得到温湿度、光照度数据;MQ135与灰尘浓度传感器输出模拟信号,通过ADC接口采集,将模拟信号转换为数字信号后,结合校准参数进行转换,得到实际浓度值。为减少垃圾焚烧现场的电磁干扰、粉尘干扰导致的数据波动,采用卡尔曼滤波算法对采集到的原始数据进行滤波处理,提升数据稳定性。以下为SHT30温湿度采集及卡尔曼滤波核心代码:

c
// SHT30温湿度采集函数
void SHT30_Read_Data(float *temp, float *humi)
{
  uint8_t buf[6];
  // 发送测量指令
  HAL_I2C_Master_Transmit(&hi2c1, SHT30_ADDR, (uint8_t*)&SHT30_MEASURE_CMD, 2, 100);
  HAL_Delay(100); // 等待测量完成
  // 读取测量数据
  HAL_I2C_Master_Receive(&hi2c1, SHT30_ADDR, buf, 6, 100);
  // 数据解析
  *temp = (buf[0] << 8 | buf[1]) * 175.0 / 65535.0 - 45.0;
  *humi = (buf[3] << 8 | buf[4]) * 100.0 / 65535.0;
}

// 卡尔曼滤波函数,适用于各类传感器数据滤波
float Kalman_Filter(float input)
{
  static float x_last = 0; // 上一时刻滤波值
  static float P_last = 1.0; // 上一时刻协方差
  float Q = 0.01; // 过程噪声方差
  float R = 0.1; // 测量噪声方差
  float x_now, P_now, K; // 当前滤波值、协方差、卡尔曼增益

  // 预测
  x_now = x_last;
  P_now = P_last + Q;
  // 更新
  K = P_now / (P_now + R);
  x_now = x_now + K * (input - x_now);
  P_now = (1 - K) * P_now;
  // 更新上一时刻数据
  x_last = x_now;
  P_last = P_now;
  return x_now;
}

数据处理过程中,结合SHT30采集的温湿度数据,对MQ135、灰尘浓度传感器的数据进行温度补偿,修正温湿度变化对检测精度的影响;同时将处理后的数据与预设的国家标准限值进行对比,判断是否存在超标情况,为异常报警模块提供触发信号。

4.3 无线通信与显示模块设计

无线通信模块基于ESP8266 WiFi模块,采用UART串口通信方式与主控芯片交互,负责将处理后的监测数据远程传输至云端平台,同时支持接收云端指令,实现系统参数远程配置。软件设计中,首先初始化UART接口,配置波特率为115200bps,设置数据位、停止位、校验位,确保与ESP8266模块通信匹配;然后通过发送AT指令配置ESP8266的工作模式,连接指定WiFi热点,建立与云端平台的TCP连接,实现数据实时上传。以下为ESP8266初始化及数据上传核心代码:

c
// ESP8266初始化,连接WiFi
void ESP8266_Init(void)
{
  HAL_UART_Transmit(&huart1, (uint8_t*)"AT+CWMODE=1\r\n", 12, 1000); // Station模式
  HAL_Delay(500);
  HAL_UART_Transmit(&huart1, (uint8_t*)"AT+CWJAP=\"WiFi名称\",\"WiFi密码\"\r\n", 30, 2000); // 连接WiFi
  HAL_Delay(2000);
  HAL_UART_Transmit(&huart1, (uint8_t*)"AT+CIPSTART=\"TCP\",\"云端IP\",端口号\r\n", 35, 2000); // 连接云端
  HAL_Delay(1000);
}

// 数据上传函数,将监测数据格式化为JSON发送
void Data_Upload(float temp, float humi, float light, float gas, float dust)
{
  char buf[100];
  // 格式化数据为JSON格式
  sprintf(buf, "{\"temp\":%.2f,\"humi\":%.2f,\"light\":%.0f,\"gas\":%.2f,\"dust\":%.2f}\r\n",
          temp, humi, light, gas, dust);
  // 发送数据长度指令
  HAL_UART_Transmit(&huart1, (uint8_t*)"AT+CIPSEND=", 10, 1000);
  HAL_UART_Transmit(&huart1, (uint8_t*)itoa(strlen(buf), (char*)buf_len, 10), 3, 1000);
  HAL_UART_Transmit(&huart1, (uint8_t*)"\r\n", 2, 1000);
  HAL_Delay(500);
  // 发送监测数据
  HAL_UART_Transmit(&huart1, (uint8_t*)buf, strlen(buf), 2000);
}

显示模块基于TFT LCD显示屏,采用SPI通信方式,软件设计主要实现监测数据实时显示、系统状态显示及触摸操作响应。通过编写显示函数,将处理后的温湿度、光照度、有害气体浓度、粉尘浓度等数据,以清晰的格式显示在屏幕上,同时显示系统运行状态(正常、采集异常、通信异常);触摸操作功能支持工作人员手动设置污染物超标限值、校准传感器、重启系统等,提升系统操作便捷性。

第五章 系统测试与结果分析

5.1 测试环境与方案

为验证基于STM32F411CEU6的垃圾焚烧有害物质污染检测系统的功能完整性与性能可靠性,结合垃圾焚烧现场高温、高粉尘、多干扰的实际工况,搭建模拟测试环境与现场测试环境,制定全面的测试方案。测试环境分为实验室模拟环境与垃圾焚烧现场测试环境,实验室环境用于功能模块与基础性能测试,现场环境用于验证系统在实际工况下的运行效果。

实验室模拟环境:温度控制在25±5℃,相对湿度40%-60%,无明显电磁干扰,搭建模拟烟气发生装置,可精确控制二噁英、Hg、HCl等有害物质及粉尘浓度,配备标准检测仪器(精度等级0.1级)作为对比基准;现场测试环境选取某小型垃圾焚烧厂烟气排放口,该焚烧厂日处理垃圾50吨,烟气排放口温度60-80℃,粉尘浓度0.5-5mg/m³,符合系统设计的工作环境要求。

5.2 功能模块测试

功能模块测试采用单独测试与协同测试相结合的方式,重点验证各模块核心功能是否达到设计要求,测试过程中模拟垃圾焚烧现场的基础工况,排除模块间的干扰,确保各模块协同工作正常。

传感器采集模块测试:分别对SHT30、BH1750、MQ135、灰尘浓度传感器进行测试,通过模拟烟气发生装置设置不同浓度的监测参数,记录传感器采集数据,与标准仪器数据对比,验证采集功能的有效性。无线通信模块测试:配置ESP8266模块连接WiFi热点,建立与云端平台的TCP连接,测试数据上传成功率、远程指令接收响应情况。显示模块测试:验证TFT LCD显示屏能否清晰显示各类监测数据、系统状态,触摸操作能否正常响应参数设置、数据查询等功能。异常报警模块测试:设置不同浓度的超标参数,验证声光报警是否准确触发,报警等级划分是否合理。

功能模块测试结果如下表所示,所有模块均能正常实现核心功能,无功能异常,协同工作时数据传输顺畅,报警响应及时,满足设计需求。

表5-1:功能模块测试结果

测试模块

测试内容

测试次数

合格次数

合格率

测试结论

传感器采集模块

多参数同步采集、数据输出

50

49

98%

采集功能正常,偶发数据波动可通过滤波消除

无线通信模块

数据上传、远程指令接收

50

48

96%

通信稳定,少数失败为网络信号干扰导致

显示模块

数据显示、触摸操作响应

50

50

100%

显示清晰,触摸响应灵敏,无卡顿

异常报警模块

超标报警、故障报警

50

50

100%

报警触发准确,等级划分合理,响应及时

5.3 系统性能测试

系统性能测试聚焦检测精度、响应速度、稳定性三大核心指标,结合实验室模拟环境与现场测试环境,全面验证系统在不同工况下的性能表现,测试过程中严格按照预设标准操作,确保测试数据的准确性与客观性。

检测精度测试:在实验室环境下,通过模拟烟气发生装置设置5组不同浓度的监测参数(涵盖温湿度、光照度、有害气体、粉尘),分别用本系统与标准检测仪器进行数据采集,计算两组数据的绝对误差与相对误差,验证检测精度。响应速度测试:记录系统从传感器采集数据到显示模块显示、数据上传至云端的总时间,重复测试50次,取平均值作为系统响应时间。稳定性测试:在实验室环境下让系统连续运行72小时,现场环境下连续运行48小时,记录系统运行状态、数据采集稳定性、通信稳定性,统计故障次数与数据丢失率。

系统性能测试数据如下表所示,各项性能指标均达到设计要求,其中检测精度、响应速度优于预设标准,稳定性良好,能够适配垃圾焚烧现场的复杂工况。

表5-2:系统性能测试结果

性能指标

设计要求

实验室测试结果

现场测试结果

是否达标

检测精度(相对误差)

≤±5%

±3.2%

±4.1%

是

响应速度

≤30s

22.3s

25.7s

是

连续运行稳定性(实验室)

72小时无故障

72小时无故障,数据丢失率0.8%

—

是

连续运行稳定性(现场)

48小时无故障

—

48小时无故障,数据丢失率1.2%

是

数据传输成功率

≥98%

98.5%

97.8%

是

第六章 结论

本文围绕垃圾焚烧有害物质污染检测的实际需求,针对现有监测系统成本高、适配性差、抗干扰能力弱等问题,完成了基于STM32F411CEU6的垃圾焚烧有害物质污染检测系统的研发与测试,全面完成了预设的研究任务,现将主要工作总结如下。

首先,通过梳理国内外研究现状与垃圾焚烧行业污染特征,明确了系统的设计需求,结合我国《生活垃圾焚烧污染控制标准》,确定了系统的性能指标与功能要求,为系统总体方案设计奠定了基础。其次,完成了系统硬件与软件的模块化设计,硬件上以STM32F411CEU6为主控核心,搭建了传感器采集、无线通信、显示报警等七大模块,布局紧凑、成本可控;软件上基于Keil5开发环境,编写各模块程序,融入卡尔曼滤波算法提升数据稳定性,实现了数据采集、处理、传输、显示与报警的全流程功能。最后,搭建测试环境完成系统测试,测试结果表明,系统各功能模块运行稳定,检测精度、响应速度等性能指标均达到设计要求,能够适配中小规模垃圾焚烧现场的复杂工况,为垃圾焚烧污染防控提供了可靠的技术支撑,圆满完成了研究目标。

Logo

智能硬件社区聚焦AI智能硬件技术生态,汇聚嵌入式AI、物联网硬件开发者,打造交流分享平台,同步全国赛事资讯、开展 OPC 核心人才招募,助力技术落地与开发者成长。

更多推荐