| 123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109 |
- # ==============================================================================
- # RO膜污染监控与CIP预测系统配置文件 - v3.0
- # 基于机理模型 ΔP(t) = ΔP₀ + k × t 的压差变化率分析
- # ==============================================================================
- global_parameters:
- # 数据源文件的路径和名称
- pickle_file_path: "/Users/wmy/data/Pycharm_Project/jkhj/jkhj_test1/shuangmo/wmy/reverse_osmosis_反渗透/historical_sensor_data_1years.pkl"
-
- # 【核心】时间尺度配置
- # 'D' = 天, 'H' = 小时, 'min' = 分钟
- aggregation_frequency: 'H'
- # k值计算相关参数
- k_calculation_days: 7 # 计算k值的回溯天数
- k_calculation_window: 720 # 滑动窗口大小(数据点数,建议30天=720小时)
-
- # 数据质量控制
- enable_outlier_removal: true # 是否启用异常值清理
- outlier_std_threshold: 3 # 异常值检测标准差阈值
-
- # 观察期设置
- observation_period_hours: 1080 # CIP观察期(小时),默认45天(1.5个月)
-
- # 趋势分析参数(新增)
- trend_analysis_window: 360 # 趋势分析窗口大小(数据点数,建议15天=360小时)
- trend_slope_threshold: 0.001 # 趋势斜率阈值,超过此值认为有明显趋势
- min_rising_duration: 30 # 最小持续上升时间点数(建议30小时),达到此值认为趋势稳定
-
- # 数据分割时间点(用于历史/未来数据划分)
- data_split_time: '2025-08-05 10:00:00'
- # ==============================================================================
- # 需要监控的指标清单: 这是一个列表,您可以添加任意多个监控任务。
- # ==============================================================================
- metrics_to_monitor:
- # --- 任务1: RO1一段压差监控 ---
- - name: "RO1-Stage1-Pressure"
- display_name: "RO1一段-压差趋势"
- description: "基于机理模型监控RO1一段膜组的污染速率,预测CIP需求"
- enabled: true
-
- # 目标传感器
- target_sensor: "C.M.RO1_DB@DPT_1"
-
- # 【核心】k值污染速率分类阈值 (基于历史数据百分位数)
- k_percentiles:
- safe: 75.0 # 安全阈值:k值低于此值时系统安全
- monitor: 85.0 # 监控阈值:超过此值需要密切关注
- alarm: 98.0 # 预警阈值:超过此值建议考虑CIP
- # --- 任务2: RO1一段电导监控 ---
- - name: "RO1-Stage1-Conductivity"
- display_name: "RO1一段-电导趋势"
- description: "监控RO1一段产水水质的恶化速率,检测膜性能衰减"
- enabled: true
-
- target_sensor: "C.M.RO1_Cond_CS@out"
-
- k_percentiles:
- safe: 75.0
- monitor: 85.0
- alarm: 98.0
- # --- 任务3: RO1二段压差监控 (可选) ---
- - name: "RO1-Stage2-Pressure"
- display_name: "RO1二段-压差趋势"
- description: "监控RO1二段膜组的污染速率"
- enabled: false # 默认禁用,根据需要启用
-
- target_sensor: "C.M.RO1_DB@DPT_2"
-
- k_percentiles:
- safe: 75.0
- monitor: 85.0
- alarm: 98.0
- # ==============================================================================
- # 配置说明
- # ==============================================================================
- # 1. aggregation_frequency: 数据聚合频率
- # - 'H': 小时级别,适合精细分析
- # - 'D': 日级别,适合长期趋势
- # - 'min': 分钟级别,适合实时监控
- #
- # 2. k_percentiles: 基于历史数据统计的阈值设定
- # - safe: 75%分位数,膜污染处于正常范围
- # - monitor: 85%分位数,需要关注但不需要立即行动
- # - alarm: 98%分位数,建议考虑CIP清洗
- #
- # 3. 机理模型核心思想:
- # - ΔP(t) = ΔP₀ + k × t
- # - k值代表膜污染速率 (压差变化率/时间)
- # - k值越大,污染速度越快,越需要CIP
- #
- # 4. 外部数据接口使用:
- # from main_simple import analyze_external_pressure_data
- # result = analyze_external_pressure_data('config_simple.yaml', 'RO1-Stage1-Pressure', future_data)
- #
- # 5. 趋势分析参数说明:
- # - trend_analysis_window: 分析趋势时考虑的历史数据点数
- # - trend_slope_threshold: 判断上升/下降趋势的斜率阈值
- # - min_rising_duration: CIP信号需要的最小连续上升点数
- #
- # 6. CIP判断逻辑改进:
- # 新版本不只看k值大小,而是综合考虑:
- # - k值是否超过监控阈值
- # - 是否有持续的上升趋势
- # - 上升趋势维持了足够长的时间
- # 只有三个条件都满足,才会发出CIP信号
|