首页专业论文技术应用政策标准解决方案常用资料经验交流教育培训企业技术专家访谈电力期刊
您现在的位置:北极星电力网 > 技术频道 > 专业论文 > 基于NetBIOS的双向通信接口的设计与实现

基于NetBIOS的双向通信接口的设计与实现

北极星电力网技术频道    作者:佚名   2008/1/4 17:52:04   

 关键词:  通信 设计

基于NetBIOS的双向通信接口的设计与实现

谈龙

关键词 网络基本输入/输出系统 双向通信 接口
分类号 TM621 TM73

DESIGNANDIMPLEMENTATIONOFBI-DIRECTIONALCOMMUNICATIONS
INTERFACEBASEDONNETBIOS

TanLong
(ElectricPowerResearchInstitute,100085,Beijing,China)

Keywords NetBIOS bi-directionalcommunications interface

0 引言
  从火电厂综合能源管理信息系统(IEMS)的发展来看,一般认为有两种途径:一是从上而下的开发,另一是从下而上的开发。多年的实践证明,两种方法各有优缺点。最好的做法应是两者相结合,即首先是在基层采用原型法开展工作,积累经验打下基础,而后在具备一定经验和基础的条件下,不失时机地从上而下进行整体规划和设计。
  新疆伊犁第二火电厂(简称伊梨二电)综合能源管理信息系统正是基于上述思想进行开发的。根据实际情况,电厂首先进行了生产安全监控和生产统计自动化系统的开发。它分成2个部分:第1部分为火电厂机组DCS,这些单机监控系统主要担负各子系统的数据采集、运行监控、事故处理等职能;第2部分为电气SCADA系统,它主要给值长、总工、厂长等提供全厂生产安全监视和生产统计自动化的手段,并同时在该层留有接口,以便今后MIS网的进一步扩充。如何实现机组DCS与电气SCADA两系统间的双向通信是伊犁二电IEMS首先必须解决的问题。根据现场DCS及SCADA系统通信协议要求,我们采用了一个在国际上得到广泛支持的、用于PCLAN通信的接口标准NetBIOS协议实现两大系统的双向通信。NetBIOS协议具有编程方便、可移植性好、可靠性高等诸多特点。本文就此双向通信接口的实现方案进行分析,并对其关键部分进行论述。

1 系统结构
  系统结构简图如图1所示。

图1 系统结构简图
Fig.1 Schematicdiagramofthestructure

  机组DCS部分为星形连接,采用RMX实时多任务操作系统;电气SCADA部分为总线型连接,采用Windows95操作系统。网关站中插有2块10Mbit/s的Intel网卡。两网段间的双向通信通过网关站接口软件实现。

2 网关站的硬软件安装
2.1 网卡的设置
  网关站中内置2块Intel网卡,其基地址和中断号不能设成一样,否则会发生硬件冲突。基地址和中断号通过Intel网卡驱动程序Softset2.exe设置。注意设置的先后顺序,并区分0号卡及1号卡。
2.2 NetBIOS协议驱动程序的安装
  网关站中NetBIOS协议的驱动程序由工作站安装软件MsClient3生成。运行SETUP.EXE,按照提示配置网卡,添加NetBIOS协议,修改AUTOEXEC.BAT及PROTOCOL.INI文件,重启动计算机即可加载NetBIOS驱动程序。
2.3 接口程序
  接口程序包括如下源文件:NetBIOS协议系统调用及高级函数库Biossub.c;不同LAN间数据转发主程序NetL1.c;机组DCS发送至电气SCADA的模拟量选点文件Edpftodq;电气SCADA发送至机组DCS的遥测量选点文件Yctoedpf;电气SCADA发送至机组DCS的电能量选点文件Ddtoedpf;工程文件Ylwguan.prj。
  接口运行程序为Ylwguan.exe,命令行参数为:“YlwguanDCS站号 SCADA站号”。DCS站号为网关站在机组DCS网段中的站号;SCADA站号为网关站在电气SCADA网段中的站号。

