CA2463743A1 - Method for operating an end-user of an isochronous cyclical communication system - Google Patents
Method for operating an end-user of an isochronous cyclical communication system Download PDFInfo
- Publication number
- CA2463743A1 CA2463743A1 CA002463743A CA2463743A CA2463743A1 CA 2463743 A1 CA2463743 A1 CA 2463743A1 CA 002463743 A CA002463743 A CA 002463743A CA 2463743 A CA2463743 A CA 2463743A CA 2463743 A1 CA2463743 A1 CA 2463743A1
- Authority
- CA
- Canada
- Prior art keywords
- end user
- user
- time
- data telegram
- communication
- Prior art date
- Legal status (The legal status 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 status listed.)
- Abandoned
Links
- 238000004891 communication Methods 0.000 title claims abstract description 120
- 230000006854 communication Effects 0.000 title claims abstract description 120
- 238000000034 method Methods 0.000 title claims abstract description 19
- 230000005540 biological transmission Effects 0.000 claims abstract description 78
- 238000012545 processing Methods 0.000 claims abstract description 6
- 239000000872 buffer Substances 0.000 claims description 33
- 230000000875 corresponding effect Effects 0.000 claims description 12
- 230000001360 synchronised effect Effects 0.000 claims description 10
- 238000004590 computer program Methods 0.000 claims description 5
- 230000015654 memory Effects 0.000 description 6
- 230000002123 temporal effect Effects 0.000 description 5
- 230000002269 spontaneous effect Effects 0.000 description 3
- 230000003139 buffering effect Effects 0.000 description 2
- 238000010586 diagram Methods 0.000 description 2
- 244000205754 Colocasia esculenta Species 0.000 description 1
- 235000006481 Colocasia esculenta Nutrition 0.000 description 1
- 206010052804 Drug tolerance Diseases 0.000 description 1
- 239000000919 ceramic Substances 0.000 description 1
- 230000001276 controlling effect Effects 0.000 description 1
- 230000001419 dependent effect Effects 0.000 description 1
- 239000011521 glass Substances 0.000 description 1
- 238000010348 incorporation Methods 0.000 description 1
- 230000003455 independent Effects 0.000 description 1
- 238000001746 injection moulding Methods 0.000 description 1
- 238000004519 manufacturing process Methods 0.000 description 1
- 238000012544 monitoring process Methods 0.000 description 1
- 230000006855 networking Effects 0.000 description 1
- 238000004806 packaging method and process Methods 0.000 description 1
- 230000002093 peripheral effect Effects 0.000 description 1
- 229920003023 plastic Polymers 0.000 description 1
- 239000004033 plastic Substances 0.000 description 1
- 238000007639 printing Methods 0.000 description 1
- 238000004886 process control Methods 0.000 description 1
- 230000001105 regulatory effect Effects 0.000 description 1
- 230000004044 response Effects 0.000 description 1
- 239000004753 textile Substances 0.000 description 1
- 230000001960 triggered effect Effects 0.000 description 1
Classifications
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04J—MULTIPLEX COMMUNICATION
- H04J3/00—Time-division multiplex systems
- H04J3/02—Details
- H04J3/06—Synchronising arrangements
- H04J3/0635—Clock or time synchronisation in a network
- H04J3/0638—Clock or time synchronisation among nodes; Internode synchronisation
- H04J3/0652—Synchronisation among time division multiple access [TDMA] nodes, e.g. time triggered protocol [TTP]
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04J—MULTIPLEX COMMUNICATION
- H04J3/00—Time-division multiplex systems
- H04J3/02—Details
- H04J3/06—Synchronising arrangements
- H04J3/0635—Clock or time synchronisation in a network
- H04J3/0682—Clock or time synchronisation in a network by delay compensation, e.g. by compensation of propagation delay or variations thereof, by ranging
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04J—MULTIPLEX COMMUNICATION
- H04J3/00—Time-division multiplex systems
- H04J3/02—Details
- H04J3/06—Synchronising arrangements
- H04J3/0635—Clock or time synchronisation in a network
- H04J3/0685—Clock or time synchronisation in a node; Intranode synchronisation
- H04J3/0694—Synchronisation in a TDMA node, e.g. TTP
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L12/00—Data switching networks
- H04L12/64—Hybrid switching systems
- H04L12/6418—Hybrid transport
- H04L2012/6445—Admission control
- H04L2012/6448—Medium Access Control [MAC]
- H04L2012/6454—Random, e.g. Ethernet
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L12/00—Data switching networks
- H04L12/64—Hybrid switching systems
- H04L12/6418—Hybrid transport
- H04L2012/6445—Admission control
- H04L2012/6462—Movable boundaries in packets or frames
Landscapes
- Engineering & Computer Science (AREA)
- Computer Networks & Wireless Communication (AREA)
- Signal Processing (AREA)
- Small-Scale Networks (AREA)
- Data Exchanges In Wide-Area Networks (AREA)
- Computer And Data Communications (AREA)
- Input Circuits Of Receivers And Coupling Of Receivers And Audio Equipment (AREA)
- Radio Relay Systems (AREA)
- Transmitters (AREA)
- Communication Control (AREA)
Abstract
The invention relates to a method for operating an end-user (306) of an isochronous cyclical communication system (300), comprising the following steps: receipt of a synchronisation data telegramme (510) from a connecting user (303) in the communication system (300) by the end-user (306), whereby the synchronisation data telegramme is affected by the run time (T, T1, T2) of a transmission run between the connecting user and the end-user, synchronisation of a time base of the end-user (306) by means of the synchronisation data telegramme, resulting in a synchronisation of the time base with a tolerance corresponding to the run time, cyclical processing of a transmission list by the end user (306) within a communication cycle (500, 502) corresponding to the time base of the end user, whereby the transmission of a data telegramme (700) occurs according to the transmission list from the end user to the connecting user at the earliest at the beginning of the communication cycle (500, 502) and at the latest at a point equivalent to the tolerance (T) before the projected transfer time point of the relevant data telegramme by the communication user (303).
Description
a ~ , WO X3/036832 CA 02463743 2004-04-15 PCT/DE02/03752 Description Method for operating an end user of an isochronous cyclical communication system The invention relates to a method for operating an end user of an isochronous communication system and to an end user, a con-necting user, and corresponding computer program products.
A synchronous, clocked communication system with equidistance properties is understood as being a system comprising at least two users interconnected via a data network for the purpose of reciprocally exchanging or, as the case may be, reciprocally transmitting data. Data is thereby exchanged cyclically in equidistant communication cycles predefined by the communica-tion clock employed by the system.
An equidistant deterministic cyclical data exchange in commu nication systems is based on a clock or, as the case may be, time base shared by all the components participating in the communication. The clock or, as the case may be, time base is transmitted to the other components by an indicated component (clock beater). In the case of isochronous realtime Ethernet the clock or, as the case may be, time base is predefined by a synchronizing master by the transmission of synchronizing telegrams.
Users are, for example, central automation devices, program-ming, planning or operating devices, peripheral devices such as, for example, input/output modules, drives, actuators, sen-sors, stored-program controls (SPCs), or other control units, computers, or machines which exchange electronic data with other machines, in particular which process data from other machines. Users are also referred to as network nodes or nodes. Control units are understood below as being regulating or controlling units of any kind, but also, for example, switches and/or switch controllers. Bus systems, for example, including Fieldbus, Profibus, Ethernet, Industrial Ethernet, FireWire, and also PC-internal bus systems (PCI), etc., but in particular also isochronous realtime Ethernet, are employed as data networks.
Data networks make communication between several users possi-ble by networking, which is to say interconnecting individual said users. Communication here denotes the transmission of data between said users. The data being transmitted is thereby sent in the form of data telegrams, which is to say the data is packed into a plurality of packets and sent in this form to the relevant recipient over the data network. The term "data packets" is accordingly also used. The term "transmission of data" is here used synonymously with the above-mentioned transmission of data telegrams or data packets.
In distributed automation systems, in the area of, for exam-ple, drive engineering, specific data has to be received at specific times by the users for which it is intended and proc-essed by the recipients. The term realtime-critical data or, as the case may be, data traffic is used here because, in con-trast to non-realtime-critical, for example Internet-based or, as the case may be, intranet-based data communication, failure of the data to arrive at its destination at the proper time will have undesired results for the user. According to IEC
61491, EN61491 SERCOS interface - Brief Technical Description (http://www.sercos.de/deutsch/index deutsch.htm), it is possi-ble to ensure successful realtime-critical data traffic of said type in distributed automation systems.
A synchronous, clocked communication system with equidistance properties is understood as being a system comprising at least two users interconnected via a data network for the purpose of reciprocally exchanging or, as the case may be, reciprocally transmitting data. Data is thereby exchanged cyclically in equidistant communication cycles predefined by the communica-tion clock employed by the system.
An equidistant deterministic cyclical data exchange in commu nication systems is based on a clock or, as the case may be, time base shared by all the components participating in the communication. The clock or, as the case may be, time base is transmitted to the other components by an indicated component (clock beater). In the case of isochronous realtime Ethernet the clock or, as the case may be, time base is predefined by a synchronizing master by the transmission of synchronizing telegrams.
Users are, for example, central automation devices, program-ming, planning or operating devices, peripheral devices such as, for example, input/output modules, drives, actuators, sen-sors, stored-program controls (SPCs), or other control units, computers, or machines which exchange electronic data with other machines, in particular which process data from other machines. Users are also referred to as network nodes or nodes. Control units are understood below as being regulating or controlling units of any kind, but also, for example, switches and/or switch controllers. Bus systems, for example, including Fieldbus, Profibus, Ethernet, Industrial Ethernet, FireWire, and also PC-internal bus systems (PCI), etc., but in particular also isochronous realtime Ethernet, are employed as data networks.
Data networks make communication between several users possi-ble by networking, which is to say interconnecting individual said users. Communication here denotes the transmission of data between said users. The data being transmitted is thereby sent in the form of data telegrams, which is to say the data is packed into a plurality of packets and sent in this form to the relevant recipient over the data network. The term "data packets" is accordingly also used. The term "transmission of data" is here used synonymously with the above-mentioned transmission of data telegrams or data packets.
In distributed automation systems, in the area of, for exam-ple, drive engineering, specific data has to be received at specific times by the users for which it is intended and proc-essed by the recipients. The term realtime-critical data or, as the case may be, data traffic is used here because, in con-trast to non-realtime-critical, for example Internet-based or, as the case may be, intranet-based data communication, failure of the data to arrive at its destination at the proper time will have undesired results for the user. According to IEC
61491, EN61491 SERCOS interface - Brief Technical Description (http://www.sercos.de/deutsch/index deutsch.htm), it is possi-ble to ensure successful realtime-critical data traffic of said type in distributed automation systems.
Today's automation components (for example controls, drives, ...) generally have an interface to a cyclically clocked com-munication system. A flow level of the automation component (fast cycle) (for example position regulation in a control, torque regulation of a drive) is synchronized with the commu-nication cycle. This determines the communication clock.
Other, low-performance algorithms (slow cycle) (temperature controls, for example) of the automation component can also only communicate with other components (for example binary switches for ventilators, pumps, ...) via this communication clock, although a slower cycle would suffice. The use of only one communication clock for transmitting all the information in the system places stringent demands on the bandwidth of the transmission link.
Very fast and reliable communication systems with predictable response times are essential for process control and monitor ing in automated production, and in particular in the case of digital drive systems.
German patent application DE 100 58 524.8 discloses a system and method for transmitting data over switchable data net-works, in particular the Ethernet, which permits the mixed op-eration of realtime-critical and non-realtime-critical commu-nication, in particular Internet-based or, as the case may be, intranet-based data communication.
This makes both realtime-critical (RT: Realtime) and non-realtime-critical (NRT: Non-realtime) communication possible in a switchable data network consisting of users and switching units of, for example, a distributed automation system, by means of cyclical operation.
Other, low-performance algorithms (slow cycle) (temperature controls, for example) of the automation component can also only communicate with other components (for example binary switches for ventilators, pumps, ...) via this communication clock, although a slower cycle would suffice. The use of only one communication clock for transmitting all the information in the system places stringent demands on the bandwidth of the transmission link.
Very fast and reliable communication systems with predictable response times are essential for process control and monitor ing in automated production, and in particular in the case of digital drive systems.
German patent application DE 100 58 524.8 discloses a system and method for transmitting data over switchable data net-works, in particular the Ethernet, which permits the mixed op-eration of realtime-critical and non-realtime-critical commu-nication, in particular Internet-based or, as the case may be, intranet-based data communication.
This makes both realtime-critical (RT: Realtime) and non-realtime-critical (NRT: Non-realtime) communication possible in a switchable data network consisting of users and switching units of, for example, a distributed automation system, by means of cyclical operation.
In what is termed a transmission cycle, for all users and switching units of the switchable data network there is in each case at least one time range for transmitting realtime-critical and at least one time range for transmitting non-realtime-critical data, as a consequence of which realtime-critical is separated from non-realtime-critical communica-tion. As users and switching units are always all synchronized with a common time base, the respective time ranges for trans-mitting data operate at the same time for all users and switching units, which is to say realtime-critical communica-tion takes place temporally independently of non-realtime-critical communication and so is not influenced by it.
Realtime-critical communication is planned in advance. The in-jection of the data telegrams at the original sender's side and the forwarding of said telegrams by means of the partici-pating switching units takes place on a time basis. Through buffering in the respective switching units, spontaneous, Internet-enabled, non-realtime-critical communication arising at any time is relocated to the transmission time range of a transmission cycle provided for non-realtime-critical communi-cation and is only transmitted there.
This patent application presents, by way of example, the em-bodiment of a basic structure of a transmission cycle which is divided into two time ranges. A transmission cycle is divided into a first time range, which is provided for transmitting realtime-critical data, and a second time range, which is pro-vided for transmitting non-realtime-critical data. The length of the transmission cycle presented symbolizes its temporal duration, which is advantageously between, for example, a few microseconds and a few seconds, depending on the intended pur-pose.
Although the length of a transmission cycle can be changed, it 5 is specified at least once ahead of the data transmission time by means of, for example, a control computer, and is in each case of equal length for all users and switching units of the switchable data network. The length of a transmission cycle and/or the length of the first time range provided for trans-mitting realtime-critical data can be changed at any time, for example at pre-planned, fixed times and/or after a planned number of transmission cycles, advantageously before the start of a transmission cycle, by means, for example, of the control computer's switching over to other planned, realtime-critical transmission cycles.
Moreover, the control computer can at any time, depending on the requirements, perform re-planning of realtime communica-tion during ongoing operation of an automation system, as a consequence of which the length of the RT partial cycle can be changed. The absolute length of a transmission cycle remains constant during ongoing operation and is a measure of the tem-poral portion, or, as the case may be, of the bandwidth of non-realtime-critical communication during a transmission cy-cle, which is to say of the time available for non-realtime-critical communication.
For a length of realtime-critical communication of 350 us and a transmission cycle of 500 us, for example, non-realtime-critical communication accordingly has a bandwidth of 300, and for 10 ms a bandwidth of 97%. In the first time range provided for transmitting realtime-critical data a certain length of time is reserved prior to transmission of the actual realtime-critical data telegrams for sending data telegrams for organ-izing the data transmission.
The data telegrams for organizing the data transmission con-s taro, for example, data for synchronizing the users and switching units of the data network and/or data for recogniz-ing the network's topology. The realtime-critical data tele-grams are transmitted after these data telegrams have been transmitted. Since realtime communication can be planned in advance by the cyclical operation, the transmission times or, as the case may be, the times for forwarding the realtime-critical data telegrams are known for all realtime-critical data telegrams being transmitted prior to the start of data ~_~~.i,en~--wh.~~-~,s_~.a...~~__~gth of time of they range for transmitting non-realtime-critical data is autom~
tically determined by the length of time of the time ra ge for transmitting realtime-critical data.
An advantage of this arrangement is that only~he necessary transmission time for the realtime-critic data traffic is used in each case and that on completi~ff of said traffic the remaining time is automatically avable for non-realtime-critical communication, for exa~rple for Internet communication which cannot be planned or,,,a''s the case may be, for other non-realtime-critical applic~ons.
It is particularly,~'advantageous that the length of time of the time range for ~nsmitting realtime-critical data is in each case determi,r~''ed by the data being transmitted on a connection-specific,b'asis, which is to say the length of time of the two time ramges is determined for each individual data connection by t'he respectively necessary volume of data of the realtime-c r i t i c a 1 d ~ffg ~ r a n s m i t t e~ ; ~~a--~-a o~e~s~e.~.~e.-e.~....~zh.i,ch_..a h a PCT~DE02/03752 CA 02463743 2004-04-15 6q transmission, which is to say the length of time of the time range for transmitting non-realtime-critical data is automa-tically determined by the length of time of the time range for transmitting realtime-critical data.
An advantage of this arrangement is that only the necessary transmission time for the realtime-critical data traffic is used in each case and that on completion of said traffic the remaining time is automatically available for non-realtime-critical communication, for example for Internet communication which cannot be planned or, as the case may be, for other non-realtime-critical applications.
It is particularly advantageous that the length of time of the time range for transmitting realtime-critical data is in each case determined by the data being transmitted on a connection-specific basis, which is to say the length of time of the two time ranges is determined for each individual data connection by the respectively necessary volume of data of the realtime-critical data being transmitted, as a consequence of which the temporal division of the two time ranges for each individual data connection can be different for each transmission cycle.
Only the necessary transmission time for the realtime-critical data traffic is used in each case and the remaining time of a transmission cycle is automatically available for all users of the switchable data network for non-realtime-critical communi-cation, for example for Internet communication which cannot be planned or, as the case may be, for other non-realtime-critical applications.
Realtime communication being appropriately planned in advance such that the realtime-critical data telegrams under consid-AMENDED SHEET
Realtime-critical communication is planned in advance. The in-jection of the data telegrams at the original sender's side and the forwarding of said telegrams by means of the partici-pating switching units takes place on a time basis. Through buffering in the respective switching units, spontaneous, Internet-enabled, non-realtime-critical communication arising at any time is relocated to the transmission time range of a transmission cycle provided for non-realtime-critical communi-cation and is only transmitted there.
This patent application presents, by way of example, the em-bodiment of a basic structure of a transmission cycle which is divided into two time ranges. A transmission cycle is divided into a first time range, which is provided for transmitting realtime-critical data, and a second time range, which is pro-vided for transmitting non-realtime-critical data. The length of the transmission cycle presented symbolizes its temporal duration, which is advantageously between, for example, a few microseconds and a few seconds, depending on the intended pur-pose.
Although the length of a transmission cycle can be changed, it 5 is specified at least once ahead of the data transmission time by means of, for example, a control computer, and is in each case of equal length for all users and switching units of the switchable data network. The length of a transmission cycle and/or the length of the first time range provided for trans-mitting realtime-critical data can be changed at any time, for example at pre-planned, fixed times and/or after a planned number of transmission cycles, advantageously before the start of a transmission cycle, by means, for example, of the control computer's switching over to other planned, realtime-critical transmission cycles.
Moreover, the control computer can at any time, depending on the requirements, perform re-planning of realtime communica-tion during ongoing operation of an automation system, as a consequence of which the length of the RT partial cycle can be changed. The absolute length of a transmission cycle remains constant during ongoing operation and is a measure of the tem-poral portion, or, as the case may be, of the bandwidth of non-realtime-critical communication during a transmission cy-cle, which is to say of the time available for non-realtime-critical communication.
For a length of realtime-critical communication of 350 us and a transmission cycle of 500 us, for example, non-realtime-critical communication accordingly has a bandwidth of 300, and for 10 ms a bandwidth of 97%. In the first time range provided for transmitting realtime-critical data a certain length of time is reserved prior to transmission of the actual realtime-critical data telegrams for sending data telegrams for organ-izing the data transmission.
The data telegrams for organizing the data transmission con-s taro, for example, data for synchronizing the users and switching units of the data network and/or data for recogniz-ing the network's topology. The realtime-critical data tele-grams are transmitted after these data telegrams have been transmitted. Since realtime communication can be planned in advance by the cyclical operation, the transmission times or, as the case may be, the times for forwarding the realtime-critical data telegrams are known for all realtime-critical data telegrams being transmitted prior to the start of data ~_~~.i,en~--wh.~~-~,s_~.a...~~__~gth of time of they range for transmitting non-realtime-critical data is autom~
tically determined by the length of time of the time ra ge for transmitting realtime-critical data.
An advantage of this arrangement is that only~he necessary transmission time for the realtime-critic data traffic is used in each case and that on completi~ff of said traffic the remaining time is automatically avable for non-realtime-critical communication, for exa~rple for Internet communication which cannot be planned or,,,a''s the case may be, for other non-realtime-critical applic~ons.
It is particularly,~'advantageous that the length of time of the time range for ~nsmitting realtime-critical data is in each case determi,r~''ed by the data being transmitted on a connection-specific,b'asis, which is to say the length of time of the two time ramges is determined for each individual data connection by t'he respectively necessary volume of data of the realtime-c r i t i c a 1 d ~ffg ~ r a n s m i t t e~ ; ~~a--~-a o~e~s~e.~.~e.-e.~....~zh.i,ch_..a h a PCT~DE02/03752 CA 02463743 2004-04-15 6q transmission, which is to say the length of time of the time range for transmitting non-realtime-critical data is automa-tically determined by the length of time of the time range for transmitting realtime-critical data.
An advantage of this arrangement is that only the necessary transmission time for the realtime-critical data traffic is used in each case and that on completion of said traffic the remaining time is automatically available for non-realtime-critical communication, for example for Internet communication which cannot be planned or, as the case may be, for other non-realtime-critical applications.
It is particularly advantageous that the length of time of the time range for transmitting realtime-critical data is in each case determined by the data being transmitted on a connection-specific basis, which is to say the length of time of the two time ranges is determined for each individual data connection by the respectively necessary volume of data of the realtime-critical data being transmitted, as a consequence of which the temporal division of the two time ranges for each individual data connection can be different for each transmission cycle.
Only the necessary transmission time for the realtime-critical data traffic is used in each case and the remaining time of a transmission cycle is automatically available for all users of the switchable data network for non-realtime-critical communi-cation, for example for Internet communication which cannot be planned or, as the case may be, for other non-realtime-critical applications.
Realtime communication being appropriately planned in advance such that the realtime-critical data telegrams under consid-AMENDED SHEET
eration arrive at or in the corresponding switching units at or before the forwarding time, said realtime AMENDED SHEET
_ tempor.al_..d.,~.~l..~sion. o_~...~h~o--.-~-i-me. ~.s..W.~.~..~~.
data connection can be different for each transmission cycle.
Only the necessary transmission time for the re'altime-critical data traffic is used in each case and the:~emaining time of a transmission cycle is automatically ~~ailable for all users of the switchable data network for noii-realtime-critical communi cation, for example for intern2t communication which cannot be .ry~
planned or, as the case ma~~be, for other non-realtime-critical applications.
Realtime communi,,~ation being appropriately planned in advance such that the,~arrival of the realtime-critical data telegrams in the re~vant switching units is planned such that the real-time-c~tical data telegrams under consideration will arrive at ~'fie relevant switching units no later, or sooner, than the forwarding times said r~a.lcritical data telegrams can be transmitted or, as the case may be, forwarded without a tempo-ral pause, so that optimum use is made of the available length of time thanks to the densely packed transmission, or, as the case may be, forwarding. It is, however, of course also possi-ble to insert pauses in transmission between transmissions of the individual data telegrams.
The basic mode of operation in a switched network is explained - in an exemplary manner by way of representation for any net-work - below using two users, for example a drive and a con-trol computer, with in each case integrated switching units and another user without a switching unit which are intercon-nected by means of data connections. The switching units each have local memories connected to the users via internal inter-faces.
_ tempor.al_..d.,~.~l..~sion. o_~...~h~o--.-~-i-me. ~.s..W.~.~..~~.
data connection can be different for each transmission cycle.
Only the necessary transmission time for the re'altime-critical data traffic is used in each case and the:~emaining time of a transmission cycle is automatically ~~ailable for all users of the switchable data network for noii-realtime-critical communi cation, for example for intern2t communication which cannot be .ry~
planned or, as the case ma~~be, for other non-realtime-critical applications.
Realtime communi,,~ation being appropriately planned in advance such that the,~arrival of the realtime-critical data telegrams in the re~vant switching units is planned such that the real-time-c~tical data telegrams under consideration will arrive at ~'fie relevant switching units no later, or sooner, than the forwarding times said r~a.lcritical data telegrams can be transmitted or, as the case may be, forwarded without a tempo-ral pause, so that optimum use is made of the available length of time thanks to the densely packed transmission, or, as the case may be, forwarding. It is, however, of course also possi-ble to insert pauses in transmission between transmissions of the individual data telegrams.
The basic mode of operation in a switched network is explained - in an exemplary manner by way of representation for any net-work - below using two users, for example a drive and a con-trol computer, with in each case integrated switching units and another user without a switching unit which are intercon-nected by means of data connections. The switching units each have local memories connected to the users via internal inter-faces.
The users exchange data with the relevant switching units over the interfaces. The local memories are connected within the switching units to the control units via the data connections.
The control units receive or, as the case may be, forward data over the internal data connections from or, as the case may be, to the local memories or via one or more of the external ports. The switching units always have a common synchronous time base as a result of applying the method for synchroniz-ing. If a user has realtime-critical data, said data is fetched at the pre-planned time during the time range for re-altime-critical communication via the relevant interface and via the local memory by the relevant control unit and trans-mitted from there to the next connected switching unit via the external port provided.
If another user transmits non-realtime-critical data, for ex-ample for an Internet inquiry, at the same time, which is to say during realtime-critical communication, said data is re-ceived by the control unit via the external port and forwarded via an internal connection to the local memory and buffered there. Not until during the time range for non-realtime-critical communication is it fetched again from there and for-warded to the recipient, which is to say it is relocated into the second time range of the transmission cycle reserved for spontaneous, non-realtime-critical communication, as a conse-quence of which disruptions to realtime communication are pre-cluded.
For the event of its not being possible to transmit all the buffered, non-realtime-critical data during the time range of a transmission cycle provided for transmitting the non-realtime-critical data, said data will remain buffered in the relevant switching unit's local memory until it can be trans-mitted during a time range of a later transmission cycle pro-vided for transmitting the non-realtime-critical data, as a consequence of which disruptions to realtime communication are always precluded.
The realtime-critical data telegrams arriving over relevant data connections at the associated switching unit's control unit via the external ports are forwarded directly over the relevant external ports. This is possible because realtime communication has been planned in advance so the transmit and receive time is known for all realtime-critical data telegrams being transmitted, as are all respectively participating switching units, and all times for forwarding, and all recipi-ents of the realtime-critical data telegrams.
It is also ensured thanks to realtime communication having been planned in advance that there will be no data collisions on the data connections. The forwarding times of all realtime-critical data packets from the respectively participating switching units have likewise been planned in advance and hence clearly defined. The arrival of the realtime-critical data telegrams has thus been planned such that the realtime-critical data telegrams under consideration will arrive in the relevant switching unit's control unit no later, or sooner, than the forwarding time. This thereby eliminates the problem of temporal non-clarity apparent particularly in the case of long transmission chains.
It is possible by means of the method described in German pat-ent application DE 100 58 524.8 to set up Ethernet-based com-munication networks, in particular isochronous Ethernet-based communication networks, - whose nodes operate synchronously in the sub-microsecond range, and - which carry out cyclical communication precisely at the 5 planned times (isochronous realtime communication) inde-pendently of any other, spontaneous communication (NRT communication or non-realtime communication) on or, as the case may be, in said network.
The control units receive or, as the case may be, forward data over the internal data connections from or, as the case may be, to the local memories or via one or more of the external ports. The switching units always have a common synchronous time base as a result of applying the method for synchroniz-ing. If a user has realtime-critical data, said data is fetched at the pre-planned time during the time range for re-altime-critical communication via the relevant interface and via the local memory by the relevant control unit and trans-mitted from there to the next connected switching unit via the external port provided.
If another user transmits non-realtime-critical data, for ex-ample for an Internet inquiry, at the same time, which is to say during realtime-critical communication, said data is re-ceived by the control unit via the external port and forwarded via an internal connection to the local memory and buffered there. Not until during the time range for non-realtime-critical communication is it fetched again from there and for-warded to the recipient, which is to say it is relocated into the second time range of the transmission cycle reserved for spontaneous, non-realtime-critical communication, as a conse-quence of which disruptions to realtime communication are pre-cluded.
For the event of its not being possible to transmit all the buffered, non-realtime-critical data during the time range of a transmission cycle provided for transmitting the non-realtime-critical data, said data will remain buffered in the relevant switching unit's local memory until it can be trans-mitted during a time range of a later transmission cycle pro-vided for transmitting the non-realtime-critical data, as a consequence of which disruptions to realtime communication are always precluded.
The realtime-critical data telegrams arriving over relevant data connections at the associated switching unit's control unit via the external ports are forwarded directly over the relevant external ports. This is possible because realtime communication has been planned in advance so the transmit and receive time is known for all realtime-critical data telegrams being transmitted, as are all respectively participating switching units, and all times for forwarding, and all recipi-ents of the realtime-critical data telegrams.
It is also ensured thanks to realtime communication having been planned in advance that there will be no data collisions on the data connections. The forwarding times of all realtime-critical data packets from the respectively participating switching units have likewise been planned in advance and hence clearly defined. The arrival of the realtime-critical data telegrams has thus been planned such that the realtime-critical data telegrams under consideration will arrive in the relevant switching unit's control unit no later, or sooner, than the forwarding time. This thereby eliminates the problem of temporal non-clarity apparent particularly in the case of long transmission chains.
It is possible by means of the method described in German pat-ent application DE 100 58 524.8 to set up Ethernet-based com-munication networks, in particular isochronous Ethernet-based communication networks, - whose nodes operate synchronously in the sub-microsecond range, and - which carry out cyclical communication precisely at the 5 planned times (isochronous realtime communication) inde-pendently of any other, spontaneous communication (NRT communication or non-realtime communication) on or, as the case may be, in said network.
10 All participants in isochronous realtime communication must, however, be based on specific communication hardware in order to - achieve time synchronicity, and - send telegrams precisely at the planned time.
The prior art does not permit the incorporation into isochro-nous realtime communication, referred to below as IRT communi-cation, of users with an existing Ethernet connection for which said specific hardware has not been provided.
The object of the invention is accordingly to disclose an im-proved method for operating an end user of an isochronous cy-clical communication system permitting the connection to a communication system of a said type of end user not provided with specific hardware support of said type. A further object of the invention is to disclose a corresponding end user, con-necting user, and computer program products.
The objects of the invention are respectively achieved by means of the features of the independent claims. Preferred em-bodiments of the invention will emerge from the dependent claims.
The present invention starts from the knowledge that the la-tency between a data telegram's arrival at a user, for example an Ethernet user, and the triggering of a corresponding inter-rupt is constant and capable of being determined if the re-ceive buffer is empty, which is to say no telegrams have been stored in the end user's receive path. An empty receive path of said type is referred to below as an empty connection.
To achieve approximate synchronizing of the end user with the time base of the isochronous cyclical communication system, the end user receives synchronizing data telegrams from an im-mediately adjacent connecting user in different communication cycles. Synchronizing data telegrams of said type are employed within the isochronous cyclical communication system for syn-chronizing the time bases of the individual users of the com-munication system. Precise synchronizing, as takes place for the users of the isochronous communication system, is not pos-sible on account of the lack of hardware support in the end user. The time base in the end user is synchronized instead with a tolerance resulting from the overall transmission time between the connecting user and end user.
According to a preferred embodiment of the invention, the end user has a receive buffer. When the receive buffer it filled to its maximum capacity, the end user requires a maximum emp-tying time to empty the receive buffer. If there is a receive buffer in the end user, the overall transmission time of a synchronizing data telegram will therefore only be determined if the end user's receive buffer is empty when the synchroniz-ing data telegram is received.
The prior art does not permit the incorporation into isochro-nous realtime communication, referred to below as IRT communi-cation, of users with an existing Ethernet connection for which said specific hardware has not been provided.
The object of the invention is accordingly to disclose an im-proved method for operating an end user of an isochronous cy-clical communication system permitting the connection to a communication system of a said type of end user not provided with specific hardware support of said type. A further object of the invention is to disclose a corresponding end user, con-necting user, and computer program products.
The objects of the invention are respectively achieved by means of the features of the independent claims. Preferred em-bodiments of the invention will emerge from the dependent claims.
The present invention starts from the knowledge that the la-tency between a data telegram's arrival at a user, for example an Ethernet user, and the triggering of a corresponding inter-rupt is constant and capable of being determined if the re-ceive buffer is empty, which is to say no telegrams have been stored in the end user's receive path. An empty receive path of said type is referred to below as an empty connection.
To achieve approximate synchronizing of the end user with the time base of the isochronous cyclical communication system, the end user receives synchronizing data telegrams from an im-mediately adjacent connecting user in different communication cycles. Synchronizing data telegrams of said type are employed within the isochronous cyclical communication system for syn-chronizing the time bases of the individual users of the com-munication system. Precise synchronizing, as takes place for the users of the isochronous communication system, is not pos-sible on account of the lack of hardware support in the end user. The time base in the end user is synchronized instead with a tolerance resulting from the overall transmission time between the connecting user and end user.
According to a preferred embodiment of the invention, the end user has a receive buffer. When the receive buffer it filled to its maximum capacity, the end user requires a maximum emp-tying time to empty the receive buffer. If there is a receive buffer in the end user, the overall transmission time of a synchronizing data telegram will therefore only be determined if the end user's receive buffer is empty when the synchroniz-ing data telegram is received.
A synchronizing data telegram of this type is therefore trans-mitted in this embodiment by the connecting user no earlier than after a pause in transmission after the start of the com-munication cycle, with said pause in transmission correspond-ing to the maximum emptying time. This will ensure that a syn-chronizing data telegram sent by the connecting user to the end user will encounter an empty receive buffer of the end user and hence that the overall transmission time is independ-ent of the length of a data telegram previously received by the end user.
So that a data telegram can be injected into the isochronous cyclical communication system by the end user with the impre-cisely synchronized time base, according to the invention a data telegram of said type is always sent by the end user to its adjacent connecting user no earlier than at the start of the communication cycle and no later than by the length of tolerance time of synchronizing the end user's time base be-fore the connecting user's forwarding time. Because the data telegram is sent at a time preceding the forwarding time at least by the length of tolerance time, it is ensured that the connecting user will receive the data telegram from the end user no later than at a time which will enable forwarding of the data telegram according to the planned time of forwarding.
To summarize, the disclosed invention is a system and method for realtime communication in communication systems with users without hardware support for realtime capability and with us-ers with hardware support for realtime capability, wherein - the propagation time, in particular the constant propaga-tion time of a telegram from a second user to a first user, is used to synchronize the first user with all other users, - the propagation time, in particular the constant propaga-tion time of a telegram of said type, is guaranteed by means of a preceding pause in transmission, - owing to a receive buffer at the second user, the first user is able to send realtime telegrams in a temporally im-precise manner and only forwarding from said receive buffer has to take place with a high degree of time accuracy, - the receive buffer at the second user is able to buffer several telegrams of the first user.
It is, moreover, particularly advantageous that the disclosed methods can be employed or utilized in automation systems, in particular for and in packaging machines, presses, plastics injection-molding machines, textile machines, printing ma-chines, machine tools, robots, handling systems, timber proc-essing machines, glass processing machines, ceramics process-ing machines, and hoisting gear.
Preferred exemplary embodiments of the invention are explained in more detail below with reference to the drawings.
Fig. l: shows an embodiment of a method according to the in-vention for synchronizing the time base of an end user without hardware support, Fig. 2: is a flowchart of the sending of data telegrams by the end user with the imprecisely synchronized time base, Fig. 3: shows an embodiment of a communication system accord-ing to the invention, Fig. 4: is a schematic of synchronizing and of determining the propagation time, Fig. 5: is a representation clarifying the necessary pause in transmission at the connecting user, Fig. 6: is a schematic of buffering in the connecting user's receive buffer, and Fig. 7: is a representation clarifying the transmit and re-ceive times.
Figure 1 is a flowchart of synchronizing an end user's time base. In step 100, a synchronizing data telegram is sent from a connecting user situated immediately adjacent to the end user and located in the realtime domain of an isochronous cy-clical communication system to the end user, with said end user's receive buffer being empty at the transmit time or at least at the receive time which can be pre-determined.
The synchronizing data telegram is transmitted in step 102 over a cable interconnecting the connecting user and end user.
Said transmission is subject to a propagation time T1.
The synchronizing data telegram is received in step 104 in the receive buffer of the end user's empty connection. An inter-rupt is triggered in step 106 after a determined latency T2 following reception. The contents of the synchronizing data telegram are evaluated owing to the interrupt and the end user's time base is adjusted accordingly. Said synchronizing of the time base of the end user with tolerance T = Tl + T2 takes place in step 108.
5 Step 100 is repeated a certain period of time later, which is to say that another synchronizing data telegram is sent by the connecting user. This corresponds to the procedure in the re-altime domain because the users' time bases also need to be adjusted from time to time.
Figure 2 shows the procedure for sending data telegrams from the end user into the isochronous cyclical communication sys-tem. A data telegram is generated in the end user in step 200 according to a transmission list to be processed cyclically.
Said transmission list is produced while the communication system is being planned.
The planned data telegram is sent in step 202 to the immedi-ately adjacent connecting user. It is sent no earlier than at the start of the communication cycle and no later than at a time T before the connecting user's forwarding time. If the communication system has a communication cycle which can be divided into a realtime (RT) partial cycle and a non-realtime (NRT) partial cycle, the data telegram will be sent no earlier than at the start of the RT partial cycle.
Figure 3 is a schematic of an embodiment of a system according to the invention. Said system includes a communication system 300 which is suitable for isochronous cyclical realtime commu-nication. Connecting users 302 and 303 and end users 304 be-long to communication system 300. Both connecting users 302 and 303 and end users 304 have specific hardware support for attaining a high degree of time accuracy of the synchronicity of the time bases and for attaining a fast data throughput rate and a large number of telegrams.
Also connected to communication system 300 via connecting us-ers 303 are end users 306 not having specific hardware support of this type. Said end users 306 are approximately synchro-nized, for example according to the embodiment shown in Figure 1, with the time base of communication system 300 and send data telegrams according to the embodiment shown in Figure 2 into communication system 300.
Figure 4 shows a possible procedure for determining the toler-ance T (see also Figure 1).
In the exemplary embodiment shown, one of the connecting users 303 is connected via a cable 308 to one of the end users 306.
A transmission link between connecting user 303 and an Ethernet connection 310 of end user 306 is provided by means of cable 308. Said cable 308 has a maximum length of, for in-stance, 100 meters, giving a propagation time Tl of 0.25 ms ~
0.25 ms.
When the receive buffer of Ethernet connection 310 is empty, the time up to the triggering of an interrupt in end user 306 is determined and constant. A fitter of the interrupt latency may in certain circumstances be added to this, giving in total the latency T2 after reception of the data telegram in the Ethernet connection 310. The time base of end user 306 is then adjusted with tolerance T.
Figure 5 shows a communication cycle 500 of a connecting user of communication system 300 (see also Figure 3) of, for exam-ple, 5 ms. Communication cycle 500 is divided into a partial _,_ .. . . .~.a~~.a.....ww...
WO 03/036$32 PCT/DE02/03752 cycle 502 for realtime communication and a partial cycle 504 for non-realtime communication. Realtime data telegrams 506 or, as the case may be, non-realtime data telegrams 508 are sent both during partial cycle 502 and during partial cycle 504 by, for example, connecting user 303.
In the exemplary embodiments under consideration here, data telegram 510 in partial cycle 502 is a synchronizing data telegram. Said telegram is sent from connecting user 303 to its adjacent end user 306 (see also Figure 3). In the exem-plary embodiment under consideration here, the end user has a receive buffer in its Ethernet connection 310 (see also Figure 4). End user 306 requires a maximum emptying time to com-pletely empty the receive buffer.
So that the time base in end user 306 can be synchronized with tolerance T, the connecting user does not send data telegram 510 until after a pause in transmission 512 after the start of partial cycle 502, with the pause in transmission being ap-proximately the same length as the maximum emptying time. Said pause in transmission 512 can also be selected to be slightly shorter than the maximum emptying time because the propagation time T1 from end user 306 can, of course, also be used for emptying of the receive buffer.
For synchronizing the time base of an end user of this type, use is therefore preferably made of the property of customary Ethernet connections, namely that the propagation time between the arrival of a telegram and the triggering of an interrupt is constant and capable of being determined, when the telegram encounters a connection in whose receive buffer no telegrams have been stored. The realtime (RT) telegrams being sent to the end user are therefore planned such that the first tele-gram being received is guaranteed to encounter an empty con-nection at the end user.
The thereby attainable synchronicity of a user with a custom-s ary Ethernet connection is therefore determined virtually ex-clusively by the fitter of the interrupt latency. A degree of precision for time synchronicity in the single-digit microsec-ond range can therefore be attained in the case of dedicated systems. To achieve greater time tolerance for arriving real-time data telegrams, each port of a forwarding user is pref-erably given a receive buffer which - is able to store a telegram in its entire length for "any"
length of time, - is able to store several telegrams simultaneously up to an overall size corresponding to that of the receive buffer, and - is organized on a FIFO (First-In First-Out) basis in such a way that, on the one hand, the telegrams can always be fetched in accordance with their sequence of arrival but also that an arriving telegram can be fetched, which is to say forwarded, immediately on starting to arrive.
A corresponding embodiment of connecting user 303 (see also Figure 3 and Figure 4) is shown in the block diagram in Figure 6. The connecting user has various ports 1... n. Said ports are each connected to a receive module 600.
Receive modules 600 are in turn each connected to a FIFO re-ceive buffer 602 with a size of, for example, 2 Kbyte.
WO 03/036832 ~ PCT/DE02/03752 Stored in receive buffer 602 are various data telegrams which can be forwarded for local reception to an internal communica-tion RAM 604 and/or which can be forwarded to another user of the communication system (see also communication system 300 in Figure 3).
The presence of receive buffers 602 therefore also enables connecting user 303 to receive data telegrams from end users 306 substantially in advance of the planned forwarding time or, as the case may be, receive time.
Figure 7 is a timing diagram clarifying the timing conditions for the reception of a data telegram from an end user (see also end user 306 in Figure 3 and Figure 4).
A data telegram 700 from the end user can be received by con-necting user 303 no earlier than by the length of tolerance time T after the start of partial cycle 502 for realtime com-munication. Following directly on from this is a time window 702 within which data telegram 700 can be received by the con-necting user.
The length of time window 702 is limited by the condition that at least a first part of data telegram 700 must have been re-ceived at the planned forwarding time TW of data telegram 506 so that said telegram can be forwarded as data telegram 506 by means of what is termed a cut-through method. To ensure this, end user 306 must consequently dispatch data telegram 307 at least by the length of tolerance time T before the planned forwarding time TW.
So that a data telegram can be injected into the isochronous cyclical communication system by the end user with the impre-cisely synchronized time base, according to the invention a data telegram of said type is always sent by the end user to its adjacent connecting user no earlier than at the start of the communication cycle and no later than by the length of tolerance time of synchronizing the end user's time base be-fore the connecting user's forwarding time. Because the data telegram is sent at a time preceding the forwarding time at least by the length of tolerance time, it is ensured that the connecting user will receive the data telegram from the end user no later than at a time which will enable forwarding of the data telegram according to the planned time of forwarding.
To summarize, the disclosed invention is a system and method for realtime communication in communication systems with users without hardware support for realtime capability and with us-ers with hardware support for realtime capability, wherein - the propagation time, in particular the constant propaga-tion time of a telegram from a second user to a first user, is used to synchronize the first user with all other users, - the propagation time, in particular the constant propaga-tion time of a telegram of said type, is guaranteed by means of a preceding pause in transmission, - owing to a receive buffer at the second user, the first user is able to send realtime telegrams in a temporally im-precise manner and only forwarding from said receive buffer has to take place with a high degree of time accuracy, - the receive buffer at the second user is able to buffer several telegrams of the first user.
It is, moreover, particularly advantageous that the disclosed methods can be employed or utilized in automation systems, in particular for and in packaging machines, presses, plastics injection-molding machines, textile machines, printing ma-chines, machine tools, robots, handling systems, timber proc-essing machines, glass processing machines, ceramics process-ing machines, and hoisting gear.
Preferred exemplary embodiments of the invention are explained in more detail below with reference to the drawings.
Fig. l: shows an embodiment of a method according to the in-vention for synchronizing the time base of an end user without hardware support, Fig. 2: is a flowchart of the sending of data telegrams by the end user with the imprecisely synchronized time base, Fig. 3: shows an embodiment of a communication system accord-ing to the invention, Fig. 4: is a schematic of synchronizing and of determining the propagation time, Fig. 5: is a representation clarifying the necessary pause in transmission at the connecting user, Fig. 6: is a schematic of buffering in the connecting user's receive buffer, and Fig. 7: is a representation clarifying the transmit and re-ceive times.
Figure 1 is a flowchart of synchronizing an end user's time base. In step 100, a synchronizing data telegram is sent from a connecting user situated immediately adjacent to the end user and located in the realtime domain of an isochronous cy-clical communication system to the end user, with said end user's receive buffer being empty at the transmit time or at least at the receive time which can be pre-determined.
The synchronizing data telegram is transmitted in step 102 over a cable interconnecting the connecting user and end user.
Said transmission is subject to a propagation time T1.
The synchronizing data telegram is received in step 104 in the receive buffer of the end user's empty connection. An inter-rupt is triggered in step 106 after a determined latency T2 following reception. The contents of the synchronizing data telegram are evaluated owing to the interrupt and the end user's time base is adjusted accordingly. Said synchronizing of the time base of the end user with tolerance T = Tl + T2 takes place in step 108.
5 Step 100 is repeated a certain period of time later, which is to say that another synchronizing data telegram is sent by the connecting user. This corresponds to the procedure in the re-altime domain because the users' time bases also need to be adjusted from time to time.
Figure 2 shows the procedure for sending data telegrams from the end user into the isochronous cyclical communication sys-tem. A data telegram is generated in the end user in step 200 according to a transmission list to be processed cyclically.
Said transmission list is produced while the communication system is being planned.
The planned data telegram is sent in step 202 to the immedi-ately adjacent connecting user. It is sent no earlier than at the start of the communication cycle and no later than at a time T before the connecting user's forwarding time. If the communication system has a communication cycle which can be divided into a realtime (RT) partial cycle and a non-realtime (NRT) partial cycle, the data telegram will be sent no earlier than at the start of the RT partial cycle.
Figure 3 is a schematic of an embodiment of a system according to the invention. Said system includes a communication system 300 which is suitable for isochronous cyclical realtime commu-nication. Connecting users 302 and 303 and end users 304 be-long to communication system 300. Both connecting users 302 and 303 and end users 304 have specific hardware support for attaining a high degree of time accuracy of the synchronicity of the time bases and for attaining a fast data throughput rate and a large number of telegrams.
Also connected to communication system 300 via connecting us-ers 303 are end users 306 not having specific hardware support of this type. Said end users 306 are approximately synchro-nized, for example according to the embodiment shown in Figure 1, with the time base of communication system 300 and send data telegrams according to the embodiment shown in Figure 2 into communication system 300.
Figure 4 shows a possible procedure for determining the toler-ance T (see also Figure 1).
In the exemplary embodiment shown, one of the connecting users 303 is connected via a cable 308 to one of the end users 306.
A transmission link between connecting user 303 and an Ethernet connection 310 of end user 306 is provided by means of cable 308. Said cable 308 has a maximum length of, for in-stance, 100 meters, giving a propagation time Tl of 0.25 ms ~
0.25 ms.
When the receive buffer of Ethernet connection 310 is empty, the time up to the triggering of an interrupt in end user 306 is determined and constant. A fitter of the interrupt latency may in certain circumstances be added to this, giving in total the latency T2 after reception of the data telegram in the Ethernet connection 310. The time base of end user 306 is then adjusted with tolerance T.
Figure 5 shows a communication cycle 500 of a connecting user of communication system 300 (see also Figure 3) of, for exam-ple, 5 ms. Communication cycle 500 is divided into a partial _,_ .. . . .~.a~~.a.....ww...
WO 03/036$32 PCT/DE02/03752 cycle 502 for realtime communication and a partial cycle 504 for non-realtime communication. Realtime data telegrams 506 or, as the case may be, non-realtime data telegrams 508 are sent both during partial cycle 502 and during partial cycle 504 by, for example, connecting user 303.
In the exemplary embodiments under consideration here, data telegram 510 in partial cycle 502 is a synchronizing data telegram. Said telegram is sent from connecting user 303 to its adjacent end user 306 (see also Figure 3). In the exem-plary embodiment under consideration here, the end user has a receive buffer in its Ethernet connection 310 (see also Figure 4). End user 306 requires a maximum emptying time to com-pletely empty the receive buffer.
So that the time base in end user 306 can be synchronized with tolerance T, the connecting user does not send data telegram 510 until after a pause in transmission 512 after the start of partial cycle 502, with the pause in transmission being ap-proximately the same length as the maximum emptying time. Said pause in transmission 512 can also be selected to be slightly shorter than the maximum emptying time because the propagation time T1 from end user 306 can, of course, also be used for emptying of the receive buffer.
For synchronizing the time base of an end user of this type, use is therefore preferably made of the property of customary Ethernet connections, namely that the propagation time between the arrival of a telegram and the triggering of an interrupt is constant and capable of being determined, when the telegram encounters a connection in whose receive buffer no telegrams have been stored. The realtime (RT) telegrams being sent to the end user are therefore planned such that the first tele-gram being received is guaranteed to encounter an empty con-nection at the end user.
The thereby attainable synchronicity of a user with a custom-s ary Ethernet connection is therefore determined virtually ex-clusively by the fitter of the interrupt latency. A degree of precision for time synchronicity in the single-digit microsec-ond range can therefore be attained in the case of dedicated systems. To achieve greater time tolerance for arriving real-time data telegrams, each port of a forwarding user is pref-erably given a receive buffer which - is able to store a telegram in its entire length for "any"
length of time, - is able to store several telegrams simultaneously up to an overall size corresponding to that of the receive buffer, and - is organized on a FIFO (First-In First-Out) basis in such a way that, on the one hand, the telegrams can always be fetched in accordance with their sequence of arrival but also that an arriving telegram can be fetched, which is to say forwarded, immediately on starting to arrive.
A corresponding embodiment of connecting user 303 (see also Figure 3 and Figure 4) is shown in the block diagram in Figure 6. The connecting user has various ports 1... n. Said ports are each connected to a receive module 600.
Receive modules 600 are in turn each connected to a FIFO re-ceive buffer 602 with a size of, for example, 2 Kbyte.
WO 03/036832 ~ PCT/DE02/03752 Stored in receive buffer 602 are various data telegrams which can be forwarded for local reception to an internal communica-tion RAM 604 and/or which can be forwarded to another user of the communication system (see also communication system 300 in Figure 3).
The presence of receive buffers 602 therefore also enables connecting user 303 to receive data telegrams from end users 306 substantially in advance of the planned forwarding time or, as the case may be, receive time.
Figure 7 is a timing diagram clarifying the timing conditions for the reception of a data telegram from an end user (see also end user 306 in Figure 3 and Figure 4).
A data telegram 700 from the end user can be received by con-necting user 303 no earlier than by the length of tolerance time T after the start of partial cycle 502 for realtime com-munication. Following directly on from this is a time window 702 within which data telegram 700 can be received by the con-necting user.
The length of time window 702 is limited by the condition that at least a first part of data telegram 700 must have been re-ceived at the planned forwarding time TW of data telegram 506 so that said telegram can be forwarded as data telegram 506 by means of what is termed a cut-through method. To ensure this, end user 306 must consequently dispatch data telegram 307 at least by the length of tolerance time T before the planned forwarding time TW.
Claims (9)
1. Method for operating an end user (306) of an isochronous cyclical communication system (300) wherein a synchroniz-ing data telegram (510) from a connecting user (303) of the communication system (300) is received by the end user (306), with the synchronizing data telegram being subject to the propagation time (T, T1, T2) of a trans-mission link between the connecting user and end user, with the propagation time consisting of the propagation time (T1) of the synchronizing data telegram over a transmission link (308) and the latency (T2) for trigger-ing an interrupt in a connection (310) of the end user (306), and wherein a time base of the end user (306) is synchronized with the aid of the synchronizing data telegram, result-ing in synchronizing of the time base with a tolerance corresponding to the propagation time, and wherein a transmission list from the end user (306) is processed within a communication cycle (500, 502) according to the end user's time base characterized in that the transmitting of a data telegram (700) is carried out by the connecting user (303) in accordance with the transmission list from the end user to the connecting user no earlier than at the start of the communication cycle (500, 502) and no later than by the tolerance (T) before the planned forwarding time (TW) of the relevant data telegram, and wherein the synchronizing data tele-gram (510) is received by the end user when the end user's receive buffer is empty.
2. Method according to Claim 1 wherein the communication cy-cle can be divided into a first partial cycle (502) for realtime communication and into a second partial cycle (504) for non-realtime communication and wherein the data telegram is transmitted in the partial cycle for realtime communication.
3. Method according to one of the Claims 1 or 2 wherein the synchronizing data telegram is sent by the connecting user (303) no earlier than after a maximum emptying time of the receive buffer of the end user (306) after the start of the communication cycle.
4. Computer program product, in particular a digital storage medium, for operating an end user of an isochronous cy-clical communication system, with program means for per-forming the following steps:
- reception of a synchronizing data telegram (510) from a connecting user (303) of the communication system (300) by the end user (306), with the synchronizing data telegram being subject to the propagation time (T, T1, T2) of a transmission link between the connecting user and end user, with the propagation time consisting of the propagation time (T1) of the synchronizing data telegram over a transmission link (308) and the latency (T2) for triggering an interrupt in a connection (310) of the end user (306), - synchronizing of a time base of the end user (306) with the aid of the synchronizing data telegram, resulting in synchronizing of the time base with a tolerance cor-responding to the propagation time, - cyclical processing of a transmission list from the end user (306) within of a communication cycle (500, 502) according to the end user's time base, characterized in that the transmitting of a data telegram (700) is carried out by the connecting user (303) in accordance with the transmission list from the end user to the connecting user no earlier than at the start of the communication cycle (500, 502) and no later than by the tolerance (T) before the planned forwarding time (TW) of the relevant data telegram, and wherein the synchronizing data tele-gram (510) is received by the end user when the end user's receive buffer is empty.
- reception of a synchronizing data telegram (510) from a connecting user (303) of the communication system (300) by the end user (306), with the synchronizing data telegram being subject to the propagation time (T, T1, T2) of a transmission link between the connecting user and end user, with the propagation time consisting of the propagation time (T1) of the synchronizing data telegram over a transmission link (308) and the latency (T2) for triggering an interrupt in a connection (310) of the end user (306), - synchronizing of a time base of the end user (306) with the aid of the synchronizing data telegram, resulting in synchronizing of the time base with a tolerance cor-responding to the propagation time, - cyclical processing of a transmission list from the end user (306) within of a communication cycle (500, 502) according to the end user's time base, characterized in that the transmitting of a data telegram (700) is carried out by the connecting user (303) in accordance with the transmission list from the end user to the connecting user no earlier than at the start of the communication cycle (500, 502) and no later than by the tolerance (T) before the planned forwarding time (TW) of the relevant data telegram, and wherein the synchronizing data tele-gram (510) is received by the end user when the end user's receive buffer is empty.
5. Computer program product according to Claim 4 wherein the program means are embodied in such a way that the syn-chronizing data telegram is only received when the re-ceive buffer is empty.
6. End user of an isochronous cyclical communication system with:
- means for the reception of a synchronizing data tele-gram (510) from a connecting user (303) of the communi-cation system (300) by the end user (306), with the synchronizing data telegram being subject to the propa-gation time (T, T1, T2) of a transmission link between the connecting user and end user, with the propagation time consisting of the propagation time (T1) of the synchronizing data telegram over a transmission link (308) and the latency (T2) for triggering an interrupt in a connection (310) of the end user (306), - means for synchronizing a time base of the end user (306) with the aid of the synchronizing data telegram, resulting in synchronizing of the time base with a to-lerance corresponding to the propagation time, - means for the cyclical processing of a transmission list from the end user (306) within of a communication cycle (500, 502) according to the end user's time base characterized in that the transmitting of a data telegram (700) is carried out by the connecting user (303) in accordance with the transmission list from the end user to the connecting user no earlier than at the start of the communication cycle (500, 502) and no later than by the tolerance (T) before the planned forwarding time (TW) of the relevant data telegram, and wherein the synchronizing data tele-gram (510) is received by the end user when the end user's receive buffer is empty.
- means for the reception of a synchronizing data tele-gram (510) from a connecting user (303) of the communi-cation system (300) by the end user (306), with the synchronizing data telegram being subject to the propa-gation time (T, T1, T2) of a transmission link between the connecting user and end user, with the propagation time consisting of the propagation time (T1) of the synchronizing data telegram over a transmission link (308) and the latency (T2) for triggering an interrupt in a connection (310) of the end user (306), - means for synchronizing a time base of the end user (306) with the aid of the synchronizing data telegram, resulting in synchronizing of the time base with a to-lerance corresponding to the propagation time, - means for the cyclical processing of a transmission list from the end user (306) within of a communication cycle (500, 502) according to the end user's time base characterized in that the transmitting of a data telegram (700) is carried out by the connecting user (303) in accordance with the transmission list from the end user to the connecting user no earlier than at the start of the communication cycle (500, 502) and no later than by the tolerance (T) before the planned forwarding time (TW) of the relevant data telegram, and wherein the synchronizing data tele-gram (510) is received by the end user when the end user's receive buffer is empty.
7. Connecting user of an isochronous cyclical communication system with means for sending a synchronizing data tele-gram (510) to an end user (306) over a transmission link (308) subject to a propagation time (T, T1, T2), with the propagation time consisting of the propagation time (T1) of the synchronizing data telegram over a transmission link (308) and the latency (T2) for triggering an inter-rupt in a connection (310) of the end user (306), with the synchronizing data telegram being sent no earlier than after a pause in transmission (512) after the start of the communication cycle (500, 502), with the pause in transmission corresponding to a maximum emptying time of a receive buffer (310) of the end user, and with the syn-chronizing data telegram (510) being received by the end user when the end user's receive buffer is empty.
8. Computer program product, in particular a digital storage medium, with program means for sending a synchronizing data telegram (510) to an end user (306) over a transmis-sion link (308) subject to a propagation time (T, T1, T2), with the propagation time consisting of the propaga-tion time (T1) of the synchronizing data telegram over a transmission link (308) and the latency (T2) for trigger-ing an interrupt in a connection (310) of the end user (306), with the synchronizing data telegram being sent no earlier than after a pause in transmission (512) after the start of the communication cycle (500, 502), with the pause in transmission corresponding to a maximum emptying time of a receive buffer (310) of the end user, and with the synchronizing data telegram (510) being received by the end user when the end user's receive buffer is empty.
9. Communication system with at least one end user according to Claim 6 and with at least one connecting user accord-ing to Claim 7.
Applications Claiming Priority (5)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
DE10150671 | 2001-10-17 | ||
DE10150671.6 | 2001-10-17 | ||
DE10241191A DE10241191A1 (en) | 2001-10-17 | 2002-09-05 | Method for operating an end user of an isochronous, cyclical communication system |
DE10241191.3 | 2002-09-05 | ||
PCT/DE2002/003752 WO2003036832A2 (en) | 2001-10-17 | 2002-10-04 | Method for operating an end-user of an isochronous cyclical communication system |
Publications (1)
Publication Number | Publication Date |
---|---|
CA2463743A1 true CA2463743A1 (en) | 2003-05-01 |
Family
ID=26010374
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CA002463743A Abandoned CA2463743A1 (en) | 2001-10-17 | 2002-10-04 | Method for operating an end-user of an isochronous cyclical communication system |
Country Status (8)
Country | Link |
---|---|
US (1) | US7460560B2 (en) |
EP (1) | EP1436924B1 (en) |
CN (1) | CN100514891C (en) |
AT (1) | ATE326087T1 (en) |
CA (1) | CA2463743A1 (en) |
DE (1) | DE50206758D1 (en) |
ES (1) | ES2265055T3 (en) |
WO (1) | WO2003036832A2 (en) |
Families Citing this family (10)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
DE10308954A1 (en) | 2003-02-28 | 2004-09-09 | Siemens Ag | Transmission of data in a switchable data network |
DE102004062683A1 (en) * | 2004-12-21 | 2006-06-29 | Bosch Rexroth Aktiengesellschaft | Method for controlling a transmission with short data telegrams |
JP4627456B2 (en) * | 2005-05-26 | 2011-02-09 | ルネサスエレクトロニクス株式会社 | Communication system, cycle master node and communication method |
DE102006013640A1 (en) | 2006-03-22 | 2007-09-27 | Robert Bosch Gmbh | Method and data transmission system for transferring data between the data transmission system and a host processor of a subscriber of a data transmission system |
DE102010027167B4 (en) * | 2010-07-14 | 2012-08-09 | Phoenix Contact Gmbh & Co. Kg | Communication system and method for isochronous data transmission in real time |
US9270481B2 (en) | 2010-07-14 | 2016-02-23 | Phoenix Contact Gmbh & Co. Kg | Communication system and method for isochronous data transmission in real time |
DE102010064123B3 (en) * | 2010-12-23 | 2012-02-16 | Trumpf Werkzeugmaschinen Gmbh + Co. Kg | Method for controlling peripheral devices of an isochronous bus system and third party peripheral devices of a third-party bus system and associated bus converter |
EP2501079A1 (en) * | 2011-03-15 | 2012-09-19 | Siemens Aktiengesellschaft | Method for real-time data transmission in a communication network |
JP6969454B2 (en) * | 2018-03-13 | 2021-11-24 | オムロン株式会社 | Control device, control method, and control program |
EP3873009B1 (en) * | 2020-02-28 | 2024-08-21 | Siemens Aktiengesellschaft | Method for synchronising control applications over a communications network for transmitting time-critical data, network infrastructure device and communications end device |
Family Cites Families (8)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JPS57154956A (en) * | 1981-03-19 | 1982-09-24 | Fuji Xerox Co Ltd | Transmitting system of digital signal |
US4768190A (en) * | 1986-04-30 | 1988-08-30 | Og Corporation | Packet switching network |
DE4215380A1 (en) | 1992-05-11 | 1993-11-18 | Siemens Ag | Synchronisation system for local clocks with automation modules - performs synchronisation operation when difference between local unit and central unit is less than transmission and processing time of central unit |
US5768350A (en) * | 1994-09-19 | 1998-06-16 | Phylon Communications, Inc. | Real-time and non-real-time data multplexing over telephone lines |
DE19710971A1 (en) | 1997-03-17 | 1998-09-24 | Siemens Ag | Propagation timing method for sending telegram between two subscribers in bus system |
US6199169B1 (en) * | 1998-03-31 | 2001-03-06 | Compaq Computer Corporation | System and method for synchronizing time across a computer cluster |
DE10004425A1 (en) * | 2000-02-02 | 2002-01-17 | Siemens Ag | Network with subscriber device, esp. field device, enables transmitter, receiver transmission, reception time delays to be taken into account for time synchronisation |
WO2001058067A1 (en) * | 2000-02-02 | 2001-08-09 | Siemens Aktiengesellschaft | Clock synchronisation in a network and network users, in particular a field device for said network |
-
2002
- 2002-10-04 DE DE50206758T patent/DE50206758D1/en not_active Expired - Lifetime
- 2002-10-04 EP EP02776780A patent/EP1436924B1/en not_active Expired - Lifetime
- 2002-10-04 ES ES02776780T patent/ES2265055T3/en not_active Expired - Lifetime
- 2002-10-04 CA CA002463743A patent/CA2463743A1/en not_active Abandoned
- 2002-10-04 AT AT02776780T patent/ATE326087T1/en not_active IP Right Cessation
- 2002-10-04 US US10/493,254 patent/US7460560B2/en not_active Expired - Fee Related
- 2002-10-04 WO PCT/DE2002/003752 patent/WO2003036832A2/en active IP Right Grant
- 2002-10-04 CN CNB028207866A patent/CN100514891C/en not_active Expired - Fee Related
Also Published As
Publication number | Publication date |
---|---|
US20050018626A1 (en) | 2005-01-27 |
US7460560B2 (en) | 2008-12-02 |
CN1572075A (en) | 2005-01-26 |
ES2265055T3 (en) | 2007-02-01 |
DE50206758D1 (en) | 2006-06-14 |
ATE326087T1 (en) | 2006-06-15 |
CN100514891C (en) | 2009-07-15 |
EP1436924B1 (en) | 2006-05-10 |
EP1436924A2 (en) | 2004-07-14 |
WO2003036832A2 (en) | 2003-05-01 |
WO2003036832A3 (en) | 2003-08-21 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
US10873536B2 (en) | Distribution node, automation network, and method for transmitting real-time-relevant and non-real-time-relevant data packets | |
US7411966B2 (en) | Method and system for coupling data networks | |
US8179923B2 (en) | System and method for transmitting real-time-critical and non-real-time-critical data in a distributed industrial automation system | |
US9100209B2 (en) | Method for real-time data transmission in a communication network | |
US7508824B2 (en) | Method and system for transmitting data via switchable data networks | |
US7930041B2 (en) | Industrial controller with coordination of network transmissions using global clock | |
US8127195B2 (en) | Replacement messages for identifying and preventing errors during the transmission of realtime-critical data | |
KR930001618A (en) | Synchronous Node Controller for Switching Networks | |
CA2463743A1 (en) | Method for operating an end-user of an isochronous cyclical communication system | |
EP1699174B1 (en) | Communication control system | |
JP4163960B2 (en) | Application of switchable data networks for real-time and non-real-time communication. | |
JP2022501892A (en) | Sending and receiving packets wirelessly | |
US7428250B2 (en) | System and associated method for receiving data telegrams in communication systems having redundant network paths | |
US7852879B2 (en) | Method for transmitting real-time data messages in a cyclic communications system | |
CA2499618A1 (en) | Method for the transmission of data telegrams in a switched cyclical communication system | |
US20050117600A1 (en) | Communication in a data network | |
CN114731310A (en) | Method, system and gateway for time sensitive fieldbus networking | |
US10630604B2 (en) | Method for isochronous data communication in a realtime ethernet data network | |
CN116455833B (en) | EtherCAT network and link expansion method and device thereof | |
Otawara et al. | Performance evaluation of TCP/IP over time-division multiplexing Ethernet | |
US20040131066A1 (en) | Electronic switching circuit and method for a communication interface with cut through buffer memory | |
US20040217878A1 (en) | Transmission of data in a switchable data network | |
Yamamoto et al. | Integration of existing ethernet devices into time-division-multiplexing ethernet | |
EP1610499A2 (en) | Synchronization and communication protocol for remote process | |
CN115801161A (en) | Time synchronization in an industrial system |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
FZDE | Discontinued |