ARTICLE · INTELLIGENCE

战地情报 · 详情页

来自尧图项目组的一线实战观察与深度解析

零碳工厂能耗管理与碳核算:基于MyEMS开源能源管理系统的实践复盘

零碳工厂能耗管理与碳核算:基于MyEMS开源能源管理系统的实践复盘

去年底我们团队接到一个电子制造工厂的零碳改造项目,厂长上来就扔了一句话:别跟我讲概念,我就想知道每个车间每小时用了多少度电、每台空压机多花了多少钱、屋顶光伏今天到底发了多少,然后这些东西怎么换算成碳排放。我第一反应是,这不就是一套能源管理系统该干的事吗。后来真正落地的时候才发现,零碳工厂最容易卡住的不是光伏能不能装、不是设备够不够新,而是整个工厂的用能数据根本没法在一个平台上说清楚。我们最后选了“MyEMS开源能源管理系统”作为底座,把电、水、气、蒸汽和光伏数据全部接进来,又从数据驱动了排产、设备启停和光伏调度。这篇文章把从选型到落地、从数据采集到碳核算的全过程做个复盘,给正在评估开源能源管理系统或者准备做零碳工厂改造的同行一个参考。

1. 零碳工厂的需求拆解与MyEMS的定位

1.1 零碳工厂到底需要哪几层能力

很多人理解零碳工厂就是屋顶铺满光伏板,再买点绿证把剩余排放抵消掉,事情就结束了。实际从工程角度看,零碳工厂要解决的是三个递进的问题。

第一是看得清。工厂每天消耗的电、水、压缩空气、蒸汽,这些能源到底流向哪里,每个产品消耗了多少,每个班组在生产高峰用了多少,有没有跑冒滴漏。没有这一层数据,后面所有的优化和核算都是空中楼阁。我们在这个项目里碰到的情况就很典型:厂区配电房里有四块总电表,但车间内部只有极少数设备单独装了电表,问车间主任“这条产线今天能耗多少”,他只能说个大概,拿不出任何可追溯的报表。

第二是管得住。数据有了之后,能不能对能耗异常及时报警,能不能对空压机、中央空调、照明这些公共用能设备做启停优化,能不能把生产成本精确分摊到每个工单。这一步考验的不是采集能力,而是建模能力和控制能力。很多工厂不是不想管,而是以前根本没有工具,只能靠老师傅的经验去判断。

第三是用得绿。光伏、储能、充电桩、绿电接入,这些系统来自不同厂家、协议各不相同,怎么把它们在一个平台上统一监控,怎么根据实时发电量调整厂内负荷,让光伏自发自用的比例尽量高。零碳工厂的关键指标之一就是可再生能源利用率,如果光伏发了电却因为没有协调机制而弃光,那就谈不上零碳。

MyEMS这个开源能源管理系统正好覆盖了这三层。它本身不是单纯的数据采集软件,而是一个具备设备管理、能耗监测、分项计量、成本分析、碳排放追踪、报警运维和报表输出全链条能力的平台。更关键的是,它是开源的,我们可以针对工厂的具体设备协议去做二次开发,而不是反过来被厂商绑住手脚。

1.2 为什么选了开源方案而不是商用系统

在选型阶段,我们其实收到了好几家商用EMS厂商的报价。功能听起来都很全,界面也漂亮,但有一个现实问题:软件授权费加上实施费动辄几十万,而且后续每增加一块电表、每对接一个新设备,都要报价格、走流程、排工期。对于工厂这种现场变化频繁的环境,这种模式太笨重了。

开源系统则走另一条路。代码是开放的,部署环境自己掌控,想改页面、想加功能、想对接私有协议,自己团队就能动手。我把MyEMS的代码结构研究了一下,发现它的模块划分很清晰:数据采集用Python写,前端是JavaScript技术栈,数据库用MySQL,整体跑在Docker里。这意味着一个懂Python、会基本Linux操作的技术人员就能完成部署和二次开发,用人成本比商用系统的顾问要低太多。

