«上一篇 下一篇»
  计算机工程  2021, Vol. 47 Issue (3): 17-28  DOI: 10.19678/j.issn.1000-3428.0057763
0

引用本文  

郭佳程, 宁德军, 李泱丞, 等. 基于区块链的可信分布式能源共享网络研究[J]. 计算机工程, 2021, 47(3), 17-28. DOI: 10.19678/j.issn.1000-3428.0057763.
GUO Jiacheng, NING Dejun, LI Yangcheng, et al. Research on Trusted Distributed Energy Sharing Network Based on Blockchain[J]. Computer Engineering, 2021, 47(3), 17-28. DOI: 10.19678/j.issn.1000-3428.0057763.

基金项目

华东电网科技项目“泛在电力物联网时代审计业务人机互联初步研究”(Y942921E01)

作者简介

郭佳程(1995-), 男, 硕士研究生, 主研方向为区块链技术与应用;
宁德军, 正研级高级工程师、博士;
李泱丞, 学士;
沈建, 工程师、硕士

文章历史

收稿日期:2020-03-17
修回日期:2020-05-09
基于区块链的可信分布式能源共享网络研究
郭佳程1,2 , 宁德军1 , 李泱丞3 , 沈建1     
1. 中国科学院上海高等研究院, 上海 200120;
2. 中国科学院大学 电子电气与通信工程学院, 北京 100049;
3. 中南大学 计算机学院, 长沙 410083
摘要:分布式能源共享是能源互联网发展的重要方向,而现有分布式能源供需共享网络普遍存在能源主体间难以达成信任及能源消耗高等问题。在能源共享网络中建立互信机制,基于区块链技术设计可信分布式能源共享网络,利用基于侧链技术的三层网络协同工作链码体系实现网络性能提升和主体隐私保护,通过分布式能源动态调度机制降低能源损耗并提高整体能源利用率。实验结果验证了该网络在跨链价值交换、能源传输与动态调度关键任务中的有效性与安全性,并表明其在系统吞吐量、能源调度效率和隐私保护等方面均具有较好的性能表现。
关键词区块链    侧链    链码    分布式能源    能源调度    
Research on Trusted Distributed Energy Sharing Network Based on Blockchain
GUO Jiacheng1,2 , NING Dejun1 , LI Yangcheng3 , SHEN Jian1     
1. Shanghai Advanced Research Institute, Chinese Academy of Sciences, Shanghai 200120, China;
2. School of Electronic, Electrical and Communication Engineering, University of Chinese Academy of Sciences, Beijing 100049, China;
3. School of Computer Science and Engineering, Central South University, Changsha 410083, China
Abstract: Distributed energy sharing is a important direction for the development of the energy Internet.However, the existing distributed energy sharing networks are generally faced with problems such as high energy consumption and difficulties in achieving trust between energy supply and demand subjects.In order to establish a mutual trust mechanism in the energy sharing network, this paper proposes a trusted distributed energy sharing network based on blockchain technology.The network uses a three-layer network cooperative work chaincode system based on sidechain to achieve network performance improvement and privacy protection of the subject.Then a dynamic scheduling mechanism for distributed energy is used to reduce energy consumption and improve overall energy utilization.Experimental results demonstrate the effectiveness and security of the proposed network in the key tasks of cross-chain value exchange, energy transmission and dynamic scheduling, and it excels in system throughput, privacy protection, and energy scheduling efficiency, etc.
Key words: blockchain    sidechain    chaincode    distributed energy    energy scheduling    
0 概述

随着能源互联网的发展,将风电、光伏发电等分布式能源发电并入电网系统是必然趋势,但是分布式能源容量小且具有间断性、随机性和波动性等特点,直接并网使用会降低能源稳定性和利用率[1]。为构建集广泛聚合分布式能源、需求响应、分布式储能等功能于一体的分布式能源共享网络,需对分布式能源进行集中管理和统一调度,并对能源供应者和消费者身份进行耦合,进而实现不同供能资源的协同及分布式能源的消纳。然而在构建分布式能源共享网络的过程中,由于难以实现能源信息的公开透明,网络中各能源主体间存在信息获取不对称问题,能源调度规则、利益分配机制等信息始终由能源公司掌握,用户在交易过程中处于弱势地位,极大地增加了分布式能源共享网络达成互信的难度。

区块链技术[2]能够较好地解决分布式能源共享网络主体间的互信问题,基于区块链技术建立分布式能源共享网络可以实现各参与主体在信息平台上的双向选择[3]。在共享网络中,能源信息被记录于区块链账本中,支持合理的计量和认证,确保共享网络面向全部主体公开透明[4]。在交易平台中,各参与主体之间的交易过程通过智能合约实现并对交易行为加以约束。但是,将区块链技术应用于分布式能源共享领域依然存在网络性能较差、隐私保护机制不够完善、能源调度效率与透明度不高等问题。

本文在分布式能源共享网络中引入区块链技术中的侧链技术[5],提出一种可信分布式能源共享网络,形成由交易链与调度链组成的姊妹链,并通过硬件终端与物理世界的能源设施相连接得到三层网络结构,最终利用三层网络协同工作链码体系实现网络的透明化运行。在能源调度方面,设计一种分布式能源动态调度机制,为用户调度当前状态下最优的储能站并将其与链码体系相结合,实现能源调度全过程无人为干扰,以减少能源损耗,提升共享网络透明度和整体能源利用率。

