Sie sind auf Seite 1von 266

Harald Nahrstedt

Excel + VBA fr Maschinenbauer


Aus dem Programm Grundlagen Maschinenbau

Lehrsystem Technische Mechanik mit Lehrbuch,


Aufgabensammlung, Lsungsbuch sowie Formeln und Tabellen
von A. Bge und W. Schlemmer

Handbuch Maschinenbau
herausgegeben von A. Bge

Elektrotechnik fr Maschinenbauer
von R. Busch

Technische Berichte
von H. Hering und L. Hering

Englisch fr Maschinenbauer
von A. Jayendran

Lehrwerk Roloff/Matek Maschinenelemente


von H. Wittel, D. Muhs, D. Jannasch und J. Voiek

Praktische Regelungstechnik
von W. Schneider

Werkstoffkunde
von W. Weibach

www.viewegteubner.de
Harald Nahrstedt

Excel + VBA fr
Maschinenbauer
Programmieren erlernen und Problemstellungen lsen
2., berarbeitete, aktualisierte und erweiterte Auflage
Mit 221 Abbildungen und 43 Tabellen

STUDIUM
Bibliografische Information der Deutschen Nationalbibliothek
Die Deutsche Nationalbibliothek verzeichnet diese Publikation in der
Deutschen Nationalbibliografie; detaillierte bibliografische Daten sind im Internet ber
<http://dnb.d-nb.de> abrufbar.

1. Auflage 2005
2., berarbeitete, aktualisierte und erweiterte Auflage 2008

Alle Rechte vorbehalten


Vieweg +Teubner | GWV Fachverlage GmbH, Wiesbaden 2008
Lektorat: Thomas Zipsner | Imke Zander
Vieweg +Teubner ist Teil der Fachverlagsgruppe Springer Science+Business Media.
www.viewegteubner.de
Das Werk einschlielich aller seiner Teile ist urheberrechtlich geschtzt. Jede
Verwertung auerhalb der engen Grenzen des Urheberrechtsgesetzes ist ohne
Zustimmung des Verlags unzulssig und strafbar. Das gilt insbesondere fr
Vervielfltigungen, bersetzungen, Mikroverfilmungen und die Einspeicherung und
Verarbeitung in elektronischen Systemen.
Die Wiedergabe von Gebrauchsnamen, Handelsnamen, Warenbezeichnungen usw. in diesem Werk
berechtigt auch ohne besondere Kennzeichnung nicht zu der Annahme, dass solche Namen im
Sinne der Warenzeichen- und Markenschutz-Gesetzgebung als frei zu betrachten wren und daher
von jedermann benutzt werden drften.

Technische Redaktion: Gabriele McLemore, Wiesbaden


Umschlaggestaltung: KnkelLopka Medienentwicklung, Heidelberg
Druck und buchbinderische Verarbeitung: Krips b.v., Meppel
Gedruckt auf surefreiem und chlorfrei gebleichtem Papier.
Printed in the Netherlands

ISBN 978-3-8348-0480-8
V

Vorwort zur 2. Auflage

Warum dieses Buch


Jeder Anwender eines Office-Pakets bekommt ohne zustzliche Anschaffungskosten eine Entwicklungsumge-
bung mit VBA (Visual Basic for Application). Von allen Office Anwendungen wird insbesondere die Anwen-
dung Excel im Ingenieurbereich vielfach eingesetzt. Oft auch ohne Kenntnisse der Entwicklungsmglichkeiten.
Was liegt also nher, als die Programmierung mittels VBA unter Excel an Beispielen aus der Praxis darzustellen.
So entstand auch der Titel Excel VBA fr Maschinenbauer. Ziel dieses Buches ist es, sowohl dem Ingenieurstu-
denten als auch dem praktizierenden Ingenieur Wege und Mglichkeiten der Entwicklung eigener Programme zu
zeigen. Dabei gehe ich bewusst ber eine einfache Strukturierung nicht hinaus. Es gibt sicher an manchen Stel-
len elegantere Mglichkeiten insbesondere auf die Fhigkeiten von VBA einzugehen. Dies berlasse ich gerne
dem Leser. Weitere Hilfen finden sich auch auf meiner Website.

Versionen
Begonnen wurde dieses Buch mit der Version Microsoft Office Excel 2002 und beendet mit der Version Micro-
soft Office Excel 2003. Diese Auflage wurde mit der Office Version 2007 erstellt. Da ich bewusst einfache Be-
fehlsstrukturen verwendet habe, knnen diese Anwendungsbeispiele auch auf lteren Versionen ohne groe
Probleme installiert werden.

Zum Aufbau
Das erste Kapitel gibt eine kurze Einfhrung in VBA und die Handhabung der Entwicklungsumgebung. Eine
ausfhrlichere Einfhrung finden Sie auf meiner unten genannten Website. Fr Anwender ohne Programmier-
kenntnisse empfehle ich zunchst das Studium des Buches von Sabine Kmper [2]. In den nachfolgenden 13
Kapiteln finden Sie ausgesuchte Anwendungsbeispiele aus verschiedenen Ingenieurbereichen. Neben einer
grundlegenden Einfhrung in das jeweilige Thema, werden die Schritte von der Erstellung des Algorithmus bis
zur Erstellung der Anwendung anschaulich wiedergegeben. Abschlieend gebe ich in jedem Kapitel noch -
bungshinweise fr weitere Anwendungsgebiete. Diese finden Sie ebenfalls auch auf meiner Website.

Danksagung
Ich danke all denen im Hause Vieweg+Teubner, die stets im Hintergrund wirkend, zum Gelingen dieses Buches
beigetragen haben. Ein besonderer Dank gilt meinem Lektor Thomas Zipsner, der mir geduldig mit vielen wich-
tigen und richtigen Ratschlgen half, den fr den Leser besten Weg einzuhalten. Die zweite Auflage ist der Be-
weis fr die Richtigkeit seiner Einflussnahme.

An den Leser
Dieses Buch soll auch zum Dialog zwischen Autor und Leser auffordern. Daher finden Sie sowohl auf der Ho-
mepage des Verlages www.viewegteubner-verlag.de, wie auch auf der Homepage des Autors www.harald-
nahrstedt.de ein Forum fr ergnzende Programme, Anregungen und Kommentare.

Mhnesee, September 2008 Harald Nahrstedt


VII

Inhaltsverzeichnis

1 Einfhrung in VBA ............................................................................................................... 1


1.1 Die VBA Entwicklungsumgebung ....................................................................................... 1
1.1.1 Der Visual Basic-Editor............................................................................................... 1
1.1.2 Projekt und Projekt-Explorer ....................................................................................... 3
1.1.3 Der Objektkatalog........................................................................................................4
1.1.4 Das Eigenschaftsfenster............................................................................................... 5
1.1.5 Die Direkt-, Lokal- und berwachungsfenster............................................................ 6
1.2 Objekte, Anwendungen, Formulare und Module ................................................................. 6
1.2.1 Objekte, allgemein.......................................................................................................6
1.2.2 Anwendungen und Makros.......................................................................................... 8
1.2.4 Formulare und Steuerelemente .................................................................................. 11
1.2.5 Module....................................................................................................................... 14
1.3 Die Syntax von VBA........................................................................................................... 15
1.3.1 Konventionen............................................................................................................. 15
1.3.2 Prozeduren und Funktionen ....................................................................................... 15
1.3.3 Datentypen fr Konstante und Variable..................................................................... 16
1.3.4 Parameterlisten .......................................................................................................... 18
1.3.5 Benutzerdefinierte Datentypen .................................................................................. 18
1.3.6 Operatoren und Standardfunktionen .......................................................................... 19
1.3.7 Strukturen fr Prozedurablufe.................................................................................. 20
1.3.8 Geltungsbereiche ....................................................................................................... 22
1.3.9 Fehlerbehandlung in Prozeduren ............................................................................... 22
1.4 Algorithmen und ihre Darstellung....................................................................................... 23
1.4.1 Der Algorithmus ........................................................................................................ 23
1.4.2 Top-Down-Design ..................................................................................................... 24
1.4.3 Flussdiagramm........................................................................................................... 25
1.4.4 Struktogramm ............................................................................................................ 27
1.5 Objekte unter Excel ............................................................................................................. 28
1.5.1 Application Objects ................................................................................................... 28
1.5.2 Workbook Objects ..................................................................................................... 30
1.5.3. Worksheet Objects.................................................................................................... 31
1.5.4 Range Objects............................................................................................................ 32
1.5.5 Zeilen und Spalten ..................................................................................................... 33
1.5.6 Zellen und Zellbereiche ............................................................................................. 33
VIII Inhaltsverzeichnis

1.5.7 Objektvariable............................................................................................................37
1.6 Aktionen unter Excel ...........................................................................................................37
1.6.1 Neue Excel-Anwendung starten.................................................................................37
1.6.2 Der Excel-Anwendung einen Namen geben ..............................................................38
1.6.3 Dem Excel-Arbeitsblatt (Tabelle) einen Namen geben .............................................38
1.6.4 In der Excel-Anwendung ein neues Arbeitsblatt anlegen ..........................................38
1.6.5 Dem Projekt und dem Arbeitsblatt einen Namen geben ............................................39
1.6.6 Prozeduren mit Haltepunkten testen ..........................................................................39
1.6.7 Codefenster teilen ......................................................................................................40
1.6.8 Symbolleiste fr den Schnellzugriff ergnzen ...........................................................40
1.6.9 Makros aus dem Menbereich Add-Ins aufrufen.......................................................42
1.6.10 Berechnungsprozeduren als Add-In nutzen .............................................................45

2 Berechnungen aus der Statik..............................................................................................46


2.1 Krfte im Raum ...........................................................................................................46
2.2 Krfte in Tragwerken...................................................................................................53
2.3 Biegetrger....................................................................................................................63

3 Berechnungen aus der Dynamik ........................................................................................71


3.1 Massentrgheitsmomente.............................................................................................71
3.2 Mechanische Schwingungen........................................................................................81

4 Festigkeitsberechnungen.....................................................................................................87
4.1 Hauptspannungen eines zusammengesetzten Biegetrgers...........................................87
4.2 Die Anwendung der Monte-Carlo-Methode auf ein Biegeproblem..............................93

5 Berechnungen von Maschinenelementen...........................................................................97


5.1 Volumenberechnung nach finiten Elementen ...............................................................97
5.2 Durchbiegung von Achsen und Wellen ......................................................................100

6 Technische Statistik und Wahrscheinlichkeitsrechnung................................................118


6.1 Stichprobenanalyse .....................................................................................................118
6.2 Probabilistische Simulation ........................................................................................127

7 Wirtschaftliche Berechnungen .........................................................................................131


7.1 Maschinenbelegung nach Johnson..............................................................................131
7.2 Optimale Losgre .....................................................................................................135
Inhaltsverzeichnis IX

8 Berechnungen aus der Strmungslehre........................................................................... 143


8.1 Rotation von Flssigkeiten ......................................................................................... 143
8.2 Laminare Strmung in zylindrischen Rohren ............................................................. 147

9 Berechnungen aus der Thermodynamik ......................................................................... 152


9.1 Nichtstationre Wrmestrmung durch eine Wand .................................................... 152
9.2 Der Carnotsche Kreisprozess fr ideale Gase............................................................. 160
9.2.1 Allgemeine Zustandsgleichungen fr Gase und Gasgemische ................................ 160
9.2.1 Isochore Zustandsnderung ..................................................................................... 162
9.2.2 Isobare Zustandsnderung ....................................................................................... 163
9.2.3 Isotherme Zustandsnderung ................................................................................... 164
9.2.4 Adiabatische Zustandsnderung .............................................................................. 165
9.2.5 Der Carnotsche Kreisprozess.................................................................................. 166

10 Berechnungen aus der Elektrotechnik........................................................................... 170


10.1 Spannungen und Strme in Gleichstromleitungen.................................................... 170
10.2 Rechnen mit komplexen Zahlen ............................................................................... 174
10.3 Gesamtwiderstand einer Wechselstromschaltung..................................................... 178

11 Berechnungen aus der Regelungstechnik...................................................................... 181


11.1 Der PID-Regler......................................................................................................... 181
11.2 Fuzzy-Regler ............................................................................................................ 193

12 Berechnungen aus der Fertigungstechnik ..................................................................... 201


12.1 Stauchen eine spanlose Formgebung ..................................................................... 201
12.2 Drehen eine spanende Formgebung....................................................................... 207
12.3 Die belastungsoptimale Pressverbindung ................................................................. 210

13 Berechnungen aus der Getriebetechnik......................................................................... 218


13.1 Ermittlung der Zahnflankentragfhigkeit geradverzahnter Stirnrder ...................... 218
13.2 Lagerreaktionen beim Schneckengetriebe ................................................................ 224

14 Technische Dokumentation mit Excel ........................................................................... 232


14.1 Aufteilung von Informationen (Informationsmatrix)................................................ 232
14.2 Beziehungen zwischen Informationen (Relationale Datenbank) .............................. 234
14.3 Verknpfungen mit Objekten (Entity-Relationship Model) ..................................... 235
14.4 Technische Darstellungen......................................................................................... 236
14.5 Visualisierung von Daten.......................................................................................... 237
X Inhaltsverzeichnis

14.5.1 Das Control TreeView ...........................................................................................237


14.5.2 HTML ....................................................................................................................242
14.5.3 XML ......................................................................................................................245

Literaturverzeichnis ..............................................................................................................251

Sachwortverzeichnis Technik ...............................................................................................253

Sachwortverzeichnis Excel+VBA .........................................................................................256


1

1 Einfhrung in VBA

VBA wurde ursprnglich entwickelt, um bestehende Anwendungen (Applications) anzupassen.


Eine Anwendung ist ein eigenstndiges Computerprogramm wie Word fr Textverarbeitung
oder Excel fr Tabellenkalkulationen. Und darin liegt die Einschrnkung. Im Gegensatz zu
Visual Basic, lsst sich Visual Basic for Application nur in einer Anwendung nutzen. VBA ist
aber noch viel mehr als nur eine Programmiersprache. VBA besitzt auerdem eine
Entwicklungsumgebung (IDE = Integrated Development Environment). Zustzliche
Werkzeuge erlauben das Testen und Optimieren von Prozeduren.

1.1 Die VBA Entwicklungsumgebung


Zu allen Office-Anwendungen wie Word, Excel, etc. ist eine zustzliche Anwendung
vorhanden, nmlich eine integrierte Entwicklungsumgebung.

Word Dokument
Excel Arbeitsblatt
Outlook Objekt VBA
PowerPoint Objekt Entwicklungs-
Access Datenbank umgebung
Publisher Objekt (Visual Basic-Editor)
Frontpage Objekt Bild 1-1
etc.
Anwendungen und
Visual Basic-Editor

Installiert wird die Entwicklungsumgebung ber die Schaltflche Office und der darin
enthaltenen Schaltflche Optionen. Unter den Optionen befindet sich auch die Auswahl:
Entwicklungsregisterkarte in der Multifunktionsleiste anzeigen. Damit befindet sich in der
Anwendung dann der Menpunkt Entwicklertools.
Geffnet wird die Entwicklungsumgebung aus einer Office Anwendung heraus ber
Entwicklertools und dann mit Visual Basic. Es ffnet sich ein neues Fenster, das wir
nachfolgend als Visual Basic-Editor bezeichnen. Der Visual Basic-Editor muss aber nicht
immer ber Funktionen aus der Menleiste aufgerufen werden. Mit den Tasten Alt+F11 kann
die Entwicklungsumgebung auch direkt aus den Anwendungen starten.

1.1.1 Der Visual Basic-Editor


Der Visual Basic-Editor wirkt auf den ersten Blick erdrckend. Nicht zuletzt weil er aus
mehreren Fenstern besteht, die unterschiedliche Aufgaben erfllen.
Beginnen wir mit den blichen Grundeinstellungen. Dazu rufen sie im Visual Basic-Editor den
Menpunkt Extras/Optionen auf (nicht unter der Excel-Tabelle Extras!). Es erscheint ein
Fenster mit vier Registern, die Sie nachfolgend sehen.
2 1 Einfhrung in VBA

Unter Editor (Bild 1-2) stellen Sie die Entwicklungsparameter ein. Die Tab-Schrittweite wird
auf 3 gesetzt. Klicken Sie alle Optionsfenster an. Wichtig ist vor allem Variablendeklaration
erforderlich. Damit werden Sie bei der Programmentwicklung gezwungen, alle verwendeten
Variablen zu deklarieren. An der ersten Stelle eines jeden sich neu ffnenden Codefensters
steht dann immer die Anweisung:

Sie werden diese Anweisung auch in unseren spteren Programmlisten wieder finden.

Bild 1-2
Optionen
Editor

Unter Editorformat wird die Schriftart fr die Codedarstellung gewhlt. Ich benutze hier
Courier New mit der Schriftgre 8, weil bei dieser Schriftart alle Zeichen die gleiche Breite
besitzen und somit direkt untereinander stehen. Sie knnen aber auch eine andere Schriftart
whlen. Wichtig ist in erster Linie eine deutliche Lesbarkeit des Programmcode.

Bild 1-3
Optionen
Editorformat
1.1 Die VBA Entwicklungsumgebung 3

Unter Allgemein sind noch Angaben zur Darstellung der Benutzeroberflche mglich. Die
Anordnung von Steuerelementen geschieht in Rastern. Hier habe ich 3 Punkte eingestellt.

Bild 1-4
Optionen
Allgemein

Und im letzten Fenster Verankern sind alle mglichen Fenster des Visual Basic-Editors
aufgefhrt. Neben dem eigentlichen Editor bentigen wir zur Entwicklung und Ausfhrung den
Projekt-Explorer und das Eigenschaftsfenster.

Bild 1-5
Optionen
Verankern

1.1.2 Projekt und Projekt-Explorer


Eine Anwendung, zur der in unserem Fall neben einer oder mehrerer Excel-Tabellen auch
Benutzerflchen, Programmmodule, Objekte und Prozeduren gehren, wird als Projekt
bezeichnet.
4 1 Einfhrung in VBA

Der Projekt-Explorer dient zur Verwaltung aller Objekte eines Projekts. Jedes Projekt besitzt
einen Namen. Beim Neustart steht immer Projekt (Dokument 1) im Explorer. Da man im Laufe
der Zeit mit vielen Projekten arbeitet, sollte man jedem einen aussagekrftigen Namen geben.

Bild 1-6
Der Projekt-Explorer im
Visual Basic-Editor nach
dem Start

Wichtig ist noch, dass in der Menleiste des Projekt-Explorers zwei Schaltflchen von groer
Bedeutung liegen. Mit diesen Schaltflchen bestimmen Sie, ob im Editor ein Objekt (z.B. eine
Benutzerflche) als Ansicht oder die zugehrigen Prozeduren als Programmcode dargestellt
werden. Ein im Projekt-Explorer ausgewhltes Objekt, ist auch immer im Editor sichtbar,
soweit dies von der Art des Objekts mglich ist.

Bild 1-7
Umschaltung im Visual Basic-
Editor zwischen Ansicht und
Programmcode

1.1.3 Der Objektkatalog


Der Objektkatalog, der sich genauso wie alle anderen Fenster in der Entwicklungsumgebung
ber die Menfunktion Anzeigen ein- und ausschalten lsst, zeigt die Klassen, Eigenschaften,
Methoden, Ereignisse und Konstanten an, die in den Objektbibliotheken und Prozeduren dem
jeweiligen Projekt zur Verfgung stehen. Mit diesem Dialogfeld knnen Sie Objekte, die Sie
selbst erstellen, oder Objekte aus anderen Anwendungen suchen und verwenden. Der
Objektkatalog wird eigentlich nur bei Bedarf geffnet.
1.1 Die VBA Entwicklungsumgebung 5

Bild 1-8
Der Objekt-Katalog im
Visual Basic-Editor

1.1.4 Das Eigenschaftsfenster


Das Eigenschaftsfenster ist ein zur Entwicklung sehr wichtiges Fenster. Es listet fr das
ausgewhlte Objekt die Eigenschaften zur Entwurfszeit und deren aktuelle Einstellungen auf.

Bild 1-9
Das Eigenschaftsfenster im
Visual Basic-Editor

Sie knnen diese Eigenschaften zur Entwurfszeit durch Anklicken in der Liste ndern. Dazu
mssen Sie zuerst das entsprechende Objekt durch Anklicken im Editor (Ansicht) markieren.
Wenn Sie mehrere Steuerelemente auswhlen, enthlt das Eigenschaftsfenster eine Liste der
Eigenschaften, die die ausgewhlten Steuerelemente gemeinsam haben. So mssen
Objektgruppen nicht einzeln gendert werden.
6 1 Einfhrung in VBA

1.1.5 Die Direkt-, Lokal- und berwachungsfenster


Die Direkt-, Lokal- und berwachungsfenster helfen beim Testlauf. Diese Fenster dienen zum
Testen der Programme. Das Direktfenster dient zum Eingeben und zum Ausfhren von
Programmcode zur Fehlersuche. Das Lokalfenster zeigt alle deklarierten Variablen in der
aktuellen Prozedur und deren Werte. Das berwachungsfenster berwacht Ausdrcke und
alarmiert beim Eintreten von Randbedingungen. Zur weiteren Einarbeitung empfehle ich die
Literaturhinweise oder das auf meiner Website eingestellte VBA-Lehrkapitel. Fr unsere
Programmierung sind sie nur von untergeordneter Bedeutung.

bung 1.1 Neues Projekt anlegen


ffnen Sie zunchst eine neue Excel-Anwendung. Legen Sie danach die Symbolleiste Visual
Basic an, so wie unter 1.1 beschrieben. Mit der ffnung des Visual Basic-Editors finden Sie im
Projektfenster den derzeitigen Namen des Projekts. Wenn Sie diesen anklicken, dann finden
Sie den Projektnamen auch im Eigenschaftsfenster unter (Name) wieder. Mit einem
Doppelklick und einer neuen Eingabe knnen Sie diesen ndern. Die nderung sehen Sie
anschlieend dann auch im Projektfenster. Diesem Buch-Projekt geben wir den Namen
Berechnungen_VBA.

1.2 Objekte, Anwendungen, Formulare und Module


1.2.1 Objekte, allgemein
Der grundlegende Begriff in dieser Entwicklungsumgebung ist das Objekt. Einem Objekt
ordnen wir Methoden, Eigenschaften und Ereignisse zu. Die Schreibweise von Objekt,
Unterobjekt und Methode oder Eigenschaft ist:

oder

Will man z. B. einer TextBox1 auf dem Formular UserForm1 den Text Dies ist ein Test!
zuweisen, dann schreibt man:

Mchte man, dass dieser Text nicht angezeigt wird, dann schreibt man:

Ereignissen von Objekten sind in der Regel Prozeduren zugeordnet. Klickt man z. B. mit der
linken Maustaste auf den Schalter mit dem Namen cmdStart eines Formulars, so gibt es dazu
im Codefenster des Formulars die Prozedur:
1.2 Objekte, Anwendungen, Formulare und Module 7

In diese Prozedur schreibt man nun all die Anweisungen, die dann ausgefhrt werden sollen,
wenn die Schaltflche angeklickt wird.
Geschieht die obere Textzuweisung im Formular UserForm1 dann gengt es zu schreiben:

Es muss also nicht immer die gesamte Objekthierarchie genannt werden, wenn das Objekt
eindeutig bestimmt ist. Ebenso gibt es gewisse Grundeinstellungen (default-Werte), die man in
der Aufzhlung von Objekt und Eigenschaft nicht nennen muss. Bei einer TextBox ist die
Standardeinstellung Text und so gengt es zu schreiben:

Objekte im Visual Basic-Editor sind Dokumente, Tabellen, Prsentationen, Datenbanken, etc.


Aber auch Fenster, Module, Steuerelemente, Statusleisten, Menelemente, usw. Grundstzlich
ist zwischen Auflistungen von Objekten und den Objekten selbst zu unterscheiden.
Auflistungen wie Workbooks und Worksheets in Excel enthalten Objekte (Workbook und
Worksheet), die ber einen Namen oder einen Index angesprochen werden.
Nachfolgend einige wichtige aktuell gltige Objektlisten:
Word Dokumente - Auflistung Documents(Index).Activate
Excel Workbooks - Auflistung Workbooks(Index).Activate
PowerPoint Presentation - Auflistung Presentation(Index).Activate
Windows - Auflistung Windows(Index).Activate
Um ein Objekt einer solchen Liste anzusprechen, benutzt man einen Index. So liefert

den Namen des zweiten Arbeitsblattes (eine Eigenschaft des Objektes Sheet) in einem
Ausgabefenster. Der Zugriff auf ein nicht vorhandenes Objekt erzeugt den Laufzeitfehler 1004.
Aus diesen Listen ergeben sich dann je nach Anwendung die Objekte:
Application aktives Objekt
FileSearch Objekt zum Suchen nach Dateien
Assistant Objekt des Office Assistenten
Document Word-Dokument
Workbook Excel-Arbeitsmappe
Presentation Objektklasse PowerPoint
MsgBox Meldefenster
InputBox Anzeige eines Eingabedialogs
8 1 Einfhrung in VBA

Objekten kann man im Eigenschaftsfenster unter Namen einen anderen Namen zuordnen.
Dabei geben wir dem Objektnamen ein Prfix, das die Objektart kennzeichnet. Dies ist nicht
zwingend einzuhalten, dient aber der bersichtlichkeit im Programmcode. Ein einmal
festgelegtes Prfix sollte man auch beibehalten.
Beispiele:
tbl Tabelle (sheet)
frm Form (user form)
mod Modul (modul)
com Befehlsschaltfche (command)

1.2.2 Anwendungen und Makros


Unter Anwendungen sind Word-Dokumente, Excel-Tabellen, Outlook-Objekte, PowerPoint-
Prsentationen, etc. zu verstehen. Auch in Anwendungen (Excel-Tabellen) lassen sich
Prozeduren programmieren oder mit der Makro-Funktion erzeugen.
Die Makro-Funktion wird mit Entwicklertools/Makro aufzeichnen gestartet. Alle Ttigkeiten
mit der Excel-Tabelle werden nun (wie bei einem Recorder) aufgezeichnet. Gestoppt wird die
Aufzeichnung wieder mit Entwicklertools/Aufzeichnung beenden.

bung 1.2 Mit der Makro-Funktion eine Kreisflche berechnen


An einem einfachen Beispiel betrachten wir die Makro-Funktion. Auf unserer durch die
vorherige Anwendung angelegten Tabelle geben Sie an beliebiger Stelle einen Wert als
Durchmesser eines Kreises ein. In diesem Beispiel ist es die Zelle B4. Bettigen Sie die
Eingabe mit der Eingabetaste. Damit ist nun die Zelle B5 markiert. Schalten Sie nun die
Makro-Funktion unter Entwicklungstools/Makro aufzeichnen ein. Dabei wird in einem Fenster
nach dem Makronamen gefragt. Geben Sie hier z. B. Kreis ein. Nun bestimmen Sie in der Zelle
B5 den Inhalt der Kreisflche mit dem Durchmesser d aus B4 nach der Formel:

A=d2 (1.1)
4
Geben Sie also unter B5 ein: = B4 * B4 * 3,1415926 / 4. Achten Sie bitte darauf, bei der Zahl
ein Komma zu verwenden. Danach halten Sie die Makroaufzeichnung wieder an.
Sie haben nun ein Makro erstellt. Mit jeder neuen Eingabe im Feld B4 und dem abschlieenden
Druck auf die Eingabetaste, erscheint in B5 das Ergebnis. Sie knnen den Wert in B4 auch nur
ndern (ohne Eingabetaste) und mit Entwicklungstools/Makro und der Makrosauswahl Kreis
das Makro aufrufen. Sie erhalten wiederum die Flche. Das Makro funktioniert auch auf
anderen Zellen. Whlen Sie eine andere Zelle aus und tragen Sie dort den Durchmesser ein.
Markieren Sie jetzt die Zelle darunter und rufen Sie erneut das Makro Kreis ber die
Menfunktionen auf. Das Ergebnis erscheint in der markierten Zelle. Nach der Auswertung
wird berflssigerweise die Zelle B6 markiert.
1.2 Objekte, Anwendungen, Formulare und Module 9

ffnen Sie jetzt bitte den Visual Basic-Editor. Sie werden im Projekt-Explorer ein neues
Objekt Modul1 entdecken. Dieses wurde durch die Makro-Funktion erzeugt. Ein Doppelklick
auf dieses Objekt im Projekt-Explorer zeigt Ihnen den Inhalt im Codefenster. Sie finden dort
das zuvor definierte Makro Kreis als Prozedur mit etwa dem dargestellten Inhalt.

Zeilen, die mit einem Hochkomma beginnen, sind als reine Kommentarzeilen zu betrachten.
Die Prozedur besteht aus zwei Anweisungen. Die erste Anweisung bezieht sich auf die aktive
Zelle (ActiveCell) (in unserem Fall B5) und benutzt den Wert aus der Zeile (Row) davor (R[-
1]) und der gleichen Spalte (Column) C. Diese Art der Adressierung bezeichnet man als
indirekt. Man gibt also keine absolute Adresse (B4) an, sondern sagt: Die aktuelle Zelle (B5)
1. Der Vorteil liegt klar auf der Hand. Unser Makro lsst sich auf jede beliebige Zelle
anwenden, wie zuvor schon ausprobiert. Der Wert (aus der vorherigen Zelle) wird mit sich
selbst multipliziert, dann mit der Kreiskonstanten und durch 4 dividiert. Das Ergebnis wird in
der aktuellen Zelle (B5) abgelegt. Danach wird die Zelle B6 angesprochen. Die Anweisung
Range("B6").Select ist berflssig und muss entfernt werden.
Nun bentigen wir fr diese Prozedur nicht grundstzlich das Modul1. Wir knnen sie nmlich
auch direkt in die Anwendung kopieren. Markieren Sie dazu die gesamte Prozedur in Modul1
und whlen mit der rechten Maustaste im Befehlsfenster Ausschneiden. Doppelklicken Sie nun
im Projekt-Explorer auf das Objekt Tabelle1. Nun ffnet sich ein neues Codefenster, nmlich
das der Anwendung Tabelle1. Und in diesem Fenster rufen Sie mit der rechten Maustaste
erneut das Befehlsfenster auf und whlen Einfgen. Schalten Sie nun in der Menleiste des
Projekt-Explorers auf Ansicht (siehe Bild 1-7) und Sie sehen wieder die Tabelle1. Wenn Sie
nun in der Menleiste von Tabelle1 unter Entwicklungstools/Makros die bersicht
vorhandener Makros aufrufen, finden Sie in der bersichtsliste den Eintrag Tabelle1.Kreis.
Dem Prozedurnamen wird also das entsprechende Objekt vorangestellt. Beide Namen werden
durch einen Punkt getrennt. Ganz im Sinne der Objektschreibweise (siehe Kapitel 1.2.1).
Nun ist dies eine bung und wir bentigen das Modul1 nicht wirklich. Mit einem Klick der
rechten Maustaste auf dieses Objekt im Projekt-Fenster ffnet sich ein Befehlsfenster und Sie
knnen Modul1 lschen. Vielleicht probieren Sie noch andere einfache Makros aus, um ein
Gefhl fr die Wirkungsweise zu bekommen. Whlen Sie dazu andere Volumenformeln oder
hnliche Berechnungen.
Die Makro-Funktion kann Ihnen bei der Entwicklung sehr hilfreich sein. Wollen Sie z. B. ein
Diagramm per Prozedur erstellen, dann knnen Sie dies zuerst manuell mittels Makro
durchfhren. Den so erhaltenen Quellcode knnen Sie dann Ihren Bedrfnissen anpassen.
10 1 Einfhrung in VBA

1.2.3 Steuerelemente in Anwendungen


Nun ist es sehr mhsam, fr den Aufruf einer Funktion immer den Makro-Befehl aufzurufen.
Anwendungen (Word-Dokument, Excel-Arbeitsblatt, ...) verfgen ber die Mglichkeit,
Steuerelemente aufzunehmen. Mit einem Klick auf die Schaltflche Steuerelement-Toolbox
(Bild 1.10) werden alle Standard-Steuerelemente angezeigt.

Bild 1-10
Formular-
steuerelemente

bung 1.3 Prozedur mit Schaltflche starten


Schalten Sie in der Symbolleiste von Visual Basic den Entwurfsmodus (Bild 1.6) ein. Klicken
Sie zur Anzeige auf Einfgen in der Steuerelement-Toolbox. Whlen Sie das Steuerelement
Befehlsschaltflche mit einem Klick aus. Fahren Sie nun mit der Maus auf die Tabellen-
Oberflche an die Stelle, an der eine Befehlsschaltflche eingefgt werden soll. Der Cursor hat
nun die Form eines Kreuzes. Klicken Sie mit der linken Maustaste an die Stelle auf der
Tabelle, wo die linke obere Ecke der Schaltflche sein soll. Halten Sie die Maustaste gedrckt
und fahren Sie so zum rechten unteren Ende der Befehlsschaltflche. Wenn Sie nun die
Maustaste loslassen, sollten Sie eine Befehlsschaltflche mit dem Namen CommandButton1
sehen. Fhren Sie auf dieser Schaltflche einen Doppelklick aus, schaltet der Editor auf
Codedarstellung um und Sie sehen die Ereignisprozedur:

Bei jedem Klick auf die Befehlsschaltflche im Anwendungs-Modus, wird diese Ereignis-
Prozedur aufgerufen. Fgen Sie nun manuell in diese Prozedur den Aufruf der Testprozedur
ein.

Das Call kann eigentlich entfallen, weil das System den Namen Kreis kennt. Ich trage aber der
bersichtlichkeit wegen in allen Prozeduren das Call mit ein.
Beenden Sie nun den Entwurfs-Modus (Bild 1-6). Geben Sie in einer beliebigen Zelle einen
neuen Wert ein und drcken Sie die Eingabetaste, damit die darunter liegende Zelle markiert
1.2 Objekte, Anwendungen, Formulare und Module 11

wird. Drcken Sie die Befehlsschaltflche. Damit wird die Prozedur Kreis ausgefhrt. Das
nachfolgende Bild macht diesen Vorgang noch einmal grafisch deutlich. Hier ist es die
Befehlsschaltflche Start, die durch Anklicken die Ereignisprozedur Start_Click aufruft.
Interessant ist aber auch, dass mit der indirekten Adressierung diese Prozedur fr jede Zelle auf
der Tabelle anwendbar ist.
Probieren Sie auch andere Steuerelemente aus, wie z.B. die Textbox.

Office-Anwendung Ereignis-Prozeduren

Button Start Sub Start_Click()


(Anweisungen) Bild 1-11
End Sub Anwendungen
und Ereignis-
Prozeduren

1.2.4 Formulare und Steuerelemente


Neben der eigentlichen Anwendung (Tabelle) knnen zustzlich Formulare fr den Dialog mit
dem Anwender benutzt werden. Unter der Menfunktion Einfgen/UserForm stellt der Visual
Basic-Editor ein neues Formular bereit und blendet gleichzeitig die Werkzeugsammlung mit
den vorhandenen Steuerelementen ein.
Steuerelemente (eine Klasse von Objekten) sind das A und O der Formularfenster. Sie steuern
den eigentlichen Programmablauf. Jedes Steuerelement hat bestimmte Eigenschaften
(Einstellungen und Attribute), die im Eigenschaftsfenster angezeigt werden. Die dort
angegebenen Werte lassen sich im Entwurfsmodus verndern oder beim spteren Ablauf durch
Wertzuweisung.
Auf Steuerelemente lassen sich auch verschiedene Aktionen anwenden und man spricht hier
von Methoden (z.B. Activate, Refresh, Clear, Load, ...). Ein Ereignis ist eine Aktion, die von
einem Steuerelement erkannt wird (z.B. Mausklick, Tastendruck, ...). Ereignisse lassen sich
durch Ereignis-Prozeduren bearbeiten.

Bild 1-12
Ein Formular und die
Werkzeugsammlung
12 1 Einfhrung in VBA

bung 1.4 Formular zur Berechnung einer Kreisflche erstellen


In dem Eigenschaftsfenster zum Formular (UserForm) finden Sie eine Menge Eigenschaften,
die Sie mit der ntigen Vorsicht verndern knnen. Dort finden Sie auch die Eigenschaft
Caption. Sie beinhaltet den Text fr die Kopfzeile des Formulars. Geben Sie hier Berechnung
einer Kreisflche ein.
Nun ziehen Sie mit der Maus durch Anklicken und Festhalten, aus der Werkzeugsammlung
nacheinander jeweils zwei Bezeichnungsfelder, Textfelder und Befehlsschaltflchen auf das
Formular. ndern Sie in den Eigenschaften der Bezeichnungsfelder und Befehlsschaltflchen
die Texte in Caption so ab, dass ihr Formular eine hnliche Form wie in Bild 1-12 hat. ndern
Sie auch fr alle Objekte unter Font die Schriftgre auf 10 ab. Geben Sie der Textbox fr den
Durchmesser den Namen txtDurchmesser und der anderen den Namen txtFlche. Den
Schaltflchen geben Sie die Namen cmdBerechnung und cmdEnde.

Bild 1-13
Anwendungen und Ereignis-
Prozeduren

Wenn Sie nun nacheinander auf die Schaltflchen Berechnung und Ende in dieser Darstellung
einen Doppelklick ausfhren, schaltet der Visual Basic-Editor automatisch in die
Codedarstellung um und zeigt ihnen die entsprechenden (noch leeren) Prozeduren
cmdBerechnung_Click bzw. darunter cmdEnde_Click. Diese Prozeduren erhalten die
nachfolgend dargestellten Anweisungen. Dabei achten Sie bei der Zahleneingabe darauf, dass
der Dezimalpunkt Vor- und Nachkommastellen trennt und nicht das Komma. Um diese
Prozeduren zu testen, whlen Sie in der Menzeile des Visual Basic-Editors die Anweisung
Ausfhren/Sub UserForm ausfhren. Damit wird das Formular eingeblendet und Sie knnen
nun in das Feld Durchmesser einen Wert eingeben und mit der Schaltflche Berechnung
erhalten Sie das Ergebnis unter Kreisflche.

Das knnen Sie beliebig oft wiederholen. Mit der Schaltflche Ende schlieen Sie das
Formular wieder. Nun wre es sehr schn, wenn das Formular direkt in der Anwendung
(Tabelle) gestartet werden knnte. Die Lsung kennen Sie bereits eine Befehlsschaltflche in
1.2 Objekte, Anwendungen, Formulare und Module 13

der Anwendung nach Kapitel 1.2.3. Erstellt im Entwurfsmodus. Nur den Aufruf eines
Formulars mssen wir noch kennen lernen. Er lautet:

Damit wird das Formular in die Anwendung geladen und existiert somit. Nur sehen kann es der
Anwender noch nicht. Dazu muss eine weitere Anweisung ausgefhrt werden, die lautet:

Ist der Name der Befehlsschaltflche in der Tabelle z. B. cmdStart, dann sollte die Prozedur
wie folgt aussehen:

Nachdem Sie den Entwurfsmodus ausgeschaltet haben, knnen Sie mit der Ausfhrung
beginnen. Es gbe noch eine ganze Menge zu verbessern, doch den Platz heben wir uns fr
spter auf. Nur noch zwei Ergnzungen. Damit Sie immer wieder nach der Berechnung direkt
einen neuen Durchmesser eingeben knnen, wird das Eingabefeld fr den Durchmesser neu
aktiviert. Diese Eigenschaft nennt sich Focus und das Objekt erhlt den Focus mit der
Anweisung:

Welche Ereignisse ein Objekt in ihrem Projekt kennt, knnen Sie ebenfalls im Codefenster
zum Formular erfahren. Im Kopf des Codefensters gibt es zwei Auswahlfelder (Bild 1-14).

Bild 1-14
Auswahlfenster fr
Objekte im
Formular und deren
Ereignisprozeduren

Im linken Feld erhalten Sie eine Auswahlliste der vorhandenen Objekte. Whlen Sie hier
txtDurchmesser mit einem Klick. Im rechten Feld erscheint eine Auswahlliste aller mglichen
Ereignisse. Whlen Sie hier Change. Im Codefenster erscheint nun eine neue Prozedur
14 1 Einfhrung in VBA

txtDurchmesser_Change. Diese Prozedur wird immer aufgerufen, wenn sich der Inhalt im Feld
txtDurchmesser ndert. Wenn Sie in dieser Prozedur ebenfalls den Aufruf der
Berechnungsprozedur platzieren, wird nach jeder nderung im Eingabefeld die Berechnung
aufgerufen. Damit wird die Schaltflche Berechnung berflssig.

Wen es aber strt, dass mit jeder Zahl die Berechnung startet und der nur nach Druck auf die
Eingabetaste eine Berechnung mchte, ersetzt diese Prozedur durch die nachfolgende.

Diese Prozedur liefert als Parameter den ASCII-Code der gedrckten Taste. So erfolgt der
Aufruf der Prozedur nur, wenn der Tastencode = 13 ist. Das ist der der Eingabetaste. Eine
unangenehme Erscheinung tritt hierbei auf. Durch den Druck auf die Eingabetaste wird der
Focus auf ein nachfolgendes Objekt gesetzt und bleibt somit nicht bei dem Eingabefeld. Die
Reihenfolge der Objekte zur Focus-Vergabe wird unter der Eigenschaft TabIndex beginnend
bei 0 festgelegt. Erst wenn Sie allen anderen Objekten unter TabStop = False das Recht zum
Erhalt des Focus entziehen, bleibt der Focus beim Eingabefeld.
Auch Formulare haben Namen und diese knnen, wenn Sie das Formular anklicken, im
Eigenschaftsfenster unter (Name) gendert werden. Stellen Sie vor jeden Namen die Kennung
frm. Sind Formulare allgemein gehalten, knnen sie auch in anderen Projekten zur Anwendung
kommen.

1.2.5 Module
Module dienen wie die Formulare zur Aufnahme von Prozeduren, die auch bei anderen
Projekten eingesetzt werden knnen. Allerdings besitzen Module keine Fensterflche und
damit auch keine Steuerelemente. Ihr einziger Inhalt sind Programmcodes. Ein Modul haben
Sie bereits kennen gelernt. Makros erzeugen Prozeduren in Modulen.
Module lassen sich in verschiedenen Anwendungen einbinden. Eine weitere wichtige
Eigenschaft der Module ist, dass in ihnen mit Global deklarierte Variable fr das ganze Projekt
Gltigkeit haben.
1.3 Die Syntax von VBA 15

1.3 Die Syntax von VBA


1.3.1 Konventionen
Kommentare im Programmcode werden zeilenweise gekennzeichnet. Eine Kommentarzeile
beginnt mit einem Hochkomma oder der Anweisung Rem (fr Remark). Siehe Prozedur Kreis
im Kapitel 1.2.2. Lngere Anweisungen knnen auf mehrere Zeilen verteilt werden. Dazu wird
ein Unterstrich gesetzt. Achtung! Vor dem Unterstrich muss sich ein Leerezeichen befinden.
Siehe Prozedur txtDurchmesser_KeyDown im Kapitel 1.2.4.

Eine Zeile kann auch mehrere Anweisungen enthalten. Diese werden durch einen Doppelpunkt
voneinander getrennt und von links nach rechts abgearbeitet.
Das Einrcken von Programmanweisungen innerhalb von bedingten Anweisungen oder
Programmschleifen dient nur der bersichtlichkeit und hat keine Auswirkungen auf die
Prozedur. Ich empfehle Ihnen jedoch diese Schreibweise. So werden Sie auch ltere
Programme besser lesen knnen.

1.3.2 Prozeduren und Funktionen


Prozeduren haben den grundstzlichen Aufbau:

Der Aufruf der Prozedur erfolgt durch den Prozedurnamen und eventuellen Parametern. Bei
den bergebenen Parametern kann es sich um Variable verschiedener Datentypen handeln. Die
so bergebenen Parameter sind nur in der Prozedur gltig. Werden Variable am Anfang eines
Formulars mit Global definiert, so gelten sie in allen Prozeduren und Funktionen des gesamten
Formulars. Aber Achtung, es muss immer zwischen lokalen und globalen Variablen
unterschieden werden. Mehr dazu unter Parameterlisten.
Eine Prozedur kann jederzeit mit der Anweisung Exit Sub beendet werden. Sinnvollerweise in
Abhngigkeit von einer Bedingung.
Funktionen sind eine besondere Form von Prozeduren. Ihr Aufbau entspricht dem von
Prozeduren:
16 1 Einfhrung in VBA

Der Aufruf der Funktion erfolgt ebenfalls durch den Funktionsnamen und eventuellen
Parametern. Allerdings fungiert hier der Funktionsname auch als Parameter und kann eine
Variable verschiedener Datentypen darstellen.
Die VBA-Entwicklungsumgebung verfgt ber eine groe Auswahl an Prozeduren und
Funktionen in Bibliotheken.

1.3.3 Datentypen fr Konstante und Variable


Jedes Programm bentigt die Mglichkeit, Daten zu speichern. VBA bietet zwei Formen,
Konstante und Variable. Beide Formen werden durch einen Namen bezeichnet. Fr die
Namensvergabe gibt es folgende Regeln:

erstes Zeichen ist ein Buchstabe


jedes weitere Zeichen eine Ziffer, ein Buchstabe, ein Sonderzeichen (auer mathematische
Zeichen und Leerzeichen)
maximal 255 Zeichen
kein VBA Schlsselwort

Werden bestimmte feststehende Daten mehrfach benutzt, definiert man sie blicherweise als
Konstante in der Form:

VBA und Office stellen eine groe Anzahl von Konstanten zur Verfgung, dabei weisen die
ersten beiden Buchstaben auf die Anwendung hin. Nachfolgend die Wichtigsten:
vb VBA Kontante (vbYes)
wd Word Konstante (wdAlign...)
xl Excel Konstante (xlFixed...)
ac Access Konstante (acCmd...)
ad Konstante fr Datenzugriff (adLock...)
pp Powerpoint Konstante (ppEffect...)
mso Office Konstante (msBar...)
fm MSForms Bibliothek fr Formulare (fmAction...)

Variable werden definiert durch:

Die wichtigsten Datentypen finden Sie in der nachfolgenden Tabelle. Um den Datentyp einer
Variablen eindeutig zu kennzeichnen, kann dem Namen der Variablen ein datentypspezifisches
Krzel vorangesetzt werden. So ist z. B. die Variable %Zahl vom Typ Integer oder die
Variable $Text vom Typ String.
1.3 Die Syntax von VBA 17

Tabelle 1-1 Die wichtigsten Datentypen in VBA

Typ Krzel Bezeichnung Datenbereich


Byte Byte 0 bis 255
Integer % Ganze Zahlen -32.768 bis 32.767
Long & Ganze Zahlen -2.147.483.648 bis 2.147.483.647
Single ! Fliekommazahlen -3.4E38 - 3.5E38 (7 Ziffern)
Double # Fliekommazahlen -1.8E308 - 1.8E308 (15 Ziffern)
Currency @ Fliekommazahlen -9.22E14 - 9.22E14 ( 15V 4N )
String $ Zeichenketten 0 - 65535 Zeichen
Date Datum und Zeit 01.Jan.100 - 31.Dez.9999
Boolean Logische Werte True (Wahr) oder False (Falsch)
Variant Beliebige Daten
Die meisten Programmierer verwenden fr Namen von Variablen eine Prfix hnlich dem der
Systemkonstanten:
bol Boolean (Beispiel: bolSichern)
dtm Datum oder Zeit (dtmStartZeitraum)
err Fehlercode (errDateifehler)
int Integer (intZhler)
ftp Fliekomma (ftpErgebnis)
obj Objektverweis (objDokument)
str String/Text (strNachname)

Datenlisten (eine Dimension, auch Vektoren genannt) oder Datenfelder (mehrere Dimensionen,
auch Arrays oder Matrizen genannt) definieren sich durch:

Dabei lassen sich deren Bereiche whrend des Programmablaufs neu dimensionieren durch die
Anweisung:

Das Preserv rettet, soweit mglich, vorhandene Daten, whrend die Anweisung

eine Neuinitialisierung des Arrays vornimmt. Mit der Anweisung

am Anfang eines Formulars wird eine Deklaration der Konstanten und Variablen erzwungen.
Die Benutzung dieser Anweisung ist sehr sinnvoll und vermeidet fatale Fehler.
18 1 Einfhrung in VBA

1.3.4 Parameterlisten
Parameter dienen zur bergabe von Daten zwischen Prozeduren. Der Datentyp eines
Parameters wird entweder durch Typkennzeichen oder durch die As Anweisung bestimmt.
Auch eine gemischte Form ist mglich.

Bei der bergabe gibt es zwei Formen, by Value und by Reference. Jede Variable besitzt eine
Adresse im Hauptspeicher. Mit by Reference, der Standardbergabe, wird diese Adresse
bergeben und mit by Value nur der Wert. So lsst sich verhindern, dass alte Werte
berschrieben werden. Sehr anschaulich ist das vorstehende Beispiel.
Die Prozedur liefert:
Vor dem Aufruf: RefWert = 4 , ValWert = 8.
Nach dem Aufruf: RefWert = 6, ValWert = 8.

1.3.5 Benutzerdefinierte Datentypen


Benutzerdefinierte Datentypen sind ein leistungsfhiges Hilfsmittel zum Gruppieren von
gleichartigen Datenelementen. Nehmen wir als Beispiel folgenden benutzerdefinierten Typ
namens Person:

Sie knnen nun eine Variable des Typs Person deklarieren, die Werte der zugehrigen Felder
individuell festlegen und den kompletten Satz an Prozeduren bergeben, um ihn zu drucken, in
einer Datenbank abzuspeichern, Berechnungen damit durchzufhren, die Felder zu prfen usw.
Angesprochen wird eine Variable unter ihrem vollen Namen, ganz im Sinne der
Objektschreibweise, z.B.:
1.3 Die Syntax von VBA 19

So leistungsfhig benutzerdefinierte Typen einerseits sind, so viel Kopfzerbrechen knnen sie


dem Programmierer andererseits bereiten. Es gilt immer zu bedenken, dass der komplette
Datentyp seine Anwendung findet.

1.3.6 Operatoren und Standardfunktionen


Nachfolgend sind nur die wichtigsten Operatoren und Funktionen aufgefhrt. Wer sich
ausfhrlicher informieren will, findet in der Literatur neben weiteren Definitionen auch
anschauliche Beispiele. Eine weitere Quelle fr Informationen ist die Hilfe in der
Entwicklungsumgebung. In der Menzeile ist sie mit einem Fragezeichen installiert und ein
Mausklick ffnet ein Dialogfenster. Durch Eingabe eines Stichwortes liefert eine Suche alle
verwandten Themen. Auch hier findet man neben Definitionen anschauliche Beispiele.
Tabelle 1-2 Operatoren und Standardfunktionen in VBA

Operatorart Zeichen Bezeichnung


Zuweisungsoperatoren = Wertzuweisung
Numerische Operatoren + Addition
- Subtraktion
* Multiplikation
/ Division
^ Potenzieren
\ ganzzahlige Division
mod Modulo (Restwert nach Division)
Alphanumerische & Verkettung alphanumerischer Variabler
Vergleichsoperatoren = gleich
> grer als
< kleiner als
>= grer gleich
<= kleiner gleich
<> Ungleich
Logische Operatoren Not Nicht
And Und
Or Oder
Xor Exklusiv Oder
Alphanumerische Left linker Teil einer Zeichenkette
Funktionen Right rechter Teil einer Zeichenkette
Len Lnge einer Zeichenkette
Mid Teil einer Zeichenkette
Str Umformung numerisch -> alphanumerisch
Datumsfunktionen Date aktuelles Systemdatum
Now aktuelles Datum und aktuelle Zeit
Month aktueller Monat als Zahl (1-12)
20 1 Einfhrung in VBA

IsDate Prft auf Datum


Numerische Funktionen: Val Umformung alphanumerisch -> numerisch
Int Ganzzahl
Exp Exponent
IsNumeric Prft auf Zahl
IsArray Prft auf Datenfeld
Dialog Funktionen InputBox Eingabe mit Kommentar
MsgBox Ausgabe mit Aktionen
Weitere Hinweise erhalten Sie im Visual Basic-Editor unter dem Fragezeichen (?) in der
Menleiste

1.3.7 Strukturen fr Prozedurablufe

Bedingte Verzweigungen
Bieten in Abhngigkeit von Bedingungen die Ausfhrung unterschiedlicher Anweisungsblcke
an.

Bedingte Auswahl
Wird auch oft als Softwareschalter bezeichnet, da je nach dem Inhalt des Selectors
Anweisungsblcke ausgefhrt werden. Trifft kein Auswahlwert zu, wird der Anweisungsblock
unter Case Else ausgefhrt.
1.3 Die Syntax von VBA 21

Schalter
Die Funktion Switch ist vergleichbar mit der Select Case - Anweisung. Sie wertet eine Liste
von Bedingungen aus und fhrt die betreffende Anweisung durch.

Zhlschleife
Ein Zhler wird ausgehend von einem Startwert bei jedem Next um den Wert 1 oder wenn Step
angegeben ist, um die Schrittweite erhht, bis der Endwert berschritten wird. Der
Anweisungsblock wird fr jeden Zhlerzustand einmal durchgefhrt.

Bedingte Schleifen
In bedingten Schleifen werden Anweisungsblcke in Abhngigkeit von einer Bedingung
mehrfach ausgefhrt. Wir unterscheiden verschiedene Arten.
Die Auslegung einer Bedingung wird durch die folgenden Begriffe gesteuert:
While: Schleife wird solange durchlaufen, wie die Bedingung richtig (true) ist.
Until: Schleife wird solange durchlaufen, wie die Bedingung falsch (false) ist.

Abweisend bedingte Schleife


Anweisungsblock wird mglicherweise erst nach Prfung der Bedingung ausgefhrt.

Ausfhrend bedingte Schleife


Anweisungsblock wird erst durchgefhrt, bevor die erste Prfung der Bedingung erfolgt.

Schleifen ber Datenlisten und Objektlisten


Mit dieser Anweisung werden alle Elemente einer Liste angesprochen.

Schleifenabbruch
Eine Schleife kann jederzeit mit der Anweisung Exit beendet werden
22 1 Einfhrung in VBA

1.3.8 Geltungsbereiche
Durch die Anweisung Public wird der Geltungsbereich von Konstanten, Variablen, Funktionen
und Prozeduren auf alle Module des Projekts ausgeweitet.

Durch die Anweisung Privat wird der Geltungsbereich von Konstanten, Variablen, Funktionen
und Prozeduren grundstzlich auf ein Modul beschrnkt.
Durch die Anweisung Static behalten Variable einer Prozedur ihren Wert auch nach Verlassen
der Prozedur. Bei erneutem Aufruf kann auf den Inhalt der Variablen erneut zugegriffen
werden.

1.3.9 Fehlerbehandlung in Prozeduren


Laufzeitfehler, die bei Ausfhrung einer Prozedur auftreten, fhren zum Abbruch der
Verarbeitung. Weil sich diese Fehler normalerweise nicht unter der Kontrolle des
Programmierers befinden und auch die angezeigten Fehlertexte oft wenig Aufschluss ber den
Sachverhalt wiedergeben, geschweige denn Anweisungen zur Fehlerbehandlung, ist es besser
die Mglichkeiten zur Fehlerbehandlung zu nutzen.
Dazu gibt es die Fehleranweisung On Error und ein Err-Objekt. Mit der Anweisung

wird nach dem Auftreten eines Fehlers zur angegebenen Programmmarke verzweigt. Mit der
Anweisung
1.4 Algorithmen und ihre Darstellung 23

wird der Programmablauf fortgefhrt. Dieses Verhalten zeigt anschaulich die nachfolgende
Grafik in Bild 1-15.
Das Err-Objekt verfgt neben den Eigenschaften Fehlernummer (Number) und Beschreibung
(Description) noch ber die Methoden Raise und Clear zum Auslsen und Lschen von
Laufzeitfehlern:

Anweisung

Resume

Fehlerbehandlungs-
Anweisung
routine

Resume Next
Bild 1-15
Anweisung
Fehlerbehandlung
in Prozeduren

1.4 Algorithmen und ihre Darstellung


1.4.1 Der Algorithmus
Der Begriff Algorithmus ist auf den Perser Abu Ja far Mohammed ibn Musa al Khowarizmi
zurckzufhren, der um 825 n.Chr. ein Lehrbuch der Mathematik verfasste. Allgemein ist ein
Algorithmus eine Methode zur Lsung eines bestimmten Problems. Grafisch (Bild 1-16) als so
genannte Black-Box darstellbar, die Eingaben (Input) zu Ausgaben (Output) umformt.

Input Black Box Output


Bild 1-16
Black Box

Wenn man sich auch immer noch an einer exakten Definition schwer tut, an einen Algorithmus
sind 6 Bedingungen geknpft.
Alle verwendeten Gren mssen bekannt sein.
Die Umarbeitung geschieht in Arbeitstakten.
Die Beschreibung des Algorithmus ist vollstndig.
Die Beschreibung des Algorithmus ist endlich.
24 1 Einfhrung in VBA

Alle angegebenen Operationen sind zulssig.


Angabe der Sprache fr die Regeln.
In diesem Buch verstehen wir unter Algorithmus eine eindeutige Vorschrift zur Lsung eines
Problems mit Hilfe eines Programms. Auf dem Weg von der Idee zum Programm gibt es zwei
sinnvolle Zwischenstationen. Zunchst eine eindeutig Beschreibung des Problems. Diese wird
oft mittels Top-Down-Design erstellt und dann eine grafische Darstellung als Flussdiagramm
oder Struktogramm.
Eine besondere Form des Algorithmus soll noch erwhnt werden. Sie wird als Rekursion
bezeichnet. Eine Rekursion ist dann gegeben, wenn ein Teil des Algorithmus der Algorithmus
selbst ist. So lsst sich z.B. n-Fakultt rekursiv bestimmen aus n-1-Fakultt durch
n! = n (n 1)!
Hier spielt die Endlichkeit des Algorithmus eine sehr wichtige Rolle, denn die rekursiven
Aufrufe mssen ja irgendwann enden.

Beispiel 1-1 Satz des Heron


Die Flche eines beliebigen ebenen Dreiecks bestimmt sich nach dem Satz des Heron aus
a+b+c
A = s( s a)( s b)( s c) , s = . (1.2)
2

a
b
Bild 1-17
Beliebiges
c ebenes Dreieck

Ein Algorithmus zur Bestimmung der Flche setzt zunchst die Angabe der drei Seiten voraus.
Nach berprfung der Werte kann mit den angegebenen Formeln der Flcheninhalt berechnet
werden. Dieser wird in einem letzten Schritt dann ausgegeben.

1.4.2 Top-Down-Design
Zur Verdeutlichung eines Problems und auch zur Suche nach der Lsung bedient man sich
auch gerne der Methode des Top-DownDesign. Dabei wird ein Problem in kleinere
Teilprobleme zerlegt. Wenn ntig, einige Teilprobleme wieder in kleinere Teilprobleme und so
weiter. Letztlich erhlt man kleine berschaubare Teilprobleme und dazugehrige Lsungen,
die dann meist aus einfachen Anweisungen bestehen. Setzt man diese wieder zu einer
Gesamtlsung zusammen ist auch das Problem gelst.
1.4 Algorithmen und ihre Darstellung 25

Tabelle 1-3 Top-Down-Design zur Flchenberechnung eines Dreiecks nach dem Satz des Heron

Problem: Flchenberechnung eines beliebigen Dreiecks


Teilproblem 1: Teilproblem 2: Teilproblem 3:
Eingabe der Berechnung des Flcheninhalts Ausgabe des
Seiten Inhalts A
a, b, c
Teillsung 1: Teilproblem Teilproblem 2.2: Teillsung 3:
Eingabe der 2.1: Bestimmung der Zwischengre s Ausgabe des
drei Werte in Bilden die drei und des Flcheninhalts A Flcheninhalts
Zellen einer Seiten ein in eine Zelle
Tabelle Dreieck? der Tabelle

Teillsung 2.1: Teillsung 2.2:


a <b+c a+b+c
s=
b < a+c 2
c < a+b A = s ( s a )( s b )( s c )

Oft hat man auch Teillsungen definiert, die sich in anderen Problemlsungen ebenfalls
verwenden lassen. Ein Top-Down-Design wird oft grafisch aufwendig gestaltet. Ich denke eine
einfache Tabellenstruktur erfllt den gleichen Zweck.

1.4.3 Flussdiagramm
Flussdiagrammelemente haben wir bereits in Bild 1-15 verwendet. Entsprechend der
vorherigen Syntax-Definitionen unterscheiden wir die nachfolgenden Elemente. Diese werden
entsprechend ihrer zeitlichen Abarbeitung durch Pfeile aneinander gereiht.

Bild 1-18 Flussdiagramm-Elemente

Anfang und Ende eines Flussdiagramms beginnen mit


einer Marke (Label). Aber auch bestimmte Positionen
innerhalb des Flussdiagramms knnen mit einer Marke
gekennzeichnet werden.

Anweisungen stehen einzeln in einem rechteckigen


Block. Pfeile zwischen den Anweisungsblcken zeigen
die Verarbeitungsrichtung an.
26 1 Einfhrung in VBA

Eingaben und Ausgaben werden durch eine Raute


gekennzeichnet.

Verzweigungen in einem Flussdiagramm sind in der


Beding. nein Regel an eine Bedingung geknpft. Ist die Bedingung
erfllt? erfllt, wird der ja-Anweisungsblock durchlaufen,
andernfalls der nein-Anweisungsblock. Diese
ja
Anweisungsblcke knnen auch fehlen. Verschiedene
Anweisungen, Anweisungen,
wenn die wenn die
Anweisungszweige werden mit einem kleinen Kreis
Bedingung erfllt Bedingung nicht wieder zusammengefat.
ist erfllt ist

Unterprogramm, steht fr ein eigenstndiges


Flussdiagramm.

Fr unser Beispiel ergibt sich das nachfolgende Flussdiagramm.

Start

Eingabe
a, b, c

a < b+c
und b < nein
a+c und
c < a+b
ja
a +b +c Ausgabe
s= Eingabefehler
2

2
A = d
4

Ausgabe A Bild 1-19


Flussdiagramm zur
Flchenberechnung eines ebenen
Dreiecks nach dem Satz des
Start Heron.
1.4 Algorithmen und ihre Darstellung 27

1.4.4 Struktogramm
Weniger grafisch aber mindestens genauso aussagekrftig sind Struktogramme. Auch hier
betrachten wir zunchst die Elemente.

Anweisung Anweisungen stehen einzeln in einem


rechteckigen Block.
Anweisung

Verzweigungen in einem Struktogramm sind in


Bedingung(en) der Regel an eine Bedingung geknpft. Ist die
ja nein Bedingung erfllt, werden die Anweisungen unter
ja ausgefhrt, andernfalls die Anweisungen unter
Anweisung(en) Anweisung(en)
nein.

Schleifenbedingung(en) Abweisend bedingte Schleife. Die


Anweisungsblcke werden erst ausgefhrt, wenn
Anweisung(en) die Bedingung erfllt ist und dann so lange wie
die Bedingung erfllt bleibt.
Ausfhrend bedingte Schleife. Die
Anweisung(en)
Anweisungsblcke werden zuerst ausgefhrt.
Schleifenbedingung(en) Danach wird die Bedingung geprft und dann
werden die Anweisungsblcke ebenfalls so lange
ausgefhrt wie die Bedingung erfllt ist.

Bild 1-20 Struktogramm-Elemente

Unterprogramme lassen sich durch formale Beschreibungen definieren, die dann in einer
weiteren Stufe genauer spezifiziert werden.

Eingabe
Bedingung(en)
Bedingte Anweisung ja nein
Anweisung(en) Anweisung(en)
Anweisung

Bild 1-21 Struktogramm-Unterprogrammdarstellung

Die stufige Darstellung nach Bild 1-21 kann beliebig oft wiederholt werden. Die Darstellung
verliert dann natrlich etwas an bersichtlichkeit.
Ein Vorteil der Struktogramme gegenber den Flussdiagrammen ist die Mglichkeit, in den
entsprechenden Elementen mehr Text schreiben zu knnen. Diese Mglichkeit sollten Sie auch
hinreichend nutzen. Nicht immer bleibt das Problem in Erinnerung und bei einer spteren
Bearbeitung ist man fr jeden schriftlichen Hinweis dankbar.
28 1 Einfhrung in VBA

Eingabe a, b, c

a < b+c und


b < a+c und
c < a+b
ja nein

s=(a+b+c)/2

A=sqr(s(s-a) Fehlermeldung: Bild 1-22


(s-b)(s-c)) Es liegt kein Dreieck
vor! Struktogramm zur
Flchenberechnung eines
Ausgabe
Flcheninhalt A
ebenen Dreiecks nach dem
Satz des Heron.

1.5 Objekte unter Excel


Excel besteht aus sehr vielen Objekten. Nach der Hierarchie unterscheidet man in Excel das
Application Object (die gesamte Excel Anwendung)
Workbook Object (die Excel-Arbeitsmappe)
Worksheet Object (ein Tabellenblatt)
Range Object (Zellenbereich , bestehend aus einer oder mehrerer Zellen)
Cell Object (eine Zelle)

Fr die Programmierung ist es wichtig die Objekthierarchie zu kennen. Nur so lsst sich auf ein
Objekt zugreifen.
Application

Workbooks
Cells, Range

Sheets

Bild 1-23
Objekt-
Hierarchie
in Excel

1.5.1 Application Objects


Das Application-Object ist das oberste Objekt der Hierarchie. Viele Eigenschaften und
Methoden des Application-Objektes sind global, so dass Application nicht mit angegeben
werden muss.
1.5 Objekte unter Excel 29

Tabelle 1-4 Die wichtigsten Eigenschaften des Application-Objects

Eigenschaft Beschreibung
ActiveCell Gibt das aktuelle Range-Objekt zurck.
ActivePrinter Gibt das aktuelle Printer-Objekt zurck.
ActiveSheet Gibt das aktuelle Sheet-Objekt zurck.
ActiveWindow Gibt das aktuelle Window-Objekt zurck.
ActiveWorkbook Gibt das aktuelle Workbook-Objekt zurck.
Cells Gibt ein Range-Objekt zurck, das alle Zellen des aktiven Arbeitsblattes
darstellt.
Dialogs Gibt eine Dialogs-Auflistung aller Dialogfelder zurck (Datei-ffnen, -
speichern, -drucken...).
Name Gibt den Namen der Anwendung zurck oder legt ihn fest.
Names Gibt eine Names-Auflistung aller Namen der aktiven Arbeitsmappe
zurck (z.B. benannte Zellen).
Parent Gibt das bergeordnete Objekt zurck.
Path Gibt den vollstndigen Pfad der Anwendung zurck.
Range Gibt ein Range-Objekt zurck, das eine Zelle oder einen Zellbereich des
aktiven Arbeitsblattes darstellt.
Sheets Gibt eine Sheets-Auflistung zurck, die alle Bltter der aktiven
Arbeitsmappe darstellt (Tabellen und Diagramme).
Windows Gibt eine Windows-Auflistung aller Fenster zurck.
Workbooks Gibt eine Workbooks-Auflistung zurck, die alle geffneten
Arbeitsmappen darstellt.
Worksheets Gibt eine Sheets-Auflistung zurck, die alle Tabellen-Bltter der aktiven
Arbeitsmappe darstellt (Tabellen).

Tabelle 1-5 Die wichtigsten Methoden des Application-Objects

Methode Beschreibung

Calculate Berechnet alle Tabellenbltter neu.

CalculateFull Erzwingt eine vollstndige Berechnung der Daten in allen geffneten


Arbeitsmappen.

Viele Eigenschaften und Methoden, die gngige Objekte der Benutzeroberflche zurckgeben
(wie z.B. die aktive Zelle, eine ActiveCell-Eigenschaft) , knnen ohne den Objektkennzeichner
Application verwendet werden. An Stelle von
30 1 Einfhrung in VBA

knnen Sie beispielsweise folgendes eingeben:

1.5.2 Workbook Objects


Das Workbook-(Singular!) Objekt dient dazu, auf ein einzelnes Dokument zuzugreifen. Es ist
die Anwendungsmappe, die auch als Datei gespeichert wird.

Tabelle 1-6 Die wichtigsten Eigenschaften des Workbook-Objects

Eigenschaft Beschreibung

ActiveSheet Gibt das aktuelle (aktive) Blatt zurck.

Name Gibt den Namen der Arbeitsmappe zurck oder legt in fest.

Names Gibt eine Namens-Auflistung aller Namen der Arbeitsmappe zurck


(z.B. benannte Zellen).

Parent Gibt das bergeordnete Objekt zurck (Application-Objekt).

Path Gibt den vollstndigen Pfad der Arbeitsmappe zurck.

Saved True wenn die Arbeitsmappe seit dem letzten Speichern nicht gendert
wurde.

Sheets Gibt eine Sheets-Auflistung zurck, die alle Bltter der Arbeitsmappe
darstellt (Tabellen und Diagramme).

WorkSheets Gibt eine Sheets-Auflistung zurck, die alle Tabellen-Bltter der


Arbeitsmappe darstellt (Tabellen).

Tabelle 1-7 Die wichtigsten Methoden des Workbook-Objects

Methode Beschreibung

Activate Aktiviert eine einzelne Arbeitsmappe.

Close Schliet eine einzelne Arbeitsmappe.

PrintOut Druckt eine Arbeitsmappe.

Save Speichert die nderungen der Arbeitsmappe.


1.5 Objekte unter Excel 31

1.5.3. Worksheet Objects


Worksheet-Objekte sind die einzelnen Tabellenbltter einer Excel-Anwendung.

Tabelle 1-8 Die wichtigsten Eigenschaften des Worksheet-Objects

Eigenschaft Beschreibung

Application Gibt das Application-Objekt zurck.

Cells Gibt ein Range-Objekt zurck (Zellenbereich innerhalb der


Tabellenblattes).

Columns Gibt ein Range-Objekt zurck, das alle Spalten im angegebenen


Arbeitsblatt reprsentiert.

Name Gibt den Namen der Tabelle zurck oder legt ihn fest.

Names Gibt eine Names-Auflistung aller arbeitsblattspezifischen Namen


(Namen mit dem Prfix "ArbeitsblattName!") zurck.

Parent Gibt das bergeordnete Objekt zurck (Workbook-Objekt).

Range Gibt ein Range-Objekt zurck (Zellenbereich innerhalb der


Tabellenblattes).

Rows Gibt ein Range-Objekt zurck, das alle Zeilen im angegebenen


Arbeitsblatt reprsentiert.

UsedRange Gibt ein Range-Objekt zurck, das den verwendeten Bereich


reprsentiert (benutzte Zellen).

Tabelle 1-9 Die wichtigsten Methoden des Worksheet-Objects

Methode Beschreibung

Activate Aktiviert eine einzelne Arbeitsmappe.

Calculate Berechnet ein Tabellenblatt neu.

Select Markiert ein einzelnes Tabellenblatt.

PrintOut Druckt das Tabellenblatt.

Delete Lscht das Tabellenblatt aus der Arbeitsmappe.


32 1 Einfhrung in VBA

Verwenden Sie die Add-Methode, um ein neues Blatt zu erstellen und dieses zur Auflistung
hinzuzufgen. Im folgenden Beispiel werden in der aktiven Arbeitsmappe zwei neue Tabellen
hinter der zweiten Tabelle eingefgt.

Verwenden Sie Worksheets(Index), wobei Index der Name oder die Indexnummer des Blattes
ist, um ein einzelnes Worksheet-Objekt zurckzugeben. Im folgenden Beispiel wird die
Tabelle Tabelle1 aktiviert.

1.5.4 Range Objects


Range-Objekte beziehen sich auf eine Zelle oder einen Zellbereich. Da VBA nicht ber ein
Cell-Objekt verfgt, ist dieses Objekt das mit am meisten verwendete.

Tabelle 1-10 Die wichtigsten Eigenschaften des Range-Objects

Eigenschaft Beschreibung

Address Gibt den Bezug eines Zellenbereichs zurck.

Application Gibt das Application-Objekt zurck.

Cells Gibt ein Range-Objekt zurck, relativ zum gewhlten Range-Objekt.


Range("A1").Value = 12, stellt den Inhalt der Zelle "A1" auf 12 ein.
Cells(1, 2).Value = 24, stellt den Inhalt der Zelle "B1" auf 24 ein.

Column Gibt die erste Spalte zurck (am Anfang des angegebenen Bereichs).

Count Gibt die Anzahl an Zellen im Range-Objekt zurck.

Font Gibt ein Font-Objekt zurck, das die Schriftart des Range-Objekts
darstellt.

Formula Gibt die Formel des Range-Objekts zurck oder legt sie fest.

Parent Gibt das bergeordnete Objekt zurck (Worksheet-Objekt).

Row Gibt die erste Zeile zurck (am Anfang des angegebenen Bereichs).
1.5 Objekte unter Excel 33

Tabelle 1-11 Die wichtigsten Methoden des Range-Objects

Methode Beschreibung

Activate Aktiviert eine einzelne Zelle.

Calculate Berechnet einen Zellenbereich neu.

Select Markiert ein Zelle oder einen Zellbereich.

1.5.5 Zeilen und Spalten


Zeilen und Spalten unter VBA als Rows und Columns tituliert, werden mit der Select-Methode
markiert.
Beispiele:

1.5.6 Zellen und Zellbereiche


VBA kennt kein Objekt fr die einzelne Zelle. Einzelne Zellen zhlen als Sonderfall des
Range-Objekts. Fr die Adressierung von Zellen oder Zellbereiche wird die Range-Methode
oder die CellsEigenschaft verwendet.

Direkte Adressierung mit der Range-Methode

Das Argument Cell ist eine durch Hochkommata eingeschlossene Bezeichnung fr eine
einzelne Zelladresse, im Excel Standardform (A1, B2, C4, usw.), einen Zellenbereich
(A1:C5, D5:F8, usw.) eine durch Kommata getrennte Liste von Adressen
Beispiele

Indirekte Adressierung mit der Cells-Eigenschaft


Im Gegensatz zur Adressierung ber die Range-Methode bietet diese Alternative die
Mglichkeit, Zeilen- und Spaltenindizes zu verwenden. Dies ist insbesondere fr berechnete
Zelladressen oder die Benutzung von Variablen fr Zelladressen ein groer Vorteil. Auch hier
sind mehrere Syntaxvarianten mglich:
34 1 Einfhrung in VBA

Beispiel:

Wertzuweisungen
Die Wertzuweisung an Zellen wird mit Hilfe der Value-Eigenschaft realisiert. Diese
Eigenschaft ist fr ein RangeObjekt ein Default-Wert, d.h. die Angabe Value zum Range-
Objekt kann entfallen.
Beispiele:

Kommentarzuweisungen
Zellen knnen auch Kommentare zugeordnet werden. Das ist in der Regel ein erklrender Text,
der immer dann erscheint, wenn die Zelle mit dem Mauszeiger berhrt wird. Realisiert wird
dies ber das Comment-Objekt des Range-Objekts mit nachfolgenden Eigenschaften und
Methoden.

Tabelle 1-12 Eigenschaften des Comment-Objects

Eigenschaft Beschreibung

Visible Anzeige des Kommentars (true, false)

Tabelle 1-13 Methoden des Comment-Objects

Methode Beschreibung

AddComment Methode zum Erzeugen eines Kommentars

Text Methode, die einen Kommentar hinzufgt oder ersetzt

Delete Lscht einen Kommentar

Previous Holt vorherigen Kommentar zurck

Next Holt nchsten Kommentar zurck


1.5 Objekte unter Excel 35

Eingefgte Kommentare sind in der Auflistung Comments zusammengefasst. ber die


Eigenschaft Visible werden die Kommentare angezeigt oder ausgeblendet.
Beispiele

Einfgen von Zellen, Zeilen und Spalten


Mit den Eigenschaften EntireRow und EntireColumn, zusammen mit der Methode Insert ist
das Einfgen von Zellen, Zeilen und Spalten mglich. Mit Hilfe des Arguments Shift kann
bestimmt werden, in welche Richtung zur aktiven Zelle die brigen Zellen verschoben werden.
Die Richtung wird ber die Konstanten xlDown, xlUp, xlToRight oder xlToLeft angegeben.

Beispiele:

Lschen von Zellinhalten


Neben numerischen und alphanumerischen Werten, knnen Zellen auch Formatierungen und
Kommentare zum Inhalt haben. Fr ein Range-Objekt gibt es daher verschiedene
Lschanweisungen.

Tabelle 1-14 Lschanweisungen fr das Range-Object

Methode Beschreibung

Clear Zellen im angegebenen Bereich sind leer und besitzen das


Standardformat

ClearContents Lscht im angegebenen Bereich nur Inhalte und Formeln

ClearComments Lscht im angegebenen Bereich alle Kommentare

ClearFormats Lscht im angegebenen Bereich alle Formatierungen, Inhalte bleiben

Delete Lscht Zellen und fllt diese mit Zellen mit dem Inhalt der Zellen nach
der Shift-Anweisung auf
36 1 Einfhrung in VBA

Bereichsnamen fr Range-Objekte vergeben


Einzelnen Zellen oder Zellbereichen kann ber die Eigenschaft Name des Range-Objekts ein
Bereichsname zugeordnet werden.
Beispiele:

Da Bereichsnamen Objekte der Auflistung Names sind, kann fr die Zuordnung eines Namens
auch die Add-Methode verwendet werden.
Beispiel:

Der Sinn der Deklaration von Bereichsnamen fr Range-Objekte liegt in der bersichtlichen
Schreibweise.
Beispiel:

Die Bereichsnamen knnen gelscht werden ber eine Anweisung mit der Form:

Suchen in Range-Objekten
Fr das Suchen in Zellbereichen gibt es die Find-Methode fr Range-Objekte. Die Methode
gibt ein Range-Objekt zurck, so dass dieses ausgewertet werden muss.

Das Suchen ber Zellen nach Bedingen ist am einfachsten durch Schleifen realisierbar.
Beispiel:
1.6 Aktionen unter Excel 37

1.5.7 Objektvariable
Objektvariable sind Variable, die auf ein Objekt verweisen. Sie werden genauso wie normale
Variable mit der Dim-Anweisung definiert unter Zuweisung des Objekttyps.

Mit Objektvariablen wird der Zugriff auf Objekte einfacher und schneller. Es mssen nicht
immer alle Objektstrukturen genannt werden.
Lediglich die Wertzuweisung unterscheidet sich von der Wertzuweisung normaler Variabler
und muss mittels der Anweisung Set erfolgen:

Der Einsatz von Objektvariablen erspart vor allen Dingen viel Schreibarbeit, da sie bedeutend
krzer gehalten werden knnen, als die Objekte unter Excel, mit denen sie referieren. Gibt man
ihnen noch Namen, die auf ihre Eigenschaft oder Anwendung schlieen, dann wird man
schnell den Nutzen dieses Variablentyps schtzen lernen.

1.6 Aktionen unter Excel


1.6.1 Neue Excel-Anwendung starten
Mit einem Doppelklick auf das Symbol Microsoft Excel auf dem Desktop oder durch einen
Klick auf den Eintrag Microsoft Excel in Ihrer Programmliste starten Sie eine neue Excel-
Anwendung. Auf Ihrem Bildschirm erscheint die Excel-Anwendung mit dem Namen Mappe1.
Sie besitzt mindestens ein Arbeitsblatt mit dem Namen Tabelle1.

Bild 1-24
Startfenster einer
leeren Excel-
Anwendung
38 1 Einfhrung in VBA

1.6.2 Der Excel-Anwendung einen Namen geben


Whlen Sie unter der Office-Schaltflche (links oben) die Methode Speichern unter. Es
ffnet sich ein Dialogfenster. Hier whlen Sie zunchst den Pfad, unter dem Ihre Excel-
Anwendung gespeichert werden soll. Notfalls whlen Sie mit der Schaltflche Neuen Ordner
erstellen einen neuen Ordner. Geben Sie dann unter Dateinamen den neuen Namen Ihrer Excel-
Anwendung an. Ich habe fr dieses Buchprojekt ein eigenes Verzeichnis angelegt unter dem
Pfad C:\Eigene Dateien\Maschinenbau. Die Excel-Anwendungen habe ich nach Kapiteln
unterteilt. So bleiben die Anwendungen berschaubar. Bild 1-25 zeigt das Dialogfeld zur
Speicherung der Anwendungen von Kapitel zwei.

Bild 1-25
Dialogfenster zur
Speicherung der Excel-
Anwendung Kapitel 2
im Verzeichnis
C:\Eigene
Dateien\Excel VBA fr
Maschinenbauer

1.6.3 Dem Excel-Arbeitsblatt (Tabelle) einen Namen geben


Haben Sie eine neue Excel-Anwendung geffnet, dann wird in dieser Anwendung das erste
Arbeitsblatt direkt angelegt und hat den Namen Tabelle1. Oft werden auch gleichzeitig drei
Tabellen angelegt. Das ist abhngig von den eingestellten Optionen. Die Arbeitsbltter unter
Excel werden auch oft als Tabellen bezeichnet.
Klicken Sie mit der rechten Maustaste auf den Namen Tabelle1. Es ffnet sich das so genannte
Kontextmen. Nun knnen Sie auf Umbenennen klicken und einen anderen Namen eingeben.
So bekommt z. B. das erste Arbeitsblatt von Kapitel 2 den Namen Krfte.
Der Klick mit der rechten Maustaste auf ein beliebiges Objekt unter Windows ffnet immer
das Kontextmen. Je nach Objekt fllt der Inhalt unterschiedlich aus, da das Kontextmen alle
Methoden zeigt, die auf das betreffende Objekt angewendet werden knnen.

1.6.4 In der Excel-Anwendung ein neues Arbeitsblatt anlegen


Sie knnen ein weiteres Arbeitsblatt in einer Excel-Anwendung durch Klicken auf das
Einfgesymbol (siehe Bild 1-26) oder mit Hilfe der Tasten Umschalt+F11 einfgen. Das
Arbeitsblatt erhlt wiederum den Namen Tabelle1, und wenn dies schon vorhanden ist, den
Namen Tabelle2 und so weiter.

Bild 1-26
Neues Tabellenblatt einfgen
1.6 Aktionen unter Excel 39

1.6.5 Dem Projekt und dem Arbeitsblatt einen Namen geben


Bleiben wir bei dem zuvor beschriebenen Start mit Kapitel 2. Wir haben eine neue Excel-
Anwendung aufgerufen. Danach dem Arbeitsblatt den Titel Krfte (zuvor Tabelle1) gegeben
(Kapitel 1.6.3). Diese Excel-Anwendung mit dem Namen Mappe1 unter dem Namen Kapitel 2
ins Verzeichnis C:\Eigene Dateien\Maschinenbau gespeichert (Kapitel 1.6.1). Und sind nun
ber den Menpunkt Extras\Makros\Visual Basic-Editor in die Entwicklungsumgebung
gelangt. Damit zeigt der Projekt-Explorer den Inhalt wie in Bild 1-27 dargestellt.

Bild 1-27
Projekt-Explorer beim Neustart

Durch Anklicken von VBAProject und Tabelle1 (nacheinander fr beide Objekte ausfhren),
lassen sich im Eigenschaftsfenster unter (Name) die Namen ndern. Der Projektname wird zu
Kapitel2 (ohne Leerzeichen!) und das Arbeitsblatt erhlt den Namen TblKrfte. Das Prfix Tbl
dient zur besseren Lesbarkeit im Programmcode (siehe Kapitel 1.3.3).

1.6.6 Prozeduren mit Haltepunkten testen


Erstellen Sie die im nachfolgenden Bild dargestellte Testprozedur in einer neuen Excel-
Anwendung und klicken Sie an der gekennzeichneten Stelle im linken grauen Rand neben dem
Programmcode. Es erscheint ein brauner Punkt und die entsprechende Programmzeile wird
ebenfalls mit braunem Hintergrund dargestellt.

Bild 1-28
Ein Haltepunkt im
Programmcode

Ein nochmaliger Klick an die gleiche Stelle entfernt diesen Punkt wieder. Eine so
gekennzeichnete Stelle ist ein Haltepunkt. Wird nun diese Prozedur gestartet, z. B. mit der F5-
Taste, dann wird an dieser Stelle der Prozedurablauf unterbrochen. Wenn Sie jetzt mit der
Maus auf die entsprechenden Variablen x oder i fahren, erscheint deren Inhalt als Anzeige. Mit
der F8-Taste knnen Sie nun schrittweise jede weitere Anweisung auslsen. Die aktuelle Zeile
wird dann gelb dargestellt. Sie knnen aber auch mit der F5-Taste die Prozedur weiter laufen
lassen bis zum nchsten Haltepunkt oder bis zum Prozedurende. Es lassen sich auch mehrere
Haltepunkte setzen. Haltepunkte knnen beim Testlauf auch gelscht oder neu gesetzt werden.
Weitere Informationen zu den Objekten in der Prozedur erhalten Sie auch durch Einblenden
des Lokal-Fensters unter Ansicht/Lokal-Fenster.
40 1 Einfhrung in VBA

1.6.7 Codefenster teilen


Bei umfangreichen Programmcodes kommt es vor, dass man eine andere Stelle im Code
betrachten mchte, ohne die aktuelle Stelle verlassen zu mssen. Dazu lsst sich das
Codefenster teilen und Sie erhalten zwei Fenster, in denen unterschiedliche Stellen der
Prozedur(en) dargestellt werden knnen.

Bild 1-29
Schaltflche zur
Teilung des
Codefensters

Klicken Sie dazu in der oberen rechten Ecke auf eine kleine vorhandene Schaltflche (siehe
Bild 1-29). Halten Sie die Maustaste gedrckt und fahren Sie so bis zur Mitte des Codefensters.
Das Fenster wird so geteilt. Wenn Sie diese Trennlinie wieder anklicken, festhalten und nach
oben aus dem Codefenster schieben, wird diese Teilung wieder aufgehoben.

1.6.8 Symbolleiste fr den Schnellzugriff ergnzen


Mit der Version 2007 hat Microsoft das Konzept der Men- und Symbolleisten auf ein neues
Bedienprinzip umgestellt, das mit dem Schlagwort Ribbon bezeichnet wird. Dem einfacheren
Ribbon-Konzept musste die Flexibilitt eigener Symbolleisten-Gestaltung weichen. Es existiert
jetzt eine Schnellzugriffsleiste, der beliebige Funktionen zugeordnet werden knnen.
Als Beispiel soll hier fr die Prozedur Kreis ein Symbol fr den Schnellzugriff installiert
werden. Dazu klicken wir auf die Schaltflche Symbolleiste fr den Schnellzugriff anpassen,
die sich bei der Symbolleiste befindet (Bild 1-30). Damit ffnet sich eine Menleiste, unter der
sich auch der Befehl Weitere Befehle befindet.

Bild 1-30
Symbolleiste fr den
Schnellzugriff
anpassen
1.6 Aktionen unter Excel 41

Unter dem folgenden Dialogfenster whlen wir in der linken Spalte Anpassen und unter
Befehle auswhlen den Eintrag Makros (Bild 1-31).

Bild 1-31
Dialogfenster zur Auswahl
vorhandener Makros

Damit werden die vorhandenen Makros angezeigt, in unserem Fall die Prozedur Kreis. Mit den
Schaltflchen Hinzufgen und Entfernen kann nun die Symbolleiste fr den Schnellzugriff
angepasst werden (Bild 1-32).

Bild 1-32
bernahme eines
Makros fr den
Schnellzugriff

Wer mchte, kann zustzlich dass Symbol ndern. Mit der Schaltflche ndern ffnet sich ein
Fenster mit verschiedenen Symbolen. Hier kann ein anderes Symbol ausgewhlt werden.
42 1 Einfhrung in VBA

Bild 1-33
Dialogfenster zur Symbolauswahl

In der Symbolleiste fr den Schnellzugriff lsst sich auch der Aufruf der
Entwicklungsumgebung unterbringen. Whlen Sie in der Menleiste der Excel-Tabelle
Entwicklertools. Klicken Sie mit der rechten Maustaste auf das Symbol Visual Basic und
whlen Sie Zu Symbolleiste fr den Schnellzugriff hinzufgen. Danach steht das Symbol auch
in der Schnellzugriffsliste und mit einem einfachen Klick wird die Entwicklungsumgebung
aufgerufen (Bild 1-34).

Aufruf der Menpunkt zur


Schnellstartliste Entwicklungsumgebung

Aufruf der
Entwicklungs-
Umgebung
Bild 1-34
Zugriff ber die
Schnellstartliste

1.6.9 Makros aus dem Menbereich Add-Ins aufrufen


Wer fr seine Anwendung dennoch einen eigenen Meneintrag mchte, kann ber das Men-
Objekt einen Meneintrag unter Add-Ins erreichen. Fr das Men wird ein zustzliches Modul
ModBuchMenu (Bild 1-35) erstellt.

Bild 1-35
Modul fr
Meneintrge
1.6 Aktionen unter Excel 43

In dieses Modul wird der nachfolgende Code aus der Codeliste 1-1 eingetragen. Er enthlt zwei
Prozeduren. InitMenu erstellt den Meneintrag und RemoveMenu entfernt ihn wieder.
Aufrufen lassen sich diese Prozeduren ber Entwicklungstools/Makros.

Codeliste 1-1 Beispiel-Menprozeduren

Bei diesem Beispiel befindet sich nach dem Aufruf von InitMenu in der Menleiste unter Add-
Ins der Eintrag Excel+VBA. Dieser weist wiederum die Funktionen bung1 und bung2 auf
(Bild 1-36).

Bild 1-36
Meneintrge
44 1 Einfhrung in VBA

Sie rufen beide die gleiche Prozedur zur Kreisberechnung auf, die wir bereits unter 1.2.2
erarbeitet haben. Allerdings stehen die Prozeduren, ich habe sie zur Unterscheidung Kreis_1
und Kreis_2 genannt, in unterschiedlichen Bereichen.
Kreis_1 in der Tabelle1 wird unter Angabe des Tabellenblattes aufgerufen, whrend Kreis_2
im zustzlichen Modul ModKreisFlche direkt aufgerufen wird. Obwohl beide Prozeduren als
Private deklariert sind, lassen sie sich auf diese Art aufrufen, ohne dass sie in der Makro-
bersicht erscheinen. Meneintrge lassen sich auch ber das Kontextmen (rechte Maustaste)
entfernen.
Damit der Meneintrag nicht stndig aus- und eingeschaltet werden muss, lsst sich dies auch
ber die Ereignisse des Workbooks steuern. Mit Workbook_Open kann der Menpunkt beim
ffnen der Anwendung installiert und mit Workbook_BeforeClose wieder deinstalliert werden.
Dazu sind die beiden nachfolgenden Prozeduren unter DieseArbeitsmappe zu installieren.

Codeliste 1-2 Automatische Installation und Deinstallation der Menprozeduren

Die Menprozeduren selbst knnen dann als Private Sub definiert werden. Wer mag, kann die
Meneintrge noch mit einem Icon und einem Erklrungstext versehen, der immer dann
erscheint, wenn sich der Mauszeiger auf dem Menpunkt befindet. Dazu ergnzen Sie die
Meneintrge um die Anweisungen

Um die ersten 100 Icon-Indizes von ber 4000 zu sehen, erstellen Sie einfach einen Menpunkt
nach folgendem Muster:
1.6 Aktionen unter Excel 45

1.6.10 Berechnungsprozeduren als Add-In nutzen


Berechnungsprozeduren lassen sich in Modulen unter einem Workbook zusammenfassen und
mit Speichern unter und dem Dateityp Microsoft Office Excel Add-In in dem
Standardverzeichnis fr Vorlagen speichern. Ein solches Add-In kann dann ebenfalls ber die
Ereignisprozeduren geladen werden (Codeliste 1-3).

Codeliste 1-3 Automatische Installation und Deinstallation eines AddIns

bungen
Erstellen Sie ein eigenes Excel-Template um bei jeder neuen Anwendung bereits mit einem
Grundgerst zu beginnen. Ergnzen Sie dieses Template mit eigenen Prozeduren und erstellen
Sie anschlieend daraus ein eigens Add-In. Ihr eigenes Add-In knnen Sie mit einem
Programmschutz versehen und so vor einem Zugriff schtzen.
46 2 Berechnungen aus der Statik

2 Berechnungen aus der Statik

Die Statik (lat. stare, statum = feststehen) ist die Lehre der Wirkung von Krften auf starre
Krper im Gleichgewichtszustand. Die Statik befasst sich also mit dem Zustand der Ruhe, der
dadurch gekennzeichnet ist, dass die an einem Krper angreifenden Krfte miteinander im
Gleichgewicht stehen. Wird das Gleichgewicht der Krfte gestrt, kommt es beispielsweise zu
bleibenden plastischen Verformungen oder zum Bruch. Die Folge sind einstrzende Brcken
und Bauwerke.

2.1 Krfte im Raum


Eine Kraft kann an Hand ihrer Wirkung beobachtet werden. Ihr Wirken zeigt sich in der Ver-
formung eines Krpers oder der nderung seines Bewegungszustandes.
Die Kraft hat den Charakter eines linienflchtigen Vektors und ist somit durch Gre, Wirk-
richtung und Angriffspunkt eindeutig bestimmt. Greifen mehrere Krfte an einem Punkt an,
dann lassen sie sich mittels der so genannten Vektoraddition zu einer Kraft, man spricht von
einer Resultierenden, zusammenfassen.
Um die Lage und Richtung der Krfte bestimmen zu knnen, bedienen wir uns eines Koordi-
natensystems (x, y, z) mit seinem Ursprung u.

u
x Bild 2-1

Koordinatensystem zur Betrachtung


z rumlicher Krfte

Die Anordnung der Krfte im Raum kann beliebig sein. Fr den Fall, dass die Wirklinie einer
Kraft nicht durch den Ursprung geht, kommen wir zur zweiten wichtigen Gre in der Statik,
dem Moment. Ein Moment ist das Produkt aus Kraft x Hebelarm:
M = F a (2.1)
Dabei ist der Hebelarm der krzeste Abstand zwischen Wirklinie der Kraft und Ursprung u. Er
liegt auerdem senkrecht zur Wirklinie. Ein Moment ist die Ursache einer Drehbewegung.
Momente lassen sich genau wie Krfte zusammenfassen.
2.1 Krfte im Raum 47

.
a u
x
Bild 2-2

z Kraft F und Hebelarm a

Sind nun n Krfte Fi (i=1,...n) gegeben, so ergibt sich die resultierende Kraft aus der Summe
der Vektoren
n
Fr = Fi (2.2)
i =1

Fi Fyi

y Fzi
Fxi
ai

u
azi ayi x
Bild 2-3
axi
z Komponentendarstellung

und das resultierende Moment aus


n n
M u = M ui = ai Fi . (2.3)
i =1 i =1

Genauso gilt auch fr die Projektionen der Krfte und Momente auf die Achsen des Koordina-
tensystems
n
Frk = Fik , k {x, y, z} (2.4)
i =1

n n
M uk = M uik = (aip Fiq aiq Fip ). (2.5)
i =1 i =1
48 2 Berechnungen aus der Statik

Darin ist k {x, y, z} und fr p und q als abhngige Indizes gilt:

k p q
x y z
y z x
z x y

Die betragsmigen Gren von resultierender Kraft und resultierendem Moment ergeben sich
aus den berechneten Komponenten nach dem Satz der Pythagoras

Fr = F
k = x, y, z
2
rk (2.6)

Mu = M uk2 . (2.7)
k = x, y , z

Beginnen wir an dieser Stelle mit dem Einstieg in die Programmierung, zumal wir das Zu-
sammenfassen von Krften und Momenten spter noch einmal brauchen.

Aufgabe 2.1 Bestimmung von Resultierenden


Gesucht ist eine Prozedur, die bei Eingabe von Krften durch deren Gre und Lage, die resul-
tierende Kraft und das resultierende Moment ermittelt.
Angewandt auf unser Problem, knnte das Top-Down-Design etwa so aussehen wie in Tabelle
2.1 dargestellt. Dies ist auch die einfachste Form einer Strukturierung: Eingabe Auswertung
Ausgabe. Analog zur einfachsten Darstellung eines Problems: Der Black Box.

Tabelle 2-1 Top-Down-Design fr eine Krftereduktion

Reduktion von beliebigen Krften im Raum auf eine resultierende Kraft und ein resultie-
rendes Moment
Eingabe Auswertung Ausgabe
Eintragung aller erforderli- Summation der Komponen- Eintrag der berechneten
chen Werte von Kraft und ten und Berechnung der Werte in die Tabelle. Dia-
Hebelarm durch ihre Kom- betragsmigen Gren. gramm zur Darstellung
ponenten. vorsehen.

Oft knnen Teilprobleme als eigenstndige Prozeduren auch in anderen Problemen als Teill-
sung genutzt werden. Der nchste Schritt ist die graphische Darstellung des Algorithmus als
Struktogramm. Dabei kommt nun der zeitliche Ablauf der Lsung ins Spiel.
2.1 Krfte im Raum 49

Tabelle 2-2 Struktogramm zur Krftereduktion

Eingabe der erforderlichen Daten zur Berechnung


i = 1 um 1
bis n
F = F + F , k {x, y, z}
ik ik ik

M = M + Muik uik uik

Fr = F
k = x, y ,z
2
rk

Mu = M
k = x, y,z
2
uk

Ausgabe der Ergebnisse in Tabellen und Diagrammen

Das Programm besteht aus drei Unterprogrammen, von denen nur die Auswertung als Struk-
togramm beschrieben wird. Die Eingabe und Ausgabe ist einfach und daher direkt im Pro-
gramm zu erkennen. Auch hier spiegelt sich das Top-Down-Design wieder.

Codeliste 2-1: Formblatterstellung und Testdaten

Option Explicit
'
'Prozedur zur Erstellung eines Formblatts
Sub Kraefte_Formblatt()
'Tabelle lschen
Worksheets("Krfte").Activate
Worksheets("Krfte").Cells.Clear
'
'Formblatt
Range("A1:C1").MergeCells = True
Range("A1") = "Angriffspunkt"
Range("B1") = "Angriffspunkt"
Range("C1") = "Angriffspunkt"
Range("A2") = "x"
Range("B2") = "y"
Range("C2") = "z"
Range("D1:F1").MergeCells = True
Range("D1") = "Kraftkomponenten"
Range("E1") = "Kraftkomponenten"
Range("F1") = "Kraftkomponenten"
Range("D2") = "x"
Range("E2") = "y"
Range("F2") = "z"
Range("A:F").ColumnWidth = 10
Columns("A:F").Select
Selection.NumberFormat = "0.00"
End Sub
'
'Prozedur lscht und erstellt neues Formblatt und setzt Testdaten ein
Sub Kraefte_Testdaten()
Call Kraefte_Formblatt
Range("A3") = 3
50 2 Berechnungen aus der Statik

Range("B3") = 0
Range("C3") = 0
Range("D3") = 0
Range("E3") = 3
Range("F3") = 0
Range("A4") = 0
Range("B4") = 1
Range("C4") = 0
Range("D4") = 0
Range("E4") = 0
Range("F4") = 4
Range("A5") = 0
Range("B5") = 0
Range("C5") = 2
Range("D5") = 5
Range("E5") = 0
Range("F5") = 0
End Sub

Fr Formular und Testdaten haben wir die Prozeduren bereits geschrieben. Bleibt also die
Auswertung. Auch die Auswertung gliedert sich in drei Bereiche.

Tabelle 2-3 Struktogramm zum Einlesen der Eingabewerte aus der Tabelle

i = 1 um 1 bis
Anzahl Zeilen k =1 um 1 bis 3

a(i, k ) = Inhalt ( Zelle)

F (i, k ) = Inhalt ( Zelle)

Tabelle 2-4 Struktogramm Summenbildung

i = 1 um 1 bis
Anzahl Zeilen k =1 um 1 bis 3

a(k ) = a(k ) + a(i, k )


F (k ) = F (k ) + F (i, k )
M(k) = M(k) +(a(i, p) F(i,q) a(i,q) F(i, p))
Tabelle 2-5 Struktogramm zur Bestimmung der Resultierenden

i=1 um 1 bis 3

F = F + F (i) F (i)
M = M + M (i) M (i)
2.1 Krfte im Raum 51

Fr = F

Mr = M

Codeliste 2-2: Auswertung

'Prozedur wertet die Eingabedaten auf


Sub Kraefte_Auswertung()
'
'Initialisierung
'
Dim a(), F(), x, y As Double
Dim Suma(), SumF(), SumM() As Double
Dim i, j, p(3), q(3), Zeilen As Integer
Dim Sp, Zl As String
p(1) = 2: p(2) = 3: p(3) = 1
q(1) = 3: q(2) = 1: q(3) = 2
'
'
'Bestimmung belegter Zeilen
'und Definition der notwendigen Vektoren
'
Worksheets("Krfte").Activate
Cells(Rows.Count, 1).End(xlUp).Select
Zeilen = ActiveCell.Row
ReDim a(Zeilen, 3), F(Zeilen, 3)
ReDim Suma(Zeilen), SumF(Zeilen), SumM(Zeilen)
'
'
'Einlesen der Eingabewerte aus der Tabelle
'
For i = 3 To Zeilen
For j = 1 To 3
Zl = Right("00" + LTrim(Str(i)), 2)
Sp = Chr(64 + j)
a(i, j) = Val(Range(Sp + Zl).Value)
Suma(j) = Suma(j) + x
Sp = Chr(67 + j)
F(i, j) = Val(Range(Sp + Zl).Value)
Next j
Next i
'
'
'Die eigentlich Auswertung
'
For i = 3 To Zeilen
For j = 1 To 3
Suma(j) = Suma(j) + a(i, j)
SumF(j) = SumF(j) + F(i, j)
SumM(j) = SumM(j) + (a(i, p(j)) * _
F(i, q(j)) - a(i, q(j)) * F(i, p(j)))
Next j
Next i
'
'Ausgabe der Resultierenden
'
i = Zeilen + 2
Zl = LTrim(Str(i))
x = 0: y = 0
52 2 Berechnungen aus der Statik

For j = 1 To 3
Sp = Chr(64 + j)
Range(Sp + Zl) = SumF(j)
Sp = Chr(67 + j)
Range(Sp + Zl) = SumM(j)
x = x + SumF(j) * SumF(j)
y = y + SumM(j) * SumM(j)
Next j
x = Sqr(x)
Range("G1") = x
y = Sqr(y)
Range("G2") = y
End Sub

Beispiel 2.1 Zusammenfassung mehrerer Krfte im Raum


In den Testdaten sind drei Krfte mit unterschiedlichen Angriffspunkten gegeben (Bild 2-4).
Das Programm ermittelt die resultierende Kraft und das resultierende Moment.

Bild 2-4

Auswertung
Beispiel

bungsvorschlge
Eine Kombination aus einem Kraftvektor und einem Momentenvektor bezeichnet man in der
Mechanik als Dyname. Krfte und Momente die auf einen Starrkrper wirken, haben eine
Dyname als Resultierende. Je nach gewhltem Bezugspunkt kann es vorkommen, dass Kraft-
und Momentenvektor der Dyname gleichgerichtet (kollinear) sind - in diesem Fall bezeichnet
man die Dyname als Kraftschraube. Ergnzen Sie dieses Programm also um die Bestimmung
der Dyname.
Auer der Mglichkeit der Komponentenangabe, gibt es zur Richtungsangabe eines Vektors
zum Ursprung und den Koordinaten, die Angabe der Richtungswinkel (Bild 2-5). Nehmen Sie
deren Bestimmung in Ihre Berechnung mit auf.
ai
i = arccos

, = ai2 (2.8)
i = x, y , z
2.2 Krfte in Tragwerken 53

y
a
ay
u
x
az Bild 2-5
z
ax Richtungswinkel

2.2 Krfte in Tragwerken


Kommen wir nun zu unserem eigentlichen Problem, den Sttzkrften in ebenen Tragwerken.
Unter einem ebenen Fachwerk versteht man ein Gebilde aus geraden Stben, die in ihren End-
punkten (man spricht von Knoten) durch reibungsfreie Gelenke verbunden sind. Die ueren
Belastungskrfte greifen dabei nur in Knoten an. Durch diese Idealisierung knnen in den
Stben nur Zugkrfte oder Druckkrfte bertragen werden.

Bild 2-6

Ebenes Fachwerk

Zur Berechnung verwenden wir das Knotenpunktverfahren. Dieses Verfahren besagt, jeder
Knoten muss fr sich im Gleichgewicht sein und somit die zwei Gleichgewichtsbedingungen,
Summe aller horizontalen und vertikalen Komponenten gleich Null erfllen. Da die Stbe
zentrisch an den Knoten angeschlossen sind, entfllt die 3. Gleichgewichtsbedingung:
M = 0.
Betrachten wir einen Knoten bezglich eines Koordinatensystems. Zur Festlegung der Kraft-
angriffsrichtung, denn die Krfte knnen nur lngs der Stabrichtung wirken, muss die Gleich-
gewichtsbedingung
n

F
i =1
i =0 (2.9)

erfllt sein. In Komponentenschreibweise heit das, dass alle vertikalen und horizontalen
Komponenten ebenfalls Null sein mssen.
54 2 Berechnungen aus der Statik

y
Fi

F i cos i
i
x
Bild 2-7
F i sin i
- Fi
z Krfte im Knoten

Nun sind je nach Lage des Vektors im Koordinatensystem seine Komponenten unterschiedlich
zu bestimmen (siehe Bild 2-8).

y F F y
F y = F sin i

i Fy = F cos(i 90) i
x x
F x = F cos i Fx = F sin(i 90)
-F z -F
z

y -F y
-F
i
x i
x
z Bild 2-8
F y = F sin( i 180)
F z F y = F cos(i 270 ) F
Krfte im Kno-
F x = F cos( i 180 ) F x = F sin( i 270 ) ten

Wirkt auf einen Knoten eine uere Kraft, wird diese ebenfalls am frei gedachten Knoten mit
angetragen. In der Berechnung betrachtet man die unbekannte Stabkraft zunchst als Zugkraft.
Liefert die Auflsung des Gleichungssystems fr eine Stabkraft ein negatives Vorzeichen, so
handelt es sich um eine Druckkraft.
2.2 Krfte in Tragwerken 55

Beispiel 2.2 Eisenbahnbrcke


Um zu einem Berechnungsalgorithmus zu kommen, betrachten wir nachfolgend als Testbei-
spiel einer Eisenbahnbrcke nach Bild 2-9. Die Auflagerkrfte ergeben sich aus dem ueren
Gleichgewichtszustand von Krften und Momenten.

S11 S7
S3
1,5 m
S9 S5
S13 S12 S8 S4
2m S15 S1
S14 S10 S6 S2
Bild 2-9
3m 3m 3m 3m
B 4 A Modell einer
F = 3,6 x 10 N Eisenbahnbrcke

Krftegleichgewicht:
A+ B+ F = 0 (2.10)
Daraus folgt durch Umstellung
B = ( F + A) (2.11)
Momentengleichgewicht:
12 A + 3 F = 0 (2.12)
Daraus folgt durch Umstellung
3
A= F (2.13)
12
Durch Einsetzen ergibt sich die Lsung:
3
A= 3,6 10 4 N = 0,9 10 4 N (2.14)
12
B = (3,6 + 0,9) 10 4 N = 2,7 10 4 N (2.15)
Der erste Knoten hat folgende Kraftvektoren, wobei nur die Auflagerkraft A bekannt ist. Diese
ist eine Druckkraft und damit negativ einzusetzen.
56 2 Berechnungen aus der Statik

y
s1

126,9
x Bild 2-10
s2
A
1. Knoten

Winkel der zu berechnenden unbekannten Stabkrfte 1 = 126,9 und 2 = 180,0. Bekannte


Krfte und ihre Lage i = 270,0 mit A = Fi = - 0,9 104 N.
Horizontale Komponenten:
- S1 sin(126,9-90) - S2 sin(180-90) - A cos(270-180) = 0
- S1 sin(36,9) - S2 sin(90) - A cos(90) = 0
- S1 sin(36,9) - S2 = 0, da sin(90) = 1 und cos(90) = 0
S2 = - S1 sin(36,9)

Vertikale Komponenten:
S1 cos(126,9-90)+S2 cos(180-90) - A sin(270-180) = 0
S1 cos(36,9)+S2 cos(90) - A sin(90) = 0
S1 cos(36,9) - A = 0
S1 = A / cos(36,9)
S1 = -9000 / cos(36,9) = - 11254,44
S2 = - (- 11254,44) sin(36,9) = 6757,39
In diesem Knoten gibt es nur eine bekannte Kraft, nmlich die Auflagerkraft A. Gibt es an
einem Knoten mehrere bekannte Krfte, mssen diese zu einer resultierenden Kraft zusam-
mengefasst werden. Dieses Zusammenfassen geschieht wie vorher durch Zusammenfassen der
Komponenten. Die Vorzeichen der Komponenten bestimmen den Winkel der Lage.
Je nach Lage der Stabkrfte im Koordinatensystem bestimmen sich die horizontalen und verti-
kalen Anteile ber den Sinus oder Kosinus. Betrachten Sie dazu auch die Skizzen ber die
Lage eines Vektors im Koordinatensystem in Bild 2-8. Setzen wir diese als allgemeine Fakto-
ren xi und yi an, dann gelten die Gleichgewichtsbedingungen fr horizontale und vertikale
Krfte
2 2
xi S i + R x = 0 und yi S i + R y = 0 (2.16)
i =1 i =1

mit Rx und Ry als Komponenten der Resultierenden und S1, S2 den unbekannten Stabkrften.
2.2 Krfte in Tragwerken 57

Ausgeschrieben
x1 S1 + x 2 S 2 + R x = 0 (2.17)
und
y1 S1 + y 2 S 2 + R y = 0 . (2.18)

Umgestellt nach S2
x1 S1 R x
S2 = (2.19)
x2
und eingesetzt
y2
y1 S1 + ( x1 S1 R x ) + R y = 0 . (2.20)
x2
Umgestellt nach S1
y2
Rx + R y
x2
S1 = . (2.21)
y
y1 2 x1
x2
Ist somit S1 ermittelt, lsst sich mit der vorherigen Formel (2.18) auch S2 bestimmen. Ist nur
eine Unbekannte gegeben, dann gilt
x1S1 = R x (2.22)
und
y1 S1 = R y . (2.23)

Es bleibt noch anzumerken, dass alle Trigonometrischen Funktionen unter VBA als Argument
das Bogenma benutzen. Die Beziehung zwischen Bogenma und Winkel lautet:

Bogenma = Winkelma (2.24)
180 D
und umgekehrt
180D
Winkelma = Bogenma (2.25)

Nun knnen wir uns an die Erstellung des Algorithmus wagen.

Aufgabe 2.2 Bestimmung von ebenen Tragwerken


Gesucht ist eine Prozedur, die bei Eingabe von bekannten Krften eines ebenen Fachwerks und
der Lage von maximal zwei unbekannten Stben deren Gre bestimmt. Der erste Schritt ist
die Erstellung eines Top-Down-Designs, aus dem dann das Struktogramm resultiert.
58 2 Berechnungen aus der Statik

Tabelle 2-6 Top-Down-Design fr die Berechnung ebener Tragwerke

Bestimmung der Zug und Druckkrfte in den Stben eines ebenen Fachwerks nach der
Knotenpunktmethode.
Eingabe Auswertung Ausgabe
Bekannte Krfte mit ihrer Gre und Resultierende Stabkrfte Gre der
ihrer Lage (Winkel) im Koordinaten- Zusammenfas- Berechnung Stabkrfte
system. Dabei muss das System er- sung bekannter der Stabkrf- als Zugkraft
kennen, wie viele bekannte Krfte Krfte zu einer te nach den (positiv)
vorhanden sind. Anschlieend wer- Resultierenden zuvor aufge- oder Druck-
den die Winkel der unbekannten mit Angabe von stellten kraft (nega-
Stabkrfte angegeben. Dies wird so Gre und Gleichun- tiv).
lange fortgesetzt, bis alle Stabkrfte Richtung. gen.
bekannt sind.

Tabelle 2-7 Struktogramm zur Bestimmung der Resultierenden

Zhler i = 0
i=i+1
Einlesen der bekannten Kraft Fi

Fx = Fx + Fix
F y = F y + Fiy
Solange Fi 0

R= ( F y F y + Fx F x )
Ist Fy<0 oder Fx<0
ja Nein
R=-R

Tabelle 2-8 Struktogramm zur Bestimmung der Komponenten

Berechnungen
nach Lage von
i
i <= 90 Fy = F y + F sin i
Fx = Fx + F cos i
i > 90
Fy = F y + F cos( i 90 D )
2.2 Krfte in Tragwerken 59

und i <=180
Fx = Fx F sin( i 90 D )
i > 180
F y = F y F sin( i 180 D )
und i <=270
Fx = Fx F cos( i 180 D )
i > 270
Fy = Fy F cos( i 270 D )
Fx = Fx + F sin( i 270 D )
Tabelle 2-9 Struktogramm zur Bestimmung des resultierenden Winkels

Fx 0
ja nein
Fy >= 0 =0
ja nein
Fx >= 0 Fx >= 0
ja nein ja nein
= = = =
Fy ) Fy ) + arctan(
Fy ) + 2 Fy ) +
arctan( arctan( arctan(
Fx Fx Fx Fx

Codeliste 2-3: Formblatt und Auswertung finden Sie auf der Website.

Halten wir noch einmal die Vorgehensweise beim Knotenpunktverfahren fest:


Auflagerkrfte am Gesamtsystem bestimmen.
Jeden Knoten einzeln betrachten. Man beginnt mit einem Knoten, an dem maximal 2 Stab-
krfte unbekannt sind.
Knotenkrfte als Zugkrfte einzeichnen.
Bekannte Krfte als Resultierende zusammenfassen.
Gleichgewichtsbedingung im Knoten berechnen. Positiv berechnete Krfte sind Zugkrfte,
negativ berechnete Krfte sind Druckkrfte.

Beispiel 2.2 Eisenbahnbrcke (Fortsetzung)


Nun zurck zu unserem Beispiel. Mit Hilfe des Programms berechnen wir jetzt schrittweise
alle Knoten.
Darstellung von Knoten 1: Siehe Bild 2-10.
60 2 Berechnungen aus der Statik

Bild 2-11 Auswertung von Knoten 1

s3 y

153,43

233,13 x
Bild 2-12
s4 306,87 s1
Knoten 2 mit Auswertung

s5 y
s4
113,2
53,13 Bild 2-13
s6 s2 x
Knoten 3 mit Auswertung

246,8 y

s7

x
s3 Bild 2-14
s8 333,43
s5
293,2 Knoten 4 mit Auswertung
2.2 Krfte in Tragwerken 61

s9 y
s8
113,2
66,8 Bild 2-15
s10 s6 x
Knoten 5 mit Auswertung

y
206,57
s7
s11 x
246,8 Bild 2-16
s9
s12
293,2 Knoten 6 mit Auswertung
62 2 Berechnungen aus der Statik

s13 y
s12
126,87
66,8
x Bild 2-17
s14 s10
F Knoten 7 mit Auswertung

s11
y
26,57
233,13 x Bild 2-18
s15 306,87 s13
Knoten 8 mit Auswertung

Beim Knoten 8 ist nur eine Unbekannte gegeben. Folglich muss diese der Resultierenden ent-
gegenwirken. Sptestens hier zeigt sich, ob die vorangegangenen Berechnungen richtig waren.
Da nun alle Krfte bekannt sind, lassen sich diese bersichtlich in das Fachwerk einzeichnen
und geben somit eine Vorstellung ber den Belastungsverlauf.
2.3 Biegetrger 63

K6 S7 K4
S11 S3
K8 K2
S9 S8 S5
S S13 S4
15 S12 S1
S14 S10 S6 S2 Bild 2-19
K9 K1
K7 K5 K3 Zug- und Druck-Krfte an
B F A der Eisenbahnbrcke

bungsvorschlge
Die Lsung des Knotenpunktverfahrens ist die Lsung eines linearen Gleichungssystems mit
zwei Unbekannten. Daher lsst sich das Problem auch mit Matrizenoperationen lsen.
Es werden immer wieder Winkelberechnungen erforderlich. Erstellen Sie eine Userform, die
bei Eingabe von zwei Seiten eines rechtwinkligen Dreiecks, den zugehrigen Winkel be-
stimmt. Hier knnte auch eine Umrechnung von Winkelma in Bogenma und umgekehrt
eingebaut werden.

Bild 2-20

Userform fr Winkelbe-
rechnungen

2.3 Biegetrger
Die Gleichung der elastischen Linie fr einen Biegetrger mit unterschiedlichen Belastungsar-
ten (auch Kombinationen) und unterschiedlicher Fixierung findet sich in jedem technischen
Handbuch. So wie das nachfolgende Beispiel knnen alle anderen Biegeflle behandelt werde.
Betrachtet wird der Fall eines einseitig eingespannten Trgers mit Punkt und Streckenlast.
64 2 Berechnungen aus der Statik

F
y
Q=ql
Bild 2-21

Einseitig eingespannter
x Biegetrger mit Punkt- und
l
Streckenlast

Die Gleichung der elastischen Linie lautet allgemein


M ( x)
y ,, = . (2.26)
EI
Das Moment an einer beliebigen Stelle x (Bild 2-22) ergibt sich zu
lx
M ( x) = F (l x) + q (l x) . (2.27)
2

l-x
l-x
2

Bild 2-22

Gleichgewichtsbedingun-
x gen an einer beliebigen
q ( l - x) Stelle x

Durch Einsetzen ergibt sich


1 q
y ,, = ( F (l x) + (l x) 2 ) . (2.28)
EI 2
Eine Integration fhrt auf die Gleichung der Balkenneigung
1 F q q q
y, = ( F l x x 2 + l 2 x l x 2 + x 3 + c1 . (2.29)
EI 2 2 2 6
Mit der Randbedingung y(x=0) = 0 folgt c1 = 0.

Eine nochmalige Integration fhrt auf die Gleichung der Durchbiegung


1 F F q q q 4
y= ( l x 2 x3 + l 2 x 2 l x3 + x + c2 (2.30)
EI 2 6 4 6 24
Mit der Randbedingung y(x=0) = 0 folgt auch c2 = 0.
Umgestellt haben wir somit die Gleichungen fr Biegemoment und Trgerdurchbiegung.
2.3 Biegetrger 65

Aufgabe 2.3 Belastungen eines einseitig eingespannten Biegetrgers


Unter Vorgabe von Trgerlnge, Einzellast, Streckenlast, E-Modul und axiales Widerstands-
moment, soll schrittweise bei einem einseitig eingespannten Biegetrger mit konstanten Quer-
schnitt die Durchbiegung und das auftretende Biegemoment ermittelt und ausgegeben werden.
Nach der Berechnung sollen die Daten als Grafik dargestellt werden knnen.

Tabelle 2-10 Struktogramm zur Bestimmung von Biegemoment und Durchbiegung

Stelle x = 0
lx
M ( x) = F (l x) + q (l x)
2
1 F F q q q 4
y= ( l x2 x3 + l 2 x 2 l x3 + x
EI 2 6 4 6 24
x = x + x
Solange x<=l

Codeliste 2-4: Prozeduren in der Tabelle tblBiegung

Sub Biegung_Eingabe()
Load frmBiegetrger
frmBiegetrger.Show
End Sub

Sub Biegung_Diagramme()
Call Biegung_Moment_Zeigen
Call Biegung_Verlauf_Zeigen
End Sub

Sub Biegung_Diagramme_Loeschen()
Dim MyDoc As Worksheet
Set MyDoc = ThisWorkbook.Worksheets("Biegetrger")
Dim Shp As Shape
'
'alle Charts lschen
For Each Shp In MyDoc.Shapes
Shp.Delete
Next
End Sub
Codeliste 2-5: Prozeduren im Modul modBiegung
Public MyDoc As Object 'As Worksheet
Public DTitel, xTitel, yTitel As String
Public intLeft, intTop As Integer
Public Sub Biegung_Moment_Zeigen()
Dim xlRange As Range
Dim lngNumRows, lngNumCols As Long
'
'Verweis auf Worksheet mit Daten
Set MyDoc = ThisWorkbook.Worksheets("Biegetrger")
'
'bergabe der Anzahl der Spalten/Zeilen:
lngNumRows = MyDoc.UsedRange.Rows.Count
lngNumCols = MyDoc.UsedRange.Columns.Count
'
66 2 Berechnungen aus der Statik

'Verweis auf Datenbereich setzen:


Set xlRange = MyDoc.Range("B2:B" + LTrim(Str(lngNumRows)))
'
'Diagramm erstellen:
intLeft = 200
intTop = 50
DTitel = "Momentenverlauf"
xTitel = "Trgerlnge [cm]"
yTitel = "Moment M [Ncm]"
CreateChartObjectRange xlRange
'
'Verweise freigeben:
Set xlRange = Nothing
Set MyDoc = Nothing
End Sub

Public Sub Biegung_Verlauf_Zeigen()


Dim xlRange As Range
Dim lngNumRows As Long
Dim lngNumCols As Long
'
'Verweis auf Worksheet mit Daten
Set MyDoc = ThisWorkbook.Worksheets("Biegetrger")
'
'bergabe der Anzahl der Spalten/Zeilen:
lngNumRows = MyDoc.UsedRange.Rows.Count
lngNumCols = MyDoc.UsedRange.Columns.Count
'
'Verweis auf Datenbereich setzen:
Set xlRange = MyDoc.Range("C2:C" + _
LTrim(Str(lngNumRows)))
'
'Diagramm erstellen:
intLeft = 250
intTop = 240
DTitel = "Durchbiegungsverlauf"
xTitel = "Trgerlnge [cm]"
yTitel = "Durchbiegung y [cm]"
CreateChartObjectRange xlRange

'
'Verweise freigeben:
Set xlRange = Nothing
Set MyDoc = Nothing
End Sub

Public Sub CreateChartObjectRange(ByVal xlRange As Range)


Dim objChart As Object
'
'Bildschirmaktualisierung deaktivieren:
Application.ScreenUpdating = False
'
'Verweis auf Diagramm setzen und Diagramm hinzufgen:
Set objChart = Application.Charts.Add
With objChart
'Diagramm-Typ und -Quelldatenbereich festlegen:
.ChartType = xlLineStacked
.SetSourceData Source:=xlRange, PlotBy:=xlColumns
'Titel festlegen:
.HasTitle = True
.ChartTitle.Text = DTitel
.Axes(xlCategory, xlPrimary).HasTitle = True
.Axes(xlCategory, _
xlPrimary).AxisTitle.Characters.Text = xTitel
2.3 Biegetrger 67

.Axes(xlValue, xlPrimary).HasTitle = True


.Axes(xlValue, xlPrimary).AxisTitle.Characters.Text = yTitel
'Diagramm auf Tabellenblatt einbetten:
.Location Where:=xlLocationAsObject, Name:=MyDoc.Name
End With
'
'Legende lschen
ActiveChart.Legend.Select
Selection.Delete
'
'Verweis auf das eingebettete Diagramm setzen:
Set objChart = _
MyDoc.ChartObjects(MyDoc.ChartObjects.Count)
With objChart
.Left = intLeft
.Top = intTop
.Width = 300
.Height = 200
End With
'
'Bildschirmaktualisierung aktivieren:
Application.ScreenUpdating = True
Set objChart = Nothing
End Sub

Das Formular frmBiegung erhlt das in Bild 2-23 dargestellte Aussehen. Dazu wird im oberen
Teil des Formulars ein Image-Objekt eingefgt. Dieses enthlt eine Grafik des Biegetrgers.
Diese Grafik knnen Sie z.B. mit dem Paint-Programm unter Zubehr erstellen. Darunter be-
finden sich 6 Textboxen, die mit entsprechenden Labels bezeichnet sind. Letztlich gibt es dann
noch die beiden Schaltflchen cmdStart und cmdTest. Im Codebereich des Formulars geben
Sie die Anweisungen aus der Codeliste 2.6 ein.

Bild 2-23

UserForm zur Eingabe der


Berechnungsdaten
68 2 Berechnungen aus der Statik

Codeliste 2-6: Prozeduren im Formular frmBiegung

Private Sub cmdStart_Click()


Call Biegung_Berechnung
End Sub

Private Sub cmdTest_Click()


TextBox1 = 40
TextBox2 = 2
TextBox3 = 10000
TextBox4 = 40000
TextBox5 = 2100
TextBox6 = 600000
End Sub
Sub Biegung_Berechnung()
Dim Lg, Fe, Qs, Em, Ia, dx, x As Double
Dim Mx, xl, yx As Double
Dim i As Integer
Dim Zl As String
Lg = Val(TextBox1)
dx = Val(TextBox2)
Fe = Val(TextBox3)
Qs = Val(TextBox4)
Em = Val(TextBox5)
Ia = Val(TextBox6)
If Lg = 0 Or dx = 0 Or Fe = 0 Or Qs = 0 Or _
Em = 0 Or Ia = 0 Then
MsgBox "Fehlerhafte Dateneingabe!", _
vbCritical + vbOKOnly, "ACHTUNG"
Exit Sub
End If
Worksheets("Biegetrger").Activate
Worksheets("Biegetrger").Cells.Clear
Range("A1") = "Stelle" & vbLf & "x [cm]"
Range("B1") = "Moment" & vbLf & "M [Ncm]"
Range("C1") = "Biegung" & vbLf & "x [cm]"
Columns("A:C").EntireColumn.AutoFit
i = 1
For x = 0 To Lg Step dx
xl = x / Lg
Mx = Lg / 2 * (1 - xl) * (2 * Fe + Qs * (1 - xl))
yx = -Lg ^ 3 / (24 * Em * Ia) * _
(4 * Fe * (3 * xl ^ 2 - xl ^ 3) + _
Qs * (6 * xl ^ 2 - 4 * xl ^ 3 + xl ^ 4))
i = i + 1
Zl = Right("00" + LTrim(Str(i)), 2)
Range("A" + Zl) = x
Range("B" + Zl) = Round(Mx, 3)
Range("C" + Zl) = Round(yx, 6)
Next x
Unload Me
End Sub

Beispiel 2.3 Biegetrger


Mit dem Start der Berechnung wird eine UserForm aufgerufen, in der die notwendigen Daten
eingeben werden mssen. Eine Schaltflche Testdaten setzt Beispieldaten ein. Mit der Schalt-
flche Berechnungsstart erfolgt in der Tabelle Biegetrger die Ausgabe der Daten. Mit Dia-
gramme zeigen werden die Diagramme des Moments und Durchbiegungsverlaufs eingeblen-
det (siehe Bild 2-24).
2.3 Biegetrger 69

Bild 2-24

Testbeispiel
Ergebnis

bungsvorschlge
In Technikhandbchern finden sich Tabellen mit unterschiedlichen Biegefllen. Zum Beispiel
einen frei aufliegenden Biegetrger mit Strecken und Einzellast nach Bild 2-25.

F
y
Q=ql

Bild 2-25

x Frei aufliegender Biegetrger


l
mit Strecken und Einzellast

Alle Beispiele setzen auerdem einen konstanten Querschnitt des Biegetrgers voraus. Trger
mit unterschiedlichen Querschnitten in Teilstcken knnen in einer Tabelle erfasst und dann
bezglich des Flchentrgheitsmomentes ausgewertet werden.

l b
x

y(x)
Bild 2-26

Biegetrger mit konstanter


F
Biegebelastung
70 2 Berechnungen aus der Statik

Besondere Formen von Trgern und Wellen sind die mit konstanter Biegebelastung wie in Bild
2-26 dargestellt. Die Form berechnet sich hier nach der Funktion

6 F
y ( x) = x (2.31)
b zul
Erstellen Sie ein Arbeitsblatt zur Formenberechnung auch fr andere Formen wie Keil und
Kegel. Neben dem Biegemomentenverlauf ist auch oft der Querkraftverlauf gefragt. Ergnzen
Sie das Beispiel um diese Berechnung. Ebenso die anderen mglichen Berechnungen.
Lassen wir die Voraussetzung des geraden Biegetrgers fallen, kommen wir zu den Belas-
tungsfllen gekrmmter Stbe. Zur Vereinfachung kann die Krmmung in einer Ebene liegen.
An die Stelle der linearen Spannungsverteilung beim geraden Stab tritt beim gekrmmten Stab
eine hyperbolische Spannungsverteilung (Bild 2-27).

N
+

d
R
S
Bild 2-27

Die Biegung eines gekrmm-


ten Stabes

Ein sehr schnes bungsbeispiel ist auch die Berechnung axialer Trgheits- und Wider-
standsmomente. Tabellen der blichen Standardquerschnitte finden Sie in allen Technik-
Handbchern. Fr einen Rechteckquerschnitt mit der Breite b und der Hhe h berechnet sich
das axiale Trgheitsmoment nach der Formel
b h3
I= (2.32)
12
Aus dieser Formel ist ersichtlich, dass die Hhe eines Rechtecks um ein Vielfaches (3. Potenz)
mehr zur Stabilitt eines Biegetrgers beitrgt, als seine Breite.
71

3 Berechnungen aus der Dynamik

Die Dynamik befasst sich mit den Bewegungen und deren nderungen, die ein System unter
Einwirkung von Krften erfhrt. Zu den zentralen Begriffen gehren Weg, Geschwindigkeit
und Beschleunigung ebenso, wie Kraft und Masse. Den Widerstand eines Krpers gegen eine
Bewegungsnderung nennt man Trgheit.

3.1 Massentrgheitsmomente
Die beschleunigte Drehung eines starren Krpers in der Ebene um eine feste Achse wird durch
die Einwirkung eines Drehmoments M hervorgerufen. Dabei vollfhrt jedes Massenteilchen
dm eine beschleunigte Bewegung.

at a

dFn an
dm


dF t Bild 3-1
dF Beschleunigte Drehung

Ein Massenteil auf einer gekrmmten Bahn unterliegt einer Normal- und
Tangentialbeschleunigung. Dies fhrt nach dem dAlembertschen Prinzip zu dem Ansatz
dFt = dm a t (3.1)
und
dFn = dm a n . (3.2)
Whrend das Normalkraftdifferential dFn kein Drehmoment hervorruft, seine Wirkungslinie
geht durch den Drehpunkt, ruft das Tangentialkraftdifferential dFt einen Drehmomentanteil von
dM = r dFt (3.3)
hervor. Fr die Gesamtheit aller Anteile gilt damit


M = r dFt = r dm a t . (3.4)

Darin ist
at = r (3.5)
mit der Winkelbeschleunigung , die fr alle Massenteile gleich ist.


M = r 2 dm (3.6)
72 3 Berechnungen aus der Dynamik

Krper Massentrgheitsmoment
Quader
a
m 2
b I dx = (a + b 2 )
12
h
x x

Hohlzylinder
y
m 2
I dx = (R + r 2 )
R 2
r
x x m 2 h2
I dy = (R + r 2 )
4 3

y h

Hohlkugel

r R5 r 5
I dx = 0,4 m
x x
R3 r 3

Gerader Kegelstumpf

R
r R5 r 5
x x
I dx = 0,3 m
R3 r 3

Kreisring
r

R 3 2
I dx = m( R 2 + r )
x x 4

Bild 3-2 Axiale Massentrgheitsmomente einfacher Grundkrper


3.1 Massentrgheitsmomente 73

Analog zur Massentrgheit bei der Translation (F = ma), bezeichnet man


I d = r 2 dm (3.7)

als Massentrgheitsmoment eines starren Krpers.


Genauer, da es sich auf eine Achse bezieht, als axiales Massentrgheitsmoment. Zu beachten
ist, dass der Abstand zum Quadrat in die Gleichung eingeht. Auch kompliziert gestaltete
Krper lassen sich mit diesen Gleichungen bestimmen, da die Summe der
Massentrgheitsmomente einzelner Grundkrper gleich dem Massentrgheitsmoment des aus
diesen bestehenden starren Krpers ist. Das liegt an der Eigenschaft des Integrals in Gleichung
3.7.
Nicht immer fllt die Drehachse des Grundkrpers mit der des starren Krpers zusammen, zu
der er gehrt. Dazu betrachten wir nach Bild 3-3 das Massentrgheitsmoment bezglich einer
zweiten Achse gegenber der Schwerpunktachse.

dm
y

r1

1. (x1,y1)
x
s
r2
a

Bild 3-3
2. (x2,y2) Drehachse versetzt zur Schwerachse

Es gilt fr den Radius r2 die geometrische Beziehung


r22 = ( x1 x 2 ) 2 + ( y1 y 2 ) 2 = r12 + a 2 2( x1 x 2 + y1 y 2 ). (3.8)
Eingesetzt in (3.7) folgt
I d = r12 dm + a 2 dm 2 ( x1 x 2 + y1 y 2 )dm . (3.9)

Darin ist

dm = m (3.10)

und
2 ( x1 x 2 + y1 y 2 )dm (3.11)

das statische Moment des starren Krpers bezglich des Schwerpunktes, also Null. Damit folgt
die, als Satz von Steiner (Verschiebungssatz) bekannte Gesetzmigkeit
I d 2 = I d1 + ma 2 (3.12)
74 3 Berechnungen aus der Dynamik

Aufgabe 3.1 Bestimmung der Massentrgheit mit finiten Elementen


Berechnung der Massentrgheitsmomente der angegebenen Grundkrper und der
Umrechnungsmglichkeit auf eine beliebige Achse. Mittels Summenbildung sollte es mglich
sein, das Massentrgheitsmoment, eines aus beliebigen Grundkrpern zusammengesetzten
Maschinenteils, zu berechnen.

Tabelle 3.1 Struktogramm zur Bestimmung von Massentrgheitsmomenten fr Maschinenteile aus finiten
Elementen

Summe aller Id = 0
Fr alle finiten Elemente
Auswahl des Grundkrpers
Eingabe der Mae a/R, b/r, (h), w, x
Berechnung der Massentrgheitsmomente Id, Ix
Summenbildung Ix = Ix + Ix
Ausgabe der Berechnungsdaten

Codeliste 3.1 Prozeduren in Tabelle tblMassenTM


3.1 Massentrgheitsmomente 75

Neben der Tabelle tblMassenTM sind noch 5 Formulare fr die einzelnen finiten Elemente
anzulegen.

Bild 3-4
Formular
Kegelstumpf

Codeliste 3.2 Prozeduren im Formblatt frmKegel


76 3 Berechnungen aus der Dynamik

Bild 3-5
Formular
Hohlkugel

Codeliste 3.3 Prozeduren im Formblatt frmKugel


3.1 Massentrgheitsmomente 77

Bild 3-6
Formular Quader

Codeliste 3.4 Prozeduren im Formblatt frmQuader


78 3 Berechnungen aus der Dynamik

Bild 3-7
Formular Kreisring

Codeliste 3.5 Prozeduren im Formblatt frmRing


3.1 Massentrgheitsmomente 79

Bild 3-8
Formular Hohlzylinder

Codeliste 3.6 Prozeduren im Formblatt frmZylinder


80 3 Berechnungen aus der Dynamik

Codeliste 3.7 Prozeduren im Modul modMassenTM

Variable in Modulen, die mit Public deklariert sind, gelten fr das ganze Projekt. Ebenso
Prozeduren, die nur mit Sub und nicht mit Private Sub beginnen.

Beispiel 3.1 Massentrgheitsmoment eines Ankers


Der dargestellte Anker in Bild 3-9 besteht aus Stahl (Dichte 7,85 kg/dm3) und unterteilt sich in
drei Grundkrper (zwei Quader und ein Hohlzylinder).

10

Drehachse
30
10

Mae
in cm
30

10 Bild 3-9
50
40 Anker

Das Ergebnis der Berechnung lautet Id=118,61 kgm2.


3.2 Mechanische Schwingungen 81

Bild 3-10
Berechnung
des Ankers

bungsvorschlge
Nicht immer sind die eingegebenen Mae sinnvoll. Prfen Sie daher in den entsprechenden
Prozeduren die Eingaben und geben Sie notfalls einen Hinweis aus.
Wie Sie am vorangegangenen Beispiel sehen konnten, mssen gleiche Elemente zweimal
angegeben werden. Ergnzen Sie das Formblatt um die Eingabe der Stckzahl.
Ergnzen Sie die Elemente um weitere, die Sie in Technik-Handbchern finden oder aus alten
Berechnungen bereits kennen.

3.2 Mechanische Schwingungen


Unter einer mechanischen Schwingung versteht man die periodische Bewegung einer Masse
um eine Mittellage. Den einfachsten Fall bildet ein Feder-Masse-System. Bei der Bewegung
findet ein stndiger Energieaustausch zwischen potentieller und kinetischer Energie statt. Die
potentielle Energiedifferenz wird auch als Federenergie bezeichnet. Die bei der Bewegung
umgesetzte Wrmeenergie, durch innere Reibung in der Feder, soll unbercksichtigt bleiben.
Wirken auf ein schwingendes System keine ueren Krfte, bezeichnet man den
Bewegungsvorgang als freie Schwingung, andernfalls als erzwungene Schwingung.

Fd
0
s Ff

d m

Bild 3-11
m a Freie gedmpfte Schwingung

Die bei der realen Schwingung stets auftretende Widerstandskraft, Bewegung im Medium und
Reibungskraft (Stokessche Reibung, im Gegensatz zur Coulombschen oder Newtonschen
Reibung), etc., soll in erster Nherung als geschwindigkeitsproportional angesehen werden. Bei
der Betrachtung einer freien gedmpften Schwingung wirkt zum Zeitpunkt t an der Masse die
Federkraft
Ff = f s (3.13)
82 3 Berechnungen aus der Dynamik

mit der Federkonstante f. Fr die Dmpfungskraft folgt unter Einfhrung der


Dmpfungskonstanten d als Ma fr die Dmpfungsintensitt
.
Fd = 2 m d s (3.14)
Nach dem dAlembertschen Prinzip folgt
.. .
ms = f s 2md s . (3.15)
Umgestellt
dv f
= s 2d v (3.16)
dt m
Nach dem Euler-Cauchy-Verfahren ersetzt man den in der Gleichung (3.16) enthaltenen
Differentialquotienten durch einen Differenzenquotienten
f
v = s + 2dv t . (3.17)
m
Fr hinreichend kleine Differenzen t bekommt man so eine angenherte Lsung v.

Tabelle 3.2 Struktogramm zur Simulation einer freien gedmpften Schwingung

Eingabe m, f, d, s0, v0, t0, dt, te


Solange t < te

f
v i = s i + 2dv i 1 t .
m
v i = v i 1 + v i

s i = v i t

s i = s i 1 + s i

t i = t i 1 + t

Ausgabe si, vi, ti

Codeliste 3.8 Prozeduren in der Tabelle tblSchwingung


3.2 Mechanische Schwingungen 83
84 3 Berechnungen aus der Dynamik
3.2 Mechanische Schwingungen 85

Das integrierte Testbeispiel liefert das in Bild 3-12 dargestellte Ergebnis.

bungsvorschlge
Die Annahme einer linearen Federkennlinie ist nicht immer ausreichend genau. In

(
F f = f s 1 + c s2 ) (3.18)

ist der linearen Federkennlinie eine kubische Parabel berlagert. Die Dmpfungskraft lsst sich
auch als Newtonsche Reibung, also dem Quadrat der Geschwindigkeit proportional ansetzen:
Fd = c sgn(v) v 2 (3.19)

Schwingungen knnen durch rotierende Massen erzeugt werden.

Bild 3-12
Auswertung des
Testbeispiels einer
freien gedmpften
Schwingung

Bild 3-13 zeigt das Schema einer erzwungenen Schwingung durch einen Rotor. Die im
Abstand r auerhalb des Drehpunktes mit der Winkelgeschwindigkeit rotierende Masse m1
hat in Schwingungsrichtung den Fliehkraftanteil
Fe = m1 r 2 sin ( t ) (3.20)
86 3 Berechnungen aus der Dynamik

2
m1 r
m1 Bild 3-13
r t
d Erzwungene Schwingung
durch eine rotierende
m
Masse

Der Ansatz gestaltet sich wie zuvor mit


..
m s = f s 2 (m + m1 ) d v m1 r 2 sin ( t ) . (3.21)
Diese Gleichung ist fr eine konstante Winkelgeschwindigkeit ausgelegt. Ansonsten muss der
Algorithmus eine zustzliche Gleichung = f(t) bestimmen.

l Bild 3-14
m1 t
d Erzwungene Schwingung
r
m durch rotierende und
oszillierende Massen

Oft gibt es neben einer rotierenden Masse auch noch einen oszillierenden Anteil. Ein
klassisches Beispiel ist der Schubkurbeltrieb. Bild 3-14 zeigt das Schema einer erzwungenen
Schwingung durch rotierende und oszillierende Massen. Diese Massenkrfte werden als Krfte
1. und 2. Ordnung bezeichnet und ergeben sich aus der Betrachtung.
Massenkraft 1. Ordnung angenhert:
FI = m1 r 2 cos( t ) (3.22)
Massenkraft 2. Ordnung:
r
FII = m1 r 2 cos 2 ( t ) (3.23)
l
Die Differentialgleichung der Bewegung lautet damit:
.. r
m s = f s + 2(m + m1 ) d v m1 r 2 cos( t ) cos 2 ( t ) . (3.24)
l
87

4 Festigkeitsberechnungen

Von Maschinenteilen und Bauwerken wird ausreichende Festigkeit verlangt. Durch alle mgli-
chen Belastungen und deren Kombinationen drfen keine bleibenden Formnderungen auftre-
ten, noch darf es zum Bruch kommen. Die Festigkeitslehre hat die Aufgabe, auftretende Span-
nungen zu berechnen und somit ein Ma fr die Sicherheit, bzw. daraus resultierende Abmes-
sungen vorzugeben.

4.1 Hauptspannungen eines zusammengesetzten Biegetrgers


In der Praxis treten sehr hufig Biegetrger auf, die sich aus einzelnen rechteckigen Quer-
schnitten zusammensetzen, die auerdem symmetrisch zur Achse liegen.

Si
hi
ei
Bild 4-1

bi Geschweiter Biegetrger

Der gemeinsame Schwerpunkt der Rechtecke ergibt sich bezglich einer beliebigen Achse aus
n
Ai ei
e = i =1 . (4.1)
n
Ai
i =1
Sinnvoller Weise nimmt man als Achse eine Auenkante des Trgers. Das gesamte Flchen-
trgheitsmoment ist nach Aussage des Steinerschen Satzes
n n
b
I = i hi3 + Ai ei2 e 2 Ai (4.2)
i =1
12 i =1
88 4 Festigkeitsberechnungen

Unter Beachtung der in Bild 4-2 festgelegten Vorzeichen betrachten wir die am Biegetrger
auftretenden Spannungen.
FQ (+) FQ (+)

FN (+) FN (+) Bild 4-2


Mb (+) Mb (+)
Beschleunigte Drehung

Vorhandene Zugspannung:
FN
Z = . (4.3)
A
Vorhandene Abscherspannung:
FQ
a = . (4.4)
A
Randfaserbiegespannungen:
M b ( H e)
b1 = , (4.5)
I
M be
b2 = . (4.6)
I
Aus diesen folgen nach einer Vergleichsspannungs-Hypothese die Randfaserhauptspannungen
1
hj = ( bj + Z + ( bj + Z ) 2 + 4 a2 ) ), j = 1,2 . (4.7)
2

Bild 4-3

Schweinhte

Weiterhin interessieren die in den Schweinhten auftretenden Spannungen.


4.1 Hauptspannungen eines zusammengesetzten Biegetrgers 89

Schweinaht-Biegespannung:
Mb
bSi = (s i e ) . (4.8)
I
Schweinaht-Abscherspannung:
FQ bi hi ei e
asi = . (4.9)
I ai
Daraus ergibt sich analog zu Gleichung (4.7)
1
hsi = ( bsi + Z + ( bsi + Z ) 2 + 4 asi
2
)) . (4.10)
2

Aufgabe 4.1 Berechnung eines geschweiten Biegetrgers


Berechnung des Schwerpunktsabstands, des Flchentrgheitsmoments und aller Spannungen
am geschweiten Biegetrger, durch Eingabe der symmetrisch angeordneten Flchen. Dabei
wird auch eine symmetrische Anordnung und Gleichverteilung der Schweinhte vorausge-
setzt.

Tabelle 4-1 Vereinfachtes Struktogramm zur Berechnung geschweiter Biegetrger

Eingabe aller rechteckigen Querschnitte, die zum Gesamtquer-


schnitt gehren, ebenso aller Krfte und Momente
Berechnung des Schwerpunkts und des Flchentrgheitsmoments
Berechnung der Hauptspannungen am Biegetrger
Berechnung der Hauptspannungen in den Schweinhten

Auch bei dieser Anwendung geben wir wieder ein Formblatt vor, so dass die Eingabe in einer
Tabelle manuell erfolgen kann. Die Berechnungen selbst betrachten wir nachfolgend detail-
liert.

Tabelle 4-2 Struktogramm zur Berechnung des Schwerpunktabstands und des Flchentrgheitsmoments

Alle Summen = 0
ber alle vorhandenen Elemente i=1,,n
H = H + hi

Ai = Ai + bi hi
Ai ei = Ai ei + bi hi ei
b b b
12i hi3 = 12i hi3 + 12i hi3
90 4 Festigkeitsberechnungen

Ai ei2 = Ai ei2 + bi hi ei2


e=
Ai ei
Ai
b
I= 12i hi3 + Ai ei2 e 2 A
Ausgabe H, e, I

Tabelle 4-3 Struktogramm Hauptspannungen im Biegetrger

FN
Z =
A
FQ
a =
A
M b ( H e)
b1 =
I
M be
b2 =
I
1
hj = ( bj + Z + ( bj + Z ) 2 + 4 a2 ) ), j = 1,2
2
Ausgabe Z , a , b1 , b 2 , h1 , h 2

Tabelle 4-4 Struktogramm Hauptspannungen in den Schweinhten

ber alle vorhandenen Elemente i=2,,n


Mb
bsi = (si e )
I
FQ bi hi ei e
asi =
I ai

1
hsi = ( bsi + Z + ( bsi + Z ) 2 + 4 asi
2
))
2
Ausgabe bsi , asi , hsi
4.1 Hauptspannungen eines zusammengesetzten Biegetrgers 91

Codeliste 4.1 Prozeduren im Tabellenblatt tblTrger

Option Explicit
'
'Prozedur zur Erstellung eines Formblatts
Sub Formblatt()
'
'Tabelle lschen
Worksheets("Geschweiter Biegetrger").Activate
Worksheets("Geschweiter Biegetrger").Cells.Clear
'
'Formblatt
Range("A1") = "FN [N]"
Range("A2") = "FQ [N]"
Range("A3") = "Mb [Nm]"
Range("A5") = "H [mm]"
Range("A6") = "e [mm]"
Range("A7") = "A [cm" + Chrw(178) + "]"
Range("A8") = "I [cm^4]"
Range("A9") = ChrW(963) & "z [N/cm" + Chrw(178) + "]"
Range("A10") = ChrW(964) & "a [N/cm" + Chrw(178) + "]"
Range("A11") = ChrW(963) & "b1 [N/cm" + Chrw(178) + "]"
Range("A12") = ChrW(963) & "b2 [N/cm" + Chrw(178) + "]"
Range("A13") = ChrW(963) & "h1 [N/cm" + Chrw(178) + "]"
Range("A14") = ChrW(963) & "h2 [N/cm" + Chrw(178) + "]"

Range("C1:E1").MergeCells = True
Range("C1:E1") = "Mae"
Range("C2") = "b [mm]"
Range("D2") = "h [mm]"
Range("E2") = "a [mm]"

Range("F1") = "Schwerpkt."
Range("F2") = "e [mm]"
Range("G1:I1").MergeCells = True
Range("G1:I1") = "Schweinhte"
Range("G2") = ChrW(963) & "b [N/cm" + Chrw(178) + "]"
Range("H2") = ChrW(964) & "a [N/cm" + Chrw(178) + "]"
Range("I2") = ChrW(963) & "h [N/cm" + Chrw(178) + "]"

Range("A:A").ColumnWidth = 12
Range("B:I").ColumnWidth = 10
Columns("A:I").Select
Selection.NumberFormat = "0.00"
Range("A2").Select
End Sub

Sub Testbeispiel()
Cells(1, 2) = 5000
Cells(2, 2) = 1000
Cells(3, 2) = 500
Cells(3, 3) = 600
Cells(3, 4) = 100
Cells(3, 5) = 0
Cells(4, 3) = 200
Cells(4, 4) = 200
Cells(4, 5) = 5
Cells(5, 3) = 100
Cells(5, 4) = 100
Cells(5, 5) = 4
Cells(6, 3) = 400
Cells(6, 4) = 50
Cells(6, 5) = 4
End Sub
92 4 Festigkeitsberechnungen

Sub Auswertung()
Dim Zeile, i As Integer
Dim H, e, si As Double
Dim s1, s2, s3, s4 As Double 'Summen
s1 = 0: s2 = 0: s3 = 0: s4 = 0
Zeile = 3
'
'Summenbildung
Do While Cells(Zeile, 3) > 0
e = H + Cells(Zeile, 4) / 2
Cells(Zeile, 6) = e
H = H + Cells(Zeile, 4)
s1 = s1 + Cells(Zeile, 3) * Cells(Zeile, 4)
s2 = s2 + Cells(Zeile, 3) * Cells(Zeile, 4) * e
s3 = s3 + Cells(Zeile, 3) / 12 * Cells(Zeile, 4) ^ 3
s4 = s4 + Cells(Zeile, 3) * Cells(Zeile, 4) * e ^ 2
Zeile = Zeile + 1
Loop
'
'Mae und Spannungen
Cells(5, 2) = H
Cells(6, 2) = s2 / s1
Cells(7, 2) = s1 / 100
Cells(8, 2) = (s3 + s4 - Cells(6, 2) ^ 2 * s1) / 10000
Cells(9, 2) = Cells(1, 2) / Cells(7, 2)
Cells(10, 2) = Cells(2, 2) / Cells(7, 2)
Cells(11, 2) = Cells(3, 2) * 100 * Cells(6, 2) / 10 / Cells(8, 2)
Cells(12, 2) = Cells(3, 2) * 100 * (Cells(6, 2) - H) / 10 / Cells(8, 2)
Cells(13, 2) = (Cells(11, 2) + Cells(9, 2) + _
Sqr((Cells(11, 2) + Cells(9, 2)) ^ 2 + 4 * Cells(10, 2) ^ 2)) / 2
Cells(14, 2) = (Cells(12, 2) + Cells(9, 2) + _
Sqr((Cells(12, 2) + Cells(9, 2)) ^ 2 + 4 * Cells(10, 2) ^ 2)) / 2
'
'Schweinhte
si = 0
For i = 3 To Zeile - 1
If Cells(i, 5) > 0 Then
Cells(i, 7) = Cells(3, 2) * 100 * (Cells(6, 2) - si) / 10 _
/ Cells(8, 2)
Cells(i, 8) = Cells(2, 2) / Cells(8, 2) / 2 * Cells(i, 5) / 10
Cells(i, 8) = Cells(i, 8) * Cells(i, 3) * Cells(i, 4) / 100
Cells(i, 8) = Cells(i, 8) * Abs(Cells(i, 6) - Cells(6, 2))
Cells(i, 9) = (Cells(i, 7) + Cells(9, 2) + _
Sqr((Cells(i, 7) + Cells(9, 2)) ^ 2 + 4 * Cells(i, 8) ^ 2)) / 2
End If
si = si + Cells(i, 4)
Next i
End Sub

Beispiel 4.1 Laufschiene eines Werkkrans


Dieses Beispiel finden Sie auf meiner Website.

bungsvorschlge
Leider sind die grafischen Darstellungsmglichkeiten unter VBA sehr begrenzt. Eine Mg-
lichkeit graphische Elemente darzustellen sind Shapes.
Mit der Anweisung
(Ausdruck).AddShape(Type, Left, Top, Width, Height)
4.2 Die Anwendung der Monte-Carlo-Methode auf ein Biegeproblem 93

und dem Type msoShapeRectangle lassen sich Rechtecke auf dem Arbeitsblatt anordnen.
So erzeugt die Anweisung
Shapes.AddShape msoShapeRectangle, 200 , 100, 80, 60

ausgehend von der linken oberen Ecke, 200 Punkte nach rechts und 100 Punkte von oben, ein
Rechteck mit der Breite von 80 Punkten und der Hhe von 60 Punkten.
Mit der Visual Basic-Hilfe finden Sie unter dem Index Addshape einen Hilfstext, in dem der
Link msoAutoShapeType eine Vielzahl mglicher Shapeformen anbietet.

4.2 Die Anwendung der Monte-Carlo-Methode auf ein Biegeproblem


Die Monte-Carlo-Methode ist die Bezeichnung fr ein Verfahren, das mit Zufallszahlen arbei-
tet. Dazu werden Pseudozufallszahlen (Pseudo deshalb, da diese Zahlen nach einer gesetzm-
igen Methode gebildet werden) erzeugt. Es sind Zahlen, willkrlich aus dem halboffenen
Intervall [0,1) mit der Eigenschaft, dass bei einer hinreichenden Anzahl von Zahlen eine
Gleichverteilung auf dem Intervall vorliegt (Gesetz der groen Zahl).
Zu ihrer Verwendung werden sie in das entsprechende Intervall transformiert. Sodann wird
diese zufllig gewonnene Stichprobe auf Zuverlssigkeit untersucht und falls diese erfllt sind,
auf ein Optimierungskriterium hin getestet. Ist dieses Kriterium besser erfllt als ein bereits
gewonnenes Ergebnis, so liegt eine Verbesserung vor.
Betrachten wir diese Methode an einem einseitig eingespannten Biegetrger, der durch eine
Einzelkraft belastet wird.

F
l b
Bild 4-4
h
Einseitig eingespannter
Biegetrger unter Ein-
zellast

Das Verhltnis von b/h soll konstant bleiben, also


b
= k = konst. (4.11)
h
Auerdem ist zu bercksichtigen, dass die zulssige Biegung nicht berschritten wird
6 F l
zul (4.12)
k h3
und dass eine vorgegebene Durchbiegung nicht unterschritten wird
F l3
f zul . (4.13)
3 E I
94 4 Festigkeitsberechnungen

Aufgabe 4.2 Das kleinste Volumen eines Biegetrgers


Gesucht ist das kleinste Volumen des dargestellten Biegetrgers (Bild 4-6)
V = k h2 l (4.14)
fr die Grenzen
hmin h hmax (4.15)
l min l l max . (4.16)

Tabelle 4-5 Struktogramm Monto-Carlo-Methode am Biegetrger

Eingabe F, E, I, l, k, zul, fzul, hmin, hmax, lmin, lmax, n


2
V0 = V max = k hmax l max
i=1: Randomize
solange i < n
x = Rnd(x)
hi = (hmax hmin ) x + hmin
x=Rnd(x)
l i = (l max l min ) x + l min
6 F li
i =
k hi3

i zul
nein ja
hi4 F l i3
Ii = , fi =
48 3 E I
f i f zul
nein ja
Vi = k hi2 l i
Vi V 0
nein ja
Ausgabe
n, hi, li, i, Ii, fi, Vi
V 0 = Vi
4.2 Die Anwendung der Monte-Carlo-Methode auf ein Biegeproblem 95

Codeliste 4.2 Prozeduren im Tabellenblatt tblMonteCarlo finden Sie auf meiner Website.

Beispiel 4.2 Sttztrger


Dieses Beispiel finden Sie ebenfalls auf meiner Website.

bungsvorschlge
Belegen Sie den berechneten Trger zustzlich mit einer Streckenlast und werten Sie dann das
Testbeispiel noch einmal aus. ben Sie auch mit anderen Trgerarten, wie z. B. einen beidsei-
tig frei aufliegenden Trger. Auch hier zunchst erst mit Einzellast und danach Kombinatio-
nen. Wie verhalten sich die Systeme, wenn ein zustzliches Biegemoment auftritt?
Ein weiteres Anwendungsgebiet ist die Integration von Funktionen, deren Funktionswert sich
berechnen lsst, die aber nicht integriert werden knnen. Oder die Bestimmung von Flchen in
Landkarten, z. B. Seen, ist mit dieser Methode mglich.
Als Beispiel whlen wir einen Viertelkreis.

P2
y1
P1
y2

Bild 4-5

Flchenbestimmung nach der


x1 x2 Monte-Carlo-Methode

Benutzt man zwei Intervalle mit einer Gleichverteilung, dann erhalten die damit erzeugten
Punkte in einer Ebene ebenfalls eine Gleichverteilung. Diese Eigenschaft nutz diese Methode
zur Flchenbestimmung. In Bild 4-8 liegt der Punkt P1 in der gesuchten Flche (Treffer), der
Punkte P2 jedoch auerhalb.
Einen Punkt Pi erzeugt man durch zwei Zufallszahlen xi und yi. Ob Pi ein Treffer ist, ergibt
sich aus der Formel des Pythagoras mit

xi2 + y i2 r (4.17)

Setzt man r = 1, dann knnen die im Intervall (0,1] erzeugten Zufallszahlen direkt als Koordi-
naten eines Punktes in der Ebene verwendet werden.
96 4 Festigkeitsberechnungen

Erzeugt man hinreichend viele Punkte n und hat damit m Treffer (m < n), und ist AK der Fl-
cheninhalt des Viertelkreises und AQ der Flcheninhalt des Quadrats, dann gilt das Verhltnis
m AK
= . (4.18)
n AQ

Und damit
m
AK = AQ . (4.19)
n
Benutzen Sie fr Ihre Betrachtung unterschiedliche Gren von n.
Das Monte-Carlo-Verfahren wird weiterhin fr vielfltige und sehr unterschiedliche Bereiche
eingesetzt. Um nur einige zu nennen:
Berechnung bestimmter Integrale
Lsung gewhnlicher und partieller Differentialgleichungen
Zuverlssigkeitsanalysen technischer Systeme
Lebensdauerbestimmung
Transport- und Lagerhaltungsprobleme
Untersuchung von Naturphnomenen, wie Erdbeben
Simulationen im Bereich Operation Research
Risikoanalysen
Probleme der Spieltheorie
Simulation von Polymermischungen
Anwendung in der Strahlentherapie
in Verbindung mit Fuzzy Logic
das Buffonsche Nadelproblem (die wohl lteste Anwendung der MC-Methode von
1777)
die Liste liee sich unendlich lang weiterfhren.
Whlen Sie aus den unterschiedlichen Mglichkeiten eine Problemstellung aus und entwickeln
Sie in den vorgegebenen Schritten Ihre eigene Lsung.
97

5 Berechnungen von Maschinenelementen

Der Begriff Maschinenelement ist eine Fachbezeichnung des Maschinenbaus. Maschinenele-


mente sind die nicht weiter zerlegbaren Bestandteile einer Maschinenkonstruktion. Sie sind auf
grundstzlich naturwissenschaftlichen Prinzipien beruhende technische Lsungen. Neue Ma-
schinenelemente entstehen durch den Konstruktionsprozess, bei dem die Berechnung der Funk-
tionstchtigkeit im Vordergrund steht.

5.1 Volumenberechnung nach finiten Elementen


Die Grundlage dieser Berechnung ist die Tatsache, dass sich komplexe Maschinenteile in ein-
fache Grundkrper zerlegen lassen. Wichtig fr die sichere Handhabung ist, dass einfache und
wenige Grundkrper benutzt werden.

Kreiszylinder

b
V= a 2b
4

a
c Rechteckplatte
V = a bc
b

a Dreieckplatte
b
V = s ( s a )( s b)( s c)
d
a+b+c
s=
2
c

Bild 5-1 Finite Elemente zur Volumenberechnung

Die Zerlegung eines Maschinenelements in diese Grundkrper kann im positiven wie im nega-
tiven Sinne gesehen werden. Ein positives Element ist z. B. eine Welle. Ein negatives Element
eine Bohrung. Es knnen auch mehrere gleiche Grundelemente auftreten.
98 5 Berechnungen von Maschinenelementen

Aufgabe 5.1 Volumenberechnung mit finiten Elementen


Das Volumen von Maschinenelementen ist durch die Zerlegung in die in Bild 5-1 dargestellten
finiten Elemente zu bestimmen. Dabei wird durch eine Stckzahl die Menge des finiten Ele-
ments angegeben. Eine negative Stckzahl bedeutet Volumenabzug (negatives Element).

Tabelle 5-1 Struktogramm zur Volumenberechnung

Auswahl R(echteck), D(reieck), Z(ylinder) oder S(umme)


R(echteck) D(reieck) Z(ylinder) S(umme)
Eingabe a, b, c, s Eingabe a, b, c, d, s Eingabe a, b, s
V = a b c a+b+c
s= V= a 2b
2 4
V = d s ( s a )( s b)( s c)

VG = V s

Ausgabe VG

ber die Eingabe der Form (R/D/Z) im Tabellenblatt soll die jeweilige Eingabe der Daten auf
einem Formular stattfinden. Dazu werden die Formulare frmDreieck, frmRechteck und frmZy-
linder angelegt.
Im Tabellenblatt befinden sich zwei Prozeduren. Die Prozedur Worksheet_Change (ByVal
Target As Range) reagiert auf Vernderung im Tabellenblatt. Ist eine Vernderung in der Spal-
te Form eingetreten, wird das entsprechende Formular geladen, bzw. es wird die Gesamtsum-
me berechnet.

Codeliste 5.1 Prozeduren im Tabellenblatt tblVolumen finden Sie auf meiner Website.

Bild 5-2
Formular zur Vo-
lumenberechnung
einer Rechteckplatte

Nach Eingabe der letzten Maeingabe (c) wird automatisch zur Auswertung weitergeschaltet.

Codeliste 5.2 Prozeduren im Formular frmRechteck finden Sie auf meiner Website.
5.1 Volumenberechnung nach finiten Elementen 99

Bild 5-3
Formular zur Volumenberechnung
einer Dreieckplatte

Bei einem rechtwinkligen Dreieck ist eine Zusatzberechnung eingebaut, denn nicht immer ist
die Gre c bekannt. ber den Satz des Pythagoras lsst sich in diesem Fall c ermitteln.

Codeliste 5.3 Prozeduren im Formular frmDreieck finden Sie auf meiner Website.

Bild 5-4
Formular zur Volumenberechnung
eines Zylinders

Codeliste 5.3 Prozeduren im Formular frmZylinder finden Sie auf meiner Website.

Es bleiben noch die Prozeduren im Modul modVolumen. Neben dem Formblatt soll noch ein
Kommentar ein- und ausgeschaltet werden.

Bild 5-5
Kommentar zur Eingabe

Codeliste 5.4 Prozeduren im Modul modVolumen finden Sie auf meiner Website.

Beispiel 5.1 Wandlager


Dieses Beispiel finden Sie auf meiner Website.
Durch die Einfhrung einer weiteren Spalte Dichte kann auch das Gewicht eines Maschinen-
elementes berechnet werden. Das ist besonders hilfreich, wenn unterschiedliche Materialien
zum Einsatz kommen.
100 5 Berechnungen von Maschinenelementen

Die Bildung von Zwischensummen ist dann sinnvoll, wenn bei umfangreicheren Berechnungen
mehrere Baugruppen berechnet werden.
Die Ergnzung anderer finiter Elemente ist dann notwendig, wenn diese Elemente nicht ausrei-
chen. In Technikhandbchern gibt es eine Vielzahl solcher Elemente mit den entsprechenden
Formeln.

5.2 Durchbiegung von Achsen und Wellen


Feststehende oder umlaufende Achsen haben in der Regel tragende Funktionen und werden
daher auf Biegung belastet. Ihre Auslegung richtet sich nach der zulssigen Biegespannung
und auch nach der zulssigen Durchbiegung. Bei der Auslegung von Wellen kommt zum vor-
handenen Biegemoment die grte Belastung in Form eines Torsionsmomentes hinzu. Diese
resultiert aus dem zu bertragenden Drehmoment.

I1
I2

0 1 2 n-1 n

Bild 5-6
Einseitig eingespannte
x 1 x 2 x 3 x n 1 x n Welle

Zur Ableitung unserer Formeln betrachten wir einen einseitig eingespannten Stab und zerlegen
ihn gedanklich in nicht notwendig gleich groe Schrittweiten xi (i=1,,n).

0 x 1 1

Mb 0 Mb 1

Bild 5-7
1 Biegung einer Wellendifferenz

Nun betrachten wir das erste Element mit der Lnge x1. Durch Einwirkung eines resultierenden
Moments aus allen Belastungen verformt sich das Element um den Winkel i. Setzen wir
nun angenhert das arithmetische Mittel der Biegemomente
5.2 Durchbiegung von Achsen und Wellen 101

M b0 + M b1
M b0,1 = (5.1)
2
als konstant ber dem Streckenelement x1 voraus, so bildet sich nach Bild 5-10 die Biegelinie
als Kreisbogen aus.

x 1 x 2
2 2
1 x
f1

2 f 2

Bild 5-8
y x 1 x 2 Durchbiegungsverhlt-
nisse

Die nderung des Winkels ist aus der Gleichung der elastischen Linie angenhert
M b 0,1 x i
i = . (5.2)
I1 E
Woraus sich sofort die Durchbiegung an der Stelle 1
1
f1 = x1 tan( 1 ) (5.3)
2
und wegen der kleinen Winkel mit tan( 1 ) 1 aus
1
f1 = x1 1 (5.4)
2
ermittelt. Fr das nachfolgende Element ergibt sich dann eine Durchbiegung von
1 x
f 2 = x 2 2 + 1 + x 2 1 . (5.5)
2 2
Allgemein gilt fr die i-te Stelle
x i x
f i = i + 1 + x 2 + ... + xi 1
2 2
(5.6)
x x
+ 2 + x 3 + ... + x i 2 + ... + i 1 + xi i 1
2 2
bzw.
i x k i
f i =
2
+ x m k .

(5.7)
k =1 m = k +1
102 5 Berechnungen von Maschinenelementen

Daraus folgt letztlich die maximale Durchbiegung fr i = n.

F
l

Bild 5-9
Mbx
x Einzellast

Bezglich des Biegemoments an der Stelle x hat eine Einzellast den Anteil
M bx = Fi (l i x ), x l i . (5.8)

li

Mbx Mbi Bild 5-10


x Externes Moment

Ein Momentanteil bestimmt sich aus


M bx = M i , x l i (5.9)

li 2
li1

M bx 1 Mbx2
x1 Bild 5-11
x2 Streckenlast

Hieraus folgt fr eine konstante spezifische Streckenlast q


l i,1 + l i ,2
( )
M bx1 = q l i ,2 l i ,1
2
x1 , x1 < l i,1 (5.10)

bzw.
l i,2 + x 2
(
M bx 2 = q l i,2 x 2 ) 2
x 2 . (5.11)

5.2 Durchbiegung von Achsen und Wellen 103

Aufgabe 5.2 Berechnung der Durchbiegung von Achsen und Wellen


Ein Berechnungsalgorithmus soll in einer Eingabephase alle angreifenden, ueren Krfte,
Momente und Streckenlasten erfassen. Danach soll in einer schrittweisen Berechnung die
Durchbiegung bestimmt werden.

Tabelle 5-2 Struktogramm zur Berechnung von Durchbiegungen

Einlesen des E-Moduls E und der Schrittweite x


x=0
M0=0: M1=0
f=0
Solange x < lmax
ber alle vorhandenen Einzelkrfte
Einlesen von Fi und li
x < li ?
ja nein
M 1 = M 1 + Fi (li x )

ber alle vorhandenen Einzelmomente


Einlesen von Mi und li
x < li ?
ja Nein
M1 = M1 + M i

ber alle vorhandenen Streckenlasten


Einlesen von qi, li1 und li2
x < li2 ?
ja nein
x < li1 ?
ja nein

l +l l + x
M 1 = M 1 + q(li 2 li1 ) i1 i 2 x M 1 = M 1 + q(li 2 x ) i 2 x
2 2
ber alle vorhandenen Abmessungen
Ii = 0
Einlesen von Di und li
104 5 Berechnungen von Maschinenelementen

x < li ?
ja nein
Ii = 0
ja nein
4
Di
Ii =
4 2

lmax=li
x>0?
ja nein
M 0 + M1
Mi =
2
M i x
i =
Ii E

x
f i = i
2

f = f + fi
x = x + x
M 0 = M1

Dieser fr einseitig eingespannte Wellen entstandene Algorithmus ist allgemeiner anwendbar.


So lsst sich auch die Durchbiegung fr eine beidseitig aufliegende, abgesetzte Welle berech-
nen.

F1 F2

FA FB
Bild 5-12
gedachte
Trennstelle Beidseitig aufliegende Welle

Dazu wird diese an einer beliebigen Stelle (wegen des geringeren Rechenaufwandes mglichst
an einer Stelle mit Einzelkraft) zerteilt gedacht und die beiden Wellenstcke werden wie an
ihrer Trennstelle eingespannte Wellen behandelt. Das Vorzeichen von Belastungs- und Lager-
5.2 Durchbiegung von Achsen und Wellen 105

kraft muss dabei beachtet werden. Beide Berechnungen ergeben Kurven, die zusammengesetzt
werden.
Da in den Auflagen die Durchbiegung Null sein muss, lsst sich eine Gerade zu beiden Punk-
ten ziehen. Die tatschliche Durchbiegung an der Stelle x ist
f x = f b + (l x) tan (5.12)

l
x

f x
f b

Bild 5-13
x linker Teil x rechter Teil
Durchbiegung einer beid-
y seitig aufliegenden Welle

Abschlieend soll ebenfalls noch ein statisch unbestimmter Fall behandelt werden, nmlich die
Lagerung einer Welle in drei Punkten. Zunchst lsst man das mittlere Lager unbeachtet und
ermittelt die Durchbiegung fr eine beidseitig aufliegende Welle nach der zuvor beschriebenen
Methode. Anschlieend wird die Durchbiegung fr die gleiche Welle nur mit der mittleren
Sttzkraft belastet ermittelt. Da die Sttzkraft nicht bekannt ist, wird zunchst eine beliebige,
wir nennen sie Fs*, angenommen. Mit Hilfe der Durchbiegung fs ohne Sttzkraft und der
Durchbiegung fs* bei angenommener Sttzkraft Fs* ist
fs
Fs = Fs* (5.13)
f s*
die tatschliche Sttzkraft, denn an dieser Stelle muss die Durchbiegung ebenfalls Null werden.
F1 F2

Bild 5-14
FA FS FB Dreifach gelagerte Welle

Fr die Auenlager gilt in gleicher Weise


fs
F A = F A* (5.14)
f s*
bzw.
fs
FB = FB* . (5.15)
f s*
106 5 Berechnungen von Maschinenelementen

Darin sind FA* und FB* die aus der Belastung nur mit angenommener mittlerer Sttzkraft ge-
wonnenen Lagerreaktionen. Nun wird dieser Fall noch einmal mit den so normierten Krften
nachgerechnet. Die Summe der beiden Durchbiegungen stellt dann die tatschliche angenher-
te Durchbiegung dar.
Zur Berechnung bentigen wir lediglich ein Tabellenblatt. Allerdings werden wir die bentig-
ten Liniendiagramme in ein Modul auslagern, so dass wir dieses auch fr sptere Anwendun-
gen nutzen knnen. Die im Modul modLinienDiagramm im Kopf unter Public deklarierten
Variablen gelten fr das ganze Projekt.
Codeliste 5.5 Prozeduren im Tabellenblatt tblDurchbiegung
5.2 Durchbiegung von Achsen und Wellen 107
108 5 Berechnungen von Maschinenelementen
5.2 Durchbiegung von Achsen und Wellen 109
110 5 Berechnungen von Maschinenelementen

Codeliste 5.6
5.2 Durchbiegung von Achsen und Wellen 111

Beispiel 5.2 Durchbiegung einer frei aufliegenden, mehrfach abgesetzten Welle


Die in Bild 5-17 dargestellte Welle soll auf Durchbiegung untersucht werden. Wird dabei ein
zulssiger Wert von f = 1 mm berschritten, so soll an die Stelle der grten Durchbiegung ein
weiteres Lager gesetzt werden. Fr diesen Fall sind ebenfalls Durchbiegungsverlauf und La-
gerkrfte gefragt.
Aus einem Momentenansatz um A folgt FB=13,032 kN und aus dem Krftegleichgewicht
FA=14,368 kN.
Die Auswertung fr den linken Teil liefert eine Durchbiegung von -1,292 mm (siehe Bild 5-
18).

400 600 1800 800 400

300 900 8KN 400


6KN 5KN

175 190 175


160 160

FA N N FB
q 2 = 2,0 q1 = 2,4
N mm 2 mm2
q3 = 1,6
mm2

Bild 5-15 Abgesetzte Welle

Bild 5-16 Linker Teil der abgesetzten Welle Fall I


112 5 Berechnungen von Maschinenelementen

Die Auswertung fr den rechten Teil liefert eine Durchbiegung von -1,572 mm. Die Durchbie-
gung in der Mitte ergibt sich aus der geometrischen Beziehung (Bild 5.20)
l2 2100
fs = fB + ( f A fB ) = fB + ( f A f B ) = 1, 425mm .
l1 4000
Damit wird ein mittleres Sttzlager erforderlich. Dieses wir zunchst mit 10 kN angenommen
(Bild 5-20).

Bild 5-17 Rechter Teil der abgesetzten Welle Fall I

FA * FB *
1900 2100

Bild 5-18

FS * Krfteverhltnisse mit
Sttzlager

Durch Momenten- und Krftegleichgewicht bestimmen sich die Auflagerkrfte zu FA*=5,25


KN und FB*=4,75 KN. Diese werden (ohne Streckenlasten) in die Berechnung eingesetzt.
Die Auswertung des linken Teils liefert jetzt 0,657 mm als Durchbiegung (Bild 5-21).
Die Auswertung des rechten Teils liefert jetzt 0,803 mm (Bild 5-22). Die Durchbiegung in der
Mitte wre in diesem Fall
2100 *
f S* = f B* + ( f A f B* ) = 0,726mm .
4000
5.2 Durchbiegung von Achsen und Wellen 113

Bild 5-19 Linker Teil der abgesetzten Welle mit Sttzkraft Fall II

Die richtigen Krfte lassen sich nun berechnen aus


f 1,428mm
FS = FS* S = 10kN = 19,669kN .
*
fS 0,726mm
und somit ist dann auch
fS 1,428mm
F A = F A* = 5,25kN = 10,326kN
f S* 0,726mm
und
fS 1,428mm
FB = FB* = 4,75kN = 9,343kN .
f S* 0,726mm
Die Ergebnisse in der Spalte M der jeweiligen Auswertungen von Fall I und Fall III bertragen
wir in ein weiteres Tabellenblatt (Bild 5-25) zur Auswertung. Neben diesen erzeugen wir ma-
nuell eine Spalte mit der Summe von Fall I und Fall III. Um die Daten ber die gesamte Wel-
lenlnge zu erhalten, mssen wir die Daten in eine einzige Spalte transponieren. Die erfllt
eine Prozedur Transponieren (Codeliste 5-7) in unserem Tabellenblatt. Ebenso erstellen wir
manuell ein Liniendiagramm ber die Gesamtdaten.
114 5 Berechnungen von Maschinenelementen

Bild 5-20 Rechter Teil der abgesetzten Welle mit Sttzkraft Fall II.

Bild 5-21 Linker Teil der abgesetzten Welle mit Sttzkraft Fall III
5.2 Durchbiegung von Achsen und Wellen 115

Bild 5-22 Rechter Teil der abgesetzten Welle mit Sttzkraft Fall III

Bild 5-23 Durchbiegungsverlauf mit mittlerer Sttzkraft


116 5 Berechnungen von Maschinenelementen

Codeliste 5-7 Prozedur zur Auswertung der Flle I und III in einem zustzlichen Tabellenblatt

bungsvorschlge
Bei abgesetzten Wellen kann es an Stellen mit Durchmessernderung (allgemein als Kerben
bezeichnet) zu rtlich hohen Spannungsspitzen kommen. Diesen Sachverhalt muss man durch
Festigkeitsnachweise bercksichtigen. Hat man eine Normal- oder Vergleichsspannung ermit-
telt, wir wollen sie mit n bezeichnen, so setzt man
max = n k . (5.16)
Die darin enthaltene Formzahl (k >= 1) wird durch Rechnung und Versuch gewonnen. Die
Formzahl bercksichtigt die Kerbform. Bei dynamischer Belastung mssen weitere Parameter
bercksichtigt werden, wie z. B. die Kerbempfindlichkeit. Ebenso die Oberflchenbeschaffen-
heit des Bauteils. Nach Thum folgt mit der Kerbempfindlichkeit
max = (1 + ( k 1) k ) n . (5.17)
Der so gewonnene Faktor wird abgekrzt als Kerbwirkungszahl k bezeichnet und man erhlt
max = k n . (5.18)
Integrieren Sie diesen Festigkeitsnachweis in die Berechnung durch Angabe der bergangsra-
dien und durch Bestimmung von k aus einem Diagramm (z. B. Interpolation).
5.2 Durchbiegung von Achsen und Wellen 117

k R
4
3
2 D d
1
Bild 5-24
0,1 0,2 0,3 0,4 R Kerbwirkung an abge-
d setzten Wellen

Neben der Biegebelastung unterliegen Wellen oft einer gleichzeitigen Torsionsbelastung. Mit
einem Torsionsmoment Mt ergibt sich eine Schubspannung zu
Mt
= r . (5.19)
It
Das darin enthaltene Flchenmoment betrgt fr Vollquerschnitte
1
It = I p = r 4 . (5.20)
2
Fr Hohlquerschnitte mit dem Auenradius ra und dem Innenradius ri folgt

It = I p =
1
2
(
ra4 ri4 .) (5.21)

Bei gleichzeitiger Belastung ermittelt man eine Vergleichspannung

V = b2 + 3 ( 0 t )2 zul . (5.22)

Diese Vergleichsspannung darf einen zulssigen Hchstwert nicht berschreiten.

Man setzt blicherweise:


0 = 1,0 wenn und wechselnd.
0 = 0,7 wenn wechselnd und ruhend oder schwellend.

Bei Wellen mit konstantem Durchmesser verdrehen sich die Enden infolge der Torsion um den
Verdrehwinkel
Mt
= . (5.23)
GI p

Darin ist G der Schubmodul, eine Materialkonstante. Fr Stahl betrgt diese 80000 N/mm.
118

6 Technische Statistik und Wahrscheinlichkeits-


rechnung

Die Anfnge zum Einsatz statistischer Methoden in der Technik gehen auf die 20er-Jahre des
1900 Jahrhunderts zurck. Karl Daeves fand die ersten Gesetzmigkeiten in der beginnenden
Massenproduktion. Seine Untersuchungsmethodik stand damals unter dem Begriff Grozahl-
forschung. In den letzten Jahrzehnten standen immer mehr Probleme der Industrie im Vorder-
grund. Beurteilung von Messreihen, Stichproben in Produktionen und vieles mehr. So hat sich
der Begriff Technische Statistik gebildet. In diesem Wissenschaftsgebiet unterscheidet man
zwei grundstzliche Bereiche.
Der erste Bereich befasst sich mit der Untersuchung und Auswertung von Datenmengen. Im
Wesentlichen sind dies statistische Prfverfahren, sowie Regressions- und Korrelationsanaly-
sen zur Darstellung von Wirkzusammenhngen.
Der zweite Bereich befasst sich mit Methoden der Eingangs- und Endkontrolle und der ber-
wachung von Produktionsprozessen. Hier hat sich der Begriff Statistische Qualittskontrolle
herausgeprgt.

6.1 Stichprobenanalyse
Es ist gewhnlich sehr schwierig und kostspielig, Originaldaten in ihrer Flle zu beurteilen. Zu
diesem Zweck entnimmt man der Gesamtmenge (man spricht von Grundgesamtheit) einzelne
Stichproben. Doch wie beurteilt man die so gewonnenen Daten?
Eine Methode zur Beurteilung von groen Datenmengen ist das Zusammenfassen in Klassen.
Dazu wird die ganze Variationsbreite der Daten in n Klassen unterteilt und die Daten den Klas-
sen zugeordnet. Die Betrachtung der Klassen zeigt dann schnell erste Ergebnisse. Doch in wie
viele Klassen unterteilt man eine Datenmenge? Zu viele oder nur wenige Klassen bringen
mglicherweise nicht die richtigen Aussagen. Eine oft angewandte empirische Formel zur
Bestimmung der Anzahl Klassen lautet
k = 1 + 3,310 log(n ) . (6.1)
Darin ist k die Anzahl Klassen und n der Stichprobenumfang.
Um Aussagen ber eine grere Datenmenge machen zu knnen, muss man diese Datenmenge
erst einmal besitzen. Einen Datengenerator haben wir bereits kennen gelernt, den Pseudozu-
fallszahlengenerator.

Aufgabe 6.1 Erzeugung von Zufallszahlen fr eine statistische Untersuchung


Mittels eines Zufallszahlengenerators sollen n Zahlen erzeugt werden. Die so erhaltene Da-
tenmenge soll in Klassen nach der Formel 6.1 eingeteilt werden. Welche Verteilung ist zu
erwarten und wie verhalten sich die Klassen mit grer werdendem n?
6.1 Stichprobenanalyse 119

Tabelle 6-1 Struktogramm zur Erzeugung und Auswertung von Pseudozufallszahlen

Eingabe n
k = 1 + 3,3 log(n)
Randomize
i=1 bis n
x=Rnd(x)
j=1:m=0
solange m=0
Ist x < j*k
ja nein
T(j)=x (Eintragung in Tabelle, Spalte j)
m=1
j=j+1

In das neu angelegte Tabellenblatt schreiben wir die nachfolgenden Prozeduren von Codeliste
6.1. In Kapitel 4.1 haben wir uns schon einmal mit Shapes auseinandergesetzt. Hier kommen
sie nun zum Einsatz. Denn eine grafische Mglichkeit, Stichproben darzustellen sind Histog-
ramme. Dabei werden die Hufigkeitsverteilungen durch Balken dargestellt. Sie vermitteln
einen optischen Eindruck von der Verteilung.

Bild 6-1
x
Beispiel eines Histogramms

Codeliste 6.1 Prozeduren im Tabellenblatt tblZufallszahlen

Option Explicit
Sub Tabelle_leer()
Worksheets("Zufallszahlen").Cells.Clear
End Sub

Sub Zufallszahlen()
Dim i, j, n As Long
Dim k, m As Integer
Dim dx, x As Double
Worksheets("Zufallszahlen").Activate
120 6 Technische Statistik und Wahrscheinlichkeitsrechnung

n = InputBox("Bitte eingeben..", "Anzahl Zufallszahlen", 1000)


k = Int(1 + 3.3 * Log(n) / Log(10#))
ReDim T(k)
For i = 1 To k
T(i) = 0
Next i
dx = 1 / k
x = 0
Randomize
For i = 1 To n
x = Rnd(x)
j = 1: m = 0
Do
If x < j / k Then
T(j) = T(j) + 1
Cells(T(j), j) = x
m = 1
End If
j = j + 1
Loop While m = 0
Next i
End Sub

Sub Grafik_einblenden()
Dim i, j, k, a() As Long
Dim b, h, n, max As Double
Worksheets("Zufallszahlen").Activate
b = 60
n = 0
max = 0
Do
n = n + 1
Loop While Cells(1, n) <> ""
n = n - 1
ReDim a(n)
For i = 1 To n
j = 0
Do
j = j + 1
If Cells(j, i) <> "" Then
k = j
End If
Loop While Cells(j, i) <> ""
a(i) = k
If k > max Then max = k
Next i
For i = 1 To n
h = Int(a(i) / max * 500)
'Parameter: Type, Left, Top, Width, Height
Shapes.AddShape msoShapeRectangle, (i - 1) * b, 0, b, h
Next i
End Sub

Sub Grafik_ausblenden()
Dim Shp As Shape
Worksheets("Zufallszahlen").Activate
'alle Charts lschen
For Each Shp In Shapes
Shp.Delete
Next
End Sub
6.1 Stichprobenanalyse 121

Die Prozedur Tabelle_leer lscht alle Daten vom Arbeitsblatt. Die Prozedur Zufallszahlen
erzeugt eine abgefragte Anzahl Pseudozufallszahlen und ordnet sie nach Klassen auf dem
Tabellenblatt. Die Prozedur Grafik_zeigen setzt die so gewonnenen Daten mittels Shapes in
ein Histogramm um. Diese Grafik lscht die Prozedur Grafik_ausblenden. Denn anders als die
Daten vom Arbeitsblatt mit Cells.Clear zu lschen, mssen die Shapes durch Shape.Delete
entfernt werden.
Da uns aber auch sehr groe Datenmengen interessieren, gibt es noch eine weitere Prozedur in
diesem Arbeitsblatt. Sie folgt in der Codeliste 6.2 und ist im Men bereits eingetragen. Diese
Prozedur trgt aus Platz- und Zeitgrnden die einzelnen Zufallszahlen nicht mehr ins Arbeits-
blatt ein, sondern merkt sich die Verteilung in einer indizierten Variablen. Dabei ist der Index
die Klassennummer.
Aus der Einfhrung ber Pseudozufallszahlen wissen wir, dass eine Gleichverteilung auf dem
Intervall vorhanden sein muss, wenn nur hinreichend viele Zahlen erzeugt werden. Es liegt
also nahe, diese Gesetzmigkeit fr Pseudozufallszahlen auch fr unseren Computer besttigt
zu finden.

Codeliste 6.2 Eine zweite Auswertungs-Prozedur im Tabellenblatt tblZufallszahlen

Sub Zufallszahlen_II()
Dim i, j, n, max, min As Long
Dim k, m As Integer
Dim dx, x, b, h, dif, pdif, d, p As Double
Worksheets("Zufallszahlen").Activate
n = InputBox("Bitte eingeben..", "Anzahl Zufallszahlen", 1000)
k = Int(1 + 3.3 * Log(n) / Log(10#))
ReDim T(k) As Long
For i = 1 To k
T(i) = 0
Next i
dx = 1 / k
x = 0
Randomize
For i = 1 To n
x = Rnd(x)
m = 0
j = 1
Do
If x < j / k Then
T(j) = T(j) + 1
m = 1
End If
j = j + 1
Loop While m = 0
max = j - 1
Next i
max = 0: min = 0
For i = 1 To k
If i = 1 Then min = T(i)
If T(i) < min Then min = T(i)
If T(i) > max Then max = T(i)
Next i
b = 60
For i = 1 To k
h = Int(T(i) / max * 400)
'Parameter: Type, Left, Top, Width, Height
Shapes.AddShape msoShapeRectangle, (i - 1) * b, 51, b, h

d = max - min
122 6 Technische Statistik und Wahrscheinlichkeitsrechnung

p = 100 - Int(T(i) / max * 1000) / 10


If i = 1 Then
dif = d
pdif = p
Else
If d > dif Then dif = d
If p > pdif Then pdif = p
End If
Cells(1, i) = T(i)
Cells(2, i) = max - T(i)
Cells(3, i) = Int(T(i) / max * 1000) / 10
Next i
Cells(1, k + 1) = max
Cells(2, k + 1) = dif
Cells(3, k + 1) = pdif
End Sub

In der nachfolgenden Tabelle sind Werte angegeben, wie sie sich in hnlicher Form auf jedem
anderen Rechner auch ergeben. Es ist leicht zu erkennen, dass mit zunehmender Anzahl Pseu-
dozufallszahlen, die prozentuale Abweichung zwischen den Klassen gegen Null konvergiert
und damit bei hinreichender Anzahl von Pseudozufallszahlen eine Gleichverteilung gegen ist.

Tabelle 6-2 Klasseneinteilung von Pseudozufallszahlen

Anzahl Maximalanzahl von Grte Abweichung Grte Abweichung


Zahlen Pseudozufallszahlen zur Maximalanzahl in in %
in einer Klasse einer Klasse
1.000 117 31 26,5
10.000 787 125 15,9
100.000 5983 195 3,3
1.000.000 50437 1108 2,2
10.000.000 417562 1874 0,5

Lsst man die Klassenzahl gegen Unendlich gehen, gelangt man zur nachfolgenden Funktion
der Gleichverteilung, die auch als Dichtefunktion bezeichnet wird.

Auftretungswahrscheinlichkeit

Bild 6-2
3 2 + +2 +3 Beispiel einer-
Abweichung vom Mittelwert Gleichverteilung

Alle Werte kommen gleich hufig vor, etwa wie beim Wrfeln mit einem Wrfel.
6.1 Stichprobenanalyse 123

Neben der Gleichverteilung ist die von Gau gefundene Normalverteilung sehr wichtig. Weite-
re wichtige Verteilungen sind noch die Binomialverteilung und die Poissonverteilung. Der
Grundgedanke bei der Normalverteilung ist, dass die Wahrscheinlichkeit des Auftretens mit
dem Abstand zum Mittelwert stark abnimmt. Es kommt zu der auch als Glockenkurve be-
zeichneten Funktion.

Auftretungswahrscheinlichkeit

Wendepunkt
x = +s

Bild 6-3
3 2 + +2 +3 Dichtefunktion der
Abweichung vom Mittelwert Normalverteilung

Die Normalverteilung selbst bestimmt sich aus der Gleichung


( x )2
1
f n ( x) = e 2 (6.2)
2
mit als Mittelwert der Normalverteilung und als Standardabweichung.
Man kann eine solche Normalverteilung auch mittels Pseudozufallszahlen erzeugen. Dazu
bedient man sich des zentralen Grenzwertsatzes, der besagt, dass die Summe von unendlich
vielen Zufallszahlen einer Gleichverteilung eine Zufallszahl mit Gauscher Verteilung ergibt.
Mit
f ( xi ) = 1, 0 x i < 1 (6.3)
wird
n
n

lim p xi GauscheVerteilung . (6.4)
i =1

mit dem Mittelwert n/2 und der Standardabweichung (n / 12) . Fr endliche Werte N erhlt
man eine Zufallszahl y mit dem Mittelwert 0 und der Standardabweichung 1 durch
N N

xi
i =1 2
y= . (6.5)
N
12
124 6 Technische Statistik und Wahrscheinlichkeitsrechnung

Bereits fr N=12 wird die Gauverteilung hinreichend angenhert und die Formel vereinfacht
sich zu
12
y = xi 6 . (6.6)
i =1

Allgemein jedoch, mit einer Standardabweichung und als Mittelwert gilt


12
y = xi 6 + . (6.7)

i =1

Aufgabe 6.2 Erzeugung von normal verteilten Zufallszahlen


Mittels einer Prozedur sollen normal verteilte Zufallszahlen erzeugt werden. Nach deren Sor-
tierung soll eine Grafik die Funktion darstellen.
Ergnzen Sie also das Men um die weiteren Punkte Normalverteilung und Normalverteilung
zeigen.

Tabelle 6-3 Struktogramm zur Erzeugung von normal verteilten Zufallszahlen.

Eingabe n
Randomize
i=1 bis n
s=0
j=1 bis 12
x=Rnd(x)
s=s+x
y=s-6
Ausgabe y
Spalte aufsteigend sortieren

Codeliste 6.3 Weitere Prozeduren im Tabellenblatt tblZufallszahlen

Sub Normalverteilung()
Dim x, y, s As Double
Dim i, n As Long
Dim j As Integer
Worksheets("Zufallszahlen").Activate
n = InputBox("Bitte eingeben..", "Anzahl Zufallszahlen", 1000)
x = 0
Randomize
For i = 1 To n
s = 0
For j = 1 To 12
x = Rnd(x)
s = s + x
Next j
6.1 Stichprobenanalyse 125

y = s - 6
Cells(i, 1) = y
Next i
Columns("A:A").Select
Selection.Sort Key1:=Range("A1"), _
Order1:=xlAscending, _
Header:=xlGuess, _
OrderCustom:=1, MatchCase:=False, _
Orientation:=xlTopToBottom, _
DataOption1:=xlSortNormal
End Sub
Sub Normalverteilungs_Diagramm()
Charts.Add
ActiveChart.ChartType = xlLine
ActiveChart.SetSourceData
Source:=Sheets("Zufallszahlen").Range("A1:A1000"), PlotBy:=xlColumns
ActiveChart.Location Where:=xlLocationAsObject, Name:="Zufallszahlen"
With ActiveChart
.HasTitle = True
.ChartTitle.Characters.Text = "Normalverteilung"
.Axes(xlCategory, xlPrimary).HasTitle = True
.Axes(xlCategory, xlPrimary).AxisTitle.Characters.Text = "x"
.Axes(xlValue, xlPrimary).HasTitle = True
.Axes(xlValue, xlPrimary).AxisTitle.Characters.Text = "y"
End With
ActiveChart.HasLegend = False
ActiveChart.HasDataTable = False
End Sub

Ein Start der Normalverteilung liefert die nachfolgenden Werte. Die Normalverteilung ist gut
zu erkennen. Mit einer Normalverteilung lassen sich per Simulation viele Produktionsprozesse
untersuchen ohne groe Kosten und Zeitaufwand.

Bild 6-4

Normalver-
teilung

Aufgabe 6.3 Fertigungssimulation


Auf einer automatischen Fertigungsanlage wird ein Bauteil mit einer Bohrung versehen. Der
Durchmesser ist als normal verteilt anzusehen. Der Erwartungswert ist 45 mm bei einer Stan-
dardabweichung von 0,12 mm.
126 6 Technische Statistik und Wahrscheinlichkeitsrechnung

Zu bestimmen ist der prozentuale Anteil an Ausschuss bei einer erlaubten Toleranz von 0,15
mm. Der Anteil an Ausschuss soll durch eine Umrstung der Maschine verringert werden. Zu
bestimmen ist die Standardabweichung, bei der mindestens 92% der Bauteile im Toleranzbe-
reich liegen.

Codeliste 6.4 Prozeduren im Arbeitsblatt tblFertigung

Option Explicit
Sub Normalverteilung_Formblatt()
Worksheets("Fertigung").Activate
Worksheets("Fertigung").Cells.Clear
Range("A1") = "Mittelwert"
Range("A2") = "Standardabweichung"
Range("A3") = "Toleranzbereich +/-"
Range("A4") = "Anzahl Zufallszahlen"
Range("A6") = "Ausschuss - Anzahl"
Range("A7") = " - %"
Range("A:A").ColumnWidth = 20
Range("B:B").ColumnWidth = 10
End Sub

Sub Normalverteilung()
Dim x, y, su, mi, ab, tb As Double
Dim i, n, m As Long
Dim j, k As Integer
DoEvents
Worksheets("Fertigung").Activate
mi = Cells(1, 2)
ab = Cells(2, 2)
tb = Cells(3, 2)
n = Cells(4, 2)
x = 0
Randomize
For k = 1 To 10
m = 0
For i = 1 To n
su = 0
For j = 1 To 12
x = Rnd(x)
su = su + x
Next j
y = ab * (su - 6) + mi
If Abs(mi - y) > tb Then m = m + 1
Next i
Cells(6, 1 + k) = m
Cells(7, 1 + k) = Int(1000 / n * m) / 10
Next k
End Sub

Die Auswertung ist so aufgebaut, dass gleichzeitig 10 Auswertungen ausgefhrt werden. Mit
den Beispieldaten wird ein Ausschuss von ca. 21,5% erreicht.

Bild 6-5 Auswertung mit der Standardabweichung 0,12


6.2 Probabilistische Simulation 127

Reduziert man die Standardabweichung nur um 0,01, so erhlt man

Bild 6-6 Auswertung mit der Standardabweichung 0,11

bungsvorschlge
Untersuchen Sie weitere Fertigungsprobleme. Zum Beispiel die Lebensdauer eines Verschlei-
teils ist normal verteilt mit = 360 Tagen und = 30 Tagen. Wie gro ist die Wahrscheinlich-
keit, dass die Lebensdauer weniger als 3, 6, 9, 12 Monate betrgt (1 Monat = 30 Tage).
Programmieren Sie auch die Binomialverteilung und die Poissonverteilung.
Wir haben Verfahren zur Analyse von Stichproben behandelt, bei denen nur jeweils ein Wert
betrachtet wird. Oft jedoch liegt mehr als nur ein Wert vor und es ist nach deren Beziehung
untereinander gefragt. Hier kommen die Begriffe Regression und Korrelation in Spiel. Versu-
chen Sie die Begriffe zu thematisieren und programmieren Sie einen Anwendungsfall. Zum
Beispiel die Beziehung zwischen Krpergewicht und Krpergre von Personen.

6.2 Probabilistische Simulation


Der klassische Wahrscheinlichkeitsbegriff ist definiert mit
m
W= , (0 W 1) (6.8)
n
mit der Anzahl m der mglichen Flle, bei denen das Ereignis eintritt und der Anzahl n aller
mglichen Flle. Danach hat ein unmgliches Ereignis die Wahrscheinlichkeit W = 0 und ein
sicheres Ereignis die Wahrscheinlichkeit W = 1.
Als Probabilistische Simulation werden die Algorithmen bezeichnet, die mit Wahrscheinlich-
keitsmodellen arbeiten. Eine der ersten Anwendungen war die Diffusion von Neutronen durch
die Bleiwand eines Kernreaktors. Weitere bekannte Anwendungen sind die Simulation des
Verkehrsflusses an einer Kreuzung, die Simulation eines Flughafens, die Abfertigung an Tank-
stellen und vieles mehr. Also auch Warteschlangenprobleme lassen sich mit dieser Methode
betrachten.
Grundlage dieser Methode ist die Erzeugung von Wahrscheinlichkeiten durch gleichverteilte
Zufallszahlen auf einem Intervall. Damit lassen sich dann nach dem Gesetz der groen Zahl
Wahlvorhersagen ziemlich genau erstellen und auch Probabilistische Simulationen erzeugen.
Hat man frher diese Zufallszahlen durch Funktionen erreicht, so knnen diese heute auf dem
PC mit einer Funktion erstellt werden. Und eben mit dieser so wichtigen Eigenschaft, dass bei
der Erzeugung hinreichend vieler Zufallszahlen eine Gleichverteilung im PC auf dem Intervall
von 0 bis 1 erfolgt.
128 6 Technische Statistik und Wahrscheinlichkeitsrechnung

Aufgabe 6.4 Probabilistische Simulation einer Werkzeugausgabe


Wir betrachten als einfaches Warteschlangenproblem eine Werkzeugausgabe. Diese ist mit
vier Leuten als Bedienpersonal besetzt. Nun kommen im Schnitt elf Ausleiher pro Minute und
belegen zusammen mit einem Bedienpersonal eine bestimmte Bedienzeit. Sind alle Bediener
besetzt, so muss der Ausleiher warten. Die Bedienzeiten sind ebenfalls unterschiedlich und
nach einer Studie (hinreichend viele nach dem Gesetz der groen Zahl) ermittelt worden.
Wichtig ist, dass die Summe der Wahrscheinlichkeiten 1 ergibt. Damit ist unser Wahrschein-
lichkeitsmodell anwendbar.
Betrachten wir zunchst den im nachfolgenden Flussdiagramm dargestellten Algorithmus.
Eine Zufallszahl bentigen wir an zwei Stellen. Die Wahrscheinlichkeit pro Sekunde, dass ein
Ausleiher erscheint, ist
Anzahl _ Ausleiher _ pro _ Minute
wA =
60
Ist nun die Zufallszahl x <= wA, dann erscheint ein Ausleiher. Es knnen auch mehr als die
vorgegebene Anzahl Ausleiher pro Minute erscheinen. Aber lsst man die Simulation nur
hinreichend lange laufen (Gesetz der groen Zahl), dann stellt sich im Schnitt diese Verteilung
ein.

Tabelle 6-4 Struktogramm zur Simulation einer Werkzeugausgabe

i=0 (Bedienzeit und Wahscheinlichkeit als Vektor speichern)


Solange eine Wahrscheinlichkeit gegeben ist
Tabellenwert der Wahrscheinlichkeit w in Vektor w(i) speichern
Summierung der Wahrscheinlichkeiten w = w + w
Tabellenwert der Bedienzeit z in Vektor z(i) speichern
Zeit=0
Ausleiher=0
Zufallszahlenstart
Solange Zeit < Gesamtzeit
Zeit = Zeit + 1 Sekunde
ber alle (Vorhandene Bedienzeiten um eine Sekunde reduzieren)
Bediener Ist BZ(i)>0 ? (Bediener hat Bedienzeit)
Ja Nein
BZ(i) = BZ(i) - 1
Erzeugung einer Zufallszahl x
Ist x <= w ? (Erscheint ein Ausleiher?)
Ja Nein
Ausleiher = Ausleiher + 1
6.2 Probabilistische Simulation 129

Ist AL > 0 ?
Sind Ausleiher vorhanden, dann zuteilen falls mglich
Ja Nein
ber alle
Bediener Bediener hat keine Bedienzeit
Ja Nein
Bedienzeit nach Wahrscheinlichkeit zuweisen
Erzeugung einer Zufallszahl x
Finde zutreffende Wahrschein-
lichkeit
BZ(i)=z(i)
Ausleiher=Ausleiher-1
(Zuordnung abbrechen)

Codeliste 6.5 Prozeduren im Arbeitsblatt tblAusgabe finden Sie auf meiner Website.

Unser Testbeispiel (Bild 6-7) liefert eine Grafik der wartenden Ausleiher. Interessant ist diese
Analyse erst, wenn man bedenkt, dass mit den wartenden Ausleihern unter Umstnden auch
die Produktion wartet.

bungsvorschlge:
Simulationen in dieser Form bilden in ihrer Einfachheit nicht den wirklichen Prozess ab. So
haben die Leute des Bedienpersonals auch Pausenzeiten und es wre besser, man wrde zu
jeder Person ein Zeitmodell hinterlegen. Auch die Gleichverteilung der Ausleiher ber den Tag
als lineare Funktion entspricht nicht der Wirklichkeit. Analysen zeigen, dass es Zeiten mit
grerem Andrang und Zeiten mit geringem Andrang gibt. Die Darstellung durch eine Funkti-
on mittels Approximation oder Interpolation wre eine Erweiterung. Auch Simulationen mit
der Normalverteilung knnen Sie programmieren.
130 6 Technische Statistik und Wahrscheinlichkeitsrechnung

Bild 6-7 Auswertung mit der Standardabweichung 0,11

Eine weitere Mglichkeit, an der Sie sich ben knnen, ist folgende:
Ein Arbeiter bedient mehrere Maschinen. Beim gleichzeitigen Ausfall mehrerer Maschinen
kann dieser sich nur um eine Maschine kmmern. Erst nach dem Ende einer Reparatur kann
sich der Arbeiter um die nchste kmmern. Bestimmt man die Wahrscheinlichkeit eines Ma-
schinenausfalls und die Wahrscheinlichkeiten der Reparaturzeiten, so lsst sich damit auch ein
anschauliches Modell konstruieren. Interessant ist dann die Frage nach der gesamten Ausfall-
zeit der Maschinen, bedingt durch Wartezeiten.
Das in der Anwendung programmierte Diagramm sollten Sie auch so umstellen, dass es fr
andere Anwendungen ebenfalls genutzt werden kann. Orientieren Sie sich an dem Modul mod-
LinienDiagramm in Kapitel 5. Mglicherweise lassen sich beide Prozeduren in einem Modul
zusammenfassen. Eventuell durch einen Parameter innerhalb der gleichen Prozedur.
131

7 Wirtschaftliche Berechnungen

Wirtschaftlichkeit ist ein Zentralbegriff der Betriebswirtschafts- und Managementlehre ber


den sparsamen Umgang mit den Ressourcen Material, Personal und Maschinen. Durch niedrige
Kosten und kurze Durchlaufzeiten kann man in der Fertigung viel zur Wirtschaftlichkeit
beitragen. Die Wirtschaftlichkeit ist eine Kennzahl, die das Verhltnis von Ertrag zum
Aufwand misst. Ein Handeln nach dem Wirtschaftlichkeitsprinzip bedeutet, aus Alternativen
die zu whlen, die die hchste Wirtschaftlichkeit aufweist. Bei einer rein mengenmigen
Betrachtung spricht man auch von technischer Wirtschaftlichkeit, Technizitt oder
Produktivitt. Meist gengt eine Mengenrelation nicht, dann stehen als Beispiel auch Leistung,
Nutzen fr Output und Kosten fr Input. Gelegentlich wird mit Wirtschaftlichkeit der Grad
angegeben, der fr bestimmte Vorgaben erreicht wurde.

7.1 Maschinenbelegung nach Johnson


Die Maschinenbelegung ist ein klassisches Reihenfolgeproblem. Zur Herstellung von n
Produkten sind eine Reihe von m Maschinen gegeben. Jedes Produkt Pi (i = 1, 2, 3, , n)
durchluft in der gleichen Reihenfolge die Maschinen Mk (k = 1, 2, 3, , m). Die
Gesamtbearbeitungszeit hngt von der Folge ab, in der die Produkte bearbeitet werden. Sie ist
in der Regel fr jede Permutation
1,2,3,..., n
(7.1)
i1 , i 2 ,..., i n
eine andere.
Die zu fertigende Menge eines Produktes wir als Los bezeichnet. Losgren knnen, je nach
Produkt, einige hundert bis tausend Stck betragen. Der Einfachheit halber nehmen wir an,
dass ein Produkt Pi erst dann von einer Maschine Mk auf die Maschine Mk+1 wechselt, wenn
das ganze Los auf der Maschine Mk bearbeitet ist. Dabei kann der Fall eintreten, dass die
nachfolgende Maschine noch das vorherige Produkt Pi-1 bearbeitet, so dass das i-te Los warten
muss bis die Maschine Mk+1 frei wird.

P1 P2 P3 P4 P5 P = Produkt
M = Maschine
M 1
W = Wartezeit
W W
M2
W W
Bild 7-1
M 3
Maschinen-
Belegungszei
ten in einer
Zeit [Std.] Produktion
132 7 Wirtschaftliche Berechnungen

Gesucht ist nun die optimale Durchlaufreihenfolge, fr die die Gesamtbearbeitungszeit ein
Minimum wird. Dabei sind durchaus mehrere Lsungen mglich.
Bezeichnet man mit tik die Bearbeitungszeit des Produktes Pi auf der Maschine Mk, so braucht
dieses Produkt fr den Durchlauf durch alle m Maschinen die Zeit
m m
Ti = t ik + wik (7.2)
k =1 k =1

Darin sind wik die Wartezeiten fr den Einsatz auf den Maschinen. Meistens sind diese jedoch
Null.
Sind keine Zwischenlager vorhanden und tritt eine Wartezeit wik von Produkt Pi auf der
Maschine Mk auf, so darf erst mit der Bearbeitung von Pi auf der Maschine Mk-1 nach der
Wartezeit wik begonnen werden, damit der Produktionsprozess ohne Wartezeit durchgefhrt
werden kann.
Fr n Produkte erhlt man die gesamte Durchlaufzeit dadurch, dass man smtliche Wartezeiten
und die gesamte Bearbeitungszeit des letzten Produktes addiert
m n 1 k k 1
Ti = t nk + max t ij t i +1, j (7.3)
k =1 i =1 j =1 j =1
1 k n
Wollte man alle mglichen n Permutationen durchspielen, so ergeben sich n! Mglichkeiten
und damit stoen wir schnell an die Grenze eines durchfhrbaren Rechenaufwandes.
Nun gibt es in diesem Fall einen einfachen Algorithmus, der von Johnson gefunden wurde. Das
Verfahren ist fr eine zweistufige Bearbeitung gedacht, also Vorsicht mit mehr als zweistufiger
Fertigung. Dass es dennoch auch hier Lsungen geben kann, zeigt das nachfolgende Beispiel.
Das Verfahren von Johnson besteht aus folgenden Schritten:
1. Es werden Pi (i=1, 2, 3, , n) Produkte auf Mk Maschinen (k=1, 2, 3, , m)
hergestellt. Zu bestimmen ist x = Min ( t1,1, , tm,1, t1,n, ..., tm,n ). Gibt es mehrere x, so
kann ein beliebiges gewhlt werden.
2. Ist x = ti,1 so wird das Produkt Pi zuerst bearbeitet. Ist x = ti,n, so wird das Produkt Pi
zuletzt bearbeitet.
3. Streiche das Produkt Pi und gehe zurck zu 1., bis alle Produkte eingeplant sind.

Aufgabe 7.1 Maschinenbelegung nach Johnson


Wir wollen die Maschinenbelegung nach Johnson programmieren. Um allerdings diesen
Algorithmus auf m Maschinen in der Fertigungsfolge betrachten zu knnen, ndern wir die
Betrachtung auf die erste Maschine M1 und die letzte Maschine Mm ab.
Zuerst erfolgt die Initialisierung eines Produktvektors. Er soll festhalten, welches Produkt bei
der Vergabe der Fertigungsreihenfolge bereits verplant ist. Zunchst wird dieser Merker auf
den Index des Produkts gesetzt und spter bei der Vergabe auf Null.
Eine einfache Grafik mittels Shapes soll die Maschinenbelegung darstellen. Sie vermittelt
Aussagen, die aus den berechneten Daten nicht sofort ersichtlich sind, wie etwa die
auftretenden Wartezeiten.
7.1 Maschinenbelegung nach Johnson 133

Tabelle 7-1 Optimale Maschinenbelegung nach einer modifizierten Johnson-Methode

i=0
i=1 bis n
M(i)=i
i=0
Solange i < n
Suche das erste nicht verplante Produkt und setze den
Zeitaufwand auf das Minimum.
Suche in allen nicht verplanten Produkten die minimale Zeit, die
auf der ersten oder letzten Maschine belegt wird.
Ordne je nach Lage des Minimums (erste oder letzte Maschine)
das Produkt einem weiteren Merker zu.
i=i+1
M(x)=0

Die grau gekennzeichneten Prozeduren mssen noch genauer beschrieben werden.

Tabelle 7-2 Suche erstes Produkt

j=1
Solange M(j)=0
J=j+1
Min = t(j,1)
x=j

Tabelle 7-3 Suche Minimum

i=1 bis n
J=j+1
Ist M(i)>0 ?
Ja Nein
Ist T(i,1)<Min ?
Ja Nein
Min = T(i,1)
134 7 Wirtschaftliche Berechnungen

x=i
y=1
Ist T(i,m) < Min ?
Ja Nein
Min=T(i,m)
x=i
y=m

Tabelle 7-4 Ordne je nach Lage des Minimums

Ist j=1 ?
Ja Nein
i1 = i1 + 1 i2 = i2 + 1
M1(i1) = x M2(i2) = x

Die Merker M1()und M2() enthalten am Ende die Fertigungsreihenfolge der Produkte in der
Form
M11,,M1p,M2q,,M21,
d. h. im ersten Merker in aufsteigender Reihenfolge und im zweiten Merker in absteigender
Reihenfolge.
Eine neu angelegte Tabelle tblBelegung werden wir diesmal nur als Ausgabeelement benutzen.
Die eigentlichen Prozeduren schreiben wir in ein Modul und die notwendigen Eingaben
erhalten wir ber ein Formblatt.
Ein Testbeispiel wird nachfolgend beschrieben. Die Funktion Neue Berechnung ruft ein
Formblatt Bild 7-2 zur Eingabe der Anzahl Maschinen und Produkte auf. Danach wird auf dem
Arbeitsblatt eine Eingabe der Belegungszeiten erwartet. Die Auswertung nutzt diese Daten zur
Optimierung. Mittels Shapes wird eine einfache Grafik eingeblendet. Die Farbdarstellung wird
mittels RGB-Farben realisiert. Dadurch werden gleiche Farben bei Shapes und Formblatt
erzeugt.

Codeliste 7.1 Prozeduren im Modul modBelegung finden Sie auf meiner Website.
7.2 Optimale Losgre 135

Bild 7-2
Formular zur Dateneingabe

Codeliste 7.2 Prozeduren im Formular frmBelegung finden Sie auf meiner Website.

Beispiel 7.1 Maschinenbelegung nach Johnson


In einem Produktionsbetrieb werden fnf Produkte auf drei Maschinen in gleicher Reihenfolge
produziert. Die Belegungszeiten der Maschinen (M1, M2, M3) in Stunden je Produkt sind: P1( 5,
3, 8), P2(5, 3, 4), P3(12, 4, 2), P4(4, 2, 7) und P5(8, 2, 9).

Bild 7-3 Auswertung des Testbeispiels

bungsvorschlge
Lassen Sie eine Halbierung oder andere Einteilung der Losgren zu. Vermeiden Sie
Wartezeiten durch eine verzgerte Produktion wie anfangs beschrieben.

7.2 Optimale Losgre


Aus dem Bereich der Produktion gibt es aus Kostensicht folgende berlegungen. Wird der
Verkauf eines Produktes x mit der Menge m pro Jahr eingeschtzt, so knnte man diese Menge
auf einmal produzieren. Zwar fallen dann die Rstkosten nur einmal an, dafr gibt es aber
Lagerkosten. Ebenso mssen Material und Lhne vorfinanziert werden. Es fallen also
Bankzinsen an. Mit kleiner werdenden Losgren werden zwar die Lagerkosten und
Bankzinsen weniger, dafr werden aber die Rstkosten hher.
Der Verlauf der Rstkosten ber der Losgre ist der einer Hyperbel, whrend Lagerkosten
und Kapitalbindung in Form einer Geraden verlaufen. Addiert man beide Kurven zu den
136 7 Wirtschaftliche Berechnungen

Gesamtkosten so zeigt sich, dass diese an einer Stelle ein Minimum annehmen. Man spricht
hier von einem Optimum und bezeichnet die zugehrige Losgre als optimale Losgre.
Sind xGes die voraussichtliche Gesamtstckzahl pro Jahr und KR die Rstkosten in Euro/Los so
ergeben sich die Gesamtrstkosten fr jede Losgre x aus der Formel
x Ges
GR = KR (7.4)
x

Kosten

Gesamtkosten
Lager- und
Rstkosten
Bankkosten

Bild 7-4
Optimale Losgre Stckzahl Optimale
Losgre

Sind KH die Herstellkosten ohne Rstanteil pro Stck und zB der Zinssatz fr Bankzins in
[%/Jahr] und zL der Zinssatz fr Lagerkosten ebenfalls in [%/Jahr], so werden damit die
Gesamtlagerkosten
x z + zL
GL = KH B (7.5)
2 100
Die Gesamtkosten pro Jahr sind damit
G = GR + GL (7.6)
Und daraus wiederum die Gesamtkosten pro Stck
G
GS = (7.7)
x Ges

Aufgabe 7.2 Bestimmung der optimalen Losgre


Mit einer Aufteilung von z. B. xGes/100 werden die Kosten schrittweise berechnet und so
rechnerisch und grafisch die optimale Losgre ermittelt.
7.2 Optimale Losgre 137

Tabelle 7-5 Struktogramm zur Bestimmung der optimalen Losgre

Eingabe der Rstkosten KR, Herstellkosten KH, Jahresbedarf xGes,


Bankzinssatz zB und Lagerzinssatz zL
x
x = Ges , x = 0
100
solange : x x Ges

x
G R = Ges K R
x

x z + zL
GL = KH B
2 100
G = GR + GL

G
GS =
x Ges

x = x + x
Ausgabe
Optimale Losgre

Codeliste 7.3 Prozeduren im Arbeitsblatt tblLosgre

Zur Eingabe benutzen wir ein Formular nach Bild 7-5.


138 7 Wirtschaftliche Berechnungen

Bild 7-5
Formular zur Dateneingabe

Ein Formular besitzt die Eigenschaft Picture, so dass wir mit einem Doppelklick auf diese
Eigenschaft ber ein Dialogfeld eine Grafik als Hintergrundbild einblenden knnen. Neben
dieser Grafik, die noch einmal die funktionalen Zusammenhnge zeigt, enthlt das Formular
Textboxen zur Dateneingabe. Diese sind durch Labels entsprechend beschriftet. Mit der
Schaltflche Testdaten werden die Textboxen mit Testdaten gefllt. Mit der Schaltflche
Berechnungsstart erfolgt dann die Auswertung.

Codeliste 7.4 Prozeduren im Formular


7.2 Optimale Losgre 139

Codeliste 7.5 Prozeduren im Modul modLosgre


140 7 Wirtschaftliche Berechnungen

Bild 7-6
Testdateneingabe

Beispiel 7.2 Optimale Losgre


In einem Produktionsbetrieb werden 1000 Bauteile pro Jahr produziert. Die Rstkosten
betragen 450 Euro/Auftrag. Die Herstellkosten betragen 22 Euro/Stck. Die Bankzinsen liegen
bei 12 % und die Lagerkosten liegen bei 15 %.

Bild 7-7
Testdaten-
auswertung

Diese Daten sind als Testdaten vorgegeben.


7.2 Optimale Losgre 141

Das Programm berechnet schrittweise die Kostenverhltnisse fr unterschiedliche Losgren.


Ein gelber Balken in der Tabelle (Bild 7-7) markiert die optimale Losgre.

bungsvorschlge
Ein hnliches Problem wie die Bestimmung der optimalen Losgre ist die Bestimmung der
optimalen Bestellmenge. Auch bei diesem Problem gibt es gegenlufige Kostenentwicklungen.
Zu den bestellfixen Kosten zhlen die Kosten, die bei der Angebotseinholung und prfung
anfallen. Um diese mglichst klein zu halten, wrden groe Bestellmengen sinnvoll sein.
Andererseits werden damit die schon beschriebenen Lagerhaltungs- und Bankzinsen hher.
Auch hier gilt es bestellfixe Kosten und Lagerhaltungskosten so zu whlen, dass diese ein
Minimum werden. Die so gewonnene Menge ist die optimale Bestellmenge. In der Literatur
finden Sie die Formeln und Algorithmen.

Kosten

Gesamtstckkosten
Lagerkosten
und Zinsen

bestellmengenfixe
Kosten Bild 7-8
Stckkosten in
Abhngigkeit von
Optimale Bestellmenge Stckzahl der Bestellmenge

Eine weitere, oft angewandte Berechnung, ist die Break-Even-Analyse. Diese Methode
ermittelt die Absatzmenge, bei der die Umsatzerlse die fixen und variablen Kosten decken.
Die Break-Even-Methode zeigt die Wirkung von Umsatz- und Kostennderungen auf den
Gewinn.

Kosten
und Erls
Gesamtkosten
Erlse

variable Kosten
Bild 7-9
Kosten und
Fixkosten
Erlse in
Abhngigkeit
von der
Break-Even-Point Stckzahl Bestellmenge
142 7 Wirtschaftliche Berechnungen

Es gibt den mengenmigen B-E-P:

Break Even Po int =


Fixkosten
, (7.8)
Deckungsbeitrag je Stck
und den wertmigen B-E-P:

Break Even Po int =


Fixkosten . (7.9)
Deckungsquote je Stck
Darin ist der Deckungsbeitrag je Stck der Verkaufspreis je Stck variable Kosten und die
Deckungsquote je Stck der Deckungsbeitrag je Stck / Verkaufspreis je Stck.
Ein weiteres Anwendungsbeispiel aus diesem Bereich ist die Nutzwertanalyse. Sie wurde in
den USA unter dem Begriff utility analysis entwickelt und seit den 70er Jahren auch in
Deutschland eingesetzt. Die Nutzwertanalyse priorisiert verschiedene Lsungen. Dies
geschieht durch deren Gewichtung im Hinblick zur Erreichung eines oder mehrerer Ziele.
Zunchst gilt es festzustellen, welche Kriterien fr eine Projektentscheidung wichtig und
mageblich sein sollen. In den meisten Fllen knnen schon im ersten Schritt k. o. -Kriterien
formuliert werden, die zwingend erfllt werden mssen. Lsungen, die diese Bedingung nicht
erfllen, scheiden sofort aus. Diese Muss-Kriterien knnen durch Soll-Kriterien ergnzt
werden, deren Erfllung erwnscht, aber nicht notwendig ist.
In einem zweiten Schritt mssen nun die einzelnen Soll-Ziele in eine Ordnung gebracht
werden. Mglich ist eine Systematisierung in Form von Oberzielen und dazugehrigen
Unterzielen. Den einzelnen Zielen werden Gewichtungsfaktoren zugeordnet. Ein
Beispielschema zeigt Bild 7-10.

Teilnutzen 1 Teilnutzen 2 Teilnutzen 3


X Ziel 1 X Ziel 2 X Ziel 3
Lsungen Nutzen
(Faktor 2) (Faktor 4) (Faktor 3)

A 3x2=6 2x4=8 4 x 3 = 12 26

B 3x2=6 3 x 4 = 12 2x3=6 24

Bild 7-10

C 2x2=4 2x4=8 1x3=3 15 Beispiel einer


Nutzwert-
analyse
143

8 Berechnungen aus der Strmungslehre

Die Strmungslehre ist ein Teil der Mechanik und wird auch Hydro- oder Fluidmechanik ge-
nannt. Ihre Aufgabe ist die Untersuchung von Flssigkeiten und Gasen auf Druck-, Geschwin-
digkeits- und Dichtenderungen, sowie auftretende Strmungskrfte und vorhandene Energie-
inhalte. Je nach Bewegungszustand und Fluid kann man sie unterteilen in ruhende und str-
mende Fluide. Grundlage der Strmungslehre bilden die Newtonschen Bewegungsgesetze
(Sir Isaac Newton, 1643-1727).

8.1 Rotation von Flssigkeiten


Ein offener Behlter, der teilweise mit einer Flssigkeit gefllt ist, rotiert mit konstanter Win-
kelgeschwindigkeit um eine vertikale Achse.

y3

dm dm x 2
y0

y2
Bild 8-1
x
Rotierender Zylinder mit
dm g Flssigkeit

Wir betrachten den Zustand, bei dem die Flssigkeit nach einer Weile dieselbe Winkelge-
schwindigkeit wie der Behlter erreicht hat. Eine Betrachtung der Krfteverhltnisse fr das
Massenteil dm liefert
dm x 2 x 2
tan = = . (8.1)
dm g g
Dieser Wert entspricht aber genau dem Differentialquotienten
dx x 2
tan = = (8.2)
dy g
an der Stelle x der Kurve. Eine Integration liefert
144 8 Berechnungen aus der Strmungslehre

2 2 x 2
y=
g x dx = g 2
+c. (8.3)

Die Integrationskonstante c bestimmt sich aus den Randbedingungen, fr x = 0 ist y = y2. Folg-
lich ist c = y2.
Damit ergibt sich
2 x 2
y= + y2 . (8.4)
g 2

Die Kurve, die diese Gleichung beschreibt, heit quadratischer Rotationsparaboloid. Es inte-
ressiert zunchst, welche Extremhhen y2 und y3 der Rotationsparaboloid annimmt, wenn die
Flssigkeit bei ruhendem Gef einen Spiegel bei y0 hat. Diese Extremwerte ergeben sich aus
der Volumenbetrachtung. Es gilt, dass das Volumen eines quadratischen Rotationsparaboloids
die Hlfte des ihn umfassenden Zylinders betrgt.
1 2
VP = r (y3 y 2 ) . (8.5)
2
Aus der Volumenkonstanz der Flssigkeit vor und bei der Rotation folgt
1 2
r 2 (y0 y2 ) = r (y3 y 2 ) (8.6)
2
y + y2
y0 = 3 . (8.7)
2
Fr y an der Stelle x = r folgt
2 r2
y (r ) = + y 2 = y3 (8.8)
g 2
und eingesetzt
y 1 2 r2
y0 = 2 + + y2 (8.9)

2 2 2 g

2 r2
y2 = y0 (8.10)
4 g
Folglich ist auch
2 r2
y3 = y0 + . (8.11)
4 g
Aus diesen Gleichungen ist leicht zu erkennen, dass der Flssigkeitsspiegel mit dem Ma
2 r2
(8.12)
4 g
um die Ausgangslage schwankt.
8.1 Rotation von Flssigkeiten 145

Aufgabe 8.1 Bestimmung der Lage des Flssigkeitsspiegels


Ein Programm soll die Extremwerte und den Funktionsverlauf des Flssigkeitsspiegels in
rotierenden Gefen bestimmen. Dazu ist eine schrittweise Berechnung des Rotationsparabo-
loids vorzunehmen. Die Werte sollen in ein Arbeitsblatt eingetragen und mit ihrer Hilfe soll
der Funktionsverlauf auch als Grafik mittels eines Diagramms dargestellt werden.

Tabelle 8-1 Struktogramm zur Berechnung des Rotationsparaboloiden

Eingabe von Gefradius r, Spiegelhhe im Ruhezustand y0


und Winkelgeschwindigkeit

2 x2
c = y0
4 g
Fr alle x von 0 bis r mit Schrittweite r/100
2 x2
y= +c
4 g
Ausgabe von y in die Tabelle

Wir bentigen lediglich ein Arbeitsblatt.

Codeliste 8.1 Prozeduren in der Tabelle tblRotation

Option Explicit
Sub Rotation_Formblatt()
Dim MyDoc As Object
Dim Shp As Shape
Set MyDoc = ThisWorkbook.Worksheets("Rotation")
MyDoc.Activate
MyDoc.Cells.Clear
'
'alle Charts lschen
For Each Shp In MyDoc.Shapes
Shp.Delete
Next
'Neue Beschriftung
Range("A1") = "Gefradius r [m]"
Range("A2") = "Spiegelhhe y0 [m]"
Range("A3") = "Winkelgeschwindigkeit w [1/s]"
Columns("A:E").EntireColumn.AutoFit
End Sub
Sub Rotation_Auswertung()
Dim x, y, r, y0, w, g, c As Double
Dim i As Integer
g = 9.81 'Erdbeschleunigung [m/s^2]
r = Cells(1, 2)
y0 = Cells(2, 2)
w = Cells(3, 2)
c = y0 - (w * w * r * r / (4 * g))
i = 0
For x = 0 To r Step r / 100
y = w * w * x * x / (2 * g) + c
i = i + 1
146 8 Berechnungen aus der Strmungslehre

Cells(i, 3) = y
Next x
End Sub
Sub Rotation_zeigen()
Charts.Add
ActiveChart.ChartType = xlLine
ActiveChart.SetSourceData Source:=Sheets("Rotation").Range("C1:C100"), _
PlotBy:=xlColumns
ActiveChart.SeriesCollection(1).Name = "=""Flssigkeitsspiegel"""
ActiveChart.Location Where:=xlLocationAsObject, Name:="Rotation"
With ActiveChart
.HasTitle = True
.ChartTitle.Characters.Text = "Rotationsparaboloid"
.Axes(xlCategory, xlPrimary).HasTitle = True
.Axes(xlCategory, xlPrimary).AxisTitle.Characters.Text = "x"
.Axes(xlValue, xlPrimary).HasTitle = True
.Axes(xlValue, xlPrimary).AxisTitle.Characters.Text = "y"
End With
ActiveWindow.Visible = False
End Sub

Beispiel 8.1 Rotierender Wasserbehlter


Ein offener zylindrischer Behlter mit einem Durchmesser von 1 m und einer Hhe von 6 m
enthlt Wasser von 3 m Hhe. Welche Verhltnisse stellen sich ein, wenn der Behlter mit
einer Winkelgeschwindigkeit von 18 s-1 rotiert.
Die Auswertung in Bild 8-2 zeigt in der Grafik den Flssigkeitsspiegel. Die untere Spiegel-
grenze liegt bei 0,936 m und die obere bei knapp 5 m.

Bild 8-2

Auswertung
der Rotation
8.2 Laminare Strmung in zylindrischen Rohren 147

bungsvorschlge
Wie verhlt sich das System bei einem geschlossenen Behlter oder wie verhalten sich Fls-
sigkeiten bei Translation. Leiten Sie die entsprechenden Formeln ab und entwickeln Sie dazu
eine Anwendung.

8.2 Laminare Strmung in zylindrischen Rohren


Strmungen treten in vielen Zustnden auf. Man unterscheidet stationre oder instationre,
gleichfrmige oder ungleichfrmige und laminare oder turbulente Strmung. Eine Strmung
kann ein-, zwei- oder dreidimensional sein. Sie kann Wirbel besitzen oder wirbelfrei sein.
Solange die Flssigkeitsteilchen einer Rohrstrmung ihren Abstand zur Rohrachse beibehal-
ten, spricht man von laminarer Rohrstrmung. Dieses Strmungsverhalten erlaubt es, ein zy-
lindrisches Flssigkeitselement an beliebiger Stelle zu betrachten (Bild 8-3).
Die Gleichgewichtsbetrachtung liefert
p1 A + p 2 A + m g sin = 0 . (8.13)
Durch Einsatz der Dichte und der Geometrie folgt
p1 r 2 + p 2 r 2 + r 2 l g sin = 0 . (8.14)
Da zwischen p1 und p2 eine Differenz p besteht, folgt nach Umstellung
r 2 ( p + l g sin ) = 0 . (8.15)

r
A
m g sin
p1
p2
Bild 8-3

Krfteverhltnisse bei einer
m g laminaren Rohrstrmung

Durch die unterschiedlichen Geschwindigkeiten der Strmungsschichten treten innere Reibun-


gen und damit Schubkrfte von der Gre
FS dv(r )
= (8.16)
ARohr dr
auf. Der Proportionalittsfaktor wird als dynamische Zhigkeit der Flssigkeit bezeichnet.
Mit der Gleichsetzung ergibt sich die Differentialgleichung
148 8 Berechnungen aus der Strmungslehre

dv(r )
r 2 p + l g sin = 2 r l . (8.17)
dr
Eine Umformung erbringt
p + l g sin
dv(r ) = r dr . (8.18)
2l
Die Integration liefert
p + l g sin r 2
v(r ) = +c . (8.19)
2l 2
Aus den Randbedingungen v(r0)=0 folgt
p + l g sin r02
c= . (8.20)
2l 2
Mithin ist

v(r ) =
4l
(
p + l g sin 2
r0 r 2 . ) (8.21)

Der durch die Ringflche strmende Volumenstrom ergibt sich aus der Differentialgleichung
dQ = 2 r dr v(r ) . (8.22)
Mit der Integration
r0
Q = 2 r dr
p + l g sin 2
4l
(
r0 r 2 ) (8.23)
0
erhalten wir
( p + l g sin ) 4
Q= r0 . (8.24)
8l

dQ
r
dr v(r)
Bild 8-4

Volumenstrom im Ringelement
8.2 Laminare Strmung in zylindrischen Rohren 149

Dieses Gesetz nach Hagen-Poiseuille wird auch als Ohmsches Gesetz der laminaren Rohr-
strmung bezeichnet. Die mittlere Strmungsgeschwindigkeit ist demnach
Q p + l g sin
vm = = r02 . (8.25)
A 8l

Aufgabe 8.2 Ermittlung des Geschwindigkeitsverlaufs und des Volumenstroms in


einem geneigten Rohr mit laminarer Strmung
Ein Programm soll ber den Radius schrittweise die rtliche Geschwindigkeit ermitteln und
daraus die mittlere Geschwindigkeit bestimmen, aus der sich dann der Volumenstrom ergibt.

Tabelle 8-2 Struktogramm zur Berechnung des Strmungsverlaufs einer laminaren Rohrstrmung

Eingabe aller erforderlichen Daten



sin =
180
Fr alle r von 0 bis r0 mit Schrittweite r0/100

v(r ) =
4l
(
p + l g sin 2
r0 r 2 )
Ausgabe von r und v(r) in die Tabelle
Q p + l g sin
vm = = r02
A 8l

Q = vm r 2
Ausgabe vm und Q

Auch der Projekt-Explorer weist nur das Arbeitsblatt aus.

Codeliste 8.2 Prozeduren in der Tabelle tblStrmung

Option Explicit

Sub Strmung_Formblatt()
Dim MyDoc As Object
Dim Shp As Shape
Set MyDoc = ThisWorkbook.Worksheets("Strmung")
MyDoc.Activate
MyDoc.Cells.Clear
'
'alle Charts lschen
For Each Shp In MyDoc.Shapes
Shp.Delete
Next
'Neue Beschriftung
Range("A1") = "Rohrlnge l [m]"
Range("A2") = "Rohrinnenradius r0 [m]"
Range("A3") = "Druckdifferenz p [N/cm" + Chrw(178) + "]"
150 8 Berechnungen aus der Strmungslehre

Range("A4") = "Flssigkeitsdichte [kg/dm" + Chrw(179) + "]"


Range("A5") = "Dynamische Zhigkeit [Ns/m" + Chrw(178) + "]"
Range("A6") = "Neigungswinkel [Grad]"
Range("A8") = "Mittl.Strmungsgeschw. vm [m/s]"
Range("A9") = "Volumenstrom Q [m" + Chrw(179) + "/s]"
Columns("A:E").EntireColumn.AutoFit
End Sub
Sub Strmung_Auswertung()
Dim r, r0, l, p, d, u, a, sa, g, v, vm, Q As Double
Dim i As Integer

l = Cells(1, 2)
r0 = Cells(2, 2)
p = Cells(3, 2)
d = Cells(4, 2)
u = Cells(5, 2)
a = Cells(6, 2)
sa = Sin(a * 3.1415926 / 180)
For r = 0 To r0 Step r0 / 100
v = (p * 10000 + l * d * 1000 * g * sa) / _
(4 * l * u) * (r0 * r0 - r * r)
i = i + 1
Cells(i, 3) = r
Cells(i, 4) = v
Next r
vm = r0 * r0 * (p * 10000 + l * d * 1000 * g * sa) / (8 * l * u)
Q = vm * r0 * r0 * 3.1415926
Cells(8, 2) = vm
Cells(9, 2) = Q
End Sub
Sub Strmung_zeigen()
Columns("D:D").Select
Charts.Add
ActiveChart.ChartType = xlLine
ActiveChart.SetSourceData Source:=Sheets("Strmung").Range("D1:D100"), _
PlotBy:=xlColumns
' ActiveChart.SeriesCollection(1).Name = "=""Strmungsgeschwindigkeit"""
ActiveChart.Location Where:=xlLocationAsObject, Name:="Strmung"
With ActiveChart
.HasTitle = True
.ChartTitle.Characters.Text = "Strmungsgeschwindigkeit"
.Axes(xlCategory, xlPrimary).HasTitle = True
.Axes(xlCategory, xlPrimary).AxisTitle.Characters.Text = "r [m]"
.Axes(xlValue, xlPrimary).HasTitle = True
.Axes(xlValue, xlPrimary).AxisTitle.Characters.Text = "v [m/s]"
End With
ActiveChart.HasDataTable = False
ActiveChart.Legend.Select
Selection.Delete
End Sub

Beispiel 8.2 Laminare Rohrstrmung


In einem 5 m langen Rohr mit einem Innendurchmesser von 200 mm, das unter 20 Grad ge-
neigt ist, fliet ein Medium mit einer Dichte von =0,75 kg/dm3, bei einer Druckdifferenz von
0,5 N/cm2. Die dynamische Zhigkeit des Mediums betrgt 0,2 Ns/m2.
Das Ergebnis des Beispiels finden Sie in Bild 8-5.
8.2 Laminare Strmung in zylindrischen Rohren 151

Bild 8-5

Auswertung der
laminaren Rohr-
strmung

bungsvorschlge
Ergnzen Sie die Berechnung um Strmungsverluste im glatten Rohr. Strmungsverluste ent-
stehen auch bei Querschnitts- und Richtungsnderungen. Querschnittsnderungen knnen
sprungartig oder stetig erfolgen. Fr all diese Flle gibt es Gleichungen. Ebenso ber Str-
mungsverluste beim Ausfluss ins Freie durch untere oder seitliche ffnungen in Behltern.
Von laminarer Spaltstrmung spricht man, wenn sich die Flssigkeit zwischen ebenen ruhen-
den Platten bewegt. Dabei ist die Geschwindigkeit konstant. Zur berwindung der Reibung
muss ein Druckgeflle existieren.
Eine weitere Anwendung wre die Berechnung von Druck- und Geschwindigkeitsverlauf bei
einer Rohrstrmung von gasfrmigen Flssigkeiten. Bei dieser Strmung liegt eine expandie-
rende Strmung vor, da in Folge der meist hohen Strmungsgeschwindigkeiten, grere
Druckverluste auftreten.

v
Bild 8-6

Druck und Geschwin-


digkeitsverlauf bei Rohr-
strmungen von gasfr-
L migen Flssigkeiten
152

9 Berechnungen aus der Thermodynamik

Die Thermodynamik befasst sich mit Wrmeprozessen, insbesondere der Umwandlung von
Wrme in eine andere Energieform (oder umgekehrt). Die klassische Thermodynamik
untersucht Gleichgewichtszustnde, im Allgemeinen abgeschlossener Systeme, sowie die
Zustandsnderungen beim bergang von einem Gleichgewichtszustand in einen anderen, die
mit einer Zu- beziehungsweise Abfuhr von Wrme oder mechanischer Energie (Arbeit) sowie
Temperaturnderungen verbunden sind. Der Zustand eines thermodynamischen Systems im
Gleichgewicht wird durch einen Satz thermodynamischer Zustandsgren (Temperatur, Druck,
Volumen, Energie, Entropie, Enthalpie u. a.) festgelegt, die durch Zustandsgleichungen
miteinander verknpft sind.

9.1 Nichtstationre Wrmestrmung durch eine Wand


Das Kriterium einer nichtstationren Wrmestrmung ist die rtliche Temperaturvernderung
ber die Zeit gesehen. Betrachtet werden feste Stoffe in der Form grerer Scheiben (Wnde),
so dass der Temperaturverlauf ber der Flche als konstant vorausgesetzt werden kann. Es soll
uns hier nur der Temperaturverlauf durch die Wand und ihre zeitliche Vernderung
interessieren.

x dx

dT Bild 9-1
Wandelement

Nach der obigen Darstellung folgt fr ein infinitesimales Wandelement dx mit der
Wrmeleitzahl des Wandmaterials und der Wandflche A, dass an der Stelle x der
Wrmestrom
dT
Q x = A (9.1)
dx
austritt, whrend an der Stelle x + dx der Wrmestrom
dT d 2 T
Q x + dx = A + dx (9.2)
dx dx 2

von der Wand aufgenommen wird. Die so entstehende Wrmedifferenz
d 2T
dQ x = A dx (9.3)
dx 2
9.1 Nichtstationre Wrmestrmung durch eine Wand 153

erhht die Temperatur des Wandelements. Diese Wrmedifferenz kann auch durchaus negativ
sein und damit eine Temperaturabnahme bedeuten. Die Wrmeaufnahme in der Zeit dt ist nach
den Gesetzen der Thermodynamik
dT
dQ = c A dx . (9.4)
dx
In dieser Gleichung ist c die spezifische Wrme und die Dichte der Wand. Durch
Gleichsetzung folgt
dT d 2T
= dx (9.5)
dt c dx 2
Die Stoffkonstante in dieser Gleichung wird allgemein als Temperaturleitzahl bezeichnet

= . (9.6)
c
Mittels Euler-Cauchy wird auch hier wieder der Differentialquotient durch den
Differenzenquotienten ersetzt
tT 2 T
= x . (9.7)
t x 2
Mit der gewhlten Schrittweite x und der gewhlten Zeitdifferenz t herrscht an der Stelle
ix zu der Zeit kt die Temperatur
T (i x, k t ) = Ti,k . (9.8)
Diese verkrzte Schreibweise werden wir weiter benutzen und durch Einsetzen der Differenzen
t T = Ti,k +1 Ti,k (9.9)

xT = Ti +1,k Ti,k (9.10)

2x T = Ti +1,k + Ti 1,k 2 Ti,k (9.11)


ergibt sich die Rekursionsformel
t
Ti ,k +1 Ti,k = (Ti +1,k + Ti 1,k 2 Ti,k ) . (9.12)
x 2
Damit ist bei gegebener Temperaturverteilung Ti,k in der Wand die Verteilung Ti,k+1
angenhert berechenbar. Whlt man in dieser Gleichung
t 1
= , (9.13)
2 2
x
so folgt aus der Gleichung (9.12)
1
Ti,k +1 =
2
(
Ti +1,k + Ti 1,k . ) (9.14)
154 9 Berechnungen aus der Thermodynamik

Also dem arithmetischen Mittel zum Zeitpunkt k t. Mit Ti als Innentemperatur des Fluids mit
dem Wrmekoeffizienten i und der Temperatur T0 der Oberflche (bei x=0) gilt

(T0 Ti ) = T . (9.15)
x

T
Ti

T0

Bild 9-2

x Wrmebergang

Gem dem Differenzenverfahren denkt man sich die Wand in viele Scheiben der Dicke x
zerlegt, in deren Mitte jeweils die Temperaturen T1,k, T2,k, , herrschen. Zur Erfllung der
Randbedingungen ergnzt man die Wandscheiben um eine Hilfsscheibe mit der Temperatur T-
1. Zwischen -1 und 1 wird Wrme nur durch Wrmeleitung bertragen. Damit gilt die
Gleichung nach (9.14)
1
T0 = (T1 + T1 ) . (9.16)
2

1 1 2 3
Ti
T1
T0
T1
T3 T2

Bild 9-3

x x x x Schichtmodell

Die Hilfstemperatur T-1 ergibt sich aus der Energiebilanz



(T0 Ti ) = (T1 T0 ) (9.17)
x
2
9.1 Nichtstationre Wrmestrmung durch eine Wand 155

und durch Gleichsetzung


1 2
T1 = T1 + Ti (9.18)
1+ 1+
mit
2
= . (9.19)
x

Aufgabe 9.1 Berechnung einer stationren Wrmestrmung durch eine Wand


Das Programm soll den Temperaturverlauf in einer Wand nach endlichen Zeitintervallen
bestimmen und grafisch ausgeben.

Tabelle 9-1 Struktogramm zur Berechnung einer nichtstationren Wrmestrmung

Eingabe von Wandstrke x, Unterteilung n, Wrmeleitfhigkeit ,


Spez. Wrmekapazitt c, Dichte , Wrmebergangszahlen Innen
und Auen
x
x =
n


=
c

x 2
t =
2
Aufbau des Eingabeformulars Starttemperaturen
Manuelle Eingabe der Daten
Einlesen der Startwerte
Hilfsgren
2
i =
i x
2
a =
a x
Berechnung der Hilfstemperaturen T-1 und Tn+2
i 1 2
T1 = T1 + Ti
1+ i 1+ i
a 1 2
Tn + 2 = Tn +1 + Ta
1+ a 1+ a

Berechnung der Wandtemperaturen T0i und T0a


156 9 Berechnungen aus der Thermodynamik

1
T0i = (T1 + T1 )
2
1
T0 a = (Tn+1 + Tn+ 2 )
2
Fr eine vorgegebene Anzahl Schritte mit t
t = t + t
Berechnung der Hilfstemperaturen T-1 und Tn+2
i 1 2
T1 = T1 + Ti
1+ i 1+ i
a 1 2
Tn + 2 = Tn +1 + Ta
1+ a 1+ a

Fr alle i=2 bis n+1


1
Ti ,neu =
2
(
Ti +1,alt + Ti 1,alt )
bernahme der neuen Daten als alte Daten
Berechnung der Wandtemperaturen T0i und T0a
1
T0i = (T1 + T1 )
2
1
T0 a = (Tn+1 + Tn+ 2 )
2
Ausgabe der Temperaturen

Codeliste 9.1 Prozeduren in der Tabelle tblWandtemperatur


9.1 Nichtstationre Wrmestrmung durch eine Wand 157
158 9 Berechnungen aus der Thermodynamik
9.1 Nichtstationre Wrmestrmung durch eine Wand 159

Fr die Berechnung wird ein Tabellenblatt tblWandtemperatur angelegt.

Beispiel 9.1 Berechnung einer stationren Wrmestrmung durch eine Wand


Ein groer Behlter hat 1 m Wandstrke. Sein Material hat eine Wrmeleitfhigkeit = 1,2
W/(m grd). Die spezifische Wrmekapazitt betrgt c = 1 kJ/(kg grd) und die Dichte = 2000
kg/dm. Whrend der Behlter gleichfrmig 40 Grad Celsius hat, wird ein Fluid von 80 Grad
Celsius eingefllt. Danach kommt der Behlter in eine Umgebungstemperatur von 20 Grad
Celsius. Welcher Temperaturverlauf stellt sich mit der Zeit ein? Die Wrmebergangszahlen
sind fr innen = 8 W/(m grd) und auen = 5 W/(m grd).
Nachfolgend ist in Bild 9-4 die Auswertung zu sehen.

bungsvorschlge
Oft ist nach den Wrmemengen gefragt, die durch Wnde bertragen werden. Erstellen Sie auf
einem Arbeitsblatt eine solche Berechnung und bercksichtigen Sie dabei auch Wnde, die aus
mehreren Schichten unterschiedlichen Materials bestehen.
Strmt Wrme nicht nur in einer Richtung, so ergibt sich aus Gleichung 9.3 unter
Bercksichtigung aller drei Koordinatenanteile die Differentialgleichung
160 9 Berechnungen aus der Thermodynamik

T 2T 2T 2T
= a + + . (9.20)
t x 2 y 2 z

Sonderflle dieser Gleichung sind der Wrmefluss in einem Zylinder mit dem Radius r, bei
dem die z-Richtung vernachlssigt werden kann
T 2 T 1 T
= a + (9.21)
t r 2 r r

Und der Wrmefluss in einer Kugel mit dem Radius r
T 2 T 2 T
= a + (9.22)
t r 2 r r

Bild 9-4 Auswertung des Testbeispiels

9.2 Der Carnotsche Kreisprozess fr ideale Gase


Bevor wir uns mit einem Kreisprozess beschftigen knnen, mssen wir einige grundlegende
Begriffe und Zustandsnderungen einfhren.

9.2.1 Allgemeine Zustandsgleichungen fr Gase und Gasgemische


Die meisten technischen Vorgnge beruhen auf Zustandsnderungen von Gasen,
Gasgemischen und Dmpfen, nachfolgend vereinfacht als Gase bezeichnet. Diese werden im
jeweiligen Zustand durch die Gren absolute Temperatur T, spezifisches Volumen v, und
Druck p bestimmt. Fr eine nderung von Zustand 1 nach Zustand 2 gilt die allgemeine
Zustandsgleichung fr Gase
9.2 Der Carnotsche Kreisprozess fr ideale Gase 161

p1 v1 p 2 v 2
= = R. (9.23)
T1 T2
Darin ist R die allgemeine Gaskonstante, die natrlich fr Gase und Gasgemische
unterschiedlich ist. Das spezifische Volumen v ist definiert als Quotient von Volumen zur
Masse des Gases
V
v= (9.24)
m
Wird einem Gas Wrme zu- oder abgefhrt, so steigt oder sinkt dessen Temperatur. Die
Wrmemenge zur Erhhung der Temperatur von t1 auf t2 fr ein Gas von der Masse m
berechnet sich aus
Q = m c(t 2 t1 ) . (9.25)
Darin ist c die spezifische Wrmekapazitt des Gases. Diese physikalische Eigenschaft eines
Stoffes gibt an, wie viel Wrmeenergie notwendig ist, um 1 kg eines Stoffes um 1 K zu
erhhen. Insbesondere bei Gasen hngt die Wrmekapazitt auch von ueren Bedingungen
ab. So unterscheidet man die Wrmekapazitt bei konstantem Druck cp und die bei konstantem
Volumen cv. In erster Nherung gilt
c p = cv R . (9.26)

Der Quotient
cp
= (9.27)
cv
wird als Adiabatenexponent bezeichnet. Auerdem verndert sich der Wert c mit der
Temperatur t. Zur vereinfachten Berechnung benutzt man daher eine mittlere spez.
Wrmekapazitt cm.
Technische Maschinen sind dadurch gekennzeichnet, dass sie periodisch arbeitende
Volumenrume erzeugen. Verschiebt sich z. B. ein Kolben in einem Zylinder, so ndern sich
allgemein p, v und T gleichzeitig. Die dabei notwendige Arbeit wird als Raumnderungsarbeit
bezeichnet und ist definiert
V2
W= p dV (9.28)
V1
162 9 Berechnungen aus der Thermodynamik

2
p2

1
p1
W Bild 9-5

v2 v1 Raumnderungsarbeit

Die durch ein periodisches Arbeitsspiel gewonnene Energie bezeichnet man als technische
Arbeit und sie definiert sich aus
2


Wt = V dp (9.29)
1

1
p1

W 2
p2

Bild 9-6

v1 v2 Technische Arbeit

9.2.1 Isochore Zustandsnderung


Wir betrachten eine Zustandsnderung bei gleich bleibendem Raum. Da das Volumen konstant
bleibt und mithin v1 = v2 ist, gilt hier
p1 T1
= (9.30)
p 2 T2
Folglich steigt der Druck bei Temperaturerhhung und umgekehrt.
9.2 Der Carnotsche Kreisprozess fr ideale Gase 163

2
p2

W
1
p1

Bild 9-7
v Isochore Zustandsnderung

Die Raumnderungsarbeit ist, da dv = 0


2
W= p dv = 0 . (9.31)
1
Die technische Arbeit ist
2


Wt = v dp = v( p1 p 2 ) . (9.32)
1
Die Wrmemenge zur Temperaturerhhung von T1 auf T2 berechnet sich ber die spezifische
Wrmekapazitt c des Gases aus
Q = c vm (t 2 t1 ) . (9.33)

9.2.2 Isobare Zustandsnderung


Wir betrachten eine Zustandsnderung bei gleich bleibendem Druck. Folglich gilt
v1 T1
= (9.34)
v 2 T2
Folglich wird das Volumen bei Erwrmung grer und umgekehrt.

1 2
p

W
Bild 9-8

v1 v2 Isobare Zustandsnderung
164 9 Berechnungen aus der Thermodynamik

Die Raumnderungsarbeit betrgt bei einer Erwrmung von T1 auf T2


W = p(v 2 v1) . (9.35)
Hingegen ist die technische Arbeit mit dp = 0
Wt = v dp = 0 . (9.36)

Die Wrmemenge zur Temperaturerhhung von T1 auf T2 berechnet sich ber die spezifische
Wrmekapazitt cpm des Gases aus
Q = c pm (t 2 t1) (9.37)

9.2.3 Isotherme Zustandsnderung


Wir betrachten eine Zustandnderung bei gleich bleibender Temperatur. Folglich gilt
p1 v1 = p 2 v 2 = p v = kons tan t (9.38)
Bei gleich bleibender Temperatur verhalten sich die Volumen umgekehrt zu den Drcken. Die
Raumnderungsarbeit ergibt sich durch Einsetzen von Gleichung (9.33) in Gleichung (9.23) zu
2
dv v p
W = p1 v1 = p1 V1 ln 2 = p1 V1 ln 1 . (9.39)
v v1 p2
1

1
p1

p v = konst .

2
p2

W
Bild 9-9

v1 v2 Isotherme Zustandsnderung

Fr die Wrmemenge folgt, da T1=T2 ist


Q =W . (9.40)
Bei isothermer Zustandsnderung entspricht die Raumnderungsarbeit der Wrmemenge.
9.2 Der Carnotsche Kreisprozess fr ideale Gase 165

9.2.4 Adiabatische Zustandsnderung


Wir betrachten eine Zustandsnderung ohne Wrmezufuhr und Wrmeentzug. Folglich
entstammt die gesamte zu verrichtende Raumnderungsarbeit der inneren Energie des Gases.

1
p1

p v = konst .

2
p2

W
Bild 9-10

v1 v2 Adiabatische Zustandsnderung

Die Adiabate verluft steiler als die Isotherme und hier gilt die Gesetzmigkeit
p1 v1 = p 2 v 2 . (9.41)
Darin ist das Verhltnis der spezifischen Wrmekapazitten
cp
= . (9.42)
cv
Nach der allgemeinen Zustandsgleichung (9.20) gilt auerdem
1
v 2 T1 1
= (9.43)
v1 T2

und

p1 T1 1
= . (9.44)
p 2 T2

Die Raumnderungsarbeit erfolgt ausschlielich zu Lasten der inneren Energie und ist
1
W= ( p1 V1 p 2 V2 ) . (9.45)
1
166 9 Berechnungen aus der Thermodynamik

9.2.5 Der Carnotsche Kreisprozess

T1 1
p1 Q1
Is.
2
p2
Ad. W Ad.
p4
4
3
p3 T3 Bild 9-11
Q2 Is. Der Carnotsche
Kreisprozess fr
v1 v4 v2 v3 Gase

Der von Carnot als idealer fr die gnstigste Wrmeausnutzung bezeichnete Kreisprozess,
besteht aus zwei Isothermen und zwei Adiabaten (Bild 9-11). Die Wrmezufuhr erfolgt bei der
isothermen Zustandsnderung von 1 nach 2 und die Wrmeabgabe bei der isothermen
Zustandsnderung von 3 nach 4.

Aufgabe 9.2 Berechnung von Kreisprozessen


Mit Hilfe verschiedener Zustandsnderungen, die hintereinander ausgefhrt werden, soll eine
Energiebilanz aufgestellt werden.

Tabelle 9.2 Struktogramm zur Berechnung eines Kreisprozesses

Eingabe von Masse m, Gaskonstante R, Adiabatenexponent und Schrittanzahl


Eingabe der Zustandsdaten (hintereinander so weit bekannt)
Nr., Art der Zustandsnderung (Is, Ad,), p, v, T
W=0, Wt=0, Q=0 Initialisierung der Energien
Fr alle Zustandsnderungen
R T1
v1 =
p1

Nach Art der Zustandsnderung


Isotherme
T2 = T1
9.2 Der Carnotsche Kreisprozess fr ideale Gase 167

p
Q = R T1 ln 1
p2

p2 p1
p =
2
p x = p1 ; v x = v1

p = p1 + p bis p2 um p

p v
v= 1 1
p

p + px
W = (v v x )
2
v + vx
Wt = ( p p x )
2
Q =W

Ausgabe p, v, W, Wt, Q
Adiabate
p2 p1
p =
2
p x = p1 ; v x = v1

p = p1 + p bis p2 um p

1
p v
v =
1 1
p

p + px
W = (v v x )
2
v + vx
Wt = ( p p x )
2
Ausgabe p, v, W, Wt, Q
Ausgabe Gesamt W, Wt, Q

Codeliste 9.1 Prozeduren in der Tabelle tblKreisprozesse finden Sie auf meiner Website.
168 9 Berechnungen aus der Thermodynamik

Beispiel 9.2 Berechnung eines Carnotschen Kreisprozesses


Mit der Luftmenge von 1 kg wird ein Carnotscher Kreisprozess (Bild 9-11) durchgefhrt. Im
Zustand 1 ist ein Druck von 20 Pa gegeben, der im Zustand 1 auf 10 Pa sinkt. Im Zustand 3
betrgt er noch 2 Pa und im Zustand 4 wieder 4 Pa. Die Anfangstemperatur ist 1000 K. Die
Gaskonstante fr Luft ist 29,27 J/kg K. Der Adiabatenexponent betrgt 1,4. In jeweils 10
Schritten sind die Zustandsnderungen zu protokollieren.
Im Bild 9-12 sehen Sie das Formblatt fr die Eingabe der Startwerte. Die Daten der Zustnde
werden hintereinander angegeben. Die Zustandsnderung (Is fr Isotherme, Ad fr Adiabate)
wird im Programm abgefragt. Die noch fehlenden Werte der Zustnde werden in der
Auswertung berechnet.

Bild 9-12
Formular zur
Dateneingabe

Die gesamte Auswertung zeigt das nachfolgende Bild.

Bild 9-13 Auswertung des Beispiels Carnotscher Kreisprozesses


9.2 Der Carnotsche Kreisprozess fr ideale Gase 169

bungsvorschlge
Ergnzen Sie das Programm um die isochore und die isobare Zustandsnderung. Betrachten
Sie einen Kreisprozess (unabhngig von der technischen Realisierung), der z. B. aus einer
Isothermen, einer Isobaren und einer Adiabaten besteht.
In Kraft- und Arbeitsmaschinen wird man kaum isotherme noch adiabatische
Zustandsnderungen erzeugen knnen. Diese Prozesse liegen meist zwischen diesen idealen
Zustandsnderungen und folgen daher dem Gesetz
p v n = konst. , (9.46)
mit n einem beliebigen Zahlenwert. Diese Art der Zustandnderung bezeichnet man als
polytrope Zustandsnderung. Nehmen Sie die Polytrope mit in die Berechnung auf.
So wie sich im p-v-Diagramm die Energiebilanz anschaulich darstellen lsst, gibt es fr die
Wrmebilanz auch eine Darstellung, das T-s-Diagramm. Betrachten Sie die Definition der
Entropie und leiten Sie die Formeln fr ein T-s-Diagramm her. Schreiben Sie anschlieend ein
Programm, mit dem sich der Carnotsche Kreisprozess im T-s-Diagramm darstellen lsst.

p T1 1

Ad. Is. Q

W
2
3
Ib.
Bild 9-14
v Kreisprozess mit drei Zustnden

Betrachten wir nun den Stirling-Prozess. Dabei handelt es sich um einen Kreisprozess mit zwei
Isochoren und zwei Isothermen. Die Wrmebertragung erfolgt bei konstantem Volumen.

p 3 Q

Ic. It . 4

2 Ic.
W
It. 1

Q
Bild 9-15
v Der Stirling-Prozess

berprfen Sie die Behauptung, dass der Wirkungsgrad des Stirling-Prozesses gleich dem des
Carnotschen Prozesses ist.
170

10 Berechnungen aus der Elektrotechnik

In der Elektrotechnik wird die technische Anwendung der Elektrizitt umgesetzt. So befasst
sich die Elektrotechnik, unter anderem, mit der Energieerzeugung (Energietechnik) und der
elektromagnetischen Informationsbertragung (Nachrichtentechnik). Die Elektrotechnik
entwickelt Bauteile und Schaltungen, welche in der Steuer-, Regel-, und Messtechnik, sowie in
der Computertechnik ihre Anwendungen finden. Eine besondere Wechselbeziehung besteht zur
Informatik. Zum einen liefert die Elektrotechnik die fr die angewandte Informatik
notwendigen technischen Grundlagen elektronischer Computersysteme, andererseits
ermglichen die Verfahren der Informatik erst die Funktionalitt derart komplexer Systeme.
Wir wollen uns in diesem Kapitel mit elementaren Themen befassen.

10.1 Spannungen und Strme in Gleichstromleitungen


In elektrischen Leitungen, die bezglich Material und Leitungsquerschnitt konstant sind,
bestimmt sich der Widerstand aus der Gleichung
l
R= (10.1)
A
Darin ist der spezifische Widerstand des Leitmaterials in mm2/m, l die Lnge des Leiters
in m und A der Kreisquerschnitt in mm2.

I IR
+ +
R

P1 P2
U1
U2

Bild 10-1

I
R

IR
Ersatzschaltbild einer
Gleichstromleitung

Sind U1 und U2 die Spannungen am Anfang bzw. am Ende der Leitung und fliet dabei der
Strom I, so tritt an den Widerstnden der Hin- und Rckleitung ein Spannungsverlust auf von
der Gre IR. Nach der Maschenregel lautet die Spannungsgleichung der Leitung
U1 = U 2 + 2 I R . (10.2)
Die Spannung am Ende der Leitung ist um den Spannungsverlust geringer als am Anfang der
Leitung
UV = U1 U 2 = 2 I R . (10.3)
10.1 Spannungen und Strme in Gleichstromleitungen 171

Aus der Spannungsgleichung ergibt sich durch Multiplikation mit dem Strom I die
Leistungsgleichung der Gleichstromleitung
U1 I = U 2 I + 2 I 2 R (10.4)
bzw.
P1 = P2 + PV (10.5)

Aufgabe 10.1 Bestimmung von Spannungs- und Leistungsverlusten


Ein Programm soll unter Vorgabe der Daten einer Gleichstromleitung die Spannungs- und
Leistungsverluste schrittweise ber eine minimale bis maximale Leitungslnge berechnen.

Tabelle 10-1 Struktogramm zur Berechnung von Spannungs- und Leistungsverlusten

Eingabe der minimalen und maximalen Leitungslnge, des


Leitungsdurchmessers, des spezifischen Widerstands, der Spannung und der
Stromstrke

A = D2
4
Fr alle Lngen von Lmin bis Lmax mit (Lmax-Lmin)/2
L
R=
A
Uv = 2 I R

Pv = 2 I 2 R

Pv
Pp =
U I
Ausgabe von L, R, Uv, Pv, Pp

Codeliste 10.1 Prozeduren in tblGleichstrom


172 10 Berechnungen aus der Elektrotechnik
10.1 Spannungen und Strme in Gleichstromleitungen 173

Wir bentigen ein Arbeitsblatt, das die Bezeichnung tblGleichstrom erhlt.

Beispiel 10.1 Spannungs- und Leistungsverluste einer Gleichstromleitung


Durch eine Gleichstromleitung von 6 mm Durchmesser, mit einem spez. Widerstand von 0,02
Ohm mm2/m, fliet ein Strom von 8 A unter einer Spannung von 1000 V. Wie gro sind die
Spannungs- und Leistungsverluste fr eine Lnge von 100 bis 600 m?
Die Auswertung in Bild 10-2 zeigt lineare Verlufe von Spannungs- und Leistungsverlust.

bungsvorschlge
Das Programm liee sich dahingehend erweitern, dass die Temperaturnderung der Leitung
unter Last bei der Bestimmung des Widerstandswertes bercksichtigt wird. Denn die
Leistungsverluste setzen sich direkt in Wrme um. Andererseits gibt die Oberflche des Leiters
Wrme an das sie umgebende Medium ab, so dass sich ein Gleichgewicht einstellt.
174 10 Berechnungen aus der Elektrotechnik

Bild 10-2
Auswertung
Testdaten

10.2 Rechnen mit komplexen Zahlen


Die komplexen Zahlen sind definiert als

{
C = z = a + bi, a, b R, i = 1 } (10.6)

Sie bestehen aus einem Realteil a und einem Imaginrteil b. a und b (a, bR) sind reelle
Zahlen. Komplexe Zahlen mit dem Imaginrteil b = 0, sind reelle Zahlen. Komplexe Zahlen
lassen sich nicht auf dem Zahlenstrahl darstellen, da es keinen Punkt 1 gibt. Durch
Einfhrung einer imaginren Zahlengeraden zusammen mit einer reellen Zahlengeraden ist
eine grafische Darstellung mglich. Die von der reellen und imaginren Zahlengeraden
aufgespannte Ebene wird als Gausche Zahlenebene bezeichnet.

Im(z)
bi z=a+bi

Re(z)
a

Bild 10-3
- bi z=a-bi Gausche Zahlenebene
10.2 Rechnen mit komplexen Zahlen 175

Fr das Rechnen mit komplexen Zahlen gibt es einfache Regeln. Die Addition lautet
z1 + z 2 = a1 + b1i + a 2 + b2 i = a1 + a 2 + i (b1 + b2 ) . (10.7)
Wie bei den reellen Zahlen gelten auch hier die Kommutativ- und Assoziativ-Gesetze. Die
Subtraktion lsst sich bereits vermuten
z1 z 2 = a1 + b1i a 2 b2 i = a1 a 2 + i (b1 b2 ) . (10.8)
Die Multiplikation hat die Form
z1 z 2 = (a1 + b1i ) (a 2 + b2 i ) = (a1 a 2 b1b2 ) + i (a1b2 + a 2 b1 ) . (10.9)
Ebenso folgt fr die Division
z1 a + b i a a + b b + i (a 2 b1 a1b2 )
= 1 1 = 1 2 1 2 . (10.10)
z 2 a 2 + b2 i a 22 + b22

Aufgabe 10.2 Rechner fr komplexe Zahlen


Es ist ein Rechner fr die vier Grundrechenarten komplexer Zahlen zu erstellen.

Tabelle 10-2 Struktogramm fr ein Rechnen mitkomplexen Zahlen.

Eingabe der komplexen Zahlen und der Rechenart


Entsprechend der Rechenart
Addition
z1 + z 2 = a1 + a 2 + i (b1 + b2 )

Subtraktion
z1 z 2 = a1 a 2 + i (b1 b2 )

Multiplikation
z1 z 2 = (a1 a 2 b1b2 ) + i (a1b2 + a 2 b1 )

Division
z1 a1 a 2 + b1b2 + i (a 2 b1 a1b2 )
=
z2 a 22 + b22

Ausgabe des Ergebnisses

Damit das Formular aufgerufen werden kann, denn ein Arbeitsblatt wollen wir diesmal nicht
benutzen, erstellen wir den Aufruf in DieseArbeitsmappe.
Das Formular ist entsprechend der Darstellung in Bild 10-4 zu erstellen und dann sind die
nachfolgenden Prozeduren zu installieren.

Codeliste 10.2 Aufrufprozedur in DieseArbeitsmappe


176 10 Berechnungen aus der Elektrotechnik

Bild 10-4
Formular fr das Rechnen
mit komplexen Zahlen

Codeliste 10.3 Prozeduren in frmComCal


177

Bild 10-5
Testrechnung mit
komplexen Zahlen

Komplexe Zahlen in der Elektrotechnik sind deshalb so beliebt, weil sich groe Vorteile bei
der Berechnung von Wechselstromgren ergeben.
178 10 Berechnungen aus der Elektrotechnik

10.3 Gesamtwiderstand einer Wechselstromschaltung


Im nachfolgenden Bild 10-6 ist das Schema einer Wechselstromschaltung zu sehen.
Die Schaltung setzt sich zusammen aus einem ohmschen Widerstand R und der Kapazitt C in
Reihenschaltung, sowie einer Parallelschaltung mit der Induktivitt L. Es gilt den
Gesamtwiderstand zu berechnen.
1
Z = R+ (10.11)
i ( L)

R C
Bild 10-6
L
Schema einer
Wechselstromschalt
ung

Fr die Parallelschaltung folgt


1 1 1
= + (10.12)
Z 1 i ( C )
R+
i ( C )

Durch Umstellung folgt daraus die Gleichung

L2 L
2
L
4C 2 +i 3C + 3C 2 L
R R2 R

Z= . (10.13)
2
1 L
2C 2 + 2C
R R

Eine weitere Umstellung ergibt den Betrag von Z aus


2 2
4 2 L2 2
C + L 3 C L + 3 C 2 L
R R 2 R

Z = . (10.14)
2
2
2 C 2 + 1 2 C L
R R

10.3 Gesamtwiderstand einer Wechselstromschaltung 179

Aufgabe 10.3 Berechnung des Gesamtwiderstandes einer Wechselstromschaltung


Durch schrittweise Erhhung von ist der Verlauf des Gesamtwiderstandes zu bestimmen.
Tabelle 10-3 Struktogramm fr die Berechnung des Gesamtwiderstandes einer Wechselschaltung

Eingabe von R, C, L
von =0 bis =max um

2 2
4 2 L2 2
C + L 3 C L + 3 C 2 L
R R2 R

Z =
2
2
2 C 2 + 1 2 C L
R R

Ausgabe und |Z|


Codeliste 10.4 Prozeduren in tblWechselstrom finden Sie auf meiner Website.

Beispiel 10.2 Experimenteller Wechselstrom


Ein experimenteller Wechselstromkreis verfgt ber einen ohmschen Widerstand von 0,8 ,
einen kapazitiven Widerstand von 0,002 F und einen induktiven Widerstand von 0,01 H.
Gesucht ist der Gesamtwiderstand bei einer Wechselspannung von 0 bis 1000 1/s. Die
Auswertung ergibt ein Maximum bei ca. 220 s-1.

Bild 10-7 Gesamtwiderstand Wechselstromkreis


180 10 Berechnungen aus der Elektrotechnik

bungsvorschlge
Neben der Darstellung der komplexen Zahlen in algebraischer Form, gibt es noch die
Darstellung in trigonometrischer Form (Bild 10-8)
In der Gauschen Zahlenebene wird die komplexe Zahl z durch einen Zeiger der Lnge r und
seinen Richtungswinkel eindeutig beschrieben.
z = r (cos + i sin ) . (10.15)
Ergnzen Sie den Rechner fr komplexe Zahlen um die Umrechnung zwischen algebraischer
und trigonometrischer Darstellung.

Im(z ) z

Bild 10-8
Trigonometrische Form
Re(z ) einer komplexen Zahl

Erweitern Sie den Rechner fr das Rechnen mit komplexen Zahlen um die Rechenarten
Potenzieren und Radizieren.
Potenzieren:

(
z n = r e i )
n
= r n e in = r n (cos(n ) + i sin(n ) ) (10.16)
Radizieren:
+ k 2 + k 2
z k = cos + i sin , k = 0,..., n 1 (10.17)
n n
Eine Reihenschaltung von ohmschen, kapazitiven und induktiven Widerstnden bezeichnet
man als Schwingkreis.

R L C Bild 10-9
RLC-Schwingkreis

Die Gesamtimpedanz dieses Wechselstromkreises berechnet sich nach den Kirchhoffschen


Regeln durch die Addition der Impedanzen der drei Bauteile
1 1
Z = R + i L + = R + i L . (10.18)
i C C
Untersuchen Sie diesen Wechselstromkreis in hnlicher Form wie die zuvor behandelte
Schaltung.
181

11 Berechnungen aus der Regelungstechnik

Die Regelungstechnik befasst sich mit Signalen. Diese geben Information ber die augenblick-
lichen Zustnde betrachteter Systeme und werden von Regeleinrichtungen aufgenommen und
verarbeitet. Ein Netzwerk aus gegenseitigen Signalbeziehungen bildet die Grundlage eines
Wirkplans. Regeltechnische Probleme finden sich nicht nur im Ingenieurbereich, sondern auch
im biologischen, soziologischen und wirtschaftlichen Bereich, eigentlich bei allen naturwis-
senschaftlichen Denkmodellen.
Vom grundlegenden Wirkplan her, fhrt der eine Weg in die mathematische Theorie und der
andere in die Gertetechnik. Daher versteht sich die Regelungstechnik auch als Verbindung
von mathematischen Beschreibungen und gertetechnischer Gestaltung.

11.1 Der PID-Regler


In der Regelungstechnik unterscheidet man unstetig und stetig wirkende Regeleinrichtungen.
So ist ein Bimetallschalter z. B. fr eine Temperaturregelung eine unstetige Regeleinrichtung.
Wird eine bestimmte Temperatur unterschritten, schaltet das Bimetall eine Heizung ein. Wird
eine bestimmte Temperatur berschritten, schaltet das Bimetall die Heizung aus. Dieser einfa-
che Regler wird auch als Zweipunktregler bezeichnet. Unstetige Regler sollen hier aber nicht
behandelt werden.

Eingangs- Ausgangs-
Signal Signal
Regelungs-
System
x y

y y

Bild 11-1

Stetige und
x x unstetige
unstetige
stetige Kennlinie Kennlinien
Kennlinie

Wir wenden uns den unterschiedlichen Formen stetiger Regelungssysteme zu. Im Gegensatz
zu unstetigen Reglern knnen sie jede Stellgre im Stellbereich annehmen.
Jeder Regelvorgang ist ein geschlossener Wirkkreis, der als Regelkreis bezeichnet wird. Ein
Regelkreis besteht aus der Regelstrecke (zu regelnde Anlage) und der Regeleinrichtung. Die
Regeleinrichtung erfasst die Regelgre (Temperatur, Druck, Strom, Lage, Drehzahl, etc.),
vergleicht sie mit dem Sollwert und erstellt ein Signal zur richtigen Beeinflussung der Regel-
gre.
182 11 Berechnungen aus der Regelungstechnik

Bestandteil der Regeleinrichtung ist neben dem Stellglied der Regler. Grundstzlich unter-
scheidet man zwischen einer Festwertregelung und einer Folgeregelung. Der Festwertregler
versucht die Regelgre auf einen bestimmten Wert zu halten. Der Folgeregler fhrt die Re-
gelgre einem vernderlichen Sollwert nach. Betrachten wir nun einige typische Reglerarten.

w e u y Bild 11-2
Regeleinrichtung Regelstrecke
+ - Vereinfachtes Block-
schaltbild eines Regel-
kreises

Bei einem Proportional-Regler (kurz P-Regler) ist das Ausgangssignal proportional zum Ein-
gangssignal. Folglich ist die Kennlinie dieses Reglers eine Gerade (Bild 11-3).

Stellgre u

Regel-
differenz

e Bild 11-3

Regelgre x Kennlinie eines


Ist Soll
P-Reglers
y w

Die Gleichung des P-Reglers lautet


u = KP e , (11.1)
mit KP als konstanten bertragungsbeiwert. Zur Beurteilung eines Reglers betrachtet man sein
Verhalten bei einer sprunghaften nderung der Regelgre. Eine sprunghafte nderung der
Regelgre beim P-Regler bedeutet eine sprunghafte nderung der Stellgre. Die ber-
gangsfunktion zeigt das zeitliche Verhalten von Regel- und Stellgre (Bild 11-4).

x
e
t
u
Bild 11-4
Kp e
bergangsfunktion eines
t P-Reglers
t =0
11.1 Der PID-Regler 183

Der Regler wird vereinfacht auch durch ein Blockschaltbild mit bergangsfunktion dargestellt
(Bild 11-5).

Bild 11-5

e u Blockschaltbild des P-
Reglers

Bei einem Integral-Regler sind Regeldifferenz und Stellgeschwindigkeit proportional. In Bild


11-6 ist die bergangsfunktion dieses Reglertyps dargestellt.

x
e
t
u
Bild 11-6

bergangsfunktion eines I-
t =0 TI t Reglers

Eine Regeldifferenz e bewirkt in der Zeitdifferenz t eine Stellgrennderung y. Allgemein


ergibt sich die Gleichung fr den I-Regler somit aus


u = K I e dt . (11.2)

Der Integrierbeiwert KI, bzw. die Integrierzeit TI sind die Kenngren der I-Regelung
1
TI = . (11.3)
KI
Der I-Regler verfgt ebenfalls ber ein Blockschaltbild (Bild 11-7).

Bild 11-7

e u Blockschaltbild desI-Reglers

Die nderung der Stellgre erfolgt langsamer als beim P-Regler.


Die Vorteile des P-Reglers (schnelle Reaktion) und die Vorteile des I-Reglers (angepasste
Regelabweichung) vereinigt der PI-Regler. Er ist eine Parallelschaltung der beiden Regler mit
P- und I-Anteil (Bild 11-8).
184 11 Berechnungen aus der Regelungstechnik

up

u = u p + uI

e Bild 11-8

Blockschaltbild des
uI PI-Reglers

Folglich ist die Gleichung fr den PI-Regler


1 1
u = KP e +
TI
e dt = K P e +
TN

e dt

(11.4)

mit
T N = K P TI (11.5)
als so genannte Nachstellzeit. Damit ist die Zeit gemeint, die der I-Anteil bentigt, um die
gleiche Stellgrennderung zu erzielen wie der P-Anteil. Anschaulich im Bild 11-9 wieder-
gegeben.
x
e
t
u
I-Anteil

P-Anteil Bild 11-9

bergangsfunktion
t =0 TN t eines PI-Reglers

Zur Verfeinerung des Regelverhaltens wurde ein Regler mit differenzierend wirkendem Anteil
(D-Regler) entwickelt. Dabei ist die Stellgre y proportional zur nderungsgeschwindigkeit
der Regelabweichung e. Dieses Verhalten zeigt anschaulich die bergangsfunktion in Bild 11-
10.
Ergibt sich in einer kleinen Zeiteinheit t die nderung der Regelabweichung e, so ist damit
die nderungsgeschwindigkeit der Regelabweichung
e
v= . (11.6)
t
Fr die Stellgre gilt
e
u = KD . (11.7)
t
11.1 Der PID-Regler 185

x
e
t
u
Bild 11-10

bergangsfunktion
t =0 t eines D-Regelanteils

In der Grenzbetrachtung wird aus dem Differenzenquotient ein Differentialquotient und die
Gleichung lautet
de
u = KD . (11.8)
dt
Bei D-Regelanteilen betrachtet man neben der bergangsfunktion auch die Anstiegsantwort
(Bild 11-11).
Eine D-Regelung allein ist nicht in der Lage, die Regelgre der Fhrungsgre anzugleichen.
D-Anteile treten daher nur in Kombination mit P-Anteilen und I-Anteilen auf.
Eine mgliche Kombination ist der PD-Regler. Aus der Darstellung der Anstiegsantwort in
Bild 11-12 wird ersichtlich, dass die Stellgre um die Vorhaltezeit TV eher als bei reiner P-
Regelung erreicht wird. Die Vorhaltezeit bestimmt sich aus der Gleichung
KD
TV = . (11.9)
KP

t
u

Bild 11-11

t =0 t Anstiegsantwort des D-Regelanteils


186 11 Berechnungen aus der Regelungstechnik

t
u D-Anteil

P-Anteil Bild 11-12

Anstiegsantwort des
t =0 TV t PD-Reglers

Die Parallelschaltung des P-, I- und D-Anteils zum PID-Regler, fasst die Vorteile aller Regel-
anteile zusammen.
t 1
t
de
= Kp e +
de

u = K P e + K I e dt + K D
dt TN
e dt + TV
dt (11.10)
0 0

up

e u = u p + uI + u D
uI

Bild 11-13

Blockschaltbild desPID-
uD Reglers

Die bergangsfunktion dieses Reglers zeigt Bild 11-14.


x
e
t
u

Kp
Bild 11-14

t bergangsfunktion des
TN t =0 PID-Reglers
11.1 Der PID-Regler 187

Bevor wir den Algorithmus entwerfen, mssen wir uns zuvor noch mit einer numerischen
Integrationsmethode befassen, da der I-Anteil einen solchen erfordert. Dazu whlen wir die
Trapezmethode. Dabei werden die Flchenanteile durch Trapezflchen ersetzt.

en
en 1
en 2 Bild 11-15

Integration der Re-


gelabweichung nach
t t der Trapezmethode

Nach Bild 11-15 ergibt sich eine Rekursionsformel, die auf bereits bekannte Gren zurckge-
fhrt wird
e + e n 1
u n = u n 1 + K I n t . (11.11)
2

Aufgabe 11.1 Bestimmung der Regleranteile


Ein Programm soll unter Vorgabe der Regelabweichung ber der Zeit das Verhalten der ein-
zelnen Regleranteile P, I und D ermitteln. Ebenso die Summierung zu einem PI-, PD- und PID-
Regler.

Tabelle 11-1 Struktogramm zur Berechnung der Regleranteile

Eingabe:
bertragungsbeiwert KP
Nachstellzeit TN
Vorhaltezeit TV
Schrittweite t
u n 1 = 0
Fr 100 Berechnungsschritte
u P = K P e
188 11 Berechnungen aus der Regelungstechnik

e n + e n 1 K P
u I ,n = u I ,n 1
2 TN
u I ,n 1 = u I ,n

e = e n e n 1

e
u D = K P TV
t
Ausgabe uP, uI, uD, uPI, uPD, uPID,

Das Arbeitsblatt bekommt den Namen tblRegler.

Codeliste 11.1 Prozeduren in tblRegler

Option Explicit

Sub Regler_Formular()
Dim MyDoc As Object
Dim Shp As Shape
Set MyDoc = ThisWorkbook.Worksheets("Regler")
MyDoc.Activate
MyDoc.Cells.Clear
'
'alle Charts lschen
For Each Shp In MyDoc.Shapes
Shp.Delete
Next
'Neue Beschriftung
Range("A1") = "bertragungsbeiwert KP"
Range("A2") = "Nachstellzeit TN [s]"
Range("A3") = "Vorhaltezeit TV [s]"
Range("A4") = "Schrittweite " + ChrW(8710) + " t [s]"
'Ausgabetabelle
Range("D1") = "t"
Range("E1") = "e"
Range("F1") = "u-P"
Range("G1") = "u-I"
Range("H1") = "u-D"
Range("I1") = "u-PI"
Range("J1") = "u-PD"
Range("K1") = "u-PID"
Columns("B:K").Select
Selection.NumberFormat = "0.000"
Columns("A:A").EntireColumn.AutoFit
Range("B1").Select
End Sub

Sub Regler_Testdaten()
Dim i, j As Integer
Cells(1, 2) = 0.2
Cells(2, 2) = 20
Cells(3, 2) = 15
Cells(4, 2) = 1
For i = 1 To 100
Cells(i + 1, 4) = i
Next i
j = 1
11.1 Der PID-Regler 189

For i = 1 To 20
j = j + 1
Cells(j, 5) = -10
Next i
For i = 1 To 20
j = j + 1
Cells(j, 5) = -(10 + i * 0.2)
Next i
For i = 1 To 41
j = j + 1
Cells(j, 5) = 10 - (i - 1) * 0.5
Next i
For i = 1 To 19
j = j + 1
Cells(j, 5) = 0
Next i
End Sub

Sub Regler_Auswertung()
Dim Kp, e, TN, TV, dt As Double
Dim xx, t, up, e1, e2, de, u1, u2, ud, Ki As Double
Dim i As Integer
Kp = Cells(1, 2)
TN = Cells(2, 2)
TV = Cells(3, 2)
dt = Cells(4, 2)
u1 = 0
For i = 1 To 100
'
'P-Anteil
e = Cells(i + 1, 5)
up = -Kp * e
Cells(i + 1, 6) = up
If i = 1 Then
e1 = Cells(i + 1, 5)
e2 = Cells(i + 1, 5)
Else
e1 = Cells(i, 5)
e2 = Cells(i + 1, 5)
End If
'
'I-Anteil
u2 = u1 - (e1 + e2) / 2 * Kp / TN
Cells(i + 1, 7) = u2
u1 = u2
'
'D-Anteil
de = e2 - e1
ud = -Kp * TV * de / dt
Cells(i + 1, 8) = ud
'
'PI-Anteil
Cells(i + 1, 9) = Cells(i + 1, 5) + Cells(i + 1, 6)
'
'PD-Anteil
Cells(i + 1, 10) = Cells(i + 1, 5) + Cells(i + 1, 7)
'
'PID-Anteil
Cells(i + 1, 11) = Cells(i + 1, 5) + Cells(i + 1, 6) + Cells(i + 1, 7)
Next i
'
'Diagramme
Call Diagramm1
Call Diagramm2
End Sub
190 11 Berechnungen aus der Regelungstechnik

Sub Diagramm1()
Range("D2:H101").Select
Charts.Add
ActiveChart.ChartType = xlXYScatterSmoothNoMarkers
ActiveChart.SetSourceData Source:= _
Sheets("Regler").Range("D2:H101"), PlotBy:=xlColumns
ActiveChart.SeriesCollection(1).Name = "=""Regelabweichung e"""
ActiveChart.SeriesCollection(2).Name = "=""P-Anteil"""
ActiveChart.SeriesCollection(3).Name = "=""I-Anteil"""
ActiveChart.SeriesCollection(4).Name = "=""D-Anteil"""
ActiveChart.Location Where:=xlLocationAsObject, Name:="Regler"
With ActiveChart
.HasTitle = True
.ChartTitle.Characters.Text = "Regleranteile"
.Axes(xlCategory, xlPrimary).HasTitle = True
.Axes(xlCategory, xlPrimary).AxisTitle.Characters.Text = "Zeit [s]"
.Axes(xlValue, xlPrimary).HasTitle = True
.Axes(xlValue, xlPrimary).AxisTitle.Characters.Text = "Regelanteile"
End With
ActiveWindow.Visible = False
Windows("Kapitel 11.xls").Activate
End Sub
Sub Diagramm2()
ActiveWindow.Visible = False
Windows("Kapitel 11.xls").Activate
Range("D2:E101,I2:K101").Select
Range("I2").Activate
Charts.Add
ActiveChart.ChartType = xlXYScatterSmoothNoMarkers
ActiveChart.SetSourceData Source:= _
Sheets("Regler").Range("D2:E101,I2:K101"), PlotBy:=xlColumns
ActiveChart.SeriesCollection(1).Name = "=""Regelabweichung e"""
ActiveChart.SeriesCollection(2).Name = "=""PI-anteil"""
ActiveChart.SeriesCollection(3).Name = "=""PD-Anteil"""
ActiveChart.SeriesCollection(4).Name = "=""PID-Anteil"""
ActiveChart.Location Where:=xlLocationAsObject, Name:="Regler"
With ActiveChart
.HasTitle = True
.ChartTitle.Characters.Text = "Regler"
.Axes(xlCategory, xlPrimary).HasTitle = True
.Axes(xlCategory, xlPrimary).AxisTitle.Characters.Text = "Zeit [s]"
.Axes(xlValue, xlPrimary).HasTitle = True
.Axes(xlValue, xlPrimary).AxisTitle.Characters.Text = "Regelanteil"
End With
ActiveWindow.Visible = False
End Sub

Beispiel 11.1 Reglerkennlinien


Gesucht sind die Regleranteile zu einem vorgegebenen Signalverlauf nach Bild 11-16. Dabei
sind die einzelnen Reglertypen gefragt und auch die Summierung zum PI-, PD- und PID Reg-
ler.
Die erforderlichen Kenndaten zur Berechnung lauten KP = 0,2 mm/grd C, TN = 20 s, TV = 15 s
und t = 1 s.
11.1 Der PID-Regler 191

e [grd C]
40
10
20 60 80

t [s]
-10
Bild 11-16
-20
Regelabweichung

Die Auswertung zeigt Bild 11-17. Diagramm 1 zeigt die P-, I- und D-Regleranteile. Diagramm
2 die Anteile von PI-, PD- und PID-Regler.

Bild 11-17

Regleranteile

bungsvorschlge
Die Sprungantwort eines P-Reglers kann unterschiedlich ausfallen. Je nach Verlauf (Bild 11-
18) spricht man von nullter, erster, zweiter oder hherer Ordnung.
Ein P-Regler nullter Ordnung ist zum Beispiel ein Zuflussregler fr Gasverbraucher, der einen
konstanten Gasdruck erzeugen soll. Die Totzeit kommt durch den Druckaufbau oder Druckab-
bau zustande.
192 11 Berechnungen aus der Regelungstechnik

u Totzeit

nullte Ordnung
t

erste Ordnung
t

zweite oder
hhere Ordnung Bild 11-18
t
Regelabweichung

Ein P-Regler erster Ordnung ist zum Beispiel ein Drehzahlregler fr eine Dampfturbine. Die
Anpassung der Drehzahl ber mehr oder weniger Dampf ergibt ein Drehzahlverhalten erster
Ordnung.
Ein P-Regler zweiter Ordnung ist durch einen Heizkrper in einem Raum gegeben. Der Hei-
wasserregler der Heizung erzeugt eine Kennlinie zweiter Ordnung.
Die Differentialgleichung eines P-Reglers erster Ordnung lautet:
de
Ts + e = K P u (11.12)
dt
Bei P-Reglern zweiter und hherer Ordnung lautet der Ansatz (hier 3. Ordnung):
d 3e d 2e de
a3 + a2 + a1 + e = Kp u . (11.13)
3 2 dt
dt dt
Erweitern Sie das Berechnungsprogramm um diese P-Anteile.
Bei den betrachteten Reglern handelt es sich um ideale Regler, die so in der Praxis selten vor-
kommen. So tritt beim realen PID-Regler eine Verzgerung nur des D-Anteils auf und die
Gleichung fr die Stellgre lautet
1
t
de
u = Kp e + e dt + V
T
TN
1 + T1 dt
(11.14)
0
mit T1 als Verzgerungszeit.
11.2 Fuzzy-Regler 193

11.2 Fuzzy-Regler
Im Jahre 1920 wurden erste Fuzzy-Systeme von Lukasiewicz vorgestellt. Erst 45 Jahre spter
stellte Zadeh seine Possibilittstheorie vor. Damit war das Arbeiten mit einem formal logi-
schen System mglich. Zwar wurde die Methode in den USA entwickelt, doch erst Ende der
achtziger Jahre von der japanischen Industrie entdeckt und erfolgreich eingesetzt. Seitdem hat
die Fuzzy-Regelung schrittweise verschiedene Anwendungsgebiete erobert. Sich mit der Pos-
sibilittstheorie zu beschftigen ist sicher eine reizvolle Aufgabe und wrde garantiert den
Rahmen dieses Buches sprengen.
Wir wollen uns vielmehr ber eine Anwendung der Methode nhern. Wenn wir eine gefhls-
mige Einteilung eines Temperaturbereich von eisig ber kalt und warm bis hei durchfhren
mssten, dann kme etwa eine Skala dabei heraus, wie sie im Bild 11-19 dargestellt ist.
Doch lassen wir diese Einteilung von mehreren Personen durchfhren, dann ergeben sich un-
terschiedliche Einteilungen. Bei einer hinreichend groen Personenzahl erhlt man eine Eintei-
lung wie in Bild 11-20 dargestellt.

C
Wahrheitsgrad

30
hei
20
warm Bild 11-19
10
kalt
0 Gefhlsmige
0
eisig Einteilung einer
-10 Raumtemperatur

In der klassischen Mengenlehre kann ein Element nur einer Menge angehren oder nicht. Die
Temperatur von z. B. 12,5 Grad Celsius gehrt zur Menge der warmen Temperaturen. Im
Gegensatz dazu knnen Fuzzy-Elemente nur zu einem Teil einer Menge angehren. Diese
Zugehrigkeit wird durch eine Zahl aus dem Intervall [0,1] angegeben. Null bedeutet keine
Zugehrigkeit und 1 eine volle Zugehrigkeit. Die Temperatur 12,5 Grad Celsius gehrt nach
der Darstellung mit der Wahrscheinlichkeit von 0,5 zur Menge der kalten Temperaturen und
mit ebensolcher Wahrscheinlichkeit von 0,5 zur Menge der warmen Temperaturen.
194 11 Berechnungen aus der Regelungstechnik

1
C
30
Wahrheitsgrad

hei
20 Bild 11-20
warm
10
kalt Fuzzifizierung
0
0 einer Raumtem-
eisig
-10 peratur

Diese Mengen werden auch als Fuzzy-Sets bezeichnet und man spricht von unscharfen Men-
gen. Diese Einteilung, auch Fuzzifizierung genannt, ist der erste von drei Schritten eines Fuz-
zy-Reglers, die dieser stndig durchluft.

Bild 11-21
e Fuzzy- Defuzzy- u
Inferenz
fizierung fizierung Struktur eines
Fuzzy-Reglers

Zur Fuzzyfizierung wird fr jede Regelabweichung eine Mengeneinteilung in der Form er-
stellt, dass jede Menge den Wahrheitsgrad von 0 bis 1 annimmt.

sehr tief tief normal hoch sehr hoch


1,00
Wahrheitsgrad

0,75

0,50
Bild 11-22
0,25
Wahrheitsgrade zur
0
Temperatur Temperaturbeurtei-
lung
aktuell

Im Bild 11-22 hat die aktuelle Temperatur den Wahrheitsgrad 0,75 zur Menge der tiefen Tem-
peraturen und den Wahrheitsgrad 0,25 zur Menge der normalen Temperaturen.
Betrachtete man nur die Temperatur, dann htte man es mit einer einfachen P-Regelung zu tun.
Die Strke der Fuzzy-Regelung liegt aber in der Bildung von Inferenzen. Hier kommt die Be-
11.2 Fuzzy-Regler 195

achtung der Temperaturnderung hinzu. Auch hier ergibt sich eine entsprechende Mengenein-
teilung.
sinkt steigt
schnell sinkt stabil steigt schnell
1,00
Wahrheitsgrad

0,75

0,50
Bild 11-23
0,25
Wahrheitsgrade zur
0
Temperaturnderung Beurteilung der
aktuell Temperaturnderung

Die aktuelle Temperaturnderung hat nach Bild 11-23 den Wahrheitsgrad 0,6 zur Menge der
steigenden Temperaturnderungen und den Wahrheitsgrad von 0,4 zur Menge der stabilen
Temperaturnderungen.
In der Phase der Inferenz werden den Wahrheitsgraden der Eingangsgren Wahrheitswerte
der Ausgangsgren zugeordnet. Die Ausgangsgre ist in unserem Beispiel das Stellventil
der Raumheizung.

zu auf auf auf auf


1,00
Wahrheitsgrad

0,75

0,50
Bild 11-24

0,25 Wahrheitsgrade
zur Ventilstel-
0 lung
Stellgre

Bezogen auf die Beispieldaten gelten die Inferenzen fr die Temperaturen:


WENN Temperatur sehr tief (0) DANN Ventil auf (0).
WENN Temperatur tief (0.75) DANN Ventil auf (0.75).
WENN Temperatur normal (0.25) DANN Ventil auf (0.25).
WENN Temperatur hoch (0) DANN Ventil auf (0).
WENN Temperatur sehr hoch (0) DANN Ventil zu (0).

Unter Bercksichtigung der Temperaturnderung folgt weiterhin:


WENN Temp. tief (0.75) UND Temp. stabil (0.4) DANN Ventil auf (0.4).
WENN Temp. tief (0.75) UND Temp. steigt (0.6) DANN Ventil auf (0.6).
WENN Temp. normal (0.25) UND Temp. stabil (0.4) DANN Ventil auf (0.25).
WENN Temp. normal (0.25) UND Temp. steigt (0.6) DANN Ventil auf (0.25).
196 11 Berechnungen aus der Regelungstechnik

Die Zusammenhnge lassen sich anschaulicher in einer Matrix zusammenfassen.

Tabelle 11-2 Inferenzen-Matrix zur Temperaturregelung

Temperatur sinkt schnell sinkt stabil (0,4) steigt (0,6) steigt schnell
sehr tief auf auf auf auf auf
tief (0,75) auf auf auf (0,4) auf (0,6) auf
normal auf auf auf (0,25) auf (0,25) zu
(0,25)
hoch auf auf auf zu zu
sehr hoch auf auf zu zu zu

In der letzten Phase, der Defuzzyfizierung, wird das gleiche Schema wie zur Fuzzyfizierung
angewandt:
1. Schritt:
Fr alle logischen Inferenzen werden die Wahrheitsgrade der Ventilstellungen aus den Wahr-
heitsgraden der Eingangsgren berechnet. Hier findet der Minimum-Operator seine Anwen-
dung:
Min (0.75, 0.4) = 0.4, Min (0.75, 0.6) = 0.6, Min (0.25, 0.4) = 0.25 und Min (0.25, 0.6) = 0.25.
2. Schritt:
Die Resultate fr gleiche Ventilstellungen werden summiert:
[ auf] hat den Wert 0.4, [ auf] hat 0,85 und [ auf] hat 0,25. Insgesamt ergibt sich als
Summe 1,5.
3. Schritt:
Die Werte werden auf 1 normiert:
0.4 0.85 0.25
= 0.267, = 0.567, = 0.167
1.5 1.5 1.5
4. Schritt:
Anpassung der Flchengre der Mengeneinteilung nach dem Wahrheitsgrad.
5. Schritt:
Bestimmung des Schwerpunktes der resultierenden Flchenstcke. Seine Lage ist die Stellgr-
e des Ventils:

wi Ai si 0.167 2 0.25 + 0.567 2 0.5 + 0.267 2 0.75


u= i = = 0.526 (11.15)
wi Ai 0.167 2 + 0.567 2 + 0.267 2
i
11.2 Fuzzy-Regler 197

zu auf auf auf auf


1,00
Wahrheitsgrad

0,75

0,50

0,25
Bild 11-25
0
Stellgre
Gesamtschwerpunkt Anpassung der
Flchengren

Darin ist wi der Wahrheitsgrad, Ai der Flcheninhalt und si der Schwerpunkt der einzelnen
Flchen. Die Schwerpunktmethode ist nur eine von mehreren Methoden.

Aufgabe 11.2 Regelverhalten eines Fuzzy-Reglers


Ein Programm soll die Stellgre des vorangegangenen Beispiels fr einen Temperaturbereich
von -10 bis 40 Grad Celsius um jeweils 1 Grad berechnen, wobei die Temperaturnderungen
in der Schrittweite 0,25 ber den gesamten Bereich bercksichtigt werden. Das entsprechende
Fuzzy-Set fr die Temperatur zeigt Bild 11-26.

sehr sehr
tief tief normal hoch hoch
1,00
Wahrheitsgrad

0,75

0,50

0,25
Bild 11-26
0
-10 0 10 20 30 40 50 Fuzzy-Set fr die
Temperatur Temperatur
198 11 Berechnungen aus der Regelungstechnik

Um mit Datenfeldern in den verschiedenen Prozeduren arbeiten zu knnen, erstellen wir neben
dem Arbeitsblatt tblFuzzy noch ein Modul modFuzzy. In diese Objekte gehrt der Code aus
den Listen 11.2 und 11.3.

Tabelle 11-3 Struktogramm zur Berechnung des Fuzzy-Reglers

Fr alle Temperaturen T von -10 bis 50 Grad Celsius


Fr alle Temperaturnderungen von sinkt schnell bis steigt schnell
jeweils um -Anteil verndert
Fuzzyfizierung der Temperatur
wT(i) = f(Temperatur-Set), i = 0,,4
Fuzzyfizierung der Temperaturnderung
aT(i) = f(Temperaturnderungs-Set), i = 0,,4
Eintragung der Wahrheitswerte in eine Matrix
M(i+1,0) = wT(i), i = 0,,4
M(0,i+1) = aT(i), i = 0,,4
Auswertung der Matrix, Inferenzen
M(i,j) = Minimum(M(i,0),M(0,j)), i,j = 1,,5
Normierung der Summen gleicher Ventilstellungen auf 1
v(i) = Mv(j,k), i = 0,,4, j,k = 1,,5
s = v(i), i = 0,,4
vn(i) = v(i)/s
Bestimmung des Gesamtschwerpunktes und damit der Stellgre

v(i) 2 si
i
u=
v(i) 2
i

Ausgabe der Temperatur, der Temperaturnderung und der errech-


neten Ventilstellung
Grafische Anzeige des Kennfeldes

Codeliste 11.2 Deklaration in modFuzzy finden Sie auf meiner Website.

Codeliste 11.3 Prozeduren in tblFuzzy finden Sie ebenfalls auf meiner Website.

Das Berechnungsbeispiel ergibt das in Bild 11-27 dargestellte Regelfeld.


11.2 Fuzzy-Regler 199

Bild 11-27

Kennfeld des
Beispiels

bungsvorschlge
Erstellen Sie das Regelfeld fr die Brennkammer eines Industrieofens. Zu regeln sind die Tem-
peratur im Brennraum (Bild 11-28) und der Druck (Bild 11-29), mit dem das Brenngas ansteht.
Die notwendigen Daten ergeben sich aus den genannten Bildern.

sehr sehr
tief normal hoch
1,00 tief hoch
Wahrheitsgrad

0,75

0,50

0,25
Bild 11-28
0
600 700 800 900 1000 Fuzzy-Set Temperatur
Temperatur

tief normal hoch


1,00
Wahrheitsgrad

0,75

0,50

0,25
Bild 11-29
0
28 30 32 bar
Druck Fuzzy-Set Druck
200 11 Berechnungen aus der Regelungstechnik

Zu den Inferenzen sollten gehren:


WENN Temperatur sehr hoch ODER Druck hoch DANN Ventil zu.
WENN Temperatur hoch UND Druck normal DANN Ventil auf.
Zu beachten ist, dass hier sowohl Oder- als auch Und-Verknpfungen vorliegen.

zu auf auf auf auf


1,00
Wahrheitsgrad

0,75

0,50

0,25

0 m3 Bild 11-30
0 5 10 15 20 h
Durchfluss Ventilstellungen

Ergnzen Sie die fehlenden Inferenzen und erstellen Sie eine Matrix. Danach knnen Sie mit
der Aufstellung des Algorithmus beginnen.
Weitere Anwendungsgebiete finden sich hauptschlich in Embedded-Systemen. Unter ande-
rem in Automatikgetrieben und Tempomaten von Autos. In der Gebudeleittechnik zur Tem-
peraturregelung, Jalousien-Steuerung und in Klimaanlagen. Waschmaschinen besitzen eine
(Fuzzy-) Automatik, die eingelegte Wsche und deren Verschmutzungsgrad erkennt, und da-
mit Wassermenge, Energiemenge und bentigtes Waschmittel optimiert.
Es ist festzustellen, dass Fuzzylogic nicht mehr der Modebegriff der 80er Jahre ist. Vielmehr
drfte sich Fuzzy ganz selbstverstndlich in vielen Embedded-Systems befinden, ohne das
damit geworben wird.
201

12 Berechnungen aus der Fertigungstechnik

Die Fertigungstechnik ist ein Fachgebiet des Maschinenbaus. Sie befasst sich mit der
wirtschaftlichen Herstellung und dem Einbau von Erzeugnissen. Die Grundbegriffe der
Fertigungsverfahren sind in DIN 8580 zusammengefasst. Das Arbeitsfeld der
Fertigungstechnik ist das Entwickeln, Weiterentwickeln und das Anwenden der
Fertigungsverfahren. Zu den Hauptgruppen zhlen das Urformen, Umformen, Trennen, Fgen
und Beschichten. Ein weiteres Gebiet befasst sich mit der Vernderung stofflicher
Eigenschaften.

12.1 Stauchen eine spanlose Formgebung


Das Stauchen zhlt zu den Massivumformverfahren. Es dient der Herstellung von
Massenteilen, wie Schrauben, Kopfbolzen, Stiften, Ventilsteln, wie sie in Bild 12-1
dargestellt sind.

Bild 12-1
Typische Stauchteile

Ausgangsmaterial ist ein Rund- oder Profilmaterial. Oft wird auch von einem Drahtbund
gearbeitet.
Bei der Betrachtung der zulssigen Formnderung unterscheidet man zwei Kriterien. Das eine
Ma ist die Gre der Formnderung, auch als Formnderungsvermgen bezeichnet. Dieses
drckt sich durch die Stauchung
h0 h1
h = , (12.1)
h0
aus, die oft auch als Stauchungsgrad
h1
h = ln . (12.2)
h0
berechnet wird.
202 12 Berechnungen aus der Fertigungstechnik

d0

h0
h1
Bild 12-2
Freies Stauchen zwischen
parallelen Flchen
d1

Ist das Material fr eine Stauchung gegeben, und damit auch die zulssige Formnderung, so
bestimmt sich die zulssige Hhe vor dem Stauchen durch Umstellung der Formel aus
h0 = h1 e h . (12.3)
Das zweite Kriterium legt die Grenzen der Rohlingsabmessungen in bezug auf die Gefahr der
Knickung beim Stauchen fest. Es wird als Stauchverhltnis bezeichnet und ist der Quotient aus
freier (nicht gefhrter) Lnge zum Auendurchmesser des Rohlings
h0
s= . (12.4)
d0
Als zulssiges Stauchverhltnis fr einen Stauchvorgang gilt als Richtgrenzwert s 2,6. Fr
einen Stauchvorgang in zwei Arbeitsschritten s 4,5. Bei einem gegebenen Volumen, lsst
sich der Ausgangsdurchmesser aus einem bestimmten Stauchverhltnis bestimmen
4 V
d0 = 3 . (12.5)
s
Die erforderliche Stauchkraft fr rotationssymmetrische Teile (und auf diese wollen wir uns
hier beschrnken) bestimmt sich ber die Formnderungsfestigkeit des Materials kf1 am Ende
des Stauchvorgangs und dem Reibungskoeffizient (0,1-0,15) zwischen Material und den
Stauchflchen aus
1 d
FS = A1 k f 1 1 + 1 . (12.6)
3 h1
Die Staucharbeit bestimmt sich in erster Nherung aus einer mittleren Formnderungsfestigkeit
kfm, der Hauptformnderung h und einem Formnderungswirkungsgrad f, der im Bereich von
0,6 bis 0,9 liegt, durch die Formel
V k fm h
W = , (12.7)
f
oder aus einer mittleren Stauchkraft Fm (Bild 12-3) und dem Verformungsweg s vereinfacht
W = Fm s . (12.8)
12.1 Stauchen eine spanlose Formgebung 203

Doch wir wollen hier etwas genauer hinschauen und die sich ergebende Leistung durch eine
numerische Integration bestimmen.

F max

Fm

W
Bild 12-3
s Staucharbeit

Fr den Berechnungsalgorithmus gehen wir davon aus, dass sich die Formnderungsfestigkeit
linear verndert.

Tabelle 12-1 Algorithmus zur Bestimmung der Staucharbeit

Eingabe d 0 , d1 , h1 , k f , 0 , k f ,1 , , F


A0 = d 02
4

V = d12 h1
4
V
h0 =
A0

h0
s=
d0

h1
h = ln
h0

Ausgabe h0 , s, h

h = h0 , h, h1
V
Ah =
h
204 12 Berechnungen aus der Fertigungstechnik

4 Ah
dh =

h0 h
k f ,h = k f ,0 + (k f ,1 k f ,0 )
h0 h1

V 1 d
Fh = k f , h 1 + h
h 3 h
Wh = Wh h + Fh h

Ausgabe h, d h , k f , h , Fh , Wh

Codeliste 12-1: Berechnung der Staucharbeit


12.1 Stauchen eine spanlose Formgebung 205
206 12 Berechnungen aus der Fertigungstechnik

Beispiel: Kopfbolzen
Der in Bild 12-4 dargestellte Kopfbolzen aus Ck35 soll gefertigt werden.

32

84
58
Bild 12-4

21 Kopfbolzen aus Ck35

Fr den Stauchvorgang sind gegeben:

Bezeichnung Symbol Wert


Formnderungswirkungsgrad f 0,82
Reibungskoeffizient 0,13
Formnderungsfestigkeit Kf,0 300
Formnderungsfestigkeit Kf,1 900

Das Ergebnis finden Sie in Bild 12-5.


Das Stauchverhltnis liegt mit 2,25 unter dem zulssigen Grenzwert von 2,6. Daher kann der
Kopfbolzen in einem Stauchgang hergestellt werden. Die Gre der Hauptformnderung liegt
mit 81,1 % ebenfalls unter der zulssigen Formnderung fr Ck35 mit ca. 140 %.

bungsvorschlge
Ergnzen Sie den Berechnungsalgorithmus um einen Prozentsatz Abbrand und Verluste.
Suchen Sie den wahren Verlauf der Formnderungsfestigkeit und interpolieren oder
approximieren Sie diesen. Ergnzen Sie die Berechnung um die dargestellten Diagramme.
12.2 Drehen eine spanende Formgebung 207

Bild 12-5
Auswertung des
Kopfbolzen

12.2 Drehen eine spanende Formgebung


Die Berechnung von Schnittkrften, Leistungen und Zeiten haben fr Werkzeugmaschinen und
Maschinensysteme Allgemeingltigkeit. Dennoch betrachten wir nachfolgend ausschlielich
das Lngsdrehen und fhren einige Grundbegriffe ein.

d1 d2
d
Bild 12-6
Schnittbewegung
208 12 Berechnungen aus der Fertigungstechnik

Nach Bild 12-6 lautet die Formel zur Berechnung der Schnittgeschwindigkeit (z. B. Drehen,
Frsen, Bohren)
vc = d n . (12.9)
Daraus ist sofort ersichtlich, dass bei gleicher Drehzahl unterschiedliche Wirkdurchmesser
auch unterschiedliche Schnittgeschwindigkeiten liefern. Mit dem Vorschub f und der
Schnitttiefe a bestimmt sich nach Bild 12-6 der erfolgte Spanungsquerschnitt
A = a f = bh. (12.10)

b
a

Bild 12-7
h
Spangeometrie

Spanungsdicke h und Spanungsbreite b bestimmen sich aus den Formeln


h = f sin (12.11)

a
b= (12.12)
sin
Die bei der Spanung auftretende Zerspankraft F setzt sich aus den in Bild 12-7 dargestellten
Komponenten zusammen.

Fp
Ff

Fc
Bild 12-8
Komponenten
F Fa der Zerspankraft
12.2 Drehen eine spanende Formgebung 209

Die Komponente Schnittkraft Fc bestimmt sich aus


Fc = b h k c = a f k c (12.13)
und ist damit direkt proportional zur querschnittsbezogenen spezifischen Schnittkraft kc, die
sich wiederum aus einer auf den Quadratmillimeter bezogenen spezifischen Schnittkraft Kc1
und der Spannungsdicke berechnet
k c1
kc = . (12.14)
h mc
Der Spanungsdickenexponent m bestimmt sich aus einer Tabelle. Die Berechnung der
Schnittkraft ist nach (12.13) im Ansatz theoretisch richtig, die Praxis hat jedoch gezeigt, dass
es verschiedene Einflussfaktoren gibt, die bercksichtigt werden mssen. Diese fasst man in
den Faktoren
K Spanwinkelkorrektur
Kv Schnittgeschwindigkeitskorrektur
Ks Schneidstoffkorrektur
Kz Verschleikorrektur (zeitabhngig)

zusammen, so dass die Formel zur Berechnung der Schnittkraft nun lautet
Fc = b h k c K K v K s K z (12.15)

Die Schnittleistung bestimmt sich abschlieend aus der Gleichung


vc Fc
Pc = . (12.16)
1000 60
Unter Bercksichtigung eines Wirkungsgrades folgt damit die Antriebsleistung
Pc
P A= . (12.17)

Zur Berechnung von Schnittkraft und Leistung ergibt sich nachfolgender
Berechnungsalgorithmus. Eine Berechnung der Schnittkraft ist auf Grund der vielen
Einflussfaktoren nur angenhert mglich. Dies ist fr die praktischen Belange aber auch nicht
erforderlich.

Tabelle 12-2 Algorithmus zur Bestimmung der Schnittkraft und Leistung beim Drehen

Eingabe
vc , f , , m, k c1 , K , K , K s , K z ,

h = f sin
k c1
kc = m
h
210 12 Berechnungen aus der Fertigungstechnik

A = bh
Fc = b h k c K K K s K z

vc Fc
Pc =
1000 60
Pc
P A=

Ausgabe h, Fc , Pc , PA

Programmierung und Beispielberechnung mchte ich an dieser dem Leser berlassen. Er findet
aber Code und Beispiel auf meiner Homepage.

bungsvorschlge
Die Einflussfaktoren bestimmen sich aus verschiedenen Tabellen und Annahmen. Versuchen
Sie diese fr ein bestimmtes Material zur Auswertung im Programm darzustellen. Wie schon
im vorangegangenen Kapitel empfohlen, versuchen Sie dabei durch ein Nherungsverfahren
die Auswertung zu erleichtern.
Bestimmen Sie zustzlich die Spankraft
1 m f
h
F f = b h k f Kf . (12.18)
h0
Wobei sich der Korrekturfaktor wiederum aus mehreren Faktoren ergibt (siehe Literatur).
Ebenso die Passivkraft
1 m p
h
Fp = b h k p Kp . (12.19)
h0
Bestimmung Sie abschlieend die Aktivkraft Fa als Resultierende aus Vorschub- und
Schnittkraft.

12.3 Die belastungsoptimale Pressverbindung


Pressverbindungen werden durch Fgen von Bauteilen mit berma erreicht. Dies geschieht
bei Lngspresspassungen durch eine Fgekraft und bei Querpressverbindungen durch
Erwrmung oder Unterkhlung eines Bauteils. Letztere bezeichnet man daher auch als Dehn-
oder Schrumpfverbindung. Grundlage aller Pressverbindungen ist die bertragung von Krften
und Momenten durch eine erhhte Gefgeverzahnung.
Einen Algorithmus fr einen Festigkeitsnachweis einer nach Bild 12-9 dargestellten
Pressverbindung ergibt sich aus den blichen Fachbchern zur Berechnung von
Maschinenelementen. Wir interessieren uns an dieser Stelle fr eine gleichmige Belastung
des Innen- und Auenteils. Dies fhrt zur Frage nach dem optimalen Fugendurchmesser df bei
12.3 Die belastungsoptimale Pressverbindung 211

gegebenem Innendurchmesser di (kann auch Null sein) und Auendurchmesser da. Auch die
Passlnge l soll gegeben sein.

da

di df

l
Bild 12-9
Pressverbindung

Wenn auch der optimale Fugendurchmesser nicht immer erzielt werden kann, so sind doch
seine Lage und die Zusammenhnge zwischen Bauteilabmessungen und
Festigkeitsbedingungen wichtige Erkenntnisse fr die Auslegung einer solchen Verbindung.
Eine weitere Restriktion ist die Voraussetzung eines ebenen Spannungszustandes. Zur
Verallgemeinerung helfen uns die Durchmesserquotienten
di
q= , (12.18)
da
df
qa = (12.19)
da
und
di
qi = . (12.20)
df
Zwischen ihnen besteht die direkte Beziehung
q = qi q a . (12.21)
Nach der Gestaltnderungs-Hypothese bestimmt sich die Vergleichspannung am offenen
dickwandigen Hohlzylinder fr das Auenteil

q a4
v ,a = p 3 + . (12.22)
1 q a2
und fr das Innenteil
2p
v ,i = . (12.23)
1 qi2
212 12 Berechnungen aus der Fertigungstechnik

Bei einer Vollwelle mit qi = 0 folgt


v ,i , 0 = p . (12.24)

Diese, den Belastungsfall charakterisierende Vergleichspannung darf eine durch


Sicherheitsbeiwerte behaftete Spannungsgrenze nicht berschreiten. Diese Grenze wollen wir
mit zul bezeichnen und als gegeben voraussetzen. Da in der Regel auch unterschiedliche
Materialien gefgt werden, definieren wir zustzlich die Beziehung
zul ,i
c= . (12.25)
zul ,a
Die in den Gleichungen 12,20 und 12.21 enthaltene Fugenpressung p darf diese zulssigen
Grenzwerte gerade erreichen. Daraus resultiert durch Einsetzen der zulssigen Spannungswerte
in die Gleichungen eine relative Fugenpressung fr das Auenteil von
p 1 q a2
= (12.26)
zul ,a 3 + q a4
und fr das Innenteil
p 1
zul ,i
=
2
(
1 q i2 c ) (12.27)

bzw.
p
= c. (12.28)
zuk ,a
Trgt man nun die relative Fugenpressung fr Auen- und Innenteil ber dem
Durchmesserquotienten auf einer logarithmisch unterteilten Abszisse auf, so erhlt man ein in
Bild 12-10 dargestelltes Diagramm.
Fr qa = qi = 1 ist die relative Fugenpressung logischerweise Null. Sie steigt dann mit
abnehmenden Durchmesserverhltnissen fr das Auen- und Innenteil entgegengesetzt an. Der
Schnittpunkt der beiden Kurven zeigt diejenigen Durchmesserverhltnisse an, bei denen
Auen- und Innenteil in gleichem Mae belastet werden. Hier ist die grtmgliche
Fugenpressung nach den vorhandenen Materialien erzielbar. Den so bestimmten
Fugendurchmesser bezeichnen wir im Sinne der Belastung als optimalen Fugendurchmesser.
Methodisch fhrt uns die Frage nach dem optimalen Fugendurchmesser zur Suche nach der
Wurzel einer Gleichung. Eine exakte Bestimmung ist nur fr algebraische Gleichungen der
allgemeinen Form bis zum 4. Grade mglich. Gleichungen hheren Grades oder transzendente
Gleichungen lassen sich nur mit indirekten Methoden lsen. Die numerische Mathematik bietet
unter dem Begriff Nullstellenproblem einige Methoden zur nherungsweisen Bestimmung an.
Unter diesen eignet sich die Gruppe der iterativen Verfahren besonders zum Einsatz eines
Digitalrechners. Dabei wird als Ausgang der Schtzwert fr eine Nullstelle gegeben. Diese
Schtzung muss nur fr das jeweilige Verfahren hinreichend genau sein. Mithilfe einer Regel
oder Vorschrift wird damit eine verbesserte Nherung gefunden. Diese ist wieder
Ausgangspunkt fr eine neuere Bestimmung einer noch besseren Nherung. Damit entsteht
eine Folge von Nherungslsungen. Der Prozess endet, wenn zwei Nherungslsungen mit der
12.3 Die belastungsoptimale Pressverbindung 213

gewnschten Genauigkeit nahe genug aneinander liegen. Sie werden praktisch als gleich
angesehen und gelten als die Wurzel.

p
zul
f (qa )
f (qi )

Bild 12-10
qa qi Relative
qa ,0 = qi ,0 Fugenpressung
In der Praxis ist
die Anwendung iterativer Methoden nicht ganz problemlos. Oft gibt es eine konvergente
Nherungsfolge nur in einem Teilgebiet. Wer eine Prozedur fr eine iterative Methode
schreibt, sollte dies beachten. Notfalls muss eine Vorschrift im Prozess den Abbruch nach einer
bestimmten Anzahl von Iterationen durchfhren.
Die nachfolgend benutzte Bisektions- oder Intervallhalbierungs-Methode liefert fr eine auf
einem Intervall stetige und glatte Funktion eine Nherung, die mit Sicherheit bei einer Wurzel
konvergiert. Vorgegeben ist ein Intervall, in dem sich eine Nullstelle befindet. Das Kriterium
hierfr ist ein unterschiedliches Vorzeichen von Funktionswerten der beiden Intervallgrenzen.
Dann wird das Intervall halbiert und es wird diejenige Intervallhlfte gewhlt, fr die das
gleiche Kriterium gilt, usw. Auf diese Weise nhern sich beide Intervallgrenzen langsam der
Nullstelle.
Unser optimaler Fugendurchmesser bestimmt sich aus der Gleichung
1 q a2 c

2
( )
1 qi2 = 0
3 + q a4
. (12.29)
Woraus nach Gleichung 12.19
1 q a2 c

2
(
1 qi2 ) = 0
3 + q a4
(12.30)
wird. Fr die Vollwelle folgt analog die einfachere Beziehung
1 q a2 c
= 0. (12.31)
3+ q 4
a
2
214 12 Berechnungen aus der Fertigungstechnik

Abschlieend bestimmen sich die bertragbaren Parameter Axialkraft und Drehmoment aus
den Gleichungen
Fa ,0 = d f , 0 l p 0 (12.32)

und

M d ,0 = d 2f , 0 l p 0 . (12.33)
2
Der nachfolgende Algorithmus bestimmt sowohl das Optimum als auch die Verhltnisse einer
abweichenden Lsung.

Tabelle 12-3 Algorithmus zur Bestimmung der Pressverbindung

Eingabe d a , di , l , zul , a , zul ,i ,

zul ,i
c=
zul ,a

di
q=
da

q0 = q
q1 = 1
q0 + q1
q2 =
2

c q
1 q22
2

f = 1
3 + q24 2 q2

f <0
Ja Nein
solange q1 = q2 q0 = q2
5
f >= 10

qa ,0 = q2

q
qi , 0 =
qa , 0
12.3 Die belastungsoptimale Pressverbindung 215

d f ,0 = qa ,0 d a

1 qa2,0
p0 = zul , a
3 + qa4, 0

Fa ,0 = d f , 0 l p 0


M d , 0 = d 2f ,0 l p 0
2
Ausgabe d f ,0 , p0 , Fa , 0 , M d ,0

Codeliste 12-2: Berechnung des optimalen Fgedurchmessers


216 12 Berechnungen aus der Fertigungstechnik

Die vorgegebenen Testdaten liefern das nachfolgend dargestellte Ergebnis.


12.3 Die belastungsoptimale Pressverbindung 217

Bild 12-11
Bestimmung des optimalen
Fugendurchmessers

bungsvorschlge
Nicht immer lsst sich der optimale Fugendurchmesser verwirklichen. Ergnzen Sie diese
Berechnung um die Eingabe eines gesetzten Fugendurchmessers. Versuchen Sie auerdem den
Spannungsverlauf nach Bild 12-10 nachzurechnen und ihn auch grafisch darzustellen.
Die Teile mssen durch Erwrmung des Auenteils oder Abkhlung des Innenteils gefgt
werden. Suchen Sie in der Literatur nach Vorgaben und ergnzen Sie diese Berechnung um die
notwendigen Angaben, um das Fgen durchzufhren.
Bei der Auslegung eines thermischen Pressverbandes gibt es zwei Formen. Bei einer rein
elastischen Auslegung sind die Fugenpressung und damit die bertragbaren Umfangs- bzw.
Axialkrfte erheblich eingeschrnkt. Eine elastisch-plastische Auslegung dagegen erlaubt es,
den Werkstoff besser auszunutzen. Auerdem wirken sich Toleranzen weniger stark auf die
Fugenpressung aus. Bei der zweiten Art der Auslegung wird die Fliegrenze des Werkstoffs
planmig berschritten. Der Grenzwert fr die Fugenpressung ist bei thermischen
Pressverbindungen oft mit dem Abfall der Werkstofffestigkeit gekoppelt. Die whrend des
Fgeprozesses niedrigere Streckgrenze fhrt dazu, dass der im Auenteil der Verbindung
entstehende Spannungszustand vom theoretisch zu erwartenden deutlich abweicht.
Die bertragungsfhigkeit der Pressverbindung wird eingeschrnkt, wenn die Fugenpressung
nicht in voller mglicher Hhe erreicht wird. Die Kenntnis der tatschlichen
Spannungsverhltnisse nach dem Fgevorgang ist daher wichtig fr eine sichere Auslegung.
Dazu gibt es auch verschiedene Anstze. Ein Auslegungsverfahren nach Kollmann setzt in
Anlehnung an die DIN 7190 und an die Theorie von Lundberg, einen ebenen
Spannungszustand, infinitesimale Verzerrungen und homogene, isotrope Werkstoffe mit
elastisch-idealplastischem Verhalten voraus.
218

13 Berechnungen aus der Getriebetechnik

Die Getriebetechnik als Fachgebiet des Maschinenbaus umfasst praktisch alle fr den
Ingenieur wichtigen Aspekte bei der Umsetzung von Krften und Momenten. Die Basis zur
Bestimmung der Lagenderung von Elementen bilden Berechnungen der Bahnen,
Geschwindigkeiten und Beschleunigungen bewegter Systeme. Aus der Bestimmung von
Krften resultieren ebenso Festigkeitsbetrachtungen wie auch Standzeitverhalten. Ich stelle mit
den nachfolgenden Themen den Festigkeitsaspekt in den Vordergrund und werde aber auf
meiner Homepage auch Berechnungen zu Bewegungsablufen abhandeln.

13.1 Ermittlung der Zahnflankentragfhigkeit geradverzahnter


Stirnrder
Die Grundlage dieser Nachrechnung ist die Theorie der Hertzschen Pressung. Danach
bestimmt sich die Oberflchenspannung zweier sich berhrender Flchen nach Bild 13-1 aus
der Gleichung
FE
= . (13.1)
( )
1 2 2rb

F
r1

Bild 13-1
r2
b Ersatzzylinder der
F Zahnrderpaarungen

In dieser Gleichung ist


1 1 1 r1 + r2
= + = (13.2)
r r1 r 2 r1 r2
die relative Krmmung der Verzahnung. Die Ableitung gilt nherungsweise bei relativ ruhig
beanspruchten Walzen und bei Druckspannungen unterhalb der Proportionalittsgrenze. Die
Hertzsche Pressung erfasst die wirkliche Beanspruchung der Zahnrder also nur annhernd.
13.1 Ermittlung der Zahnflankentragfhigkeit geradverzahnter Stirnrder 219

Angewandt auf den Eingriff eines Zahnradpaares bedeutet dies nun, dass im Berhrungspunkt
auf dem Betriebswlzkreis mit dem Radius rb nach Bild 13-2 die Evolventen durch die Radien
r1 und r2 angenhert werden. Bei der Annahme von Spielfreiheit auf den Betriebswlzkreisen
muss die Summe der Zahndicken gleich der Teilung auf den Betriebswlzkreisen sein
s b ,1 + s b , 2 = t b . (13.3)

r1
r2 Bild 13-2
Die Krmmungsradien
eines Eingriffspunktes

Die Zahndicke auf dem Betriebswlzkreis bestimmt sich aus


1
s b ,i = 2rb ,i + 2 xi tan (ev w ev ) , i=1,2. (13.4)
zi 2
Aus den Gleichungen (13.3) und (13.4) folgt durch Umstellung
x1 + x 2
ev w = 2 tan + ev . (13.5)
z1 + z 2
Damit ist der Radius des Betriebswlzkreises
cos w
rb ,i = r0,i , i=1,2. (13.6)
cos
Als Nebenprodukt fllt damit auch der Achsabstand ab
cos
a = (r0,1 + r0, 2 ) . (13.7)
cos w
Nach Bild 13-2 setzt man die Nherungsradien
ri = r0,i sin w , i=1,2. (13.8)

Mithilfe blicher Funktionstabellen lsst sich aus ev nach Gleichung (13.5) dann
bestimmen. Aber nicht immer ist eine Funktionstabelle zur Hand. Mit einer einfachen
Iterationsschleife kann dies auch erfolgen. Tabelle 13.1 zeigt den Berechnungsalgorithmus.
Danach zeigt Tabelle 13.2 den Algorithmus zur Ermittlung der Flankenbelastung
geradverzahnter Stirnrder.
220 13 Berechnungen aus der Getriebetechnik

Tabelle 13-1 Algorithmus zur Bestimmung von aus ev

Eingabe ev
= 5
i = 0
>= 10 5
i = i +

ev i = tan i i
ev i < ev
Nein Ja
ev i = ev
Nein Ja
i = i
Ausgabe
=
10

Bei Getrieben mit unterschiedlichenWerkstoffpaarungen gibt man einen gemeinsamen E-


Modul ein nach
2 E1 E 2
E= . (13.9)
E1 + E 2

Tabelle 13-2 Algorithmus zur Ermittlung der Flankenbelastung geradverzahnter Stirnrder

Eingabe E , , F , , b, x1 , x 2 , m, z1 , z 2

r0,1 = m z1
r0, 2 = m z 2
x1 + x 2
ev w = 2 tan + ev
z1 + z 2
Unterprogramm w = f (ev w )
cos w
rb ,1 = r0,1
cos
13.1 Ermittlung der Zahnflankentragfhigkeit geradverzahnter Stirnrder 221

cos w
rb , 2 = r0, 2
cos
cos
a = (r0,1 + r0, 2 )
cos w
r1 = r0,1 sin w
r2 = r0, 2 sin w
r1 r2
r=
r1 + r2

FE
=
(
1 2 2rb)
Ausgabe r0,1 , r0, 2 , rb ,1 , rb , 2 , a,

Fr die Umrechnung vom Gradma ins Bogenma und fr die Evolventen-Funktion benutzen
wir eine Funktion. Fr die iterative Umrechnung vom Evolventenwert in das zugehrige
Gradma bietet sich eine Prozedur an.

Codeliste 13-1: Berechnung der Zahnflankentragfhigkeit geradverzahnter Stirnrder


222 13 Berechnungen aus der Getriebetechnik
13.1 Ermittlung der Zahnflankentragfhigkeit geradverzahnter Stirnrder 223

Fr das integrierte Beispiel ergibt sich die in Bild 13-3 dargestellte Auswertung.
224 13 Berechnungen aus der Getriebetechnik

bungsvorschlge
Erstellen Sie die Berechnung zur Zahnfutragfhigkeit geradverzahnter Stirnrder.

Bild 13-3
Ergebnis der
Testauswertung

13.2 Lagerreaktionen beim Schneckengetriebe


Die zwischen Schnecke und Schneckenrad eines Schneckengetriebes wirkenden Krfte lassen
sich nach Bild 13-3 bezogen auf ein rumliches Koordinatensystem mit drei Komponenten
ausdrcken.

x
x F2 , y
L2 F2,x
2
F1,y d Fz F 2 ,z
L1 r1 Fx
F1,z
Fy
Fy
F3,z
Fx
L3 Fz
F 3, x r2
F3,y L4
z F4,x Bild 13-4
z 2 F4,y Krfte an
Schnecke und
Schneckenrad
13.2 Lagerreaktionen beim Schneckengetriebe 225

Wir wollen diese Komponenten


Fx , Fy , Fz
als gegeben voraussetzen. Sie bestimmen sich aus Festigkeitsnachweisen und
Konstruktionsmerkmalen, die wir ebenfalls als gegeben betrachten. Aus der
Gleichgewichtsbedingung fr die Schneckenwelle folgt
Fy r1
F1, y = Fx (13.10)
2 x
Fz
F1, z = (13.11)
2
F2, x = Fx (13.12)

Fy r1
F2, y = + Fx (13.13)
2 x
Fz
F2, z = (13.14)
2
Und fr die Schneckenradwelle
Fx
F3, x = (13.15)
2
Fy r2
F3, y = + Fz (13.16)
2 z
F3, z = Fz (13.17)

Fx
F4, x = (13.18)
2
Fy r2
F4, y = Fz (13.19)
2 z
Die Axialkrfte F2,x und F3,z mssen durch ein spezielles Axiallager aufgefangen werden. Da
sie gleich der Komponenten Fx und Fz sind, finden sie bei unserer weiteren Betrachtung keine
Verwendung. Fr die Radiallager L1 L4 bestimmt sich die resultierende Lagerkraft
allgemein bei zwei Komponenten F1 und F2 aus

FR = F12 + F22 . (13.20)


Bei Eingabe der Kraftkomponenten muss die Richtung (d. h. das Vorzeichen) Beachtung
finden. Die Biegespannung der Schneckenwelle bestimmt sich nach der Grundgleichung
Mb
b = (13.21)
W
226 13 Berechnungen aus der Getriebetechnik

durch Einsetzen der vorhandenen Gren. Das Biegemoment in der x-y-Ebene ist maximal
x r
M bz = Fy + 1 Fx (13.22)
4 z
und das in der x-z-Ebene
x
M by = Fz . (13.23)
4
Daraus bestimmt sich ein resultierendes Biegemoment von

M bR= M bz2 + M by2 . (13.24)

Das Widerstandsmoment einer Vollwelle ist



W = d3. (13.25)
32
Zustzlich tritt durch die Axiallager eine Zug- bzw. Druckspannung auf. Sie ist
Fx
z ,a = . (13.26)
2
d
4
Bleibt als dritte Belastungsart noch eine Torsionsspannung von
T
t = . (13.27)
Wp
Das Torsionsmoment darin hat die Gre
T = Fz r1 (13.28)
und das polare Widerstandsmoment der Welle ist

Wp = d3- (13.29)
16
Nach der Gestaltnderungshypothese bestimmt sich fr die drei Belastungsarten eine
Vergleichsspannung

V = ( b + z ,d ) + 2 t2 .
2
(13.30)

Mit dem Massentrgheitsmoment der Schneckenwelle von



I= d4 (13.31)
64
Ergibt sich abschlieend deren maximale Durchbiegung mit den Anteilen der Ebenen
Fy x 3
fy = (13.32)
48 EI
13.2 Lagerreaktionen beim Schneckengetriebe 227

und
Fz x 3
fz = (13.33)
48EI
aus

fR = f y2 + f z2 . (13.34)

Da es sich beim Vorgang zur Bestimmung der Lagerbelastung um eine einfache Folge von
Formeln handelt, erspare ich mir das Struktogramm und zeige sofort die Codeliste.

Codeliste 13-2: Berechnung der Lagerreaktionen beim Schneckengetriebe


228 13 Berechnungen aus der Getriebetechnik
13.2 Lagerreaktionen beim Schneckengetriebe 229
230 13 Berechnungen aus der Getriebetechnik

Die Ergebnisse zu den Testdaten finden Sie in Bild 13-6.

bungsvorschlge
Erweitern Sie dieses Programm um weitere geometrische und festigkeitsorientierte
Berechnungen. Als da sind Steigungshhe, Steigungswinkel, Mittenkreisdurchmesser,
Zahnhhen, Kopfhhen, Fuhhen, Eingriffswinkel, Kopfkreisdurchmesser,
Fukreisdurchmesser, Schneckenlnge, Umfangsgeschwindigkeit, Gleitgeschwindigkeit,
Mittenkreisdurchmesser, Profilverschiebung, sowie eine Tragfhigkeitsberechnung. Zustzlich
lassen sich dann noch Umfangskrfte, Drehmomente und Wirkungsgrad berechnen.
Befassen Sie sich zur weiteren bung mit einem Nockenantrieb. Die einfachste Form ist eine
Scheibe, die exentrisch zur Achse angebracht ist. Durch unterschiedliche Nockenformen
knnen unterschiedliche Bewegungen erzeugt werden. Die Umrisslinie eines Nockens ist somit
ein Bewegungsprogramm. Entwerfen Sie einen Algorithmus fr unterschiedliche
Anforderungen und setzen Sie ihn um.

Hubbewegung

Hub

Bild 13-5
Nockenantrieb
Drehbewegung
13.2 Lagerreaktionen beim Schneckengetriebe 231

Bild 13-6
Auswertung
der Testdaten
232

14 Technische Dokumentation mit Excel

Eine Technische Dokumentation besteht in der Regel aus einer Vielzahl von Dokumenten. Je
nach Art und Inhalt lsst sie sich in verschiedene Bereiche unterteilen. Von reinen
Beschreibungen als generellen Text, ber Aufstellungen mit Hinweisen und Checklisten mit
Vermerken, bis hin zu Technischen Darstellungen. Auch die Technischen Berechnungen
(Gegenstand dieses Buches) gehren dazu. In diesem Kapitel mchte ich erste Anregungen
geben, ohne dabei auf die vielen Regeln und Normen zu achten, die es fr diese
Dokumentationsart gibt.
Zu den Aufgaben eines Ingenieurs gehrt neben der Berechnung und Konstruktion von
Systemen auch die Verwaltung von Informationen. Die nachfolgenden Betrachtungen dienen
zum Aufbau von Informationsstrukturen.

14.1 Aufteilung von Informationen (Informationsmatrix)


Informationstext lsst sich auf einfache Weise zeilenorientiert und/oder spaltenorientiert
ordnen. Whrend meistens zeilenweise eine Aufzhlung erfolgt, werden spaltenweise
Begrifflichkeiten sortiert. Betrachten wir nachfolgend Beispiele solcher Strukturen.

Beispiel: Beschreibungen
Anforderungen an ein Projekt beginnen meist mit einer Beschreibung. Sie enthlt bereits erste
Strukturen. So enthlt eine Beschreibung Anforderungen, Wnsche und Kommentare. In
solchen Fllen bedient man sich einer Tabelle, die diese Strukturen voneinander abgrenzt.

Bild 14-1 Einfacher Aufbau einer Beschreibung


14.1 Aufteilung von Informationen (Informationsmatrix) 233

Dazu eignen sich Word oder andere Anwendungen. Aber ganz besonders auch Excel. Denn
erst zusammen mit VBA lassen sich relativ mhelos Auswertungen anhngen. So entsteht
schnell ein kleines Regelwerk. Fhrt man eine Spalte mit der Art des Eintrags an, so kann man
ber Filter selektieren und jeweils nur die mageblichen Eintrge zeigen.
Wir betrachten dies an einem einfachen Beispiel. Eine Tabelle soll als Anforderungsliste
gestaltet werden. Dazu kennzeichnen wir in der einfachsten Form drei Spalten mit den
berschriften: Lfd. Nr., Beschreibung und Typ. Whrend die Spalte A eine laufende Nummer
bekommt, enthlt die Spalte B eine Beschreibung, die Kommentar, Anforderung oder Wunsch
sein kann. Diese Art der Beschreibung kennzeichnen wir in der Spalte C mit Typ. Damit in
Spalte C auch wirklich nur zulssige Eintrge stattfinden, wird ber Daten/Datenberprfung
(Bild 14-1) eine Liste mit zulssigen Werten festgelegt. Wichtig ist, dass Sie zuvor die Spalte
C markiert haben.
Nun knnen wir einige Eintrge vornehmen. Doch es werden schnell viele und dann hilft die
Filterfunktion weiter. Mit der Funktion Daten/Filtern ist es anschlieend mglich nur die
gewnschten Eintrge einer Spalte anzuzeigen.

Bild 14-2 Einfacher Beschreibungsaufbau mit Schaltflchen

Die nachfolgenden Prozeduren erstellen einen Autofilter fr die aktuelle Position im aktuellen
Tabellenblatt, bzw. deaktivieren den Autofilter.
234 14 Technische Dokumentation mit Excel

14.2 Beziehungen zwischen Informationen (Relationale Datenbank)


Relationale Datenbanken bestehen aus beliebig vielen Einzeltabellen, die in beliebiger Art und
Weise miteinander verknpft werden knnen. Die Informationen werden in Spalten und Zeilen
gespeichert. Wobei die Zeilen die Datenstze enthalten und die Spalten die Attribute. Damit es
nicht zu Doppeldeutigkeiten kommt, drfen die Spalten als auch die Zeilen nur einmal
vorkommen. Alle Daten einer Spalte mssen vom gleichen Datentyp sein.
Da relationale Datenbanken einige Voraussetzungen in Bezug auf die Relation der Daten und
deren Extraktion erfllen, sind die besonders leistungsfhig. Eine einzelne Datenbank kann
daher auf unterschiedlichste Art betrachtet werden. Wichtig ist auch, dass eine relationale
Datenbank ber mehrere Tabellen ausgedehnt werden kann. Dadurch knnen die Attribute
mehrerer Datenbanken miteinander kombiniert werden. Eine relationale Datenbank kann ber
Ordnungskriterien Selektionen in den Spalten vornehmen.

Beispiel: Aufstellungen
Aufstellungen sind in jeder Form berall einsetzbar. Angefangen von einer Liste relevanter
Personen und Organisationen, die am Projekt beteiligt sind, mit deren Daten wie Adresse,
Telefonnummer, E-Mail, etc. bis hin zu einer Projektbersicht, in der alle Dokumente
aufgefhrt werden. Auch hier lassen sich die bereits beschriebenen Mechanismen hervorragend
einsetzen. Ein weiteres Hilfsmittel ist der Einsatz von Links, mit denen sich die aufgefhrten
Dokumente direkt per Mausklick aufrufen lassen. Vorausgesetzt, die Dokumentation wird
gepflegt.
Auch dazu wieder ein kleines Beispiel zur Einfhrung. In der nachfolgenden Tabelle werden
die Programme zum Buch aufgelistet. Durch einen einfachen Eintrag auf den Link wird das
entsprechende Dokument direkt geffnet.

Bild 14-3 Einfache Aufstellung von Dokumenten und deren Verlinkung

Den Linkeintrag erhlt man fr die markierte Zelle ber die Funktion Einfgen/Hyperlink. In
dem sich ffnenden Dialogfenster kann ber Suchen in: die entsprechende Datei ausgewhlt
werden. Noch ein kleiner Trick am Rande. Dadurch, dass ich in die Zellen der
Spaltenberschriften nach dem Text mit ALT+RETURN eine Zeilenumschaltung erzeugt habe,
wird der Text auch nicht mehr von den Schaltflchen (wie in Bild 14-2) verdeckt.
Hyperlinks werden unter VBA als Listing angesprochen. Als Beispiel fr das Ansprechen eines
Hyperlinks, wird im nachfolgenden Code der zweite Hyperlink im Bereich A1:C10 aktiviert:
14.3 Verknpfungen mit Objekten (Entity-Relationship Model) 235

Oft verwendet man auch Shapes (Bilder, Symbole) fr einen Hyperlink. Shapes knnen
allerdings nur einen Hyperlink besitzen. Als Beispiel wird der Hyperlink des zweiten Shapes
im dritten Worksheet aktiviert:

14.3 Verknpfungen mit Objekten (Entity-Relationship Model)


Relationale Datenbanken lassen in Verbindungen mit Objekten eine ausschnittweise
Darstellung realer Welten zu. Zu den Verknpfungen von Attributen der Datenbanken kommen
die Methoden der Objekte hinzu.

Beispiel: Checklisten
Checklisten sind ein wichtiges Kontrollorgan. Sie dienen der berwachung ablaufender
Prozesse und werden daher stndig angefasst. Eine bersichtliche Handhabung steht hier im
Vordergrund. Auch hier ist Excel mit seinen Formatierungsmglichkeiten ein hervorragendes
Hilfsmittel.

Bild 14-4 Einfacher Strukturaufbau einer Checkliste

Die Verwaltung von Datumsformaten erlaubt ein zeitliches Protokoll und die Einteilung in
verschiedene Zustnde, die sich damit auch farblich kennzeichnen lassen. Checklisten sind der
erste Schritt zum Management. Egal, ob es sich dabei um ein einfaches Zeitmanagement oder
um ein komplexeres Projektmanagement handelt.
Und auch dazu ein einfaches Beispiel. Bild 14-4 zeigt eine Checkliste zur Erstellung der
einzelnen Kapitel dieses Buches.
Ein klassisches Beispiel fr eine Checkliste ist die Nutzwertanalyse. Sie priorisiert
verschiedene Lsungswege eines Problems durch Gewichtung der Methoden zur Erreichung
des Ziels. Das in Bild 14-5 dargestellte Beispiel zeigt die Nutzwertanalyse fr 4 Maschinen.
Natrlich ist die Liste der Kriterien in Wirklichkeit viel grer.
236 14 Technische Dokumentation mit Excel

Bild 14-5 Beispiel fr eine Nutzwertanalyse von Maschinen

Die Nutzwertanalyse erffnet einerseits einen anderen Blickwinkel auf diejenigen Kriterien,
die schlielich zur Entscheidung fhren und verhindert darber hinaus, dass wichtige
Argumente vergessen werden. Dadurch trgt sie sehr gut dazu bei, eine bessere
Entscheidungssicherheit zu erreichen.

14.4 Technische Darstellungen


Technische Darstellungen sind im klassischen Fall Technische Zeichnungen. Ob es sich nun
um eine bauliche Darstellung, eine Darstellung technischer Funktionen oder Teile, eine
elektrische, hydraulische, pneumatische, regelungstechnische oder andere Form von
Organisation handelt. Auch hier leistet Excel wieder gute Hilfe, da es einfacher ist, zunchst
eine Liste der darzustellenden Teile anzufertigen. Erst danach sollte man mit der Erstellung der
eigentlichen Zeichnung beginnen. Die Excel-Liste kann in die Form einer Stckliste
bergehen. Zur Erstellung einer Zeichnung lsst sich ber VBA auch Visio anbinden. Die
Beschreibung dieses Weges wrde an dieser Stelle aber zu weit fhren. Sie finden auch dieses
Thema auf meiner Website. Aber auch Excel bietet bei aller tabellenorientierten Struktur doch
einige grafische Mglichkeiten.
Technische Darstellungen unterliegen oft auch einem Raster. Es liegt also nahe, Schaltungen
aus Mosaikbausteinen zu erstellen. Zum Beispiel in der Hydraulik. Das nachfolgende Bild
zeigt die Methodik.
14.5 Visualisierung von Daten 237

Bild 14-6
Erstellung eines Schaltplans aus
finiten Grafik Tabs

14.5 Visualisierung von Daten


14.5.1 Das Control TreeView
Eine wichtige Form der Visualisierung von Daten habe ich mehrfach in den Anwendungen
gezeigt, die Diagrammform. Aber es gibt noch eine Vielzahl von Mglichkeiten, so dass hier
nur einige markante dargestellt werden sollen. Im Vordergrund steht dabei die Verknpfung
von Tabelleninhalten mit den Darstellungen. Einfache Darstellungen aus den Autoformen
knnen Sie selbst ber den Makrorekorder aufzeichnen und dann programmieren.
Stellvertretend fr besondere Formen von Aufstellungen betrachten wir eine Baumstruktur, wie
wir sie z. B. auch vom Windows Explorer kennen. Zu den vielen Steuerelementen die
Microsoft anbietet, gehrt das TreeView Control, dass diese Struktur zur Verfgung stellt. Es
macht Sinn, fr grafische Steuerelemente eine eigene UserForm anzulegen.
Diese UserForm FrmTreeView sehen wir in Bild 14-7. Wenn wir dazu die Steuerelemente
einblenden, dann bekommen wir nur eine geringe Anzahl davon dargestellt. Microsoft bietet
aber noch viele Steuerelemente mehr. Erst wenn wir mit der rechten Maustaste auf eine freie
Stelle der Werkzeugsammlung klicken, dann ffnet sich eine neue Welt. Es wird ein
Dialogfeld eingeblendet, auf dem sich weitere Steuerelemente aufrufen lassen. Im Feld der
zustzlich verfgbaren Steuerelemente, setzen wir ein Kreuz in das Auswahlfeld von Microsoft
TreeViewControl.
Nun verfgen wir ber das TreeView-Steuerelement und knnen es auf der UserForm
plazieren. Der nachfolgende Code gehrt zur UserForm. Es handelt sich dabei um Prozeduren
zur Nutzung einer Darstellung. Wir gehen davon aus, dass das Root-Verzeichnis fr unseren
Datenbaum auf dem aktuellen Excel-Sheet in der Zelle A1 steht.
238 14 Technische Dokumentation mit Excel

Bild 14-7 Auswahl weiterer Steuerelemente

Codeliste 14-1: Prozeduren in der UserForm FrmTreeView


14.5 Visualisierung von Daten 239

Die Prozeduren, die diese Struktur beschreiben, setzen wir in ein zustzliches Modul
ModTreeView. Nachfolgend sehen Sie den entsprechenden Code mit Kommentaren.
Zustzlich werde ich im Anschluss einige Mechanismen besprechen.

Codeliste 14-2: Prozeduren im Modul ModTreeView


240 14 Technische Dokumentation mit Excel
14.5 Visualisierung von Daten 241
242 14 Technische Dokumentation mit Excel

Bild 14-8
Darstellung einer
Baumstruktur im
TreeView Control

Im Vorspann werden einige API-Funktionen verwendet. Um diese sinnvoll nutzen zu knnen


sind die zuvor definierten Datenstrukturen erforderlich. Der Aufruf ber die Prozedur
ShowFolderTree zeigt das in Bild 14-8 dargestellte Ergebnis.

14.5.2 HTML
HTML ist die Abkrzung von HyperText Markup Language und ist im Moment das wichtigste
Dateiformat fr die Verffentlichung von (technischen) Texten im Internet. HTML strukturiert
Texte und bindet Grafiken sowie andere Medienformate per Referenz ein. HTML ist eine
sogenannte Auszeichnungssprache (Markup Language) und stammt von der allgemeineren
Standard Generalized Markup Language, kurz SGML, ab. Mit HTML werden die logischen
Elemente eines Textdokuments wie berschriften, Abstze, Listen, Tabellen und Formulare zu
definieren. In HTML knnen auerdem Verweise (Hyperlinks) zu bestimmten Stellen
innerhalb Ihres Dokuments (Anker) oder zu jeder beliebigen Webseite erstellen.
HTML-Dokumente werden mit sogenannten Webbrowsern (z. B. Firefox, Opera, Internet
Explorer, Netscape) angezeigt. Durch die groe Verbreitung der Browser, auch fr
verschiedene Betriebssysteme, kann HTML von praktisch jedem modernen Computer
dargestellt werden.
Die Erstellung von HTML-Dokumenten - das Schreiben des so genannten Quelltextes - ist
nicht an eine bestimmte Software gebunden. Grundstzlich kann mit jedem Texteditor, der
14.5 Visualisierung von Daten 243

reine Textdateien erzeugen kann, eine HTML-Datei erstellt werden. Voraussetzung ist, dass die
Datei mit der Endung .html oder .htm abgespeichert wird.
Es knnen zwei grundstzlich verschiedene Gruppen von Editoren, die sich zur Erstellung von
HTML-Dokumenten eignen, unterschieden werden: Editoren, die eine manuelle Eingabe des
Quelltextes erfordern (bei solchen mit grerem Funktionsumfang wird die Eingabe durch
farbliches Absetzen, automatisches Vervollstndigen u. . untersttzt) und Editoren, die die
Gestaltung des HTML-Dokuments auch ber eine grafische Benutzeroberflche erlauben und
den Quelltext automatisch erzeugen (sogenannte WYSIWYG -Editoren: "What You See Is
What You Get").
Als Beispiel wird zunchst eine Kreisdarstellung wie in Bild 14-9 erzeugt, die danach in den
HTML-Text eingebunden werden soll.

Bild 14-9
Bitmap Kreis-Grafik

Ein Webbrowser wird geffnet (hier der Internet Explorer) und der Text aus Bild 14-10 dort
eingetragen. Er beinhaltet neben einigen Formalismen die Darstellung des Kreises und danach
die Angabe des Parameters und die Formel zur Berechnung des Flcheninhaltes.

Bild 14-10
HTML-Text zur
Kreisdarstellung

Gespeichert wird die Datei unter dem Namen Kreis.bmp und danach mit einem Doppelklick
erneut aufgerufen. Der HTML-Text wird wie in Bild 14-11 dargestellt.
244 14 Technische Dokumentation mit Excel

Bild 14-11
Darstellung der HTML-
Datei im Internet Explorer

Auch Excel verfgt ber die Mglichkeit, HTML-Dateien einzulesen. Das eingelesene Beispiel
hat dann die Oberflche wie in Bild 14-12 dargestellt. Dabei wird die Darstellung als
Grafikelement behandelt, whrend die Textteile Zellen zugeordnet werden.

Bild 14-12
Darstellung der HTML-
Datei in Excel
14.5 Visualisierung von Daten 245

XHTML
Mit der immer weiter voranschreitenden Verbreitung von XML als plattformunabhngiges
Datenaustauchformat, ich werde nachfolgend darauf eingehen, wurde eine Weiterentwicklung
des HTML-Standards auf Basis der XML-Syntax entwickelt: XHTML - Extensible Hypertext
Markup Language. Sind im HTML-Standard noch grafische Auszeichnungen wie Schrift- oder
Hintergrundfarben erlaubt, wird mit der neuen XHTML-Version gnzlich darauf verzichtet und
stattdessen ausschlielich die Verwendung von Cascading Stylesheets (CSS) fr diesen Zweck
nahegelegt. So wird eine vollstndige Trennung der logischen, ausgabeunabhngigen
Datenstruktur vom grafischen Aussehen eines Dokuments erreicht - ganz im Sinne der XML-
Philosophie.

CSS
Cascading Stylesheets werden verwendet, um die Darstellung eines strukturierten Dokuments
zu definieren. Es knnen einzelnen HTML- oder XHTML-Elementen spezifische Klassen oder
Identitten zugewiesen werden. Diese legen genau fest, wie und wo das jeweilige Element
angezeigt werden soll. Es gibt grundstzlich drei verschiedene Arten ein CSS zu verwenden:
Mit der Inline-Methode. Im HTML- oder XHTML-Dokument wird innerhalb eines jeden
Elements der Stil mittels style -Attribut angegeben.
Zentral innerhalb eines Dokuments. Im Kopf-Bereich eines Dokuments werden alle in
diesem Dokument verwendeten Stile definiert.
Zentral in einer eigenstndigen CSS-Datei (Dateiendung: .css) werden alle fr ein Projekt
verwendeten Stile definiert. Diese Datei kann dann von mehreren Dokumenten importiert
werden.
Zu bevorzugen ist dabei vor allem bei greren Projekten die dritte Variante, da die
Darstellung betreffende nderungen an zentraler Stelle und einmalig vorgenommen werden
knnen.

14.5.3 XML
Sowohl HTML- als auch XML-Dokumente enthalten Daten, die von Tags umgeben sind, aber
da hren die Gemeinsamkeiten zwischen den beiden Sprachen auch schon auf.
Bei HTML definieren die Tags die Darstellungsweise der Daten. Zum Beispiel, dass ein
Wort kursiv dargestellt wird, oder dass ein Absatz die Schriftart Arial hat.
Bei XML definieren die Tags die Struktur und die Bedeutung der Daten.
Durch das Beschreiben von Struktur und Bedeutung der Daten knnen diese Daten auf jede
erdenkliche Weise wiederverwendet werden. Sie knnen ein System dazu verwenden, Ihre
Daten zu generieren und mit XML-Tags zu versehen, um die Daten dann in einem anderen
System weiter zu verarbeiten, wobei weder die Hardwareplattform noch das Betriebssystem
eine Rolle spielt. Diese Portabilitt ist der Grund, warum XML inzwischen eine der
beliebtesten Technologien fr den Datenaustausch ist.
Es ist nicht mglich, HTML anstelle von XML zu verwenden. Es knnen jedoch XML-Daten
mit HTML-Tags umgeben und so auf einer Webseite anzeigt werden.
HTML ist auf eine vordefinierte Gruppe von Tags beschrnkt, die von allen Benutzern
gemeinsam verwendet wird.
Mit XML kann jedes beliebige Tag erstellt werden, das zum Beschreiben der Daten und der
Datenstruktur bentigt wird.
246 14 Technische Dokumentation mit Excel

Als einfaches Beispiel betrachten wir die Informationen zu geometrischen Formen. Die Daten
lassen sich in einer Baumstruktur grafisch darstellen.

Geometrische Formen

Rechteck Dreieck Kreis

Lnge SeiteA Radius

Breite SeiteB Umfang

Umfang SeiteC Flche Bild 14-13


Flche Umfang Beispiel Baumstruktur
geometrischer Formen und
Flche ihrer Attribute

Diese Baumstruktur lsst sich mit dem von der Microsoft-Website kostenlos herunterladbaren
Programm XML Notepad 2007 realisieren.

Bild 14-14
Beispiel Baumstruktur im
XML Notepad
14.5 Visualisierung von Daten 247

In diesem Programm erhlt man aus der Eingabe dann auch die XML-Datenstruktur.

Bild 14-15
Beispiel XML
Datenbeschreibung

Diese Mglichkeit, Tags zu erstellen, die fast jede Art von Datenstruktur definieren knnen,
macht XML so flexibel.

Wohlgeformtheit
Kommen wir zur eigentlichen Aufgaben von XML-Strukturen, dem Datentausch. XML-Daten
lassen sich nur dann sinnvoll verwenden und das heit austauschen, wenn sie wohlgeformt
sind. Wohlgeformte XML-Daten gehen mit einer Gruppe sehr strenger Regeln konform, denen
XML unterliegt. Wenn Daten nicht regelkonform sind, funktioniert XML nicht.
Uns interessiert an dieser Stelle natrlich vorwiegend die Verwendung in Excel. Und in der Tat
lsst sich die aus dem Notepad gespeicherte XML-Datei auch in Excel einlesen. Doch dabei
erscheint der Hinweis auf ein Schema (Bild 14-16), ber das wir bisher nicht gesprochen
haben.

Bild 14-16
Hinweis auf ein
fehlendes
Schema

Neben wohlgeformten, mit Tags versehenen Daten verwenden XML-Systeme i. A. noch zwei
weitere Komponenten: Schemas und Transformationen. Dazu spter mehr. Die Daten werden
nacheinander in Spalten abgelegt.
248 14 Technische Dokumentation mit Excel

Bild 14-17
Importierte XML-Daten in
der Tabelle

Unter dem Menpunkt Entwicklertools/XML/Quelle wird die bereits bekannte XML-Struktur


eingeblendet.

Bild 14-18
Die XML-Struktur in Excel

Mit dem Menpunkt Entwicklertools/XML/Quelle lassen sich diese Daten natrlich auch
wieder exportieren. Wenn wir uns diese Daten dann wieder in XML Notepad ansehen, wird
deutlich, was Excel zur Vollstndigkeit ergnzt hat (Bild 14-19) und worauf wir bereits beim
Einlesen hingewiesen wurden.

Bild 14-19
Kompletter
Aufbau der
XML-Datei.

Ein XML-Dokument besteht aus drei Teilen (Bild 14-20). Die ersten beiden Teile sind
optional. Im sogenannten Prolog, der Einleitung des XML-Dokuments befindet sich die
14.5 Visualisierung von Daten 249

Processing Instruction (Verarbeitungsanweisung), kurz PI und im zweiten Teil die Document


Type Definition, kurz DTD. Erst danach folgen die eigentlichen Daten.
Excel hat mit dem Eintrag in der PI darauf hingewiesen nach welcher Version der
internationalen Regelung und mit welchem Zeichensatz die Daten interpretiert werden. Da
Excel in unserem Beispiel kein Schema gefunden hatte, erfolgte hier der automatische Eintrag,
dass keine DTD vorliegt; also standalone=yes. PI und DTD zusammen werden als Prolog
bezeichnet.

PI <?xml version="1.0"?>

DTD
optional intern <!DOCTYPE ....>
oder extern

Bild 14-20
DATEN <TAG>....</TAG>
Struktur eines XML-
Dokuments

Es wrde zu weit fhren, hier auf DTDs einzugehen. Das berlasse ich dem interessierten
Leser. Auch die Zeilen ber das Thema XML sind bestenfalls eine bersicht.

Schemas
Excel hat in dem Beispiel noch einen weiteren Eintrag automatisch vorgenommen. Es ist ein
Link auf die Website von W3C, dem World Wide Web-Consortium. DTDs haben den groen
Nachteil, dass sie viele Dinge aus der Datenbanktechnik nicht beschreiben knnen. W3C hat
als Lsung das XML-Schema hervorgebracht.
Schemas ermglichen einem Parser, so nennt man den XML-interpretierenden Teil einer
Anwendung, Daten zu berprfen. Sie bilden das Gerst fr das Strukturieren von Daten,
indem sichergestellt wird, dass die Datenstruktur sowohl fr den Entwickler der Datei, als auch
fr andere Anwender Sinn ergibt. Wenn ein Anwender beispielsweise ungltige Daten eingibt,
wie Text in ein Datumsfeld, kann das Programm den Benutzer auffordern, die richtigen Daten
einzugeben. Solange die Daten in einer XML-Datei mit den Regeln eines bestimmten Schemas
konform gehen, knnen die Daten in jedem Programm, das XML untersttzt, mithilfe dieses
Schemas gelesen, interpretiert und verarbeitet werden.
Ein Schema ist einfach auch nur eine XML-Datei, die die Regeln dazu enthlt, was sich in
einer XML-Datendatei befinden kann. Whrend XML-Datendateien die Erweiterung XML
verwenden, haben Schemadateien die Dateinamenerweiterung XSD.
Wenn die Daten in einer XML-Datei mit den in einem Schema vorgegebenen Regeln konform
gehen, werden die Daten als gltig angesehen. Das berprfen einer XML-Datendatei
bezglich eines Schemas wird als Validierung oder berprfung bezeichnet. Schemas bieten
den groen Vorteil, dass sie zum Verhindern beschdigter Daten beitragen knnen. Auerdem
erleichtern sie das Auffinden beschdigter Daten, da XML nicht mehr funktioniert, wenn ein
Problem auftritt.
250 14 Technische Dokumentation mit Excel

Transformationen
Wie zuvor erwhnt, bietet XML leistungsfhige Mglichkeiten zum Verwenden oder
Wiederverwenden von Daten. Der zum Wiederverwenden von Daten eingesetzte Mechanismus
wird XSLT (Extensible Stylesheet Language Transformation) oder einfach Transformation
genannt. Wenn es um Transformationen geht, wird XML richtig interessant.
Mithilfe von Transformationen knnen Daten zwischen Backendsystemen wie Datenbanken
ausgetauscht werden. Ein grundlegendes XML-System besteht aus einer Datendatei, einem
Schema und einer Transformation. In der folgenden Abbildung wird gezeigt, wie solche
Systeme i. A. funktionieren. Die Datendatei wird bezglich des Schemas berprft und dann
mithilfe einer Transformation gerendert und auf andere Weise wiedergegeben. Bild 14-21 gibt
noch einmal einen berblick zum Thema XML.

XML

XML
Parser XSLT oder
HTML
oder
Text
XSD

Bild 14-21
XSL
XML und
Transforma
tion

Was dieses Konzept noch praktischer macht, ist die Tatsache, dass immer mehr Anbieter
Transformationen fr bestimmte Aufgaben erstellen. Wahrscheinlich knnen Sie in absehbarer
Zukunft entweder Transformationen herunterladen, die genau Ihren Anforderungen
entsprechen, oder Transformationen, die Sie zu diesem Zweck anpassen knnen. Daher werden
die Kosten fr XML im Laufe der Zeit sinken.

bungsvorschlge
Suchen Sie Beispiele zu den unterschiedlichen Dokumentationsarten und schreiben Sie dazu
Hilfsprogramme. Das Thema XML empfehle ich meinen Lesern mit besonderem Nachdruck,
da diese Art der Dokumentation in den nchsten Jahren eine rasante Ausbreitung erfahren wird.
Zum Thema XML empfehle ich insbesondere die Betrachtung der Funktionen unter
Entwicklertools, sowohl in Excel wie auch in den anderen Office Programmen.
Suchen Sie nach einer Mglichkeit, durch eine Transformation die Werte fr Umfang und
Inhalt zu berechnen.
251

Literaturverzeichnis

[1] Bamberg / Bauer / Krapp, Statistik-Arbeitsbuch, Oldenbourg Verlag, 2007


[2] Bamberg / Baur, Statistik, Oldenbourg Verlag, 2007
[3] Braun, Grundlagen der Regelungstechnik, Hanser Verlag, 2005
[4] Brommund / Sachs / Sachau, Technische Mechanik, Oldenbourg Verlag, 2006
[5] Cerbe / Wilhelms, Technische Thermodynamik, Hanser Verlag, 2008
[6] Degner / Lutze / Smejkal, Spanende Formung, Hanser Verlag, 2002
[7] Drrscheidt / Latzel, Grundlagen der Regelungstechnik, Teubner Verlag, 1993
[8] Fritz / Schulze, Fertigungstechnik, Springer Verlag, 2007
[9] Geering, Regelungstechnik, Springer Verlag, 2003
[10] Grassmann / Widmer / Sinn, Einfhrung in die thermische Verfahrenstechnik, Verlag Walter de
Gruyter, 1997
[11] Gross / Hauger, Technische Mechanik, Springer Verlag, 3. Bde, 2006 2008
[12] Haase / Garbe, Elektrotechnik , Springer Verlag, 1998
[13] Hansmann, Industrielles Management, Oldenbourg Verlag, 2006
[14] Heimann / Gerth / Popp, Mechatronik, Hanser Verlag, 2007
[15] Hering / Martin / Stohrer, Physik fr Ingenieure, VDI Verlag, 2007
[16] Hesse, Angewandte Wahrscheinlichkeitstheorie, Teubner Verlag, 2003
[17] Hinzen, Maschinenelemente, Oldenbourg Verlag, 2 Bde, 2001, 2007
[18] Holzmann / Meyer / Schumpich, Technische Mechanik , Teubner Verlag, 3 Bde, 2006, 2007
[19] Jehle, Produktionswirtschaft, Verlag Recht und Technik, 1999
[20] Johnson, Statistics, VCH Verlag, 1996
[21] Kahlert, Simulation technischer Systeme, Vieweg Verlag, 2004
[22] Kalide, Energieumwandlung in Kraft- und Arbeitsmaschinen, Hanser Verlag, 2005
[23] Kmper, Grundkurs Programmieren mit Visual Basic, Vieweg Verlag, 2006
[24] Kerle / Pittschellis / Corves, Einfhrung in die Getriebelehre, Teubner Verlag, 2007
[25] Krn / Weber, Das Excel-VBA Codebook, Addison-Wesley Verlag, 2002
[26] Linse / Fischer, Elektrotechnik fr Maschinenbauer, Teubner Verlag, 2005
[27] Mller / Ferber, Technische Mechanik fr Ingenieure, Hanser Verlag, 2004
[28] Nahrstedt, Algorithmen fr Ingenieure, Vieweg Verlag, 2006
[29] Nahrstedt, Festigkeitslehre fr AOS Rechner, Vieweg Verlag, 1981
252 Literaturverzeichnis

[30] Nahrstedt, Programmierren von Maschinenelementen, Vieweg Verlag, 1986


[31] Nahrstedt, Statik-Kinematik-Kinetik fr AOS Rechner, Vieweg Verlag, 1986
[32] Niemann / Neumann, Maschinenelemente, Springer Verlag, 3 Bde, 2005, 1989, 1986
[33] Oertel jr. /Hrsg. /, Prandtl - Fhrer durch die Strmungslehre, Vieweg+Teubner Verlag, 2008
[34] Ose, Elektrotechnik fr Ingenieure, Hanser Verlag, 2008
[35] Richard / Sander, Technische Mechanik, Statik, Vieweg+Teubner Verlag, 2008
[36] Roloff / Matek, Maschinenelemente, Vieweg Verlag, 2007
[37] Schade / Kunz, Strmungslehre, Verlag Walter de Gruyter, 2007
[38] Schmidt, Starthilfe Thermodynamik, Teubner Verlag, 1999
[39] Schulz , Regelungstechnik 2, Oldenbourg Verlag, 2008
[40] Schucker, Spanlose Fertigung, Oldenbourg Verlag, 2006
[41] Schweickert, Voith Antriebstechnik, Springer Verlag, 2006
[42] Spurk / Aksel, Strmungslehre, Springer Verlag, 2006
[43] Stephan / Mayinger, Thermodynamik Band 2, Springer Verlag, 2008
[44] Stephan / Schaber, Thermodynamik Band 1, Springer Verlag, 2007
[45] Strau, Strmungsmechanik, VCH Verlag, 1991
[46] Unbehauen, Regelungstechnik I+II, Vieweg+Teubner Verlag, 2008, 2007
[47] Windisch, Thermodynamik, Oldenbourg Verlag, 2008
253

Entity-Relationship-Model [14] 235


Erzwungene Schwingung [3] 85
Sachwortverzeichnis Euler-Cauchy-Verfahren [3] 82
Technik Evolventen-Funktion [13] 219

Bezeichnung [Kapitel] Seite F


Fertigungssimulation [6] 125
A Fertigungstechnik [12] 201
Abgesetzte Welle [5] 110 Festigkeit [4] 88
Achsen [5] 100 Finite Elemente [5] 97
Adiabatische Zustandsnderung [9] 165 Flchenbestimmung [4] 95
Allgemeine Zustandsgleichung [9] 160 Flchentrgheitsmoment [4] 87
Aufstellungen [14] 234 Flankenbelastung [13] 219
Flssigkeitsspiegel [8] 143
B Formnderungsvermgen [12] 201
Balkenneigung [2] 64 Freie gedmpfte Schwingung [3] 81
Beidseitig aufliegende Welle [5] 104 Freies Stauchen [12] 202
Bestimmung der Tragkrfte [2] 55 Fugenpressung [12] 212
Betriebswlzkreis [13] 219 Fuzzy-Elemente [11] 194
Biegetrger [2] 63 Fuzzyfizierung [11] 194
Biegetrger [4] 87 Fuzzy-Regler [11] 193
Bisektionsmethode [12] 213 Fuzzy-Sets [11] 194
Bogenma [2] 57
Break-Even-Point [7] 141 G
Gausche Zahlenebene [10] 174
C Gauverteilung [6] 123
Carnotscher Kreisprozess [9] 166 Gesamtwiderstand Wechselstrom [10] 177
Checklisten [14] 235 Gestaltnderungs-Hypothese [12] 211
Control TreeView [14] 237 Getriebetechnik [13] 218
CSS [14] 245 Gleichstromleitung [10] 170
Gleichung der Durchbiegung [2] 64
D Gleichung der elastischen Linie [2] 64
Gleichung der elastischen Linie [5] 101
Datenfelder [1] 17 Gleichverteilung [6] 122
Datenlisten [1] 17 Glockenkurve [6] 123
Differenzenquotient [9] 153
Differenzenverfahren [9] 154
D-Regelanteil [11] 185
H
Drehen [12] 207 Hebelarm [2] 46
Durchbiegung [5] 100 HTML [14] 242
Dyname [2] 52
I
E Inferenz [11] 196
Eingriffspunkt [13] 219 Informationsstrukturen [14] 232
Einseitig eingespannter Trger [2] 64 I-Regler [11] 183
Elektrotechnik [10] 170 Isobare Zustandsnderung [9] 163
Entity-Relationship-Model [14] 235 Isochore Zustandsnderung [9] 162
Erzwungene Schwingung [3] 85 Isotherme Zustandsnderung [9] 164
Euler-Cauchy-Verfahren [3] 82
Evolventen-Funktion [13] 219 K
Eingriffspunkt [13] 219 Kerbwirkung [5] 116
Einseitig eingespannter Trger [2] 64 Knoten [2] 52
Elektrotechnik [10] 170 Knotenpunktverfahren [2] 53
254 Sachwortverzeichnis

Komplexe Zahlen [10] 174 Reihenfolgeproblem [7] 132


Kraft [2] 46 Rekursion [1] 24
Krfte im Raum [2] 46 Rekursionsformel [9] 153
Krfte in ebenen Tragwerken [2] 53 Relationale Datenbanken [14] 234
Kraftschraube [2] 52 Resultierende [2] 57
Resultierende Kraft [2] 47
L Resultierendes Moment [2] 47
Lagerreaktionen [13] 224 Richtungswinkel [2] 52
Laminare Rohrstrmung [8] 147 Rotation von Flssigkeiten [8] 143
Leistungsverluste [10] 170 Rotationsparaboloid [8] 144
Linienflchtiger Vektor [2] 46
S
M Satz des Heron [1] 24
Maschinenbelegung nach Johnson [7] 132 Satz von Steiner [3] 73
Maschinenelement [5] 97 Schneckengetriebe [13] 224
Massentrgheitsmoment [3] 71 Simulation einer Werkzeugausgabe [6] 128
Mechanische Schwingung [3] 81 Spannungsverluste [10] 170
Mittelwert [6] 123 Standardabweichung [6] 123
Moment [2] 46 Statik [2] 46
Monte-Carlo-Methode [4] 93 Staucharbeit [12] 202
Stauchen [12] 201
Stichproben [6] 118
N Stirling-Prozess [9] 168
Nichtstationre Wrmestrmung [9] 152 Stirnrder [13] 218
Normalverteilung [6] 123 Strmungslehre [8] 143
Nutzwertanalyse [14] 236
T
O Technische Arbeit [9] 162
Optimale Bestellmenge [7] 141 Technische Beschreibung [14] 232
Optimale Durchlaufreihenfolge [7] 131 Technische Darstellungen [14] 236
Optimale Losgre [7] 135 Technische Dokumentation [14] 232
Technische Statistik [6] 118
P Thermodynamik [9] 152
PD-Regler [11] 186 Tragwerke [2] 57
PID-Regler [11] 186
PI-Regler [11] 184 V
Polytrope Zustandsnderung [9] 168 Vergleichsspannungs-Hypothese [4] 88
Possibilittstheorie [11] 193 Verschiebungssatz [3] 73
P-Regler [11] 182 Visualisierung von Daten [14] 237
Pressverbindung [12] 210 Volumenberechnung [5] 97
Probabilistische Simulation [6] 127
W
Q Wahrscheinlichkeitsbegriff [6] 128
Quadratischer Rotationsparaboloid [8] 144 Wrmestrmung durch eine Wand [9] 159
Wellen [5] 100
R Werkzeugausgabe [6] 128
Raumnderungsarbeit [9] 161 Wertzuweisung [1] 37
Rechnen mit komplexen Zahlen [10] 174 Winkelma [2] 57
Regeleinrichtung [11] 182 Wirtschaftlichkeit [7] 131
Regelkreis [11] 182 Wohlgeformheit von XML-Daten [14] 247
Regelstrecke [11] 182
Regelungstechnik [11] 181
Sachwortverzeichnis 255

X
XHTML [14] 245
XML [14] 245
XML-Schema [14] 249
XML-Transformation [14] 250

Z
Zahnflankentragfhigkeit [13] 218
Zerspankraft [12] 209
256 Sachwortverzeichnis

Sachwortverzeichnis G
Excel+VBA Geltungsbereich [1] 22
Global [1] 14
Bezeichnung [Kapitel] Seite
H
A Haltepunkt [1] 39
Abweisend bedingte Schleife [1] 20 Hilfe [1] 18
Add-Ins [1] 43
Aktionen unter Excel [1] 37 I
Algorithmus [1] 23
Anwendung starten [1] 37 Indirekte Adressierung [1] 34
Anwendungen [1] 8 Integrated Development Environment [1] 1
Application [1] 28
Application-Object [1] 29 K
Arbeitsblatt anlegen [1] 39 Klassen [6] 118
Ausfhrend bedingte Schleife [1] 21 Kommentar [1] 14
Kommentarzuweisungen [1] 34
B Konstante [1] 16
Bedingte Auswahl [1] 21 Kontextmen [1] 43
Bedingte Schleifen [1] 21
Bedingte Verzweigung [1] 20 L
Benutzerdefinierte Datentypen [1] 18 Laufzeitfehler [1] 23
Bereichsnamen [1] 36 Lschen von Zellinhalten [1] 35
Black Box [1] 23
By Reference [1] 18 M
By Value [1] 18 Makro [1] 8
Methoden [1] 6
C
Codefenster teilen [1] 40 N
Namen vergeben [1] 38
D
Direkte Adressierung [1] 33 O
Objekt [1] 28
E Objektkatalog [1] 4
Editor [1] 1 Objektvariable [1] 37
Eigenschaften [1] 6 On Error [1] 22
Eigenschaftsfenster [1] 5 Operatoren [1] 19
Einfgen von Zellen, Zeilen, Spalten [1] 35 Option Explicit [1] 2
Entwicklungsumgebung [1] 1
Ereignisse [1] 6 P
Parameter [1] 18
F Privat [1] 22
Projekt [1] 4
Fehlerbehandlung in Prozeduren [1] 22 Projekt Explorer [1] 4
Fehlernummer [1] 23 Prozeduren [1] 15
Find-Methode [1] 36 Pseudozufallszahlen [4] 93
Flussdiagrammelemente [1] 25 Public [1] 22
Focus [1] 13
Formular [1] 6, [1] 11
Funktionen [1] 15
R
Raise [1] 23
Range-Objekt [1] 31
Sachwortverzeichnis 257

S V
Schalter [1] 21
Schleifen ber Daten- und Objektlisten [1] 22 Variable [1] 16
Schleifenabbruch [1] 22 VBA [1] 1
Set [1] 37 VBA-Editor [1] 1
Shapes [4] 92 VBAProject [1] 4
Spalten [1] 33 Visual Basic for Application [1] 1
Standardfunktionen [1] 19 Visual Basic-Editor [1] 1
Static [1] 22
Steuerelement [1] 10, 11 W
Struktogramme [1] 27 Workbook-Objects [1] 30
Suchen in Range-Objekten [1] 36 Worksheet-Objects [1] 31
Symbolleiste fr Schnellzugriff [1] 40
Z
T Zhlschleife [1] 21
Top-Down-Design [1] 25 Zeilen [1] 33
Zufallszahlengenerator [6] 124