当然,开源不等于免费。硬件设备、服务器、网络改造、人员培训这些钱该花还得花,而且开源系统的文档往往没有商业软件那么完善,遇到问题需要自己翻源码、查社区。但对比下来,对于预算有限又希望长期掌控数据资产的中型制造企业,开源方案是性价比最高的选择。

1.3 MyEMS的整体架构与部署形态

我们在项目中把MyEMS部署成了三层结构。

底层是数据采集层。智能电表、水表、流量计、温度传感器、光伏逆变器这些现场设备,通过Modbus RTU/TCP、DL/T 645、BACnet等协议连接到边缘采集网关。Gateway把不同协议的原始数据统一转换成JSON格式,再通过MQTT或者HTTP方式上传到平台层。

中间是平台层。MyEMS服务运行在Docker容器里,后端提供RESTful API,定时任务负责统计、计算和报表生成。数据库里不仅存了原始采集值,还保存了经过清洗、归一化后的统计数据,以及能源模型、分项计量关系等信息。这个设计的好处是,前端查询时不需要实时去读电表,性能压力分散了,历史数据分析也方便。

上层是应用层。我们部署了驾驶舱大屏、管理后台和移动端三个入口。生产主管打开大屏就能看到车间级能耗排名和实时负荷曲线,厂长看的是单位产品能耗和成本趋势,运维人员看报警记录和设备状态。权限体系可以做到一个人只能看到他负责的那部分数据,避免信息泄露。

Docker Compose这个部署方式帮了大忙。传统能源管理软件往往需要专门的服务商来部署,耗时一周还经常遇到环境兼容问题。MyEMS我们只花了一天就完成了环境搭建和基础配置,后面花的时间主要都在设备接入和模型调整上。

2. 核心功能解析:从多协议采集到碳足迹核算

2.1 多协议数据采集是第一步门槛

零碳工厂里的计量设备五花八门。高压柜里的电能表走的是DL/T 645电力规约,车间的智能电表支持Modbus RTU,光伏逆变器用的是Modbus TCP,水表和蒸汽流量计有的走脉冲输出、有的走BACnet。要把这些数据统一收上来,数据采集层必须支持多种协议转换。

MyEMS在这方面做了一个比较聪明的抽象。它在采集网关里定义了一套标准的数据点模型,不管你底层是什么协议,最终都映射成“设备-点位-数值-时间戳”这种结构。这样上层应用不需要关心底层协议差异,只要管好点位映射就行。我们用了一个工业边缘网关盒子,本来只支持Modbus,后来我们给它写了一个小插件去解析光伏逆变器的私有协议,整个过程只花了半天,这在商用系统里几乎不可能这么快。

数据采集的另一个关键是采集频率。对于零碳工厂来说,电力数据至少要做到分钟级采集,光伏和负荷数据最好做到10秒级别以实现动态调度。MyEMS的采集引擎可以配置不同的任务周期,把高频采集任务和低频采集任务分开跑,避免网关负载过高。我们在实践中把电表设置为每1分钟采一次,水表和气体流量计每5分钟采一次,光伏逆变器每10秒采一次,这样既能满足实时监控需求,又不给网关和网络造成压力。

2.2 能源模型与分项计量怎么搭

数据采上来了,但如果只是把几百块电表的数据堆在同一个表里,没有任何管理意义。所以第二步是要建能源模型。

我们按照工厂的组织架构和工艺流程,把整个厂区拆成了几个层级:厂区-车间-产线-重点设备。每个层级挂上对应的计量点,同时区分了生产用能、动力用能、照明用能和暖通用能等分类。MyEMS的分项计量功能可以用树状结构维护这套关系,相当于在系统里搭了一棵“能耗血缘树”。

这套模型的实用价值体现在成本分摊上。工厂生产的休闲零食包装线上,一台包装机的能耗不仅包含自身电耗,还应该分摊空压机提供的压缩空气成本、车间空调的温湿度保障成本。我们通过定义分摊比例,把公共用能按照面积、人数、设备功率等规则分摊到各个产线。以前财务做成本核算要靠人工估,现在系统每天自动产出一张完整的能源成本分摊表,车间主任看到数字心服口服。