1 研究现状

自2008年中本聪提出区块链这一概念以来[2],区块链首先在金融领域取得了重要突破,进而向物联网、供应链、工业互联网等众多领域辐射。在能源领域,近年来得益于技术的成熟和政策的推动,国外出现了众多将区块链应用于能源领域的探索与研究。利用区块链对交易数据与交易过程真实性进行保护是将区块链应用于能源领域的最根本出发点,因此交易安全、网络性能与信息系统安全成为研究的重点。在分布式能源交易方向,澳大利亚Power Ledger公司构建了基于区块链的太阳能电力交易平台[6-7],美国能源公司LO3与西门子公司以及区块链技术公司ConsenSys共同合作开发了名为“布鲁克林微电网”的能源区块链项目[8-9],能源公司Innogy和Oxygen Initiative联合推出区块链EV充电平台Share & Charge[10-11]。在阻塞管理与辅助服务方向,欧洲输电系统运营商TenneT为提升电网供电稳定性,以Hyperledger Fabric私有链为底层架构,在德国以及荷兰建立了能源区块链试点项目[12]。在需求响应方向,针对能源生态系统中需求响应时延大及单一需求被多次重复响应的缺陷,Bittwatt项目组基于以太坊建立了智能化需求响应平台[13-14]。在信息系统安全方向,英国Future Cities Catapult机构联合区块链平台公司Guardtime开发了一种无密钥签名基础设置(Keyless Signature Infrastructure,KSI)的区块链技术[15],该技术旨在提高电网在面临网络攻击时的安全性。

国内针对能源区块链的研究主要为网络和数据处理性能以及网络结构安全等方面,同时对于分布式能源网络运行模式的研究也取得了一定进展。文献[16-18]分别以区块链为核心架构构建了能源交易平台以及与其相匹配的平台运行策略,其中文献[17-18]基于各自平台分别提出一种市场模型和竞价策略。文献[19]致力于区块链与智慧能源在商业模式上的结合,提出一种基于区块链的智慧能源商业模式。文献[20-21]关注能源区块链中的信息安全问题,文献[20]设计并实现基于区块链技术的电力系统信息交换平台,文献[21]提出一种基于区块链的电子数据保全方案。文献[22]基于区块链对能源电力调度网络的供需规则进行优化。文献[23]针对基于区块链的电力物联网中的接入认证技术进行研究,提出一种基于区块链的分布式认证模型。文献[24]对RAFT共识算法进行改进,提出一种分布式新能源接入下的改进型RAFT算法。

目前,侧链技术多用于解决数据压力与隐私保护问题。文献[25]基于供应链溯源系统,提出一种用户数据转移的侧链模型,以解决区块链数据存储问题。文献[26]提出一种基于侧链的智慧能源交易模型,该模型利用资金交易与能源调度分割思想,本文受其启发,将该思想融入基于侧链的可信分布式能源共享网络设计中。

2 基于侧链的可信分布式能源共享网络 2.1 基本网络

在传统区块链能源网络环境下,高冗余的数据存储模式决定其必须在数据存储量与网络整体性能间进行取舍,而分布式能源共享网络中主体众多、交易频繁,同时对网络性能和数据存储量提出了更高的要求。此外,能源交易与调度所产生并依赖的数据在很大程度上并不重合。在区块链公开透明的环境下,如果直接将上述信息记录在链上,则会发生部分主体获取到与之不相关信息的情况,产生隐私泄露等问题。本文基于区块链侧链技术提出一种可信的分布式能源共享网络,其基本网络架构如图 1所示。

Download:
图 1 基于侧链的可信分布式能源共享网络架构 Fig. 1 Architecture of trusted distributed energy sharing network based on sidechain

在基于侧链的可信分布式能源共享网络中,根据职责差异将主体分为3类:

1)能源公司:存在于交易层和调度层,职责包括向用户收取用能费用(通证),将通证转化为能源权益发放给用户,调度下属储能站等。

2)储能站:存在于调度层和物理层,职责包括能源权益与传输命令转化,通过物理设施向用户输送能源或接收用户输出的能源。

3)用户:存在于交易层、调度层和物理层,是共享网络所触达的终端,职责包括能源权益获取与变现,能源权益与传输命令转化,通过物理设施接收并使用能源并将富余能源或自生产能源向储能站输送。

与主体相对应,在基于侧链的可信分布式能源共享网络中,根据网络结构与职责的差异,将整体网络设计成纵向的三层网络结构,由下至上分别为物理层、调度层、交易层,其中调度层与交易层通过侧链技术构成姊妹链,又称为调度链与交易链,两者通过交易锁合约进行信息传递和价值交换。基于侧链的可信分布式能源共享网络融合了区块链侧链、链码、通证、复合式存储策略等技术,具有以下特征:

1)高可信与高透明。通过区块链技术对能源公司、储能站和用户的实时状态以及发生于链上的所有交易进行记录,确保交易记录真实无篡改且可追溯,保障了能源共享网络中信息的可靠性。交易与主体状态信息面向链上全体节点透明公开,有助于打破能源公司对能源数据的垄断,使用户和能源公司在交易中处于平等地位。通过链码技术,简化业务流程,大幅压缩人工介入的空间,确保交易规则清晰、交易执行过程透明无人为干扰。

