WO2017026180A1 - 制御ネットワークシステム、そのノード装置 - Google Patents

制御ネットワークシステム、そのノード装置 Download PDF

Info

Publication number
WO2017026180A1
WO2017026180A1 PCT/JP2016/069040 JP2016069040W WO2017026180A1 WO 2017026180 A1 WO2017026180 A1 WO 2017026180A1 JP 2016069040 W JP2016069040 W JP 2016069040W WO 2017026180 A1 WO2017026180 A1 WO 2017026180A1
Authority
WO
WIPO (PCT)
Prior art keywords
station
data
node
network system
control network
Prior art date
Application number
PCT/JP2016/069040
Other languages
English (en)
French (fr)
Inventor
創 久保隅
Original Assignee
富士電機株式会社
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by 富士電機株式会社 filed Critical 富士電機株式会社
Priority to CN201680007352.7A priority Critical patent/CN107210940B/zh
Priority to JP2017534129A priority patent/JP6528847B2/ja
Priority to EP16834877.9A priority patent/EP3242445B1/en
Priority to KR1020177021346A priority patent/KR101947569B1/ko
Publication of WO2017026180A1 publication Critical patent/WO2017026180A1/ja

Links

Images

Classifications

    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L12/00Data switching networks
    • H04L12/28Data switching networks characterised by path configuration, e.g. LAN [Local Area Networks] or WAN [Wide Area Networks]
    • H04L12/42Loop networks
    • H04L12/427Loop networks with decentralised control
    • H04L12/433Loop networks with decentralised control with asynchronous transmission, e.g. token ring, register insertion
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L12/00Data switching networks
    • H04L12/28Data switching networks characterised by path configuration, e.g. LAN [Local Area Networks] or WAN [Wide Area Networks]
    • H04L12/42Loop networks
    • H04L12/427Loop networks with decentralised control
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L12/00Data switching networks
    • H04L12/28Data switching networks characterised by path configuration, e.g. LAN [Local Area Networks] or WAN [Wide Area Networks]
    • H04L12/42Loop networks
    • H04L12/422Synchronisation for ring networks
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L5/00Arrangements affording multiple use of the transmission path
    • H04L5/14Two-way operation using the same type of signal, i.e. duplex
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L69/00Network arrangements, protocols or services independent of the application payload and not provided for in the other groups of this subclass
    • H04L69/28Timers or timing mechanisms used in protocols

