一种基于区块链技术的分布式能源交易通信平台、通信方法及通信平台的搭建方法技术

技术编号:21344983 阅读:30 留言:0更新日期:2019-06-13 23:01
本发明专利技术涉及一种基于区块链技术的分布式能源交易通信平台、通信方法及通信平台的搭建方法。通信平台包括三层:硬件层、应用层和区块链层,硬件层包括用户的发/用电设备、智能电表和智能终端,区块链层包括智能合约,智能合约为数字形式的交易规则,应用层是由web前端、js后端和Python后端构成的分布式应用,用于实现硬件层、应用层和区块链层的相互通信,web前端用于接收用户输入的申报信息和交易信息,js后端远程调用智能合约、输入申报信息和交易信息,Python后端远程调用智能合约、输入电量信息。本发明专利技术的技术方案实现了分布式能源交易市场中产消者信息的通信传输,达到多信息融合通信的效果,缩短了通信响应时间,实现能源的高效分配、合理利用。

【技术实现步骤摘要】
一种基于区块链技术的分布式能源交易通信平台、通信方法及通信平台的搭建方法
本专利技术涉及分布式能源交易通信平台和通信方法,特别是一种基于区块链技术的分布式能源交易通信平台、通信方法,及通信平台的搭建方法。
技术介绍
随着能源互联网的兴起以及智能电网的持续建设,配网规模不断扩大,配网系统功能日益增多。传统的配网系统仅负责电能的分配,未来逐步增加电能收集、传输、储存等功能,实现与用户直接进行双向交互。在这样的技术背景下,伴随着分布式能源、电动汽车等接入电网,电网中的大量消费者将转变为产消者,促使形成电力的自由双边交易。由于区块链技术的去中心化、透明性、公平性与能源互联网的思想相一致,学术界已在能源交易领域中对区块链技术的应用进行了广泛的研究。区块链网络是一个去中心化的P2P网络,不存在中心服务器。网络中的每一个节点都安装了统一的区块链客户端以及DApp服务端,即同时作为客户端和服务端。相比较传统配用电通信网络而言,区块链网络具有以下优势:1)分布式数据存储:区块链采用的是分布式存储的技术,因此不存在中心化的数据库;2)信息透明性:任何用户都可以通过具有查询功能的节点查询区块链中的数据;3)高度自治性:区块链以协商一致的规范和协议,自动、安全地交换数据;4)数据不可篡改:各区块内的数据经过哈希算法计算生成哈希值后即被安全存储,除非同时控制超过51%的系统算力,否则对区块链数据的修改是无效的。在能源交易的应用中,区块链需要通过互联网获取数据,但是根据文献[NarayanPrusty.区块链项目开发指南[M],机械工业出版社,2018]所述,由于受区块链技术和共识算法的限制,区块链获取外部网络的数据异常复杂。现有的研究大多数采用第三方数据库Oraclize服务来使区块链获取来自互联网的数据,但是实现过程具有一定的难度,其必须与以太坊智能合约搭配使用,对智能合约的编写有较高的要求,增加了开发者的开发难度。并且使用Oraclize服务需要将数据交付第三方数据库,有造成信息泄露的隐患。关于区块链与互联网数据通信的具体方法,缺少相关研究,除此了上述方法外,未查到公开发表的相关文献资料。由于在分布式能源交易的应用场景中,区块链需要获取大量的产消者信息,上述通信方法需要依靠互联网上的第三方数据库,在传输海量信息的可靠方面具有不稳定性,因此需要寻求一种有效的方法来实现多信息融合通信方法。
技术实现思路
针对以上需求,本专利技术提供了一种基于区块链技术的分布式能源交易通信平台、通信方法,以及该通信平台的搭建方法,实现了分布式能源交易市场中产消者信息的通信传输,达到多信息融合通信的效果,为分布式能源交易市场通信网的建设提供信息支撑。本专利技术的技术方案为:一种基于区块链技术的分布式能源交易通信平台,包括三个互操作的层:硬件层、应用层和区块链层,所述硬件层包括用户的发/用电设备、智能电表和智能终端,所述智能电表安装在发/用电设备上,并与智能终端相连,用于计量并传输电量信息,所述智能终端是应用层和区块链层的物理载体;所述区块链层包括智能合约,所述智能合约为数字形式的交易规则,承载交易信息的接收、运算、存储和反馈功能,用于实现能源分布式交易;所述应用层是由web前端、js后端和Python后端构成的分布式应用,用于实现硬件层、应用层和区块链层的相互通信,所述web前端通过智能终端显示用户与交易系统的交互界面,用于接收用户输入的申报信息和交易信息,所述js后端从web前端读取申报信息和交易信息,并远程调用智能合约、输入申报信息和交易信息,所述Python后端从智能电表读取电量信息,并远程调用智能合约、输入电量信息。在区块链层,基于以太坊公共区块链开发平台,采用以太坊原生的数据存储、网络通信方法和共识算法,使用以太坊客户端geth作为区块链用户节点,使用Solidity编程语言编写智能合约。使用html编程语言开发web前端,使用JavaScript编程语言开发js后端,使用Python编程语言开发Python后端,所述js后端通过JavaScript的jQuery框架与web前端通信。所述js后端和Python后端均使用远程调用协议JSON-RPC调用智能合约。所述用户的发/用电设备不限定用户为单一性的生产者或消费者,允许用户自由转换产消者的身份。所述智能电表为DTZY208型三相四线费控智能电表,具有1个红外通信接口、1个RS485通信接口和1个载波通信接口,所述智能电表通过RS485转USB接口的转换器,与智能终端连接,智能电表遵循DL/T645-2007通信协议。一种基于区块链技术的分布式能源交易通信平台的搭建方法,包括以下步骤:S1:搭建硬件层,将智能电表安装在用户的发/用电设备上,并与智能终端连接起来;S2:搭建区块链层,安装并运行以太坊客户端geth,搭建以太坊私有链,根据具体的市场交易机制编写智能合约,使用以太坊客户端geth将智能合约部署在以太坊网络;S3:搭建应用层,将智能合约原代码编译为web3接口代码,编写进js后端和Python后端,使用html编程语言开发web前端,使用JavaScript编程语言开发js后端,使用Python编程语言开发Python后端。一种基于区块链技术的分布式能源交易通信方法,包括以下步骤:S1:用户通过web前端的图形交互界面在智能终端输入申报信息和交易信息,js后端通过jQuery框架从web前端获取申报信息和交易信息,js后端通过JSON-RPC与以太坊客户端geth交互,调用智能合约,将申报信息和交易信息存入区块链中;S2:运行在智能终端上的Python后端读取智能电表的电量信息,Python后端通过JSON-RPC与以太坊客户端geth交互,调用智能合约,将电量信息存入区块链中;S3:智能合约通过网络广播到区块链中的每一个节点,区块链中的节点将收到的信息保存在内存中,等待新一轮的共识时间,触发对合约的共识和处理;S4:在共识时间到达时,智能合约根据用户申报信息对交易进行撮合,对于初次使用该平台的新用户,系统给用户提供当前电网电价以供参考;多次交易后,智能合约会记录并定期更新所有用户的个人历史成交电价范围,根据市场交易情况,向用户提供准确的申报建议,用户可以根据此信息进行合理申报;S5:节点将最近一段时间内处理的所有合约打包成一个合约集合,以默克多树的形式保存在区块中,区块间按照时间顺序形成链式结构。所述步骤S2包括以下子步骤:S21:Python后端接收智能电表传输的一串16进制报文;S22:Python后端提取报文中与电量有关的字段,进行10进制转码,得到精确到小数点后2位的10进制电量,将这个数字乘以10倍;S23:Python后端选择相应的以太坊账户,调用智能合约,将电量信息存入区块链中。本专利技术的基于区块链技术的分布式能源交易通信平台,基于区块链技术的分布式能源交易市场,提供一种产消者的申报信息、交易信息和电量信息的多信息融合通信方法,从而实现电量的自动抄表、自动计量、自动计费过程。再者,由于本专利技术的通信方法不依靠互联网上的第三方数据库,无需向第三方数据库发送查询请求并等待接受返回信息,缩短了通信响应时间。进一步地,区块链能够同时获取用户的实时发/用电需求、以及能源互联网中本文档来自技高网
...

