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

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

Info

Publication number
WO2017145567A1
WO2017145567A1 PCT/JP2017/001170 JP2017001170W WO2017145567A1 WO 2017145567 A1 WO2017145567 A1 WO 2017145567A1 JP 2017001170 W JP2017001170 W JP 2017001170W WO 2017145567 A1 WO2017145567 A1 WO 2017145567A1
Authority
WO
WIPO (PCT)
Prior art keywords
station
message
data
band
node
Prior art date
Application number
PCT/JP2017/001170
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 EP17756009.1A priority Critical patent/EP3328003B1/en
Priority to JP2018501040A priority patent/JP6665924B2/ja
Priority to KR1020187005115A priority patent/KR101991114B1/ko
Priority to CN201780002872.3A priority patent/CN107925606B/zh
Publication of WO2017145567A1 publication Critical patent/WO2017145567A1/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/40Bus networks
    • H04L12/403Bus networks with centralised control, e.g. polling
    • 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]
    • 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
    • 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/423Loop networks with centralised control, e.g. polling
    • 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/43Loop networks with decentralised control with synchronous transmission, e.g. time division multiplex [TDM], slotted rings
    • 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/40Bus networks
    • H04L2012/4026Bus for use in automation systems

Definitions

  • the present invention relates to a control network system in which a plurality of node devices are connected by a communication line and data exchange is performed at predetermined intervals.
  • a control network system a transmission system for plant control or the like
  • devices configuring the system need to exchange large-capacity data with each other after guaranteeing real-time capability.
  • To guarantee real time means, for example, completing data exchange between all devices that need to exchange data within each period of a fixed cycle.
  • Each device for example, needs to collect data indicating the current status of the device, etc., at regular intervals, and pass it to all other devices.
  • each device is provided with virtual shared memory (common memory), and each device is connected to all nodes on the network (at mutually different timings) in a time division multiplex system every communication cycle (scan time)
  • a data exchange system that guarantees real-time capability is realized by a transmission system that transmits data.
  • Patent Document 1 prevents transmission timing duplication from each node by using the time division multiple access method by the built-in timer of each node and the built-in timer correction of the slave node by the synchronization frame from the master node. However, high efficiency transmission is realized.
  • Patent Document 2 also discloses a conventional technique substantially similar to Patent Document 1.
  • FIG. 14 shows a specific example of data exchange according to the conventional method of Patent Documents 1 and 2 and the like.
  • each station is provided with two types of timers, a cycle timer and a send timer.
  • the cycle timer is a timer for generating a data exchange cycle (scan time), and the same time is set in all the stations.
  • the synchronization frame is used to synchronize the cycle timers of all the stations, which will not be described in particular.
  • the send timer is a timer for generating data transmission timing of each station, and different values are set in all stations.
  • the send timer is started when the cycle timer is up, and is up at a timing according to the set value, so that all stations will be up at different timings. From this, as shown, for example in FIG. 14, the data transmission timing of all the stations will mutually differ.
  • the cycle timer generates a scan time 101 which is a data exchange cycle (communication cycle) as shown in the figure.
  • the scan time 101 is composed of an illustrated TC band 102 used for time synchronization and an illustrated TS band 103 used for data exchange.
  • the TC band and the TS band are, for example, as described in Patent Document 2, and will not be particularly described here.
  • symbol 105,108 of illustration shows the transmission time slot allocated to each station and the code
  • the communication cycle (for example, the scan time 101 or the like) is data communication for performing one-way access on an event basis with the band (the above TS band or the like)
  • the band the above TS band or the like
  • a band such as a MSG band to be described later
  • Data communication with one-way access as an event has “variations” in the number of message transmission requests per unit time of the stations participating in the network, and the total of those per unit time can be transmitted Since the number may be exceeded, it is necessary to set an upper limit on the transmittable number per unit time and to perform communication within that range. Therefore, the number of stations that can be transmitted within a certain unit time is managed, and the allocated stations perform data communication, thereby realizing data communication within the upper limit of the transmittable number per unit time.
  • the master station accepts a message transmission request from each of the other stations (slave stations), and grants a transmission right to some of the stations that have sent the transmission request using tokens. Only the station to which the transmission right is granted can perform message communication, and the station to which the transmission right is granted transmits a message frame on the network line.
  • data communication (message communication etc.) which performs one-way access as an event without exceeding the number of possible transmissions per unit time is realized. .
  • each station is a station other than an adjacent station.
  • transmission is performed on the premise of relaying by one or more stations between the own station and the communication opposite station.
  • FIG. 15 is a specific example of a control network system with full duplex lines in a ring topology.
  • four nodes (station 1, station 2, station 3, station 4) are respectively connected in a ring as shown by the two uplink and downlink communication lines, A communication path clockwise (clockwise) is taken as line A, and a communication path counterclockwise (counterclockwise) is taken as line B throughout the network.
  • the line A for example, the transmission data from the station 1 is sequentially relayed by the stations 3, 2, and 4 as in station 1 ⁇ station 3 ⁇ station 2 ⁇ station 4 ⁇ station 1, and returns to the station 1.
  • the line B for example, transmission data from the station 1 is sequentially relayed by the stations 4, 2 and 3 as in station 1 ⁇ station 4 ⁇ station 2 ⁇ station 3 ⁇ station 1, etc. I will come back to one.
  • FIG. 16 shows an example of the operation of the control network system according to the conventional communication method in the system of FIG. Although FIG. 16 shows an operation example of the line A, the same applies to the line B.
  • the example in FIG. 16 is a token method, in which a station that has acquired a token (transmission right) can transmit data of its own station, and other stations will receive and relay this data. .
  • the station 1 obtains a token, and thereby transmits its own data to the downstream adjacent station.
  • the downstream adjacent station is the station 3 in the case of the line A in the configuration of FIG. 15 and the upstream adjacent station of the station 1 is the station 4.
  • the rectangles indicate transmission / reception data frames (packets), and the upper side indicates reception and the lower side indicates transmission for each station.
  • the horizontal axis is time.
  • the numbers in the rectangle indicate the transmission source station. For example, if '1', the transmission source is station 1 and is described as packet 'station 1'. The station 1 that has acquired the token will transmit a packet 'station 1' to the station 3. Note that 'T' in the rectangle means a token.
  • the station 3 When the station 3 receives the packet 'station 1', it acquires this and relays it to the downstream adjacent station (station 2). Similarly, the station 2 receiving the packet 'station 1' acquires it and relays it to the downstream adjacent station (station 4). The station 4 receiving this packet 'station 1' similarly acquires it and relays it to the downstream adjacent station (station 1).
  • the station 1 receives its own transmission data frame, and releases the token accordingly.
  • the token includes authority station information, and the authority station is updated at the time of release.
  • the authority station is updated every release, such as '1' ⁇ '2' ⁇ '3' ⁇ '4' ⁇ '1' ⁇ '2' ⁇ and so on.
  • stations 2, 3, and 4 acquire tokens and acquire the transmission right, they will transmit their own data, and the data will be sequentially relayed by other stations and sent to itself. Come back.
  • each node transmits data of its own station at mutually different timing within the TS band.
  • the conventional techniques of Patent Documents 1 and 2 can realize such an operation using a send timer in which different settings are performed without using a token.
  • the send timer of each station may be set so that each node transmits data of its own station at intervals of this time by measuring in advance the time taken for data to travel around the line in advance.
  • message transmission in the message band is not always performed regularly, and there may be no message to be transmitted, or there may be a plurality (multiple) of messages to be transmitted.
  • the station in which the message transmission event of the own station has occurred includes a message transmission request in the transmission packet of the own station in the TS band. Further, among the plurality of stations, a station (referred to as a master station) which performs message transmission arbitration is determined in advance.
  • the master station having received a message transmission request from any station in the TS band determines whether to permit or not.
  • the station 3 is the master station, and the station 1 and the station 4 make a message transmission request in the TS band of the arbitrary scan time 101, and the station 3 permits the station 1.
  • the message transmission / reception operation in the MSG band is as shown in FIG. 17, for example.
  • one communication cycle (scan time) is divided into the above-mentioned TC band, TS band, and message band (MSG band).
  • the operation of the TS band is omitted.
  • the operation of the TS band is, for example, the operation of FIG. 16 above, and the message transmission request is added to the transmission / reception data frame (packet) shown in FIG. It shall be.
  • the master station can recognize the station that has made a message transmission request, and determines the station (permission station) that permits the message transmission among them. . Note that this determination method may be various and will not be particularly described here.
  • the permission station is determined to be station 1. Further, in the example of FIG. 17, the master station is the station 3.
  • the operation of the TC band is also omitted and shown, and the information (station number or master / slave) indicating each station is shown in the TC band column for convenience.
  • the operation of the TC band is a prior art and will not be particularly described.
  • the master station issues a permission notification (TOKEN) to the permitted station (station 1).
  • TOKEN permission notification
  • This permission notification is relayed to the downstream adjacent station of each station in each station substantially in the same manner as in FIG. 16 and relayed sequentially to station 3 ⁇ station 2 ⁇ station 4 ⁇ station 1 as shown in FIG. reach.
  • the station 1 relays the permission notification to the downstream station (station 3) located downstream of the station itself, and transmits a message ("station 1 MSG" shown in the drawing) of the station itself as it is granted.
  • This message is also relayed in each station to a downstream adjacent station, and sequentially relayed as station 1 ⁇ station 3 ⁇ station 2 ⁇ station 4 to reach station 4 (here, the destination is station 4).
  • station 4 the destination is station 4
  • the length of the MSG band (message transmission band) is predetermined and can not be made very long because it is a part of the scan time 101 and there may be no message. Thus, in the above example, there may still be message transmissions of other message transmission request stations, but this may be transmitted in the next communication cycle.
  • the object of the present invention is to provide a control network system capable of enhancing the transmission efficiency of message transmission / reception in a control network system in which all node devices connected to the network mutually exchange data and transmit / receive any message, the node device etc. 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 means.
  • Data transmission / reception means for transmitting data of the own apparatus and receiving transmission data of another apparatus in the first band at predetermined data exchange cycles;
  • ⁇ Message transmission for transmitting a message to an adjacent station when there is a message transmission request of the own apparatus at a predetermined timing in a second band after the first band at each predetermined data exchange cycle means;
  • ⁇ In the second band when a message is received from one of the adjacent stations, the message is relayed to the other adjacent station, or when the message is addressed to the own apparatus, the message is received to receive the message means.
  • control network system of the present invention and its node devices, etc., it is possible to improve the transmission efficiency of message transmission and reception in a control network system in which all node devices connected to the network mutually exchange data and transmit and receive arbitrary messages. it can.
  • (A), (b) is a whole block diagram of the control network system of this example.
  • (A), (b) is a flowchart figure which shows a process of the driver of the node of this example. It is a flowchart figure which shows a process of the process part of the node of this example. It is a detailed example of processing of Step S44.
  • This is an example of the process of step S63.
  • It is an example of frame transmission-and-reception operation of each node of this example (the 1).
  • (A) shows the image of the process of step S24, S26, (b) shows the image of the process of step S21, S23.
  • movement of the control network system by the conventional communication system in the system of FIG. 15 is shown. It is a figure which shows an example of the conventional message transmission operation.
  • FIGS. 1A and 1B are overall configuration diagrams of a control network system of this example.
  • the control network system of this example is, for example, a full-duplex circuit using Ethernet as a transmission path such as 100BASE-TX or 1000BASE-T described above, and a system adopting a ring type or line type as a topology. It is a structure.
  • each station in order to communicate with a station other than the adjacent station, each station (node) assumes that transmission is relayed by one or more stations between the own station and the communication opposite station. It becomes the configuration to do. That is, in this configuration, each station can communicate directly only with the adjacent station. A node relays frame data transmitted from an adjacent station to another adjacent station if it is not addressed to the own station. By repeating this relay, frame data will eventually reach the destination station.
  • the adjacent station is another station directly connected to the own station by a communication line. Further, since the example shown in FIG. 1 is a full duplex line, two communication lines, uplink and downlink, are provided. That is, a communication line for data transmission from the own station to the adjacent station and a communication line for receiving data sent from the adjacent station are provided.
  • FIG. 1 exemplifies a network system which is a full duplex line or the like and which is a ring topology as a topology
  • the configuration of the control network system of this example is not limited to this example.
  • the ring type it may be a line type, or may be another type illustrated later.
  • the present invention is not limited to the full duplex line, and may be, for example, twice the number of lines (referred to as a full quadruple line) or the like, or may be one line.
  • FIG. 1 shows an example in which there are four configuration nodes, but of course the present invention is not limited to this example.
  • each device (node) configuring the system needs to exchange data in the TS band with each other, and it is necessary to perform this after guaranteeing the real time property. There is. Therefore, as an example, it is necessary to complete the data exchange between all the nodes (within the TS band in one communication cycle) within the time of the data exchange cycle defined by the above-mentioned cycle timer, for example. That is, as an example, every node needs to pass the data of its own node to all other nodes in the TS band for each communication cycle. In other words, as described above, each device (station; node) of the system needs to exchange data with each other while guaranteeing real-time capability, as described above.
  • the present invention is not limited to the above example.
  • message transmission / reception in the message transmission band does not necessarily require transmission / reception of all messages generated at that time within the MSG band in one communication cycle. However, it is desirable to improve transmission efficiency so that as many messages as possible can be transmitted and received in one communication cycle. On the other hand, as described above, since the length of the MSG band is predetermined, it should be avoided that the MSG band ends before the message transmission / reception process is completed.
  • this method basically improves the transmission efficiency of message transmission and reception in the message transmission band (MSG band), in addition to this, the transmission efficiency of data exchange in the TS band is further improved. It is also good.
  • the present invention is not limited to this example, and as described later, the TS band is the same as the conventional one. Only the transmission efficiency may be enhanced.
  • the communication lines 12 and 13 are, for example, uplink and downlink communication lines.
  • the station 1 transmits data to the station 2 by 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, and the communication line 12 (12a, 12b, 12c, 12d) related to the line A and the line B.
  • Communication lines 13 13a, 13b, 13c, 13d are respectively connected to the drivers 11 of the respective nodes 10 as illustrated.
  • each of the communication lines 12 and 13 is not composed of one communication line (such as a serial line), but includes a plurality of communication lines (such as a serial line). That is, for example, the communication line 12 includes the illustrated communication lines 12a, 12b, 12c, and 12d. Each communication line connects between any two nodes 10. In the illustrated example, communication line 12a is between station 1 and station 2, communication line 12b is between station 2 and station 3, communication line 12c is between station 3 and station 4, and communication line 12d is between station 4 and station 1, Each is connected.
  • the communication line 13 includes the illustrated communication lines 13a, 13b, 13c and 13d. Each communication line connects between any two nodes 10.
  • communication line 13a is between station 1 and station 2
  • communication line 13b is between station 2 and station 3
  • communication line 13c is between station 3 and station 4
  • 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.
  • station 1 and station 2 transmit packets simultaneously with each other, packet collisions do not occur because the communication lines used are different.
  • packet collisions do not occur because the communication lines used for packet transmission are different.
  • This packet may be either a packet of data (common memory frame) in the TS band or a packet of a message in the MSG band.
  • no packet collision occurs even if the stations transmit packets at the same timing in either the TS band or the MSG band.
  • the description of the TC band is basically omitted.
  • each node 10 also includes a processing unit 14, a cycle timer 15, a send timer 16, a message send timer 17, and the like.
  • the cycle timer 15 is described in Patent Documents 1 and 2 described above, and the description thereof is omitted here.
  • the send timer 16 determines the data transmission timing of the own station in the TS band, and in that sense, it is the same as the patent documents 1 and 2 described above. However, in Patent Documents 1 and 2, the respective stations have different settings. Therefore, the data transmission timing of each station in the TS band is different from each other as described in FIG. On the other hand, the send timer 16 has, for example, the same setting in all the stations (nodes 10), from which all the stations in the TS band start transmitting their own data (common memory frame) at the same timing. Do. In the examples shown in FIGS. 6 and 7 described later, the timeout of the send timer 16 is set to be the start timing of the TS band in all the nodes 10.
  • the send timer 16 is a comment memory send timer.
  • the message send timer 17 determines the data transmission timing of its own station in the MSG band at each node 10.
  • the time-out indicates the start of the MSG band, provided that the master station is provided, and the token is transmitted from the master station due to the time-out. .
  • the message send timer 17 is also set to time out on all nodes 10 at the same timing.
  • the timeout of the message send timer 17 is set to be the start timing of the MSG band in all the nodes 10.
  • the same setting value is set in the message send timers 17 of all the nodes 10, and the message send timers 17 are activated when the send timer 16 times out.
  • the message send timer 17 may be activated with the same set value when the cycle timer 15 times out, and the send timer 16 may be restarted as a message for the start timing of the MSG band. Also good.
  • each node 10 transmits one message of the own station at the timing of time-out of the message send timer 17. Thereafter, according to the processing result of FIG. 3, when the own station is permitted to transmit a plurality of messages, the second and subsequent ones are transmitted. In the example of FIG. 6 described later, for example, the station 1 transmits three messages of its own station. When the number of messages of the own station has been transmitted (permitted according to FIG. 2A), thereafter, transmission messages from other stations are relayed by the process of FIG. 2B.
  • the processing unit 14 executes the main processing of the node 10, and, for example, controls a control target device (not shown), collects data indicating the state thereof, etc., such as the cycle timer 15, the send timer 16, and the message send timer 17 It performs various processing such as management of setting and activation and generation of transmission data frame (packet).
  • the driver 11 transmits the transmission data frame to another node in response to a request from the processing unit 14, or passes / relays the transmission data frame to the processing unit 14 upon reception of a transmission data frame from another node.
  • It is a processing unit (a communication dedicated processor or the like) that performs communication processing via the communication lines 12 and 13.
  • the driver 11 When the driver 11 receives a packet sent from the upstream side for any of the communication lines 12 and 13, when it is determined that the packet is to be relayed, the driver 11 sends the packet to the downstream side. For example, in the case of the station 1, for the line A, the station 4 is upstream and the station 2 is downstream, for the line B, the station 4 is downstream and the station 2 is upstream.
  • the driver 11 of the station 1 transfers it to the station 2 through the communication line 12a when relaying this.
  • the content (data) of the data frame is acquired and delivered to the processing unit 14 as needed.
  • the packet is transmitted to the station 4 through the communication line 13d.
  • the driver 11 of the station 1 sends this data frame to both the line A and line B systems. That is, the data frame is transmitted to the station 2 via the communication line 12a and to the station 4 via the communication line 13d.
  • FIGS. 2A and 2B are flowcharts showing processing of the driver 11 of the node 10.
  • the processing shown in FIGS. 2A and 2B is realized by executing an application program stored in advance in a memory (not shown) in the memory 11 (not shown) in the driver 11.
  • FIG. 2A shows the processing of the driver 11 at the time of transmitting data of the own station.
  • 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. An example of this process is shown in FIG. 3 and described later. Then, when an event of transmitting data of the own station occurs as one of the processing, the data and the transmission request are passed to the driver 11.
  • 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). It sends both downstream, as described above. 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 the process of the driver 11 at the time of data reception.
  • the driver 11 executes the process of FIG. 2 (b). First, the transmission source of the received packet is checked. If the transmission source is the own station (step S21, NO), the packet is discarded (step S23). In this case, the packet transmitted by the own station in step S12 should be one that has returned around the network.
  • step S22 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 or the like (not shown) and used in the processing of steps S24 and S25 described later.
  • step S24 it is further determined whether the received packet is identical to the already received packet.
  • the transmission source node transmits packets to both the line A and line B systems in step S12, if normal, the other station receives the two packets. Therefore, the packet received later is not necessary.
  • 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.
  • a frame number is assigned and transmitted every data frame transmission.
  • the frame number is updated (eg, incremented by 1) every transmission.
  • an identification ID or the like indicating a transmission source node is added to each packet.
  • step S24 if the received packet is one received first of the two packets (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. For example, if the received packet is a common memory frame, processing will be executed when step S48 in FIG. 3 described later is YES.
  • the packet in the process of FIGS. 2A and 2B may be either a data packet (common memory frame) transmitted and received in the TS band or a packet of a message transmitted and received in the MSG band.
  • the present invention is not limited to the example of FIG. 2 (b).
  • relay processing of this packet may be performed.
  • this packet may not be relayed.
  • the packet relay is performed even in such a case.
  • each packet (data frame) is assigned an identification number (station ID etc.) of the transmission source node.
  • each node 10 stores network configuration information in advance.
  • the network configuration information includes, for each node 10, information such as the station ID of the adjacent stations upstream and downstream of the own node.
  • the network configuration information is arbitrarily created in advance by a developer, for example, and stored in each node 10.
  • the present invention is not limited to this example.
  • the frame transmitted by the own station in step S12 goes around the ring network and returns, the frame is discarded.
  • the present invention is not limited to this example, and it may be discarded at another station one station before the own station.
  • the packet is discarded when it goes around each node 10 of the ring network, that is, when all the other nodes 10 receive it.
  • the discard may be performed by the node 10 of the packet transmission source, or by the node 10 immediately before that (the node 10 relaying the packet to the transmission source node).
  • the transmission source node transmits the packet to both systems of the line A and the line B.
  • Each other node 10 receives a packet from both systems if there is no abnormality.
  • the driver 11 of each of the other nodes 10 passes the packet received first to the processing unit 14 (although it receives substantially), but does not pass the packet received second to the processing unit 14 (does not receive substantially) .
  • the other nodes may or may not relay the second received packet.
  • the packet is a common memory frame or / and a message frame.
  • FIG. 3 is a flowchart showing processing of the processing unit 14 of the node 10.
  • the master station determined transmission authority assignment station for message transmission, but in this example, all nodes 10 perform the processing of FIG. 3 to perform transmission authority (transmission permission number) allocation determination. .
  • transmission authority transmission permission number
  • each station actively determines whether or not the message can be transmitted, the number of allocations, etc. without giving the transmission right by the token frame. If the own station can transmit a message, the message of the own station is transmitted without waiting for a token when the message transmission band is reached.
  • step S31 The process in FIG. 3 is executed at any time, and basically is waiting for some event (step S31), and occurs every time some event occurs (step S32, YES).
  • step S33 The content of is judged (step S33) and the processing according to it is executed.
  • step S34 when the event that has occurred is a timeout (cycle T.O.) of the cycle timer 15 (step S34, YES), the processing of steps S35 to S38 is executed.
  • cycle T.O. timeout of the cycle timer 15
  • a predetermined set value is set in the send timer 16 (step S35), and the send timer 16 is activated (step S38). However, before this activation, the presence or absence of a message transmission request of the own station is confirmed. If there is (step S36, YES), the number of message transmission requests (simply referred to as the number of requests) may be set and entered (step S37).
  • the set is to be stored in a common memory frame, and the entry is to be stored in an "entry table for managing transmission right" (hereinafter referred to as an entry table) not shown.
  • the common memory frame to which the number of requests is added is transmitted by the process of step S40 described later, the common memory frame is passed to all the nodes 10 by the relay process by each node 10 described above.
  • the number of message transmission requests is passed to the node 10 of FIG.
  • the number of sent message transmission requests is stored in the above-mentioned "entry table" of each node 10.
  • the process of step S44 described later is executed based on the number of message transmission requests of each station stored in the "entry table" of the own station.
  • the set value set in the send timer 16 in step S35 is the same for all the nodes 10.
  • setting values different from one another in all nodes are set in a send timer (not shown).
  • the send timer 16 times out at the same timing at all the nodes 10. From this, for example, as shown in FIG. 6 described later, transmission of the common memory frame is started at the same timing in all the nodes 10.
  • step S40 the data (common memory frame) of the own station is transmitted (step S40). This is to pass the data of the own station (in some cases, a message transmission request is added) to the driver 11. From this, as described above, the driver 11 receives the data & transmission request of step S11, and transmits this data to both the line A and line B systems in step S12.
  • a predetermined set value is set in the message send timer 17 (step S41) and activated (step S42).
  • the determination in step S43 described later becomes YES.
  • the set value is, for example, the same value in all the nodes 10.
  • all nodes 10 have MSG bands at the same timing, and the node 10 having a message to be transmitted immediately transmits the first message. In this example, at least one message transmission is permitted.
  • step S39 becomes YES. If the event that has occurred is a timeout (send TO) of the message send timer 17 (YES in step S43), the processes in steps S44 to S47 are executed.
  • step S44 common memory frame drop determination and message transmission permission station determination are performed.
  • This process is also a process of determining the message transmission permission number of each node 10, whereby the message transmission availability of the local station and the message transmission permission number are determined.
  • the present invention is not limited to this example.
  • step S45 when there is a message transmission request of the own station and transmission is permitted (step S46, YES), only the number of permitted message transmissions of the own station. , And transmit a message frame (step S47).
  • step S46, NO message transmission is not performed. Note that, as described above, in this example, at least one message can be transmitted at all times, and thus there is no possibility that the message is not permitted, but this is not limited to this example.
  • step S48 If the event that has occurred is reception of a common memory frame (step S48, YES), data of the common memory frame is stored in the corresponding area of the common memory (not shown) (step S49).
  • the frame transmitted in the process of step S40 is called a common memory frame.
  • the number of requests is considered to be a message transmission request.
  • This entry table "is later referred to in the process of step S44 (an example is shown in FIG. 4) Note that each frame naturally includes the ID (identification information) of the transmission source node and the like.
  • the driver 11 passes the received message to the processing unit 14, and when the destination of the message frame is the own station, the processing unit 14 determines the message frame. If the destination is not the own station, the message frame may be discarded. Of course, the driver 11 relays the received message frame to the downstream adjacent station by the process of FIG. 2 (b).
  • each node 10 that has received the common memory frame receives a message transmission request of the transmission source station. That is, each station receives a message transmission request (the number of requests) from each station (node 10) participating in the network, and each station independently determines the transmission permission station of the message and the allocation number (transmission permission number). Even if each of them is determined independently, the determination algorithm is the same, so the same determination result will be obtained if the same data is given. That is, if all common memory frames from each station can be correctly transmitted, the same assignment result (decision result) will be obtained at all stations.
  • Each station determines whether or not the message can be transmitted and the number of allocations of the own station based on the determination result of the message transmission right assignment in the own station.
  • the transmission of the message frame is simultaneously performed based on the message send timer 17 synchronized by all the stations.
  • the determination method of the transmission permission station of the above message and the allocation number may be various, and for example, priority allocation such as equal allocation or “weighted round robin” may be performed, or A combination of these may be used, or any other existing method may be used. In any case, the determination method itself is not particularly limited, and any existing method or a combination of the existing methods may be used.
  • the common memory frame and the message frame relating to the own station can be immediately transmitted without the need to obtain a token in each band.
  • the frames do not collide with each other.
  • these frames of other stations are sequentially relayed. Also in this case, the frames do not collide even if relay transmission is simultaneously performed by each station at the same timing.
  • both the common memory frame and the message frame become transmission / relay operations as shown in FIG. 6 described later, for example. That is, both the common memory frame and the message frame can be transmitted more efficiently than in the past.
  • each station can transmit at least one regardless of the number of message transmission requests from other stations.
  • step S44 a detailed example of the process of step S44 is shown in FIG.
  • step S61 the presence or absence of a frame drop is determined. This process will be described later, but if there is a frame dropout (step S61, YES), the number of message transmission permission of all nodes is forcibly set to a preset basic value (in this example, '1'). Decide on.
  • a preset basic value in this example, '1'.
  • step S61, NO the reason for forcibly setting the message transmission permission number of all the stations uniformly to "1" in this way will be described later in the explanation of the frame omission.
  • step S61, NO the reason for forcibly setting the message transmission permission number of all the stations uniformly to "1" in this way will be described later in the explanation of the frame omission.
  • step S61, NO the number of requests of each station stored in the entry table in the process of steps S37 and S50, the presence or absence of message transmission request of own station and other stations And recognize the number of requests.
  • the current priority of each station is recognized (step S62). This priority is determined, for example, based on the current count value of a predetermined counter.
  • this counter is not shown, it is incremented (+1 increment) each time the step S34 becomes YES. Also, in this example, the counter counts cyclically between 1 to 4 as 1 ⁇ 2 ⁇ 3 ⁇ 4 ⁇ 1 ⁇ 2 ⁇ 3 ⁇ 4 ⁇ 1. Then, it is assumed that the node 10 whose station number is the same as the count value has the highest priority. For example, when the counter value of the counter is “3”, the station 3 has the highest priority, and in this example, the stations 3 ⁇ station 4 ⁇ station 1 ⁇ station 2 are in descending order of priority.
  • step S62 an upper limit value set in advance is recognized.
  • This upper limit is the upper limit of the number of messages that can be transmitted and received in the MSG band, and is determined according to the length of the MSG band, the frame size of the message frame, etc. .
  • the number of permitted message transmissions of each station is determined based on the presence / absence of the request for message transmission of each station including the own station, the number of requests, the priority, the upper limit value, etc. Are determined (step S63). This determination is made, for example, in such a manner that the total value of the message transmission allowance numbers of all the stations does not exceed the upper limit value.
  • the message transmission permission number of each station is the sum of the basic value and an arbitrary allocation value from the surplus value.
  • the basic value is, for example, a value that is always assigned uniformly to all the stations, and in this example, is set to '1' (uniform distribution). That is, in this example, all the stations that have made a message transmission request will be able to transmit at least one message, and there will be no stations that can not transmit even one message if there is a request.
  • the allocation number is set to 1 and this processing is ended. That is, the station 2 has only the basic value. Also, station 1 and station 2 can not transmit all the requested messages this time. However, it can be sent any time after the next time.
  • the process of determining the number of permitted message transmissions of the above-mentioned example is, for example, a process by “equal division +“ weighted round robin ”, it is not limited to this example.
  • this transmission time is the same whether it is transmitted by only one station or transmitted by all stations as described above. It is assumed that three message frames can be transmitted.
  • the operation of the TC band is omitted and shown, and the information (station number, master / slave, request number, etc.) indicating each station is displayed in the TC band column for convenience. It shows. The same applies to FIGS. 7 and 8.
  • the operation of the TC band is a prior art and will not be particularly described.
  • the master is a master for synchronization and the like, and is not a master relating to a token (transmission right). In this example, there is no master associated with the token (transmission right).
  • the message request number of each station is “3” for station 1, “1” for station 2, “4” for station 3 and “0” for station 4. . That is, the station 4 has not requested message transmission. Then, according to the above priority, allocation is performed from the surplus value in order from the station 1 in order.
  • the station 2 Since the message transmission request is 1, the station 2 transmits one message frame within one unconditionally transmittable range. Since the message transmission request is 4, the station 3 can transmit the remaining one message frame additionally transmittable in addition to one unconditionally transmittable, and a total of two message frames are transmitted. It will be permitted.
  • each node 10 is as shown in, for example, FIG. Note that FIG. 6 shows the operation in the normal state and FIG. 7 shows the operation in the case where an abnormality occurs.
  • TS band common memory transmission band
  • MSG band message transmission band
  • each station When each station needs to transmit a message, it transmits the common memory frame with the number of requests added.
  • TS band common memory transmission band
  • each node 10 starts transmitting the common memory frame of its own station at the same timing, and transmits from other stations
  • the received common memory frame is received, it is relayed to the downstream adjacent station and the data is stored in the corresponding storage area.
  • the number of requests (number of message transmission requests) is added to the common memory frame and transmitted.
  • Each node 10 that has received this common memory frame determines that the node 10 that is the transmission source of the frame has issued a message transmission request based on the addition of the number of requests.
  • station 1 there are message transmission events in station 1, station 2, and station 3, and stations 1, 2, and 3 respectively add the number of message transmission requests to the common memory frame and transmit.
  • the number of requests is “3” for station 1, “1” for station 2, and “4” for station 3.
  • the common memory frame transmitted from each of the nodes 10 is sequentially relayed by another station as shown in FIG. 2B by the process of FIG. 2B, and after returning to the source node 10 after discarding the network, it is discarded Be done.
  • each node 10 When each node 10 receives the common memory frame transmitted by the other station, it relays as described above, acquires the data, and stores it in the common memory. At this time, when the number of message transmission requests is added, these are also acquired and additionally stored in the entry table. In the illustrated example, each node 10 receives the common memory frame transmitted by the station 1, the station 2 and the station 3, acquires the number of message transmission requests added thereto, and sends the ID of the transmission source node, etc. And additionally stored in the entry table (however, in the case of the transmission frame of the own station, it is merely discarded as described above).
  • the number of transmissions of common memory frames is determined in advance for each node 10.
  • the number of transmissions of station 1 “1”
  • the number of transmissions of station 2 “3 ′
  • the number of transmissions of station 3 The number of transmissions of the station 2 is '2' and the number of transmissions is '1'.
  • each node 10 adds the message transmission request number only to the frame to be transmitted first. For example, station 2 transmits three common memory frames as shown, but adds the number of message transmission requests only to the first frame.
  • the number of transmissions of the common memory frame of each node 10 is determined in advance by a developer or the like so that exchange of all common memory frames of all stations is completed in the TS band (common memory transmission band). In addition, exchange of the common memory frame is always performed in a fixed cycle.
  • each node 10 transmits a message only when a message transmission event occurs by some process in the own station. Furthermore, the number of messages to be transmitted is not known in advance, and is determined each time according to the above processing. Therefore, although the adjustment and determination of the message transmission permission number of each station are performed as described above, this determination process is performed independently in each of all the nodes 10 (stations 1 to 4) as described above.
  • the master node does not determine the transmission right as in the conventional case, but there is no master node at least with respect to the transmission right determination, and all the nodes 10 independently determine each other.
  • the transmission permission number is determined, and messages are transmitted for the determined transmission permission number. Therefore, first, the application program for transmission right determination processing of the same algorithm is stored in advance in all the nodes 10. Then, during operation, each node 10 acquires necessary information (the number of message transmission requests from other stations, priority of each station, etc.) each time, and using this acquired data, the application for transmission right determination processing Run the program
  • the determination algorithm is the same for all nodes 10, if the required information is the same for all nodes 10, the same determination result will be obtained for all nodes 10.
  • the priority of each station is determined based on the counter value of a predetermined counter built in each node 10 as in the example described above. Therefore, the same counter value is obtained in advance for all nodes 10 You should set it as follows. For example, in the initial state, all the counter values of all the nodes 10 are set to “1”, and thereafter, for example, it is configured to count up each time the cycle timer 15 times out.
  • the same determination result can be obtained by executing the transmission right determination processing application program in all the nodes 10.
  • the message transmission permission number of each node 10 is “3” for station 1, “1” for station 2, and “2” for station 3; The same result is obtained at node 10 of FIG.
  • the transmission right determination process may be performed, for example, in a vacant area of the TS band (common memory transmission band) (during the exchange of the common memory frame and before the start of the MSG band), as shown in FIG. It may be executed immediately after the start of the MSG band (message transmission band).
  • the transmission right determination process may be performed in parallel with the first message transmission process.
  • the station 1, the station 2, and the station 3 perform the first message transmission of their own station immediately after the start of the MSG band. After that, for example, the message transmission is further performed by an arbitrary allocation from the above-mentioned surplus value. From this, in the case of this example, for example, the station 1 transmits three messages as shown. In this example, the station 4 does not transmit a message because it does not request a message transmission.
  • each node 10 relays transmission messages of other stations after transmitting its own message for the determined number of permitted transmissions.
  • station 1 completes transmitting its three messages, as shown in the figure, then two messages from station 3 and one message from station 2 are sequentially selected as downstream neighbors. Relay to (Station 2).
  • all the transmitted messages can be received by all the nodes 10 in the same manner as the common memory frame, so that all the transmitted messages will reach the destination node 10. Become. Also, as with the common memory frame, there is no need to acquire tokens (acquire transmission), all nodes 10 can transmit messages from the beginning of the MSG band, and transmit messages sequentially without any restriction. Because it can be relayed, efficient message transmission can be performed, and many messages can be delivered to the destination in a short time. In the example of FIG. 6, six messages will be transmitted throughout the system. The message transmission is one-to-one message transmission between two nodes of a source and a destination.
  • the destination node 10 may discard this message without acquiring it after relaying.
  • FIG. 7 a specific example shown in FIG. 7 will be described below.
  • the example of FIG. 6 is an example of the normal case as described above, and in other words, it can be said that the determination of step S61 of FIG. 4 is NO.
  • the example of FIG. 7 is an example of an abnormal case as described above. In other words, it can be said that the determination of step S61 of FIG. 4 is YES. In other words, it can be said that a frame dropout has occurred.
  • FIG. 7 shows an example of a case where a transmission abnormality or the like occurs in part or all of the frames in the common memory transmission band and a frame drop occurs. If all common memory frames from each station are transmitted normally, the same assignment result can be obtained by each station judging by the same transmission right assignment judgment algorithm. However, if some of the message transmission requests are lost and not accepted by some of the stations, the transmission right assignment determination result will be different among the stations.
  • FIG. 7 shows an example in which in the TS band, the transmission frame (with the number of message transmission requests) of the own station transmitted by the station 1 is not received by the adjacent station (station 2) due to some transmission abnormality. (An example of a missing frame). For this reason, in this example, since the stations other than the station 1 do not know the presence / absence of the message transmission request of the station 1 and the number of requests, information necessary for the transmission right determination process is not available.
  • step S61, YES when such a frame dropout occurs (step S61, YES), the number of transmissions of the own station is forcibly determined to be '1' in all the nodes 10. From this, as shown in FIG. 7, in the MSG band, the station 1, the station 2 and the station 3 which have made a message transmission request all transmit only one message uniformly.
  • each node 10 can determine whether all the transmission frames of all the stations including the own station have been received. It can be determined whether or not a dropout has occurred.
  • the station 1 since the common memory frame is eventually returned to the source node 10 if it is normal, in the example of FIG. 7, the station 1 does not return its own transmission frame. It can be determined that a frame dropout has occurred.
  • the present invention is not limited to this example.
  • the transmission source station transmits the common memory frame of the own station, data indicating which frame in the total number of transmissions is added to each common memory frame
  • this data it is possible to determine whether or not a frame drop has occurred.
  • reception frame is not a common memory frame but, for example, a synchronization frame
  • processing (not shown) described below is executed.
  • there is no master station for tokens but there is a master station for synchronization.
  • station 2 is the master station, but this is not for tokens but for synchronization.
  • the master node may transmit a synchronization frame for synchronization of the cycle timer 15 not only at the common memory frame but also at another timing. This is to be sent to any destination node.
  • Each node 10 other than the destination node relays this synchronization frame upon receiving it.
  • the destination node receives this synchronization frame, it sends back a synchronization response frame to the source node (master node) without relaying.
  • the synchronization response frame is passed to the driver 11 to be transmitted to the transmission source node (master node).
  • 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) operates as a master node involved in the above synchronization.
  • the priority determination is performed in the ascending order or the descending order of the station number, the MAC address, etc., and operates as the above-mentioned master node.
  • all nodes 10 other than the master node operate as slave nodes.
  • the master node synchronizes the cycle timers 15 of all slave nodes with the cycle timer 15 of its own node by the synchronization frame or the like. This is described in the prior art documents etc. and will not be described in further detail here.
  • the master node when transmitting the synchronization frame, for example, transmits the synchronization frame to both systems of the line A and the line B by the process of step S12 of FIG.
  • the destination slave node when the destination slave node receives the first-arrived synchronization frame, it sends a synchronization response frame in response to this to both A and B systems.
  • the master node the first-arrived synchronization response frame is passed to the processing unit 14, and as a result, the frame reciprocates between the master node and the destination slave node in the shortest route.
  • the time required for frame reciprocation on this shortest route is measured in the master node, and a half time of this measurement time is calculated as the communication time (communication delay time) between the master node and the destination slave node.
  • a half time of this measurement time is calculated as the communication time (communication delay time) between the master node and the destination slave node.
  • the setting value of the send timer is set to different values in all the stations.
  • the same setting value is set in all the stations (not necessarily completely the same but it may be substantially the same. In other words, somewhat) May be different). This is both of the two types of send timers 16 and 17 described above.
  • the setting value of the send timer 16 in step S35 is determined for each node by, for example, the following calculation formula.
  • Setting value TC band time + (slot unit time ⁇ own slot allocation slot number)
  • the allocation slot number is “'0' and a natural number”. For example, when the number of stations is N, one of 0, 1, 2,. It is assigned.
  • all the send timers 16 are configured to time up at the same timing, and as an example for realizing this, although the same value is set to the send timers 16 of all the nodes 10 after achieving synchronization of the cycle timer 15, the present invention is not limited to this example. Note that “simultaneous” in this case is not limited to completely simultaneous, but may have some deviation.
  • the "same timing” does not have to be completely the same timing, but may have some deviation.
  • the cycle timers 15 of all the nodes are synchronized, but this is realized by the prior art such as the patent documents 1, 2 etc. As such, synchronization is briefly described above and will not be described in further detail.
  • FIG. 6 and 7 show the operation on the line A among the above two lines A and B, but the same operation as the line A is performed in the line B although not particularly shown or described.
  • the present method is not limited to the example described above.
  • the existing technology may be used.
  • the operation of the token method shown in FIG. 16 may be used.
  • all nodes 10 in which a message transmission event has occurred need to notify all other nodes 10 of the number of message transmission requests of its own station.
  • the subsequent processing relating to the MSG band may be the processing of FIG. 3, FIG. 6, and FIG. 7 described above.
  • the TS band (common memory transmission band) is basically the same as the operation according to the existing technology shown in FIG. 16, but the station where the message transmission event has occurred is its own station. Add the number of requests etc. to the common memory frame of and transmit.
  • each node 10 in the MSG band may be the same as that shown in FIG. 6, so it will not be described here. 6, 7 and 8, the rectangles shown indicate transmission / reception data (packets), the upper side indicates reception, and the lower side indicates transmission for each station.
  • the horizontal axis is time.
  • the source station is described in the rectangle.
  • Each station transmits data of its own station at the same time when the send timer 16 is up. For example, the station 4 transmits data of “station 4” in the rectangles shown in FIGS.
  • the transmission data is received by the downstream adjacent station with some delay on the transmission path.
  • the driver 11 when, for example, the station 2 transmits three local station data ("station 2" data) in, for example, the TS band, the driver 11 may, for example, Etc.), the driver 11 stores the above three "station 2" data in the FIFO memory.
  • the transmission dedicated chip sequentially fetches and stores data stored in the FIFO memory.
  • the first "station 2" data is taken out of the three "station 2" data and transmission is started.
  • reception of "station 1" data is started during this transmission processing, and when reception of "station 1" data is completed, this is stored in the FIFO memory.
  • reception of “station 4” data is started, and when reception of “station 4” data is completed, this is stored in the FIFO memory.
  • the transmission dedicated chip sequentially fetches and transmits the data stored in the FIFO memory in the storage order, so in the above example, as shown in FIG. 6, first, the three "station 2" data are sequentially transmitted, and then "station It will transmit 1 "data and then transmit” station 4 "data.
  • the transmission of "station 1" data and "station 4" data is relay (transfer) processing.
  • the transmission destination is the station 3 which is the downstream adjacent station.
  • the station 2 further sequentially receives two pieces of "station 3" data, and relays them after the other station data already received is also relayed. Furthermore, although three own station data ("station 2" data) are also received sequentially, all of them are to be discarded at the above-mentioned step S23.
  • the local station data is discarded upon reception, it is not limited to this example.
  • data of this packet may be acquired but relaying may not be performed (for example, discarded).
  • the transmission source does not need to acquire the data of this packet, but simply discards it as in step S23, so the process of relaying this packet is useless, and the above process is omitted to eliminate this waste. You may do so.
  • the data exchange of all the nodes is completed in a shorter time.
  • the driver 11 shown in FIG. 1B includes a not-shown FIFO memory and a transmission dedicated chip.
  • the FIFO memory and the transmission dedicated chip (IC, etc.) are provided for the line A and the line B, respectively.
  • the transmission dedicated chip for the line A sequentially transmits this on the line A.
  • a data frame will be transmitted on the communication line 12b (that is, to the station 3).
  • the driver 11 main body performs a process of storing the local station data frame or the received data frame in the corresponding FIFO memory.
  • the station 2 transmits its own station data consisting of three data frames to both the line A and line B systems in the process of step S12.
  • the three “station 2” data frames are sequentially stored in the FIFO memory corresponding to the line A.
  • the transmission dedicated chip corresponding to the line A sequentially transmits the three "station 2" data frames onto the communication line 12b.
  • the station 2 sequentially transmits three base station data (“station 2” data) to the station 3.
  • station 2 sequentially receives "station 1" data, "station 4" data, etc. Are sequentially stored in the FIFO memory corresponding to. From this, as shown in the example of FIG. 6, when transmission of three "station 2" data frames is completed, station 2 successively transmits "station 1" data, "station 4" data, etc. .
  • FIG. 9B shows an image of the process of steps S21 and S23
  • FIG. 9A shows an image of the process of steps S24 and S26.
  • each node 10 is described as having the function of the illustrated filter 33. 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. Further, only the station 1 and the station 2 are shown here, but there may be other stations (it may be regarded as omitted). Then, an operation example related to packet reception in the station 1 will be described.
  • the station 2 when the station 2 transmits its own station data, it is passed to the station 1 via the line A and the line B.
  • the station 2 receives the two packets from these two systems as the station 2A line frame 31 and the station 2B line frame 32 shown.
  • the filter 33 takes one of the two data frames 31 and 32 into the local station as the station 2 frame 34 in the figure, with first priority or second priority.
  • station 1 transmits its own station data to both systems of line A and line B, these are relayed by other stations such as station 2 etc., and finally return to station 1 Is assumed to be the station 1A line frame 41 and the station 1B line frame 42 shown.
  • the filter 33 discards both of these two data frames 41 and 42 in step S23.
  • the network topology to which the present method is applied is not limited to the above ring type or line type example.
  • a network topology as shown in FIG. 10 may be used.
  • the communication lines 46 connecting any two nodes 10 are considered to correspond to the communication lines 12a, 12b, 12c, 12d and the communication lines 13a, 13b, 13c, 13d. I don't care.
  • 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 is composed of a plurality of node devices 50.
  • it is a network system in which communication interference does not occur even if the plurality of node devices 50 transmit data simultaneously.
  • the network to which the present method is applied is, for example, a network formed of a plurality of communication lines 61, and each communication line connects between any two node devices 50 in a peer-to-peer relationship.
  • a further example is a full duplex line. That is, it is configured by the uplink communication line and the downlink communication line. That is, even if each node device 50 transmits data simultaneously, it is a network configuration in which a packet collision does not occur.
  • communication between the node devices 50 not directly connected by the communication line 61 is also a network realized by the other node devices 50 performing relay.
  • each node device 50 includes various processing function units such as the data transmission / reception unit 51, the message transmission unit 52, the message reception unit 53, the message transmission permission number determination unit 54, and the timer function unit 55. Have.
  • the data transmission / reception unit 51 transmits data of its own device and receives / relays transmission data of other devices within its first band at predetermined data exchange cycles. If there is a message transmission request of the own apparatus at a predetermined timing in the second band after the first band, the message transmission unit 52 sets the message to an adjacent station every predetermined data exchange cycle. Send to
  • the message reception unit 53 When the message reception unit 53 receives a message from one adjacent station in the second band, the message reception unit 53 relays the message to the other adjacent station, or when the message is addressed to the own apparatus, the message is received.
  • the predetermined timing in the second band is the start time of the second band. It is not necessary to obtain the transmission right as in the prior art, and each node device 50 can immediately transmit a message when the second band is reached.
  • the predetermined timing in the second band is the same in all the node devices 50. The same is not necessarily completely the same, and there may be some deviation. In other words, "identical" includes almost identical cases.
  • predetermined timing in the second band one or more timer functions are used as an example.
  • predetermined timing in the second band is generated using the cycle timer 15, the send timer 16, and the message send timer 17.
  • the node device 50 is described as having these timers 15, 16, 17, it is not limited to this example. Further, each of these timers 15, 16 and 17 may be regarded as a specific example of the timer function unit 55 described later.
  • the predetermined timing in the second band is the same in all the node devices 50.
  • the predetermined timing in the second band is, for example, the start time of the second band.
  • predetermined timing in a first band described later may be generated using the one or more timer functions.
  • the cycle timers 15 of all the node devices 50 need to be synchronized, but the present invention is not limited to this example. Methods to synchronize are prior art, as described above.
  • the cycle timer 15 generates a data exchange cycle (communication cycle).
  • the specific example of the second band is the message transmission band (MSG band), and the specific example of the first band is the comment memory transmission band (TS band).
  • the data transmission / reception unit 51 adds the number of requests to the data of the own device and transmits it, and transmits data of the other device to the data of the other device. If the number of requests is added, the number of requests is stored. Of course, the number of requests of the own device is also stored.
  • the message transmission permission number determination unit 54 determines the message transmission permission number of each node device based on the stored request number and the predetermined value set in advance. Decide.
  • the message transmitting unit 52 transmits a message for the number of permitted message transmissions of the own device.
  • the message transmission permission number determination unit 54 may determine the message of each of the node devices based on the stored request number, the predetermined value set in advance, and the current priority of each of the node devices. Determine the number of transmissions allowed.
  • the predetermined value includes an upper limit value that is the number of messages that can be transmitted in the entire second band within the second band. Then, based on the stored request number and the upper limit value, the message transmission permission number determination unit 54 allows the message transmission permission so that the sum of the message transmission permission numbers by all node devices does not exceed the upper limit value. Determine the number.
  • the message transmission allowance number determination unit 54 makes the sum of the message transmission allowance numbers of all the node devices not exceed the upper limit value based on the stored request number and the upper limit value.
  • the above-mentioned number of permitted message transmissions is determined by prioritizing allocation to the higher node devices.
  • the message transmission allowance number determination unit 54 assigns the basic value of the message transmission allowance number to all the node devices, and subtracts the sum of the basic values from the upper limit value to obtain the priority value as the priority. By distributing to each node device according to the order, all node devices can transmit one or more messages, and the number of message transmission permission of each node device is determined.
  • the message transmission allowance number determination unit 54 uses the same algorithm in all the node devices. Thus, as described above, if the data used for the process is the same, the same process result (the number of message transmission permission of each node device) is obtained.
  • the stored number of requests includes the number of requests of the own device.
  • the number of permitted message transmissions of each node device is determined including the number of requests from the own device. Note that according to this configuration, even if the node devices 50 transmit the messages at the same timing, the collision of the messages does not occur.
  • the respective node devices 50 are connected one-to-one with the one adjacent station of the own device by the first communication line and one-to-one with the other adjacent station of the own device by the second communication line
  • the message reception unit receives a message from the one adjacent station via the first communication line, and sends a message to the other adjacent station via the second communication line.
  • the communication line 61 shown in FIG. 11 corresponds to the first communication line and the second communication line. Also, for example, when the data transmitting / receiving unit 51 transmits the data of the own device to the adjacent station at a predetermined timing in the first band and receives the transmission data from the one adjacent station. And acquiring the transmission data and relaying to the other adjacent station.
  • the predetermined timing in the first band is the start time of the first band.
  • the predetermined timing in the first band is the same in all the node devices 50.
  • each node device 50 has a timer function unit 55 (having one or more timers), and uses the timer function unit 55 to generate a predetermined timing in the second band.
  • the timer function unit 55 is used to generate a predetermined timing in the first band.
  • transmission data of all the node devices 50 are received by all the other node devices 50 by repeating the relaying, respectively, within the first band within the data exchange cycle. Then, mutual data exchange between all the node devices 50 is completed.
  • the message transmitted by the message transmission unit 52 of each of the node devices 50 is repeatedly transmitted to all other nodes. By being received by the device 50, all messages are received by the node device 50 of the destination.
  • control network system includes a plurality of the node devices 50 and a plurality of communication lines 61, and each communication line 61 connects between any two node devices 50. Then, each node device 50 can communicate with the adjacent station, which is another node device 50 connected by the communication line 61. Communication between the node devices 50 not connected by the communication line is realized by relaying by one or more other node devices 50.
  • reception and acquisition mean, for example, reception and acquisition, but are not limited to this example.
  • "/" Means "or” or "or”.
  • the communication line 61 is, for example, a full duplex line. Also, 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 the respective node devices are connected by full-duplex communication lines in a ring type or line type topology. Then, for example, the data transmitting and receiving unit 51 and the message transmitting unit 52 transmit data of the own device to both systems of the full duplex.
  • each node device 50 discards the received data without relaying.
  • each node device 50 discards the received data without relaying.
  • the transmission data of all the node devices 50 are received by all the other node devices 50 by repeating the relaying within the data exchange period, so that data exchange between all the node devices is performed. Is complete.
  • the node device 50 includes a storage unit such as an arithmetic processor such as a CPU / MPU (not shown) and a memory.
  • a storage unit such as an arithmetic processor such as a CPU / MPU (not shown) and a memory.
  • a predetermined application program is stored in advance in the storage unit.
  • the arithmetic processor executes this application program, the processing of the flowcharts shown in FIGS. 2 (a), (b), FIG. 3, FIG. 4, and FIG. To be realized.
  • 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 of FIG. 12 may be regarded as a configuration in which the communication line 12 d and the communication line 13 d do not exist in FIG. In such a line-type configuration, the transmission data of each node 10 does not return to its own station, and relaying is terminated when it reaches nodes 10 (station 1 and station 4 in this example) at both ends. Become.
  • all nodes 10 forming the network simultaneously transmit their own station data using the timer synchronized with the timer of the master node according to the node synchronization method of Patent Document 2 and the like. Perform on adjacent nodes on both sides. After the transmission of the own station data is completed, all the nodes 10 respectively relay frame data received from one adjacent node of the own node to the other adjacent node.
  • This frame data is a message frame and a common memory frame.
  • both the message frame and the common memory frame can transmit a frame in the corresponding band (MSG band, TS band) without having to obtain a transmission right.
  • transmission can be started simultaneously (from the start of the band). After the frame data transmission of the own station, the received transmission data from the other station is relayed.
  • the transmission bandwidth of full-duplex circuit between constituent nodes is simultaneously used to improve transmission efficiency, and it is possible to realize increase in transmission amount of the entire network and speeding up of data exchange cycle.
  • the amount of data on the network can be increased, and speeding up of the data exchange cycle can be realized.
  • the message is not always sent, but is sent when a request to send a message occurs.
  • the node adds the number of requests to the common memory frame and transmits it.
  • all the nodes can recognize the number of all requests by common memory frame exchange processing between all the nodes in the TS band. From this, each node determines the number of permitted message transmissions of each station by the same determination algorithm based on the number of requests from the own station and each other station. If there is no abnormality, all nodes should get the same decision result.
  • each station transmits its own message frame in the MSG band based on the number of permitted transmissions of the own station.
  • the present method is not limited to the above-described embodiment.
  • the application target is not limited to the above-mentioned "network system of full duplex line in ring topology or line topology".
  • the topology is not limited to the ring type or the line type.
  • the present invention is not limited to the full duplex line, and may be a multiplex line (such as a quadruple line) or one line.
  • the cycle timer 15 of all the nodes are synchronized as a result by adjusting the cycle timer 15 to the time by its own radio clock for each node 10.
  • each node 10 is basically substantially the same as the processing of FIGS. 2 (a) and 2 (b) and FIGS. 3, 4 and 5 described above. Similar but with some differences. That is, first, the process of step S12 is a process of transmitting data only to the line A. In addition, as for the reception process, the process of steps S24 and S26 is deleted because the reception of two packets from both systems is lost.
  • one or more messages can be transmitted and received in a shorter time than in the prior art. A remarkable effect is obtained especially in the situation where multiple (multiple) messages are to be sent throughout the system.
  • the transmission efficiency is improved, and it is possible to realize a large capacity transmission amount of the entire network.
  • This makes it possible to realize a large-capacity transmission while ensuring that message transmission / reception is always completed within the determined MSG band.
  • the transmission efficiency is improved while the message transmission / reception is always completed within the determined MSG band without any problem, and the transmission amount of the entire network Enables realization of a large capacity of
  • the present invention is not limited to the ring type shown in FIG. 1 or the line type shown in FIG.
  • a bus type configuration may be used.
  • a bus network may be further configured in the configuration of FIG. 1 to exchange common memory data in the TS band via this bus.
  • the configuration and operation of each node 10 for this communication may be similar to, for example, Patent Documents 1 and 2. For example, the transmission operation of FIG. 14 described above may be performed.