还有一个容易被忽略的点:单位产品能耗的计算。要把能耗数据和生产产量关联起来,靠EMS自己是不够的。我们的方案是通过MyEMS的API接口,从工厂的MES系统里实时读取产量数据,在平台内部计算“万件产品综合能耗”“单位产品电耗”等指标。这项工作虽然前期需要做接口联调,但一旦跑通,管理人员每天看到的就不只是“今天用了多少电”,而是“今天每件产品花了多少能源成本”,对生产优化有直接指导作用。

2.3 碳排放核算的逻辑与数据来源

零碳工厂必须有碳排放数据,但碳核算到底怎么算,很多项目的实施方自己也说不清。实际上,国际通行的做法是把排放分成三个范围:范围1指企业直接燃烧燃料产生的排放,比如锅炉烧天然气、柴油发电机;范围2指外购电力、热力对应的间接排放;范围3指上下游供应链产生的排放。

MyEMS的碳排管理基本覆盖了范围1和范围2,这是工厂自己能够控制的部分。核算逻辑遵循一个通用公式:活动数据乘以排放因子。活动数据来自我们采集的天然气用量、外购电量等,排放因子则来自公开的电网排放因子和燃料排放因子。系统里可以维护因子库,不同地区、不同年份的因子都能配置,这样核算结果就有了可溯源性。

实际操作中有一个用户体验不错的功能:碳排放日报。系统每天自动汇总前一天的电耗、气耗、水耗,结合排放因子生成当日碳排放量,并且以曲线方式展示趋势。工厂负责人每天早上打开手机就能看到昨天的碳排情况,比月底出报告要直观得多。范围3的数据因为涉及供应商,MyEMS不能直接获取,我们保留了一部分手工填报和Excel导入的接口,用人工方式补齐。

2.4 可视化报表与驾驶舱配置

数据最后要变成决策依据,报表和驾驶舱是直接触达管理层的界面,做不好整个项目都会前功尽弃。MyEMS自带了一套报表模板,包括能耗统计报表、能源成本报表、碳排放报表、设备运行报表等,同时也支持用户自定义。

我们在项目中重点做了三个报表。第一个是车间能耗排行榜,按综合能耗对各个车间排序,让管理者一眼看出哪里是“能耗黑洞”;第二个是峰谷平电费分析,把每天峰段、谷段、平段的用电量和电费分开统计,指导工厂把高能耗工序尽量安排在谷段;第三个是光伏发电与自用率报表,精确计算每天的发电量、上网电量、自用电量和自用率,这是衡量光伏项目经济性的关键指标。

驾驶舱大屏是给领导汇报用的,我们基于MyEMS的数据API做了一套定制页面,把全厂总电耗、光伏发电功率、碳排总量、设备报警状态四个核心指标放在一屏上。领导来参观的时候,不需要翻报告,在门口抬起头就看到实时数字,项目存在感和说服力立马不一样。

3. 零碳工厂实操落地全过程

3.1 前期调研:摸清家底再动工

任何能源管理系统都不能跳出物理设备凭空运转。项目启动后,我们做的第一件事不是装服务器,而是花了两周时间做现场调研。调研内容包括:配电室一次系统图、厂区用电负荷清单、各车间面积和用能设备铭牌、光伏逆变器型号、水气管路走向、现有PLC和DCS系统的点位表。

这个过程看起来粗暴,却决定了后面所有工作的质量。我们遇到的第一个坑就是配电系统图与现场实际不一致,图纸上标注的三号车间进线开关实际带着四号车间的空调负荷。如果没有核清楚就做数据建模,那后面分析的“三号车间能耗”会一直带着四号车间的错误数据。

调研产出特别重要:一份准确的电表点位表、一份网络拓扑图、一份设备清单和数据采集需求表。这些文档是后续配置系统的基础,不要图省事跳过去。

3.2 硬件部署与网络规划要点

硬件部署包括三块:计量表计、采集网关、网络链路。

计量表计方面,原有配电房总表我们是直接接入的,车间级缺表位的地方新增了一批三相智能电表,精度选择0.5S级,既能满足日常管理需要,也符合节能量审核的基本要求。水表和蒸汽流量计跟电表不同,GPS模块要单独采购,价格不低,所以在满足分区计量的前提下没有过度部署,避免成本失控。

