技术文章

当前页面: 首页 >技术文章 >虚拟令牌传递串行通讯方式在控制系统中的应用

虚拟令牌传递串行通讯方式在控制系统中的应用

供稿:摩莎科技(上海)有限公司 2002/7/18 18:55:00

0 人气:5155

摘要:本文主要介绍了虚拟令牌传递方式在控制系统中的应用,重点介绍了虚拟环形网令牌传递方式控制数据传输的机制。
关键词:串行通讯 令牌传递
The Application of Virtual Token Passing in Controlling System
SHI Jun-hua
Abstract: This paper mainly introduce the application of Virtual Token passing in controlling system,especially introduce the rule of transmiting data.
Keyword:Serial communication Token passing
串行通讯端口( Serial Communication Port)在系统控制的范畴中一直占有极其重要的位置。在工业控制方面,具备通讯功能的智能设备最简单最常用的接口便是RS232/RS485,简单易用。令牌环(Token Ring)是采用最为普遍的无冲突访问介质访问控制,环中只有一个令牌在循环传送。任何一个节点要发送数据,必须等到循环的令牌通过该站,然后将数据送入环中并将令牌传送至下一个节点。结合具体的系统需求,将令牌环应用到串行通讯访问控制中,将会收到很好的效果。
我公司新开发研制的DLCS2000集散控制系统上位机与现场控制器间采用的便是RS232/RS485串行通讯方式。最初设计的是主从式通讯方式,但在调试过程中发现该方式不能很好的满足系统对实时性、可靠性的要求。结合系统的具体情况,改为虚拟令牌方式进行通讯,系统的实时性、可靠性有了很大的改观。现对此做一介绍。
该系统结构如下:



系统由工程师站、操作站、现场控制器组成。现场控制器为可编程控制器,支持RS232/RS485通讯,这里选用RS485通讯,多个控制器的RS485端并接通过RS232/RS485转换模块与工程师站的RS232通讯口相连接完成数据的交换。工程师站与操作站间通过以太网进行数据的交换。现场控制器主要完成现场数据的采集、报警、控制运算、控制输出等,同时将现场采集的数据传到工程师站并将工程师站的命令进行转换输出控制现场的设备。工程师站提供现场控制的人机接口,负责接收现场控制站传来的现场数据并以棒图、趋势曲线、报表等方式进行管理,同时负责将现场操作、控制命令传达给现场控制器,由控制器完成具体的计算控制功能。操作站分散在现场的不同地方,从工程师站共享数据,完成现场的检测控制功能。影响该系统性能的关键是工程师站与各现场控制器间的数据通讯。
工程师站与各现场控制器间采用虚拟令牌传递方式进行通讯。
首先,将系统虚拟成一个环行网结构,每个通讯节点(包括上位机和控制器)作为环行网结构中的一个节点。例如:有4台现场控制器,1台上位机,则该环中共有1+4=5个节点。令牌环行传递的顺序为:1→2→3→4→5→1
然后,在环行网中虚拟一个权限令牌,在各节点间传递。节点收到令牌时立即发送响应信号(在中断中执行),然后发送数据(在主程序中判断如果有数据需要发送则发送,否则不执行),接着向下一个节点传递令牌。令牌发出后,等待响应信号,如果等待超时,则跳过下一个节点继续向其下一个节点传递令牌,如果收到响应信号,则解除等待状态。该方式中的几点说明:(上位机对应上述工程师站)
1、节点号:在虚拟环行网中,节点顺序排列为:现场控制器从1号(与其地址对应)开始逐个递增,上位机节点号为环中最大节点号。
2、信号响应方式:当节点接收到令牌应立即发应答信号,然后判断是否发送数据,接着向下一节点传递令牌,等待应答信号。当节点收到应答信号,解除等待状态。如果在等待应答过程中超时,则跳过下一个节点,向下一个节点继续传递令牌。
3、主节点:在虚拟环行网中,上位机节点作为主节点,启动后等待一段时间如果没有收到令牌,则主动生成一个令牌向1号节点传递。在运行过程中,上位机检测两次收到令牌的时间间隔,如果第一次收到令牌后,经过一定时间后未收到令牌,则认为令牌在传递过程中丢失,上位节点主动生成一令牌向一号节点传递。
4、有关令牌传递的几个变量和常量说明:
RingFlag:令牌持有与否的标志(1:持有令牌 0:不持有令牌)
WaitAck: 等待应答信号的标志(1:等待应答 0:解除等待应答)
CycleCount:等待应答期间计时变量(接收到应答时便清零,等待应答时循环累加计数)
RingTime:两次收到令牌的最大时间间隔(预定义常量)
CycleNum:等待应答超时上限(预定义常量)
NodeNum:环行网中节点总数(预定义常量)
经测试和现场的实际应用,认为利用虚拟令牌传递方式进行多节点间的数据通讯,有利于提高系统的通讯速度即系统的实时性,同时因通过虚拟令牌来控制发送数据的权限,避免了多个节点同时发送引起冲突而导致数据出错的情况,降低了数据传输的出错率即提高了系统的可靠性。较主从式通讯方式相比,在实时性和可靠性上都有很大的提高。
串行通讯由于其简单易用而被广泛应用,选用哪种方式应根据对具体性能要求的不同而考虑采用不同方式,以达到适用的效果。本文介绍的是在实时控制系统中所采用的一种方式,采用虚拟令牌传递来控制各节点的数据传送,以提高系统对实时性、可靠性的要求。其它方式可以查阅相关的文献资料,本文只起到抛砖引玉的作用。
参考文献
1、范逸之 VB与 RS232串行通讯控制 中国青年出版社,2000-08
2、雷震甲等著 计算机网络 西安电子科技大学出版社 1997-04
3、Stallings W. Data and Computer Communications,4th Edition. Macmillan Publishing Company,1994

更多内容请访问 摩莎科技(上海)有限公司(http://c.gongkong.com/?cid=46506)

手机扫描二维码分享本页

工控网APP下载安装

 

我来评价

评价:
一般