Landscapes

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

Abstract

データ送受信部51は、所定のデータ交換周期毎に、その第1の帯域内において、自装置のデータを送信すると共に、他装置の送信データを受信/中継する。メッセージ送信部52は、前記所定のデータ交換周期毎に、前記第1の帯域より後の第2の帯域内の所定のタイミングにおいて、自装置のメッセージ送信要求がある場合には該メッセージを隣接局へ送信する。メッセージ受信部53は、前記第2の帯域内において、一方の隣接局からメッセージを受信した場合、該メッセージを他方の隣接局へ中継し、または該メッセージが自装置宛である場合には該メッセージを取得する。

Description

制御ネットワークシステム、そのノード装置
 本発明は、複数のノード装置が通信線で接続され、所定の周期毎にデータ交換を行う制御用ネットワークシステムに関する。
 制御用ネットワークシステム(プラント制御用伝送システム等)においては、システムを構成する各機器(ノード)が、相互に大容量データ交換を、リアルタイム性を保証したうえで行う必要がある。リアルタイム性を保証するとは、例えば、定周期の各期間内に、データ交換が必要な全ての機器間のデータ交換を完了することを意味する。各機器は、例えば定周期で、その時点の当該機器の状態等を示すデータを収集して、これを他の全機器へ渡す必要がある。
 各機器(ノード)に搭載されるアプリケーションによるアクセス要求の発生に応じてイベント的に相互アクセスを行うような伝送方式を採用していると、ネットワーク負荷がアプリケーションに依存してしまい、リアルタイム性を保証することができない。そこで、各機器に仮想的な共有メモリ(コモンメモリ)を設けて、各機器が通信サイクル(スキャン時間)毎に、時分割多重方式で(相互に異なるタイミングで)ネットワーク上の全ノードへ自ノードデータの送信を行うようにする伝送方式によって、リアルタイム性を保証したデータ交換方式を実現している。上記データ交換を実現する為のネットワーク上での効率的な同報通信(ブロードキャスト通信)手法については、既に様々な手法が提案されているが、ここではその一例として特許文献1の発明がある。
 特許文献1の発明は、各ノードの内蔵タイマによる時分割多重アクセス方式と、マスタノードからの同期化フレームによるスレーブノードの内蔵タイマ補正とを併用することで、各ノードからの送信タイミング重複を防ぎつつ効率の高い伝送を実現している。
 あるいは、例えば、特許文献2にも、特許文献1と略同様の従来技術が、開示されている。
 図14に、上記特許文献1、2等の従来手法によるデータ交換の具体例を示す。
 この従来手法では、各局(ノード)は、サイクルタイマとセンドタイマの2種類のタイマを備える。サイクルタイマは、データ交換周期(スキャン時間)を生成する為のタイマであり、全ての局で同一の時間が設定されている。従来手法では、同期フレームによって全ての局のサイクルタイマの同期化を図るが、これについては特に説明しない。
 センドタイマは、各局のデータ送信タイミングを生成する為のタイマであり、全ての局で相互に異なる値が設定される。センドタイマは、サイクルタイマのタイマアップ時に起動され、上記設定値に応じたタイミングでタイマアップするので、全ての局で相互に異なるタイミングでタイマアップすることになる。これより、例えば図14に示すように、全ての局のデータ送信タイミングが、相互に異なることになる。
 上記サイクルタイマによって、図示のように、データ交換周期(通信サイクル)であるスキャン時間101が生成される。スキャン時間101は、時刻合わせに使用する図示のTC帯域102及びデータ交換に使用する図示のTS帯域103で構成される。尚、TC帯域、TS帯域については、例えば特許文献2に記載の通りであり、ここでは特に説明しない。
 尚、図示の符号105,108が各局に割り当てられる送信タイムスロット、符号107,110が各局から送信されるフレームデータの一例を意味するが、これらについては特に説明しない。
 また、プラント制御用伝送システムにおいては、上記通信サイクル(例えばスキャン時間101等)を、リアルタイム性を保証したデータ通信を行う帯域(上記TS帯域など)と、イベント的に一方向アクセスを行うデータ通信(メッセージ通信など)を行う帯域(後述するMSG帯域など)と、上記TC帯域等に分けている場合がある。
 イベント的に一方向アクセスを行うデータ通信は、ネットワークに参加している局の単位時間当たりのメッセージ送信要求数に“ばらつき”があり、それらの同一単位時間当たりの合計が、伝送可能なメッセージ送信数を上回ることがあるため、単位時間当たりの送信可能数に上限を設け、その範囲内で通信を行う必要がある。そこで、ある単位時間内で送信できる局数を管理し、割り当てられた局がデータ通信を行うことで、単位時間当たりの送信可能数上限内でのデータ通信を実現している。
 上記データ通信を実現するためのメッセージ通信手法についてはすでにさまざまな手法が提案されているが、ここでは一例としてトークン方式がある。トークン方式では、マスタ局が、他の各局(スレーブ局)からのメッセージ送信要求を受け付け、送信要求を通知した局の中から一部の局に対して、トークンにて送信権を付与する。送信権を付与された局のみがメッセージ通信を行うことができ、送信権を付与された局はメッセージフレームをネットワーク回線上に送信する。単位時間当たりの送信可能数上限内で送信権を付与することで、単位時間当たりの送信可能数を超えずに、イベント的に一方向アクセスを行うデータ通信(メッセージ通信など)を実現している。