2)提升网络性能并加强隐私保护。通过侧链技术,将交易数据与调度数据进行拆分:一方面降低了单个节点需要维护的账本数据量和针对单个节点的无价值信息比例,减轻了单条链上的数据存储压力,一定程度上弥补了区块链在数据存储方面的短板,提升网络整体性能;另一方面将资产与能源储备信息相互隔离,也隔绝了部分主体接触无关数据的途径(如调度层储能站节点无法获得与资金相关的交易信息),加强了网络隐私保护。

3)实现能源供需主体的耦合。基于侧链的可信分布式能源共享网络对能源供给者与消费者主体身份进行耦合,即各主体既能购买和使用能源,又能通过售卖剩余或自产能源赚取相应的能源权益转换为资产,以减少能源网络中的能源浪费,实现能源利用率最大化。

2.2 三层网络协同工作链码体系

三层网络协同工作链码体系是针对基于侧链的可信分布式共享网络设计的链码体系,通过建立一套跨越三层网络的链码体系,实现链上主体间无人工介入环境下的条件-响应式工作协同。该链码体系定义了基于侧链的可信分布式能源共享网络中通证交易、能源调度、能源命令响应等行为的逻辑规则,重点关注交易链与调度链间状态的一致性,基于简化支付确认(Simplified Payment Verification,SPV)[27]模式设计的交易锁合约应用于跨越姊妹链间的一致性通信,能有效防止因信息传递过程中的时间延迟而导致的一致性问题发生。图 2为三层网络协同工作链码体系,与交易层与调度层的姊妹链结构相对应,“Transaction”与“Schedule”分别为部署于交易链和调度链的链码,两者均包含Initialization、Transaction、Token、Query、DB、Apps模块,Schedule链码额外包含Algorithm模块。三层网络协同工作链码体系由能源供给和能源收购两套规则组成,如图 3图 4所示。

Download:
图 2 三层网络协同工作链码体系 Fig. 2 Three-layer network cooperative work chaincode system
Download:
图 3 三层网络协同工作链码体系的能源供给规则 Fig. 3 Energy supply rules of three-layer network cooperative work chaincode system
Download:
图 4 三层网络协同工作链码体系的能源收购规则 Fig. 4 Energy acquisition rules of three-layer network cooperative work chaincode system

三层网络协同工作链码体系的能源供给规则具体步骤如下:

S1:交易链用户向能源公司发送能源购买申请并支付一定数额的通证。

S2:交易链能源公司执行交易锁合约,将用户支付的通证转换为调度链上的能源权益。

S3:调度链能源公司将转换的能源权益分配给用户。

S4:调度链执行分布式能源动态调度机制选择合适的储能站,向储能站发送供能申请并支付能源权益。

S5:调度链储能站向物理层终端发送供能命令。

S6:物理层储能站向用户供能。

S7:调度链在周期结算时,储能站将全部能源权益支付给能源公司。

S8:调度链用户和能源公司根据需要执行交易锁合约,将能源权益转换为交易链上的通证。

三层网络协同工作链码体系的能源收购规则具体步骤如下:

S1:交易链在周期结算完成后,能源公司根据需求扩充调度链的能源权益储备,执行交易锁合约,将通证转换为调度链上的能源权益。

S2:物理层用户向能源动态调度机制分配的储能站输送剩余或自产能源。

S3:调度链储能站核实数据。

S4:调度链向用户支付相应数额的能源权益。

S5:调度链用户和能源公司根据需要执行交易锁合约,将能源权益转换为交易链上的通证。

能源供给的步骤S2与S8以及能源收购的步骤S5使用了基于SPV模式的交易锁合约。该合约的作用是保证交易链和调度链资产的一致性。交易锁合约由通证转换能源权益规则和能源权益转换通证规则组成,两者在步骤上相互对应,在此以通证转换能源权益为例对交易锁合约的具体规则进行说明,如图 5所示。

Download:
图 5 基于SPV的交易锁合约规则 Fig. 5 Transaction lock contract rules based on SPV

基于SPV模式的交易锁合约规则具体步骤如下:

S1:交易链主体发起交易锁交易,将一定数额的通证发至随机指定的交易锁地址进行锁定。

S2:交易链将交易锁交易写入链上,并经过若干区块(一般为6个)对其进行确认,等待交易锁交易被确认后,按照交易锁合约内置的数据结构将交易锁交易信息打包为数据包发送至调度链。

S3:调度链接收数据包,并按照数据包内的区块路径验证交易链对应区块上的交易锁交易信息是否与数据包信息一致。

S4:调度链验证通过后执行解锁指令,按照通证与能源权益的兑换比例将原先存于调度链某一交易锁地址内的能源权益解锁发送至主体在调度层的钱包内,等待调度链将交易锁交易写入链上,并经过若干区块(一般为6个)对其进行确认,通证转换能源权益完毕。

在能源权益转换通证时,反向执行上述规则,即先在调度链锁定能源权益,再在交易链解锁相应比例的通证即可。

