控制网络系统、及其节点装置的制作方法

文档序号:11290954阅读:144来源:国知局
控制网络系统、及其节点装置的制造方法

本发明涉及一种多个节点装置通过通信线连接,并在每个规定周期进行数据交换的控制用网络系统。



背景技术:

控制用网络系统(设备控制用传送系统等)中,构成系统的各机器(节点)必须在保证实时性的基础上,相互交换大容量数据。保证实时性是指,例如在固定周期的各期间内完成需要进行数据交换的所有机器间的数据交换。各机器以例如固定周期收集表示此时该机器的状态等的数据,并将其传输至其他所有机器。反之,各机器会以例如固定周期获得其他所有机器的各状态数据等,并使用该获取数据实施某些规定的处理。

另外,上述各机器(节点)是管理某些控制对象机器的装置等,随时收集例如表示控制管理机器的现状的数据(温度、压力、转速等)。然后,必须在所有机器(节点)中共享各机器(节点)的收集数据。

如果根据各机器(节点)中搭载的应用程序产生的访问请求,采用在事件性上进行相互访问的传送方式,则网络负载依赖于应用程序,无法保证实时性。因此,通过采用在各机器上设置虚拟的共用存储器(commonmemory),各机器在每个通信周期(扫描时间)以分时复用方式(互不相同的定时)通过将自身节点数据发送至网络上的所有节点的传送方式,实现了保证实时性的数据交换方式。另外,各节点利用接收到的数据更新上述共用存储器的相应区域的数据,从而应用程序对共用存储器进行访问,获得其他节点的最新数据,并使用该最新数据实施某些处理。

关于用来实现上述数据交换的网络上的高效率的广播通信(broadcastcommunication)方法,已经提出了各种方法,此处作为一例列举专利文献1的发明。

专利文献1的发明中,通过并用利用各节点的内置计时器实施的分时复用访问方式、以及根据来自主节点的同步化帧实施从属节点的内置计时器修正,从而防止来自各节点的发送定时重复,并且实现高效率的传送。

或者例如专利文献2中也公开了一种与专利文献1大致相同的现有技术。

图14表示采用上述专利文献1、2等现有方法进行数据交换的具体例。

该现有方法中,各站(节点)具备循环计时器和发送计时器这2种计时器。循环计时器是用来生成数据交换周期(扫描时间)的计时器,在所有站中设定相同的时间。现有方法中,针对利用同步帧实现所有站的循环计时器的同步化,没有作特别说明。

发送计时器是用来生成各站的数据发送定时的计时器,所有站中设定为互不相同的值。发送计时器在循环计时器的计时结束时启动,并在与上述设定值相应的定时计时结束,因此所有站会在互不相同的定时计时结束。因此,例如图14所示,所有站的数据发送定时互不相同。

以下说明图14的具体例。

如图所示,通过上述循环计时器生成数据交换周期(通信周期)即扫描时间101。扫描时间101由用于时刻校准的图示的tc频带102以及用于数据交换的图示的ts频带103构成。另外,tc频带、ts频带如例如专利文献2所述,此处不作特别说明。

例如,tc频带中,利用专利文献2等所记载的节点同步方法等,将用来进行时刻同步的同步帧104通过主节点发送至传送路径上,从而使各从属节点的循环计时器同步化。而且,ts频带中,各节点以分配至本站的发送定时将本站的数据广播发送至通信路径上。各个节点以本站的循环计时器为基础,在各通信循环的开始定时启动本站的发送计时器,发送计时器计时结束的定时为上述发送定时。

因此,如图14所示,所有站的发送计时器会在互不相同的定时计时结束,因此帧数据(107、110等)会以互不相同的定时广播发送至未图示的通信路径上。换言之,通过对扫描时间101分时并将互不相同的发送时隙(105、108等)分配至各站。

专利文献1的发明中,传送路径构成为通过总线或串行电缆进行连接的网络,但最近在工业用网络中也开始使用以太网(ethernet),考虑到与信息系统设备的联动,在控制器级网络中,其将继续成为主流。

专利文献1:日本专利特开2005-159754号公报

专利文献2:国际公开编号wo2013/121568号



技术实现要素:

上述专利文献1、2等的现有方法中,将物理层设为总线或串行电缆的级联,因此能够通过广播一次向所有其他站发送数据。能够假设广播发送的数据的接收定时在各节点为同时或者几乎能够忽略时间差。

另一方面,在例如将100base-tx、1000base-t等以太网作为传送路径的全双工线路等、且采用环型或线型作为拓扑结构的情况下,其构成为,各站(节点)为了与相邻站以外的站进行通信,要以通过位于本站与通信对象站之间的1个以上的站进行中继为前提来实施传送。也就是说,采用该结构时,只有相邻站才能实现各站的直接通信。如果某节点从相邻站所发送的帧数据并非向本站发送时,会将其中继至其他相邻站。通过重复该中继,最终帧数据会到达发送目标站。

另外,上述相邻站是指,直接通过通信线与本站连接的其他站。此外,由于是全双工线路,所以通信线设有上行和下行2种。也就是说,设有用于从本站向相邻站发送数据的通信线以及用于接收从相邻站发送出的数据的通信线。

一般通过fw或lsi等将帧数据中继至邻接节点时,会发生固定的中继延迟,因此将任意节点的帧数据广播通信至所有节点时,最大情况需要“‘构成节点数-1’×中继延迟时间+传送时间”的时间。

图15是采用环型拓扑结构的全双工线路的控制用网络系统的具体例。

图示的例子中,4个节点(站1、站2、站3、站4)分别通过上述上行和下行2条通信线,如图所示连接成环型,将整个网络中向右旋转(顺时针旋转)的通信路径设为线路a,将向左旋转(逆时针旋转)的通信路径设为线路b。在线路a的情况下,例如来自站1的发送数据会按照站1→站3→站2→站4→站1的顺序,依次通过站3、站2、站4中继,并返回站1。同样地,在线路b的情况下,例如来自站1的发送数据会按照站1→站4→站2→站3→站1的顺序,依次通过站4、站2、站3中继,并返回站1。

图16表示采用图15的系统中现有的通信方式的控制用网络系统的动作的一例。另外,图16是上述线路a的动作例,线路b也大致相同。