特開2005-159754号公報 国際公開番号2013/121568号
 例えば100BASE-TXや1000BASE-TなどのEthernetを伝送路とした全二重回線等であって、且つ、トポロジとしてリング型またはライン型を採用した場合、各局(ノード)は、隣接局以外の局と通信する為には、自局と通信相手局との間にある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となり、また局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’→等のように、リリースの度に更新されるものとする。
 これより、その後、局2、局3、局4も、トークンを獲得して送信権を得ると、自局のデータを送信することになり、データは他の局によって順次中継されて自局に戻ってくる。
 このようにして、全ての局1,2,3,4が、自局のデータを送信することになり、他局全てがそのデータを受信・取得することになる。つまり、全ての局が、自局のデータを他の全ての局に渡したことになる。
 尚、上記特許文献1,2の従来技術を用いれば、トークンを用いることなく、図16の動作例と略同様の動作を行うこともできる。つまり、図16の動作では、結果的に、各ノードは、TS帯域内で相互に異なるタイミングで、自局のデータを送信している。上記特許文献1,2の従来技術は、この様な動作を、トークンを用いることなく、相互に異なる設定が行われたセンドタイマを用いて、実現することができる。例えば、データが回線を1周するのに掛かる時間を、予め実測する等して、この時間分の間隔で各ノードが自局のデータを送信するように、各局のセンドタイマを設定すればよい。
 一方、メッセージ帯域におけるメッセージ送信は、定周期で常に行われるわけではなく、送信すべきメッセージが無い場合もあれば、送信すべきメッセージが複数(多数)あることもある。自局のメッセージ送信イベントが発生した局は、上記TS帯域における自局の送信パケットに、メッセージ送信要求を含める。また、複数の局の中から、予め、メッセージ送信調停を行う局(マスタ局とする)を決めておく。
 上記TS帯域において任意の局からのメッセージ送信要求を受けたマスタ局は、許可するか否かを判定する。ここで、仮に、局3がマスタ局であり、任意のスキャン時間101のTS帯域中に局1と局4からメッセージ送信要求があったものとし、局3は局1を許可したものとする。この例の場合、図15の構成では、MSG帯域中のメッセージ送受信動作は、例えば図17に示すようになる。
 尚、図17の例では、1つの通信サイクル(スキャン時間)が、上記TC帯域、TS帯域と、メッセージ帯域(MSG帯域)とに分けられており、ここではMSG帯域について説明する為、TC帯域、TS帯域の動作については省略している。この様に図示しないが、TS帯域の動作は例えば上記図16の動作であり、且つ、必要に応じて上記メッセージ送信要求が、上記図16に示す送受信データフレーム(パケット)に付加されて送信されているものとする。これによって、MSG帯域開始前には、マスタ局は、メッセージ送信要求があった局を認識できており、且つ、その中からメッセージ送信を許可する局(許可局)を決定しているものとする。尚、この決定方法は様々であってよく、ここでは特に説明しない。図17の例では、許可局は、局1に決定されたものとする。また、図17の例ではマスタ局は局3であるものとする。
 更に、尚、図17ではTC帯域の動作についても省略して示すと共に、都合により、TC帯域の欄に各局を示す情報(局番やマスタ/スレーブ)を示している。尚、TC帯域の動作は、従来技術であり、特に説明しない。
 図17に示すように、MSG帯域において、まず最初にマスタ局(局3)が許可局(局1)宛に許可通知(TOKEN)を出す。この許可通知は、図16と略同様にして、各局において自局の下流の隣接局へ中継されて、図示のように局3→局2→局4→局1と順次中継されて局1に届く。局1では、この許可通知を自局の下流の隣接局(局3)へ中継すると共に、許可されたことから、自局のメッセージ(図示の“局1MSG”)を送信する。このメッセージも、各局において自局の下流の隣接局へ中継されて、図示のように局1→局3→局2→局4と順次中継されて局4に届く(ここでは仮に宛先は局4とする)。
 尚、図2では局4が更にこのメッセージを局1に中継しているが、これは必ずしも必要ない。
 MSG帯域(メッセージ伝送帯域)の長さは予め決まっており、またスキャン時間101の一部であることや、メッセージが1通もない場合もあることから、あまり長くすることはできない。この為、上記の例では、未だ、他のメッセージ送信要求局のメッセージ送信が残っているかもしれないが、これは次の通信サイクルで送信されることになるかも知れない。
 このように、1つのメッセージを送受信完了するまでに時間が掛かるので、例えばシステム全体で多数のメッセージ送信イベントがある場合、全てが送信完了するまでに非常に時間が掛かることになる。例えば、あるとき、局1で3通、局2で4通、局4で2通のメッセージ送信イベントが生じていた場合、仮に1通信サイクル当たり1通しか送信できないとした場合には、全てのメッセージの送受信完了するまでに「1通信サイクルの時間×9」の時間が掛かることになり、非常に時間が掛かることになる。
 あるいは、許可された局が多くのメッセージを送信する必要がある場合、これらメッセージの送受信完了まで他の局はメッセージ送信できないことになる。
 本発明の課題は、ネットワークに接続される全ノード装置が相互にデータ交換すると共に任意のメッセージ送受信も行う制御ネットワークシステムにおいて、メッセージ送受信の伝送効率を高めることができる制御ネットワークシステム、そのノード装置等を提供することである。
 本発明の制御ネットワークシステムは、複数のノード装置が相互にデータ交換する制御ネットワークシステムにおいて、前記各ノード装置は、下記の各手段を有する。
 ・所定のデータ交換周期毎に、その第1の帯域内において、自装置のデータを送信すると共に、他装置の送信データを受信するデータ送受信手段;
 ・前記所定のデータ交換周期毎に、前記第1の帯域より後の第2の帯域内の所定のタイミングにおいて、自装置のメッセージ送信要求がある場合には該メッセージを隣接局へ送信するメッセージ送信手段;
 ・前記第2の帯域内において、一方の隣接局からメッセージを受信した場合、該メッセージを他方の隣接局へ中継し、または該メッセージが自装置宛である場合には該メッセージを取得するメッセージ受信手段。
 本発明の制御ネットワークシステム、そのノード装置等によれば、ネットワークに接続される全ノード装置が相互にデータ交換すると共に任意のメッセージ送受信も行う制御ネットワークシステムにおいて、メッセージ送受信の伝送効率を高めることができる。
