温馨提示:
1. 部分包含数学公式或PPT动画的文件,查看预览时可能会显示错乱或异常,文件下载后无此问题,请放心下载。
2. 本文档由用户上传,版权归属用户,汇文网负责整理代发布。如果您对本文档版权有争议请及时联系客服。
3. 下载前请仔细阅读文档内容,确认文档内容符合您的需求后进行下载,若出现内容与标题不符可向本站投诉处理。
4. 下载文档时可能由于网络波动等原因无法下载或下载错误,付费完成后未能成功下载的用户请联系客服处理。
网站客服:3074922707
基于
SylixOS
操作系统
MMS
协议
服务器
实现
张明棽
基于 操作系统 协议服务器的实现张明棽,孙新志,史绪龙,严伟权,黎平龙(广州擎天实业有限公司,广东 广州 )摘要:以励磁系统中 通信的实现为例,介绍在国产操作系统 下 通信的建模方法以及 协议栈的实现过程,在励磁系统中实现基于 操作系统的 标准 服务器的功能。关键词:;中图分类号:,(,):,:;基金项目:广东省重点领域研发计划(编号 )收稿日期:作者简介:张明棽(),从事励磁系统智能化、励磁系统及其相关试验设备的研发、设计、调试工作。引言 是国际电工委员会()工作组制定的 变电站通信网络和系统系列标准,是基于网络通信平台的变电站自动化系统唯一的国际标准。其目标在于形成一个标准的开放式变电站自动化通信体系(),使来自不同制造商的 间实现良好的互操作性,并适应通信技 术 的 快 速 发 展,作 为 通 信 标 准。目 前,在 、等主流操作系 统 下 都 已 实 现 了 通信标准,其包括了 通信协议、通信协议、通信协议等。随着自主可控意识的不断加深,国产软硬系统的需求也越来越多,因此在国产操作系统上实现 标准的通信协议也显得十分必要。操作系统 是由翼辉公司开发的支持 调度的原创大型硬实时操作系统,其以 为对标对象,旨在解决国内外一些关键器件对国外操作系统的依赖,为国产自控可控的嵌入式系统提供软件条件。目前,操作系统源码是开源的,各厂商可自由选用,因而吸引了大量开发人员使用。操作系统是一款具有完全自主可控技术能力,能够完全满足国产化需求的操作系统。其代码完全开源,因此通过开放源码可以与开发者共同完善该操作系统,使其易于上手。支持对称多处理器()平台,支持 并具有实时进程及动态加载机制,支持不同应用软件集成,满足多部门分布式软件开发需求,跨平台支持多种处理器(如 、等架构处理器),对主流国产通用处理器能较好支持。本文选用龙芯中科的 处理器,对其有良好的支持,驱动程序十分完善和稳定。采用硬实时内核,能有效满足嵌入式系统对时序的严格需求。在 标准下,尤其在对实时性要求很高的 、通信协议(通信协议要求响应时间小于,通信要达到 )中,的硬实时特性决定了其在实时通信中具备天然优势。标准 通信 模型文件制造 报 文 规 范(,)是一种涉及用来在设备或程序之间传送实时数据和监督信息的信息传递系统的国际标准。以励磁系统为例,其常用于励磁设备与监控系统的数据交互,模型语言采用变电站配置描述语言(,)。结构如图所示。()部分。由于励磁系统作为单一 设备,因此不 考 虑 部 分 的 内 部,只 需 把 所 需 元 素 置即可。电工技术电力自动化图 结构 ()部分。该部分用于配置通信信息,需与设备所配置的通信信息相一致,如接入 配置。用同样的方法可配置子网、网关、物理地址等信息。()部分。该部分中 部分用于描述设备的属性及特性。在 操作系统中,部分并不影响实际通信功能的实现,因此设置内容为空即可。之下的内容则用于配置设备的逻辑节点及其他数据的逻辑节点,其中逻辑节点下包含了模型中数据的数据集信息及 通信中所产生的报告控制块内容,其他数据的逻辑节点下则包含了 、等数据实例映射。励磁 广州擎天实业有限公司 励磁设备 开关量 ()部分。该部分用于描述逻辑节点所包含的数据类型与数据结构,并包含了各子节点与上级节点、数据集之间的联系。在 中对模型数据的解析主要围绕该部分所规定的内容进行逐级展开,并在协议栈中形成相应的数据结构体,将抽象通信数据帧解析为操作系统所能识别的具体数据。如针对开机令 的寻找,可通过其所属的 中的“”及 “”找到该命令所属的逻辑节点,并通过该命令的 、等信号找到相应的数据对象实例,从而找到相应的数据映射,并进行操作。开机令 中 服务器协议栈的实现在 操作系统中,、等协议都有独立的线程,每种通信协议的数据帧在标准中都有详细的规定,其中 通信协议基于 通信方式,因此实现 服务器协议栈的本质就是监听来自客户端的请求,根据标准帧协议解析客户端发来的数据包,确定其所需求的数据,并根据通信特点发送数据。要在 中实现 服务器功能需完成以下操作。()应先对 服务端的参数进行配置。配置客户端服务端标志、版本号,用于区分设备所需执行的协议栈代码。配置协议栈的读写以及更新的回调函数,当 通信中发生数据读写事件以及相关数据集内的数据发生变化时协议栈执行该回调函数。配置协议栈选择、执行、取消、错误等事件的回调函数,当 通信中发生站控级遥控操作时,调用对应函数,执行相应命令。()对 服务端进行初始化。申请服务运行的内存空间,主要为申请接口寄存器用于服务端与外部连接的连接信息存储,指明 通信报告发送的数据通路;申请数据寄存器,用于存储 通信中所接收的数据帧,在以语言开发的协议栈中,该数据寄存器通常以 通信帧协议进行结构化,利用结构体指针自增的特点,将接收的数据帧自动转为解析好的数据。()对模型文件进行解析(根据节所述模型文件结构进行解析)。对于 服务器来说,应核对 部分的通信参数配置与本机设备的实际参数是否一致,这是因为该模型文件是外部设备与本机通信的标准文件,外部设备通过该文件获取连接信息,与本机进行连接。建立数据集、报告控制块的映射,当数据集中数据发生变化时,系统及时向相应报告控制块发送触发信号,以发送报告至外部设备。解析逻辑节点中各数据对象的映射地址、数据类型、数据触发报告条件等信息,并保证该信电力自动化电工技术 息是 唯 一 的,避 免 出 现 映 射 混 乱 的 现 象。最 后 再 通 过 中描述的数据类型与数据结构建立数据链表,将逻辑节点的数据对、数据集、报告控制块建立连接,并将该表 地 址 传 递 至 通 信 协 议 站 主 程 序 进 行 操 作控制。()协议栈线程的实现。建立 服务端线程,使用 操作系统提供的网络接口 ,打开 通信端口并进行 监听。当客户端发出连接请求时,服务端判断是否超过最大连接数,若未超过最大连接数则将该连接信息存入链接寄存器。同时,线程对该连接发起的报告控制块订阅请求进行监听,将订阅的报告以定时间间隔触发的方式送至客户端。在触发方式下,设备应主动对模型文件数据集中所有的映射进行扫描,在数据变化时触发报告控制块进行数据发送。当 服务端收到客户端取消订阅命令时,协议栈应将此链接从链接寄存器中移除。在 系统中实现 通信协议的服务器功能,其代码流程如图所示。结语 标准的 通信协议仍基于 通信形式,其实现机理并不存在十分特殊的地方。在 中实现 通信协议,关键在于模型文件的编制与协议栈的实现。模型文件是否符合标准、模型文件是否存在非法数据、数据对象是否具备唯一性,这些决定了协议栈能否正常解析模型文件并运行。而协议栈程序则需正确应用 中提供的网络接口,并根据协议帧格式进行网图 系统 协议栈实现流程络数据的解析与打包发送报告数据。依此便可实现基于 操作系统的 协议服务器。参考文献 罗彦 标准的研究与应用成都:西华大学,李孝成 大型实时操作系统实时性分析单片机与嵌入式系统应用,():翁超一种基于 的多任务间数据通信方法探究科学与信息化,():谭文恕变电站通信网络和系统协议 介绍电网技术,():邬航杰,盛戈皞,崔荣花,等基于 的变压器状态监测 的信息建模及 描述华东电力,():(上接第 页)结语本文提出的基于主成分分析、结合小波神经网络的短期风电预测方法,利用主成分分析对数据进行降维处理,并将降维后的主成分作为小波神经网络的输入,通过网络训练对未来一天的风机出力数据进行预测,结果表明基于主成分分析、结合小波神经网络的短期风电预测方法相比 神经网络预测和小波神经网络预测的精确度更高。参考文献 ,():冯在勇小波神经网络与 网络的比较研究及应用成都:成都理工大学,范丽伟,代杰,尹俊超基于改进型小波神经网络的油价预测统计与决策,():陈哲,冯天瑾小波神经网络研究进展及展望青岛海洋大学学报(自然科学版),():温泰基于蝙蝠萤火虫混合算法优化 神经网络南宁:广西大学,程宇也基于人工神经网络的短期电力负荷预测研究杭州:浙江大学,胡亚伟,王筱,晁勤,等采用横纵向误差平移插值修正的风电预测精度改善方法 电网技术,():电工技术电力自动化