采集网关我们选了一款支持多种协议转换的工业网关,安装在配电房弱电间,用4G+有线双链路方式连接到服务器。这里有个经验:网关的IP地址和管理端口一定要在施工阶段就梳理清楚,贴上标签,否则后期运维找人要IP地址会让你崩溃。

网络规划上,采集网关和服务器之间建议单独划分一个VLAN,与办公网络隔离。这不仅是为了安全,更是为了避免日常办公大流量占用能源数据带宽。现场施工用的网线我都要求用屏蔽网线,毕竟配电房里电磁干扰很重,工业环境稳定性永远优先。

3.3 MyEMS安装与基础配置

软件环境方面,我们在一台物理服务器上部署了Ubuntu Server系统,然后安装Docker和Docker Compose。

MyEMS的安装过程比较直接:从代码仓库拉取源码,配置.env文件里的数据库连接、时区、语言等参数,执行docker compose up命令启动整个服务栈。整个初始化过程在半天内完成。这里需要提醒的是,时区一定要设置为Asia/Shanghai,否则后面所有报表的时间戳都会错位,我们刚开始就吃了这个亏,看到早上8点的数据跑到了凌晨2点,排查了很久才发现是时区没有配置。

初始化完成后,要做的第一件事是创建组织结构和用户权限。我们按照工厂实际部门建了“生产部”“动力部”“厂务部”三个组织,每个组织下设置不同的用户角色。权限这块不能偷懒,一旦后面接入了设备数据,再调整权限就需要把每个用户重新核对一遍,工作量翻倍。

3.4 设备接入与数据清洗

设备接入是整个项目里最耗时、最容易出问题的环节,没有之一。

我们先把配电房里的大表逐一配置到MyEMS的计量器具台账中,包括设备编号、资产名称、安装位置、规格型号、倍率参数。倍率是个特别关键的数据,电流互感器的变比如果配置错误,采集上来的数据会差出几十倍。我们现场核对了每一个表计对应的互感器变比,确保万无一失。

然后是点位映射。MyEMS控制台中需要添加计量器具,并且把器具的点位绑定到采集值。这个过程很繁琐,一块电能表通常有电压、电流、有功功率、无功功率、电能等十多个点位,我们需要把有用的点位逐个选出来。为了提高效率,我们写了一个脚本批量导入点位映射,而不是手工一个一个点,这是后来总结出来的经验,可以节省一半时间。

数据接入后必须做校验。我们把系统读取的数值和配电房电表液晶屏上的读数逐块比对,误差超过2%的重新排查。结果发现有两块电表是互感器方向接反,导致电量远小于实际值。靠数据比对才把这个“埋雷”排除掉。任何数据上了系统之前都要做这种模拟比对,别等报表跑完才发现数据不对,那就为时已晚。

3.5 碳排放报告与自动化报表配置

设备数据稳定后,开始配置碳排因子和报表模板。

我们在系统里面维护了当前年度的电网排放因子、天然气排放因子,并设置了默认能源类型:电力、天然气、水、压缩空气。每个能源类型对应一个单位,电力是kWh,天然气是m³。碳排放报表可以按天、按月汇总,折算出当期的碳排总量。

自动化报表同样要做的:日报、周报、月报三套。日报面向车间主管,关注当日能耗和异常报警;周报面向厂务经理,关注趋势和节能机会;月报面向厂长,关注成本、碳排和可再生能源使用率。我们把三套报表的模板都配好,并且设置了定时任务,每天早上7点自动发送到领导邮箱。系统上线一个月后,厂务负责人告诉我,以前月底加班3天做能源报表,现在这件事情彻底省了。

3.6 节能优化闭环与光伏联动

零碳工厂不能只记录数据,还要让数据反哺运行。

MyEMS的报警模块可以对接告警信息和实时能耗,我们设置了几个实用报警规则:车间瞬时功率超过限定值触发报警、空压机运行时间超过阈值提醒保养、光伏发电功率和负荷功率差值过大提醒启动储能调峰。这些规则大幅降低了人员巡视频次。