如上所述,控制用网络系统中,在固定周期的各扫描时间内,所有站必须将本站的数据发送给其他所有站。图16中示出了在例如图15所示的环型拓扑结构的结构中实现该动作时的动作例。

图16的示例为令牌方式,获得令牌(发送权)的站能够发送本站的数据,其他站则接收并中继该数据。

图中的示例中,首先,站1获得令牌,然后将本站的数据发送至下游的相邻站。在线路a的情况下,图15的结构中下游的相邻站为站3。在线路a的情况下,图15的结构中站1的上游的相邻站为站4。另外,图16中,矩形表示收发数据帧(信息包),并且各站的上侧表示接收,下侧表示发送。此外,横轴为时间。矩形中的数字表示发送源的站,例如‘1’表示发送源为站1,记作信息包‘站1’。获得上述令牌的站1会对站3发送信息包‘站1’。另外,矩形中的‘t’表示令牌。

站3接收上述信息包‘站1’后,在获得该信息包的同时向下游的相邻站(站2)中继。收到该信息包‘站1’的站2也同样地,在获得的同时向下游的相邻站(站4)中继。收到该信息包‘站1’的站4也同样地,在获得的同时向下游的相邻站(站1)中继。

由此,站1会接收本站的发送数据帧,并释放令牌。此处,令牌中包含权限站信息,在释放时会更新权限站。此处,假设权限站以‘1’→‘2’→‘3’→‘4’→‘1’→‘2’→等的方式,在每次释放时进行更新。此处,在上述站1的令牌释放时,权限站会更新为‘2’。

然后,站1的下游的相邻站即站3接收令牌,但由于权限站并非本站,所以会直接中继至本站的下游的相邻站即站2。站2接收令牌后,由于权限站为本站,所以获得发送权,发送本站的数据(信息包‘站2’)。当然会将本站的数据发送至本站的下游的相邻站即站4。该信息包‘站2’也与上述信息包‘站1’大致同样地,按照站2→站4→站1→站3的顺序依次进行接收、中继,最后站2接收本站的发送数据,并释放令牌。

然后,站3、站4也获得令牌并取得发送权,发送本站的数据,数据依次通过其他站中继后,返回本站。

如此,所有站1、2、3、4发送本站的数据,并且其他站全都接收、获取该数据。也就是说,所有站将本站的数据发送给其他所有站。

控制网络系统中,必须以例如固定周期、例如在循环计时器从启动至计时结束为止的时间(扫描时间)内,完成需要交换数据的所有站(节点)相互彼此的数据交换。也就是说,所有站必须分别将本站的数据发送至其他所有站。想要通过环型拓扑结构的网络来实现该动作时,例如通过令牌方式来进行的情况下,会进行上述图16所示的动作。也就是说,将发送信息包在各站巡回一圈(至返回本站为止)所用的时间设为ta,将站数设为m时,最少也要花费“ta×m”的时间。也就是说,非常耗费时间,因此必须将上述扫描时间设定得非常长。换言之,会产生数据交换周期变长的问题。

本发明的课题在于提供一种控制网络系统及其节点装置等,能够在连接至网络的所有节点装置相互进行数据交换的控制网络系统中,提高传送效率并以比现有技术更短的时间完成数据交换。

本发明的控制网络系统即多个节点装置相互进行交换数据的控制网络系统中,所述各节点装置具有下述各结构:

·数据发送单元,该数据发送单元在每个规定的数据交换周期以规定的定时向相邻站发送本装置的数据;以及

·中继单元,该中继单元在接收到来自任意相邻站的发送数据时,获取该发送数据并且将该发送数据向其他相邻站进行中继;

而且,将所有节点装置的所述规定的定时设为相同定时。

附图说明

图1(a)、(b)是本例的控制网络系统的整体结构图。

图2(a)、(b)是表示节点的驱动器的处理的流程图(其1)。

图3是表示节点的驱动器的处理的流程图(其2)。

图4是表示节点的驱动器的处理的流程图(其3)。

图5是表示节点的处理部的处理的流程图。

图6是表示采用本方法的网络系统的本站数据发送所涉及的动作的图。

图7是表示采用本方法的系统整体的数据收发动作的图(其1)。

图8是表示采用本方法的系统整体的数据收发动作的图(其2)。

图9(a)、(b)是步骤s21、s23、s24、s26的处理示意图。

图10是本例的控制网络系统的拓扑结构的其他例。

图11是本例的控制网络系统的功能框图。

图12是线型的全双工线路的控制网络系统的结构例。

图13是环型的单线路的控制网络系统的结构例。

图14是表示采用现有方法的数据交换的具体例的图。

图15是采用环型拓扑结构的全双工线路的控制用网络系统的具体例。

图16是表示采用图15的系统中现有的通信方式的控制用网络系统的动作的一例的图。

具体实施方式

以下,参照附图对本发明的实施方式进行说明。

图1(a)、(b)是本例的控制网络系统的整体结构图。

另外,图1中例示了全双工线路等且以环型作为拓扑结构的网络系统,但本例的控制网络系统的结构并不限定于此例。例如,也可以并非环型而是线型,也可以是以下图示的其他类型。此外,并不限定于全双工线路,也可以是例如二倍的线路数(称为全四工线路)等,或者也可以是单线路。此外,图1中例示的构成节点为4个,当然不限于此例。

此外,本例的控制网络系统中,如上所述,构成系统的各机器(节点)也必须相互进行数据交换,并且必须在保证实时性的基础上进行数据交换。因此,必须在例如通过上述循环计时器规定的数据交换周期的时间内(扫描时间内)完成所有节点间的数据交换。也就是说,其前提为所有节点必须在扫描时间内将自身节点的数据发送至其他所有节点。换言之,如上所述,其前提为,构成系统的各机器(站;节点)必须在保证实时性的基础上相互进行交换数据。

图1(a)所示的例子的控制网络系统与上述图15同样地,图示的4个节点10(站1、站2、站3、站4)通过全双工通信线路12、13连接,并且将整个网络中向右旋转(顺时针旋转)的通信路径设为线路a,将向左旋转(逆时针旋转)的通信路径设为线路b。如图15所示,通信线路12、13为例如上行和下行的通信线,例如站1与站2之间的通信中,站1通过通信线路12向站2发送数据,站2通过通信线路13向站1发送数据。