交易锁合约保证了同一价值的资产,同一时间内只能在一条链上流通,先锁定再解锁的机制也杜绝了因为通信延迟而导致的双花问题发生,确保了整个能源共享网络中价值的整体一致性。

三层网络协同工作链码体系在网络运行之初即写入区块链中,任何对链码规则的更改都将在区块链上留下完整记录,以确保链码体系在规则层面的透明。在执行过程中,无论是能源供应还是能源收购都完全由事先部署的链码体系控制,可操作空间仅限于交易链和调度链中的钱包账户,同时每一笔交易都将记录在其发生的区块链侧链上,无法被篡改或伪造且不可抵赖,以确保链码体系在执行层面的透明。综上,三层网络协同工作链码体系的部署大幅度加强了基于侧链的可信分布式能源共享网络的透明性,使其在规则和执行层面真实可信。

3 分布式能源动态调度机制

能源在传输和存储的过程中,由于天气、海拔、温度、距离、设备老化等原因会产生一定程度的损耗,降低能源利用率,这一现象在分布式能源网络中尤为明显。此外,虽然能源调度规则可以通过上链的方式向网络中所有主体公开,但在规则执行的过程中依旧存在人为介入的情况,这将削弱能源调度的透明度,降低能源共享网络的整体可信度。

本文在基于侧链的可信分布式能源共享网络环境下,提出一种分布式能源动态调度机制,其目的是通过宏观调度,为用户分配合适的储能站进行能源供给或收购,以降低能源损耗,提升能源共享网络中能源的整体利用率,并且通过链码技术实现能源调度全过程的透明化。分布式能源动态调度机制由能源供给和能源收购两部分组成,机制流程如图 6图 7所示,其中,E表示储能站剩余能源量,nm表示用户数,X表示储能站供给能源的次数,x表示用户接收能源的次数,S表示储能站剩余储能空间,Y表示储能站接收能源的次数,y表示用户出售能源的次数。

Download:
图 6 分布式能源动态调度机制的能源供给流程 Fig. 6 Energy supply flow of distributed energy dynamic scheduling mechanism
Download:
图 7 分布式能源动态调度机制的能源收购流程 Fig. 7 Energy acquisition flow of distributed energy dynamic scheduling mechanism

能源供给和能源收购分为以下两阶段:

1)储能站分配。能源公司根据储能站列表为用户分配储能站,储能站列表执行局部被动更新策略,即能源公司不主动大范围更新储能站列表,而是当储能站状态发生变化时,由储能站向能源公司发出通知,能源公司更新该储能站的状态(available/unavailable)。与全局性质的更新相比,局部被动更新策略在保证储能站列表实时准确的同时,减少了无状态变化的储能站与能源公司间不必要的状态询问通信,压缩了数据量,减轻了能源共享网络的通信和存储负担。

2)能源传输。储能站与用户建立连接,实际执行能源供给或收购的命令。值得注意的是,储能站与用户的连接并不是长期不变的,其执行延迟主动更新策略,即当储能站储能量及剩余储能空间充足时,每传输k个单位能源,用户就主动断开与储能站的连接,回到储能站分配阶段,由能源公司根据当时最新的储能站列表重新分配储能站。该策略既减少了当网络中出现更优的available储能站时用户长期无法与当前储能站断开连接而转为与更优储能站建立连接产生的不必要损耗,又由于用户必须传输k个单位能源才能更换储能站,因此杜绝了网络剧烈变动而导致的频繁更换储能站这一情况的发生。通过对参数k的设定,能够在能源损耗与通信成本间建立动态平衡。

应用分布式能源动态调度机制能够使用户在绝大部分时间内与最优储能站建立连接并传输能源,有效减少分布式能源共享网络中的能源损耗。与三层网络协同工作链码体系类似,分布式能源动态调度机制通过与链码技术结合,实现基于区块链的条件式自执行。一方面,最大限度降低能源调度过程中的人为干扰,确保能源调度在执行层面的透明性;另一方面,对调度规则和调度行为进行记录并将数据记入区块链,确保能源调度在规则和数据层面的透明性。综上,通过分布式能源动态调度机制能够较好地提升网络透明度和整体能源利用率。

4 实验与结果分析 4.1 实验目的

本文针对三层网络协同工作链码体系和分布式能源动态调度机制设计三组实验,分别验证网络结构和链码体系的有效性与安全性以及动态调度机制的合理性与高效性,以证明本文提出的基于侧链的可信分布式能源共享网络合理可行、安全可信且能实现提升能源利用率的目标。

4.2 实验环境

本文在Hyperledger Fabric[28]联盟链环境下搭建实验网络并编写链码体系和算法,同时利用如表 1所示的软硬件环境进行实验。为简化实验流程,本文设定在固定时间内向每个用户供给的能源量固定,如在单位时间1(如1 min)内向用户1供给的能源量为1个单位。

下载CSV 表 1 实验环境的软硬件配置 Table 1 Software and hardware configuration of experimental environment
4.3 实验步骤

实验1 三层网络协同工作链码体系跨链价值交换验证实验,具体实验步骤如下:

1)在链码体系中设置观察点。

2)在基于侧链的可信分布式能源共享网络环境下运行链码体系,分别执行:购买能源权益;能源权益转换为通证,观察预设的观察点是否给出正确反馈。