(a)、(b)は、本例の制御ネットワークシステムの全体構成図である。 (a)、(b)は、本例のノードのドライバの処理を示すフローチャート図である。 本例のノードの処理部の処理を示すフローチャート図である。 ステップS44の処理の詳細例である。 ステップS63の処理の一例である。 本例の各ノードのフレーム送受信動作例(その1)である。 本例の各ノードのフレーム送受信動作例(その2)である。 本例の各ノードのフレーム送受信動作例(その3)である。 (a)はステップS24,S26の処理のイメージ、(b)はステップS21,S23の処理のイメージを示す。 本例のネットワークトポロジの他の例である。 本例の制御ネットワークシステムの機能ブロック図である。 ライン型の全二重回線の例を示す図である。 1回線の場合の構成例である。 特許文献1、2等の従来手法によるデータ交換の具体例を示す。 リング型トポロジの全二重回線による制御用ネットワークシステムの具体例である。 図15のシステムにおける従来の通信方式による制御用ネットワークシステムの動作の一例を示す。 従来のメッセージ送信動作の一例を示す図である。
 以下、図面を参照して、本発明の実施の形態について説明する。
 図1(a)、(b)は、本例の制御ネットワークシステムの全体構成図である。
 尚、本例の制御ネットワークシステムは、例えば上述した100BASE-TXや1000BASE-TなどのEthernetを伝送路とした全二重回線等であって、且つ、トポロジとしてリング型またはライン型を採用したシステム構成である。
 この様なシステム構成では、各局(ノード)は、隣接局以外の局と通信する為には、自局と通信相手局との間にある1以上の局によって中継することを前提とした伝送を行う構成となる。つまり、この構成の場合、各局が直接的に通信可能となるのは、隣接局のみとなる。あるノードは、隣接局から送信されたフレームデータが、自局宛ではない場合、これを別の隣接局へ中継する。この中継が繰り返されることで、最終的に、フレームデータは宛先局に到達することになる。尚、上記隣接局とは、自局と直接、通信線によって接続された他局である。また、図1に示す一例は、全二重回線であるので、通信線は、上りと下りの2つが設けられる。つまり、自局から隣接局へのデータ送信用の通信線と、隣接局から送られるデータの受信用の通信線とが、設けられる。
 尚、図1には、全二重回線等であり且つトポロジとしてリング型であるネットワークシステムを例にしているが、本例の制御ネットワークシステムの構成は、この例に限らない。例えば、リング型ではなく、ライン型であってもよいし、後に図示する他の型であってもよい。また、全二重回線に限るものでもなく、例えばその2倍の回線数(全四重回線と呼ぶ)等であっても構わないし、1回線であっても構わない。また、図1には、構成ノードが4つである例を示すが、勿論、この例に限らない。
 また、本例の制御ネットワークシステムは、一例としては、システムを構成する各機器(ノード)が、上記TS帯域において相互にデータ交換を行う必要があり、これをリアルタイム性を保証したうえで行う必要がある。その為、一例としては、例えば上記サイクルタイマで規定されるデータ交換周期の時間内に(1通信サイクル内のTS帯域内に)全ノード間のデータ交換を完了させる必要がある。つまり、一例としては、各通信サイクル毎にそのTS帯域内に、全ノードが、自ノードのデータを、他の全てのノードに渡す必要がある。換言すれば、一例としては、上記のように、システムを構成する各機器(局;ノード)が相互にデータ交換を、リアルタイム性を保証したうえで行う必要がある。但し、本発明は、上記一例に限定されるものではない。
 一方で、上記メッセージ伝送帯域(MSG帯域)におけるメッセージ送受信は、1回の通信サイクル内のMSG帯域内に、その時点で発生したメッセージ全てを送受信しなければならないわけではない。しかしながら、伝送効率を高めて、1回の通信サイクルで出来るだけ多くのメッセージを送受信出来るようになることが望ましい。その一方で、上記の通り、MSG帯域の長さは予め決められているので、メッセージ送受信処理が完了する前にMSG帯域が終了するという事態が起こることは、避けなければならない。
 本手法は、基本的には、上記メッセージ伝送帯域(MSG帯域)におけるメッセージ送受信の伝送効率を高めるものであるが、これに加えて更に、上記TS帯域におけるデータ交換の伝送効率を高めるようにしてもよい。
 以下にまず示す具体例では、MSG帯域とTS帯域の両方について伝送効率を高める例を示すが、この例に限らず、後に説明するように、TS帯域については従来と同様であり、MSG帯域についてのみ伝送効率を高める形態であってもよい。
 図1(a)に示す例の制御ネットワークシステムは、上記図15と同様に、図示の4台のノード10(局1、局2、局3、局4)が、全二重の通信回線12,13によって接続されており、ネットワーク全体で右回り(時計回り)の通信経路を回線A、左回り(反時計回り)の通信経路を回線Bとする。但し、図15に比べて、局2と局3の配置が変わっている。
 図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が相互に同時にパケット送信しても、使用する通信線が異なるので、パケット衝突が起こることはない。これは他の局間の通信についても同様であり、ネットワークシステム全体として、全局が同時にパケット送信しても、各々がパケット送信に使用する通信線が異なるので、パケット衝突が起こることはない。
 尚、このパケットは、TS帯域におけるデータ(コモンメモリフレーム)のパケット、MSG帯域におけるメッセージのパケットのどちらであってもよい。本例では、TS帯域、MSG帯域のどちらにおいても、各局が同じタイミングでパケット送信してもパケット衝突が起こることはない。尚、TC帯域については、基本的には、その説明は省略する。
 また、各ノード10は、上記ドライバ11以外に、処理部14、サイクルタイマ15、センドタイマ16、メッセージ用センドタイマ17等も有している。サイクルタイマ15、上記特許文献1,2で説明されており、ここでの説明は省略する。
 センドタイマ16は、TS帯域における自局のデータ送信タイミングを決定するものであり、その意味では上記特許文献1,2と同様である。しかし、特許文献1,2では各局で相互に異なる設定となっており、それ故に、TS帯域における各局のデータ送信タイミングは、図14で説明したように相互に異なるものとなっていた。これに対して、センドタイマ16は、例えば全ての局(ノード10)で同じ設定となっており、これよりTS帯域における全ての局が同一のタイミングで自局のデータ(コモンメモリフレーム)を送信開始する。後述する図6、図7等の例では、全てのノード10において、そのセンドタイマ16のタイムアウトが、TS帯域の開始タイミングとなるように、設定されている。
 尚、上記のことから、センドタイマ16は、コメンメモリ用センドタイマであると言える。
 メッセージ用センドタイマ17は、各ノード10において、MSG帯域における自局のデータ送信タイミングを決定するものである。尚、従来の不図示のメッセージ用センドタイマは、そのタイムアウトが、MSG帯域の開始を示すものであり、マスタ局が備えていれば良く、そのタイムアウトによりマスタ局からトークンが送信されるものであった。
 メッセージ用センドタイマ17も、全てのノード10で同一タイミングでタイムアウトするように設定されている。後述する図6、図7等の例では、全てのノード10において、そのメッセージ用センドタイマ17のタイムアウトが、MSG帯域の開始タイミングとなるように、設定されている。例えば、全てのノード10のメッセージ用センドタイマ17に同一の設定値が設定されており、且つ、センドタイマ16のタイムアウトのときに起動するようにしている。この他に、メッセージ用センドタイマ17をサイクルタイマ15のタイムアウトの時に同一の設定値で起動するようにしても良く、センドタイマ16をメッセージ用としてMSG帯域の開始タイミングとなるように再起動するようにしても良い。
 そして、各ノード10は、自局に送信すべきメッセージがある場合には、メッセージ用センドタイマ17のタイムアウトのタイミングで、自局のメッセージを1通送信する。その後、図3の処理結果より、自局が複数のメッセージ送信を許可されている場合には、続いて、2通目以降も送信する。後述する図6の例では、例えば局1は、自局のメッセージを3通送信している。上記自局のメッセージを許可数だけ送信したら(図2(a)により送信)、その後は、図2(b)の処理により、他局からの送信メッセージを中継する。
 処理部14は、ノード10のメインの処理を実行するものであり、例えば不図示の制御対象機器の制御、その状態を示すデータ等の収集、サイクルタイマ15、センドタイマ16、メッセージ用センドタイマ17等の設定・起動の管理、送信データフレーム(パケット)の生成など、様々な処理を行う。
 ドライバ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のドライバ11の処理を示すフローチャート図である。尚、ドライバ11内蔵の不図示の演算プロセッサが、内蔵の不図示のメモリに予め記憶されているアプリケーションプログラムを実行することで、図2(a)、(b)の処理が実現される。
 図2(a)は、自局データ送信の際のドライバ11の処理を示す。
 ノード10が有する上記処理部14(CPU/MPU等)は、所定のソフトウェア(プログラム)等を実行することで、所定の制御処理等を実行している。この処理の一例を図3に示し後に説明する。そして、この処理の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の処理では、例えば、受信パケットと、既に受信済みのパケットとが、送信元ノードが同一で且つフレーム番号が同一である場合に、両者が同一であるものと判定する。但し、これは一例であり、この例に限らない。尚、言うまでも無く、各パケットには、送信元ノードを示す識別ID等が付加されている。
 一方、受信パケットが、上記2つのパケットのうちのどちらか一方を先に受信したものである場合には(ステップS24,NO)、この受信パケットのデータを処理部14に渡す(ステップS25)。処理部14は、このデータを用いて何等かの処理を行うことになる。例えば、受信パケットがコモンメモリフレームであった場合には、後述する図3のステップS48がYESの場合の処理を実行することになる。
 尚、上述した図2(a)、(b)の処理におけるパケットは、上記TS帯域で送受信するデータパケット(コモンメモリフレーム)、上記MSG帯域で送受信するメッセージのパケットのどちらであってもよい。
 尚、図2(b)の例に限らず、例えば、受信パケットの送信元が他局であり、且つ、最初のパケットを受信した場合に、このパケットの中継処理を行うようにしてもよい。換言すれば、受信パケットの送信元が他局であっても、既に受信済みのパケットと同じパケットを受信した場合には、このパケットの中継は行わないようにしてもよい。尚、図2(b)の処理では、この様なケースであっても、パケットの中継を行う。
 尚、言うまでもないが、各パケット(データフレーム)には、送信元ノードの識別番号(局IDなど)が付与されている。また、例えば、各ノード10は、予め、ネットワーク構成情報を記憶している。ネットワーク構成情報は、各ノード10毎に、自ノードの上流側と下流側の隣接局の上記局ID等の情報が含まれている。ネットワーク構成情報は、例えば開発者等が予め任意に作成して、各ノード10に記憶させるが、この例に限らない。
 また、図2(b)の例の場合、自局がステップS12で送信したフレームが、リング型ネットワークを一周して戻ってきたら、破棄するものであった。しかし、この例に限らず、自局の1つ手前の他局で破棄させるようにしてもよい。
 以上、図2や他の処理を纏めると、例えば下記のようになる。
 ・パケットは、リング型ネットワークの各ノード10を一巡したら、すなわち他の全ノード10が受信したら、破棄する。破棄を行うのは、パケット送信元のノード10であってもよいし、その1つ手前のノード10(送信元ノードにパケットを中継するノード10)であっても構わない。
 ・送信元ノードは、上記パケットを、回線A、回線Bの両系に送信する。他の各ノード10は、異常が無ければ両系からパケットを受信する。他の各ノード10のドライバ11は、最初に受信したパケットは処理部14に渡すが(実質的に受け取るが)、2番目に受信したパケットは処理部14に渡さない(実質的に受け取らない)。
 ・上記他の各ノードは、上記2番目に受信したパケットは、中継してもよいし、中継しなくてもよい。
 ・上記パケットは、コモンメモリフレーム、または/及び、メッセージフレームである。
 図3は、ノード10の処理部14の処理を示すフローチャート図である。
 メッセージ送信に関しては、従来ではマスタ局で送信権割り当て局判定を行っていたが、本例では全ノード10でそれぞれ図3の処理を行うことで各々で送信権(送信許可数)割当て判定を行う。この判定に伴って自局のメッセージ送信可否と割当数が判定される。このように、本例では、トークンフレームによる送信権の付与を行わず、各局が能動的にメッセージ送信可否や割当数などを判断する。そして、自局がメッセージ送信可能である場合には、メッセージ伝送帯域になったらトークンを待つことなく自局のメッセージを送信する。
 図3の処理は、随時実行されるものであり、基本的には何等かのイベント待ち状態であり(ステップS31)、何等かのイベントが発生する毎に(ステップS32,YES)、発生したイベントの内容を判定して(ステップS33)それに応じた処理を実行する。
 すなわち、発生したイベントが、サイクルタイマ15のタイムアウト(サイクルT.O.)である場合には(ステップS34,YES)、ステップS35~S38の処理を実行する。
 つまり、基本的には、センドタイマ16に所定の設定値をセットして(ステップS35)センドタイマ16を起動する(ステップS38)が、この起動前に、自局のメッセージ送信要求の有無を確認して、ある場合には(ステップS36,YES)、メッセージ送信要求数(単に要求数という場合もあるものとする)をセット&エントリーする(ステップS37)。尚、セットとはコモンメモリフレーム中に格納することであり、エントリーするとは不図示の“送信権管理を行うためのエントリーテーブル”(以下、エントリーテーブルと記す)に記憶することである。
 これによって後述するステップS40の処理によって上記要求数が付加されたコモンメモリフレームが送信されると、上述した各ノード10による中継処理によって、全てのノード10にコモンメモリフレームが渡されることで、全てのノード10にメッセージ送信要求数が渡されることになる。渡されたメッセージ送信要求数は、各ノード10の上記“エントリーテーブル”に記憶される。そして、各ノード10毎に、それぞれ、自局の上記“エントリーテーブル”に記憶された各局のメッセージ送信要求数に基づいて、後述するステップS44の処理を実行することになる。
 ここで、上述したことから、本例では、上記ステップS35でセンドタイマ16にセットする設定値は、全てのノード10で同じ値とする。尚、従来では、図14のように、全てのノードで相互に異なる設定値が、不図示のセンドタイマにセットされていた。
 上記特許文献1,2の従来技術により全てのノード10で同一タイミングでサイクルタイマ15がタイムアウトとする状態とすることによって、全てのノード10で同一タイミングでセンドタイマ16がタイムアウトすることになる。これより、例えば後述する図6のように、全てのノード10で同一タイミングでコモンメモリフレームを送信開始することになる。
 また、発生したイベントが、センドタイマ16のタイムアウト(センドT.O.)である場合には(ステップS39,YES)、自局のデータ(コモンメモリフレーム)を送信させる(ステップS40)。これは、上記自局のデータ(場合によってはメッセージ送信要求が付加されている)を、ドライバ11に渡すものである。これより、上記の通り、ドライバ11は、上記ステップS11のデータ&送信要求を受けることになり、上記ステップS12によりこのデータを上記回線A、回線Bの両系に送信することになる。
 更に、メッセージ用センドタイマ17に所定の設定値をセットして(ステップS41)起動する(ステップS42)。尚、この起動後、メッセージ用センドタイマ17がタイムアウトするイベントが発生したときに、後述するステップS43の判定がYESとなることになる。尚、上記設定値は、例えば、全てのノード10において同一値とする。これより、後述する図6の例のように、全てのノード10で同一タイミングでMSG帯域となり、送信すべきメッセージがあるノード10は直ちに1通目のメッセージを送信する。本例では、最低1通はメッセージ送信許可されるからである。
 尚、基本的には、上記ステップS38で起動したセンドタイマ16が、タイマアップするイベントが発生したときに、上記ステップS39がYESとなることになる。
 また、発生したイベントが、メッセージ用センドタイマ17のタイムアウト(センドT.O.)である場合には(ステップS43,YES)、ステップS44~S47の処理を実行する。
 すなわち、まず、コモンメモリフレーム抜け判定と、メッセージ送信許可局判定を行う(ステップS44)。この処理は、各ノード10のメッセージ送信許可数を決定する処理でもあり、それによって自局のメッセージ送信可否とメッセージ送信許可数が決定される。尚、本例では、基本的に、全てのメッセージ要求ノードが少なくとも1つのメッセージの送信が許可されるようにしているが、この例に限らない。
 そして、上記ステップS44の判定結果に応じて(ステップS45)、自局のメッセージ送信要求があり且つ送信が許可された場合には(ステップS46,YES)、自局のメッセージ送信許可数の分だけ、メッセージフレームを送信する(ステップS47)。
 一方、そもそも自局のメッセージ送信要求がない場合あるいはメッセージ送信が許可されなかった場合などには(ステップS46,NO)、メッセージ送信は行われない。尚、上記の通り、本例では、必ず最低1通はメッセージ送信できるので、メッセージ許可されないことはないが、この例に限らないので、メッセージ送信が許可されないケースも含まれるものとする。
 また、発生したイベントが、コモンメモリフレーム受信である場合には(ステップS48,YES)、このコモンメモリフレームのデータを、不図示のコモンメモリの該当領域に格納する(ステップS49)。尚、ここでは、上記ステップS40の処理で送信されるフレームを、コモンメモリフレームと呼ぶものとする。上記図2(b)等の処理により、任意の他局が上記ステップS40の処理により送信したコモンメモリフレームをドライバ11が受信し、これをドライバ11が上記ステップS25により処理部14に渡すと、上記ステップS48の判定がYESとなることになる。
 また、受信したコモンメモリフレーム中にその送信元ノード10で上記ステップS37により格納されたメッセージ送信要求数が含まれている場合には、メッセージ送信要求があったものと見做して当該要求数を送信元ノード10のIDなどと共に上記“エントリーテーブル”に追加記憶しておく(ステップS50)。このエントリーテーブル”は、後に上記ステップS44の処理で参照される(一例を図4に示す)。尚、各フレームには、当然、送信元ノードのID(識別情報)等が含まれている。
 尚、特に図示していないが、メッセージフレームを受信した場合、ドライバ11が受信したメッセージを処理部14に渡し、処理部14は、当該メッセージフレームの宛先が自局である場合には当該メッセージフレームを取込み、宛先が自局ではない場合には当該メッセージフレームを破棄するようにしてもよい。勿論、受信したメッセージフレームは、ドライバ11が図2(b)の処理により下流側の隣接局へ中継する。
 上記のように本例では、コモンメモリフレームを受信した各ノード10(各局)は、それぞれが、送信元局のメッセージ送信要求を受け付ける。つまり、ネットワークに参加する各局(ノード10)からのメッセージ送信要求(要求数)を、各局がそれぞれ受け付け、各局がそれぞれ独自に、メッセージの送信許可局と割当数(送信許可数)を判定する。各々が独自に判定しても、判定アルゴリズムは同一であるので、同一のデータが与えられれば同じ判定結果が得られることになる。つまり、各局からの全コモンメモリフレームが全て正しく伝送できれば、全ての局で、同一の割当て結果(判定結果)が得られることになる。各局は、自局におけるメッセージ送信権割当て判定結果を元に、自局のメッセージ送信可否と割当数を判定する。そして、メッセージ送信可能である場合には、メッセージフレームの送信を、全局が同期したメッセージ用センドタイマ17を元に同時に行っている。
 上記メッセージの送信許可局と割当数(送信許可数)の判定方法は、様々であってよく、例えば均等割当てや、あるいは“重み付けラウンドロビン”等の優先順付け割当てを行ってもよいし、あるいはこれらの組み合わせであってもよいし、他の任意の既存手法を用いても良い。何れにしても、この判定方法自体は、特に制限はなく、既存の何等かの手法や、当該既存手法の組み合わせなど、何でもよい。
 本例では、上記図2や図3の処理により、自局に係るコモンメモリフレームもメッセージフレームも、各々の帯域においてトークンを得る必要なく直ちに送信開始できる。図1のような構成・通信方式では、このようにして各局が同時にデータ送信しても、各フレーム同士が衝突することはない。自局のデータフレーム送信完了後は、他局のこれらフレームを順次中継する。これについても、各局が同一タイミングで一斉に中継送信しても、各フレーム同士が衝突することはない。
 この様な本例の送信/中継動作によれば、コモンメモリフレームもメッセージフレームも、例えば後述する図6のような送信/中継動作となる。つまり、コモンメモリフレームもメッセージフレームも、従来よりも効率的に伝送できる。
 この動作によれば、例えばメッセージフレームに関して、仮に1局だけが1通分の送信を行い、それを各局が中継して回線を1周回するまでに必要な時間は、全局(若しくは一部の局)が1通分の送信を行い、それを各局が中継して回線を1周回するまでに必要な時間と等しくなる。このため、各局は、少なくとも1通は他局のメッセージ送信要求数に関わらず送信可能である。
 この観点から、本例では、後述するように、全ての局に最低1通のメッセージ送信権が許可されるようにしている。但し、この例に限らない。
 ここで、上記ステップS44の処理の詳細例を、図4に示す。
 図4の例では、まず、フレーム抜けの有無を判定する(ステップS61)。この処理については後述するが、フレーム抜けがある場合には(ステップS61,YES)強制的に全てのノードのメッセージ送信許可数を、予め設定される基本値(本例では‘1’とする)に決定する。これによって、自局のメッセージ送信要求がある場合には、ステップS47において1通のメッセージのみを送信することになる。尚、メッセージ送信許可数が例えば‘1’に決定されても、自局のメッセージ送信要求が無ければステップS46がNOとなるので、メッセージ送信は行われない。
 この様に強制的に全局のメッセージ送信許可数を一律‘1’にする理由については、後に上記フレーム抜けの説明の際に説明する。
 一方、フレーム抜けが無い場合には(ステップS61,NO)、まず、上記ステップS37,S50の処理でエントリーテーブルに記憶した各局の要求数に基づいて、自局と他局のメッセージ送信要求の有無と要求数を認識する。更に、各局の現在の優先順位を認識する(ステップS62)。この優先順位は、例えば所定のカウンタの現在のカウント値に基づいて決定される。
 尚、このカウンタは図示していないが上記ステップS34がYESとなる毎にカウントアップされる(+1インクリメント)。また、このカウンタは、本例では、1→2→3→4→1→2→3→4→1・・・というように、1~4の間をサイクリックにカウントする。そして、その局番がカウント値と同一であるノード10が、最も優先順位が高いものとする。例えばカウンタのカウンタ値が‘3’であるときには、局3が最も優先順位が高くなり、この例では優先順位が高い順に、局3→局4→局1→局2となる。
 ステップS62では、更に、予め設定されている上限値を認識する。この上限値は、MSG帯域において送受信可能なメッセージの数の上限であり、MSG帯域の長さやメッセージフレームのフレームサイズ等に応じて、決まるものであり、予め開発者等が決めて設定している。
 そして、上記自局を含む各局のメッセージ送信要求の有無と要求数と、優先順位と、上限値などに基づいて、各局のメッセージ送信許可数を決定し、以って自局のメッセージ送信許可数を決定する(ステップS63)。これは、例えば、少なくとも、全ての局のメッセージ送信許可数の合計値が、上記上限値を超えないようにして、決定するものである。
 ステップS63の処理の一例を、図5に示す。
 図5の処理では、各局のメッセージ送信許可数は、基本値と、余剰値からの任意の割当値との合計としている。基本値とは、例えば、全ての局に必ず一律に割り当てる値であり、本例では‘1’としている(均等割り)。つまり、この例では、メッセージ送信要求を行った全ての局は、少なくとも1つのメッセージは送信できることになり、要求があるのに1つもメッセージを送信できない局は、存在しないようにしている。
 これより、まず、要求があった全ての局に対して、基本値(=1)を割り当てる(ステップS71)。
 また、上記余剰値は、例えば、余剰値=上限値-(基本値×局数)等とする。尚、局数が固定的であれば、最初から上限値の代わりに余剰値を設定しておくようにしてもよい。
 上記余剰値を、上記優先順位に従って、優先順位の最も高い局から順次割り当てていく(“重み付けラウンドロビン”方式)(ステップS72)。例えば、優先順位が高い順に、「余剰値≧要求数」であるか否かを判定して、「余剰値≧要求数」である場合には「割当数=要求数」とすると共に、「余剰値=余剰値-要求数」により余剰値を更新する。「余剰値<要求数」である場合には「割当数=余剰値」とすると共に、処理を終了する。そして、各局のメッセージ送信許可数を、「基本値+割当数」により決定する。
 ここでは、余剰値=上限値-(基本値×局数)の例を用いて説明する。また、上限値は‘7’とし、基本値は‘1’とし、局数は図1に示す4台とする。よって、この例では余剰値は‘3’となる。また、本例では優先順位が高い順に、局3→局4→局1→局2であるものとする。また、例えば、局3は要求数が‘2’、局1は要求数が‘3’、局2は要求数が‘1’であったものとする。尚、局4は要求を出していない。この例の場合、上記処理例では、まず局3を対象とし、「余剰値(=3)≧要求数(=2)」であることから、割当数=‘2’とすると共に、余剰値を‘1’に更新する。
 次に優先順位が高い局4は、要求を出していないので、その次に優先順位が高い局1を対象とすると、「余剰値(=1)<要求数(=3)」であることから、割当数=‘1’とすると共に、本処理を終了する。つまり、局2は基本値のみとなる。また、局1、局2は、今回は、要求するメッセージ全てを送信できない。但し、次回以降でいずれは送信できることになる。
 この結果、各局のメッセージ送信許可数は、局1は基本値‘1’+割当数‘1’=‘2’となり、局2は基本値‘1’+割当数‘0’=‘1’となり、局3は基本値‘1’+割当数‘2’=‘3’となる。
 尚、上記一例のメッセージ送信許可数の決定処理は、例えば「均等割り+“重み付けラウンドロビン”」による処理であると言えるが、この例に限らない。
 上記のように、上記一例では、基本となるメッセージ1通(この伝送時間は、上述したように、1局だけが送信する場合も全局が送信する場合も、同じとなる)に加えて、更に3通のメッセージフレームを伝送可能であるとしている。
 この前提の元では、例えば図6に示す例では、仮に局1、局2、局3、局4の順で優先順位付けが行われたとすると、図示のようなメッセージ送信が行われることになる。これについて、以下、説明する。
 尚、図6においても、上記図17と同様に、TC帯域の動作については省略して示すと共に、都合により、TC帯域の欄に各局を示す情報(局番やマスタ/スレーブ、要求数など)を示している。これは、図7、図8についても同様である。尚、TC帯域の動作は、従来技術であり、特に説明しない。また、本例の場合、マスタとは同期化などの為のマスタであり、トークン(送信権)に係るマスタではない。本例では、トークン(送信権)に係るマスタは存在しない。
 この図6の例では、図示のように、各局のメッセージ要求数は、局1が‘3’、局2が‘1’、局3が‘4’、局4が‘0’となっている。つまり、局4は、メッセージ送信要求していない。そして、上記優先順位に従って、局1から順に優先的に、余剰値から割当てが行われる。
 すなわち、上記のように、局1はメッセージ送信要求数が‘3’であるので、無条件に送信可能な1通に加えて、メッセージ伝送帯域内に追加で送信可能な3通(余剰値)に対して、残りの要求数が2通であるので、すべてのメッセージフレームを送信可能となり、合計で3通のメッセージフレームが送信許可されることになる。これに伴って追加で送信可能なメッセージ数(余剰値)は、残り1通(=3-2)となる。
 局2は、メッセージ送信要求が1であるので、無条件に送信可能な1通の範囲内で、メッセージフレームを1通、送信することになる。
 局3は、メッセージ送信要求が4であるので、無条件に送信可能な1通に加えて、追加で送信可能な残り1通のメッセージフレームを送信可能となり、合計で2通のメッセージフレームが送信許可されることになる。
 尚、メッセージ送信要求の無い局4については、上記処理では無条件に送信可能な1通のみが送信可能となるが、当然、局4はメッセージ送信を行わない。
 上述した図3の処理により、各ノード10のフレーム送受信動作は、例えば図6や図7に示すようになる。尚、図6が正常時、図7が異常発生した場合の動作を示す。
 まず基本として、リアルタイム性の保証が必要なコモンメモリフレーム伝送をコモンメモリ伝送帯域(TS帯域)にて実施し、イベント的に一方向アクセスを行うメッセージフレーム伝送は別途、メッセージ伝送帯域(MSG帯域)を設け、実施している。
 各局は、メッセージを送信する必要がある場合、コモンメモリフレームに要求数を付加して送信する。
 図6に示す例では、まず、コモンメモリ伝送帯域(TS帯域)において、各ノード10(局1~局4)は、自局のコモンメモリフレームを同じタイミングで送信開始すると共に、他局から送信されたコモンメモリフレームを受信すると、これを下流側の隣接局へ中継すると共にそのデータを該当する記憶領域へ記憶する。
 また、自局のメッセージ送信イベントがある場合には、要求数(メッセージ送信要求数)をコモンメモリフレームに付加して送信する。このコモンメモリフレームを受信した各ノード10は、要求数が付加されていることを以って当該フレームの送信元のノード10が、メッセージ送信要求を出しているものと判定する。
 図示の例では、局1、局2、局3にメッセージ送信イベントがあり、局1、局2、局3はそれぞれメッセージ送信要求数をコモンメモリフレームに付加して送信する。尚、要求数は図示の例では局1が‘3’、局2が‘1’、局3が‘4’となっている。
 上記各ノード10から送信されたコモンメモリフレームは、上記図2(b)の処理により、図示のように他局によって順次中継されて、ネットワークを一巡した後、送信元ノード10に戻ってきて破棄される。
 各ノード10は、他局が送信したコモンメモリフレームを受信すると、上記のように中継すると共に、そのデータを取得してコモンメモリに格納する。その際、メッセージ送信要求数が付加されている場合には、これらも取得して上記エントリーテーブルに追加記憶する。図示の例では、各ノード10は、局1、局2、局3が送信したコモンメモリフレームを受信した際に、それに付加されているメッセージ送信要求数を取得して、送信元ノードのID等と共にエントリーテーブルに追加記憶する(但し、自局の送信フレームの場合には上記の通り破棄するだけである)。
 また、各ノード10毎に、コモンメモリフレームの送信数は予め決まっており、図示の例では局1が送信数=‘1’、局2が送信数=‘3’、局3が送信数=‘2’、局4が送信数=‘1’となっている。そして、各ノード10は、最初に送信するフレームにのみ上記メッセージ送信要求数を付加する。例えば局2は図示のように3つのコモンメモリフレームを送信するが、最初のフレームにだけメッセージ送信要求数を付加する。
 尚、各ノード10のコモンメモリフレームの送信数は、TS帯域(コモンメモリ伝送帯域)中に全局の全てのコモンメモリフレームの交換が完了するように、予め開発者等によって決められている。また、コモンメモリフレームの交換は、定周期で常に行われる。
 一方、メッセージに関しては、各ノード10毎に、自局において何等かの処理によってメッセージ送信イベントが発生したときのみ、メッセージの送信が行われることになる。更に、送信するメッセージの数は、予め分かるわけではなく、その都度、上記何等かの処理に応じて決定されることになる。この為、上述したように各局のメッセージ送信許可数の調整・決定が行われるが、この決定処理は上記のように全てのノード10(局1~局4)でそれぞれ独立して行われる。
 つまり、従来のようにマスタノードが送信権を決定するのではなく、少なくとも送信権決定に関してはマスタノードは存在せず、全てのノード10がそれぞれ独立して決定して、以って自局の送信許可数を決定して、決定した送信許可数の分だけメッセージを送信する。その為に、まず、予め、全てのノード10に、同一のアルゴリズムの送信権決定処理用アプリケーションプログラムを、記憶させておく。そして、運用中は、各ノード10それぞれが、必要な情報(他局のメッセージ送信要求数、各局の優先順位など)をその都度取得して、この取得データを用いて上記送信権決定処理用アプリケーションプログラムを実行する。
 上記の通り決定アルゴリズムは全てのノード10で同じであるので、上記必要な情報が全てのノード10で同じであれば、全てのノード10において同じ決定結果が得られることになる。上記必要な情報のうち、上記各局の優先順位は、上記一例のように各ノード10内蔵の所定のカウンタのカウンタ値も基づいて決定されるので、予め、全てのノード10で同じカウンタ値となるように設定しておけばよい。例えば初期状態で全ノード10のカウンタ値が全て‘1’に設定され、その後は例えばサイクルタイマ15がタイムアウトする毎にカウントアップするように構成する。
 また、図6の例では、全てのノード10が、上記コモンメモリフレームの交換によって、全ての他局のメッセージ送信要求数が取得できるので、必要な情報を取得できている。これより、全てのノード10で上記送信権決定処理用アプリケーションプログラムを実行することで、同一の決定結果が得られることになる。図6の例では、送信権決定結果として、各ノード10のメッセージ送信許可数は、局1が‘3’、局2が‘1’、局3が‘2’となっており、これは全てのノード10で同一の結果が得られている。
 上記送信権決定処理は、例えばTS帯域(コモンメモリ伝送帯域)の空き領域(コモンメモリフレームの交換が完了した後、MSG帯域開始までの間)において実行してもよいし、上記図3のようにMSG帯域(メッセージ伝送帯域)の開始直後に実行してもよい。
 尚、後者の場合、送信権決定処理は、1つ目のメッセージ送信処理と並行して行っても良い。本例では、メッセージ送信要求有のノード10は、最低でも1つのメッセージは送信許可されるので、決定を待たずに1つ目のメッセージ送信を行っても問題ない。これより、図6に示すように、局1、局2、局3は、MSG帯域の開始直後から自局の1つ目のメッセージ送信を行っている。その後は、例えば上記余剰値からの任意の割当の分だけ、更に、メッセージ送信を行うことになる。これより、本例の場合、例えば局1は図示のように3つのメッセージを送信することになる。尚、この例では局4はメッセージ送信要求無しであるので、メッセージは送信しない。
 メッセージ送信要求の有無に係らず、全てのノード10は、上記図2(b)の処理によって、受信したメッセージを中継する(但し、自局が送信したメッセージは除く)。これより、各ノード10は、自局のメッセージを上記決定された送信許可数の分だけ送信したら、その後は他局の送信メッセージの中継を行うことになる。図6の例では、例えば局1は、図示のように、自局の3つのメッセージを送信完了したら、その後、局3の2つのメッセージ、局2の1つのメッセージを、順次、下流の隣接局(局2)へ中継する。
 この様にして、コモンメモリフレームと同様にして、送信された全てのメッセージを全てのノード10で受信することができ、以って送信された全てのメッセージが、宛先のノード10に届くことになる。また、コモンメモリフレームと同様、トークンを獲得(送信権を獲得)する必要はなく、全てのノード10が、MSG帯域の最初からメッセージを送信可能であり、且つ、何ら制約なく、メッセージを順次送信/中継することができるので、効率良くメッセージ伝送が行われ、短時間で多くのメッセージを宛先に渡すことができる。図6の例では、システム全体で6つのメッセージが伝送されることになる。尚、メッセージ伝送は、送信元と宛先の2つのノード間での1対1のメッセージ伝送となる。
 尚、図示の例では宛先のノード10がメッセージを受信した場合でも、このメッセージを中継しているが、この例に限らない。宛先のノード10がメッセージを受信した場合には、宛先のノード10はこのメッセージを取得後に、中継せずに破棄するようにしてもよい。
 次に、以下、図7に示す具体例について説明する。
 ここで、図6の例は、上記の通り正常な場合の例であり、これは換言すれば図4のステップS61の判定がNOとなる例と言える。一方、図7の例は、上記の通り異常な場合の例であり、これは換言すれば図4のステップS61の判定がYESとなる例と言える。つまり、フレーム抜けが発生した場合と言える。
 図7には、コモンメモリ伝送帯域において、一部または全部のフレームで伝送異常等が発生し、フレーム抜けが発生したケースの一例を示している。
 各局からの全コモンメモリフレームが正常に伝送されれば、各局がそれぞれ同一の送信権割当判定アルゴリズムで判断することで、同一の割当て結果が得られる。しかし、一部のメッセージ送信要求が一部の局でのみ欠損し受け付けられなかった場合、送信権割当て判定結果が局によって異なったものとなってしまう。
 この状態で各局がそれぞれ自局の判断結果に基づきメッセージ送信を行った場合、場合によってメッセージ伝送帯域時間内で収まりきらないメッセージ伝送が行われることになる。これを防止するため、本例では、一部または全部のコモンメモリフレームが欠損した場合、各局はこれを判断し、メッセージ伝送帯域時間内で確実に伝送完了となる、無条件に送信可能な1通のみ、メッセージフレームを送信するようにしている。
 図6、図7に示す具体例から明らかなように、図6に示したコモンメモリフレームの伝送が正常に完了した場合でも、図7に示した異常が発生した場合であっても、従来技術と比較してより多くのメッセージ伝送を行うことが可能となることが分かる。あるいは、メッセージ伝送帯域の長さを短くすることができ、以ってスキャン時間を短くすることが可能となる。
 本手法によれば、リング型トポロジまたはライン型トポロジの全二重ネットワークにおいて、メッセージ伝送帯域でより多くのメッセージを送信可能となり、ネットワーク全体の伝送量の大容量化を実現することが可能となる。これに加えて、更に、コメンメモリフレームについても、効率良い伝送が可能となり、短時間で全ての局間で全てのコモンメモリフレームの交換を行うことが可能となる。
 図7の例では、TS帯域において、局1が送信した自局の送信フレーム(メッセージ送信要求数付き)が、何等かの伝送異常で、隣接局(局2)に受信されなかった例を示している(フレーム抜けの一例)。この為、この例では、局1以外の局は、局1のメッセージ送信要求の有無や要求数が分からないので、上記送信権決定処理に必要な情報が揃わないことになる。
 この為、この様なフレーム抜けが発生した場合には(ステップS61,YES)、全てのノード10において、強制的に自局の送信数を‘1’に決定する。これより、図7に示すように、MSG帯域において、メッセージ送信要求があった局1、局2、局3は、全て一律に、1通のメッセージのみを送信することになる。
 ここで、上記ステップS61の判定方法の一例について説明する。例えば上記の通り、コモンメモリフレームは各局毎の送信数が予め決まっているので、各ノード10において、自局を含めた全局の送信フレームを全て受信したか否かを判定でき、以ってフレーム抜けが発生したか否かを判定できる。尚、本例では、コモンメモリフレームは、正常であれは最終的には送信元のノード10に戻ってくるので、図7の例では局1は、自局の送信フレームが戻ってこないことから、フレーム抜けが発生したと判定できる。
 この例に限らず、例えば、送信元局が自局のコモンメモリフレームを送信する際に、各コモンメモリフレーム中に、全送信数中の何番目のフレームであるかを示すデータを付加する場合には、このデータを参照することで、フレーム抜けが発生したか否かを判定できる。
 尚、受信フレームが、コモンメモリフレームではなく、例えば同期化フレームである場合には、以下に説明する不図示の処理が実行される。尚、本例ではトークンに関するマスタ局は存在しないが、同期化に関するマスタ局は存在する。図6、図7において局2がマスタ局となっているが、これはトークンに関してではなく、同期化に関するものである。
 すなわち、マスタノードは、上記コモンメモリフレームだけでなく、別タイミングで、サイクルタイマ15の同期化の為の同期化フレームを送信する場合がある。これは、任意の宛先ノードに対して送信するものである。宛先ノード以外の各ノード10は、この同期化フレームを受信すると、これを中継する。宛先ノードは、この同期化フレームを受信すると、中継せずに、同期応答フレームを送信元ノード(マスタノード)へ返信する。
 すなわち、発生したイベントが、不図示の「自局宛の同期化フレームの受信」である場合には、上記同期応答フレームをドライバ11に渡して、送信元ノード(マスタノード)へ送信させる。
 尚、システムを構成する複数のノード10のうちの何れか1つの局(一例では、局1、局2、局3、局4の何れか)が、上記同期化に係るマスタノードとして動作するように予め設定されているか、もしくは、局番やMACアドレス等の昇順または降順等で優先度判定を行い、上記マスタノードとして動作する。マスタノード以外のノード10は、基本的には全て、スレーブノードとして動作することになる。そして、マスタノードは、上記同期化フレーム等によって、全てのスレーブノードのサイクルタイマ15を、自ノードのサイクルタイマ15に同期させる。これについては、従来技術文献等に記載されており、ここではこれ以上詳細には説明しない。
 また、尚、一例としては例えば、上記マスタノードは、上記同期化フレームを送信する際に、例えば図2(a)のステップS12の処理により回線A、回線Bの両系に送信する。これより、宛先のスレーブノードは、先着した同期化フレームを受信すると、これに応答する同期応答フレームをA,B両系に送信することになる。そして、マスタノードにおいて、先着した同期応答フレームが処理部14に渡されることになり、結果的に、マスタノード-宛先スレーブノード間を、フレームが最短ルートで往復することになる。
 そして、この最短ルートでのフレーム往復に要する時間が、マスタノードで計測され、この計測時間の半分の時間が、マスタノード-宛先スレーブノード間の通信時間(通信遅延時間)として算出されることになる。この通信遅延時間を用いてサイクルタイマ15の同期化を図る処理については、従来技術であり、ここでは特に説明しない。
 尚、発生したイベントが、上述した各種イベントの何れでも無い場合には、発生したイベントに応じた処理を実行するが、これについては特に図示・説明はしないものとする。
 ここで、従来技術ではセンドタイマの設定値は、全ての局で相互に異なる値が設定されるものであった。これに対して本手法では、一例としては、全ての局で同一の設定値がセットされるものとする(完全に同一に限らず、ほぼ同一であってもよいものとする。つまり、多少は異なってもよいものとする)。これは、上記2種類のセンドタイマ16,17の両方ともである。
 換言すれば、従来技術の場合、ステップS35のセンドタイマ16の設定値は、各ノード毎に、一例としては下記の算出式によって決定されていた。
 設定値=TC帯域時間+(スロット単位時間×自局の割当スロット番号)
 スロット単位時間は、上記送信タイムスロット(105,108等)の長さであり、一例としては、スロット単位時間=TS帯域時間÷局数、等とする。また、割当スロット番号は「‘0’と自然数」であり、例えば局数=N台とした場合、0、1,2,・・・、N-1の何れかが、各局に重複しないように割当てられるものである。
 一方、本手法の場合、一例としては全てのノードのセンドタイマ16の設定値として、同じ値が予め設定されている。その一例を下記に示す。
 設定値=TC帯域時間+α(α;0または任意の正の値)
 尚、本例では、上記自局データを同時に送信する為に、例えば上記のように全てのセンドタイマ16が同一タイミングでタイマアップするように構成するものであり、これを実現する為の一例として、サイクルタイマ15の同期化を図ったうえで、全てのノード10のセンドタイマ16に同一の値が設定されるようにしているが、この例に限らない。尚、この場合の“同時に”は、完全に同時である場合に限らず、多少のズレがあっても構わない。
 更に、本手法では、必ずしも全てのセンドタイマ16が同一タイミングでタイマアップするように構成しなくてもよく、結果的に全てのノード10の自局データ送信タイミングが同一となるものであれば、何でも良い。
 そして、上記“同一タイミング”とは、完全に同一のタイミングに限らず、多少のズレがあっても構わないものとする。
 尚、上記同一タイミングでデータ送信が行われるためには、全てのノードのサイクルタイマ15が同期していることが前提となるが、これは上記特許文献1,2等の従来技術で実現されているので、ここでは上記のように同期化について簡単に説明しており、これ以上詳細には説明しない。
 尚、図6、図7には、上記2つの回線A、回線Bのうち回線A上の動作について示すが、特に図示・説明しないが、回線Bにおいても回線Aと同様の動作が行われている。
 ここで、本手法は、上述した例に限らない。例えば、TS帯域のコメンメモリフレーム送信・中継に関しては、既存技術を用いても良い。一例としては例えば、図16に示すトークン方式の動作であっても構わない。但し、TS帯域の処理中に、メッセージ送信イベントが発生した全てのノード10は、他の全てのノード10に対して、自局のメッセージ送信要求数を通知する必要がある。その後のMSG帯域に係る処理については、上述した図3、図6、図7の処理であってもよい。
 この様な変形例の動作の一例を、図8に示す。
 図8に示す動作例では、TS帯域(コモンメモリ伝送帯域)については、基本的には図16に示す既存技術による動作と同様であるが、メッセージ送信イベントが発生している局は、自局のコモンメモリフレームに要求数などを付加して送信する。
 これに応じたMSG帯域における各ノード10のメッセージ送信/中継動作は、図6に示すものと同様であってよいので、ここでは特に説明しない。
 尚、図6、図7、図8において、図示の矩形は送受信データ(パケット)を示し、各局毎に、上側が受信、下側が送信を示す。また、横軸は時間である。また、矩形内には送信元の局を記述してある。上記センドタイマ16がタイマアップした時点で各局は同時に自局のデータを送信している。例えば、局4は、図6、図7に示す矩形内が“局4”のデータを送信している。送信データは、伝送路上で多少遅延して、下流の隣接局に受信される。
 図6~図8に示すように、全てのノード10が、MSG帯域において、殆ど空き時間なく、メッセージの送受信処理をすることになり、効率よくメッセージの送受信を行うことができる。よって、上記図17に示した従来手法に比べて、短時間でメッセージ送受信処理が完了すること、あるいは従来に比べてメッセージ数を増やせることは、明らかである。図6、図7の例では、この効果に加えて更に、TS帯域においても、殆ど空き時間なく、コモンメモリフレームの伝送を行うことができ、効率よくコモンメモリフレームの全交換を行うことができる。これより、例えば、サイクルタイマ15の設定値を小さくして、スキャン時間を短くしてもよい。
 従来技術のように各ノード間の通信帯域が未使用状態とならないため、全ノード間で相互にデータ交換するために必要な時間が短縮され、残った帯域時間において更なるデータ交換が可能となり、ネットワーク上のデータ量を増やすことができる。また、この残った帯域時間を次スキャン時間として使用することで、データ交換周期の高速化を実現することができる。
 また、ここでは上記のように回線Aの動作について説明したが、回線Bについても同様にしてパケットがリング型ネットワークを一巡することになる。そして、正常であれば上記の通り、各ノード10は、同じパケットを回線Aと回線Bの両方から受け取ることになる。そして、後から受け取ったパケットは、上記ステップS26の処理が実行されることになり破棄されることになる。
 また、例えば、図6のように、例えば局2が例えばTS帯域において、3つの自局データ(“局2”データ)を送信する場合、例えばドライバ11が後述するFIFOメモリと送信専用チップ(IC等)を備える構成の場合、ドライバ11は上記3つの“局2”データをFIFOメモリに格納する。送信専用チップはFIFOメモリの格納データを順次取り出して送信する。まず、上記3つの“局2”データのうち最初の“局2”データを取り出して送信開始する。図6の例では、この送信処理中に“局1”データを受信開始しており、“局1”データを受信完了したらこれをFIFOメモリに格納する。更に、その後、“局4”データを受信開始し、“局4”データを受信完了したらこれをFIFOメモリに格納する。
 送信専用チップはFIFOメモリの格納データを格納順に順次取り出して送信するので、上記の例では図6に示すように、まず、上記3つの“局2”データを順次送信し、続いて、“局1”データを送信し、その後、“局4”データを送信することになる。尚、“局1”データ、“局4”データの送信は、中継(転送)処理である。尚、送信先は下流の隣接局である局3である。
 局2は、更に、2つの“局3”データも順次受信し、これらも既に受信済みの他局データを中継完了した後に、中継を行う。更に、3つの自局データ(“局2”データ)も順次受信することになるが、これら全て上記ステップS23により破棄することになる。
 尚、上記の例では、自局データを受信したら破棄するものとしたが、この例に限らない。例えば、自局の下流側の隣接局が送信元であるパケットを受信したら、このパケットのデータを取得するが中継は行わない(例えば破棄する)ようにしてもよい。当然のことながら送信元はこのパケットのデータを取得する必要はなく、上記ステップS23のように単に破棄するだけなので、このパケットを中継する処理は無駄であり、この無駄を省く為に上記処理を行うようにしてもよい。これによって、更に短時間で全ノードのデータ交換が完了することになる。
 他局の動作についても上記局2と略同様となり、説明は省略する。
 尚、ここでは一例として、図1(b)に示すドライバ11は、不図示のFIFOメモリと送信専用チップとを備えるものとする。FIFOメモリと送信専用チップ(IC等)は、回線A用と回線B用が、それぞれ、設けられている。例えば、回線A用の送信専用チップは、回線A用のFIFOメモリに任意の1以上のデータフレームがある場合には、これを順次、回線A上に送信する。例えば、局2の場合、通信線12b上に(つまり局3に対して)データフレームを送信することになる。
 一方、ドライバ11本体は、上記ステップS12またはステップS22の処理の際には、自局データフレームまたは受信したデータフレームを、該当するFIFOメモリに格納する処理を行うことになる。上記図6の局2を例にすると、局2は、まずステップS12の処理で、3つのデータフレームより成る自局データを、回線A、回線B両系へ送信する。ここでは回線Aについてのみ説明するならば、回線Aに対応するFIFOメモリに、上記3つの“局2”データフレームを、順次、格納することになる。
 これより、回線Aに対応する送信専用チップは、この3つの“局2”データフレームを、順次、通信線12b上に送信することになる。これより、図6の例のように、局2は、3つの自局データ(“局2”データ)を順次、局3へ送信することになる。そして、この処理中に、図6の例のように、局2は、“局1”データ、“局4”データ等を順次受信することになり、これらをステップS22の中継処理により、回線Aに対応するFIFOメモリに、順次格納することになる。これより、図6の例のように、局2は、3つの“局2”データフレームを送信完了したら、続いて、“局1”データ、“局4”データ等を順次送信することになる。
 図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は、それぞれ、データ送受信部51、メッセージ送信部52、メッセージ受信部53、メッセージ送信許可数決定部54、タイマ機能部55等の各種処理機能部を有する。
 データ送受信部51は、所定のデータ交換周期毎に、その第1の帯域内において、自装置のデータを送信すると共に、他装置の送信データを受信/中継する。
 メッセージ送信部52は、上記所定のデータ交換周期毎に、上記第1の帯域より後の第2の帯域内の所定のタイミングにおいて、自装置のメッセージ送信要求がある場合には該メッセージを隣接局へ送信する。
 メッセージ受信部53は、上記第2の帯域内において、一方の隣接局からメッセージを受信した場合、該メッセージを他方の隣接局へ中継し、または該メッセージが自装置宛である場合には該メッセージを取得する。
 そして、例えば、上記第2の帯域内の所定のタイミングは、該第2の帯域の開始時とする。従来のように送信権を得る必要はなく、各ノード装置50はそれぞれ第2の帯域になったら直ちにメッセージ送信することができる。
 また、例えば、上記第2の帯域内の所定のタイミングは、全ての上記ノード装置50で同じタイミングとする。
 尚、同一とは完全に同一とは限らず、多少のズレがあっても構わない。つまり、“同一”は、ほぼ同一の場合も含むものとする。上記第2の帯域内の所定のタイミングを生成する為に、一例としては1以上のタイマ機能を用いる。上記具体例では、上記サイクルタイマ15、センドタイマ16、メッセージ用センドタイマ17を用いて、上記第2の帯域内の所定のタイミングを生成している。ここでは、一例としては、ノード装置50はこれら各タイマ15,16,17を有するものとして説明するが、この例に限らない。また、これら各タイマ15,16,17は、後述するタイマ機能部55の具体例と見做してよい。
 上記の通り、例えば、上記第2の帯域内の所定のタイミングは、全ての上記ノード装置50で同じタイミングとする。あるいは、上記第2の帯域内の所定のタイミングは、例えば、該第2の帯域の開始時とする。また、後述する第1の帯域内の所定のタイミングも、上記1以上のタイマ機能を用いて生成してもよい。
 仮にこの具体例を用いて説明するならば、例えば、全てのノード装置50のセンドタイマ16、メッセージ用センドタイマ17の設定値を同一とすることで、全てのノード装置50の上記第1の帯域内の所定のタイミング、第2の帯域内の所定のタイミングを、それぞれ、同一タイミングとするものであるが、この例に限らない。尚、前提として、例えば、全てのノード装置50のサイクルタイマ15を、同期させておく必要があるが、この例に限らない。同期させる方法は、上記の通り、従来技術である。サイクルタイマ15によってデータ交換周期(通信サイクル)が生成される。
 尚、上記第2の帯域の具体例が上記メッセージ伝送帯域(MSG帯域)であり、上記第1の帯域の具体例が上記コメンメモリ伝送帯域(TS帯域)である。
 また、例えば、上記データ送受信部51は、自装置のメッセージ送信要求がある場合には、上記自装置のデータに要求数を付加して送信すると共に、上記他装置の送信データに該他装置の上記要求数が付加されている場合には該要求数を記憶する。勿論、自装置の上記要求数も記憶しておく。
 そして、例えば上記メッセージ送信許可数決定部54が、上記記憶した要求数と予め設定される所定値とに基づいて各ノード装置のメッセージ送信許可数を決定することで、自装置のメッセージ送信許可数を決定する。
 そして、上記メッセージ送信部52は、自装置のメッセージ送信要求がある場合には、上記自装置のメッセージ送信許可数の分のメッセージを送信する。
 また、例えば、上記メッセージ送信許可数決定部54は、上記記憶した要求数と上記予め設定される所定値と、更に現在の上記各ノード装置の優先順位とに基づいて、上記各ノード装置のメッセージ送信許可数を決定する。
 また、例えば、上記所定値には、上記第2の帯域内にシステム全体で送信可能なメッセージ数である上限値が含まれる。そして、上記メッセージ送信許可数決定部54は、上記記憶した要求数と該上限値に基づいて、全ノード装置による上記メッセージ送信許可数の合計が該上限値を超えないように、上記メッセージ送信許可数を決定する。
 あるいは、上記メッセージ送信許可数決定部54は、上記記憶した要求数と上記上限値に基づいて、全ノード装置による上記メッセージ送信許可数の合計が該上限値を超えないようにしつつ、上記優先順位の高いノード装置に優先的に割当てを行うことで上記メッセージ送信許可数を決定する。
 また、例えば、上記メッセージ送信許可数決定部54は、全ノード装置にそれぞれ上記メッセージ送信許可数の基本値を割り当てて、上記上限値から該基本値合計を減算して成る余剰値を、上記優先順位に従って各ノード装置に分配することで、全てのノード装置が1以上のメッセージを送信できるようにして、各ノード装置の上記メッセージ送信許可数を決定する。
 また、例えば、上記メッセージ送信許可数決定部54は、全てのノード装置おいて同一のアルゴリズムを用いるものとする。これにより、上述してあるように、処理に使用するデータが同じであれば同じ処理結果(各ノード装置の上記メッセージ送信許可数)が得られることになる。
 また、例えば、上記記憶した要求数には上記自装置の要求数も含まれる。自装置の要求数も含めて、各ノード装置のメッセージ送信許可数を決定するものである。
 尚、本構成によれば、上記各ノード装置50が同一タイミングで上記メッセージを送信しても、メッセージ同士の衝突は起こらないことになる。
 上記各ノード装置50は、それぞれ、自装置の上記一方の隣接局と第1の通信線により1対1で接続されると共に自装置の上記他方の隣接局と第2の通信線により1対1で接続されており、上記メッセージ受信部は、上記第1の通信線を介して上記一方の隣接局からのメッセージを受信すると共に、上記第2の通信線を介して上記他方の隣接局へメッセージを中継する。
 図11に示す通信線61が、上記第1の通信線及び第2の通信線に相当する。
 また、例えば、上記データ送受信部51は、上記第1の帯域内の所定のタイミングで、上記自装置のデータを上記隣接局へ送信すると共に、上記一方の隣接局からの送信データを受信した場合、該送信データを取得すると共に上記他方の隣接局へ中継する。
 また、例えば、上記第1の帯域内の所定のタイミングは、該第1の帯域の開始時とする。あるいは、例えば、上記第1の帯域内の所定のタイミングは、全ての上記ノード装置50で同じタイミングとする。
 例えば、上記各ノード装置50は、タイマ機能部55(1以上のタイマを有する)を有し、該タイマ機能部55を用いて上記第2の帯域内の所定のタイミングを生成する。または、該タイマ機能部55を用いて上記第1の帯域内の所定のタイミングを生成する。
 また、例えば、上記データ交換周期内の上記第1の帯域内に、全ての上記ノード装置50の送信データが、それぞれ、上記中継が繰り返されることによって全ての他のノード装置50に受信されることで、全てのノード装置50間の相互のデータ交換が完了する。
 また、例えば、上記データ交換周期内の上記第2の帯域内に、上記各ノード装置50の上記メッセージ送信部52により送信されたメッセージが、それぞれ、上記中継が繰り返されることによって全ての他のノード装置50に受信されることで、全てのメッセージがその宛先のノード装置50に受信される。
 また、たとえば、上記制御ネットワークシステムは、複数の上記ノード装置50と複数の通信線61から成り、各通信線61が任意の2つのノード装置50間を接続している。そして、各ノード装置50が上記通信線61によって接続されている他のノード装置50である上記隣接局と通信可能である。通信線によって接続されていないノード装置50間の通信は、他の1以上のノード装置50が中継することで実現する。
 また、例えば、各ノード装置50がデータ送受信部51によって送信したデータは、全て、他のノード装置50の中継機能によって中継されることで、データ交換周期内に全ての他のノード装置50に受信・取得されて全ノード装置間の相互のデータ交換が完了することになる。尚、受信・取得は、例えば、受信かつ取得の意味であるが、この例に限らない。尚、“/”は、“または”や“あるいは”を意味する。
 また、上記通信線61は、例えば全二重回線である。
 また、例えば、図11の制御ネットワークシステムは、リング型またはライン型のネットワークであるが、この例に限らない。
 あるいは、例えば、図11の制御ネットワークシステムは、リング型またはライン型のトポロジにて全二重の通信回線によって上記各ノード装置が接続されたネットワークである。そして、例えば、データ送受信部51やメッセージ送信部52は、該全二重の両系に自装置のデータを送信する。
 また、例えば、各ノード装置50は、受信したデータの送信元が自装置であった場合には、中継を行わずに、該受信データを破棄する。あるいは、例えば、各ノード装置50は、受信したデータの送信元が下流側の隣接局であった場合には、中継を行わずに、該受信データを破棄する。
 例えば、上記データ交換周期内に、全てのノード装置50の送信データが、それぞれ、上記中継が繰り返されることによって全ての他のノード装置50に受信されることで、全てのノード装置間のデータ交換が完了する。
 また、ノード装置50は、不図示のCPU/MPU等の演算プロセッサやメモリ等の記憶部を備える。記憶部には予め所定のアプリケーションプログラムが記憶されている。演算プロセッサが、このアプリケーションプログラムを実行することで、上記図2(a)、(b)、図3、図4、図5に示すフローチャートの処理や、図11の各種処理機能部の処理が、実現される。
 尚、図1には、リング型で全二重回線の例を示す。ライン型の全二重回線の例を図12に示す。図12の構成は、図1(b)において通信線12d及び通信線13dが、存在しない構成と見做して構わない。この様なライン型の構成の場合、各ノード10の送信データは、自局に戻ってくることなく、両端のノード10(この例では局1、局4)に到達した時点で中継は終了となる。
 上述したように、本手法では、例えば特許文献2等のノード同期方法によってマスタノードのタイマと同期されたタイマを用いて、ネットワークを構成している全ノード10が、同時に自局データの送信を両隣の隣接ノードに行う。自局データの送信完了後は、全ノード10が、それぞれ、自ノードの一方の隣接ノードから受信したフレームデータを、他方の隣接ノードに対して中継する。このフレームデータは、メッセージフレーム、コモンメモリフレームである。
 そして、本例の図6等の例では、メッセージフレーム、コモンメモリフレームは、どちらも、対応する帯域(MSG帯域、TS帯域)において、特に送信権を得る必要なく、フレーム送信することができ、例えば同時に(帯域の開始時点から)、送信開始することができる。自局のフレームデータ送信後は、受信した他局からの送信データを、中継する。
 このように、構成ノード間の全二重回線の伝送帯域を同時に使用し、伝送効率を高め、ネットワーク全体の伝送量の大容量化及びデータ交換周期の高速化の実現を可能とする。これより、例えば、リング型トポロジまたはライン型トポロジの全二重回線のネットワークシステムにおいて、ネットワーク上のデータ量を増やすことができるし、データ交換周期の高速化を実現することが可能となる。
 また、メッセージは、常に送信するわけではなく、メッセージの送信要求が発生したときに送信する。送信要求が発生したとき、そのノードは、要求数をコモンメモリフレームに付加して送信する。これより、上記TS帯域における全ノード間のコモンメモリフレーム交換処理により、全てのノードが全ての要求数を認識できる。これより、各ノードにおいて、各々、自局と各他局の要求数等に基づいて、同一の決定アルゴリズムにより、各局のメッセージ送信許可数を決定する。異常が無ければ、全てのノードで同じ決定結果が得られるはずである。これより、各局は自局の送信許可数に基づいて、MSG帯域において自局のメッセージフレームを送信する。これより、MSG帯域内に全てのメッセージ送受信が完了すると共に、出来るだけ多くのメッセージが送信されるようにできる。また、逐一、マスタから送信権を得る必要なく、全ての局がMSG帯域の開始時から直ちに自局のメッセージフレームを送信可能となるので、効率よくメッセージ送信を行うことができる。
 尚、本手法は、上述した実施例に限らない。例えば、適用対象は、上記“リング型トポロジまたはライン型トポロジの全二重回線のネットワークシステム”に限らない。トポロジがリング型やライン型に限らないことは既に述べた通りである。更に、全二重回線に限るものではなく、多重回線(4重回線など)であってもよいし、1回線であっても構わない。
 一回線の場合、例えば図1に示す回線A、回線Bの各通信回線12,13のうちの何れか一方のみが、存在する構成となる。例えば、通信回線12のみが存在する構成となる。この様な構成例を、図13に示す。
 また、1回線の場合には、サイクルタイマ15の同期をとる為に、例えば最初は図1に示す2回線の構成としてサイクルタイマ15の同期をとった後に、1回線の構成に変更して、1回線で運用させるようにするが、この例に限らない。例えば他の例としては全ノード10に電波時計を設けることで、各ノード10毎に自己の電波時計による時刻にサイクルタイマ15を合わせることで、結果的に全ノードのサイクルタイマ15が同期するようにしてもよい。
 また、一回線の場合(ここでは、回線Aのみとする)、各ノード10の処理は、基本的には上記図2(a)(b)、図3、図4、図5の処理と略同様であるが、一部が異なる。すなわち、まず、上記ステップS12の処理は、回線Aにのみデータ送信する処理となる。また、受信処理に関しては、両系から2つのパケットを受信することは無くなるので、ステップS24,S26の処理は削除されることになる。
 本発明の制御ネットワークシステム、そのノード10等によれば、従来よりも短時間で1以上のメッセージ送受信を行うことができる。特にシステム全体で複数の(多数の)メッセージを送信すべき状況では、顕著な効果が得られる。
 本手法によれば、まず、メッセージ送信に関して、伝送効率を高め、ネットワーク全体の伝送量の大容量化の実現を可能とする。これは、決められたMSG帯域内で、必ずメッセージ送受信か完了するようにしつつ、伝送量の大容量化の実現を可能とするものである。更に、メッセージ要求を含むデータ伝送に異常が発生した場合であっても、問題なく、決められたMSG帯域内で、必ずメッセージ送受信か完了するようにしつつ、伝送効率を高め、ネットワーク全体の伝送量の大容量化の実現を可能とする。
 更に、メッセージだけでなく、全ノード10が相互にデータ(コモンメモリデータ;制御データなど)を交換する際にも、従来よりも短時間でデータ交換を完了させることができる。従い、本発明の制御ネットワークを使った制御システムではデータリフレッシュ周期(定期的)を高速化できるので、制御の高速化が図れる。さらには顧客システムにおける生産性向上などが期待できる。
 尚、本発明は、上記図1のリング型や図12のライン型の構成に限定されない。勿論、メッセージ通信に関してはリング型やライン型の構成を用いる必要があるが、コモンメモリデータ交換に関しては、必ずしもリング型やライン型の構成を用いることなく、例えば、特許文献1,2のようなバス型の構成を用いるようにしてもよい。これより、特に図示しないが、例えば図1の構成において更にバス型ネットワークを構築して、このバスを介してTS帯域におけるコモンメモリデータの交換を行うようにしてもよい。この通信のための各ノード10の構成や動作は、例えば特許文献1,2と同様であってよく、例えば上述した図14の送信動作を行うようにすればよい。
 尚、ここでは、“/”は、数式等を除けば、“または”や“あるいは”を意味するものとする。よって、例えば、「または/及び」は、「または、あるいは、及び」を意味することになる。