更详细地说,如图1(b)所示,各节点10具有例如驱动器11,上述线路a所涉及的通信线路12(12a、12b、12c、12d)和上述线路b所涉及的通信线路13(13a、13b、13c、13d)分别如图所示连接至各节点10的驱动器11。

此处,通信线路12、13分别由多根通信线(串行线等)而非1根通信线(串行线等)构成。也就是说,例如通信线路12由图示的通信线12a、12b、12c、12d构成。各通信线连接在任意的2个节点10之间。图示的例子中,通信线12a连接在站1-站2之间,通信线12b连接在站2-站3之间,通信线12c连接在站3-站4之间,通信线12d连接在站4-站1之间。

通信线路13也是同样的。也就是说,通信线路13由图示的通信线13a、13b、13c、13d构成。各通信线连接在任意的2个节点10之间。图示的例子中,通信线13a连接在站1-站2之间,通信线13b连接在站2-站3之间,通信线13c连接在站3-站4之间,通信线13d连接在站4-站1之间。

而且,例如对于站1-站2间通信,站1通过通信线12a向站2发送数据帧(信息包),站2通过通信线13a向站1发送数据帧(信息包)。因此,即使站1与站2同时相互发送信息包,由于使用的通信线不同,所以不会发生信息包冲突。其他站间的通信也同样如此,作为整个网络系统,即使所有站同时发送信息包,由于各自发送信息包时使用的通信线不同,所以不会发生信息包冲突。

此外,各节点10除了上述驱动器11以外,还具有处理部14、循环计时器15以及发送计时器16。循环计时器15、发送计时器16已在上述专利文献1、2中进行了说明,此处省略说明。处理部14执行节点10的主要处理,例如未图示的控制对象机器的处理、表示其状态的数据等的收集、循环计时器15及发送计时器16的设定、启动的管理以及发送数据帧(信息包)的生成等各种处理。

驱动器11是经由通信线路12、13进行通信处理的处理部(通信专用处理器等),所述处理部例如根据来自上述处理部14的请求,将上述发送数据帧发送至其他节点,或者接收来自其他节点的发送数据帧后将其传输至处理部14等。

不论是通信线路12、13中的哪一个,驱动器11接收到由上游侧发送的信息包后,会在判断为要将其中继时,将其向下游侧发送。例如,若以站1为例,则线路a中站4为上游侧,站2为下游侧,线路b中站4为下游侧,站2为上游侧。

因此,站1的驱动器11经由通信线12d接收来自站4的发送信息包(数据帧)后,在要对其进行中继的情况下,经由通信线12a将其传输至站2。另外,在进行中继时,获得数据帧的内容(数据),并根据需要传输至处理部14。同样地,经由通信线13a接收来自站2的信息包后,在对其进行中继时,经由通信线13d将其发送至站4。此外,在站1发送本站的数据时,站1的驱动器11将该数据帧发送至线路a、线路b两个系统。也就是说,将该数据帧经由通信线12a发送至站2,并且经由通信线13d将其发送至站4。

图2(a)、(b)是表示节点10的处理的流程图。

图2(a)表示发送本站数据时驱动器11的处理。

节点10具有的上述处理部14(cpu/mpu等)通过执行规定的软件(程序)等,执行规定的控制处理等。然后,作为该处理之一,在发生了发送本站的数据的事件的情况下,将该数据及发送请求传输至驱动器11。

驱动器11接收上述数据及发送请求后(步骤s11),将该数据帧发送至上述线路a、线路b两个系统(步骤s12)。如上所述,这两个系统均向下游侧发送。因此,在站1的情况下,线路a中经由通信线路12a发送至站2,线路b中经由通信线路13d发送至站4。

如果正常,则上述所发送的本站数据(信息包)会在网络中巡回一圈后返回本站。此外,有时也会接收其他站的发送数据(信息包)。

图2(b)表示数据接收时的驱动器11的处理。

驱动器11经由上述线路a、b中的任一个接收任意的信息包后,实施图2(b)的处理。首先,检查接收信息包的发送源,在发送源为本站的情况下(步骤s21为否),则放弃该信息包(步骤s23)。此时,本站在上述步骤s12中发送的信息包应当在网络中巡回一圈并返回。

另一方面,在接收信息包的发送源是其他站(本站以外)(步骤s21为是),中继接收信息包(步骤s22)。也就是说,将接收信息包传输至下游的相邻站。当然,通过线路a接收到的情况下向线路a中的下游中继,通过线路b接收到的情况下向线路b中的下游中继。此外,即使在中继时,接收信息包也残留在未图示的缓存等中,在下述步骤s24、s25的处理时进行利用。

在进行了步骤s22的处理的情况下,进一步判定该接收信息包与接收完成的信息包是否相同(步骤s24)。本例中,发送源节点在上述步骤s12中向线路a、线路b两个系统发送信息包,因此如果正常,则其他站接收这2个信息包。因此,无需之后接收的信息包。然后,在所接收的信息包与接收完成的信息包相同的情况下(步骤s24为是),则放弃接收信息包(步骤s26)。

另外,例如,发送源节点在上述步骤s12时,对要发送的2个信息包(数据帧)标记相同的帧编号。通常,在每次发送数据帧时,标记帧编号并进行发送。每次发送时,帧编号被更新(例如+1递增)。因此,步骤s24的处理中,例如在接收信息包与接收完成的信息包的发送源节点相同且帧编号相同的情况下,判定为两者相同。但这仅为一例,并不限定于此。

另一方面,在接收信息包为上述2个信息包中先接收到的任一个的情况下(步骤s24为否),将该接收信息包的数据传输至处理部14(步骤s25)。虽然处理部14利用该数据进行某些处理,但本发明与其并无特别关系,因此省略说明。

此处,接收数据时驱动器11的处理并不限定于上述图2(b)的处理例,也可以是例如图3、图4所示的处理。

图3是接收数据时的驱动器11的处理流程图(其2)。

图4是接收数据时的驱动器11的处理流程图(其3)。

以下,首先对图3进行说明。

驱动器11经由上述线路a、b中的任一个接收到任意的信息包后,执行图3的处理。首先,检查接收信息包的发送源,在发送源为本站的情况下(步骤s31为否),则放弃该信息包(步骤s35)。另外,步骤s31、s35的处理与上述步骤s21、s23的处理相同。