3)查询区块链交易记录,验证步骤2中的操作是否被真实记录。

实验2 三层网络协同工作链码体系能源传输验证实验,具体实验步骤如下:

1)在链码体系中设置观察点。

2)预设储能站列表并按照算法规则预先手动推算能源传输过程。

3)在基于侧链的可信分布式能源共享网络环境下运行链码体系,分别执行:能源供给;能源收购,观察预设的观察点是否给出正确反馈。

4)对比实际能源传输过程与步骤2中推算的能源传输过程是否一致。

5)查询区块链交易记录,验证步骤3中的操作是否被真实记录。

实验3 多用户条件下能源损耗率对比实验,具体实验步骤如下:

1)预设储能站列表。

2)制定多用户的用能脚本。

3)在基于侧链的可信分布式能源共享网络环境下按照步骤1中的脚本模拟用户进行能源交易。

4)待步骤3运行完毕后,统计网络中的整体能源使用量和能源损耗率。

5)移除分布式能源动态调度机制,采用随机选择储能站的方法,反复执行步骤3和步骤4达到预设次数后,对能源使用量和能源损耗率取均值。

6)对比步骤4和步骤5中的能源使用量和能源损耗率。

7)设定不同储能站列表和用户规模,多次执行步骤1~步骤6,以获得在不同环境下能源损耗的对比情况。

4.4 实验结果

实验1 购买能源权益和能源权益向通证转换实验。在购买能源权益实验中,transaction表示交易链,schedule表示调度链,如图 8中①所示,通证与能源权益的转换比为1。该实验首先分别获取用户在交易层与调度层以及能源公司在交易层的钱包初始情况,如图 8中②所示,用户在交易层拥有1 000枚通证,在调度层的能源权益为0,能源公司在交易层拥有1 000枚通证。现用户通过交易链向能源公司支付73枚通证以换取73个单位的能源权益,如图 8中③所示。图 8中④与⑤分别为交易锁合约在交易层执行锁定和在调度层执行解锁命令。执行完成后再次获取用户在交易层与调度层以及能源公司在交易层的钱包情况,如图 8中⑥所示,用户在交易层拥有的通证数量已减少73枚,目前为927枚,在调度层的能源权益为73个单位,能源公司在交易层拥有的通证数量依旧为1 000枚并未增加,其原因是用户支付的73枚通证已通过交易锁合约发送至交易锁地址进行锁定。实验结果符合预期。

Download:
图 8 购买能源权益实验结果 Fig. 8 Experimental results of purchasing energy rights

能源权益向通证转换实验验证用户将20个单位的能源权益转换为20枚通证,在图 9中,①为交易层与调度层中用户钱包的初始状态,②为转换命令,③与④分别为锁定与解锁命令,⑤为转换完成后用户钱包的最终状态。实验结果符合预期。

Download:
图 9 能源权益向通证转换实验结果1 Fig. 9 Experimental results 1 of energy rights conversion to general certificate

实验验证能源公司将300个单位的能源权益转换为300枚通证,在图 10中,①为交易层与调度层中能源公司钱包的初始状态,②为转换命令,③与④分别为锁定与解锁命令,⑤为转换完成后能源公司钱包的最终状态。实验结果符合预期。

Download:
图 10 能源权益向通证转换实验结果2 Fig. 10 Experimental results 2 of energy rights conversion to general certificate

图 11图 12展示了交易链和调度链在实验1中产生的交易记录。两条链上的记录相互印证且符合实验过程,说明区块链对交易的记录真实有效。

Download:
图 11 实验1交易链记录 Fig. 11 Transaction chain record of experiment 1
Download:
图 12 实验1调度链记录 Fig. 12 Scheduling chain record of experiment 1

图 13为在与侧链结构相对的单链结构上同时执行资金交易和能源调度的对比实验的交易记录。可以看出,在单链结构中,资金交易和能源调度的交易记录混杂在一起,且储能站a能额外获得用户与能源公司的资金交易信息,能源公司也能了解用户与储能站a之间的能源调度情况。而在图 11图 12的姊妹链结构中,两条链上只存有发生于本链的交易记录,一条链上的主体无法获取到另一条链上的交易记录,同时各条链上的记录逻辑清晰,在总数据量基本不变的前提下,各条链上的数据压力较小,说明侧链较好地实现了提升网络性能及保护主体隐私的目标。通过实验1,验证了基于侧链的可信分布式能源共享网络和三层网络协同工作链码体系跨链交易模块的有效性与安全性。

Download:
图 13 实验1单链对比 Fig. 13 Single chain comparison of experiment 1

实验2 能源供给和能源收购实验。在能源供给实验中的初始化储能站列表如表 2所示,其列出了用户和储能站间传输能源的损耗率,其中:∞表示用户与储能站间无有效线路,不可传输能源;available/unavailable表示储能站储能是否充足且符合供能要求。实验2中的两个子实验均设定单次连接的供能/收能上限k=10。用户1申请供能和申请用能过程如图 14图 15所示。

下载CSV 表 2 能源供给实验储能站列表1 Table 2 Energy supply experimental storage station list 1
Download:
图 14 能源供给实验结果1 Fig. 14 Energy supply experimental results 1
Download:
图 15 能源供给实验结果2 Fig. 15 Energy supply experimental results 2