10 ノード
11 ドライバ
12、13 通信回線
12a、12b、12c、12d 通信線
13a、13b、13c、13d 通信線
14 処理部
15 サイクルタイマ
16 センドタイマ
17 メッセージ用センドタイマ
31 局2A回線フレーム
32 局2B回線フレーム
33 フィルタ
41 局1A回線フレーム
42 局1B回線フレーム
46 通信線
50 ノード装置
51 データ送受信部
52 メッセージ送信部
53 メッセージ受信部
54 メッセージ送信許可数決定部
55 タイマ機能部

Claims (18)

  1.  複数のノード装置が相互にデータ交換する制御ネットワークシステムにおいて、
     前記各ノード装置は、
     所定のデータ交換周期毎に、その第1の帯域内において、自装置のデータを送信すると共に、他装置の送信データを受信するデータ送受信手段と、
     前記所定のデータ交換周期毎に、前記第1の帯域より後の第2の帯域内の所定のタイミングにおいて、自装置のメッセージ送信要求がある場合には該メッセージを隣接局へ送信するメッセージ送信手段と、
     前記第2の帯域内において、一方の隣接局からメッセージを受信した場合、該メッセージを他方の隣接局へ中継し、または該メッセージが自装置宛である場合には該メッセージを取得するメッセージ受信手段と、
     を有することを特徴とする制御ネットワークシステム。
  2.  前記第2の帯域内の所定のタイミングは、該第2の帯域の開始時とすることを特徴とする請求項1記載の制御ネットワークシステム。
  3.  前記第2の帯域内の所定のタイミングは、全ての前記ノード装置で同じタイミングとすることを特徴とする請求項2記載の制御ネットワークシステム。
  4.  前記データ送受信手段は、自装置のメッセージ送信要求がある場合には、前記自装置のデータに要求数を付加して送信すると共に、前記他装置の送信データに該他装置の前記要求数が付加されている場合には該要求数を記憶し、
     前記各ノード装置は、前記記憶した要求数と予め設定される所定値とに基づいて各ノード装置のメッセージ送信許可数を決定することで、自装置のメッセージ送信許可数を決定するメッセージ送信許可数決定手段を更に有し、
     前記メッセージ送信手段は、自装置のメッセージ送信要求がある場合には、前記自装置のメッセージ送信許可数のメッセージを送信することを特徴とする請求項1~3の何れか一項に記載の制御ネットワークシステム。
  5.  前記メッセージ送信許可数決定手段は、前記記憶した要求数と前記予め設定される所定値と、更に現在の前記各ノード装置の優先順位とに基づいて、前記各ノード装置のメッセージ送信許可数を決定することを特徴とする請求項4記載の制御ネットワークシステム。
  6.  前記所定値は、前記第2の帯域内にシステム全体で送信可能なメッセージ数である上限値であり、
     前記メッセージ送信許可数決定手段は、前記記憶した要求数と該上限値に基づいて、全ノード装置による前記メッセージ送信許可数の合計が該上限値を超えないように、前記メッセージ送信許可数を決定することを特徴とする請求項4記載の制御ネットワークシステム。
  7.  前記所定値は、前記第2の帯域内にシステム全体で送信可能なメッセージ数である上限値であり、
     前記メッセージ送信許可数決定手段は、前記記憶した要求数と該上限値に基づいて、全ノード装置による前記メッセージ送信許可数の合計が該上限値を超えないようにしつつ、前記優先順位の高いノード装置に優先的に割当てを行うことで前記メッセージ送信許可数を決定することを特徴とする請求項5記載の制御ネットワークシステム。
  8.  前記メッセージ送信許可数決定手段は、全ノード装置にそれぞれ前記メッセージ送信許可数の基本値を割り当てて、前記上限値から該基本値合計を減算して成る余剰値を、前記優先順位に従って各ノード装置に分配することで、全てのノード装置が1以上のメッセージを送信できるようにして、各ノード装置の前記メッセージ送信許可数を決定することを特徴とする請求項7記載の制御ネットワークシステム。
  9.  前記データ送受信手段は、前記第1の帯域内の所定のタイミングで、前記自装置のデータを前記隣接局へ送信すると共に、前記一方の隣接局からの送信データを受信した場合、該送信データを取得すると共に前記他方の隣接局へ中継することを特徴とする請求項1記載の制御ネットワークシステム。
  10.  前記各ノード装置は、更に、1以上のタイマ手段を有し、
     該1以上のタイマ手段を用いて前記第2の帯域内の所定のタイミングを生成することを特徴とする請求項1~3の何れか一項に記載の制御ネットワークシステム。
  11.  前記データ交換周期内の前記第1の帯域内に、全ての前記ノード装置の送信データが、それぞれ、前記中継が繰り返されることによって全ての他のノード装置に受信されることで、全てのノード装置間の相互のデータ交換が完了し、
     前記データ交換周期内の前記第2の帯域内に、前記各ノード装置の前記メッセージ送信手段により送信されたメッセージが、それぞれ、前記中継が繰り返されることによって全ての他のノード装置に受信されることで、全てのメッセージがその宛先のノード装置に受信されることを特徴とする請求項1~3の何れか一項に記載の制御ネットワークシステム。
  12.  複数のノード装置が相互にデータ交換する制御ネットワークシステムにおける該ノード装置であって、
     所定のデータ交換周期毎に、その第1の帯域内において、自装置のデータを送信すると共に、他装置の送信データを受信/中継するデータ送受信手段と、
     前記所定のデータ交換周期毎に、前記第1の帯域より後の第2の帯域内の所定のタイミングにおいて、自装置のメッセージ送信要求がある場合には該メッセージを隣接局へ送信するメッセージ送信手段と、
     前記第2の帯域内において、一方の隣接局からメッセージを受信した場合、該メッセージを他方の隣接局へ中継し、または該メッセージが自装置宛である場合には該メッセージを取得するメッセージ受信手段と、
     を有することを特徴とするノード装置。
  13.  前記第2の帯域内の所定のタイミングは、該第2の帯域の開始時とすることを特徴とする請求項12記載のノード装置。
  14.  前記第2の帯域内の所定のタイミングは、全ての前記ノード装置で同じタイミングとすることを特徴とする請求項13記載のノード装置。
  15.  前記データ送受信手段は、自装置のメッセージ送信要求がある場合には、前記自装置のデータに要求数を付加して送信すると共に、前記他装置の送信データに該他装置の前記要求数が付加されている場合には該要求数を記憶し、
     前記記憶した要求数と予め設定される所定値とに基づいて各ノード装置のメッセージ送信許可数を決定することで、自装置のメッセージ送信許可数を決定するメッセージ送信許可数決定手段を更に有し、
     前記メッセージ送信手段は、自装置のメッセージ送信要求がある場合には、前記自装置のメッセージ送信許可数のメッセージを送信することを特徴とする請求項12~14の何れか一項に記載のノード装置。
  16.  前記メッセージ送信許可数決定手段は、前記記憶した要求数と前記予め設定される所定値と、更に現在の前記各ノード装置の優先順位とに基づいて、前記各ノード装置のメッセージ送信許可数を決定することを特徴とする請求項15記載のノード装置。
  17.  前記所定値は、前記第2の帯域内にシステム全体で送信可能なメッセージ数である上限値であり、
     前記メッセージ送信許可数決定手段は、前記記憶した要求数と該上限値に基づいて、全ノード装置による前記メッセージ送信許可数の合計が該上限値を超えないように、前記メッセージ送信許可数を決定することを特徴とする請求項15記載のノード装置。
  18.  前記所定値は、前記第2の帯域内にシステム全体で送信可能なメッセージ数である上限値であり、
     前記メッセージ送信許可数決定手段は、前記記憶した要求数と該上限値に基づいて、全ノード装置による前記メッセージ送信許可数の合計が該上限値を超えないようにしつつ、前記優先順位の高いノード装置に優先的に割当てを行うことで前記メッセージ送信許可数を決定することを特徴とする請求項16記載のノード装置。