另一方面,在接收信息包的发送源为其他站的情况下(步骤s31为是),接着判定接收信息包与接收完成的信息包是否相同(步骤s32)。该处理可以与上述步骤s24相同,此处不作特别说明。然后,在所接收的信息包与接收完成的信息包相同的情况下(步骤s32为是),则放弃接收信息包(步骤s35)。步骤s35可以与上述步骤s26相同,进而步骤s26可以与步骤s23相同。由此,在图3中,“放弃”处理汇总为一个来表示。

另一方面,在接收信息包为步骤s24中说明的2个信息包中先接收到的任一个的情况下(步骤s32为否),中继该接收信息包(先到信息包)(步骤s33),并且将该数据传输至处理部14(步骤s34)。

步骤s33、s34可以与上述步骤s22、s25相同。

上述图3的处理与图2(b)的处理的不同点在于,接收信息包的发送源为其他站,并且在接收到首个信息包的情况下,进行该信息包的中继处理。

也就是说,图3的处理中,即使接收信息包的发送源为其他站,在所接收的信息包与接收完成的信息包相同的情况下,不进行该信息包的中继。另一方面,图2(b)的处理中,在此种情况下仍进行信息包的中继。与图2(b)的处理相比,图3的处理能够减少整个系统的中继次数。图3的处理中,例如可以视作使任意的节点10发送至线路a、线路b两个系统的数据中、首先到达本站的数据(先到信息包)进行中继,之后到达本站的数据(后到信息包)不进行中继。

关于这点,例如在站3对于站1发送至两个系统的信息包进行图3的处理的情况下,假设路径为站1→站2→站3的信息包先到达站3,然后路径为站1→站4→站3的信息包到达站3。此时,图3的处理中,后到达的信息包不会向站2中继。但是,站2已经按照上述站1→站2→站3的路径完成接收信息包,所以没有问题。

接着,说明图4的处理。

另外,图4的处理与图2的处理的不同点在于,执行步骤s41的处理来取代步骤s21,其他处理(步骤s42、s43、s44、s45)可以与图2的步骤s22、s24、s25、s23(或s26)相同,此处不作特别说明。

步骤s41的处理为检查接收信息包的发送源,并判定发送源是否为本站的下游的相邻站发送的帧的处理。并且,在发送源为本站的下游的相邻站发送的帧的情况下(步骤s41为是),则放弃该接收信息包,否则(步骤s41为否)转移至步骤s42。

另外,当然会对各信息包(数据帧)标记发送源节点的识别编号(站id等)。此外,例如各节点10预先存储网络构成信息。对于各节点10,网络构成信息包含本节点的上游侧和下游侧的相邻站的上述站id等信息。网络构成信息例如由开发者等预先任意生成并存储在各节点10中,但并不限定于此例。例如,也可以预先准备特殊信息包,该特殊信息包决定除了发送源节点以外不允许放弃、必须进行中继,并且在中继时会标记中继站的上述站id等。任意的节点10在特性时(例如空闲频带)发送上述特殊信息包,巡回一圈将其返回发送源节点,则发送源节点能够基于上述标记的站id,判断上游侧、下游侧的相邻站。

在图2(b)、图3的情况下,本站在步骤s12中发送的帧绕环型网络一圈返回本站后被放弃。但是,不限于此例,也可以在本站的前1个其他站被放弃,与这样的例子相对应的是图4的处理。

另外,并不限于图4的例子,例如也可以在图3的处理中,进行步骤s41的处理来取代步骤s31。

以上图2、图3、图4的处理总结为例如下文所述。

·信息包在在环型网络上绕各节点10一圈后,也就是说需要进行数据交换的所有节点10接收之后进行放弃。进行放弃的可以是信息包发送源的节点10,也可以是前一个节点10(向发送源节点中继信息包的节点10)。

·发送源节点将上述信息包发送至线路a、线路b两个系统。其他各节点10从两个系统接收信息包。其他各节点10的驱动器11将最初接收到的信息包传输至处理部14(实质上接收),但第2个接收到的信息包不会传输至处理部14(实质上不接收)。

·上述其他各节点可以中继上述第2个接收到的信息包,也可以不中继。

图5是表示节点10的处理部14的处理的流程图。

图5的处理是随时执行的,基本上为等待某些事件的状态(步骤s51),在每次发生某些事件时(步骤s52为是),执行与所发生的事件的内容对应的处理。

在所发生的事件为循环计时器15的超时(循环t.o.)的情况下(步骤s53为是),对发送计时器16设定规定的设定值(步骤s54),并启动发送计时器16(步骤s55)。

在所发生的事件为发送计时器16的超时(发送t.o.)的情况下(步骤s56为是),发送本站的数据(步骤s57)。其为将上述本站的数据及发送请求传输至驱动器11。由此,如上文所述,驱动器11接收上述步骤s11的数据和发送请求,并将该数据发送至上述线路a、线路b两个系统(步骤s12)。

另外,基本上在上述步骤s55中启动的发送计时器16计时结束的情况下,上述步骤s56为是。

此外,在所发生的事件为接收共用存储器帧的情况下(步骤s58为是),将该共用存储器帧的数据存储在未图示的共用存储器的相应区域(步骤s59)。另外,此处,根据上述步骤s57的处理发送的帧被称为共用存储器帧。根据上述图2(b)等的处理,驱动器11接收任意的其他站通过上述步骤s57的处理所发送的共用存储器帧,并且若使驱动器11通过上述步骤s25将其传输至处理部14,则上述步骤s58的判定为是。

此外,在接收帧并非共用存储器帧,而是例如同步化帧的情况下,执行以下说明的处理。

也就是说,主节点不仅是上述共用存储器帧,有时还会在其他定时发送用来使循环计时器15同步的同步化帧。其会对任意的接收目标节点进行发送。若接收目标节点以外的各节点10接收该同步化帧,则对其进行中继。若接收目标节点接收该同步化帧,则不进行中继,而是将同步响应帧回送至发送源节点(主节点)。该处理为图5所示的步骤s60、s61的处理。

也就是说,在所发生的事件为接收以本站为目标的同步化帧的情况下(步骤s60为是),将上述同步响应帧传输至驱动器11,并发送至发送源节点(主节点)(步骤s61)。

