郭俊宸,赵慧丽,顾开祥

(上海中广核工程科技有限公司 新产品研发部,上海,200241)

0 引言

风力发电技术是将风能经风电机组中的机械结构及发电机设备转化为电能,由于风电机组属于分布式能源,需通过风电场集中监控机组运行、维护过程中的生产数据、设备状态、环境状态及机组动作等类型的参数。“十四五”规划中对于大力发展新能源的指示精神,使得风力发电行业将迎来新的高峰,在“工业信息化”、“大数据”时代的影响下,精准把握风电机组运维数据对于有效提升风电机组发电效率具有指导性意义。因此,各风电机组设备制造商及风电机组运行维护人员开展了对于风电机组运维数据的采集和监控技术方面的研究。目前,国内外风电场广泛采用了基于计算机技术、数据监控技术及工业自动控制技术的监控与数据采集系统。面对风电场、变电站通信规约的网络化和国际标准化,网络开放性的不断增强将影响整个风力发电监控通信系统的安全性。因此,风电机组监控通信过程中机组控制系统的安全问题也引起了行业内的广泛关注,而这些技术问题可能衍生出一系列商业经济效益问题。为解决上述风电机组通信安全问题,构建保障风电机组与风电场其它设备及外界系统之间信息安全交互的监控通信支撑平台,设计符合风电机组操作权限管理的访问控制以及安全通信模块成为现阶段风电行业亟待解决的关键技术问题。

本文以Z72型2MW风电机组的安全通信系统监控为研究对象,依据通信国际标准IEC 61400-25进行风电机组设计微型嵌入式服务器,使用RBAC等通信技术初步建立起身份认证、安全通信、实时操作等风电机组等安全控制与访问,并且根据通信安全国际准IEC 62351中的认证、加密规范,最终通过实践操作来进一步验证其通信系统的安全性与可靠性。

1 监控安全通信系统整体框架构建

■1.1 风电场监控模式

主要有两种模式:第一,在风电场周边就近设置一个小型监控站进行实时监控,通过光纤连接的形式来获取风电机组运行的具体参数,以实现对风电机组的实时监控与设备维护;第二,运用TCP/IP的网络连接方式实现风电机组运行的远程监控通信模式,由远程客户端对各风电机组进行统一的通信、监控以及维护调配。

根据上述两种模式,本文可以进行三种拓扑结构的构建:①无缝拓扑结构:在每个风电机组处均配置远程服务器,由客户端直接进行风电机组各类型参数的提取工作;②集中拓扑结构:远程客户端向代理服务器发出数据请求,再通过私有协议进行数据通信;③混合拓扑结构:可以将无缝拓扑结构与集中拓扑结构进行有机整合,混合使用,详见图1。

图1 监控通信系统混合拓扑结构

■1.2 总体框架设计

本文尽管选用了IEC 61400-25 系统标准,但是其并没有对如何实现软硬件合理交互及全部服务参数进行准确定义,这也就给设计者留下了一定选择空间。本文根据上述三种拓扑结构方式,认为风电机组的监控系统与其他工业监控系统并无明显的差别,因此以上三种拓扑结构方案均可以操作,而方案设计上通常采用代理方案或嵌入式方案,前者通过接收到的客户请求进行决策,并根据过滤规则对用户请求进行过滤;后者是将有限的计算能力用在一个主要应用中,针对某些特定应用而开发。这两种方案的应用逻辑都是在应用层层面上实现,通过减少在网络中传送的信息量,使监控安全通信系统具有更高的灵活性、可维护性和易操作性等。

■1.3 方案设计

1.3.1 代理方案

本文拟设计代理方案如下:终端监控用户通过远程服务器来对每一个风电机组进行数据的监控与传输,在服务器端通过过滤实现数据安全、高效率交互,根据标准通信协议使得风电场通过一套操作系统即可实现对所有风电机组的监控通信,降低风机监控系统运维成本,提升对风电机组通信的安全性。但是该方案采用串联方式将风电机组连接起来,如果各风电机组相距较远亦或是系统参数相差甚大,则会造成其数据交互效率较低的问题出现;除此以外,一旦终端服务器未能正常运行,则势必会影响对现场每一个风电机组的数据监控。综上所述,此方案必须要准备一台备用的服务终端,而且对于监控机组的数量要予以严格控制。

1.3.2 嵌入式方案