图 16所示,按照分布式能源动态调度机制,选定储能站b为用户1供能,储能站b核对自身储能信息储能量为20个单位(大于4个单位),储能站b可供能。

Download:
图 16 能源供给实验结果3 Fig. 16 Energy supply experimental results 3

用户1与储能站b建立连接,储能站b为其供能。在达到单次供能上限后,用户1与储能站b断开连接,重新申请供能。此时储能站列表如表 3所示,可以看出储能站列表并未改变。用户1申请供能如图 17所示。

下载CSV 表 3 能源供给实验储能站列表2 Table 3 Energy supply experimental storage station list 2
Download:
图 17 能源供给实验结果4 Fig. 17 Energy supply experimental results 4

图 18所示,按照分布式能源动态调度机制,选定储能站b为用户1供能,储能站b核对自身储能信息储能量为10个单位(大于4个单位),储能站b可供能。

Download:
图 18 能源供给实验结果5 Fig. 18 Energy supply experimental results 5

用户1与储能站b建立连接,储能站b为其供能。当供能量达4个单位后,储能站b不再符合供能要求,储能站b与所有用户断开连接,用户1重新申请供能。此时储能站列表如表 4所示,可以看出,此时储能站b的状态已更新为unavailable,而此时储能站a通过储能已符合供能要求,因此状态更新为available,恢复供能。能源供给实验完毕,实验结果符合预期。

下载CSV 表 4 能源供给实验储能站列表3 Table 4 Energy supply experimental storage station list 3

在能源收购实验中的初始化储能站列表如表 5所示,设定储能站a的储能上限为20个单位。用户3申请能源收购过程如图 19图 20所示。

下载CSV 表 5 能源收购实验储能站列表1 Table 5 Energy acquisition experimental energy storage station list 1
Download:
图 19 能源收购实验结果1 Fig. 19 Energy acquisition experimental results 1
Download:
图 20 能源收购实验结果2 Fig. 20 Energy acquisition experimental results 2

图 21所示,按照分布式能源动态调度机制,选定储能站a为用户3供能,储能站a核对自身空余的储能空间为15个单位,储能站a可收能。

Download:
图 21 能源收购实验结果3 Fig. 21 Energy acquisition experimental results 3

用户3与储能站a建立连接,储能站a收购用户3的能源。在达到单次供能上限后,用户1与储能站b断开连接,重新申请供能,此时储能站列表如表 6所示,可以看出储能站列表并未改变。如图 22所示,按照分布式能源动态调度机制,选定储能站a为用户3供能,储能站a核对自身空余的储能空间为5个单位,储能站a可收能。

下载CSV 表 6 能源收购实验储能站列表2 Table 6 Energy acquisition experimental energy storage station list 2
Download:
图 22 能源收购实验结果4 Fig. 22 Energy acquisition experimental results 4

当收能量达3个单位后,储能站a的储能空间已满,不再符合收能要求,储能站a与所有用户断开连接,用户3重新申请能源收购,此时储能站列表如表 7所示。可以看出,此时储能站a的状态已更新为unavailable。与此同时,储能站c的储能量也达到上限,状态更新为unavailable。能源收购实验完毕,实验结果符合预期。

下载CSV 表 7 能源收购实验储能站列表3 Table 7 Energy acquisition experimental energy storage station list 3

图 23展示了实验2中调度链产生的交易记录。实验2中用户1与储能站b交易14次,用户3与储能站a交易13次,与调度链中的交易记录吻合,说明区块链对交易的记录真实有效。

Download:
图 23 实验2调度链记录 Fig. 23 Scheduling chain record of experiment 2

通过实验2,验证了基于侧链的可信分布式能源共享网络以及三层网络协同工作链码体系能源传输模块的有效性与安全性。

实验3 以网络规模为基准设计5轮实验,每轮实验的用户数和储能站数固定,储能站列表各不相同,随着网络规模的扩大,各储能站列表中的最大线路损耗率也逐渐扩大,符合能源损耗与距离正相关的实际情况。每轮实验中用户使用能源供给/能源收购服务的行为按照每轮实验的脚本进行,不同轮次实验脚本各不相同,相同轮次中使用调度算法与随机选择储能站的脚本相同。

实验使用Python语言的Simpy库,对于每组实验设定用户的到达服从特定泊松分布并设定对应数目的储能站,每个电站的基础储能量服从均值为40个单位的正态分布,假设用户与储能站之间的损耗服从特定正态分布。每组实验中每名用户请求的电量数目服从均值为10个单位的正态分布,电站与用户之间进行电量交换的时间服从均值为60 s的正态分布。在具有使用能源收购服务的用户实验中,售电量服从均值为5个单位的正态分布,售电用户与电站进行电量交换的时间均值为30 s的正态分布。从表 8可以看出,在相同网络环境下,使用调度机制选择储能站的能源损耗率约为随机选择储能站的能源损耗率的60%~80%,并且随着网络规模与复杂度的提升,该数据逐步减小,说明本文提出的分布式能源动态调度机制在基于侧链的可信分布式能源共享网络环境中的效果较好,且当处于规模大和线路复杂的分布式网络时效果将进一步提升。

下载CSV 表 8 分布式能源动态调度机制实验结果 Table 8 Experimental results of distributed energy dynamic scheduling mechanism