另外,可预先设定为构成系统的多个节点10中的某1个站(一例中为站1、站2、站3、站4中的某一个)作为上述主节点进行动作,或者按照站号、mac地址等的升序或降序等进行优先度判定,并作为上述主节点进行动作。主节点以外的节点10基本上全都作为从属节点进行动作。然后,主节点利用上述同步化帧等,使所有从属节点的循环计时器15与本节点的循环计时器15同步。以上内容已经记载在现有技术文献等中,此处不作更详细的说明。

此外,另外作为一例,例如在上述主节点发送上述同步化帧时,通过例如图2(a)的步骤s12的处理发送至线路a、线路b两个系统。然后,若接收目标的从属节点接收先到的同步化帧,则在例如图3、图5的处理的情况下,驱动器11通过步骤s34的处理将同步化帧传输至处理部14,因此处理部14在上述步骤s60为是,进行步骤s61的处理。然后,驱动器11通过上述步骤s12的处理,将上述同步响应帧发送至两个系统。然后,主节点中先到的同步响应帧通过步骤s34的处理传输至处理部14。另外,主节点和接收目标的从属节点双方均放弃后到的帧和本站的发送帧(步骤s35)。

通过以上处理,最终帧会以最短路径在主节点-接收目标的从属节点间进行往返。

然后,在主节点测量以该最短路径往返帧所需的时间,并计算该测量时间的一半时间作为主节点-接收目标的从属节点间的通信时间(通信延迟时间)。利用该通信延迟时间实现循环计时器15的同步化的处理是现有技术,此处不作特别说明。

另外,在所发生的事件并非上述各种事件中的任一种的情况下(步骤s60为否),执行与所发生的事件对应的处理,不对此作特别图示或说明。

此处,如图14中的说明所示,现有技术中发送计时器的设定值在所有站中设定为互不相同的值。相对于此,本方法中作为一例,在所有站中设定为相同的设定值(不限定于完全相同,也可以是大致相同的值。也就是说,可以是略有差异的值)。

换言之,在现有技术的情况下,步骤s54的发送计时器设定值,作为一例针对各个节点通过下述计算式来决定。

设定值=tc频带时间+(时隙单位时间×本站的分配时隙编号)

时隙单位时间为上述发送时隙(105、108等)的长度,作为一例,时隙单位时间=ts频带时间÷站数等。此外,分配时隙编号为“‘0’与自然数”,例如在站数=n个时,分配为0、1、2、……、n-1中的任一个,使各站不重复。

另一方面,在采用本方法的情况下,作为一例,对所有节点预先设定相同的发送计时器设定值。其一例如下所示。

设定值=tc频带时间+α(α;0或任意的正值)。

图6是表示采用本方法的网络系统的发送本站数据所涉及的动作的图。

如图所示,各节点10在每个由循环计时器15生成的扫描时间21(数据交换周期)中执行上述步骤s54、s55的处理,发送计时器16开始动作。如上文所述,所有节点10的发送计时器16中设定任意的相同值,因此如图6所示,所有发送计时器16在相同定时计时结束。然后,在所有节点10同时进行上述步骤s57的处理(发送本站数据帧26)。

但这仅为一例,并不限定于该例子。基本上,只要能够实现在所有节点10同时进行上述步骤s57的处理(发送本站数据帧26),则可以采用任何方法。另外,此处的“同时”不仅限于完全同时,也可以略有偏差。

为了同时发送上述本站数据,采用如上文所述那样构成为所有发送计时器16以相同定时计时结束,作为用来实现此动作的一例,在实现循环计时器15的同步化的基础上,对所有节点10的发送计时器16设定相同的值,但不限定于此例。

例如作为一例,只要从发送计时器16的启动至计时结束为止的时间(计数等)相同即可,作为实现此动作的方法的一例,如上文所述将设定值设定为相同值,但并不限定于此例。例如,如果各发送计时器16的初始值(启动时的值)不同,当然设定值也变得不同。例如将上述计数设为‘1000’时,例如设站1的发送计时器16的初始值为“0”,站2的发送计时器16的初始值为“1000”,站3的发送计时器16的初始值为“2000”,站4的发送计时器16的初始值为“3000”。此时,各发送计时器16在上述步骤s54中设置的设定值如下:站1为“1000”、站2为“2000”、站3为“3000”、站4为“4000”时,所有节点10中到发送计时器16计时结束为止的计数为“1000”。因此,所有发送计时器16会在相同定时计时结束。

如上文所述,本方法中,作为一例,只要使所有发送计时器16构成为会在相同定时计时结束即可,可以采用任何方法。例如,只要构成为通过使所有节点10的发送计时器16在相同定时启动并在相同时间后计时结束,从而使所有发送计时器16在相同定时计时结束,则任何构成均可。此外,并不限定于此例。

并且,本方法中,也可以不构成为所有发送计时器16在相同定时计时结束,只要最终所有节点10的本站数据发送定时相同,则任何构成均可。

然后,上述“相同定时”不限定于完全相同的定时,也可以略有偏差。

另外,图示的例子中,节点10有5个,图示的第1发送计时器~第5发送计时器表示该5个节点10各自的发送计时器16。

另外,为了在上述相同定时进行数据发送,前提是所有节点的循环计时器同步,这已经在上述专利文献1、2等现有技术中得以实现,此处不作特别详细的说明,以下仅作简单说明。

首先,为了使上述循环计时器同步,现有技术中,求出主节点与各从属节点之间的传送延迟时间。通过实际测量特定的信息包在主节点-从属节点之间往返所用的时间,将该实测值的一半设为传送延迟时间。各从属节点接收上述特定信息包后,会立即将其返送至主节点。本方法中,基本上也是进行与其相同的处理来求出传送延迟时间。也就是说,在特定信息包的情况下,并不是使其在环型网络上巡回一圈,而是将各从属节点依序设为接收目标,将特定信息包中继至作为接收目标的从属节点。然后,当接收目标的从属节点接收特定信息包时,会立即将其返送至主节点。

但是,本例中,主节点将上述特定信息包发送至线路a、线路b两个系统,接收目标从属节点通过2个通信路径2次接收特定信息包。接收目标从属节点仅对最初接收的特定信息包进行上述返信处理,放弃第2次接收到的特定信息包。也就是说,求出主节点-各从属节点之间的最短路径的传送延迟时间。

