专利名称:基于环行网络的通信方法及环行网络的制作方法
技术领域:
本申请涉及通信技术领域,特别涉及一种基于环行网络的通信方法及环行网络。
背景技术:
环形网络,是使用一个连续的环将每台设备连接在一起。它能够保证一台设备 上发送的信号可以被环上其他所有的设备都接收到。环形网络作为一种成熟的网络拓扑 结构,具有成本低、可靠性高、传输速率高和组网简单等优点,并逐渐应用于工业控制领 域。在基于环行网络进行通信时,如何在物理环路上避免逻辑成环以及如何构建快速的故 障检测机制一直是研究的重点。以以太网环形网络为例,其一般采用STP(Spanning Tree Protocol,生成树)协议来对网络的拓扑进行保护。 发明人在对现有技术的研究过程中发现,现有采用STP协议对挽留过拓扑进行 保护时,其典型的故障恢复时间通常在几十秒的量级,虽然RSTP (R即idSpa皿ing Tree Protocol,快速生成树协议)禾口 MSTP (Multi Spanning TreeProtocol,多生成树协议)对 STP的保护机制进行了改进,故障恢复时间可以控制在秒级,但是仍然无法在实时性、确定 性和可靠性要求高的工业控制网络中得到有效的应用。
发明内容
本申请实施例的目的在于提供一种基于环行网络的通信方法及环行网络,以解决
现有技术中的环行网络通信实时性和可靠性不高的问题。 为解决上述技术问题,本申请实施例提供如下技术方案 —种基于环行网络的通信方法,所述环行网络中包含若干设备,所述若干设备之 间在物理上相互连接组成单环,每个所述设备至少包括两个端口 ,所述环行网络中包含处 于通信状态的主线路和备用线路,包括 在进行实时通信的每个通信周期内,所述若干设备中的每个设备按照预先设置的 次序从所述主线路和备用线路发送报文,并接收其它设备发送的报文; 当接收到由同一个设备发送的互为冗余的报文时,从所述互为冗余的报文中选择
一个报文。
还包括 在进行实时通信前,所述若干设备从所述主线路和备用线路与时钟服务器进行时 钟同步,所述时钟服务器集成在所述若干设备中的一个设备中。
还包括 所述环行网络启动通信时,所述若干设备中的某一设备分别通过所述两个端口在 主线路和备用线路上发送线路检查报文; 当所述两个端口中的至少一个端口接收到所述线路检查报文时,判断所述环行网
络闭合,执行所述时钟同步的步骤。
还包括
当判断所述环形网络未闭合时,所述某一设备根据接收到的线路响应报文判断所 述主线路和备用线路上的故障位置。 还包括预先指定所述若干设备中不进行报文转发的至少一个设备作为主设备, 除所述主设备外的其它设备为从设备; 所述接收到由同一个设备发送的互为冗余的报文具体为所述主设备接收到由同
一个设备发送的互为冗余的报文。
还包括 所述主设备根据接收到的从设备发送的报文检测所述环形网络的故障,并判断所 述故障的类型和位置; 所述从设备根据接收到的其它设备发送的报文判断环形网络是否发生故障。
还包括 当有新设备请求加入所述环形网络时,所述时钟服务器对所述新设备进行授权;
当所述新设备加入所述环形网络后,所述环形网络中的所述若干设备重新进行时 钟同步。
所述从所述互为冗余的报文中选择一个报文包括 当所述互为冗余的报文为同步报文时,选择其中校验结果正确的同步报文;
当所述互为冗余的报文为数据报文时,按照所述数据报文接收的先后顺序,选择 其中校验结果正确的数据报文。
还包括根据接收到的报文情况检测所述环形网络的故障,具体为 当每个设备接收到其它设备发送的报文,且所述报文互为冗余,则所述环形网络
正常; 当每个设备接收到其它设备发送的报文,且所述报文不互为冗余,则根据所述两 个端口所接收到的报文判断环形网络中发生故障的位置; 当每个设备无法接收到其它设备发送的报文,则根据所述两个端口已接收到的报 文判断所述环形网络中发生故障的位置和设备。 所述环形网络包括以太网、IEEE1394网络、CAN网络、M-LVDS网络、LVDS网络、 RS-485网络、RS-422网络。 —种环形网络,所述环行网络中包含若干设备,所述若干设备之间在物理上相互 连接组成单环,每个所述设备至少包括两个端口 ,所述环行网络中包含处于通信状态的主 线路和备用线路,所述设备包括 通信单元,用于在进行实时通信的每个通信周期内,按照预先设置的次序从所述 主线路和备用线路发送报文,并接收其它设备发送的报文; 选择单元,用于当接收到由同一个设备发送的互为冗余的报文时,从所述互为冗
余的报文中选择一个报文。
所述设备还包括 同步单元,用于在进行实时通信前,从所述主线路和备用线路与时钟服务器进行 时钟同步,所述时钟服务器集成在所述若干设备中的一个设备中。
所述设备还包括 启动单元,用于所述环行网络启动通信时,分别通过所述两个端口在主线路和备
6用线路上发送线路检查报文,并且当所述两个端口中的至少一个端口接收到所述线路检查 报文时,判断所述环行网络闭合,执行所述同步单元的功能。 判断单元,用于当判断所述环形网络未闭合时,根据接收到的线路响应报文判断 所述主线路和备用线路上的故障位置。 所述若干设备中,不进行报文转发的至少一个设备被指定为主设备,除所述主设
备外的其它设备为从设备。 所述主设备还包括 主检测单元,用于根据接收到的从设备发送的报文检测所述环形网络的故障,并 判断所述故障的类型和位置;
所述从设备包括 从检测单元,用于根据接收到的其它设备发送的报文判断环形网络是否发生故障。 包含所述时钟服务器的设备包括 授权单元,用于当有新设备请求加入所述环形网络时,对所述新设备进行授权;
所述同步单元,还用于当所述新设备加入所述环形网络后,重新进行时钟同步。
所述选择单元包括 第一选择单元,用于当所述互为冗余的报文为同步报文时,选择其中校验结果正 确的同步报文; 第二选择单元,用于当所述互为冗余的报文为数据报文时,按照所述数据报文接
收的先后顺序,选择其中校验结果正确的数据报文。 所述设备还包括 检测单元,用于根据接收到的报文情况检测所述环形网络的故障,当每个设备接 收到其它设备发送的报文,且所述报文互为冗余,则所述环形网络正常;当每个设备接收到 其它设备发送的报文,且所述报文不互为冗余,则根据所述两个端口所接收到的报文判断 环形网络中发生故障的位置;当每个设备无法接收到其它设备发送的报文,则根据所述两 个端口已接收到的报文判断所述环形网络中发生故障的位置和设备。 由以上本申请实施例提供的技术方案可见,本申请实施例中的环行网络包含若干 设备,若干设备之间在物理上相互连接组成单环,每个设备至少包括两个端口 ,环行网络中 包含处于通信状态的主线路和备用线路,在进行实时通信的每个通信周期内,若干设备中 的每个设备按照预先设置的次序从所述主线路和备用线路发送报文,并接收其它设备发送 的报文,当接收到由同一个设备发送的互为冗余的报文时,从所述互为冗余的报文中选择 一个报文。应用本申请实施例的环形网络进行通信时,由于环行网络在物理上连接成单环, 在逻辑上主线路和备用线路均处于通信状态,在每个通信周期,所有设备依据初始化配置 的次序冗余发送报文既避免了报文碰撞,又降低了丢包、误码等对通信的影响,提高了环形 网络通信的确定性和可靠性;当环形网络发生故障时,各设备通信不受影响,且环形网络故 障恢复时间为零;并且本申请实施例在环形网络不断电和不影响原设备通信的基础上,实 现了新设备的即插即用,不但满足了工业控制网络对通信实时性、确定性和可靠性的要求, 而且还实现了在线增加环形网络设备,提高了环形网络的应用灵活性。
图1为本申请基于环形网络的通信方法的第一实施例流程图; 图2为本申请基于环形网络的通信方法的第二实施例流程图; 图3为本申请基于环形网络的通信方法的第三实施例流程图; 图4为本申请基于环形网络的通信方法的第四实施例流程图; 图5A为应用本申请通信方法的一种环形网络结构示意图; 图5B为本申请实施例中实时通信阶段的通信周期划分示意图; 图6为本申请具有六个设备的环形网络在一个通信周期中的数据通信过程的示意图; 图7A为本申请环形网络中的设备出现故障时的一种通信过程示意图; 图7B为本申请环形网络中的设备出现故障时的另一种通信过程示意图; 图8为本申请环形网络中的设备的一种实施例框图; 图9为本申请环形网络中的设备的另一种实施例框图。
具体实施例方式
在如下本申请的多个实施例中,有些实施例提供了一种基于环行网络的通信方法,有些实施例提供了一种环行网络。本申请实施例中的环行网络,包含若干设备,所述若干设备之间相互连接在物理上组成单环,每个所述设备至少包括两个端口 ,所述环行网络中包含处于通信状态的主线路和备用线路。所有设备在环形网络启动前进行初始化配置,包括配置设备类型、通信周期和发送报文的次序等;环形网络启动后,首先通过发送线路检查报文进行环形网络上电线路自检,自检通过后各设备与时钟服务器进行时钟同步,同步建立后,环形网络进入实时通信阶段,在每个通信周期内,所有设备按照组态顺序从主线路和备用线路发送报文。本申请实施例中的环形网络可以为以太网、IEEE1394网络、CAN网络、M-LVDS网络、LVDS网络、RS-485网络、RS-422网络等。 为了使本技术领域的人员更好地理解本申请实施例中的技术方案,并使本申请实施例的上述目的、特征和优点能够更加明显易懂,下面结合附图对本申请实施例中技术方案作进一步详细的说明。 参见图l,为本申请基于环形网络的第一实施例流程图,该实施例描述了在环形网
络的一个通信周期内的通信过程 步骤101 :实时通信的一个通信周期开始。 步骤102 :环形网络中的每个设备按照预先设置的次序从主线路和备用线路发送报文,并接收其它设备发送的报文。 步骤103 :当接收到由同一个设备发送的互为冗余的报文时,从互为冗余的报文中选择一个报文,结束当前流程。 具体的,当所述互为冗余的报文为同步报文时,选择其中校验结果正确的同步报文;当所述互为冗余的报文为数据报文时,按照所述数据报文接收的先后顺序,选择其中校验结果正确的数据报文。 参见图2,为本申请基于环形网络的第二实施例流程图,该实施例描述了环形网络从启动到通信的过程
步骤201 :预先设置环形网络中的一个设备中集成了时钟服务器。
步骤202 :环形网络启动通信后,环形网络中的某一设备分别通过两个端口在主
线路和备用线路上发送线路检查报文。 步骤203 :判断两个端口中是否有至少一个端口接收到线路检查报文,若是,则执 行步骤204 ;否则,执行步骤211。 步骤204 :确定环行网络闭合,环形网络中的所有设备从主线路和备用线路与时 钟服务器进行时钟同步。 步骤205 :环形网络进入实时通信周期。 步骤206 :环形网络中的每个设备按照预先设置的次序从主线路和备用线路发送 报文,并接收其它设备发送的报文。 步骤207 :判断接收到的报文情况,若接收到其它设备发送的互为冗余的报文,则 执行步骤208 ;若接收到其它设备发送的不互为冗余的报文,则执行步骤209 ;若无法接收 到其它设备发送的报文,则执行步骤210。 步骤208 :从接收到的互为冗余的报文中选择一个报文,结束当前流程。 当所述互为冗余的报文为同步报文时,选择其中校验结果正确的同步报文;当所
述互为冗余的报文为数据报文时,按照所述数据报文接收的先后顺序,选择其中校验结果
正确的数据报文。 步骤209 :根据两个端口所接收到的报文判断环形网络中发生故障的位置,结束 当前流程。 步骤210 :根据两个端口已接收到的报文判断所述环形网络中发生故障的位置和 设备,结束当前流程。 步骤211 :确定环形网络未闭合,根据接收到的线路响应报文判断主线路和备用 线路上的故障位置,结束当前流程。 由上述实施例可见,由于环行网络在物理上连接成单环,在逻辑上主线路和备用 线路均处于通信状态,在每个通信周期,所有设备依据初始化配置的次序冗余发送报文既 避免了报文碰撞,又降低了丢包、误码等对通信的影响,提高了环形网络通信的确定性和可 靠性;并且,当环形网络发生故障时,各设备通信不受影响,且环形网络故障恢复时间为零。
参见图3,为本申请基于环形网络的第三实施例流程图,该实施例描述了环形网络 中指定了主设备的通信过程 步骤301 :预先指定所述若干设备中不进行报文转发的至少一个设备作为主设 备,除主设备外的其它设备为从设备。 步骤302 :在进行实时通信的每个通信周期内,每个设备按照预先设置的次序从 主线路和备用线路发送报文,并接收其它设备发送的报文。 步骤303 :主设备接收到由同一个设备发送的互为冗余的报文,从设备接收其它 设备发送的一份报文,同时执行步骤304和305。 步骤304:主设备根据接收到的报文检测环形网络的故障,并判断故障的类型和 位置,结束当前流程。 步骤305 :从设备根据接收到的其它设备发送的报文判断环形网络是否发生故 障,结束当前流程。
9
参见图4,为本申请基于环形网络的第四实施例流程图,该实施例描述了环形网络加入新设备的通信过程 步骤401 :环形网络中的各设备根据接收数据报文。 步骤402 :判断环形网络是否发生线路断开,若是,则执行步骤403 ;否则,否则,返回步骤401。 步骤403 :在固定的时间间隔内,各设备根据接收到的数据报文判断环形网络的线路是否闭合,若是,则包含时钟服务器的设备执行步骤404,其它设备执行步骤408 ;否则,确定环形网络发生线路故障。 步骤404 :时钟服务器定时向新设备发送邀请。 步骤405 :判断在一段时间内是否接收到新设备的响应,若是,则执行步骤406,否则,确定无新设备加入环形网络。 步骤406 :判断在一段时间内时钟服务器根据新设备的应答判断授时邀请是否完成,若是,则执行步骤407 ;否则,返回步骤404。 步骤407 :时钟服务器授权新设备加入环形网络,结束当前流程。 步骤408 :其它设备根据接收到的同步报文,重新计算主线路和备用线路同步偏
差,并以此分别修正主线路延时和备用线路延时,结束当前流程。 当有新设备加入的环形网络主线路和备用线路时钟同步重新建立后,包括新设备在内的环形网络所有设备即可正常通信。 由上述实施例可知,本申请实施例在环形网络不断电和不影响原设备通信的基础
上,实现了新设备的即插即用,不但满足了工业控制网络对通信实时性、确定性和可靠性的
要求,而且还实现了在线增加环形网络设备,提高了环形网络的应用灵活性。 参见图5A,为应用本申请通信方法的一种环形网络结构示意图 图5A所示的环形网络中,共包含六个设备,每个设备包含两个端口,分别为端口 A
和端口 B,每个设备都与其相邻的两个设备相连,网络在物理上连成一个单环,在逻辑上主
线路和备用线路均处于通信状态,如果预先设定从A端口到B端口的通信通路为主线路,那
么从B端口到A端口的通信通路则为备用线路,如果预先设定从B端口到A端口的通信通
路为主线路,那么从A端口到B端口的通信通路则为备用线路,对此本申请实施例不进行限
制。可以至少存在一个设备不对报文进行转发,所有设备均不转发本设备发送的报文;也可
以预先指定设备作为主设备,主设备不对报文进行转发,从而避免了环形网络产生广播风
暴的可能。 在环形网络系统启动前,所有设备进行初始化配置,包括配置设备类型、设备通信周期的大小和各设备在一个通信周期中发送报文的次序; 在环形网络系统上电后,某一设备定时发送线路检查报文,该报文从A端口发送,经由线路一周返回到B端口,同时,B端口也向A端口发送线路检查报文,在一段时间内判断其A端口或B端口是否接收到线路检查报文,若接收到则说明环路闭合,否则环路未闭合。
其中,一段时间可由下式计算获得 『二 y r/謂",+1"^/^^/^^;, ( 1 ) 上式中,T为某一设备从一端口发送线路检查报文,然后在其另一端口接收到此报文的时间间隔,N为环形网络中除该设备外其它设备的数目,T一^为第i个设备转发线路
检查报文的延时时间,Lr^为构成环形网络的网线长度,Lh^^为以太网在网线中的传输
速度。在上述时间T内,如果该设备一端口接收到另一端口发送的线路检查报文,则环形网 络上电线路正常;否则,该设备根据接收到的其它设备发送的线路响应报文判断其主线路 和备用线路上的故障位置;如果该设备在某个时间T内其一端口接收到另一端口发送的线 路检查报文,或者其两个端口分别接收到同一设备发送的互为冗余的线路响应报文,则环 形网络线路故障被修复; 当环形网络上电线路正常后,所有设备进入环形网络时钟同步建立阶段,各设备 先后或同时从主线路和备用线路与时钟服务器进行时钟同步,当主线路和备用线路时钟同 步都完成后,所有设备进入实时通信阶段,此时,各设备周期性从主线路和备用线路与时钟 服务器进行时钟同步,以保证环形网络中所有设备始终处于同步状态; 在环形网络实时通信过程中,在一个通信周期内,所有设备依据初始化配置的次 序从主线路和备用线路发送报文,同时各设备都会接收到来自同一设备发送的互为冗余的 报文,由此既避免了报文碰撞,又降低了丢包、误码等对通信的影响,提高了以太网通信的 确定性和可靠性;所有设备在实时通信中均不转发本设备发送的报文,预先指定的设备也 可以不对报文进行转发,从而避免了环形网络产生广播风暴的可能;当环形网络发生一处 线路故障时,由于主线路和备用线路都处于通信状态,因此所有设备至少可以接收到一份 报文,由此可知故障恢复时间为零,满足了环形网络应用在工业控制时对通信实时性的要 求。 参见图5B,为本申请实施例中实时通信阶段的通信周期划分示意图,实时通信阶 段被划分为无限个等长的通信周期,所有设备在每个通信周期内按照预设的时序从主线路 和备用线路发送和接收报文。 参见图6,为本申请实施例中,具有六个设备的环形网络在一个通信周期中的数据 通信过程的示意图。各设备发送报文的时间和路径在设备初始化配置时确定,各设备发送 报文的时间相对于通信周期开始时间的偏移量有所不同,从而避免了多个设备访问网络时 发生冲突的可能,同时,各设备发送报文在时间上具有确定性,即一旦设备在某个时间发送 了报文,那么该设备在下次发送报文的时间可以通过以下方式计算得到
STnext — STcurrent+Tcycle (2) 上式(2)中,ST皿t为设备下次发送报文的时间,ST。ur,t为设备当前发送报文的时 间,T。y^为通信周期。 由于各设备从主线路和备用线路均发送报文,每个设备在本地都会接收到一份来 自同一设备发送的冗余报文,因此降低了丢包、误码等对通信的影响,提高了环形网络通信 的可靠性。在每个通信周期内,各设备总是先后或同时从其两个端口发送报文,如果某设备 选择先后从其A端口和B端口发送报文,那么,其先后发送报文的时间间隔可以通过下式计 算获得 <formula>formula see original document page 11</formula>(3 ) 上式(3)中,ST^r^为某设备从A端口和B端口先后发送报文的时间间隔,N为
环形网络中除该设备外其它设备的数目,TirepMt为第i个设备转发该报文的延时时间,LHng为构成环形网络的网线长度,l^,t为以太网在网线中的传输速度。 在每个通信周期内,各设备从其两个端口接收报文。对于一个设备来说,在一个通信周期内可接收到两份由同一设备发送的互为冗余的报文。当环形网络中存在预先指定的设备时,除预先制定的设备外,其他设备只接收到其中的一份报文。 当一个设备接收到冗余报文时,该设备可以依据报文类型、校验结果和到达先后顺序选取报文,包括如果接收到同步报文,则不管达到先后顺序,选取校验结果正确的报文;如果接收到数据报文,则根据达到先后顺序选取校验结果正确的报文;如果预先设定选取先到达的数据报文,则选取校验结果正确且先到达的数据报文;如果预先设定选取后到达的数据报文,则选取校验结果正确且后到达的数据报文;如果预先设定不管达到先后顺序,则选取校验结果正确的数据报文。 在每个通信周期内,所有设备还可以根据报文接收情况,检测环形网络的故障,并判断故障类型及位置,包括如果每个设备接收到其它设备发送的数据报文,且所有报文都是互为冗余的,则环形网络工作正常;如果每个设备接收到其它设备发送的数据报文,且从某个时刻开始所有报文均不是冗余的,则环形网络发生一处线路故障,各设备根据从其两个端口接收到的数据报文,判断环形网络一处线路故障的位置;如果每个设备收不全其它设备发送的数据报文,则环形网络发生多处线路故障或设备发生故障,各设备根据从其两个端口接收到的数据报文,判断主线路和备用线路上的第一线路故障位置或发生故障的设备;如果环形网络中存在预先指定的设备,则预先指定的设备根据接收到凡人其它设备发送的数据报文,检测环形网络凡人故障,并判断故障类型及位置,而其它设备则根据接收到的数据报文判断环形网络是否发生故障。 参见图7,为本申请实施例中环形网络一处线路故障,六个设备D1至D6的数据通信过程示意图,其中,假设D3和D4之间发生了线路故障。 在图7A中,假设环形网络中不存在预先指定的设备,当某设备从其A端口和B端
口发送报文时,报文经由主线路和备用线路分别能到达出现线路故障的两个端点设备,即
报文能到达环形网络中所有设备,因此,各设备依然可以正常通信,且故障恢复时间为零;
当线路故障修复后,各设备又能接收到来自同一设备发送的互为冗余的报文。 在图7B中,假设D1和D2为预先指定的设备,在环形网络发生一处线路故障时,预
先指定的设备和环形网络中其他设备依然可以正常通信,且故障恢复时间为零;当线路故
障修复后,预先指定的设备和环形网络中其他设备又能接收到来自对方发送的互为冗余的报文。 与本申请基于环形网络的通信方法相对应,本申请还提供了环行网络的实施例。
本申请实施例中的环行网络中包含若干设备,所述若干设备之间在物理上相互连接组成单环,每个所述设备至少包括两个端口 ,所述环行网络中包含处于通信状态的主线路和备用线路。 参见图8,为本申请环形网络中一个设备的一种实施例框图
该设备包括通信单元810和选择单元820。 其中,通信单元810,用于在进行实时通信的每个通信周期内,按照预先设置的次序从所述主线路和备用线路发送报文,并接收其它设备发送的报文; 选择单元820,用于当接收到由同一个设备发送的互为冗余的报文时,从所述互为
12冗余的报文中选择一个报文。 参见图9,为本申请环形网络中一个设备的另一种实施例框图 该设备包括启动单元910、同步单元920、通信单元930和选择单元940。 其中,启动单元910,用于所述环行网络启动通信时,分别通过所述两个端口在主
线路和备用线路上发送线路检查报文,并且当所述两个端口中的至少一个端口接收到所述
线路检查报文时,判断所述环行网络闭合,执行所述同步单元的功能; 同步单元920,用于在进行实时通信前,从所述主线路和备用线路与时钟服务器进 行时钟同步,所述时钟服务器集成在所述若干设备中的一个设备中; 通信单元930,用于在进行实时通信的每个通信周期内,按照预先设置的次序从所 述主线路和备用线路发送报文,并接收其它设备发送的报文; 选择单元940,用于当接收到由同一个设备发送的互为冗余的报文时,从所述互为 冗余的报文中选择一个报文。 进一步,该设备还可以包括(图9中未示出)判断单元,用于当判断所述环形网
络未闭合时,根据接收到的线路响应报文判断所述主线路和备用线路上的故障位置。 进一步,所述设备可以作为环形网络中的不进行报文转发的主设备,也可以作为
从设备。当作为主设备时,还可以包括主检测单元,用于根据接收到的从设备发送的报文检
测所述环形网络的故障,并判断所述故障的类型和位置;当作为从设备时,还可以包括从检
测单元,用于根据接收到的其它设备发送的报文判断环形网络是否发生故障。 进一步,当所述设备作为集成了时钟服务器的设备时,还可以包括授权单元,用
于当有新设备请求加入所述环形网络时,对所述新设备进行授权;此时,同步单元920,还
用于当所述新设备加入所述环形网络后,重新进行时钟同步。 具体的,选择单元可以包括(图9中未示出)第一选择单元,用于当所述互为冗 余的报文为同步报文时,选择其中校验结果正确的同步报文;第二选择单元,用于当所述互 为冗余的报文为数据报文时,按照所述数据报文接收的先后顺序,选择其中校验结果正确 的数据报文。 进一步,该设备还可以包括(图9中未示出)检测单元,用于根据接收到的报文 情况检测所述环形网络的故障,当每个设备接收到其它设备发送的报文,且所述报文互为 冗余,则所述环形网络正常;当每个设备接收到其它设备发送的报文,且所述报文不互为冗 余,则根据所述两个端口所接收到的报文判断环形网络中发生故障的位置;当每个设备无 法接收到其它设备发送的报文,则根据所述两个端口已接收到的报文判断所述环形网络中 发生故障的位置和设备。 通过以上的实施方式的描述可知,本申请实施例中的环行网络包含若干设备,若 干设备之间在物理上相互连接组成单环,每个设备至少包括两个端口 ,环行网络中包含处 于通信状态的主线路和备用线路,在进行实时通信的每个通信周期内,若干设备中的每个 设备按照预先设置的次序从所述主线路和备用线路发送报文,并接收其它设备发送的报 文,当接收到由同一个设备发送的互为冗余的报文时,从所述互为冗余的报文中选择一个 报文。应用本申请实施例的环形网络进行通信时,由于环行网络在物理上连接成单环,在逻 辑上主线路和备用线路均处于通信状态,在每个通信周期,所有设备依据初始化配置的次 序冗余发送报文既避免了报文碰撞,又降低了丢包、误码等对通信的影响,提高了环形网络
13通信的确定性和可靠性;当环形网络发生故障时,各设备通信不受影响,且环形网络故障恢复时间为零;并且本申请实施例在环形网络不断电和不影响原设备通信的基础上,实现了新设备的即插即用,不但满足了工业控制网络对通信实时性、确定性和可靠性的要求,而且还实现了在线增加环形网络设备,提高了环形网络的应用灵活性。 本领域的技术人员可以清楚地了解到本申请实施例中的技术可借助软件加必需的通用硬件平台的方式来实现。基于这样的理解,本申请实施例中的技术方案本质上或者说对现有技术做出贡献的部分可以以软件产品的形式体现出来,该计算机软件产品可以存储在存储介质中,如ROM/RAM、磁碟、光盘等,包括若干指令用以使得一台计算机设备(可以是个人计算机,服务器,或者网络设备等)执行本申请各个实施例或者实施例的某些部分所述的方法。 本说明书中的各个实施例均采用递进的方式描述,各个实施例之间相同相似的部分互相参见即可,每个实施例重点说明的都是与其他实施例的不同之处。尤其,对于系统实施例而言,由于其基本相似于方法实施例,所以描述的比较简单,相关之处参见方法实施例的部分说明即可。 以上所述的本申请实施方式,并不构成对本申请保护范围的限定。任何在本申请的精神和原则之内所作的修改、等同替换和改进等,均应包含在本申请的保护范围之内。
权利要求
一种基于环行网络的通信方法,所述环行网络中包含若干设备,所述若干设备之间在物理上相互连接组成单环,每个所述设备至少包括两个端口,所述环行网络中包含处于通信状态的主线路和备用线路,其特征在于,包括在进行实时通信的每个通信周期内,所述若干设备中的每个设备按照预先设置的次序从所述主线路和备用线路发送报文,并接收其它设备发送的报文;当接收到由同一个设备发送的互为冗余的报文时,从所述互为冗余的报文中选择一个报文。
2. 根据权利要求l所述的方法,其特征在于,还包括在进行实时通信前,所述若干设备从所述主线路和备用线路与时钟服务器进行时钟同 步,所述时钟服务器集成在所述若干设备中的一个设备中。
3. 根据权利要求2所述的方法,其特征在于,还包括所述环行网络启动通信时,所述若干设备中的某一设备分别通过所述两个端口在主线 路和备用线路上发送线路检查报文;当所述两个端口中的至少一个端口接收到所述线路检查报文时,判断所述环行网络闭 合,执行所述时钟同步的步骤。
4. 根据权利要求3所述的方法,其特征在于,还包括当判断所述环形网络未闭合时,所述某一设备根据接收到的线路响应报文判断所述主 线路和备用线路上的故障位置。
5. 根据权利要求3所述的方法,其特征在于,还包括预先指定所述若干设备中至少一 个设备不进行报文转发;所述接收到由同一个设备发送的互为冗余的报文具体为所述指定的设备接收到由同 一个设备发送的互为冗余的报文。
6. 根据权利要求5所述的方法,其特征在于,还包括所述指定的设备根据接收到的其它设备发送的报文检测所述环形网络的故障,并判断 所述故障的类型和位置;所述从设备根据接收到的除所述指定的设备外的其它设备发送的报文判断环形网络 是否发生故障。
7. 根据权利要求2所述的方法,其特征在于,还包括当有新设备请求加入所述环形网络时,所述时钟服务器对所述新设备进行授权; 当所述新设备加入所述环形网络后,所述环形网络中的所述若干设备重新进行时钟同止 少。
8. 根据权利要求7所述的方法,其特征在于,所述当有新设备请求加入所述环形网络 时,所述时钟服务器对所述新设备进行授权,当所述新设备加入所述环形网络后,所述环形网络中的所述若干设备重新进行时钟同步包括(8-l)、所述若干设备根据接收到的报文判断所述环行网络是否发生线路断开,若是, 则执行步骤(8-2),否则,所述若干设备继续等待;(8-2)、在固定时间间隔内,所述若干设备根据接收到的报文判断所述环形网络的线路 是否闭合,若是,则所述时钟服务器执行步骤(8-3),除所述请求加入的新设备外的其它设 备执行步骤(8-4),否则,所述环形网络发生线路故障;(8-3)、所述时钟服务器定时向所述新设备发送邀请,并在预设时间内判断是否接收到 所述新设备的响应,若是,则执行步骤(8-5),否则,确定无新设备加入;(8-4)、所述其它设备根据接收到的同步报文,重新计算所述主线路和备用线路的同步 偏差,并根据所述同步偏差分别修正所述主线路的延时和所述备用线路的延时;(8-5)、在所述预设时间内,所述时钟服务器根据所述新设备的应答判断所述授时邀请 是否完成,若是,则执行步骤(8-6),否则返回步骤(8-3);(8-6)、所述时钟服务器授权所述新设备加入所述环形网络。
9. 根据权利要求1所述的方法,其特征在于,所述从所述互为冗余的报文中选择一个 报文包括 当所述互为冗余的报文为同步报文时,选择其中校验结果正确的同步报文; 当所述互为冗余的报文为数据报文时,按照所述数据报文接收的先后顺序,选择其中 校验结果正确的数据报文。
10. 根据权利要求1所述的方法,其特征在于,还包括根据接收到的报文情况检测所 述环形网络的故障,具体为当每个设备接收到其它设备发送的报文,且所述报文互为冗余,则所述环形网络正常;当每个设备接收到其它设备发送的报文,且所述报文不互为冗余,则根据所述两个端 口所接收到的报文判断环形网络中发生故障的位置;当每个设备无法接收到其它设备发送的报文,则根据所述两个端口已接收到的报文判 断所述环形网络中发生故障的位置和设备。
11. 根据权利要求1至IO任意一项所述的方法,其特征在于,所述环形网络包括以太 网、IEEE 1394网络、CAN网络、M-LVDS网络、LVDS网络、RS-485网络、RS-422网络。
12. —种环形网络,所述环行网络中包含若干设备,所述若干设备之间在物理上相互连 接组成单环,每个所述设备至少包括两个端口 ,所述环行网络中包含处于通信状态的主线 路和备用线路,其特征在于,所述设备包括通信单元,用于在进行实时通信的每个通信周期内,按照预先设置的次序从所述主线 路和备用线路发送报文,并接收其它设备发送的报文;选择单元,用于当接收到由同一个设备发送的互为冗余的报文时,从所述互为冗余的报文中选择一个报文。
13. 根据权利要求12所述的环形网络,其特征在于,所述设备还包括 同步单元,用于在进行实时通信前,从所述主线路和备用线路与时钟服务器进行时钟同步,所述时钟服务器集成在所述若干设备中的 一个设备中。
14. 根据权利要求13所述的环行网络,其特征在于,所述设备还包括 启动单元,用于所述环行网络启动通信时,分别通过所述两个端口在主线路和备用线路上发送线路检查报文,并且当所述两个端口中的至少一个端口接收到所述线路检查报文 时,判断所述环行网络闭合,执行所述同步单元的功能。判断单元,用于当判断所述环形网络未闭合时,根据接收到的线路响应报文判断所述 主线路和备用线路上的故障位置。
15. 根据权利要求14所述的环形网络,其特征在于,所述若干设备中,不进行报文转发的至少一个设备被指定为主设备,除所述主设备外的其它设备为从设备。
16. 根据权利要求15所述的方法,其特征在于,所述主设备还包括主检测单元,用于根据接收到的从设备发送的报文检测所述环形网络的故障,并判断 所述故障的类型和位置; 所述从设备包括从检测单元,用于根据接收到的其它设备发送的报文判断环形网络是否发生故障。
17. 根据权利要求13所述的环形网络,其特征在于,包含所述时钟服务器的设备包括 授权单元,用于当有新设备请求加入所述环形网络时,对所述新设备进行授权; 所述同步单元,还用于当所述新设备加入所述环形网络后,重新进行时钟同步。
18. 根据权利要求12所述的环形网络,其特征在于,所述选择单元包括 第一选择单元,用于当所述互为冗余的报文为同步报文时,选择其中校验结果正确的同步报文;第二选择单元,用于当所述互为冗余的报文为数据报文时,按照所述数据报文接收的 先后顺序,选择其中校验结果正确的数据报文。
19. 根据权利要求12所述的环形网络,其特征在于,所述设备还包括 检测单元,用于根据接收到的报文情况检测所述环形网络的故障,当每个设备接收到其它设备发送的报文,且所述报文互为冗余,则所述环形网络正常;当每个设备接收到其它 设备发送的报文,且所述报文不互为冗余,则根据所述两个端口所接收到的报文判断环形 网络中发生故障的位置;当每个设备无法接收到其它设备发送的报文,则根据所述两个端 口已接收到的报文判断所述环形网络中发生故障的位置和设备。
全文摘要
本申请实施例公开了一种基于环行网络的通信方法,所述环行网络中包含若干设备,所述若干设备之间在物理上相互连接组成单环,每个所述设备至少包括两个端口,所述环行网络中包含处于通信状态的主线路和备用线路,所述方法包括在进行实时通信的每个通信周期内,所述若干设备中的每个设备按照预先设置的次序从所述主线路和备用线路发送报文,并接收其它设备发送的报文;当接收到由同一个设备发送的互为冗余的报文时,从所述互为冗余的报文中选择一个报文。在每个通信周期,所有设备依据初始化配置的次序冗余发送报文既避免了报文碰撞,又降低了丢包、误码等对通信的影响,提高了环形网络通信的确定性和可靠性。
文档编号H04L12/56GK101778030SQ200910262199
公开日2010年7月14日 申请日期2009年12月31日 优先权日2009年12月31日
发明者冯冬芹, 王强, 褚健, 金建祥 申请人:中控科技集团有限公司;浙江大学