大约在一年前,我在做可再生能源制氢方向的课题时,第一次接触到“并离网风光互补制氢合成氨系统容量-调度优化分析”这个命题。当时最大的困惑并不是模型本身有多复杂,而是完整复现一篇高质量论文的代码,远比想象中要困难——尤其是当优化问题涉及Cplex求解器、Matlab建模、容量配置与调度策略的双层耦合时,任何一个环节出了偏差,结果就完全对不上。这篇博文我打算用一整篇的篇幅,把整个项目的复现思路、模型构建、Cplex求解细节和调试心得完整记录下来。如果你是正在做类似论文复现的研究生,或者是刚进入综合能源系统优化领域、想搞清楚风光制氢合成氨系统到底怎么建模仿真的工程师,这篇文章应该能帮你省下大量试错的时间。
1. 这个系统为什么值得优化:制氢合成氨的能源匹配困境
1.1 风光互补制氢的底层逻辑
先把这个系统的物理图景说清楚。所谓“风光互补制氢”,就是把风力发电和光伏发电的输出作为能源输入,驱动电解槽把水电解成氢气和氧气,氢气再与氮气在合成氨装置中反应生成氨。氨本身是化肥工业的基础原料,同时近年来也被视为一种极具潜力的绿氢载体——储运比纯氢容易得多,既能直接用作燃料,也能通过裂解重新释放氢气。
这里有个核心问题:风光出力天然具有波动性和间歇性,而电解槽和合成氨装置又都希望相对稳定地运行,两者之间天然存在矛盾。光伏晚上不发电,风电有时候一阵强一阵弱,如果只靠单一电源,电解槽的利用率会很难看。风光互补的意义就在于,用风电和光伏在时间尺度上的互补特性来平滑整体出力曲线——白天光伏强的时候风电可能较弱,夜间光伏归零但风电往往更稳定,两者叠加能让电解槽的输入功率波动小一些。
但“小一些”远远不够。要真正解决波动问题,必须引入储能环节,最常见的就是储氢罐和蓄电池。储氢罐可以把风光大发、电解槽满负荷运转时多产出来的氢气存起来,等到风光出力不足时再供给合成氨装置;蓄电池则用于平抑更短时间尺度内的功率波动,保证系统电气侧的稳定。
1.2 并网与离网的本质区别
这个系统的第一个关键决策点就是:系统要不要连电网?标题里的“并_离网”四个字,指的就是对并网型和离网型两种拓扑分别做优化分析。
并网模式下,系统与外部电网存在功率交换。风光出力大于负荷需求时可以向电网售电,出力不足时则从电网购电。这等于给系统加了一个无限容量的“缓冲池”,调度自由度大幅提升,经济性优化的空间也更大。但问题在于,并网模式下的“绿色”属性会被稀释——如果购来的电来自火电,那产出的氢和氨严格来说就不能算作百分之百的绿氢绿氨。
离网模式下,系统完全依靠自身风光资源供电,电网只是备用或者完全不参与功率平衡。这种模式对容量配置提出了严苛要求:如果风电光伏装机容量配小了,系统就会频繁面临功率缺额;配大了,又会出现大量弃风弃光,经济性急剧下滑。容量配置和调度策略在这种模式下深度耦合——你不能先定容量再优化调度,因为最优调度结果反过来会影响容量配置决策。
很多初学者容易把容量优化和调度优化当成两个独立的问题分别处理,这正是复现这类论文最容易踩的大坑。
1.3 容量-调度为什么必须联合优化
简单说,容量配置解决的是“建多大”的问题,调度策略解决的是“怎么运行”的问题,但这两个问题的目标函数高度耦合。如果你先把容量定死了,再做调度优化,那么你得到的只是一个“在给定容量下尽量跑得好”的结果,而不是全局最优。
举个生活中的例子:你决定买一辆车,是先根据预算和用车场景决定买什么车型(容量配置),再在日常使用中决定怎么开省油(调度优化)。但如果你一开始车型就选错了——比如常年市区通勤却买了大排量越野车——那无论你怎么优化驾驶习惯,油耗也不可能低。容量配置的错误,是无法通过调度优化来弥补的。
在风光制氢合成氨系统里同理。风机台数、光伏板面积、电解槽功率等级、储氢罐容积、合成氨装置规模,这些容量决策一旦确定,往往就是20年甚至更长时间的投资锁定。而在系统运行时,每个小时的设备出力分配、储氢罐充放策略、是否购电售电,都是调度层面要解决的问题。只有把两层问题纳入同一个优化框架,才能让投资决策和运行策略真正匹配。
需要模型API调用? 免费领10W Token,多模型网关一键接入 Claude、DeepSeek 等主流模型。
2. 优化模型的数学表达:从物理约束到目标函数
把物理系统翻译成数学模型,是整篇论文复现中最核心也最枯燥的环节。这个环节出错,后面所有代码和结果都是空中楼阁。
2.1 设备建模:风电、光伏、电解槽、储氢罐、合成氨装置
先逐个设备过一遍数学模型。风电出力的经典表达是功率曲线法,给定风速数据,通过风机厂商提供的功率曲线插值得到输出功率;光伏出力则采用标准的光照-温度模型,考虑太阳辐射强度和环境温度对组件效率的影响。这两个模型相对成熟,复现时直接用论文给出的参数即可。
电解槽建模是整个系统中比较微妙的环节。理想化处理时,电解槽可以被看作一个可调功率范围有限的负载单元——比如额定功率的10%到100%之间可以调节
