summaryrefslogtreecommitdiff
path: root/diplomathesis/node81.html
blob: 8ece234d97f31d08c1a03cd041f0d8c9227a3927 (plain)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
119
120
121
122
123
124
125
126
127
128
129
130
131
132
133
134
135
<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.0 Transitional//EN">

<!--Converted with LaTeX2HTML 2002-2-1 (1.71)
original version by:  Nikos Drakos, CBLU, University of Leeds
* revised and updated by:  Marcus Hennecke, Ross Moore, Herb Swan
* with significant contributions from:
  Jens Lippmann, Marek Rouchal, Martin Wilck and others -->
<HTML>
<HEAD>
<TITLE>Fazit</TITLE>
<META NAME="description" CONTENT="Fazit">
<META NAME="keywords" CONTENT="diplomathesis">
<META NAME="resource-type" CONTENT="document">
<META NAME="distribution" CONTENT="global">

<META NAME="Generator" CONTENT="LaTeX2HTML v2002-2-1">
<META HTTP-EQUIV="Content-Style-Type" CONTENT="text/css">

<LINK REL="STYLESHEET" HREF="diplomathesis.css">

<LINK REL="next" HREF="node84.html">
<LINK REL="previous" HREF="node77.html">
<LINK REL="up" HREF="diplomathesis.html">
<LINK REL="next" HREF="node82.html">
</HEAD>

<BODY >

<DIV CLASS="navigation"><!--Navigation Panel-->
<A NAME="tex2html1253"
  HREF="node82.html">
<IMG WIDTH="37" HEIGHT="24" ALIGN="BOTTOM" BORDER="0" ALT="next"
 SRC="/usr/share/latex2html/icons/next.png"></A> 
<A NAME="tex2html1249"
  HREF="diplomathesis.html">
<IMG WIDTH="26" HEIGHT="24" ALIGN="BOTTOM" BORDER="0" ALT="up"
 SRC="/usr/share/latex2html/icons/up.png"></A> 
<A NAME="tex2html1243"
  HREF="node80.html">
<IMG WIDTH="63" HEIGHT="24" ALIGN="BOTTOM" BORDER="0" ALT="previous"
 SRC="/usr/share/latex2html/icons/prev.png"></A> 
<A NAME="tex2html1251"
  HREF="node3.html">
<IMG WIDTH="65" HEIGHT="24" ALIGN="BOTTOM" BORDER="0" ALT="contents"
 SRC="/usr/share/latex2html/icons/contents.png"></A>  
<BR>
<B> Next:</B> <A NAME="tex2html1254"
  HREF="node82.html">Dank</A>
<B> Up:</B> <A NAME="tex2html1250"
  HREF="diplomathesis.html">diplomathesis</A>
<B> Previous:</B> <A NAME="tex2html1244"
  HREF="node80.html">Anbindung des .NET HMI</A>
 &nbsp; <B>  <A NAME="tex2html1252"
  HREF="node3.html">Contents</A></B> 
<BR>
<BR></DIV>
<!--End of Navigation Panel-->

<H1><A NAME="SECTION00090000000000000000">
Fazit</A>
</H1> 

<P>
Der Kern der Arbeit lag in der Untersuchung des Echtzeitverhaltens der Real-time CORBA Implementation TAO unter Linux mit einem RT_ PREEMPT gepatchten Kernel. Hierzu wurde eine geeignete Messumgebung entwickelt und Messungen unter verschiedenen Bedingungen durchgef&#252;hrt. Es wurden verschiedene echtzeitf&#228;hige Switches in die Versuchsumgebung integriert und derren Performance verglichen. Alle durchgef&#252;hrten Versuche erf&#252;llten bei korrekter Konfiguration aller Komponenten (ACE/TAO, Betriebssystem, Switch) die Erwartungen. Es ist m&#246;glich ein 1 kByte gro&#223;es Prozessabbild garantiert innerhalb 1 ms per Real-time CORBA &#252;ber Ethernet zu &#252;bertragen. Auch in ACE/TAO verschieden priorisierte Aufgaben werden in allen Komponenten entsprechend ihrer Priorit&#228;t korrekt abgearbeitet.

<P>
Zweiter Schwerpunkt wurde auf das Finden einer geeigneten CORBA Erweiterung f&#252;r in C# / .NET entwickelte Applikationen gelegt. Es wurden verschiedene Ans&#228;tze untersucht und mit dem am Besten geeigneten (IIOP.NET) eine Applikation, zur Demonstration der Machbarkeit, entwickelt. Der C# Anteil der verteilten Applikation wurde f&#252;r die Mono Runtime entwickelt, da in dem bei TRUMPF verwendeten portable .NET Framework dotgnu noch einige von IIOP.NET ben&#246;tigte Klassen nicht implementiert sind.

<P>
Die gr&#246;&#223;te Herausforderung lag in der Konfiguration der an der Real-time Kommunikation beteiligten Komponenten. Harte Echtzeit kann nur garantiert werden, wenn jede Komponente so konifguriert ist, dass die Priorit&#228;ten der Aufgaben korrekt bewertert werden.