3 接口程序的设计与实现
3.1 软件功能及运行原理
  机组DCS(EDPF—3000分散控制系统)主网为10Mbit/s实时通信网,以NetBIOS协议作为底层基础通信协议。DCS数据包与NetBIOS通信协议捆绑在一起完成系统各工作站之间的通信联络。网关站从Intel网卡上接收DCS系统数据包,通过接口软件,将DCS数据包从NetBIOS协议中分解出来,然后对DCS数据包进行分析、整理,转换成电气SCADA系统网络协议格式数据包,再将此数据包捆绑在NetBIOS通信协议上,通过另一Intel网卡发送到电气SCADA系统。反之,网关站接收电气SCADA系统数据包,经处理后转发往DCS分散控制系统。软件所用NetBIOS协议采用中断方式来实现实时通信,这种方案有很好的实时处理功能,与定时查询相比,它可以及时、准确、可靠地接收到实时信息。
3.2 通信协议及数据结构
  NetBIOS协议是一个在国际上得到广泛支持的用于PCLAN通信的接口标准,它位于国际标准化组织ISO制定的开放式通信协议7层参考模式(OSI/RM)的较高层次,即表示层与会话层之间,其主要优点是编程方便,可移植性好,可靠性高。NetBIOS中有一开发工具包(SDK),它能实现大量的功能调用,为用户提供了良好的接口界面,基于NetBIOS的应用程序只要在NetBIOS环境下即可运行。所有的NetBIOS功能调用都是首先填写网络控制块NCB,执行NetBIOS的5C中断,即可发出NetBIOS命令。
  本接口程序数据的接收和发送采用普通数据报方式,两网段上的适配器分别共享一个各自的组名。数据报长度不大于512B。网关站主要传送EDPF—3000DCS和电气SCADA两种类型的数据报。
3.3 软件设计
  接口程序由两个部分组成:一个是主控程序;另一个是中断处理程序。主控程序负责系统初始化、通信功能选择、任务调度等;中断处理程序负责中断接收来自其他工作站的信息,通过过滤、整理,将有关信息传递给主控程序的缓冲区。实时通信过程由主控程序和中断处理程序两者合作完成,两者之间的关系类似生产者与消费者的关系。数据缓冲区是临界资源,中断处理程序负责将数据放入数据缓冲区,主控程序使用这些缓冲区中的数据,这就是所谓的“生产”与“消费”,两者的互斥与同步由环形数据缓冲区的管理程序实现。
  程序设计中,将NetBIOS接收功能调用置为非等待方式,即执行NetBIOS接收功能调用时,不等该调用完成,控制马上返回到应用程序。一旦NetBIOS功能调用完成,则立即将控制权交给NCBPostFunc指向的中断处理程序,执行相应的接收处理工作,挂起NCB,最后由返回指令(IRET)返回到应用程序。中断处理程序中要有相应的关中断、开中断操作,防止中断冲突;同时由于DOS调用的不可重入性,中断处理程序中最好不要进行DOS功能调用。主控程序中挂起的NCB数目及环形缓冲区的大小取决于计算机内存资源的大小、速度的快慢。挂起的NCB数目及环形缓冲区的大小设置合适,将使双向通信中的包丢失率降至最小,当然这还需NetBIOS配置参数调整适当。
  为防止可能的通信故障,接口程序中设有故障自恢复逻辑。当和DCS通信出现故障时,即网关站在一定时间内未收到任何DCS中其他站点的数据包时,系统将自行复位;而当和电气SCADA系统连接出现故障时,接口软件将在屏幕上显示报警信息,待故障恢复后继续正常工作。

4 结语
  接口软件的开发,一方面解决了通信应用软件运行与网卡硬件无关的技术问题,使得该软件可以在各种网卡上稳定运行,直接跟上网卡硬件技术的发展;另一方面,在保证两者双向通信的同时,又起到了防火墙的作用,既可防止两系统之间无用数据通信包相互串扰,又可使有用数据通过网关站中接口软件的转换得以相互流通,充分保证了数据的实时性、可靠性。从而为电厂的生产管理打下了可靠的、必要的基础。

作者简介:谈 龙,男,硕士,主要从事电厂集散控制系统及网络通信系统的研究、开发与应用。
作者单位:电力科学研究院电厂自动化所 100085 北京