【技术保护点】
1.一种基于区块链技术的分布式能源交易通信平台,其特征在于,包括三个互操作的层:硬件层、应用层和区块链层,所述硬件层包括用户的发/用电设备、智能电表和智能终端,所述智能电表安装在发/用电设备上,并与智能终端相连,用于计量并传输电量信息,所述智能终端是应用层和区块链层的物理载体;所述区块链层包括智能合约,所述智能合约为数字形式的交易规则,承载交易信息的接收、运算、存储和反馈功能,用于实现能源分布式交易;所述应用层是由web前端、js后端和Python后端构成的分布式应用,用于实现硬件层、应用层和区块链层的相互通信,所述web前端通过智能终端显示用户与交易系统的交互界面,用于接收用户输入的申报信息和交易信息,所述js后端从web前端读取申报信息和交易信息,并远程调用智能合约、输入申报信息和交易信息,所述Python后端从智能电表读取电量信息,并远程调用智能合约、输入电量信息。

【技术特征摘要】
1.一种基于区块链技术的分布式能源交易通信平台,其特征在于,包括三个互操作的层:硬件层、应用层和区块链层,所述硬件层包括用户的发/用电设备、智能电表和智能终端,所述智能电表安装在发/用电设备上,并与智能终端相连,用于计量并传输电量信息,所述智能终端是应用层和区块链层的物理载体;所述区块链层包括智能合约,所述智能合约为数字形式的交易规则,承载交易信息的接收、运算、存储和反馈功能,用于实现能源分布式交易;所述应用层是由web前端、js后端和Python后端构成的分布式应用,用于实现硬件层、应用层和区块链层的相互通信,所述web前端通过智能终端显示用户与交易系统的交互界面,用于接收用户输入的申报信息和交易信息,所述js后端从web前端读取申报信息和交易信息,并远程调用智能合约、输入申报信息和交易信息,所述Python后端从智能电表读取电量信息,并远程调用智能合约、输入电量信息。2.根据权利要求1所述的基于区块链技术的分布式能源交易通信平台,其特征在于,在区块链层,基于以太坊公共区块链开发平台,采用以太坊原生的数据存储、网络通信方法和共识算法,使用以太坊客户端geth作为区块链用户节点,使用Solidity编程语言编写智能合约。3.根据权利要求1所述的基于区块链技术的分布式能源交易通信平台,其特征在于,使用html编程语言开发web前端,使用JavaScript编程语言开发js后端,使用Python编程语言开发Python后端,所述js后端通过JavaScript的jQuery框架与web前端通信。4.根据权利要求1所述的基于区块链技术的分布式能源交易通信平台,其特征在于,所述js后端和Python后端均使用远程调用协议JSON-RPC调用智能合约。5.根据权利要求1所述的基于区块链技术的分布式能源交易通信平台,其特征在于,所述用户的发/用电设备不限定用户为单一性的生产者或消费者,允许用户自由转换产消者的身份。6.根据权利要求1所述的基于区块链技术的分布式能源交易通信平台,其特征在于,所述智能电表为DTZY208型三相四线费控智能电表,具有1个红外通信接口、1个RS485通信接口和1个载波通信接口,所述智能电表通过RS485转USB接口的转换器,与智能终端连接,智能电表遵循DL/T645-2007通信协议...

【专利技术属性】
技术研发人员:韩冬孟仕雨孙伟卿张巍张程正浩何宇婷
申请(专利权)人:上海理工大学
类型:发明
国别省市:上海,31

网友询问留言 已有0条评论
  • 还没有人留言评论。发表了对其他浏览者有用的留言会获得科技券。

1