另外,本说明中未特别区分主节点、从属节点,此处假设图1的站1为主节点。然后,在站1将例如接收目标设为站2的特定信息包发送至线路a、线路b这两个系统的情况下,站2首先经由通信线12a接收特定信息包,并立即经由通信线13a将其返送至站1。之后,站2通过线路b,经由通信线13b接收通过站4、站3中继的特定信息包,但该特定信息包会被放弃。

如此,可求出主节点(站1)-站2之间的传送延迟时间,即最短路径中站1-站2之间的通信所花费的时间。也可同样求出站1-站3之间、站1-站4之间的传送延迟时间。

如图6所示,数据交换周期即扫描时间21由用于时刻校准的tc频带22以及用于数据交换的ts频带23构成。tc频带22中,利用例如专利文献2的节点同步方法等,将用来进行时刻同步的同步帧24通过主节点发送至传送路径上。各从属节点基于该同步帧24的接收定时和上述传送延迟时间,使本站的循环计时器15与主节点的循环计时器15同步。该处理为图5所示的步骤s62、s63的处理。也就是说,所发生的事件为存在同步帧的接收的情况(步骤s62为是),使循环计时器进行同步(步骤s63)。

另外,上述同步化帧为上述特定信息包的一例,同步化帧与同步帧24不同。

另外,图6中仅示出了1个循环计时器15的动作,但各节点10分别基于本站的循环计时器15进行动作。如上文所述,在所有循环计时器15同步的前提下才仅示出1个。

图7示出了采用本方法的系统整体的数据收发动作。

另外,图7在图1所示的站1与站4之间还设置了站5,示出了作为整体由5个节点10构成的结构中的动作。

另外,图7与图16同样地,图示的矩形表示收发数据(信息包),并且在各站中上侧表示接收,下侧表示发送。此外,横轴为时间。矩形内记载发送源的站。此外,图7中从上述发送计时器16计时结束的时刻开始表示。因此,如图上左端所示,各站同时发送本站的数据。例如,站1发送图示的矩形内为“站1”的数据。

通过ts频带,在所有节点10之间进行数据的相互交换。各节点10在上述图6所示的发送定时,将相同的帧(本站数据)发送至线路a及线路b。各节点10在接收到从上游的相邻节点(相邻站)中继过来的帧时,在发送源为本站的情况之外,将接收到的帧对下游的相邻节点进行中继。

另外,如上文所述,向线路a和线路b两个系统进行数据发送,因此图7中示出了分别针对线路a、线路b的数据收发动作,此处为了简化,仅说明线路a,线路b可视为与线路a相同。

此处,关于线路a,若以站1为基准来考虑,则信息包以站1→站2→站3→站4→站5→站1的顺序巡回。

也就是说,对于线路a,从站1来看,下游侧的相邻站为站2,上游侧的相邻站为站5。因此,图7所示的线路a所涉及的动作中,站1的发送数据(中间写着“站1”的矩形)由站2来接收。此外,站1在发送该“站1”数据中,如图所示开始接收“站5”数据。虽然“站1”数据与“站5”数据的发送定时相同,但由于通信路径造成的延迟等,接收定时略有延迟。

关于上述站1的动作在其他站也同样,例如站3将本站数据发送至站4,并如图所示,在该数据发送中开始接收“站2”数据。

然后,例如站1接收完上述“站5”数据后,立即将该“站5”数据传输至站2。也就是说,对“站5”数据进行中继。另外,在接收数据全部接收结束前,不能传输该接收数据。而且,站1在该“站5”数据的传输处理中,如图所示,这次开始接收从站5传输来的“站4”数据。然后,接收完成后,会立即开始传输“站4”数据。

然后,站1也会如图所示,依次中继“站3”数据、“站2”数据(接收并传输),并且在之后如图所示接收“站1”数据。也就是说,本站数据在线路a上巡回一圈后返回。此时,站1中,上述步骤s21的判定为否,因此进行上述步骤s23的处理(放弃所接收的“站1”数据)。

其他站的动作也与上述站1的动作大致相同,最后接收本站的发送数据,并将其放弃。当然,这仅为图2(b)所示的一例,如上文所述并不限定于此例。

由此可知,如图7所示,所有节点10几乎没有空闲时间地执行收发处理,与上述图16所示的现有方法相比,能够在短时间内完成所有节点间的数据交换。而且,与现有方法相比,可以增加数据量,或者也可以减小循环计时器15的设定值,缩短扫描时间。

由于不会如现有技术那样使各节点间的通信频带成为未使用状态,所以能够缩短所有节点间相互进行交换数据所需的时间,在剩余的频带时间内进一步交换数据,并且能够增加网络上的数据量。此外,通过将该剩余的频带时间用作下一个扫描时间,能够实现数据交换周期的高速化。

此外,此处如上文所述说明了线路a的动作,但线路b同样会使信息包在环型网络上巡回一圈。然后,如果正常,则如上文所述,各节点10会从线路a和线路b双方接收相同的信息包。并且,对之后接收到的信息包执行上述步骤s26的处理而被放弃。

例如站1在上述线路a中,通过站5→站1接收“站5”数据,在早期阶段进行接收。另一方面,线路b中通过站5→站4→站3→站2→站1接收“站5”数据,在最后阶段进行接收。也就是说,站1第1次从线路a接收“站5”数据,第2次从线路b接收“站5”数据,第1次进行步骤s25的处理,第2次进行步骤s26的处理。但是,这仅为一例,并不限定于此,例如也可以第1次进行步骤s26的处理,第2次进行步骤s25的处理。如此,在接收到两个相同的帧时,按照先到优先或后到优先的原则,放弃其中一个,接收另一个。

此外,图7所示的例子中示出了所有节点10的发送数据量相同的情况,但本方法在各站的发送数据量不同的情况下也能够获得上述效果。对于该情况,在图8中示出了具体例来进行说明。

另外,此处1个信息包能够发送的数据量设有上限,因此在发送数据量较多的情况下,分成多个信息包进行发送。而且,图8所示的例子中,站1与站4仅发送1个信息包,站2发送3个信息包,站3发送2个信息包。也就是说,站2的发送数据量最多,第二多的是站4。