1999-02-01收稿。

基于NetBIOS的双向通信接口的设计与实现

谈龙

关键词 网络基本输入/输出系统 双向通信 接口
分类号 TM621 TM73

DESIGNANDIMPLEMENTATIONOFBI-DIRECTIONALCOMMUNICATIONS
INTERFACEBASEDONNETBIOS

TanLong
(ElectricPowerResearchInstitute,100085,Beijing,China)

Keywords NetBIOS bi-directionalcommunications interface

0 引言
  从火电厂综合能源管理信息系统(IEMS)的发展来看,一般认为有两种途径:一是从上而下的开发,另一是从下而上的开发。多年的实践证明,两种方法各有优缺点。最好的做法应是两者相结合,即首先是在基层采用原型法开展工作,积累经验打下基础,而后在具备一定经验和基础的条件下,不失时机地从上而下进行整体规划和设计。
  新疆伊犁第二火电厂(简称伊梨二电)综合能源管理信息系统正是基于上述思想进行开发的。根据实际情况,电厂首先进行了生产安全监控和生产统计自动化系统的开发。它分成2个部分:第1部分为火电厂机组DCS,这些单机监控系统主要担负各子系统的数据采集、运行监控、事故处理等职能;第2部分为电气SCADA系统,它主要给值长、总工、厂长等提供全厂生产安全监视和生产统计自动化的手段,并同时在该层留有接口,以便今后MIS网的进一步扩充。如何实现机组DCS与电气SCADA两系统间的双向通信是伊犁二电IEMS首先必须解决的问题。根据现场DCS及SCADA系统通信协议要求,我们采用了一个在国际上得到广泛支持的、用于PCLAN通信的接口标准NetBIOS协议实现两大系统的双向通信。NetBIOS协议具有编程方便、可移植性好、可靠性高等诸多特点。本文就此双向通信接口的实现方案进行分析,并对其关键部分进行论述。

1 系统结构
  系统结构简图如图1所示。

图1 系统结构简图
Fig.1 Schematicdiagramofthestructure

  机组DCS部分为星形连接,采用RMX实时多任务操作系统;电气SCADA部分为总线型连接,采用Windows95操作系统。网关站中插有2块10Mbit/s的Intel网卡。两网段间的双向通信通过网关站接口软件实现。

2 网关站的硬软件安装
2.1 网卡的设置
  网关站中内置2块Intel网卡,其基地址和中断号不能设成一样,否则会发生硬件冲突。基地址和中断号通过Intel网卡驱动程序Softset2.exe设置。注意设置的先后顺序,并区分0号卡及1号卡。
2.2 NetBIOS协议驱动程序的安装
  网关站中NetBIOS协议的驱动程序由工作站安装软件MsClient3生成。运行SETUP.EXE,按照提示配置网卡,添加NetBIOS协议,修改AUTOEXEC.BAT及PROTOCOL.INI文件,重启动计算机即可加载NetBIOS驱动程序。
2.3 接口程序
  接口程序包括如下源文件:NetBIOS协议系统调用及高级函数库Biossub

[1][2]下一页

来源:中国电力资料网
友情链接
北极星工程招聘网北极星电气招聘网北极星火电招聘网北极星风电招聘网北极星水电招聘网北极星环保招聘网北极星光伏招聘网北极星节能招聘网招标信息分类电子资料百年建筑网PLC编程培训

广告直拨:   媒体合作/投稿:陈女士 13693626116

关于北极星 | 广告服务 | 会员服务 | 媒体报道 | 营销方案 | 成功案例 | 招聘服务 | 加入我们 | 网站地图 | 联系我们 | 排行

京ICP证080169号京ICP备09003304号-2京公网安备11010502034458号电子公告服务专项备案

网络文化经营许可证 [2019] 5229-579号广播电视节目制作经营许可证 (京) 字第13229号出版物经营许可证新出发京批字第直200384号人力资源服务许可证1101052014340号

Copyright © 2022 Bjx.com.cn All Rights Reserved. 北京火山动力网络技术有限公司 版权所有