本文所有实验中的主要时延在于两条侧链间进行代币与能源权益的价值转移以及各节点形成共识生成区块所需的时间,而前者的主要时延在于执行交易锁合约对代币或能源权益进行锁定或解锁的行为写入区块链中并被证实有效所需的时间,即自锁定或解锁行为产生起生成6个区块的时间,其本质上也是各节点形成共识生成区块所需的时间。与以太坊等公有链采用PoW等共识机制不同,本文实验在Hyperledger Fabric联盟链网络环境下采用Raft共识机制,区块生成时间能够达到秒级,并且支持人为设置单区块交易数量上限和最大出块间隔,实验设置的单区块交易数量上限为10条,最大出块间隔为1 s,因此锁定或解锁行为被证实有效的时延约为6 s,侧链间一次完整的价值转移操作的时延约为10 s。Hyperledger Fabric吞吐量可达1 000 transaction/s以上,在实际生产环境下能达到300 transaction/s~500 transaction/s。经过测算,本文实验环境下的区块链网络能够满足200名用户的实时用电需求且整体运行时间在可接受范围内。在实际生产环境中,网络整体性能受硬件条件、网络规模等因素的影响较大,与实验环境相比存在一定的差异。

综上,三组实验分别验证了基于侧链的可信分布式能源共享网络环境下三层网络协同工作链码体系的有效性与安全性,以及分布式能源动态调度机制的合理性与有效性。通过实验可以得出,基于侧链的可信分布式能源共享网络具有较高的有效性与安全性,能够实现交易公正透明、减轻数据存储压力、非相关信息分离的隐私保护和主体供需身份耦合等目标,并且在提升网络整体能源利用率方面也有较好的性能表现。

5 结束语

针对分布式能源共享网络中隐私保护和能源调度等问题,本文提出一种基于区块链的可信分布式能源共享网络,以区块链中的侧链技术为基础构建三层基本网络,并设计应用于该网络环境的三层网络协同工作链码体系和分布式能源动态调度机制,通过三组实验验证了该网络设计的合理性、有效性与安全性。实验结果表明,三层网络协同工作链码体系实现了分布式能源网络中主体间的可信交易,并且在减轻数据存储压力、保护交易隐私以及提升能源利用率等方面均有较好的性能表现。下一步将对交易锁合约及调度层链码体系进行优化,并结合前沿能源调度算法设计真实环境下的分布式能源动态调度算法。