此外,图8与图7不同,示出了图1所示的结构中的动作。由此,节点10的数量为4个(站1、站2、站3、站4)。而且,此处仅示出了线路a所涉及的动作,并省略线路b的动作。线路a中,例如信息包按照站1→站2→站3→站4→站1的顺序巡回一圈。

图8中、4个各站(站1、站2、站3、站4)分别在例如ts频带的最开始的本站的发送计时器16计时结束时,开始发送本站的数据。以站1为例,开始发送本站的数据(“站1”数据),并在该发送动作中开始接收“站4”数据。完成“站1”数据的发送,然后完成“站4”数据的接收时,立即开始将“站4”数据传输至站2。然后,依次接收2个“站3”数据,并将它们也依次中继至站2。然后,依次接收3个“站2”数据,并将它们也依次中继至站2。然后,接收“站1”数据后,如上文所述将其放弃(图2(b)的例子的情况)。

接着,说明图8所示的站2的动作。

如上文所述,站2发送3个本站数据(“站2”数据)。此处,例如驱动器11具有下述fifo存储器及发送专用芯片(ic等)而构成时,驱动器11会将上述3个“站2”数据存储至fifo存储器。发送专用芯片依次取出fifo存储器的存储数据并进行发送。首先,取出上述3个“站2”数据中最开始的“站2”数据并开始发送。图示的例子中,该发送处理中开始接收“站1”数据,完成“站1”数据的接收后,将其存储在fifo存储器中。并且,之后开始接收“站4”数据,完成“站4”数据的接收后,将其存储在fifo存储器中。

由于发送专用芯片按照存储顺序依次取出并发送fifo存储器中的存储数据,所以上述的例子中,如图所示首先依次发送上述3个“站2”数据,接着发送“站1”数据,然后发送“站4”数据。另外,“站1”数据、“站4”数据的发送为中继(传输)处理。另外,发送目标为下游的相邻站即站3。

站2进而依次接收2个“站3”数据,并在将接收完成的其他站数据中继完成后,对其进行中继。并且,虽然依次接收3个本站数据(“站2”数据),但这些也会按照上述步骤s23全部放弃。

另外,上述例子中在接收了本站数据之后进行放弃,但并不限定于此例。例如,也可以在接收到本站的下游侧的相邻站为发送源的信息包后,获得该信息包的数据但不中继(例如放弃)。当然,发送源无需获得该信息包的数据,仅会如上述步骤s23那样将其放弃,因此中继该信息包的处理无用,为了省去该无用处理,可进行上述处理。因此,能够以更短的时间完成所有节点的数据交换。

站3、站4的动作与上述站1、站2大致相同,省略其说明。

此处,利用图1(b)所示的结构,进一步说明图8的动作。

首先,图1(b)所示的驱动器11具备未图示的fifo存储器及发送专用芯片。fifo存储器与发送专用芯片(ic等)分别设有线路a用和线路b用。例如,在线路a用fifo存储器中设有任意1个以上的数据帧时,线路a用的发送专用芯片依次将其发送至线路a上。例如,在站2的情况下,在通信线12b上(即对站3)发送数据帧。

另一方面,驱动器11主体在实施上述步骤s12或步骤s22的处理时,进行将本站数据帧或接收到的数据帧存储至对应的fifo存储器中的处理。以上述图8中说明的站2为例,站2首先在步骤s12的处理中,将由3个数据帧构成的本站数据发送至线路a、线路b两个系统。此处仅说明线路a,在与线路a对应的fifo存储器中会依次存储上述3个“站2”数据帧。

然后,与线路a对应的发送专用芯片将该3个“站2”数据帧依次发送至通信线12b上。因此,如图8所述,站2依次将3个本站数据(“站2”数据)发送至站3。然后,在该处理中,如图8所说明的那样,站2依次接收“站1”数据、“站4”数据等,通过步骤s22的中继处理,依次将其存储至与线路a对应的fifo存储器中。因此,如图8所说明的那样,站2完成3个“站2”数据帧的发送后,接着依次发送“站1”数据、“站4”数据等。

但是,并不限定于上述例子,fifo存储器也可以存储表示各数据的存储位置的信息(指针等)。发送专用芯片从fifo存储器中依次取出指针等,并发送所取出的指针等表示的存储区域的数据。该情况下,例如中继处理时,将接收数据存储至用于接收的规定存储区域(接收缓存等),在接收完成后(完成接收数据的存储后),将表示该存储区域(接收缓存等)的指针等存储至fifo存储器中。

图9(b)表示上述步骤s21、s23的处理的示意图,图9(a)表示上述步骤s24、s26的处理的示意图。

此处,将各节点10作为具有图示的滤波器33的功能的节点进行说明。利用滤波器33,可实现上述步骤s21、s23的处理及步骤s24、s26的处理。此外,此处仅示出了站1和站2,但也可以是其他站(可以视为省略)。接着,说明站1中信息包接收所涉及的动作例。

首先,如图9(a)所示,在站2发送本站数据的情况下,其经由线路a、线路b传输至站1。站1接收的来自这两个系统的2个信息包为图示的站2a线路帧31、站2b线路帧32。滤波器33以先到优先或后到优先的方式,将这2个数据帧31、32中的任一个作为图示的站2帧34读取至本站内。

此外,图9(b)中,站1将本站数据发送至线路a、线路b两个系统,并将其经由站2等其他站进行中继,最终返回站1的帧被设为是图示的站1a线路帧41、站1b线路帧42。此时,通过滤波器33,这2个数据帧41、42双方在上述步骤s23中均被放弃。

另外,作为本方法的适用对象的网络拓扑结构不限于上述环型和线型的例子。例如作为一例,也可以是图10所示的网络拓扑结构。另外,图10中连接任意2个节点10间的各通信线46可视为相当于上述通信线12a、12b、12c、12d、通信线13a、13b、13c、13d。此外,本例的控制网络系统并不仅限于以太网。

图11是本例的控制网络系统的功能框图。

图11的控制网络系统由多个节点装置50构成,例如概略地说,是多个节点装置50同时发送数据也不会发生通信干扰的网络系统。

