Communication 版 (精华区)
发信人: dormouse (出征 V 号带飘扬), 信区: Communication
标 题: 分布式测试系统的一种网络通信设计
发信站: 哈工大紫丁香 (2001年06月24日09:48:49 星期天), 站内信件
分布式测试系统的一种网络通信设计
方案综述:
1 引 言
在测试系统中,常需要对多台仪器设备进行集中控制,并对它们的数据进行统
一分析处理。测试系统智能化和自动化程度的提高对测试设备间的数据交换提出了
更高的要求,这里,分布式控制成为一种十分有效的方式[1]。在分布式测试系
统中,数据交换主要在主处理机与各智能控制单元间进行,根据测试系统的特点,
其通信系统应具有良好的可靠性、通用性、扩展能力和简单的连接方式,并应能适
应长距离传输的需要,在系统通信方式及其协议的制定中应充分考虑以上特点,以
使其适应不同测试应用的需要。
2 物理层协议与接口设计
为适应多控制节点和长距离通信的需要,本文采用RS—485半双工串行通信协
议作为本测试控制网络的通信标准。由于采用了平衡驱动、差分接收方式,有效地
减小了共模干扰等影响,从而使其传输距离和带负载能力等都较RS—232C有很大提
高[2]。
由于目前的PC机都配有RS—232C接口,故设计了一种RS—485接口,它可以安
放在普通的转接头内,直接插到PC机的串口上,把PC机的RS—232C输出转换为RS—
485输出,其结构如图1所示。与其它方法相比,这一方法具有接口方式简单、通用
性强、体积小、成本低等优点。另外,我们还可在这一接口中加入智能控制单元,
以适应与常规仪器设备通信的需要。
图1 串行接口适配器
3 数据传输协议与软件设计
分布式测试系统中,各测试设备主要与主处理机间进行数据通信,根据这一特
点,本文决定采用较为明确的主从式通信作为系统通信方式[3],以保持系统功
能的统一性并同时满足其余节点间通信的需要。
3.1 信息帧格式
系统中数据与命令的传输均采用打包方式,数据帧格式如图2所示。其中,地
址字节最高位规定为0,用以标志帧起始;采用可变长数据域,数据长度范围为1~
255字节;采用两个字节进行数据校验;尾标志规定为0FFH,用以标志帧结束。字
节传输格式规定为11位,即8位数据位,1位地址/数据标志位,1位起始位和1位停
止位。为便于实现多机通信,把传输字节划分为地址类码与数据类码,地址类码第
9位标志为1,可为所有处于听者状态的下位机接收;数据类码第9位标志为0,只能
被指定的下位机接收。
通信中,主机发送的命令和数据可分为针对指定下位机的址令和针对所有下位
机的通令。为此,我们规定地址7FH为通令地址,发向该地址的命令可为所有下位
机接收。为保证数据传输可靠,均采取应答方式进行通信,下位机接收到主机发出
的数据后,立即回送状态信息。若超过指定时间仍未收到应答信息,则进行超时报
警。本系统中约定用4个字节分别表示系统的通信和工作状态。其中,两个字节代
表通信状态,两个字节代表控制器当前工作状态,可根据具体应用进行调整。这里
,采用CRC方式进行数据校验,当发现数据传输错误时,主机采用自动反馈重发方
法进行纠正。
地址 数据字节长度 数据域 高校验字节 低校验字节 尾
图2 数据通信帧格式
3.2 基于中断的通信软件设计
为了保证主处理机进行数据处理等工作的时间,通信过程应尽量减小其影响,
故在软件设计时,主要过程均采用中断驱动。发送信息时,只需将数据写入缓冲区
,其后的过程即由中断接管;同样,接收过程也完全由中断管理,使主机在进行其
它处理过程中无需任何等待。为适应不同的通信任务,特别是大数据量通信的需要
,接收及发送部分均采用了环形缓冲区结构。为充分利用硬件资源,主要过程采用
汇编语言编写,采用嵌入式汇编与汇编调用相结合的方法编写C语言通信函数,以
实现与高层程序的接口。另外,各主要通信过程均构成独立的通信函数,可在任何
采用该协议的通信网络中使用。图3所示为其中的串口中断处理流程。这里,数据
的发送及接收均采取逐字节方式进行,以避免集中占用主机工作时间。
采用以上通信协议和软件,基于总线型网络,我们方便地实现了PC机之间以及
PC机与智能仪器间的数据通信,实验证明它们具有良好适应性。
图3 串口中断处理流程
4 网络式通信在检测系统中的应用
在综合性测试系统中,往往需要对其中的多种传感器和执行机构进行集中统一
控制。此外,主机主要用于数据处理及分析计算,控制过程不应对以上过程产生影
响。一般而言,系统应能控制尽可能多的节点并应具备一定的扩展能力,以便于加
入新的测试设备。
对以上控制要求,目前常采取硬件集中方式,即由硬件电路组成集中控制器控
制传感器等执行机构的动作,它具有功能集中、速度快等优点,但也有逻辑关系复
杂、灵活性差、故障不易排除等许多不足。由前述可见,此类系统可视为由多个传
感测试单元及执行机构组成的分布式系统。采用以上网络通信的设计思想,我们可
将系统控制功能分散到各测试单元及执行机构,从而构成以系统主处理机兼作主控
机的基于半双工通信的分布式测试控制系统。
图4 应用进程与主要通信模块间关系
采用上面所述的通信协议和软件,在约定了本控制系统特定的一套命令码后,
即可由主机对各执行机构进行控制。由于采用了全部基于中断驱动的设计方式,系
统通信过程不会对主机处理工作产生影响。系统主处理进程与部分通信模块间的关
系示于图4。实际应用表明,与原有方法相比,控制系统的性能可得到很大提高。
5 结 论
本文旨在研究一种具有较为广泛适应性的数据通信方式并建立一套相应的通信
协议,从而为我们今后进行检测过程和检测仪器的自动控制等工作打下基础。实践
证明,与传统的集中式硬件控制相比,本文所介绍的基于RS—485的数据通信网络
及其协议具有可靠性高、灵活性大、适应性好、故障诊断方便等优点,尤其适用于
对智能化测试单元的控制。事实上,只要对图1所示的串行接口稍作改动,即可用
于目前许多配有外部通信接口,特别是RS—232C接口的测试仪器,从而实现对仪器
设备的远程集中控制。
为测试通信系统的可靠性,将其置于强干扰环境中,经实验,在67.5Kbps波特
率、100m传输距离下,完全可以保证数据的可靠传输。
产品配置:
传感器
适用领域及情况:
通信领域
提交人员或单位:(任大海 杨学友 段发阶 叶声华)天津大学精密测试技术及仪
器国家重点实验室 天津 300072
提交时间:2001-01-09 00:00:00
--
I am dormouse. 我是睡鼠
too lazy.
※ 来源:·哈工大紫丁香 bbs.hit.edu.cn·[FROM: dormouse.hit.edu.cn]
Powered by KBS BBS 2.0 (http://dev.kcn.cn)
页面执行时间:3.978毫秒