该方案是将每个风电机组均配置一台服务器,以实现对风电场每个设备的数据存储、输送以及监控客户端之间的信息交互[1]。通过该服务器,风电机组可以通过其直接对设备参数进行实时通信;除此以外,由于每个风电机组均配备有服务器,某个风电机组的损坏并不能影响其它风电机组的监控通信;具有实时性强、开发费用低廉等特点的微型嵌入式服务器可靠性和适应性都比代理方案强,详见图2。

图2 风电场嵌入式方案系统结构

1.3.3 软硬件设计

(1)硬件方面:ARM嵌入式系统由于成本低、能耗低、性能强等技术优势,在工业领域应用较为广泛,因此本文采用ARM平台产品为硬件依托。该开发板为4层设计,电路走线较为优化,具接口类众多、性能高、低能耗及集成度较高等优点。

(2)软件方面:将各个功能模块进行系统划分,以便将来进行功能拓展上更加便捷,硬件作为系统支撑,务必要满足软件的模块化需求。主要包括有数据转换标准模型、数据存储单元、信息交换模型、数据服务模块、服务接口模块、通信接口模块、访问权限服务等功能模块单元。

(3)访问流程如下:

①终端用户可以通过MMS客户端和Web浏览器两种方式实现实时与非实时的通信数据交互。由于风电机组的产权人已经限制了不同用户的使用功能,并且已经按照用户的角色来决定其是否开放MMS客户端;

②终端用户开始访问请求时,系统会自动将ARM接口接入到安全监控系统之中,随之嵌入式系统检测到用户的访问需求并进行权限识别及分配。识别通过后,访问用户方可进行监控数据的查阅与传输操作;

③无论访问用户对风电机组的数据查阅还是进行风电操作,均需要遵守相关的访问协议进行评判。而且数据模块中的数据流是通过OPC服务器向外部传导的,并按照相关特定频率的风电机组状态进行程序化数据进行储存而得到的。

2 监控安全通信系统的安全通信设计

为了确保拟设计的监控机组可以稳定运行,该系统需要配置一个后绑定的架构,也就是两个不同模块运行时的交互叠加状态。将系统进行分置模块化可以显着提高监控系统的灵活适应性,并且方便进行系统维护,而且模块可以进行循环使用,也让统一测试成为可能。

现阶段的各类标准均在风电机组的安全方面进行了整体上的解决,但是处理的方式仍然取决于不同的风电机组厂商。某厂商可能仅仅是利用一条安全的线路如VPN来消除服务本身的安全威胁,另外一个厂商可能利用一个与交换相关的服务且必须由服务自身来保证安全的公共 ISP。基于上述问题,本章将具体设计安全模块,使其以一种模块化的形式作为单独的一层建立在通信之上,一经请求容易增加、移除或者改变。设计方案保障系统安全必须要遵循的几项原则:①安全模块的操作流程必须要可靠便捷;②安全模块的默认设置必须要充分考虑到普遍的系统问题;③安全模块的程序语言适应性要很强;④安全模块与协议没有必然的相关性。

图3 安全模块设计技术路线

为满足IEC 61400-25 标准中关于风电机组控制系统安全的要求,利用IEC 62351系列标准为风电场数据与通信安全系统设计提供了理论基础。因此,本文设计系统采用RBAC支持风电机组的安全策略实现访问控制;根据IEC 62351-3中建议的SSL保障风电机组的数据交互实现通信安全;结合软硬件加密措施进一步确保风电系统监控通信安全。

■2.1 密码芯片调用程序开发

现阶段应用较为广泛的加密方式主要分为硬件加密和软件加密两种[2]。硬加密中数据加密和程序运行外界难以跟踪,并且数据和程序混杂,硬件破解分析困难,能够保障风电机组在通信过程中不易遭受外界的攻击。本设计拟采用国家指定的密码算法芯片—中兴系列的安全控制器作为硬件加密板来实现密码程序开发。通过ARM开发板作为通信模块与访问模块的硬件容器,主控制端口通过移动数据盘来进行程序通信,为安全模块提供硬件上的加密解,通信基本过程详见图4。除此之外,芯片端作为特殊的监控程序,在进行密码加密后即会将传输数据进行初始化处理,而后等待下一个访问程序的进入。

图4 数据通信交互示意图