更详细地说,作为本方法的适用对象的网络例如由多个通信线61构成,为各通信线以点对点的关系连接在任意2个节点装置50之间而成的网络。并且为全双工线路。也就是说,由上行用通信线和下行用通信线构成。即,是各节点装置50同时发送数据,也不会发生信息包冲突的网络结构。并且,未通过通信线61直接连接的节点装置50之间的通信通过其他节点装置50进行中继来实现的网络。

而且,图11所示的例子中,各节点装置50分别具有第1计时器51、数据发送部52以及中继部53。还可具有第2计时器54。第1计时器51的一例可视为上述发送计时器16,第2计时器54的一例可视为上述循环计时器15。

数据发送部52在每个规定的数据交换周期(扫描时间内),在由第1计时器51生成的规定定时向相邻站发送本装置的数据。另外,发送目标为下游的相邻站。

中继部53接收到来自任意的(上游的)相邻站的发送数据时,获得该发送数据并且将其中继至其他相邻站。

而且,其特征在于,将所有节点装置50的由上述第1计时器51生成的规定定时设为相同定时。另外,相同并不限于完全相同,也可以是略有偏差。也就是说,相同还包含大致相同的情况。

例如,可通过将所有节点装置50的第1计时器51的设定值设为相同,使所有节点装置50的上述第1计时器51的规定的定时为相同定时,但并不限定于此例。另外,作为前提,例如必须预先使所有节点装置50的上述第2计时器54同步,但并不限定于此例。如上所述,同步的方法为现有技术。通过第2计时器54生成数据交换周期。

此外,例如通过将各节点装置50利用数据发送部52发送的数据全部由其他节点装置50的中继部53进行中继,从而在数据交换周期内由所有其他节点装置50接收、获得该数据,完成所有节点装置间的数据相互交换。另外,接收、获得例如为接收且获得的意思,但并不限定于此例。

此外,例如,图11所示的例子中的控制网络系统由多个上述节点装置50和多个通信线61构成,各通信线61连接在任意2个节点装置50之间。而且,各节点装置50能够与通过通信线与本装置连接的其他节点装置50即上述相邻站进行通信。未通过通信线连接时,节点装置间的通信可通过其他1个以上节点装置50利用上述中继部53进行中继来实现。

此外,上述通信线61例如是全双工线路。

此外,例如图11的控制网络系统为环型或线型的网络,但并不限定于此例。

或者例如图11的控制网络系统是利用环型或线型的拓扑结构通过全双工通信线路连接所述各节点装置而成的网络。而且,例如数据发送部52将本装置的数据发送至该全双工的两个系统中。

另外,图1示出了环型且全双工线路的例子。图12示出了线型的全双工线路的例子。图12的结构可视为图1(b)中不存在通信线12d及通信线13d的结构。采用此种线型结构的情况下,各节点10的发送数据不返回本站,在到达两端的节点10(该例中为站1、站4)的时刻结束中继。

此外,例如在所接收的数据的发送源为本装置的情况下,中继部53不进行中继,放弃该接收数据。

或者例如所接收的数据的发送源为下游侧的相邻站的情况下,中继部53不进行中继,放弃该接收数据。

例如,在上述数据交换周期内,通过重复上述中继使所有节点装置50的发送数据分别由所有其他节点装置50接收,从而完成所有节点装置间的数据交换。

此外,节点装置50具备cpu/mpu等运算处理器、存储器等存储部。存储部预先存储规定的应用程序。通过运算处理器执行该应用程序,实现上述数据发送部52、中继部53的处理功能。或者当然也可以通过运算处理器执行该应用程序,实现上述图2(a)、(b)、图3、图4、图5所示的流程图的处理。

如上所述,本方法中利用例如通过专利文献2等的节点同步方法与主节点的计时器实现同步的计时器,使构成网络的所有节点10同时向两侧相邻的相邻节点发送本站数据。本站数据的发送完成后,所有节点10分别将从自身节点的一侧的相邻节点接收到的帧数据中继给另一侧的相邻节点。如此,可同时使用构成节点间的全双工线路的传送频带,提高传送效率,增大网络整体的传送量并实现数据交换周期的高速化。因此,在例如环型拓扑结构或线型拓扑结构的全双工线路的网络系统中,能够增加网络上的数据量,并且实现数据交换周期的高速化。

另外,对象为控制用网络系统,必须如上文所述在每个规定的数据交换周期(扫描时间内)完成所有节点间的数据交换,因此其前提为构成系统的各节点必须在保证实时性的基础上进行相互的数据交换。

另外,本方法并不限定于上述实施例。例如,适用对象不仅限于上述“环型拓扑结构或线型拓扑结构的全双工线路的网络系统”。如上文所述,拓扑结构不仅限于环型或线型。并且,不仅限于全双工线路,可以是多重线路(4重线路等),也可以是单线路。

在单线路的情况下,其构成为仅存在例如图1所示的线路a、线路b的各通信线路12、13中的任一个。例如,构成为仅存在通信线路12。图13示出了此种构成例。

此外,在单线路的情况下,为了与循环计时器15同步,例如可首先作为图1所示的2线路的结构与循环计时器15取得同步,然后变更为单线路的结构,以单线路来运用,但并不限定于此例。例如作为其他例,也可以通过在所有节点10上设置无线电时钟,从而在每个各节点10使循环计时器15与自身的无线电时钟的时间一致,最终使所有节点的循环计时器15同步。

此外,在单线路的情况下(此处仅设为线路a),各节点10的处理基本上与上述图2(a)、图3、图4、图5的处理大致相同,但存在部分差异。也就是说,首先上述步骤s12的处理为仅线路a进行数据发送的处理。此外,关于接收处理,无需从两个系统接收2个信息包,因此可删除步骤s24、步骤s43的处理。

根据本发明的控制网络系统、该节点10等,在需要交换数据的所有节点10相互交换数据时,能够以短于现有方法的时间完成数据交换。因此,在使用本发明的控制网络的控制系统中,能够实现数据刷新周期(定期的)的高速化,因此能够实现控制的高速化。还能够期待对顾客系统的生产效率的提高等。

根据本发明的控制网络系统、及其节点装置等,在需要交换数据的所有节点装置相互进行数据交换时,能够以短于现有方法的时间完成数据交换。由此,在使用本发明的控制网络的控制系统中,能够实现数据刷新周期(定期的)的高速化,因此能够实现控制的高速化。还能够期待对顾客系统的生产效率的提高等。

当前第1页1 2 
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1