Real-time industrial Ethernet in machine automation systems
Tunis, Staffan (2010)
Tunis, Staffan
2010
Automaatiotekniikan koulutusohjelma
Automaatio-, kone- ja materiaalitekniikan tiedekunta
This publication is copyrighted. You may download, display and print it for Your own personal use. Commercial use is prohibited.
Hyväksymispäivämäärä
2010-06-02
Julkaisun pysyvä osoite on
https://urn.fi/URN:NBN:fi:tty-201006041146
https://urn.fi/URN:NBN:fi:tty-201006041146
Tiivistelmä
During the last two decades, Ethernet has become the de facto standard in office level networks. There are several motivations for using Ethernet also in control networks, including the abundance of low cost components, the high data transfer rates and the possibility of vertical integration with other networks of the organization. The first industrial implementation of Ethernet was for communication between different devices on the controller level. Modern real-time industrial Ethernet technologies, like the ones studied in this thesis, have brought Ethernet also down to the field level.
The thesis is divided into two sections. The first section contains presentations of the seven most used real-time industrial Ethernet technologies. The second section contains a more thorough study of EtherCAT, the one of the seven technologies that promise the best real-time performance. The main goals are to provide a review of the different technologies available and to study the suitability of EtherCAT in the control networks of machine automation systems.
In the first section, different real-time industrial Ethernet technologies are divided into three groups based upon how much they differ from standard office Ethernet. It is found that the technologies built entirely upon standard office Ethernet do in themselves not promise any real-time capabilities. Their biggest weakness is the slow processing of the software communication protocol stack. The technologies that use standard Ethernet hardware but dedicated software are good for soft real-time applications, but the lack of accurate synchronization between the devices makes them unsuitable for applications demanding hard real-time behavior. The technologies that use both special hardware and software offer superior real-time performance but are not as open to integration with standard office Ethernet networks as the other solutions.
The second section of the study contains three parts. In the first of them, a small test system is built to examine the suitability of EtherCAT for the closed loop control of a variable alternate current (AC) drive. In the second part, the availability of open source initiatives concerning EtherCAT is explored. In the third part, the possibility for master device redundancy in EtherCAT is investigated. The study indicates that EtherCAT achieves the short communication cycle times and accurate synchronization promised. Short cycle times are indeed needed as direct communication between slave devices is not supported in EtherCAT and thus the efficiency of the communication is almost totally dependent on the cycle time. EtherCAT networks are relatively easy to configure and maintain as there are comprehensive software suites available, both as commercial programs and open source initiatives and for a variety of different operating systems. The least developed feature of EtherCAT proved to be the support for master device redundancy. Solutions for master redundancy are available, but more as concepts than as ready-to-use features. /Kir10 Under de senaste två decennierna har Ethernet blivit något av en de facto standard för nätverk i kontorsmiljö. Det finns flera motiv för att använda Ethernet även i kontrollnätverk, bland andra god tillgång av billiga komponenter, hög dataöverföringshastighet och möjligheter för vertikal integration med nätverk på andra nivåer av organisationen. Den första industriella tillämpningen av Ethernet var för kommunikation mellan olika kontrollenheter. Moderna realtidslösningar för industriella Ethernet-nätverk har fört Ethernet också ner till fältnivå.
Det här diplomarbetet är uppdelat i två delar. Den första delen innehåller presentationer av de sju mest använda realtidslösningarna för industriella Ethernet-nätverk. Den andra delen innehåller en mer djupgående studie av EtherCAT, den av de sju lösningarna som utlovar bäst realtidsprestanda. De mest centrala målen är att ge en översyn av de olika realtidslösningarna som finns tillgängliga för industriella Ethernet-nätverk samt att undersöka hur lämpligt EtherCAT är som kontrollnätverk för maskinautomation.
Inledningsvis delas de olika lösningarna in i tre grupper på bas av hur mycket de skiljer sig från vanliga kontorsnätverk. Det visar sig att de lösningar som helt bygger på samma teknik som används i kontorsnätverk i sig själva inte kan utlova någon som helst realtidskapacitet. Deras största svaghet är den resurskrävande behandlingen av de kommunikationsprotokoll som används i kontorsnätverk. Det är dock möjligt att konstruera lösningar med relativt bra realtidsbeteende utgående från de här lösningarna bara man väljer rätt Ethernet-komponenter och tillräckligt kraftfulla mikroprocessorer i nätverksstationerna. De lösningar som använder vanlig Ethernet-maskinvara men egen programvara är bra för mjuka realtidssystem, men de brister i synkroniseringen mellan enheterna och är sålunda inte tillräckligt deterministiska för hårda realtidssystem. De lösningar som använder både egen hårdvara och egen mjukvara erbjuder överlägsen realtidsprestanda som öppnar nya möjligheter för effektivare reglering av olika system. Å andra sidan är de här lösningarna inte lika öppna för integration med vanliga kontorsnätverk som de lösningar som har mer likheter med vanliga kontorsnätverk.
Den andra delen av studien inriktar sig på EtherCAT. EtherCAT är ett så kallat master/slave-nätverk, det vill säga att en av stationerna i nätverket styr kommunikationen och de andra i allmänhet inte själva kan initiera någon form av kommunikation. Den mest centrala funktionsprincipen för EtherCAT är att de olika slav-stationerna logiskt är ordnade i en kedja och att alla meddelanden passerar genom alla slav-stationer och blir också lästa och skrivna till av flera slav-stationer. I relativt små nätverk betyder det här att det bara skickas ett meddelande per kommunikationscykel. Meddelandena hanteras av speciell hårdvara i slav-stationerna och detta sker så snabbt att meddelandena bara blir fördröjda med bråkdelen av en mikrosekund. Master-stationen, däremot, är oftast konstruerad utan speciell hårdvara och består vanligen av en PC med realtidsoperativsystem och speciell mjukvara, ett så kallad EtherCAT master-program. Det att mastern består av standard Ethernet hårdvara betyder att den har relativt dålig timing-kapacitet. Därför är de olika slav-enheterna i ett EtherCAT nätverk i stället vanligen synkroniserade efter den första slav-enheten i kedjan. En synkroniseringsexakthet på mycket bättre än en mikrosekund utlovas och den kan användas både till att åstadkomma reaktioner på en exakt given tidpunkt och exakta tidsangivelser för när ett processvärde är uppmätt.
Studien av EtherCAT är indelad i tre avsnitt. I det första av dem byggs ett litet testsystem för att undersöka hur lämpligt EtherCAT är som kontrollnätverk för återkopplad styrning av en frekvensomriktare. Den viktigaste enskilda egenskapen som krävs av ett kommunikationsnätverk för den här tillämpningen är att frekvensomriktaren ofta och snabbt får korrekt information om drivaxelns position. Det är också viktigt att positionsangivelserna är ackompanjerade av exakt information om när de är uppmätta. Studien visar att det är möjligt att uppnå båda de här egenskaperna med hjälp av EtherCAT. Det att direkt kommunikation mellan slav-stationerna i ett EtherCAT-nätverk inte understöds medför visserligen att överföringen av positionsdatan tar två kommunikationscykler i anspråk, men eftersom det är möjligt att uppnå cykeltider så korta som 133 µs torde prestandan i alla fall räcka för de flesta system. Det här medför dock att cykeltiderna måste hållas låga även om systemet i övrigt inte skulle kräva det.
I det andra avsnittet undersöks tillgången på öppen källkodsbaserad programvara för EtherCAT. Det krävs ingen licens för att utveckla EtherCAT master-programvara, så det finns en mängd olika program för flera olika operativsystem på marknaden. Ett par av dem är baserade på öppen källkod. Ett av de mest intressanta är EtherLAB från Ingenieurgemeinschaft IgH. Det är i huvudsak utvecklat för Linux och innehåller förutom master-programvaran även mjukvara för diagnostik och för att generera kontrollrutiner från modeller skapade med Matlab/Simulink. I det här avseendet är det till och med kraftfullare än den mest använda kommersiella programvaran för EtherCAT, TwinCAT från Beckhoff Automation, som igen körs under MS Windows.
I det tredje avsnittet granskas möjligheterna att duplicera den enhet som styr ett EtherCAT nätverk, så kallad master-redundans. Studien presenterar en lösning utvecklad av Beckhoff Automation. Det visar sig att detta är en relativt sett dåligt utvecklad egenskap i EtherCAT. Den presenterade metoden medför till exempel att det tar nästan en hel sekund innan reserv-mastern tar över ifall det uppstår fel i den primära, dessutom är funktionen för synkronisering av klockorna i slav-enheterna inte tillgänglig när den här metoden används. Studien presenterar även en idé om en annan möjlig lösning för att åstadkomma master-redundans i EtherCAT nätverk. Fördelen med den är att den skulle göra funktionen för att synkronisera klockorna i slav-enheterna möjlig även fast systemet innehåller master-redundans. Båda de presenterade lösningarna är mer koncept än funktioner färdiga att använda, detta gäller i synnerhet den andra lösningen, som ännu bara är i idéstadiet. Bristen på väl fungerande lösningar för master-redundans gör att EtherCAT system bör konstrueras så att korta stopp i kommunikationen inte kan skada systemet i sig själv, intilliggande system eller människor som är i kontakt med systemet.
The thesis is divided into two sections. The first section contains presentations of the seven most used real-time industrial Ethernet technologies. The second section contains a more thorough study of EtherCAT, the one of the seven technologies that promise the best real-time performance. The main goals are to provide a review of the different technologies available and to study the suitability of EtherCAT in the control networks of machine automation systems.
In the first section, different real-time industrial Ethernet technologies are divided into three groups based upon how much they differ from standard office Ethernet. It is found that the technologies built entirely upon standard office Ethernet do in themselves not promise any real-time capabilities. Their biggest weakness is the slow processing of the software communication protocol stack. The technologies that use standard Ethernet hardware but dedicated software are good for soft real-time applications, but the lack of accurate synchronization between the devices makes them unsuitable for applications demanding hard real-time behavior. The technologies that use both special hardware and software offer superior real-time performance but are not as open to integration with standard office Ethernet networks as the other solutions.
The second section of the study contains three parts. In the first of them, a small test system is built to examine the suitability of EtherCAT for the closed loop control of a variable alternate current (AC) drive. In the second part, the availability of open source initiatives concerning EtherCAT is explored. In the third part, the possibility for master device redundancy in EtherCAT is investigated. The study indicates that EtherCAT achieves the short communication cycle times and accurate synchronization promised. Short cycle times are indeed needed as direct communication between slave devices is not supported in EtherCAT and thus the efficiency of the communication is almost totally dependent on the cycle time. EtherCAT networks are relatively easy to configure and maintain as there are comprehensive software suites available, both as commercial programs and open source initiatives and for a variety of different operating systems. The least developed feature of EtherCAT proved to be the support for master device redundancy. Solutions for master redundancy are available, but more as concepts than as ready-to-use features. /Kir10
Det här diplomarbetet är uppdelat i två delar. Den första delen innehåller presentationer av de sju mest använda realtidslösningarna för industriella Ethernet-nätverk. Den andra delen innehåller en mer djupgående studie av EtherCAT, den av de sju lösningarna som utlovar bäst realtidsprestanda. De mest centrala målen är att ge en översyn av de olika realtidslösningarna som finns tillgängliga för industriella Ethernet-nätverk samt att undersöka hur lämpligt EtherCAT är som kontrollnätverk för maskinautomation.
Inledningsvis delas de olika lösningarna in i tre grupper på bas av hur mycket de skiljer sig från vanliga kontorsnätverk. Det visar sig att de lösningar som helt bygger på samma teknik som används i kontorsnätverk i sig själva inte kan utlova någon som helst realtidskapacitet. Deras största svaghet är den resurskrävande behandlingen av de kommunikationsprotokoll som används i kontorsnätverk. Det är dock möjligt att konstruera lösningar med relativt bra realtidsbeteende utgående från de här lösningarna bara man väljer rätt Ethernet-komponenter och tillräckligt kraftfulla mikroprocessorer i nätverksstationerna. De lösningar som använder vanlig Ethernet-maskinvara men egen programvara är bra för mjuka realtidssystem, men de brister i synkroniseringen mellan enheterna och är sålunda inte tillräckligt deterministiska för hårda realtidssystem. De lösningar som använder både egen hårdvara och egen mjukvara erbjuder överlägsen realtidsprestanda som öppnar nya möjligheter för effektivare reglering av olika system. Å andra sidan är de här lösningarna inte lika öppna för integration med vanliga kontorsnätverk som de lösningar som har mer likheter med vanliga kontorsnätverk.
Den andra delen av studien inriktar sig på EtherCAT. EtherCAT är ett så kallat master/slave-nätverk, det vill säga att en av stationerna i nätverket styr kommunikationen och de andra i allmänhet inte själva kan initiera någon form av kommunikation. Den mest centrala funktionsprincipen för EtherCAT är att de olika slav-stationerna logiskt är ordnade i en kedja och att alla meddelanden passerar genom alla slav-stationer och blir också lästa och skrivna till av flera slav-stationer. I relativt små nätverk betyder det här att det bara skickas ett meddelande per kommunikationscykel. Meddelandena hanteras av speciell hårdvara i slav-stationerna och detta sker så snabbt att meddelandena bara blir fördröjda med bråkdelen av en mikrosekund. Master-stationen, däremot, är oftast konstruerad utan speciell hårdvara och består vanligen av en PC med realtidsoperativsystem och speciell mjukvara, ett så kallad EtherCAT master-program. Det att mastern består av standard Ethernet hårdvara betyder att den har relativt dålig timing-kapacitet. Därför är de olika slav-enheterna i ett EtherCAT nätverk i stället vanligen synkroniserade efter den första slav-enheten i kedjan. En synkroniseringsexakthet på mycket bättre än en mikrosekund utlovas och den kan användas både till att åstadkomma reaktioner på en exakt given tidpunkt och exakta tidsangivelser för när ett processvärde är uppmätt.
Studien av EtherCAT är indelad i tre avsnitt. I det första av dem byggs ett litet testsystem för att undersöka hur lämpligt EtherCAT är som kontrollnätverk för återkopplad styrning av en frekvensomriktare. Den viktigaste enskilda egenskapen som krävs av ett kommunikationsnätverk för den här tillämpningen är att frekvensomriktaren ofta och snabbt får korrekt information om drivaxelns position. Det är också viktigt att positionsangivelserna är ackompanjerade av exakt information om när de är uppmätta. Studien visar att det är möjligt att uppnå båda de här egenskaperna med hjälp av EtherCAT. Det att direkt kommunikation mellan slav-stationerna i ett EtherCAT-nätverk inte understöds medför visserligen att överföringen av positionsdatan tar två kommunikationscykler i anspråk, men eftersom det är möjligt att uppnå cykeltider så korta som 133 µs torde prestandan i alla fall räcka för de flesta system. Det här medför dock att cykeltiderna måste hållas låga även om systemet i övrigt inte skulle kräva det.
I det andra avsnittet undersöks tillgången på öppen källkodsbaserad programvara för EtherCAT. Det krävs ingen licens för att utveckla EtherCAT master-programvara, så det finns en mängd olika program för flera olika operativsystem på marknaden. Ett par av dem är baserade på öppen källkod. Ett av de mest intressanta är EtherLAB från Ingenieurgemeinschaft IgH. Det är i huvudsak utvecklat för Linux och innehåller förutom master-programvaran även mjukvara för diagnostik och för att generera kontrollrutiner från modeller skapade med Matlab/Simulink. I det här avseendet är det till och med kraftfullare än den mest använda kommersiella programvaran för EtherCAT, TwinCAT från Beckhoff Automation, som igen körs under MS Windows.
I det tredje avsnittet granskas möjligheterna att duplicera den enhet som styr ett EtherCAT nätverk, så kallad master-redundans. Studien presenterar en lösning utvecklad av Beckhoff Automation. Det visar sig att detta är en relativt sett dåligt utvecklad egenskap i EtherCAT. Den presenterade metoden medför till exempel att det tar nästan en hel sekund innan reserv-mastern tar över ifall det uppstår fel i den primära, dessutom är funktionen för synkronisering av klockorna i slav-enheterna inte tillgänglig när den här metoden används. Studien presenterar även en idé om en annan möjlig lösning för att åstadkomma master-redundans i EtherCAT nätverk. Fördelen med den är att den skulle göra funktionen för att synkronisera klockorna i slav-enheterna möjlig även fast systemet innehåller master-redundans. Båda de presenterade lösningarna är mer koncept än funktioner färdiga att använda, detta gäller i synnerhet den andra lösningen, som ännu bara är i idéstadiet. Bristen på väl fungerande lösningar för master-redundans gör att EtherCAT system bör konstrueras så att korta stopp i kommunikationen inte kan skada systemet i sig själv, intilliggande system eller människor som är i kontakt med systemet.