Definitions

  • the present invention relates to a control network system in which a plurality of node devices are connected by communication lines and exchange data every predetermined cycle.
  • each device (node) constituting the system must exchange large-capacity data with each other while guaranteeing real-time performance.
  • real-time performance means, for example, that data exchange between all devices that require data exchange is completed within each period of a fixed period.
  • Each device needs to collect data indicating the state of the device at that time, for example, at regular intervals, and pass this to all other devices. In other words, each device acquires status data of all other devices, for example, at regular intervals, and executes some predetermined processing using the acquired data.
  • Each device is a device or the like that manages some device to be controlled. For example, data (temperature, pressure, rotation speed, etc.) indicating the current state of the control management device is collected at any time. . The collected data of each device (node) needs to be shared by all devices (nodes).
  • each device is provided with a virtual shared memory (common memory), and each device communicates with every node on the network in a time-division multiplexing manner (at different timings) every communication cycle (scan time).
  • a data exchange system that guarantees real-time performance is realized by a transmission system that transmits data.
  • Each node updates the data in the corresponding area of the common memory with the received data, and from this, the application accesses the common memory to acquire the latest data of other nodes, and something that uses this latest data. Will be executed.
  • Patent Document 1 prevents duplication of transmission timing from each node by using both the time division multiple access method by the internal timer of each node and the internal timer correction of the slave node by the synchronization frame from the master node. While achieving high-efficiency transmission.
  • Patent Document 2 discloses a conventional technique substantially similar to Patent Document 1.
  • FIG. 14 shows a specific example of data exchange by a conventional method such as Patent Documents 1 and 2 above.
  • each station has two types of timers, a cycle timer and a send timer.
  • the cycle timer is a timer for generating a data exchange period (scan time), and the same time is set in all stations.
  • the synchronization of the cycle timers of all the stations is achieved by the synchronization frame, but this is not particularly described.
  • the send timer is a timer for generating the data transmission timing of each station, and different values are set for all stations.
  • the send timer is started when the cycle timer is up, and the timer is up at a timing according to the set value. Therefore, the timers are up at different timings at all stations.
  • the data transmission timings of all stations are different from each other.
  • a scan time 101 that is a data exchange period (communication cycle) is generated by the cycle timer.
  • the scan time 101 is composed of the illustrated TC band 102 used for time adjustment and the illustrated TS band 103 used for data exchange.
  • the TC band and the TS band are as described in Patent Document 2, for example, and are not specifically described here.
  • the synchronization frame 104 for performing time synchronization is transmitted on the transmission path by the master node by the node synchronization method described in Patent Document 2 and the like, thereby synchronizing the cycle timer of each slave node.
  • each node broadcasts the data of its own station on the communication path at the transmission timing assigned to itself.
  • the send timer of the own station is started at the start timing of each communication cycle, and the timing when the send timer is up is the transmission timing.
  • the send timers are timed up at different timings in all stations, so that frame data (107, 110, etc.) is broadcasted on a communication path (not shown) at different timings. Will be.
  • transmission time slots (105, 108, etc.) that are different from each other in time division with respect to the scan time 101 are assigned to each station.
  • the transmission path is configured as a network connected by a bus or a serial cable.
  • Ethernet has been applied to industrial networks, and cooperation with information-related equipment is also considered. This is becoming mainstream in the controller level network.
  • JP 2005-159754 A International Publication Number WO2013 / 121568
  • the physical layer is a cascade of buses or serial cables, so that data can be transmitted to all other stations at once by broadcasting. It can be assumed that the reception timing of the broadcast-transmitted data is a time difference that can be ignored at the same time or almost at each node.
  • each station is not an adjacent station.
  • transmission is performed on the premise that relaying is performed by one or more stations between the own station and the communication partner station. That is, in this configuration, each station can communicate directly only with an adjacent station.
  • a certain node relays the frame data to another adjacent station. By repeating this relay, the frame data finally reaches the destination station.
  • the adjacent station is another station directly connected to the own station through a communication line.
  • a communication line for data transmission from the own station to the adjacent station and a communication line for receiving data transmitted from the adjacent station are provided.
  • FIG. 15 is a specific example of a control network system using a full duplex line in a ring topology.
  • four nodes (station 1, station 2, station 3, and station 4) are respectively connected in a ring shape as shown in the figure by the two upstream and downstream communication lines.
  • the clockwise (clockwise) communication path is line A
  • the counterclockwise (counterclockwise) communication path is line B.
  • line A for example, transmission data from the station 1 is sequentially relayed by the station 3, the station 2, and the station 4 in the order of station 1 ⁇ station 3 ⁇ station 2 ⁇ station 4 ⁇ station 1, and returns to the station 1.
  • transmission data from the station 1 is sequentially relayed by the station 4, the station 2, and the station 3 in the order of the station 1 ⁇ the station 4 ⁇ the station 2 ⁇ the station 3 ⁇ the station 1. Come back to one.
  • FIG. 16 shows an example of the operation of the control network system using the conventional communication method in the system of FIG.
  • FIG. 16 shows an operation example of the line A, but the line B is substantially the same.
  • FIG. 16 shows an operation example when this is realized in a ring topology configuration as shown in FIG. 15, for example.
  • FIG. 16 is a token system in which a station that has acquired a token (transmission right) can transmit its own data, and the other stations receive and relay this data. .
  • the station 1 acquires a token, and from this, transmits its own data to a downstream adjacent station.
  • the adjacent station upstream of the station 1 is the station 4.
  • rectangles indicate transmission / reception data frames (packets), and for each station, the upper side indicates reception and the lower side indicates transmission.
  • the horizontal axis is time.
  • the number in the rectangle indicates the transmission source station. For example, if “1”, the transmission source is the station 1 and the packet “station 1” is described.
  • the station 1 that has acquired the token transmits a packet “station 1” to the station 3.
  • “T” in the rectangle means a token.
  • the station 3 Upon receiving the packet “station 1”, the station 3 acquires the packet and relays it to the adjacent downstream station (station 2). Similarly, the station 2 that has received the packet “station 1” acquires it and relays it to the adjacent downstream station (station 4). The station 4 that has received this packet 'station 1' also acquires it in the same manner and relays it to the adjacent downstream station (station 1).
  • the station 1 receives the transmission data frame of its own station, and thus releases the token.
  • the authority authority information is included in the token, and the authority authority is updated at the time of release.
  • the authority station is updated at every release, such as “1” ⁇ “2” ⁇ “3” ⁇ “4” ⁇ “1” ⁇ “2” ⁇ .
  • the authority station is updated to “2” when the token of the station 1 is released.
  • the station 3 which is an adjacent station downstream of the station 1 receives the token, but since the authority station is not its own station, it relays it directly to the station 2 which is an adjacent station downstream of the own station.
  • the station 2 Upon receiving the token, the station 2 transmits its own data (packet 'station 2') as having acquired the transmission right because the authority station is the own station. Naturally, this is transmitted to the station 4 which is an adjacent station downstream of the own station.
  • the packet “station 2” is also received and relayed sequentially in the order of station 2 ⁇ station 4 ⁇ station 1 ⁇ station 3 in the same manner as the packet “station 1”, and finally the station 2 is the own station.
  • the transmission data is received, and thus the token is released.
  • the station 3 and the station 4 also acquire the token and obtain the transmission right, the station's data is transmitted, and the data is sequentially relayed by other stations and returned to the own station.
  • all stations 1, 2, 3, and 4 transmit their own data, and all other stations receive and acquire the data. That is, all stations have passed their data to all other stations.
  • the data exchange between all the stations (nodes) that require data exchange is completed within a fixed period, for example, within the time (scan time) from the start of the cycle timer to the time-up.
  • a fixed period for example, within the time (scan time) from the start of the cycle timer to the time-up.
  • all stations need to pass their own data to all other stations.
  • the operation shown in FIG. 16 described above is performed. In other words, if it takes Ta to make a round of transmission packets for each station (until it returns to its own station) and the number of stations is M, it takes at least “Ta ⁇ M”. Become. That is, it takes a very long time, and thus the scan time needs to be set very long. In other words, there arises a problem that the data exchange cycle becomes long.
  • An object of the present invention is to provide a control network system in which all node devices connected to a network exchange data with each other, thereby improving transmission efficiency and completing data exchange in a shorter time than before. Etc. is to provide.
  • the control network system of the present invention is a control network system in which a plurality of node devices exchange data with each other, and each of the node devices has the following configuration.
  • Data transmission means for transmitting the data of the own device to the adjacent station at a predetermined timing every predetermined data exchange cycle;
  • a relay unit that, when receiving transmission data from any adjacent station, acquires the transmission data and relays it to another adjacent station; And the said predetermined timing of all the node apparatuses is made into the same timing.
  • FIG. 9 is a flowchart (part 2) illustrating a process of a node driver.
  • FIG. 9 is a flowchart (part 3) illustrating the processing of the node driver. It is a flowchart figure which shows the process of the process part of a node. It is a figure which shows the operation
  • (A) and (b) are steps S21, S23. S24. It is a processing image of S26. It is another example of the topology of the control network system of this example. It is a functional block diagram of the control network system of this example. 2 is a configuration example of a line-type full-duplex line control network system. 1 is a configuration example of a ring-type single-line control network system. It is a figure which shows the specific example of the data exchange by a conventional method. It is a specific example of the network system for control by the full duplex line of a ring type topology. It is a figure which shows an example of operation
  • FIGS. 1A and 1B are overall configuration diagrams of the control network system of this example.
  • a network system that is a full-duplex line or the like and has a ring type topology is taken as an example, but the configuration of the control network system of this example is not limited to this example.
  • a line type may be used instead of a ring type, and other types shown later may be used.
  • it is not limited to a full-duplex line.
  • it may be twice the number of lines (referred to as a full-quadruple line) or may be a single line.
  • FIG. 1 shows an example in which there are four constituent nodes, but it is of course not limited to this example.
  • the four nodes 10 (station 1, station 2, station 3, and station 4) shown in FIG. , 13, and a network A is a clockwise (clockwise) communication path in the entire network and a line B is a counterclockwise (counterclockwise) communication path.
  • the communication lines 12 and 13 are, for example, uplink and downlink communication lines.
  • communication between the station 1 and the station 2 is performed by the station 1 transmitting data to the station 2 via the communication line 12.
  • the station 2 transmits data to the station 1 through the communication line 13.
  • each node 10 has, for example, a driver 11, which is related to the communication line 12 (12 a, 12 b, 12 c, 12 d) related to the line A and the line B.
  • Communication lines 13 13a, 13b, 13c, 13d are connected to the drivers 11 of the respective nodes 10 as shown in the figure.
  • each of the communication lines 12 and 13 is composed of a plurality of communication lines (such as serial lines) instead of a single communication line (such as a serial line). That is, for example, the communication line 12 includes the communication lines 12a, 12b, 12c, and 12d illustrated. Each communication line connects between any two nodes 10. In the illustrated example, the communication line 12a is between station 1 and station 2, the communication line 12b is between station 2 and station 3, the communication line 12c is between station 3 and station 4, the communication line 12d is between station 4 and station 1, Each is connected.
  • the communication line 13 includes the communication lines 13a, 13b, 13c, and 13d shown in the drawing. Each communication line connects between any two nodes 10.
  • the communication line 13a is between station 1 and station 2
  • the communication line 13b is between station 2 and station 3
  • the communication line 13c is between station 3 and station 4
  • the communication line 13d is between station 4 and station 1, Each is connected.
  • station 1 transmits a data frame (packet) to station 2 via communication line 12a
  • station 2 transmits a data frame (packet) to station 1 via communication line 13a.
  • packet communication does not occur because the communication lines to be used are different.
  • packet communication does not occur because the communication lines used for packet transmission differ.
  • Each node 10 also has a processing unit 14, a cycle timer 15, and a send timer 16 in addition to the driver 11.
  • the cycle timer 15 and the send timer 16 are described in the above Patent Documents 1 and 2, and description thereof is omitted here.
  • the processing unit 14 executes main processing of the node 10. For example, control of a device to be controlled (not shown), collection of data indicating the state, management of setting / starting of the cycle timer 15 and the send timer 16, Various processes such as generation of transmission data frames (packets) are performed.
  • the driver 11 transmits the transmission data frame to another node in response to a request from the processing unit 14, or receives the transmission data frame from another node and passes it to the processing unit 14.
  • 13 is a processing unit (communication dedicated processor or the like) that performs communication processing via.
  • the driver 11 When the driver 11 receives a packet sent from the upstream side for any of the communication lines 12 and 13, the driver 11 sends it to the downstream side if it is determined to relay it. For example, in the case of the station 1, for the line A, the station 4 is on the upstream side and the station 2 is on the downstream side, and for the line B, the station 4 is on the downstream side and the station 2 is on the upstream side.
  • the driver 11 of the station 1 receives the transmission packet (data frame) from the station 4 via the communication line 12d, the driver 11 transfers it to the station 2 via the communication line 12a when relaying this packet.
  • the contents (data) of the data frame are acquired and passed to the processing unit 14 as necessary.
  • the packet is transmitted to the station 4 via the communication line 13d.
  • the driver 11 of the station 1 transmits this data frame to both the line A and the line B. That is, this data frame is transmitted to the station 2 through the communication line 12a and transmitted to the station 4 through the communication line 13d.
  • FIGS. 2A and 2B are flowcharts showing processing of the node 10.
  • FIG. 2A shows the processing of the driver 11 at the time of transmitting local data.
  • the processing unit 14 (CPU / MPU or the like) included in the node 10 executes predetermined control processing or the like by executing predetermined software (program) or the like.
  • predetermined software program
  • the driver 11 When the driver 11 receives the data and the transmission request (step S11), the driver 11 transmits the data frame to both the line A and the line B (step S12). As described above, both are transmitted downstream. Therefore, in the case of the station 1, the line A is transmitted to the station 2 via the communication line 12a, and the line B is transmitted to the station 4 via the communication line 13d.
  • FIG. 2B shows processing of the driver 11 at the time of data reception.
  • the driver 11 executes the process of FIG. First, the transmission source of the received packet is checked. If the transmission source is the local station (NO in step S21), this packet is discarded (step S23). In this case, it is because the packet transmitted by the own station in step S12 should have returned around the network.
  • step S21 when the transmission source of the received packet is another station (other than the own station) (step S21, YES), the received packet is relayed (step S22). That is, the received packet is transferred to the downstream adjacent station.
  • the received packet is left in a buffer (not shown) or the like and used in the processing of steps S24 and S25 described later.
  • step S24 it is further determined whether or not the received packet is the same as the already received packet.
  • the transmission source node transmits a packet to both the line A and the line B in step S12. Therefore, if normal, the other station receives these two packets. Therefore, the packet received later is not necessary.
  • step S24, YES the same packet as the already received packet is received (step S24, YES)
  • the received packet is discarded (step S26).
  • the transmission source node assigns the same frame number to two packets (data frames) to be transmitted at the time of step S12. Normally, a frame number is assigned and transmitted every time a data frame is transmitted. The frame number is updated (for example, incremented by +1) every transmission.
  • the process of step S24 for example, when the received packet and the already received packet have the same source node and the same frame number, it is determined that both are the same.
  • this is an example, and the present invention is not limited to this example.
  • step S24 when the received packet is one of the two packets received first (step S24, NO), the data of the received packet is passed to the processing unit 14 (step S25).
  • the processing unit 14 performs some processing using this data, but since this is not particularly relevant, description thereof will be omitted.
  • FIG. 3 is a process flowchart (part 2) of the driver 11 at the time of data reception.
  • FIG. 4 is a process flowchart (part 3) of the driver 11 when receiving data.
  • FIG. 3 will be described first.
  • the driver 11 executes the process of FIG. First, the transmission source of the received packet is checked. If the transmission source is the local station (step S31, NO), this packet is discarded (step S35). Note that the processing in steps S31 and S35 may be the same as the processing in steps S21 and S23.
  • step S32 when the transmission source of the received packet is another station (step S31, YES), it is subsequently determined whether or not the received packet is the same as the already received packet (step S32). This process may be the same as step S24 described above, and is not specifically described here. If the same packet as that already received is received (step S32, YES), the received packet is discarded (step S35). Step S35 may be the same as step S26, and step S26 may be the same as step S23. Thus, in FIG. 3, the “discard” processing is shown as one.
  • step S34 the received packet is one of the two packets described in step S24 (step S32, NO).
  • the received packet first-arrival packet
  • step S33 the data is transferred to the processing unit 14 (step S34).
  • Steps S33 and S34 may be the same as steps S22 and S25.
  • the process of FIG. 3 differs from the process of FIG. 2B in that when the transmission source of the received packet is another station and the first packet is received, this packet is relayed. It is.
  • the packet of the route of the station 1 ⁇ station 2 ⁇ station 3 arrives at the station 3 first. Thereafter, it is assumed that the packet of the route of station 1 ⁇ station 4 ⁇ station 3 has arrived at station 3. In this case, in the processing of FIG. 3, a packet that arrives later is not relayed to the station 2. However, since the station 2 has already received a packet through the route of the station 1 ⁇ station 2 ⁇ station 3, there is no problem.
  • step S41 is executed instead of step S21.
  • step S42, S43, S44, and S45 are the same as those in FIG. Steps S22, S24, S25, and S23 (or S26) may be the same, and are not specifically described here.
  • step S41 is a process of checking the transmission source of the received packet and determining whether or not the transmission source is a frame transmitted by an adjacent station downstream of the own station. If the transmission source is a frame transmitted by an adjacent station downstream of the own station (step S41, YES), the received packet is discarded. If not (step S41, NO), the process proceeds to step S42. .
  • an identification number (station ID or the like) of the transmission source node is assigned to each packet (data frame).
  • each node 10 stores network configuration information in advance.
  • the network configuration information includes, for each node 10, information such as the station IDs of the adjacent stations upstream and downstream of the own node.
  • the network configuration information is arbitrarily created in advance by, for example, a developer and stored in each node 10, but is not limited to this example.
  • special packets that are determined to be relayed without being allowed to be discarded without being discarded except for the transmission source node and to be assigned with the station ID of the relay station at the time of relay are prepared in advance.
  • the transmission source node is based on the assigned station ID, It is possible to discriminate between upstream and downstream adjacent stations.
  • step S ⁇ b> 41 may be performed instead of step S ⁇ b> 31.
  • the processing in FIGS. 2, 3, and 4 can be summarized as follows, for example.
  • a packet is discarded when it has made a round of each node 10 of the ring network, that is, when all nodes 10 that require data exchange have received it.
  • the packet may be discarded by the node 10 that is the packet transmission source, or the node 10 that is immediately before (the node 10 that relays the packet to the transmission source node).
  • the transmission source node transmits the packet to both the line A and line B systems.
  • Each other node 10 receives packets from both systems.
  • the driver 11 of each other node 10 passes the first received packet to the processing unit 14 (substantially receives), but does not pass the second received packet to the processing unit 14 (substantially does not receive). .
  • FIG. 5 is a flowchart showing processing of the processing unit 14 of the node 10.
  • the processing in FIG. 5 is executed as needed, and basically is in a state of waiting for some event (step S51), and every time an event occurs (YES in step S52), the event that has occurred
  • the process according to the contents of is executed.
  • Step S53 If the generated event is a timeout (cycle TO) of the cycle timer 15 (step S53, YES), a predetermined set value is set in the send timer 16 (step S54), and the send timer 16 is started. (Step S55).
  • step S57 the local station data is transmitted (step S57). This is to pass the data and transmission request of the own station to the driver 11.
  • the driver 11 receives the data & transmission request in step S11 and transmits this data to both the line A and line B (step S12).
  • step S56 is YES. If the generated event is reception of a common memory frame (step S58, YES), the data of this common memory frame is stored in a corresponding area of the common memory (not shown) (step S59).
  • the frame transmitted in accordance with the process of step S57 is referred to as a common memory frame.
  • the master node may transmit not only the common memory frame but also a synchronization frame for synchronizing the cycle timer 15 at another timing. This is transmitted to an arbitrary destination node.
  • each node 10 other than the destination node receives this synchronization frame, it relays it.
  • the destination node returns a synchronization response frame to the transmission source node (master node) without relaying. This process corresponds to step S60. This is the process of S61.
  • the synchronization response frame is passed to the driver 11 to be transmitted to the transmission source node (master node) (Ste S61).
  • any one of the plurality of nodes 10 constituting the system (in one example, any one of the station 1, the station 2, the station 3, and the station 4) is set in advance so as to operate as the master node. Or the priority is determined in ascending or descending order of the station number, MAC address, etc., and operates as the master node. All nodes 10 other than the master node basically operate as slave nodes. Then, the master node synchronizes the cycle timers 15 of all the slave nodes with the cycle timer 15 of its own node by using the synchronization frame or the like. This is described in prior art documents and the like and will not be described in further detail here.
  • the master node when the master node transmits the synchronization frame, the master node transmits the synchronization frame to both the lines A and B by the process of step S12 in FIG. 2A, for example.
  • the driver 11 passes the synchronization frame to the processing unit 14 by the processing of step S34. Accordingly, the processing unit 14 performs the process of step S61 because step S60 becomes YES. As a result, the driver 11 transmits the synchronization response frame to both systems through the process of step S12.
  • the master node the synchronization response frame that arrives first is delivered to the processing unit 14 by the process of step S34. Note that both the master node and the destination slave node discard the later-arrived frame or the transmission frame of the own station (step S35).
  • the frame travels back and forth between the master node and the destination slave node with the shortest route.
  • the time required for frame reciprocation along the shortest route is measured by the master node, and half of the measurement time is calculated as the communication time (communication delay time) between the master node and the destination slave node.
  • the process of synchronizing the cycle timer 15 using the communication delay time is a conventional technique and is not particularly described here.
  • step S60 If the generated event is not any of the various events described above (NO in step S60), processing corresponding to the generated event is executed, but this is not particularly illustrated or described.
  • the set value of the send timer is set to a different value in all stations.
  • the same setting value is set in all stations (not necessarily completely the same, but may be substantially the same. May be different).
  • the send timer set value in step S54 is determined by the following calculation formula as an example for each node.
  • Setting value TC bandwidth time + (slot unit time x assigned slot number of own station)
  • the slot unit time is the length of the transmission time slot (105, 108, etc.).
  • slot unit time TS band time / number of stations.
  • the assigned slot number is “0” and a natural number. For example, when the number of stations is N, any one of 0, 1, 2,... It is assigned.
  • FIG. 6 is a diagram showing an operation related to the local data transmission of the network system according to the present technique.
  • the processing of steps S54 and S55 is executed at each scan time 21 (data exchange period) generated by the cycle timer 15 for each node 10, and the send timer 16 starts operating.
  • the processing of step S57 transmission of the local station data frame 26 is performed simultaneously on all the nodes 10.
  • step S57 transmission of the local station data frame 26
  • step S57 transmission of the local station data frame 26
  • all the send timers 16 are configured to timer up at the same timing. As an example for realizing this, synchronization of the cycle timer 15 is performed. In this case, the same value is set in the send timers 16 of all the nodes 10, but the present invention is not limited to this example.
  • the time from the start of the send timer 16 to the timer up may be the same, and an example of a method for realizing this is that the set values are the same as described above.
  • the set values are the same as described above.
  • the initial values (values at the time of activation) of the send timers 16 are different, the set values are naturally different.
  • the count number is “1000”, for example, the initial value of the send timer 16 of the station 1 is “0”, the initial value of the send timer 16 of the station 2 is “1000”, and the initial value of the send timer 16 of the station 3 Is '2000', and the initial value of the send timer 16 of the station 4 is '3000'.
  • the setting values set in step S54 of each send timer 16 are “1000” for station 1, “2000” for station 2, “3000” for station 3, and “4000” for station 4, all nodes 10, the count number until the timer of the send timer 16 is up is “1000”. As a result, all the send timers 16 are timed up at the same timing.
  • all the send timers 16 may be configured to timer up at the same timing, and any method may be used. For example, as long as the send timers 16 of all the nodes 10 are started at the same timing and timed up after the same time so that all the send timers 16 are timed up at the same timing, anything may be used. Moreover, it is not restricted to this example.
  • the “same timing” is not limited to the completely same timing, and there may be some deviation.
  • the transmission delay time between the master node and each slave node was obtained.
  • the time required for a specific packet to make a round trip between the master node and the slave node was measured, and half of the actually measured value was used as the transmission delay time.
  • each slave node receives the specific packet, it immediately returns it to the master node.
  • the same processing is performed to obtain the transmission delay time. That is, in the case of a specific packet, the specific packet is not relayed around the ring network, but is relayed to each slave node in turn as a destination and to the destination slave node. When the destination slave node receives the specific packet, it immediately returns it to the master node.
  • the master node transmits the specific packet to both line A and line B, and the destination slave node receives the specific packet twice via two communication paths.
  • the destination slave node performs the reply process only on the first received specific packet, and discards the second received specific packet. That is, the transmission delay time of the shortest route between the master node and each slave node is obtained.
  • the master node and the slave node are not particularly distinguished, but here it is assumed that the station 1 in FIG. 1 is the master node. Then, when the station 1 transmits, for example, a specific packet whose destination is the station 2 to both the lines A and B, the station 2 first receives the specific packet via the communication line 12a. This is returned to the station 1 via the communication line 13a. Thereafter, the station 2 receives the specific packet relayed by the station 4 and the station 3 via the line B via the communication line 13b, but discards the specific packet.
  • the transmission delay time between the master node (station 1) and the station 2 that is, the time required for communication between the station 1 and the station 2 on the shortest route is obtained.
  • the transmission delay times between the station 1 and the station 3 and between the station 1 and the station 4 are obtained in the same manner.
  • the scan time 21 which is a data exchange cycle is composed of a TC band 22 used for time adjustment and a TS band 23 used for data exchange.
  • a synchronization frame 24 for performing time synchronization is transmitted on the transmission path by the master node by, for example, the node synchronization method of Patent Document 2.
  • Each slave node synchronizes the cycle timer 15 of its own station with the cycle timer 15 of the master node based on the reception timing of the synchronization frame 24 and the transmission delay time. This process is performed in step S62.
  • the synchronization frame described above is an example of the specific packet, but the synchronization frame is different from the synchronization frame 24.
  • FIG. 6 only one operation of the cycle timer 15 is shown, but each node 10 operates based on the cycle timer 15 of its own station. As described above, from the premise that all the cycle timers 15 are synchronized, only one is shown.
  • FIG. 7 shows the data transmission / reception operation of the entire system according to this method.
  • FIG. 7 shows the operation in a configuration in which a station 5 is further provided between the stations 1 and 4 shown in FIG.
  • FIG. 7 shows the transmission / reception data (packet) similarly to FIG. 16, and the upper side shows reception and the lower side shows transmission for every station like FIG.
  • the horizontal axis is time. Further, the transmission source station is described in the rectangle.
  • FIG. 7 shows from the time point when the send timer 16 is up.
  • each station transmits its own data at the same time. For example, the station 1 transmits data of “station 1” in the illustrated rectangle.
  • Each node 10 transmits the same frame (local station data) to line A and line B at the transmission timing shown in FIG.
  • each node 10 When receiving a frame passed from an upstream adjacent node (adjacent station), each node 10 relays the received frame to a downstream adjacent node unless the transmission source is the local station.
  • FIG. 7 shows data transmission / reception operations for the line A and the line B, but here, for simplification. Only the line A will be described, but the line B may be regarded as the same as the line A.
  • the station 1 when viewed from the station 1, the downstream adjacent station is the station 2, and the upstream adjacent station is the station 5.
  • the station 2 receives the transmission data of the station 1 (the rectangle in which “station 1” is included).
  • the station 1 starts to receive the “station 5” data as shown in the figure during the transmission of the “station 1” data.
  • the transmission timings of “Station 1” data and “Station 5” data are the same, but the reception timing is somewhat delayed due to a delay due to the communication path.
  • the operation related to the station 1 is the same for other stations.
  • the station 3 transmits its own station data to the station 4 and starts receiving “station 2” data as shown in FIG. Become.
  • the station 1 transfers the “station 5” data to the station 2 immediately. That is, the “station 5” data is relayed. The received data cannot be transferred until all the received data is received. Then, the station 1 starts receiving the “station 4” data transferred from the station 5 as shown in the figure during the transfer process of the “station 5” data. When the reception is completed, the transfer of “Station 4” data is started immediately.
  • the station 1 sequentially relays (receives and transfers) the “station 3” data and the “station 2” data as shown in the figure, and thereafter the “station 1” data as shown in the figure. Will be received. That is, the local station data has returned through the circuit A.
  • the determination in step S21 is NO, and thus the process in step S23 is performed (the received “station 1” data is discarded).
  • the communication bandwidth between each node does not become unused as in the prior art, the time required to exchange data between all nodes is shortened, and further data exchange is possible in the remaining bandwidth time, The amount of data on the network can be increased. Further, by using the remaining bandwidth time as the next scan time, it is possible to realize a high data exchange cycle.
  • each node 10 receives the same packet from both line A and line B as described above. Then, the packet received later is discarded because the processing in step S26 is executed.
  • the station 1 receives the “station 5” data for the line A from the station 5 ⁇ the station 1 and receives it at an early stage.
  • the “station 5” data is received by station 5 ⁇ station 4 ⁇ station 3 ⁇ station 2 ⁇ station 1 and is received at the end. That is, the station 1 receives the “station 5” data from the line A for the first time and from the line B for the second time, and the first time performs the process of step S25, but the second time is the process of step S26. Processing will be performed.
  • this is only an example, and the present invention is not limited to this example.
  • step S26 may be performed for the first time, but the process of step S25 may be performed for the second time.
  • the process of step S26 may be performed for the first time, but the process of step S25 may be performed for the second time.
  • two identical frames are received, one is discarded and the other is received on a first-come-first-served basis or a later-arrival basis.
  • FIG. 7 shows a case where the transmission data amount of all the nodes 10 is the same, but this method can obtain the above effect even when the transmission data amount is different in each station. Is. This will be described with reference to FIG.
  • the stations 1 and 4 transmit only one packet, the station 2 transmits three packets, and the station 3 transmits two packets. That is, the station 2 has the largest amount of transmission data, and the next largest is the station 4.
  • FIG. 8 unlike FIG. 7, the operation in the configuration shown in FIG. 1 is shown. Therefore, the number of nodes 10 is four (station 1, station 2, station 3, and station 4). Here, only the operation related to the line A is shown, and the line B is omitted. On line A, for example, the packet goes around in the order of station 1 ⁇ station 2 ⁇ station 3 ⁇ station 4 ⁇ station 1.
  • each of the four stations starts transmitting its own data by, for example, sending up its own send timer 16 at the beginning of the TS band.
  • station 1 transmission of the data of its own station
  • station 4" data reception of "station 4" data is started during this transmission operation.
  • transfer of “station 4” data to station 2 is started immediately.
  • the two “station 3” data are sequentially received and relayed to the station 2 in turn.
  • three “station 2” data are sequentially received, and these are also sequentially relayed to the station 2.
  • “Station 1” data is received, it is discarded as described above (in the case of the example in FIG. 2B).
  • the station 2 transmits three own station data (“station 2” data).
  • the driver 11 when the driver 11 is configured to include a FIFO memory and a transmission-only chip (IC or the like) described later, the driver 11 stores the three “station 2” data in the FIFO memory.
  • the transmission-only chip sequentially retrieves and transmits data stored in the FIFO memory.
  • the first “station 2” data is extracted and transmission is started. In the illustrated example, reception of “station 1” data is started during this transmission process, and when reception of “station 1” data is completed, this is stored in the FIFO memory. Thereafter, reception of “station 4” data is started, and when reception of “station 4” data is completed, this is stored in the FIFO memory.
  • the dedicated chip for transmission sequentially extracts and transmits the data stored in the FIFO memory in the order of storage, in the above example, as shown in the figure, first, the three “station 2” data are sequentially transmitted, and then “station 1”. Data is transmitted, and then “Station 4” data is transmitted.
  • the transmission of “station 1” data and “station 4” data is a relay (transfer) process.
  • the transmission destination is the station 3 which is a downstream adjacent station.
  • the station 2 further receives two “station 3” data in sequence, and relays them after completing the other station data already received. Further, three local station data (“Station 2" data) are also received sequentially, but all of them are discarded by the above step S23.
  • the local station data is discarded when received.
  • the present invention is not limited to this example.
  • the data of this packet may be acquired but not relayed (for example, discarded).
  • the transmission source does not need to acquire the data of this packet, but simply discards it as in step S23. Therefore, the process of relaying this packet is useless, and the above process is performed to eliminate this uselessness. You may make it perform. As a result, the data exchange of all the nodes is completed in a shorter time.
  • the driver 11 shown in FIG. 1B includes a FIFO memory (not shown) and a transmission dedicated chip.
  • a FIFO memory and a dedicated transmission chip are provided for line A and line B, respectively.
  • the transmission dedicated chip for the line A sequentially transmits them on the line A.
  • a data frame is transmitted on the communication line 12b (that is, to the station 3).
  • the main body of the driver 11 performs a process of storing the local station data frame or the received data frame in the corresponding FIFO memory in the process of step S12 or step S22.
  • the station 2 first transmits its own data consisting of three data frames to both the line A and line B systems in step S12.
  • the three “station 2” data frames are sequentially stored in the FIFO memory corresponding to the line A.
  • the transmission-only chip corresponding to the line A sequentially transmits the three “station 2” data frames on the communication line 12b.
  • the station 2 sequentially transmits three local station data (“station 2” data) to the station 3.
  • the station 2 sequentially receives the “station 1” data, the “station 4” data, etc., and these are received through the relay process in step S22.
  • the station 2 sequentially transmits “station 1” data, “station 4” data, and the like. .
  • the FIFO memory may store information (pointer or the like) indicating the storage location of each data.
  • the transmission-only chip sequentially takes out pointers and the like from the FIFO memory, and transmits data in the storage area indicated by the taken out pointers and the like.
  • the received data is stored in a predetermined storage area for reception (such as a reception buffer), and when the reception is completed (when the reception data has been stored), the storage area (reception A pointer or the like indicating a buffer or the like is stored in the FIFO memory.
  • FIG. 9B shows an image of the processes in steps S21 and S23
  • FIG. 9A shows an image of the processes in steps S24 and S26.
  • each node 10 is demonstrated as what has the function of the filter 33 of illustration. It is assumed that the processing of steps S21 and S23 and the processing of steps S24 and S26 are realized by the filter 33.
  • stations 1 and 2 are shown here, there may be other stations (may be regarded as omitted). An operation example related to packet reception in the station 1 will be described.
  • the station 2 transmits its own data, it is passed to the station 1 via the line A and the line B.
  • a station 2A line frame 31 and a station 2B line frame 32 shown in FIG. 1 are received by the station 1 from these two systems.
  • the filter 33 takes either one of the two data frames 31 and 32 into the own station as the illustrated station 2 frame 34 with the first arrival priority or the second arrival priority.
  • the station 1 transmits its own station data to both the lines A and B, and these are relayed by other stations such as the station 2 and finally return to the station 1. These are the station 1A line frame 41 and the station 1B line frame 42 shown in the figure. In this case, the filter 33 discards both of these two data frames 41 and 42 in step S23.
  • the network topology to which this method is applied is not limited to the ring type or line type examples.
  • a network topology as shown in FIG. 10 may be used as an example.
  • each communication line 46 connecting any two nodes 10 is considered to correspond to the communication lines 12a, 12b, 12c, 12d and the communication lines 13a, 13b, 13c, 13d. It doesn't matter.
  • the control network system of this example is not limited to Ethernet.
  • FIG. 11 is a functional block diagram of the control network system of this example.
  • the control network system of FIG. 11 includes a plurality of node devices 50.
  • the control network system is a network system in which communication interference does not occur even when the plurality of node devices 50 transmit data simultaneously.
  • the network to which the present technique is applied is, for example, a network that includes a plurality of communication lines 61 and each communication line connects between any two node devices 50 in a peer-to-peer relationship. . Furthermore, it is a full-duplex line. That is, it is composed of an uplink communication line and a downlink communication line. That is, even if each node device 50 transmits data at the same time, there is no network collision. Furthermore, communication between the node devices 50 that are not directly connected by the communication line 61 is also a network that is realized by relaying another node device 50.
  • each node apparatus 50 has the 1st timer 51, the data transmission part 52, and the relay part 53, respectively. Further, a second timer 54 may be provided.
  • An example of the first timer 51 may be the send timer 16 and an example of the second timer 54 may be the cycle timer 15.
  • the data transmission unit 52 transmits the data of its own device to the adjacent station at a predetermined timing generated by the first timer 51 every predetermined data exchange period (within the scan time).
  • the transmission destination is a downstream adjacent station.
  • the relay unit 53 When the relay unit 53 receives transmission data from an arbitrary (upstream) adjacent station, the relay unit 53 acquires the transmission data and relays it to another adjacent station. And the predetermined timing by the said 1st timer 51 of all the node apparatuses 50 is made to become the same timing. It should be noted that the same is not completely the same, and there may be some deviation. That is, the same includes the case of almost the same.
  • the predetermined timings by the first timers 51 of all the node devices 50 are made the same timing.
  • the second timers 54 of all the node devices 50 need to be synchronized, but the present invention is not limited to this example.
  • the synchronization method is a conventional technique. A data exchange cycle is generated by the second timer 54.
  • reception / acquisition means for example, reception and acquisition, but is not limited to this example.
  • control network system of the example shown in FIG. 11 includes a plurality of node devices 50 and a plurality of communication lines 61, and each communication line 61 connects two arbitrary node devices 50.
  • Each node device 50 can communicate with the adjacent station, which is another node device 50 connected to the own device through a communication line. Communication between node devices that are not connected by a communication line is realized by one or more other node devices 50 being relayed by the relay unit 53.
  • the communication line 61 is, for example, a full duplex line. Further, for example, the control network system of FIG. 11 is a ring type or line type network, but is not limited to this example.
  • control network system of FIG. 11 is a network in which each node device is connected by a full-duplex communication line in a ring type or line type topology. Then, for example, the data transmission unit 52 transmits the data of its own device to both the full duplex systems.
  • FIG. 1 shows an example of a ring type full-duplex line.
  • An example of a line-type full-duplex line is shown in FIG.
  • the configuration in FIG. 12 may be regarded as a configuration in which the communication line 12d and the communication line 13d do not exist in FIG.
  • the transmission data of each node 10 does not return to its own station, and relaying is terminated when it reaches the nodes 10 at both ends (in this example, station 1 and station 4). Become.
  • the relay unit 53 discards the received data without performing the relay.
  • the relay unit 53 discards the received data without performing the relay.
  • the transmission data of all the node devices 50 are received by all the other node devices 50 by repeating the above-described relay within the data exchange period, thereby exchanging data between all the node devices. Is completed.
  • the node device 50 includes an arithmetic processor such as a CPU / MPU and a storage unit such as a memory.
  • a predetermined application program is stored in the storage unit in advance.
  • the processing functions of the data transmission unit 52 and the relay unit 53 are realized by the arithmetic processor executing this application program.
  • the processing of the flowcharts shown in FIGS. 2A, 2B, 3, 4, and 5 is realized when the arithmetic processor executes this application program. .
  • all the nodes 10 configuring the network simultaneously transmit their own station data using a timer synchronized with the timer of the master node by a node synchronization method such as Patent Document 2. Perform to adjacent nodes on both sides. After the transmission of the local station data is completed, all the nodes 10 respectively relay the frame data received from one adjacent node of the local node to the other adjacent node. In this way, it is possible to simultaneously use the full-duplex line transmission band between the constituent nodes, increase transmission efficiency, increase the transmission capacity of the entire network, and increase the data exchange cycle. Thus, for example, in a full duplex network system of a ring topology or a line topology, the amount of data on the network can be increased, and the data exchange cycle can be increased.
  • the target is a control network system, and as described above, it is necessary to complete data exchange between all the nodes (within the scan time) every predetermined data exchange period, and thus each of the systems constituting the system It is assumed that nodes need to exchange data with each other while guaranteeing real-time performance.
  • the application target is not limited to the above-mentioned “full-duplex line network system of ring topology or line topology”.
  • the topology is not limited to the ring type or the line type.
  • it is not limited to a full-duplex line, and may be a multiple line (such as a quadruple line) or a single line.
  • the cycle timer 15 is first synchronized as the two-line configuration shown in FIG. Although it is made to operate with one line, it is not limited to this example.
  • the cycle timers 15 of all the nodes are consequently synchronized. It may be.
  • each node 10 is basically the same as the processing of FIG. 2 (a), FIG. 3, FIG. 4, and FIG. But some are different. That is, first, the process of step S12 is a process of transmitting data only to the line A. Further, regarding the reception process, since two packets are not received from both systems, the processes in steps S24 and S43 are deleted.
  • the control network system of the present invention its node 10 and the like, when all nodes 10 that need data exchange mutually exchange data, the data exchange can be completed in a shorter time than before. Therefore, in the control system using the control network of the present invention, the data refresh cycle (periodic) can be increased, so that the control can be speeded up. Furthermore, productivity improvement in the customer system can be expected.
  • the data exchange can be completed in a shorter time than before. Therefore, in the control system using the control network of the present invention, the data refresh cycle (periodic) can be increased, so that the control can be speeded up. Furthermore, productivity improvement in the customer system can be expected.

Landscapes

  • Engineering & Computer Science (AREA)
  • Signal Processing (AREA)
  • Computer Networks & Wireless Communication (AREA)
  • Computer Security & Cryptography (AREA)
  • Small-Scale Networks (AREA)
  • Data Exchanges In Wide-Area Networks (AREA)

Abstract

データ送信部52は、所定のデータ交換周期毎に(スキャン時間内に)、第1タイマに51によって生成される所定のタイミングで、自装置のデータを隣接局へ送信する。中継部53は、任意の隣接局からの送信データを受信した場合、該送信データを取得すると共に別の隣接局へ中継する。そして、全てのノード装置の上記第1タイマ51による所定のタイミングを、同一タイミングとなるようにする。

Description

制御ネットワークシステム、そのノード装置
 本発明は、複数のノード装置が通信線で接続され、所定の周期毎にデータ交換を行う制御用ネットワークシステムに関する。
 制御用ネットワークシステム(プラント制御用伝送システム等)においては、システムを構成する各機器(ノード)が相互に大容量データ交換を、リアルタイム性を保証したうえで行う必要がある。リアルタイム性を保証するとは、例えば、定周期の各期間内に、データ交換が必要な全ての機器間のデータ交換を完了することを意味する。各機器は、例えば定周期で、その時点の当該機器の状態等を示すデータを収集して、これを他の全機器へ渡す必要がある。逆に言えば、各機器は、例えば定周期で、他の全ての機器それぞれの状態データ等を取得することになり、この取得データを用いて何等かの所定の処理を実行することになる。
 尚、上記各機器(ノード)は、何等かの制御対象機器を管理する装置等であり、例えば制御管理機器の現状を示すデータ(温度、圧力、回転数等)を、随時、収集している。そして、各機器(ノード)の収集データを、全ての機器(ノード)で共有する必要があるものとする。
 各機器(ノード)に搭載されるアプリケーションによるアクセス要求の発生に応じてイベント的に相互アクセスを行うような伝送方式を採用していると、ネットワーク負荷がアプリケーションに依存してしまい、リアルタイム性を保証することができない。そこで、各機器に仮想的な共有メモリ(コモンメモリ)を設けて、各機器が通信サイクル(スキャン時間)毎に、時分割多重方式で(相互に異なるタイミングで)ネットワーク上の全ノードへ自ノードデータの送信を行うようにする伝送方式によって、リアルタイム性を保証したデータ交換方式を実現している。尚、各ノードは、受信したデータによって上記コモンメモリの該当領域のデータを更新し、これよりアプリケーションがコモンメモリにアクセスして他ノードの最新データを取得して、この最新データを用いた何等かの処理を実行することになる。
 上記データ交換を実現する為のネットワーク上での効率的な同報通信(ブロードキャスト通信)手法については、既に様々な手法が提案されているが、ここではその一例として特許文献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の適用が進んでおり、情報系機器との連携も考慮してコントローラレベルネットワークにおいてはこれが主流となりつつある。
特開2005-159754号公報 国際公開番号WO2013/121568号
 上記特許文献1,2等の従来手法では、物理層をバスあるいはシリアルケーブルのカスケードとしているので、ブロードキャストにより一度に全ての他局へデータ送信することができる。ブロードキャスト送信されたデータの受信タイミングは、各ノード同時あるいはほぼ無視できる時間差であることが想定できる。
 一方、例えば100BASE-TXや1000BASE-TなどのEthernetを伝送路とした全二重回線等であって、且つ、トポロジとしてリング型またはライン型を採用した場合、各局(ノード)は、隣接局以外の局と通信する為には、自局と通信相手局との間にある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についても略同様である。
 上述したように、制御用ネットワークシステムにおいて、定周期の各スキャン時間内に、全ての局が、自局のデータを他の全ての局に渡す必要がある。これを例えば図15に示すようなリング型トポロジの構成において実現する場合の動作例を、図16に示している。
 図16の例は、トークン方式であり、トークン(送信権)を獲得した局が、自局のデータを送信できるものであり、それ以外の局は、このデータの受信と中継を行うことになる。
 図示の例では、まず、局1がトークンを獲得し、これより、自局のデータを下流の隣接局へ送信する。下流の隣接局は、図15の構成で回線Aの場合には局3となる。図15の構成で回線Aの場合には、局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”の時間が掛かることになる。つまり、非常に時間が掛かることになり、以って上記スキャン時間を非常に長く設定する必要が生じてしまう。換言すれば、データ交換周期が長くなってしまうという問題が生じる。
 本発明の課題は、ネットワークに接続される全ノード装置が相互にデータ交換する制御ネットワークシステムにおいて、伝送効率を高め従来よりも短時間でデータ交換を完了させることができる制御ネットワークシステム、そのノード装置等を提供することである。
 本発明の制御ネットワークシステムは、複数のノード装置が相互にデータ交換する制御ネットワークシステムにおいて、前記各ノード装置は、下記の各構成を有する。
 ・所定のデータ交換周期毎に、所定のタイミングで、自装置のデータを隣接局へ送信するデータ送信手段;
 ・任意の隣接局からの送信データを受信した場合、該送信データを取得すると共に別の隣接局へ中継する中継手段;
 そして、全てのノード装置の前記所定のタイミングを、同一タイミングとする。
(a)、(b)は、本例の制御ネットワークシステムの全体構成図である。 (a)、(b)は、ノードのドライバの処理を示すフローチャート図(その1)である。 ノードのドライバの処理を示すフローチャート図(その2)である。 ノードのドライバの処理を示すフローチャート図(その3)である。 ノードの処理部の処理を示すフローチャート図である。 本手法によるネットワークシステムの自局データ送信に係わる動作を示す図である。 本手法によるシステム全体のデータ送受信動作を示す図(その1)である。 本手法によるシステム全体のデータ送受信動作を示す図(その2)である。 (a)、(b)は、ステップS21,S23.S24.S26の処理イメージである。 本例の制御ネットワークシステムのトポロジの他の例である。 本例の制御ネットワークシステムの機能ブロック図である。 ライン型の全二重回線の制御ネットワークシステムの構成例である。 リング型の一回線の制御ネットワークシステムの構成例である。 従来手法によるデータ交換の具体例を示す図である。 リング型トポロジの全二重回線による制御用ネットワークシステムの具体例である。 図15のシステムにおける従来の通信方式による制御用ネットワークシステムの動作の一例を示す図である。
 以下、図面を参照して、本発明の実施の形態について説明する。
 図1(a)、(b)は、本例の制御ネットワークシステムの全体構成図である。
 尚、図1には、全二重回線等であり且つトポロジとしてリング型であるネットワークシステムを例にしているが、本例の制御ネットワークシステムの構成は、この例に限らない。例えば、リング型ではなく、ライン型であってもよいし、後に図示する他の型であってもよい。また、全二重回線に限るものでもなく、例えばその2倍の回線数(全四重回線と呼ぶ)等であっても構わないし、1回線であっても構わない。また、図1には、構成ノードが4つである例を示すが、勿論、この例に限らない。
 また、本例の制御ネットワークシステムも、上述したように、システムを構成する各機器(ノード)が、相互にデータ交換を行う必要があり、これをリアルタイム性を保証したうえで行う必要がある。その為、例えば上記サイクルタイマで規定されるデータ交換周期の時間内に(スキャン時間内に)全ノード間のデータ交換を完了させる必要がある。つまり、スキャン時間内に、全ノードが、自ノードのデータを、他の全てのノードに渡す必要があることを前提とする。換言すれば、上記のように、システムを構成する各機器(局;ノード)が相互にデータ交換を、リアルタイム性を保証したうえで行う必要があることを前提とする。
 図1(a)に示す例の制御ネットワークシステムは、上記図15と同様に、図示の4台のノード10(局1、局2、局3、局4)が、全二重の通信回線12,13によって接続されており、ネットワーク全体で右回り(時計回り)の通信経路を回線A、左回り(反時計回り)の通信経路を回線Bとする。図15で説明したように、通信回線12,13は例えば上りと下りの通信線であり、例えば局1と局2との間の通信は、通信回線12によって局1が局2へデータ送信し、通信回線13によって局2が局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は、例えば、上記処理部14からの要求に応じて上記送信データフレームを他ノードへ送信したり、他ノードからの送信データフレームを受信するとこれを処理部14に渡す等、通信回線12,13を介した通信処理を行う処理部(通信専用プロセッサ等)である。
 ドライバ11は、通信回線12、13の何れについても、上流側から送られてくるパケットを受信すると、これを中継するものと判定した場合には、下流側へ送出する。例えば、局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等)は、所定のソフトウェア(プログラム)等を実行することで、所定の制御処理等を実行している。そして、この処理の1つとして自局のデータを送信するイベントが発生した場合、このデータと送信要求をドライバ11に渡す。
 ドライバ11は、上記データと送信要求を受けると(ステップS11)、このデータフレームを上記回線A、回線Bの両系に送信する(ステップS12)。これは、上記の通り、両方とも下流側へ送信する。従って、局1の場合、回線Aについては通信回線12aを介して局2へ送信し、回線Bについては通信回線13dを介して局4へ送信する。
 上記送信した自局データ(パケット)は、正常であれば、ネットワークを一巡して自局に戻ってくる。また、他局の送信データ(パケット)を受信する場合もある。
 図2(b)は、データ受信の際のドライバ11の処理を示す。
 ドライバ11は、上記回線A,Bの何れかを介して任意のパケットを受信すると、図2(b)の処理を実行する。まず、受信パケットの送信元をチェックして、送信元が自局である場合には(ステップS21,NO)、このパケットを破棄する(ステップS23)。この場合は、自局が上記ステップS12で送信したパケットが、ネットワークを一巡して、戻ってきたものであるはずだからである。
 一方、受信パケットの送信元が他局(自局以外)である場合には(ステップS21,YES)、受信パケットを中継する(ステップS22)。つまり、受信パケットを下流の隣接局へ転送する。勿論、回線Aで受信した場合は回線Aにおける下流へ、回線Bで受信した場合は回線Bにおける下流へ、中継することになる。また、中継する場合でも、受信パケットは不図示のバッファ等に残しておき、後述するステップS24,S25の処理の際に利用する。
 ステップS22の処理を行った場合には、更に、この受信パケットが、既に受信済みのパケットと同一であるか否かを判定する(ステップS24)。本例では送信元ノードは上記ステップS12で回線A、回線Bの両系にパケット送信するので、正常であれば、他局は、この2つのパケットを受信することになる。よって、後から受信したパケットは必要ないことになる。これより、既に受信済みのパケットと同じパケットを受信した場合には(ステップS24,YES)、受信パケットを破棄する(ステップS26)。
 尚、例えば、送信元ノードは、上記ステップS12の際に、送信する2つのパケット(データフレーム)に同一フレーム番号を付与している。通常、データフレーム送信毎に、フレーム番号を付与して送信する。フレーム番号は、送信毎に、更新(例えば+1インクリメント)される。これより、ステップS24の処理では、例えば、受信パケットと、既に受信済みのパケットとが、送信元ノードが同一で且つフレーム番号が同一である場合に、両者が同一であるものと判定する。但し、これは一例であり、この例に限らない。
 一方、受信パケットが、上記2つのパケットのうちのどちらか一方を先に受信したものである場合には(ステップS24,NO)、この受信パケットのデータを処理部14に渡す(ステップS25)。処理部14は、このデータを用いて何等かの処理を行うことになるが、これについては特に関係ないので、説明は省略する。
 ここで、データ受信の際のドライバ11の処理は、上記図2(b)の処理例に限るものではなく、例えば図3や、図4に示す処理であってもよい。
 図3は、データ受信の際のドライバ11の処理フローチャート図(その2)である。
 図4は、データ受信の際のドライバ11の処理フローチャート図(その3)である。
 以下、まず、図3について説明する。
 ドライバ11は、上記回線A,Bの何れかを介して任意のパケットを受信すると、図3の処理を実行する。まず、受信パケットの送信元をチェックして、送信元が自局である場合には(ステップS31,NO)、このパケットを破棄する(ステップS35)。尚、ステップS31、S35の処理は、上記ステップS21,S23の処理と同じであってよい。
 一方、受信パケットの送信元が他局である場合には(ステップS31,YES)、続いて、受信パケットが、既に受信済みのパケットと同一であるか否かを判定する(ステップS32)。この処理は、上記ステップS24と同じであってよく、ここでは特に説明しない。そして、既に受信済みのパケットと同じパケットを受信した場合には(ステップS32,YES)、受信パケットを破棄する(ステップS35)。ステップS35は、上記ステップS26と同じであってよく、更にステップS26はステップS23と同じであってよい。これより、図3では、“破棄”処理は1つにまとめて示してある。
 一方、受信パケットが、ステップS24で説明した2つのパケットのうちのどちらか一方を先に受信したものである場合には(ステップS32,NO)、この受信パケット(先着パケット)を中継すると共に(ステップS33)、そのデータを処理部14に渡す(ステップS34)。
 ステップS33、S34は、上記ステップS22,S25と同じであってよい。
 上記図3の処理が図2(b)の処理と異なる点は、受信パケットの送信元が他局であり、且つ、最初のパケットを受信した場合に、このパケットの中継処理を行っている点である。
 つまり、図3の処理では、受信パケットの送信元が他局であっても、既に受信済みのパケットと同じパケットを受信した場合には、このパケットの中継は行わない。一方、図2(b)の処理では、この様なケースであっても、パケットの中継を行う。図3の処理では、図2(b)の処理よりも、システム全体としての中継回数を減らすことができる。図3の処理は、例えば任意のノード10が回線A、回線Bの両系に送信したデータのうち、自局に最初に到達したデータ(先着パケット)は中継するが、その後に自局に到達したデータ(後着パケット)は中継しないものと見做してよい。
 これについて、例えば局1が両系に送信したパケットに関して局3が図3の処理を行う場合であって、仮に、局1→局2→局3のルートのパケットが先に局3に到達し、その後に、局1→局4→局3のルートのパケットが局3に到達したものとする。この場合、図3の処理では、後から到達したパケットは局2に中継されないことになる。しかし、局2は、上記局1→局2→局3のルートで既にパケット受信済みであるので、問題ないことになる。
 次に、図4の処理について説明する。
 尚、図4の処理が図2の処理と異なる点は、ステップS21の代わりにステップS41の処理を実行する点であり、他の処理(ステップS42,S43,S44,S45)は、図2のステップS22,S24、S25、S23(またはS26)と同じであってよく、ここでは特に説明しない。
 ステップS41の処理は、受信パケットの送信元をチェックして、送信元が自局の下流の隣接局が送信したフレームであるか否かを判定する処理である。そして、送信元が自局の下流の隣接局が送信したフレームである場合には(ステップS41,YES)この受信パケットを破棄し、そうでない場合には(ステップS41,NO)ステップS42へ移行する。
 尚、言うまでもないが、各パケット(データフレーム)には、送信元ノードの識別番号(局IDなど)が付与されている。また、例えば、各ノード10は、予め、ネットワーク構成情報を記憶している。ネットワーク構成情報は、各ノード10毎に、自ノードの上流側と下流側の隣接局の上記局ID等の情報が含まれている。ネットワーク構成情報は、例えば開発者等が予め任意に作成して、各ノード10に記憶させるが、この例に限らない。例えば、送信元ノード以外は破棄することを許さず必ず中継させると共に中継時に中継局の上記局ID等を付与させることが決められている特殊なパケットを予め用意しておく。任意のノード10が特性のときに(たとえば空き帯域に)上記特殊パケットを送信し、これが一巡して送信元ノードに戻ってくると、送信元ノードでは上記付与されている局IDに基づいて、上流側、下流側の隣接局を判別することが可能となる。
 図2(b)や図3の場合、自局がステップS12で送信したフレームが、リング型ネットワークを一周して戻ってきたら、破棄するものであった。しかし、この例に限らず、自局の1つ手前の他局で破棄させるようにしてもよく、この様な例に応じたものが図4の処理である。
 尚、図4の例に限らず、例えば図3の処理において、ステップS31の代わりにステップS41の処理を行うようにしてもよい。
 以上、図2、図3、図4の処理を纏めると、例えば下記のようになる。
 ・パケットは、リング型ネットワークの各ノード10を一巡したら、すなわちデータ交換が必要とされる全ノード10が受信したら、破棄する。破棄を行うのは、パケット送信元のノード10であってもよいし、その1つ手前のノード10(送信元ノードにパケットを中継するノード10)であっても構わない。
 ・送信元ノードは、上記パケットを、回線A、回線Bの両系に送信する。他の各ノード10は、両系からパケットを受信する。他の各ノード10のドライバ11は、最初に受信したパケットは処理部14に渡すが(実質的に受け取るが)、2番目に受信したパケットは処理部14に渡さない(実質的に受け取らない)。
 ・上記他の各ノードは、上記2番目に受信したパケットは、中継してもよいし、中継しなくてもよい。
 図5は、ノード10の処理部14の処理を示すフローチャート図である。
 図5の処理は、随時実行されるものであり、基本的には何等かのイベント待ち状態であり(ステップS51)、何等かのイベントが発生する毎に(ステップS52,YES)、発生したイベントの内容に応じた処理を実行する。
 発生したイベントが、サイクルタイマ15のタイムアウト(サイクルT.O.)である場合には(ステップS53,YES)、センドタイマ16に所定の設定値をセットして(ステップS54)、センドタイマ16を起動する(ステップS55)。
 発生したイベントが、センドタイマ16のタイムアウト(センドT.O.)である場合には(ステップS56,YES)、自局のデータを送信させる(ステップS57)。これは、上記自局のデータと送信要求を、ドライバ11に渡すものである。これより、上記の通り、ドライバ11は、上記ステップS11のデータ&送信要求を受けることになり、このデータを上記回線A、回線Bの両系に送信することになる(ステップS12)。
 尚、基本的には、上記ステップS55で起動したセンドタイマ16が、タイマアップした場合に、上記ステップS56がYESとなることになる。
 また、発生したイベントが、コモンメモリフレーム受信である場合には(ステップS58,YES)、このコモンメモリフレームのデータを、不図示のコモンメモリの該当領域に格納する(ステップS59)。尚、ここでは、上記ステップS57の処理に応じて送信されるフレームを、コモンメモリフレームと呼ぶものとする。上記図2(b)等の処理により、任意の他局が上記ステップS57の処理により送信したコモンメモリフレームをドライバ11が受信し、これをドライバ11が上記ステップS25により処理部14に渡すと、上記ステップS58の判定がYESとなることになる。
 また、受信フレームが、コモンメモリフレームではなく、例えば同期化フレームである場合には、以下に説明する処理が実行される。
 すなわち、マスタノードは、上記コモンメモリフレームだけでなく、別タイミングで、サイクルタイマ15の同期化の為の同期化フレームを送信する場合がある。これは、任意の宛先ノードに対して送信するものである。宛先ノード以外の各ノード10は、この同期化フレームを受信すると、これを中継する。宛先ノードは、この同期化フレームを受信すると、中継せずに、同期応答フレームを送信元ノード(マスタノード)へ返信する。この処理が、図5に示すステップS60.S61の処理である。
 すなわち、発生したイベントが、自局宛の同期化フレームの受信である場合には(ステップS60,YES)、上記同期応答フレームをドライバ11に渡して、送信元ノード(マスタノード)へ送信させる(ステップS61)。
 尚、システムを構成する複数のノード10のうちの何れか1つの局(一例では、局1、局2、局3、局4の何れか)が、上記マスタノードとして動作するように予め設定されているか、もしくは、局番やMACアドレス等の昇順または降順等で優先度判定を行い、上記マスタノードとして動作する。マスタノード以外のノード10は、基本的には全て、スレーブノードとして動作することになる。そして、マスタノードは、上記同期化フレーム等によって、全てのスレーブノードのサイクルタイマ15を、自ノードのサイクルタイマ15に同期させる。これについては、従来技術文献等に記載されており、ここではこれ以上詳細には説明しない。
 また、尚、一例としては例えば、上記マスタノードは、上記同期化フレームを送信する際に、例えば図2(a)のステップS12の処理により回線A、回線Bの両系に送信する。これより、宛先のスレーブノードは、先着した同期化フレームを受信すると、例えば図3、図5の処理の場合には、ドライバ11がステップS34の処理によって同期化フレームを処理部14に渡し、これより処理部14は上記ステップS60がYESになりステップS61の処理を行うことになる。これより、ドライバ11は、上記ステップS12の処理により、上記同期応答フレームを両系に送信することになる。そして、マスタノードにおいて、先着した同期応答フレームが、ステップS34の処理により処理部14に渡されることになる。尚、マスタノード、宛先スレーブノードの両方とも、後着したフレームや自局の送信フレームは破棄される(ステップS35)。
 以上の処理によれば、結果的に、マスタノード-宛先スレーブノード間を、フレームが最短ルートで往復することになる。
 そして、この最短ルートでのフレーム往復に要する時間が、マスタノードで計測され、この計測時間の半分の時間が、マスタノード-宛先スレーブノード間の通信時間(通信遅延時間)として算出されることになる。この通信遅延時間を用いてサイクルタイマ15の同期化を図る処理については、従来技術であり、ここでは特に説明しない。
 尚、発生したイベントが、上述した各種イベントの何れでも無い場合には(ステップS60,NO)、発生したイベントに応じた処理を実行するが、これについては特に図示・説明はしないものとする。
 ここで、図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により局4、局3によって中継された特定パケットを、通信線13bを介して受信することになるが、この特定パケットは破棄する。
 このようにして、マスタノード(局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,YES)、サイクルタイマを同期化する(ステップS63)。
 尚、上述した同期化フレームが上記特定パケットの一例であるが、同期化フレームは同期フレーム24とは異なるものである。
 尚、図6においてはサイクルタイマ15の動作を1つのみ示しているが、各ノード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の判定がNOとなり、以って上記ステップS23の処理を行う(受信した“局1”データを破棄する)。
 他の局についても、上記局1の動作と略同様の動作を行うことになり、最後は自局の送信データを受信することになり、これを破棄することになる。勿論、これは図2(b)に示す一例の場合であり、上記の通り、この例に限らない。
 このようにして、図7に示すように、全てのノード10が、殆ど空き時間なく、送受信処理を実行することになり、上記図16に示した従来手法に比べて、短時間で全ノード間のデータ交換が完了することは明らかである。そして、これより従来に比べて、データ量を増やしてもよいし、あるいは、サイクルタイマ15の設定値を小さくして、スキャン時間を短くしてもよい。
 従来技術のように各ノード間の通信帯域が未使用状態とならないため、全ノード間で相互にデータ交換するために必要な時間が短縮され、残った帯域時間において更なるデータ交換が可能となり、ネットワーク上のデータ量を増やすことができる。また、この残った帯域時間を次スキャン時間として使用することで、データ交換周期の高速化を実現することができる。
 また、ここでは上記のように回線Aの動作について説明したが、回線Bについても同様にしてパケットがリング型ネットワークを一巡することになる。そして、正常であれば上記の通り、各ノード10は、同じパケットを回線Aと回線Bの両方から受け取ることになる。そして、後から受け取ったパケットは、上記ステップS26の処理が実行されることになり破棄されることになる。
 例えば局1は、上記回線Aに関しては“局5”データを、局5→局1によって受信することになり、早い段階で受信することになる。一方、回線Bに関しては“局5”データを、局5→局4→局3→局2→局1によって受信することになり、終盤で受信することになる。つまり、局1は“局5”データを、1回目は回線Aから受信し、2回目に回線Bから受信することになり、1回目はステップS25の処理を行うが、2回目はステップS26の処理を行うことになる。但し、これは一例であり、この例に限らず、例えば、1回目はステップS26の処理を行うが、2回目はステップS25の処理を行うようにしてもよい。このように、同一のフレームを2つ受信した場合には、先着優先または後着優先で一方を破棄し他方を受け取る。
 また、図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用の送信専用チップは、回線A用のFIFOメモリに任意の1以上のデータフレームがある場合には、これを順次、回線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に渡される。これら両系からの2つのパケットを局1が受信したものが、図示の局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から成り、各通信線がピアtoピアの関係で任意の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回線であっても構わない。
 一回線の場合、例えば図1に示す回線A、回線Bの各通信回線12,13のうちの何れか一方のみが、存在する構成となる。例えば、通信回線12のみが存在する構成となる。この様な構成例を、図13に示す。
 また、1回線の場合には、サイクルタイマ15の同期をとる為に、例えば最初は図1に示す2回線の構成としてサイクルタイマ15の同期をとった後に、1回線の構成に変更して、1回線で運用させるようにするが、この例に限らない。例えば他の例としては全ノード10に電波時計を設けることで、各ノード10毎に自己の電波時計による時刻にサイクルタイマ15を合わせることで、結果的に全ノードのサイクルタイマ15が同期するようにしてもよい。
 また、一回線の場合(ここでは、回線Aのみとする)、各ノード10の処理は、基本的には上記図2(a)、図3、図4、図5の処理と略同様であるが、一部が異なる。すなわち、まず、上記ステップS12の処理は、回線Aにのみデータ送信する処理となる。また、受信処理に関しては、両系から2つのパケットを受信することは無くなるので、ステップS24、ステップS43の処理は削除されることになる。
 本発明の制御ネットワークシステム、そのノード10等によれば、データ交換が必要とされる全ノード10が相互にデータ交換する際、従来よりも短時間でデータ交換を完了させることができる。従い、本発明の制御ネットワークを使った制御システムではデータリフレッシュ周期(定期的)を高速化できるので、制御の高速化が図れる。さらには顧客システムにおける生産性向上などが期待できる。
 本発明の制御ネットワークシステム、そのノード装置等によれば、データ交換が必要とされる全ノード装置が相互にデータ交換する際、従来よりも短時間でデータ交換を完了させることができる。従い、本発明の制御ネットワークを使った制御システムではデータリフレッシュ周期(定期的)を高速化できるので、制御の高速化が図れる。さらには顧客システムにおける生産性向上などが期待できる。
 
 

Claims (14)

  1.  複数のノード装置が相互にデータ交換する制御ネットワークシステムにおいて、
     前記各ノード装置は、
     所定のデータ交換周期毎に、所定のタイミングで、自装置のデータを隣接局へ送信するデータ送信手段と、
     任意の隣接局からの送信データを受信した場合、該送信データを取得すると共に別の隣接局へ中継する中継手段とを有し、
     全てのノード装置の前記所定のタイミングを、同一タイミングとすることを特徴とする制御ネットワークシステム。
  2.  前記各ノード装置は、更に、第1タイマを有し、
     該第1タイマを用いて前記所定のタイミングを生成することを特徴とする請求項1記載の制御ネットワークシステム。
  3.  前記データ交換周期内に、全ての前記ノード装置の送信データが、それぞれ、前記中継が繰り返されることによって全ての他のノード装置に受信されることで、全てのノード装置間の相互のデータ交換が完了することを特徴とする請求項1または2記載の制御ネットワークシステム。
  4.  前記中継手段は、前記受信したデータの送信元が自装置であった場合には、前記中継を行わずに、該受信データを破棄することを特徴とする請求項1または2記載の制御ネットワークシステム。
  5.  前記中継手段は、前記受信したデータの送信元が下流側の隣接局であった場合には、前記中継を行わずに、該受信データを破棄することを特徴とする請求項1または2記載の制御ネットワークシステム。
  6.  前記各ノード装置は、第2タイマを更に有し、
     該第2タイマによって前記データ交換周期が生成され、
     全てのノード装置の第2タイマは、同期されていることを特徴とする請求項1または2記載の制御ネットワークシステム。
  7.  前記全てのノード装置の前記第1タイマが、同一タイミングで起動し且つ同一時間後にタイマアップすることによって、全てのノード装置の前記所定のタイミングを同一タイミングとすることを特徴とする請求項2記載の制御ネットワークシステム。
  8.  全てのノード装置の前記第1タイマの設定値を同一とすることで、前記全てのノード装置の前記第1タイマによる前記所定のタイミングを、同一タイミングとすることを特徴とする請求項7記載の制御ネットワークシステム。
  9.  任意の前記ノード装置に係わる前記隣接局は、該ノード装置と通信線によって接続されており該ノード装置と直接通信可能である他のノード装置であることを特徴とする請求項1または2記載の制御ネットワークシステム。
  10.  前記制御ネットワークシステムは、複数の前記ノード装置と複数の通信線から成り、各通信線が任意の2つのノード装置間を接続しており、各ノード装置が前記通信線によって接続されている他のノード装置である前記隣接局と通信可能であり、通信線によって接続されていないノード装置間の通信は他の1以上のノード装置が中継することで実現するネットワークであることを特徴とする請求項1または2記載の制御ネットワークシステム。
  11.  前記制御ネットワークシステムは、リング型またはライン型のネットワークであることを特徴とする請求項1または2記載の制御ネットワークシステム。
  12.  前記制御ネットワークシステムは、リング型またはライン型のトポロジにて全二重の通信回線によって前記各ノード装置が接続されたネットワークであり、
     前記データ送信手段は、該全二重の両系に前記自装置のデータを送信することを特徴とする請求項1または2記載の制御ネットワークシステム。
  13.  前記制御ネットワークシステムは、複数の前記ノード装置が同時にデータ送信しても、通信干渉が起きない制御ネットワークシステムであることを特徴とする請求項1または2記載の制御ネットワークシステム。
  14.  複数のノード装置が相互にデータ交換する制御ネットワークシステムにおける前記各ノード装置であって、
     所定のデータ交換周期毎に、所定のタイミングで、自装置のデータを隣接局へ送信するデータ送信手段と、
     任意の隣接局からの送信データを受信した場合、該送信データを取得すると共に別の隣接局へ中継する中継手段とを有し、
     前記所定のタイミングが、他の全てのノード装置における前記所定のタイミングと、同一タイミングであることを特徴とする制御ネットワークシステムにおけるノード装置。
     
     
     
     
PCT/JP2016/069040 2015-08-12 2016-06-27 制御ネットワークシステム、そのノード装置 WO2017026180A1 (ja)

Priority Applications (4)

Application Number Priority Date Filing Date Title
CN201680007352.7A CN107210940B (zh) 2015-08-12 2016-06-27 控制网络系统、及其节点装置
JP2017534129A JP6528847B2 (ja) 2015-08-12 2016-06-27 制御ネットワークシステム、そのノード装置
EP16834877.9A EP3242445B1 (en) 2015-08-12 2016-06-27 Control network system and node device thereof
KR1020177021346A KR101947569B1 (ko) 2015-08-12 2016-06-27 제어 네트워크 시스템, 그 노드 장치

Applications Claiming Priority (2)

Application Number Priority Date Filing Date Title
JP2015-159659 2015-08-12
JP2015159659 2015-08-12

Publications (1)

Publication Number Publication Date
WO2017026180A1 true WO2017026180A1 (ja) 2017-02-16

Family

ID=57983081

Family Applications (1)

Application Number Title Priority Date Filing Date
PCT/JP2016/069040 WO2017026180A1 (ja) 2015-08-12 2016-06-27 制御ネットワークシステム、そのノード装置

Country Status (6)

Country Link
EP (1) EP3242445B1 (ja)
JP (1) JP6528847B2 (ja)
KR (1) KR101947569B1 (ja)
CN (1) CN107210940B (ja)
TW (1) TWI688239B (ja)
WO (1) WO2017026180A1 (ja)

Citations (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JPH1188388A (ja) * 1997-09-08 1999-03-30 Toshiba Corp データ伝送システム及び方法並びにプログラムを記録した媒体
JP2013172442A (ja) * 2012-02-23 2013-09-02 Canon Inc 電子デバイス、通信システム、コンピュータプログラム
JP2013207457A (ja) * 2012-03-28 2013-10-07 Mitsubishi Electric Corp 通信システム

Family Cites Families (9)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US6891828B2 (en) * 2001-03-12 2005-05-10 Network Excellence For Enterprises Corp. Dual-loop bus-based network switch using distance-value or bit-mask
JP4379237B2 (ja) * 2004-07-14 2009-12-09 ソニー株式会社 無線通信システム、無線通信装置及び無線通信方法、並びにコンピュータ・プログラム
JP4991254B2 (ja) * 2006-11-17 2012-08-01 株式会社東芝 二重リング・ネットワークの通信制御方法及び二重リング・ネットワークの伝送局
JP5351607B2 (ja) * 2009-05-22 2013-11-27 アズビル株式会社 ネットワークシステムおよびノード
EP2410697A1 (en) * 2010-07-20 2012-01-25 ABB Research Ltd. Frame transmission and communication network
EP2566110B1 (de) * 2011-08-30 2014-10-01 Siemens Aktiengesellschaft Verfahren zum Übertragen von Telegrammen in einem Automatisierungssystem
CN103209468B (zh) * 2012-01-17 2016-05-18 华为终端有限公司 无线传输的方法、接入点和站点
CN103249116B (zh) * 2012-02-13 2016-10-05 华为终端有限公司 确定邻居站点的方法、站点、接入点和通信系统
JP5817785B2 (ja) * 2013-05-29 2015-11-18 株式会社安川電機 産業用デバイス、コントローラ、データ転送方法及びデータ送信方法

Patent Citations (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JPH1188388A (ja) * 1997-09-08 1999-03-30 Toshiba Corp データ伝送システム及び方法並びにプログラムを記録した媒体
JP2013172442A (ja) * 2012-02-23 2013-09-02 Canon Inc 電子デバイス、通信システム、コンピュータプログラム
JP2013207457A (ja) * 2012-03-28 2013-10-07 Mitsubishi Electric Corp 通信システム

Also Published As

Publication number Publication date
EP3242445B1 (en) 2020-08-19
CN107210940A (zh) 2017-09-26
JP6528847B2 (ja) 2019-06-12
EP3242445A4 (en) 2018-03-28
TW201711422A (zh) 2017-03-16
JPWO2017026180A1 (ja) 2017-11-09
CN107210940B (zh) 2020-12-04
EP3242445A1 (en) 2017-11-08
KR20180030458A (ko) 2018-03-23
KR101947569B1 (ko) 2019-02-14
TWI688239B (zh) 2020-03-11

Similar Documents

Publication Publication Date Title
US9585113B2 (en) Method and device for time-synchronization in ad hoc network
JP5849786B2 (ja) データブロック出力装置、通信システム、データブロック出力方法、及び通信方法
CN110870285B (zh) 在具有部分实时需求的数据网络中高性能数据传输的方法和执行该方法的装置
US20140355619A1 (en) Industrial network apparatus and data communication method
JP6265058B2 (ja) ネットワーク伝送システム、そのマスタノード、スレーブノード
CN113711572A (zh) 一种报文传输方法及装置
WO2015125439A1 (ja) 通信システム、無線通信装置及び無線通信方法
TWI669937B (zh) 在非確定性網路上之網路裝置間傳輸資料之方法
JP2016503615A (ja) リアルタイムメッセージの送信方法およびリアルタイムメッセージを送信するためのコンピュータネットワーク
WO2017026180A1 (ja) 制御ネットワークシステム、そのノード装置
US11442432B2 (en) Communication device and method for data transmission within an industrial communication network
KR101991114B1 (ko) 제어 네트워크 시스템, 그 노드 장치
JP6687114B2 (ja) 制御ネットワークシステム、そのノード装置
Scharbarg et al. Interconnecting can busses via an ethernet backbone
JP2004048491A (ja) PON(PassiveOpticalNetwork)システム
JP2024521725A (ja) パケット伝送方法及びパケット伝送装置

Legal Events

Date Code Title Description
121 Ep: the epo has been informed by wipo that ep was designated in this application

Ref document number: 16834877

Country of ref document: EP

Kind code of ref document: A1

ENP Entry into the national phase

Ref document number: 2017534129

Country of ref document: JP

Kind code of ref document: A

ENP Entry into the national phase

Ref document number: 20177021346

Country of ref document: KR

Kind code of ref document: A

REEP Request for entry into the european phase

Ref document number: 2016834877

Country of ref document: EP

NENP Non-entry into the national phase

Ref country code: DE