循环流化床中的实时质量流量估计
立即解锁
发布时间: 2025-08-22 02:12:32 阅读量: 2 订阅数: 7 


数据挖掘进展:应用与理论方面
### 循环流化床中的实时质量流量估计
#### 1. 引言
在循环流化床(CFB)技术中,质量流量(g/s)参数在建模和控制方面起着至关重要的作用。由于通常无法直接测量质量流量,因此对其进行估计成为一个重要且具有挑战性的问题。而且,为了实现控制目的,质量流量的估计需要以实时模式提供,所以开发技术的在线方面受到特别关注。
燃料供给系统的主要组成部分包括:
1. 燃料箱
2. 进料螺杆
3. 混合螺杆
秤位于燃料箱下方,秤的读数以及进料和混合螺杆的速度(rpm)会以电子形式立即在控制系统中可用。
系统有两个主要运行阶段:
1. **燃料供给阶段**:在此期间,新的燃料被送入燃料箱,同时燃料消耗也在继续,这会导致燃料质量信号急剧增加。
2. **燃料消耗阶段**:此时燃料仅被消耗或送入锅炉,对应于斜率线阶段。控制系统通过设置二进制标志“CLOSED”为0或1来明确通知供给的开始和结束。
燃料消耗过程并非简单的分段线性。燃料供给速率取决于燃料箱中的燃料量,燃料箱中的燃料越多,对下层燃料的压力就越大,在进料螺杆速度相同的情况下,燃料供给速率也就越高。因此,即使假设燃料是均匀的,质量流量过程也具有非零的二阶导数。
除了与压力相关的二阶现象外,还有许多其他因素影响燃料消耗的即时速率:
1. 进料螺杆速度的变化,这在视觉上表现为质量测量斜率的变化。
2. 燃料的不均匀性,如燃料颗粒大小不同、不同燃料的不均匀混合。
3. 燃料的急剧变化,例如一种燃料在底部,另一种在顶部且未混合,这会产生类似于进料螺杆转速变化的效果。这些因素给CFB的控制带来了重大挑战,因为它们会引发难以控制的瞬态过程。
燃料供给系统是非刚性的,容易受到震动影响。秤无法补偿燃料子系统部件的可能移动,因此,测量的燃料仓质量信号受到多种力的影响。除了实际质量外,测量信号中至少还存在:
1. 由进料和混合螺杆旋转引起的燃料子系统部件振动导致的振荡,这些振荡的频率与螺杆的旋转频率相同。
2. 由于进料螺杆中燃料颗粒堵塞而出现的严格向上的峰值,这会给燃料供给子系统带来短期冲击。
如果信号没有振动和堵塞伪影,那么瞬时质量流量可以通过对燃料质量测量值求导来简单近似。然而,由于真实质量信号与噪声混合在一起,在求导之前需要将与质量相关的成分从噪声中分离出来。
此前有一些尝试解决在线质量流量估计问题的方法,但这些方法尽管采用了复杂先进的方法,但不够准确和快速。这些方法主要围绕向上伪影检测策略,例如非参数方法寻找峰值伪影速度较慢,参数方法可靠性较低。本文提出的方法通过仅跟踪燃料质量测量的下边缘来提取与质量相关的信号成分,避免处理向上的峰值伪影,并结合进料螺杆的转速读数,以实现对燃料供给速率变化的快速响应,且不依赖于燃料的均匀性。
#### 2. 方法描述
区分全局过程时间和局部过程时间。全局过程时间是自操作启动以来经过的时间,而局部时间是自上一次燃料消耗阶段开始以来经过的时间,即每次新的消耗阶段开始时,局部时间重置为零。在计算中,始终使用局部时间,用 $t$ 表示。
假设燃料仓质量测量值用 $m(t)$ 表示,进料螺杆速度的测量值用 $rpm(t)$ 表示,称为瞬时或即时速度。为了平滑 $rpm$ 信号以减少噪声影响,通常使用进料螺杆速度的估计值 $\widehat{rpm}(t)$,其计算方式为:
$\widehat{rpm}(t) = \frac{1}{N_{rpm}} \sum_{\tau = t - N_{rpm} + 1}^{t} rpm(\tau)$
在每个时间样本(除非即时 $rpm$ 等于零),当前 $rpm$ 值 $\widehat{rpm}(t)$ 估计为最后 $N_{rpm}$ 个时间样本的即时 $rpm$ 值的平均值。为此,在内存中存储一个最大大小为 $N_{rpm}^{max}$ 的队列,用于存储最后 $N_{rpm}$ 个即时 $rpm$ 值,并在操作过程中不断更新。
如果当前即时 $rpm$ 降至零,则通过将过去 $rpm$ 值的队列清零,将估计的 $\widehat{rpm}(t)$ 也硬性设置为零。由于噪声影响,测量的即时 $rpm$ 可能为负或即使实际 $rpm$ 为零也显示小的正值,因此将测量的 $rpm$ 值在小于或等于0.062 rpm 时硬性阈值设置为零,这是通过经验确定的。
该方法的核心是跟踪燃料仓质量测量的下边缘,这样可以在忽略仅向上出现的伪影的情况下近似真实质量信号,无需采用峰值伪影检测策略。
引入当前最低采样点的概念,即自上一次消耗阶段开始以来观察到的燃料仓质量测量的最低值点。用 $t_l(t)$ 表示观察到新的最低点的时间,它本身是时间的函数。当新的消耗阶段开始时,当前最低点初始化为该阶段中 $m(t)$ 的第一个值,即 $m(1)$,并始终存储在内存中。每次出现新的最低点时,它会替换内存中的旧值。
如果 $t_l - t_l(t - 1) \geq \Delta t_{min}$($\Delta t_{min}$ 是预定义的阈值),则计算局部质量流量估计值:
$k(t) = \frac{m(t_l) - m(t_l(t - 1))}{t_l - t_l(t - 1)} \frac{1}{T_s}$
从几何角度解释,在先前和当前最低点之间绘制一条假设线,局部质量流量计算为该线的斜率乘以采样率 $f_s = \frac{1}{T_s}$(Hz),其中 $T_s$ 是采样时间间隔。这个估计值是在相对较短的时间间隔内计算的,通常被认为不可靠,因此称为局部估计值。新计算的局部 g/s 估计值记录到最大大小为 $N_k^{max}$ 的队列中,该队列包含过去 $N_k$ 个局部 g/s 估计值。如果队列已满,最旧的值将被最新的值推出。
如果不满足 $t_l - t_l(t - 1) \geq \Delta t_{min}$ 条件,算法的执行就像没有计算新的局部 g/s 一样。使用 $\Delta t_{min}$ 参数是为了确保在全局 g/s 计算中仅使用统计上可靠且合理的局部 g/s 估计值,这在局部 g/s 队列较小时尤为重要,因为此时全局 g/s 估计对队列中每个单独的局部 g/s 估计值过于敏感。
用 $t_u(t)$ 表示最后一次计算新的局部质量流量估计值并更新最新 g/s 估计值队列的时间,此时进料螺杆速度的估计值被记录下来,称为最后/先前的信息性 rpm,用 $\widehat{rpm}(t_u(t))$ 表示,初始值为零。
在消耗阶段,当前全局 g/s 估计值计算为队列中存储的局部质量流量估计值的加权和:
$\widehat{k}(t) = \left| \frac{\sum_{i = 1}^{N_k} k_i w_i}{\sum_{i = 1}^{N_k} w_i} \right|$
其中,权重 $w_i$ 是计算队列中相应局部质量流量 $k_i$ 时的时间间隔,即斜率为 $k_i$
0
0
复制全文
相关推荐