<P>
Es war im Rahmen der Diplomarbeit nicht m&#246;glich, den personellen Aufwand abzusch&#228;tzen, welcher im Falle eines Einsatzes von ACE/TAO in der TRUMPF Gruppe entstehen w&#252;rde, da dies sehr stark vom, momentan noch nicht genau bekannten, Einsatzzweck des Frameworks abh&#228;ngig sein wird. Es kann jedoch gesagt werden, dass nach einer langen Lernphase sehr schnell zuverl&#228;ssige, verteilte Anwendungen entwickelt werden k&#246;nnen.

<P>
In weiteren Untersuchungen sollte die Perfomance von TAO Real-time CORBA &#252;ber Plattformgrenzen hinweg &#252;berpr&#252;ft werden.  F&#252;r die Kommunikation von mehreren Steuerungen sollte eine Semantik f&#252;r die Kommunikation via Real-time CORBA entwickelt werden.  Als Ansatz k&#246;nnte, das (noch) nicht hart echtzeitf&#228;hige und nur auf den Transport von Messwerten ausgelegte DAIS dienen. Durch die Entwicklung von Bridges sollte die Kompatibilit&#228;t zu bestehenden Standards, wie zum Beispiel OPC oder CAN bewahrt werden. Eine OPC Bridge sollte von DAIS aus relativ einfach realisierbar sein, da die Semantik der Sprachen identisch ist. F&#252;r eine Ankopplung von Real-time CORBA an CAN gibt es ebenfalls Ans&#228;tze [<A
 HREF="node86.html#cancorba1">Lan<SPAN CLASS="MATH"></SPAN></A>].

<P>
Diese Diplomarbeit zeigt, dass die Performance und Stabilit&#228;t von TAO RTCORBA mit Feldbussystemenen vergleichbar ist. ACE/TAO erm&#246;glicht eine schnelle und effiziente Programmierung von objektorientierten Echtzeitapplikationen. Die Real-time Ethernet Kommunikation funktioniert mit Standard TCP/IP Stacks und fast beliebiger Hardware. Einzig bei der Wahl des Switches mu&#223; dessen QoS (diffServ) F&#228;higkeit gepr&#252;ft werden.

<P>
Verschiedene Dienstleiter bieten Support f&#252;r ACE/TAO. Es besteht die M&#246;glichkeit der direkten Kontaktaufnahme mit den Entwicklern via Mailinglist (comp.softsys.ace).

<P>
Es liegt nun an den Herstellern von Steuerungssystemen, sich beim Einsatz von Real-time CORBA auf gemeinsame Schnittstellendefinitionen zu st&#252;tzen, um eine Kommunikation zu vereinfachen. Aber selbst wenn dies nicht m&#246;glich ist und CORBA nur als interne Schnittstelle eingesetzt wird, wird die Integration von neuen Protokollen in die eigene Steuerung stark vereinfacht. So untersuchte auch HP die Integration einer CORBA Schnittstelle in langlebende Ger&#228;te (Drucker, Scanner, ...). Denn es sei praktisch unm&#246;glich die st&#228;ndig wechselnde Protokolle zur Ansteuerung der Ger&#228;te, in die Firmware zu integrieren [<A
 HREF="node86.html#hp">ShMo04</A>].

<P>
<BR><HR>
<!--Table of Child-Links-->
<A NAME="CHILD_LINKS"><STRONG>Subsections</STRONG></A>

<UL CLASS="ChildLinks">
<LI><A NAME="tex2html1255"
  HREF="node82.html">Dank</A>
<LI><A NAME="tex2html1256"
  HREF="node83.html">Exkursionen</A>
</UL>
<!--End of Table of Child-Links-->

<DIV CLASS="navigation"><HR>
<!--Navigation Panel-->
<A NAME="tex2html1253"
  HREF="node82.html">
<IMG WIDTH="37" HEIGHT="24" ALIGN="BOTTOM" BORDER="0" ALT="next"
 SRC="/usr/share/latex2html/icons/next.png"></A> 
<A NAME="tex2html1249"
  HREF="diplomathesis.html">
<IMG WIDTH="26" HEIGHT="24" ALIGN="BOTTOM" BORDER="0" ALT="up"
 SRC="/usr/share/latex2html/icons/up.png"></A> 
<A NAME="tex2html1243"
  HREF="node80.html">
<IMG WIDTH="63" HEIGHT="24" ALIGN="BOTTOM" BORDER="0" ALT="previous"
 SRC="/usr/share/latex2html/icons/prev.png"></A> 
<A NAME="tex2html1251"
  HREF="node3.html">
<IMG WIDTH="65" HEIGHT="24" ALIGN="BOTTOM" BORDER="0" ALT="contents"
 SRC="/usr/share/latex2html/icons/contents.png"></A>  
<BR>
<B> Next:</B> <A NAME="tex2html1254"
  HREF="node82.html">Dank</A>
<B> Up:</B> <A NAME="tex2html1250"
  HREF="diplomathesis.html">diplomathesis</A>
<B> Previous:</B> <A NAME="tex2html1244"
  HREF="node80.html">Anbindung des .NET HMI</A>
 &nbsp; <B>  <A NAME="tex2html1252"
  HREF="node3.html">Contents</A></B> </DIV>
<!--End of Navigation Panel-->
<ADDRESS>
Manuel Traut
2007-02-25
</ADDRESS>
</BODY>
</HTML>