参考文献
[1]
ZHANG Ning, WANG Yi, KANG Chongqing, et al. Blockchain technology in energy Internet: research framework and typical application[J]. Journal of China Electrical Engineering, 2016, 36(15): 4011-4022. (in Chinese)
张宁, 王毅, 康重庆, 等. 能源互联网中的区块链技术: 研究框架与典型应用初探[J]. 中国电机工程学报, 2016, 36(15): 4011-4022.
[2]
SATOSHI N.Bitcoin: a peer-to-peer electronic cash[EB/OL].[2020-02-17].https://bitcoin.org/bitcoin.pdf.
[3]
LU Jing, SONG Bin, XIANG Wanhong, et al. Smart contract for power market transaction settlement based on blockchain[J]. Computer System Application, 2017, 26(12): 43-50. (in Chinese)
鲁静, 宋斌, 向万红, 等. 基于区块链的电力市场交易结算智能合约[J]. 计算机系统应用, 2017, 26(12): 43-50.
[4]
TAI Xue, SUN Hongbin, GUO Qinglai. Power transaction and congestion management based on blockchain in energy Internet[J]. Grid Technology, 2016, 40(12): 3630-3638. (in Chinese)
邰雪, 孙宏斌, 郭庆来. 能源互联网中基于区块链的电力交易和阻塞管理方法[J]. 电网技术, 2016, 40(12): 3630-3638.
[5]
DENG L, CHEN H, ZENG J, et al.Research on cross-chain technology based on sidechain and hash-locking[C]//Proceedings of International Conference on Edge Computing.Berlin, Germany: Springer, 2018: 144-151.
[6]
Power Ledger[EB/OL].[2020-02-17].https://www.powerledger.io/.
[7]
WANG Rui.Power Ledger: energy ecological network based on blockchain[EB/OL].[2020-02-17].https://www.chainnode.com/post/109427.(in Chinese)
王蕊. Power Ledger: 基于区块链的能源生态网络[EB/OL]. [2020-02-17]. https://www.chainnode.com/post/109427.
[8]
ZHAO Yuehao, PENG Ke, XU Bingyin, et al. Current situation and prospect of energy blockchain application engineering[J]. Power System Automation, 2019, 43(7): 20-30, 76. (in Chinese)
赵曰浩, 彭克, 徐丙垠, 等. 能源区块链应用工程现状与展望[J]. 电力系统自动化, 2019, 43(7): 20-30, 76.
[9]
Brooklyn Microgrid.Community powered energy[EB/OL].[2020-02-17].https://www.brooklyn.energy/.
[10]
Share & Charge[EB/OL].[2020-02-17].https://shareandcharge.com/.
[11]
Share & Charge platform integrates blockchain into energy project[EB/OL].[2020-02-17].https://www.wanbizu.com/blockchain/201705319865.html.(in Chinese)
Share & Charge平台将区块链融入能源项目[EB/OL]. [2020-02-17]. https://www.wanbizu.com/blockchain/201705319865.html.
[12]
[13]
[14]
Block network.Bittwatt(BWT) blockchain-based sustainable energy system[EB/OL].[2020-02-17].http://m.qukuaiwang.com.cn/news/9706.html.(in Chinese)
区块网. Bittwatt(BWT)基于区块链的可持续能源系统[EB/OL]. [2020-02-17]. http://m.qukuaiwang.com.cn/news/9706.html.
[15]
Enterprise blockchain.Guard-time[EB/OL].[2020-02-17].https://guardtime.com/.
[16]
HENG Xingchen, DONG Can, LIN Kequan, et al. Blockchain-based algorithm for distributed power bidding transaction[J]. Computer Engineering, 2020, 46(2): 35-40, 47. (in Chinese)
衡星辰, 董灿, 林克全, 等. 基于区块链的分布式电力竞价交易算法[J]. 计算机工程, 2020, 46(2): 35-40, 47.
[17]
YANG Mingtong, ZHOU Buxiang, DONG Shen, et al. Microgrid power market design and dispatching optimization supported by blockchain[J]. Power Automation Equipment, 2019, 39(12): 155-161. (in Chinese)
杨明通, 周步祥, 董申, 等. 区块链支持下的微网电力市场设计及调度优化[J]. 电力自动化设备, 2019, 39(12): 155-161.
[18]
XU Jian, WEN Mi, ZHANG Kai, et al. Design of distributed power bidding trading platform based on blockchain[J]. Smart Power, 2019, 47(10): 56-62, 84. (in Chinese)
徐健, 温蜜, 张凯, 等. 基于区块链的分布式电能竞价交易平台设计[J]. 智慧电力, 2019, 47(10): 56-62, 84.
[19]
YUAN Hui, TAO Yingdong, HU Huaisheng, et al. Application research of blockchain technology in smart energy business model[J]. Sino Foreign Energy, 2019, 24(12): 8-13. (in Chinese)
袁辉, 陶应东, 胡槐生, 等. 区块链技术在智慧能源商业模式中的应用研究[J]. 中外能源, 2019, 24(12): 8-13.
[20]
YUAN Ye.Electric power system information exchange platform based on blockchain technology[C]//Proceedings of 2019 Electric Power Industry Informatization Annual Meeting.Beijing: China Electrical Engineering Society, 2019: 196-198.(in Chinese)
袁野. 基于区块链技术的电力系统信息交换平台[C]//2019电力行业信息化年会论文集. 北京: 中国电机工程学会, 2019: 196-198.
[21]
YAN Yong, ZHOU Ziqiang, TU Ying, et al. Research on application of power data preservation based on blockchain[J]. Zhejiang Electric Power, 2019, 38(7): 63-69. (in Chinese)
颜拥, 周自强, 涂莹, 等. 基于区块链的电力数据保全应用研究[J]. 浙江电力, 2019, 38(7): 63-69.
[22]
HU Wei, YAO Wenhui. Energy supply and demand network scheduling optimization model based on blockchain[J]. Journal of System & Management, 2019, 28(6): 1134-1142. (in Chinese)
胡伟, 姚文慧. 基于区块链的能源电力供需网调度优化模型[J]. 系统管理学报, 2019, 28(6): 1134-1142.
[23]
CHEN Xiaolian, HU Xiao, SHEN Chao, et al. Research on access authentication technology of power Internet of Things based on blockchain[J]. Application of Electronic Technology, 2019, 45(11): 77-81. (in Chinese)
陈孝莲, 虎啸, 沈超, 等. 基于区块链的电力物联网接入认证技术研究[J]. 电子技术应用, 2019, 45(11): 77-81.
[24]
FANG Xiang, MA Di, HOU Weihong, et al. Research on the consensus mechanism of blockchain under distributed new energy access[J]. Zhejiang Electric Power, 2019, 38(7): 1-6. (in Chinese)
方响, 马笛, 侯伟宏, 等. 分布式新能源接入下的区块链共识机制研究[J]. 浙江电力, 2019, 38(7): 1-6.
[25]
ZHANG Chaodong, WANG Baosheng, DENG Wenping. Design of supply chain traceability system based on side chain technology[J]. Computer Engineering, 2019, 45(11): 1-8. (in Chinese)
张朝栋, 王宝生, 邓文平. 基于侧链技术的供应链溯源系统设计[J]. 计算机工程, 2019, 45(11): 1-8.
[26]
SEUNG J P, EUNG S K, JAE G S, et al.Blockchain based smart energy trading platform using smart contract[C]//Proceedings of 2019 International Conference on Artificial Intelligence in Information and Communication.Washington D.C., USA: IEEE Press, 2019: 322-325.
[27]
TEUTSCH J, STRAKA M, BONEH D.Retrofitting a two-way peg between blockchains[EB/OL].[2020-02-17].https://arxiv.org/abs/1908.03999.
[28]
ANDROULAKI E, BARGER A, BORTNIKOV V, et al.Hyperledger Fabric: a distributed operating system for permissioned blockchains[EB/OL].[2020-02-17].https://blog.csdn.net/qq_29283623/article/details/104895035.