PCT/JP2017/001170 2016-02-22 2017-01-16 制御ネットワークシステム、そのノード装置 WO2017145567A1 (ja)

Priority Applications (4)

Application Number Priority Date Filing Date Title
EP17756009.1A EP3328003B1 (en) 2016-02-22 2017-01-16 Control network system and node device therein
JP2018501040A JP6665924B2 (ja) 2016-02-22 2017-01-16 制御ネットワークシステム、そのノード装置
KR1020187005115A KR101991114B1 (ko) 2016-02-22 2017-01-16 제어 네트워크 시스템, 그 노드 장치
CN201780002872.3A CN107925606B (zh) 2016-02-22 2017-01-16 控制网络系统及其节点装置

Applications Claiming Priority (2)

Application Number Priority Date Filing Date Title
JP2016031502 2016-02-22
JP2016-031502 2016-02-22

Publications (1)

Publication Number Publication Date
WO2017145567A1 true WO2017145567A1 (ja) 2017-08-31

Family

ID=59685032

Family Applications (1)

Application Number Title Priority Date Filing Date
PCT/JP2017/001170 WO2017145567A1 (ja) 2016-02-22 2017-01-16 制御ネットワークシステム、そのノード装置

Country Status (6)

Country Link
EP (1) EP3328003B1 (ja)
JP (1) JP6665924B2 (ja)
KR (1) KR101991114B1 (ja)
CN (1) CN107925606B (ja)
TW (1) TWI734743B (ja)
WO (1) WO2017145567A1 (ja)