光伏联动方面,我们做了两个层面的工作。第一层是数据打通:把光伏逆变器通过Modbus TCP接入MyEMS,系统可以实时看到每台逆变器的发电量、直流侧电压电流和交流侧输出功率。第二层是控制联动:MyEMS检测到光伏输出功率提升时,通过API向厂务系统发送指令,提前启动蓄冷罐制冷或给储能充电,把多余的光伏电量就地利用。这样做下来,工厂的光伏自用率从改造前的不到70%提升到了90%以上,弃光率大幅下降。

4. 一个零碳工厂改造案例复盘

4.1 项目背景与基线数据

为了把实施过程讲得更具体,我拿一个真实做过但脱敏处理的案例来说明。某电子零部件制造园区,建筑面积约4.5万平方米,包含注塑车间、SMT车间、组装车间、动力站房和办公区。主要用能设备是注塑机37台、空压机8台、中央空调系统2套、表面处理线3条。

改造前,园区年外购电约1800万kWh,天然气约20万m³,折算碳排放约1.1万吨CO₂。园区已经安装了2.5MW屋顶光伏,但光伏数据只看逆变器自带屏幕,每天需要人工抄表,而且自用率不高,丰水期中午有20%以上电量上网。

项目目标是在不削减产能的前提下,通过精细化管理实现年综合能耗下降8%,光伏自用率达到90%,同时建立可核查的碳排放台账。

4.2 实施路径与投入产出

整个项目实施周期共12周。第1到2周完成现场调研和计量方案设计;第3到4周完成硬件安装和网络改造;第5周部署MyEMS并完成基础配置;第6到8周完成全部设备接入和数据校验;第9到10周配置碳排计算、报表和报警;第11到12周进行试运行和人员培训。

硬件投入包括新增电能表46块、水表12块、蒸汽流量计4台、采集网关6台、服务器1台,加上材料和施工,总投入约38万元。软件方面,MyEMS本身开源免费,我们投入的二次开发和实施人力属于工程服务成本。相比商用方案报价,这个项目整体费用节省了60%以上。

4.3 改造后的关键数据

试运行稳定后,我们统计了连续六个月的数据与基线对比:

指标改造前改造后变化
年化综合能耗2095吨标煤1912吨标煤-8.7%
单位产值能耗0.74kg标煤/万元0.65kg标煤/万元-12.2%
光伏自用率71%92%+21%
可再生能源占比13.5%22.4%+8.9%
年碳排放量1.1万吨CO₂0.94万吨CO₂-14.5%

这个结果不是靠一两个大动作实现的,而是很多个小优化叠加出来的。比如,排产系统根据峰谷电时段把高能耗的注塑工序往谷段挪,削峰填谷节省电费约22万元/年;空压机根据用气压力反馈自动启停,避免了两台空压机同时空载运行,节电约15万kWh/年;中央空调系统通过室内外温湿度联动控制,缩短了冷冻主机的高负荷运行时长。

碳排放下降的14.5%,一部分来自能效提升,另一部分来自光伏自用率提高后减少了外购电。要真正走到零碳,还差最后一块拼图:剩余碳排放需要通过绿电交易或者碳抵消来实现,那就要看企业自身的减碳战略了。

5. 实施中的常见问题与排查技巧

5.1 数据采集不稳定怎么办

这个项目里最让人头疼的就是数据断点。某一天报表里某个车间电量突然从几千kWh变成几十,第一反应往往以为是系统出错了,排查到最后才发现是网关掉线或者通讯链路干扰。

我们最终积累了一套排查顺序:先看网关在线状态,再看设备通讯日志,再检查Modbus地址是否被其他设备占用,最后才怀疑数据转换逻辑。MyEMS里有一个设备在线率统计功能,可以按天查看每台设备的上报次数,低于阈值的设备自动标红。每天早上看一眼标红清单,就知道前一天哪些设备在偷懒。

如果是现场干扰问题,处理办法就是把通讯线从动力电缆沟里挪出来,或者把波特率降低。Modbus 9600波特率虽然慢,但抗干扰能力比19200好很多,稳定优先。