但是该程序的实现并不意味着密码芯片的程序开发完成,还需要对其进行高层应用程序的密码整合。本次设计的API具有不同的程序加密功能,各种功能的API必须遵照统一流程通过移动数据盘进行监控通信,具体流程如下:①对命令包进行初始化,填写指令,并通过移动数据端进行数据接收与传输;②判断设备来回输送的状态来确定命令的执行情况;③USB transfer的函数原型为:USB transfer(HANDLE hDevice,KCWP,LPVOID Buffer,LPVOID lpOutBuffer//)。

■2.2 访问控制模块设计

由于风电场中的风电机组的类型参数、信息种类、访问用户角色以及操作权限的不同,这就使得风电场的访问管理较为困难;而且在访问管理上,本文应用标准对用户访问权限的要求是:提供科学有效的用户名和密码,才可以保证合法的访问系统,用户端既可以通过一定授权调取某一权限,也可以实现对某一逻辑点的读取权限[3]。本文依据相关标准将设计的安全通信框架设置为单独的访问控制模块,可以较为灵活的进行信息认证和授权,以确保通信的安全管控。

■2.3 RBAC组件化设计

2.3.1 流程设计

①身份验证组件,包括有密文口令、账户名。服务器将账户名和密文口令进行数据库比较,如果口令合法即通过验证。

②权限解析组件。这一过程均为合法用户,系统会根据用户的不同身份进行权限分配,并返回其肯定应答(包括用户进行应答的起始时间和终止时间),当实时通信传输超过设定时间段时,则用户将不再进行组件操作。

③角色—权限分配组件。监控系统会根据用户大数据库中的执行动作类别、知识范围、专家级别以及允许操作进行成员组分类,而且具体的成员组分类需要相关专家共同设定,本文对用户的角色—权限分配大致进行一定描述,详见表1。

表1 成员组及权限描述

因此用户进行通信数据访问操作流程如下:首先登录用户名和输入口令密码,其次系统会对其进行身份认证以及操作权限评估,最后用户会在设计时间内进行风电场的数据通信操作。

2.3.2 通信安全模块设计

目前风电场中风电机组的通信安全系统均基于私人通信协议基础之上,极易被未获得授权的用户进行非法操作。但是MatrixSSL源代码是开源数据,存在有一定的安全隐患,因此本文采取硬件与软件整合加密的方式将MatrixSSL的秘钥输送、加解密功能等用内嵌了密码算法的中兴软件得以实现,既确保国家的利益不受损害,又可以确保监控数据通信的安全性,进而极大地确保了风电机组通信数据传输的安全可靠性。

3 监控安全通信系统实现

■3.1 硬件平台与软件开发

本文采用ARM9开发板作为硬件支撑环境,通过编写移动数据来实现密码芯片与硬件板的良好连接与通信。除此通过向系统置入内核文件,来实现访问与安全控制模块对密码芯片的自动响应[4]。

本文软件系统使用的是ARM9自带的系统开发工具,该系统的优势在于可以按照用户需求来进行功能模块的自主设计,而且多个模块互不干扰,单独放置。除此之外,功能模块的运行环境具有很大的自主兼容性,几乎可以在任何环境下稳定运行。

■3.2 访问控制模块的实现

按照图5提示进行用户名、密码及IP地址的输入,点击connect按钮就会得到相应的密文口令,并将用户信息提交到服务器进行身份验证步骤,但在此之前,可以下载网络入侵检测程序对上述操作进行安全检测,以保障登录安全。

图5 客户端连接请求

■3.3 通信安全模块的实现

本文利用嵌入式系统会使得登录用户并不会感觉到在通信操作过程中即以完成了加密等流程,但实际上在通信数据的交互中的安全模块已经起到了作用。该组件通过密码算法、芯片计算、数字签名等实现了用户身份认证、加解密及完整性等功能,来确保通信数据的交互安全,进而实现了通信数据的安全输送,极大程度上抵御了外界信息攻击的风险几率,详见图6。

图6 通过数据流具体分析SSL组件

4 结论

依据本文所提出的基于国际标准IEC 61400-25及IEC62351标准,通过嵌入式硬件平台,依靠RBAC技术和SSL技术,利用加载密码芯片驱动程序调用密码算法设计的风电场安全通信系统,能够在有效解决风电机组监控过程中的兼容性问题的同时,满足风电机组间的监控和控制的安全通信需求。