Families Citing this family (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
WO2019171595A1 (ja) * 2018-03-09 2019-09-12 三菱電機株式会社 制御機器、通信方法および通信プログラム

Citations (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US20130128895A1 (en) * 2010-07-20 2013-05-23 Abb Research Ltd Frame transmission and communication network
JP2016005247A (ja) * 2014-06-19 2016-01-12 富士電機株式会社 ネットワーク伝送システム、そのマスタノード、スレーブノード

Family Cites Families (9)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US4975904A (en) * 1984-06-01 1990-12-04 Digital Equipment Corporation Local area network for digital data processing system including timer-regulated message transfer arrangement
JP4241343B2 (ja) 2003-11-26 2009-03-18 富士電機システムズ株式会社 送信タイミング決定方法、バス使用権の調停方法、ネットワークシステム、プログラム
WO2006044140A2 (en) * 2004-10-14 2006-04-27 Motorola, Inc. System and method for time synchronizing nodes in an automotive network
CN100566279C (zh) * 2005-12-09 2009-12-02 松下电器产业株式会社 网络系统及中继装置
CN101252426B (zh) * 2007-09-11 2011-05-11 北京东土科技股份有限公司 一种高可靠性分布式冗余环网的实现方法
KR101233915B1 (ko) * 2008-12-25 2013-02-15 미쓰비시덴키 가부시키가이샤 통신 관리 장치, 통신 장치 및 통신 방법
KR101277368B1 (ko) * 2008-12-25 2013-06-20 미쓰비시덴키 가부시키가이샤 통신 관리 장치, 통신 노드와 통신 시스템 및 데이터 통신 방법
KR101390842B1 (ko) 2012-04-27 2014-05-08 삼성중공업 주식회사 선박용 추진장치 및 이를 갖춘 선박
CN103763377B (zh) * 2014-01-24 2017-03-01 北京仿真中心 一种分布式仿真时间推进和消息传输的同步方法

Patent Citations (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US20130128895A1 (en) * 2010-07-20 2013-05-23 Abb Research Ltd Frame transmission and communication network
JP2016005247A (ja) * 2014-06-19 2016-01-12 富士電機株式会社 ネットワーク伝送システム、そのマスタノード、スレーブノード

Also Published As

Publication number Publication date
EP3328003B1 (en) 2019-05-15
TWI734743B (zh) 2021-08-01
JP6665924B2 (ja) 2020-03-13
KR20180031031A (ko) 2018-03-27
CN107925606A (zh) 2018-04-17
EP3328003A4 (en) 2018-07-11
EP3328003A1 (en) 2018-05-30
JPWO2017145567A1 (ja) 2018-06-14
CN107925606B (zh) 2021-02-26
KR101991114B1 (ko) 2019-06-19
TW201731257A (zh) 2017-09-01

Similar Documents

Publication Publication Date Title
Pedreiras et al. FTT-Ethernet: A flexible real-time communication protocol that supports dynamic QoS management on Ethernet-based systems
Tovar et al. Real-time fieldbus communications using Profibus networks
KR100259308B1 (ko) 네트워크 시스템의 전송제어방법
US9380577B2 (en) Method and device for collaborative data communication in a radio network
EP2453613B1 (en) Method and apparatus for allocating and prioritizing data transmission
CN101002413A (zh) 端点分组调度系统
CN111836312B (zh) 一种基于竞争的资源预约方法和设备
WO2017145567A1 (ja) 制御ネットワークシステム、そのノード装置
EP2498455A1 (en) Method and system to coordinate the communication channel access in a technology independent way in order to improve channel efficiency and to provide QoS guarantees
Ternon et al. FTT-openFlow, on the way towards real-time SDN
Tovar et al. Setting target rotation time in PROFIBUS based real-time distributed applications
JP6687114B2 (ja) 制御ネットワークシステム、そのノード装置
JP6528847B2 (ja) 制御ネットワークシステム、そのノード装置
US11442432B2 (en) Communication device and method for data transmission within an industrial communication network
Hanssen et al. RTnet: a distributed real-time protocol for broadcast-capable networks
Braun et al. Mode-Based Scheduling with Fast Mode-Signaling―A Method for Efficient Usage of Network Time Slots
JP2004048491A (ja) PON(PassiveOpticalNetwork)システム
Claesson et al. TT/sup ET: event-triggered channels on a time-triggered base
Du Online Admission Control for Multi-Switch Ethernet Networks

Legal Events

Date Code Title Description
ENP Entry into the national phase

Ref document number: 20187005115

Country of ref document: KR

Kind code of ref document: A

WWE Wipo information: entry into national phase

Ref document number: 2017756009

Country of ref document: EP

ENP Entry into the national phase

Ref document number: 2018501040

Country of ref document: JP

Kind code of ref document: A

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

Ref document number: 17756009

Country of ref document: EP

Kind code of ref document: A1

NENP Non-entry into the national phase

Ref country code: DE