5.2 采集值和现场表计读数对不上

项目实施期间,我们发现某车间电量比配电柜上的表计读数低了3%,整常见误差应是2%以内,所以不可能是正常偏差。排查后发现是一台电表的电流互感器变比在建模时配错了,写成了200/5,实际应该300/5。数据差距直接差出三分之一。

这类问题的根因往往不是采集设备问题,而是“台账信息不准确”。最好的办法是在做点位映射前,亲自到现场核对每块表的互感器铭牌,不要只看图纸。图纸要么没有更新,要么压根就没有标注变比。

5.3 光伏数据无法读取

光伏逆变器厂商对外号称支持Modbus TCP,但实际使用时发现它的寄存器地址表很奇怪,是按“更高级别的扩展协议”排列的,和MyEMS自带的模板对不上。我们的解决办法是抓取逆变器的通讯报文,逐个寄存器去读,把关键数据点(直流功率、交流功率、发电量累计值、机器温度)记录下来,然后写了一个自定义采集插件,挂在网关里运行。

所以我的建议很实在:接光伏设备前,先向厂家要一份完整的“Modbus寄存器地址表”和“数据类型说明”。有的厂家里技术人员都不知道这事,那就自己用Modbus扫描工具去扫一遍,虽然累但可靠。对于已经选定逆变器型号的项目,最好在采购前明确要求厂家开放通讯接口,这应该作为采购合同附件写进去。

5.4 人员操作不熟练

系统上线后最大的风险不是技术问题,而是使用率低。我们项目刚上线两周,登录记录显示只有厂务主任一个人在用,其他人都在观望。MD,这让我意识到,光有系统不行,还得把人教会、让人愿意用。

我们的解决办法是做了三轮培训。第一轮是大课,给车间主任和班组长讲系统和基础操作;第二轮是小班,专门教设备员怎么添加设备点位、怎么处理报警;第三轮是实战,让主管自己从系统里拉一份周报发给领导班子。经过这三轮,系统才真正用起来。

不要低估“习惯”这个词的重量。技术问题可以用代码解决,人的习惯只能靠流程和激励去培养。

6. 一些实践中的经验与补充建议

复盘整个项目,我最大的体会是:MyEMS这类开源能源管理系统不缺功能,缺的往往是使用它的人有没有想清楚自己要什么。不要拿到系统就开始配设备,先花时间梳理清楚工厂的能耗模型和组织架构,一切都围绕最终报表来设计。

如果接下来有同行要在自己的工厂里做类似的零碳项目,我有几个建议可以直接抄作业。

第一个建议,把一次性项目改成持续运营机制。零碳工厂不是交钥匙工程,数据采集、指标分析、优化策略都是动态迭代的。最好在工厂内部指定一个兼职系统管理员,负责每日巡检数据质量和报警处理。这个人不用很懂技术,但要对数据敏感,能在第二天早上发现前一天电量集体掉坑的问题。

第二个建议,尽早打通生产计划和能耗数据。只做能耗监测的EMS价值有限,真正厉害的是把MES和EMS打通,让排产时直接看到能耗成本维度。我们在项目后半程接入了MES的产量数据,单位产品能耗这个指标立刻变得有意义,节能奖罚也有力了。

第三个建议,碳核算的数据口径要提前确认清楚。排放因子选哪一年的、外购电力是否包含线损、天然气热值按低位还是高位,这些参数不同会使结果差出百分之十几。每一项都要编制一份计算说明文档,让未来接手的人能看懂。

第四个建议,不要追求一步到位把全厂几千个点位全部接入。先接入电、然后水气、再特殊设备,每个批次稳定运行两周后再继续。以上流程跑一圈下来,系统覆盖率达到90%左右,数据质量稳定,你会在这套开源系统里真正找到控制感。这套方案投入不算大、完全自己可控,是我们目前做过最有性价比的零碳基础工程。如果你手上正好有工厂在做零碳规划,先从一套可靠的能耗数据底座开始,大概率不会走弯路。

RELATED READING

延伸阅读

更多一线实战笔记与深度复盘,助您持续精进