技术领域
[0001] 本
发明涉及一种网络和该网络上的
信号。具体地,本发明涉及检测通信网络的操作频率中的噪声。
背景技术
[0002] 在典型的工业工厂中,分布控制系统(DCS)用于控制在工厂处执行的多个工业过程。典型地,该工厂具有集中控制间,集中控制间具有
计算机系统,计算机系统具有用户输入/输出(I/O),盘I/O,以及计算领域中熟知的其他
外围设备。耦合至计算系统的是
控制器和处理I/O子系统。
[0003] 处理I/O子系统包括I/O端口,该I/O端口连接至遍布工厂的各个现场装置。现场装置包括各种类型的分析设备,
硅压
力传感器,电容性
压力传感器,
电阻性
温度检测器,
热电偶,应变计,限位
开关,接通/断开开关,流量变送器,压力变送器,电容电平开关,磅秤(weigh scale),换能器,
阀定位器,阀控制器,
致动器,螺线管以及指示灯。术语“现场装置”包括这些装置,以及执行分布控制系统中的功能的任何其他装置。
[0004]
现场总线是旨在用于连接场设备和比如分布控制系统中的监测和仿真单元的其他过程装置的多站式(multi-drop)串行数字双向通信协议。现场总线允许比先前的过程控制回路方法增强的数字通信,同时保持用以向耦合至现场总线回路的过程装置供电的能力,以及同时满足固有安全性要求。
[0005] 两个合理标准化的工业现场总线协议是Foundation Fieldbus和Profibus。由美国仪表协会(ISA)标准的ANSI/ISA-50.02-1992,以及它的草案二延伸(1995)定义了现场总线协议的物理层。现场总线协议定义两个子协议。H1现场总线网络以高达每秒31.25千比特(Kbps)的速率传输数据,并且向耦合至网络的现场装置供电。1992年9月批准的ISA标准的部分2的11款定义了该H1物理层子协议。H2现场总线网络以高达每秒2.5 兆比特(Mbps)的速率传输数据,不向与网络相连的现场装置供电,并且具有冗余传输介质。 [0006] 现场总线网络常常与大的
电动机、过程设备和工厂设备关联地使用。有时,电动机或设备的启动引起通信介质的操作频率中的噪声突发(burst)。该噪声突发可能引起被破坏的消息,并且极端地,可能导致与网络装置失去通信。
发明内容
[0007] 本发明涉及检测通信介质的操作频率中的噪声。针对被破坏的消息,监测通信介质上的信息。当被破坏的消息的个数达到被破坏消息
阈值时,产生噪声检测信号。
附图说明
[0008] 图1是过程控制系统的示意图,该过程控制系统通过通信介质分段和相连的诊断工具而在装置之间进行数字通信。
[0009] 图2示出了用于在图1的过程控制系统的装置之间进行通信的消息格式。 [0010] 图3是在图1中示出的诊断工具的体系结构的
框图。
[0011] 图4是依据本发明用于检测网络上的操作频率中的噪声的方法的
流程图; 具体实施方式
[0012] 过程控制系统综述
[0013] 现场总线(Fieldbus)物理层定义了以物理层协议数据单元(PhysicalLayer Protocol Data Unit)(PhPDU)的形式来发送和接收通信协议数据的物理手段的电特性。此外,现场总线物理层规定了符号编码,消息成
帧(framing)以及检错方法。ISA现场总线标准定义了三个信令速度和两个耦合模式。为了该描述,将在以ISA标准ANSI/ISA-50.02,Part2-1992的条款11定义的H1物理层的上下文中描述过程控制系统。该条款
覆盖31.25kbps,
电压模式,
导线介质,以及低功率选项。该选项允许连接至 通信介质的装置从该通信介质接收其操作功率。该物理层能够满足对于危险环境的固有安全要求。依据该标准限定的电压和
电流限度,该协议在低级双绞线
电缆上工作,并且支持多个装置。图1示出了典型的过程控制系统10,包括分段12,电源14和五个装置:链路有效调度器(Link ActiveScheduler)(LAS)20,链路主控机(Link Master)(LM)22,以及
基础装置24、26和28。
图1还示出了连接至分段12的诊断工具29。该分段12可以在单对导线上支持多达三十二个装置。典型地,根据回路执行速度,功率和固有安全要求,分段12具有从四至十六个的装置。
[0014] LAS 20维持对分段12上的装置之间的全部通信的中央调度。通过发送强迫数据(Compel Data)(CD)数据链路协议数据单元(DLPDUs)至每一个装置,以便传回循环数据(该数据之后被调度),LAS 20提高了整体通信可靠性。LAS 20充当分段12上的数据链路时间(DL-时间)的本地源。DLPDU是在分段12上通信的PhPDU消息的数据内容。 [0015] LM装置22被配置为在LAS 20出现故障或变得不能工作时接管LAS 20的职责。尽管在图1中仅示出LM装置22,然而在分段上可以存在多于一个的链路主控机装置。这考虑到如下情况:如果链路有效调度器和第一链路主控机都发生故障,那么第二链路主控机可以接管链路有效调度器的职责。一旦禁用链路有效调度器,链路主控机接管链路有效调度器的职能。
[0016] 每一个装置具有被称作V(TN)的唯一地址,其表示本地
节点-ID(This_Node)。在图1中示出的例子中,LAS 20具有地址V(TN)=20;LM装置22具有地址V(TN)=22;基础装置24具有地址V(TN)=A5;基础装置26具有地址V(TN)=F3;并且基础装置28具有地址V(TN)=F5。
[0017] LAS 20发送通过令牌(Pass Token)(PT)和探测节点(Probe Node)(PN)消息至分段12上的全部装置。如果合适的话,其它装置(LM装置22和基础装置24,26,28)中的每一个将返回令牌(Return Token)(RT)和探测响应(Probe Response)消息发回至LAS 20。 [0018] 每一个基础装置24,26,28仅需要查看其自有的、由LAS 20发送的PT和PN消息。PT和PN消息具有在DLPDU的第二字节中编码的
指定地址(DA)。LAS 20向分段12上的全部装置一次一个地传递令牌(PT)或探测节点(PN)。
[0019] 一旦基础装置24,26或28接收到具有等于该装置的唯一地址(DA=V(TN))的指定地址的PT消息,其将会利用RT信息向LAS 20做出响应。如果基础装置24,26或28接收到具有DA=V(TN)的PN DLPDU,则其需要利用PR信息做出响应。
[0020] 来自LAS 20的PT和PN消息的发送以及向LAS 20的RT和PR消息的发送在分段12上生成若干消息,具体的基础装置24,26和28不需要接收该消息和对该消息采取行动。
每一个基础装置24,26和28仅需要响应向该具体装置寻址的PT和PN消息。被来自LAS
20向其它装置寻址的PT和PN信息、以及从其他装置向LAS 20寻址的RT和PR信息而经常中断会产生用以处理这些“妨害中断”的不应有的(undue)处理时间。对于基础装置24,26和28,DLPDU过滤可以用于减小基础装置不得不处理的中断的个数。另一方面,LAS 20必须处理分段12上的每一个消息。
[0021] 分段12上的全部装置以Manchester编码的基带信号向分段12上发送数据。利用Manchester编码,在比特周期的中部,通过从低至高和从高至低出现的转变来分别表示“0”和“1”。对于现场总线,额定比特时间是32微秒(μsec),在16μsec处出现转变。Manchester编码规则已经被扩展至包括两个附加符号,非数据正(N+)和非数据负(N-),其中在比特周期中不会出现转变,并且Manchester编码的基带信号保持高(N+)或低(N-)。 [0022] 通过比如导线或探针的两个导电元件,诊断工具29被连接至分段12。诊断工具
29的诊断能力之一是:当分段12上的被破坏消息的个数超过被破坏消息阈值时警告用户。
如将关于图4更详细地描述的,超过被破坏消息阈值可以指示操作频率中的噪声。 [0023] 消息格式
[0024] 图2示出了用于在分段12上发送消息的物理层协议数据单元(PhPDU)的格式。该PhPDU包括前同步码,起始分界符(SD),数据链路协议数据单元(DLPDU)以及结束分界符(ED)。该前同步码是PhPDU消息的前若干个比特。现场总线规范允许一至八十个字节的前同步码。接收消息的装置利用前同步码来同步输入的消息。如图2中所示,前同步码的第一字节的 序列是10101010。
[0025] 起始分界符(SD)紧随前同步码。每一个消息都存在一个SD。现场总线规范要求SD具有非字符数据(N+和N-),其通常以互补对的形式出现在SD消息中。该编码方案使SD唯一,并且不可能与消息的数据部分(DLPDU)混淆。对于SD在图2中示出的序列是1 N+ N- 1 0 N- N+ 0。
[0026] DLPDU是可变长度消息。它包括:帧控制(FC)字节,作为其第一字节;以及帧检验序列(FCS)检验和,作为其最后两个字节(下面更详细地描述)。DLPDU的长度是可变的,具有最小3个字节(在RT消息的情况下),上至例如大约300字节的错误发送(jabber)界限。
[0027] 结束分界符(ED)跟随DLPDU,它表示在分段12上发送的任何PhPDU消息的最后字节。类似SD,ED包括具有互补对的形式的非字符数据。该编码方案使ED唯一,并且不可能与DLPDU混淆。对于结束分界符,在附图2中示出的序列是1 N+ N- N+ N- 1 0 1。 [0028] 图2也示出了载波检测信号。载波检测信号的用途是指示何时:(a)输入的PhPDU消息出现在分段12上,或者(b)装置向分段12上发送消息。
[0029] 在发送允许(TxE)变为有效的时刻,也就是当PhPDU消息的前同步码首先出现在分段12上时,出现发送开始(SOT)。
[0030] 在载波检测信号变为有效,并且已针对至少一个比特时间或两个比特时间(近似为16至32μsec)稳定之后,出现活动开始(SOA)。该时间取决于载波检测关于接收消息的装置的内部时钟何时变为有效。这允许装置的通信控制器忽略前同步码前端处最易于出现的噪声假信号(glitch)。附加时间用于同步比特边界,以消除把分段12上的短的噪声突发误认为是活动的潜在可能。对于被发送的消息,一旦发送允许变成有效(也就是PhPDU的前同步码被呈现给分段12),则出现SOA。
[0031] 在针对接收的信息检测FC字节时的第一比特开始时,出现消息开始(SOM)。 [0032] SOM_xmt是消息发送开始,其在针对被发送消息检测FC字节时的第一比特的开始时出现。
[0033] SOMf是接收的已过滤DLPDU的SOM。当装置中的通信控制器已经检测 到充分的信息以确定将对输入的消息进行过滤时,SOM出现。
[0034] 在接收信息中遭遇的ED的最后比特的结尾处,出现消息结束(EOM)。在所发送的消息的ED的最后比特的结尾处,出现发送结束(EOT)。
[0035] 当载波检测已经变成无效时,出现活动结束(EOA)。对于发送和接收的DLPDU两者,均出现EOA。
[0036] 诊断工具29
[0037] 图3是诊断工具29的体系结构的框图。诊断工具29包括
外壳30,
液晶显示器(LCD)31,导电元件32和通信板33.通信板33被包含在外壳30中,并包括介质连接单元(MAU)34,中央处理单元(CPU)36,以及通信控制器38。
[0038] 外壳30具有有助于诊断工具29的便携性的尺寸。例如,外壳30可被尺寸化为使诊断工具29是手持装置。
[0039] LCD 31被包含在外壳30中,以使得诊断工具29的用户从外部可观看该显示器。LCD 31用于向用户发送涉及诊断工具29的操作的信息。
[0040] 通过导电元件32,诊断工具29电连接至分段12。在一个
实施例中,导电元件32是导电的导线或探针。导电元件32从分段12向MAU 34提供信号。MAU 34是转换来自分段12的信号的收发机,从而使通信板33上的
硬件可使用该信号。MAU 34是网络协议的物理层的一部分,并且可以是集成
电路,或者由分立元件构成。
[0041] CPU 36经由通信控制器38连接至MAU 34。CPU36是基于
微处理器的系统,比如Motorola 68LC302,Motorola Mcore 2075,Motorola PowerPC850,Atmel Thumb processor AT91M40800等等。在一个实施例中,CPU 36是8位或更高的处理器。
[0042] 通信控制器38是充当MAU 34和CPU 36之间的
接口的
专用集成电路(ASIC)芯片。它与连接至分段12的外部模拟电路传输已编码的曼彻斯特数据。在接收来自MAU 34的串行数据之后,通信控制器38解码该数据,将该数据形成字节,剥去前同步码,SD和ED(以及可选的,FCS字节),并对提供链接层将要读取的消息数据。
[0043] 诊断工具29的一个能力是用以检测分段12上的操作频率中的噪声的 存在。图4是依据本发明的实施例由诊断工具29所使用的用以检测分段12的操作频率中的噪声的过程的流程图。该过程可以通过CPU 36运行的
软件或诊断工具29中的硬件来实现。一般地,诊断工具29
跟踪分段12上检测到的被破坏消息,并且如果检测到的被破坏消息的个数超过被破坏消息阈值,则产生噪声检测信号。
[0044] 为了指示被破坏消息,诊断工具29监测分段12上的消息(步骤50)。在一个实施例中,通过对全部的输入消息执行FCS校验,通信控制器38初始化该监测过程。该FCS校验是循环冗余校验(CRC),这是一种用于产生校验和以便检测消息发送中的错误的散列函数。FCS校验的结果被存储于DLPDU的最后两个字节中。一旦分段12上的装置发送消息,比如来自LAS 20的PT和PN消息或来自基础装置的RT和PR消息,则在发送之前,该装置向消息的结尾附加FCS校验的结果。当诊断工具29检测该消息时,通信控制器38对该消息执行相同的FCS校验。通信控制器38对FCS校验的结果与DLPDU的结尾处的FCS字节进行比较。如果两个FCS结果不匹配,则该信息在发送过程中可能已经被破坏,并且通信控制器38设置出错寄存器,以指示该消息被破坏。
[0045] 接下来,基于EOA的检测,通信控制器38产生中断,当载波已经变得无效时,出现EOA。由于EOA表示接收消息的最后处理,在该点处产生中断,允许该消息的意向接收方装置和诊断工具29首先处理该消息。该中断强迫CPU 36针对消息是否被破坏的指示而检查通信控制器38的出错寄存器。
[0046] 基于被破坏消息的检测(步骤52),CPU 36更新存储于通信控制器38的寄存器中的被破坏消息计数(步骤54)。在一个实施例中,被破坏消息计数涉及通信控制器接收的被破坏消息的总数。在另一实施例中,被破坏消息计数涉及在某个时间段中接收的被破坏消息的个数。在又一实施例中,被破坏消息计数涉及从CPU 36所维护的在网络上有效通信的装置的列表中移除的装置。例如,如果由于失去与装置的通信而移除列表上的装置,这可以表示网络操作频率中的噪声。在又一实施例中,被破坏消息计数涉及失效数据
块计数。失效数据块是数据在多次执行后不发生改变的时间段。
[0047] CPU 36维持被称作被破坏消息阈值的数据字段,该被破坏消息阈值被存储于通信控制器38中。被破坏消息阈值是这样的点:在该点处,用户开始看到分段12上过多的被破坏消息的次级故障现象(symptom),比如与装置失去通信。在一个实施例中,被破坏消息阈值表示在次级故障现象(比如失去通信)之前某个时间段中可允许的被破坏消息的最大个数,。在另一实施例中,被破坏消息阈值表示在出现次级故障现象之前,在分段12上的消息总数中可允许的被破坏消息的最大个数。CPU 36对被破坏消息计数与阈值进行比较,以确定是否已经超过阈值(步骤56)。
[0048] 当被破坏消息的个数超过被破坏消息阈值时,分段12的操作频率中的噪声可能是破坏消息。此外,如果某个时间段中检测到的被破坏消息的个数大于单独的装置可以在该时间段中发送的消息的个数,这可以表示分段12上的条件导致来自和去往多个装置的消息被破坏。根据该指示,可以推断分段12的操作频率中的噪声正在破坏消息。这也消除了被破坏消息的另一诱因的可能性,比如被破坏消息由有
缺陷的装置发送。 [0049] 如果超过被破坏消息阈值,CPU 36产生噪声检测信号(步骤58)。在一个实施例中,噪声检测信号是去往LCD 31的信号,以产生可视输出,该可视输出警告用户存在被网络的操作频率中的噪声所破坏的消息。在另一实施例中,诊断工具29发射可听到的警报,以警告用户存在被网络的操作频率中的噪声所破坏的消息。
[0050] 总之,通信介质上的消息有时由于网络的操作频率中的噪声而被破坏。本发明是一种用于检测通信介质的操作频率中的噪声的方法。当从通信介质接收消息时,检测被破坏的消息。当检测到的被破坏消息的个数达到被破坏消息阈值时,产生噪声检测信号。 [0051] 尽管参照优选实施例已经描述了本发明,本领域熟练技术人员将认识到,可以进行形式和细节的改变,只要不脱离本发明的精神和范围。