Entwicklung und Realisierung einer mikrocontrollerbasierten

Werbung
Entwicklung und Realisierung einer mikrocontrollerbasierten Pulssteuerung für die Plasmaquelle Delta Gun
Rüdiger Britzen
Institut für Grundlagen der Elektrotechnik
Prof. Dr.­Ing. Klaus Landes
Betreuer: Dipl.­Ing. Mark Dzulko
April 2004
Mein Dank gilt
•
Herrn Prof. Dr.­Ing. Klaus Landes für die überaus interessante Aufgabenstellung,
•
Herrn Dipl.­Ing. Mark Dzulko für die umfassende Betreuung der Arbeit und so manche
besonders trickreiche Problemlösung,
•
Herrn Dr.­Ing. Jochen Zierhut für die vielen Tips in Bezug auf praktische Realisierbarkeiten
•
den Herrn Ulrich Bayrle, Alexander Mai und Walter Wagner für die Fertigung der mechanischen
Komponenten,
•
Herrn Dipl.­Ing. Rainer Graf für die äußerst unkomplizierte Bearbeitung der Beschaffungs­
vorgänge
•
und allen anderen Mitarbeitern des Institutes EIT2 für die stets ausgezeichnete Zusammenarbeit.
Hiermit erkläre ich, Rüdiger Britzen, daß ich diese Arbeit selbständig verfasst und ausschließlich
die angegebenen Hilfsmittel und Quellen benutzt habe.
Neubiberg, den 28.04.2004,
R. Britzen
Inhaltsverzeichnis
1 Einleitung..........................................................................................................................................6
1.1 Allgemeines...............................................................................................................................6
1.2 Plasmaquelle Delta Gun.............................................................................................................6
1.3 Steuerung Delta Control............................................................................................................8
1.4 Anforderungen an die neue Steuerung.......................................................................................9
2 Entwurfsphase.................................................................................................................................11
2.1 USB­Kommunikation..............................................................................................................11
2.2 Controller.................................................................................................................................12
2.3 Leistungsteil.............................................................................................................................16
2.4 Netzteil.....................................................................................................................................19
2.5 Schnittstellen, Anzeige­ und Bedienelemente.........................................................................20
2.6 Zusammenfassung...................................................................................................................21
3 Realisierungsphase..........................................................................................................................22
3.1 USB­Kommunikation..............................................................................................................22
3.1.1 USB­Chip Code Mercenaries IO­Warrior 40..................................................................22
3.1.2 SDK zum IO­Warrior 40..................................................................................................24
3.1.3 IO­Warrior Paketzusammensetzung................................................................................25
3.1.4 C++­Klasse „IOWarrior_Package“..................................................................................27
3.2 Controller.................................................................................................................................31
3.2.1 Mikrocontroller Microchip PIC16F877...........................................................................31
3.2.2 Entwicklungstools............................................................................................................33
3.2.2.1 MPLAB....................................................................................................................34
3.2.2.2 PicAnt IDE...............................................................................................................36
3.2.2.3 PICStart Plus............................................................................................................39
3.2.3 Controller­Code...............................................................................................................40
3.2.3.1 Kommunikationsprotokoll........................................................................................40
3.2.3.2 Signalmodulation......................................................................................................41
3.2.3.3 Funktionen des Controllerprogramms......................................................................43
3.3 Leistungsteil.............................................................................................................................47
3.3.1 IGBT................................................................................................................................47
3.3.2 Kühlkörper.......................................................................................................................51
3.3.3 Treiber..............................................................................................................................52
3.3.4 Schutzeinrichtungen.........................................................................................................54
3.3.4.1 Schutz vor Überstrom / Kurzschlussstrom...............................................................54
3.3.4.2 Schutz vor Übertemperatur......................................................................................54
3.3.4.3 Schutz vor Überspannung........................................................................................56
3.4 Netzteil.....................................................................................................................................58
3.4.1 Spannungswandlung........................................................................................................58
3.4.2 Logik................................................................................................................................60
3.5 Schnittstellen, Anzeige­ und Bedienelemente.........................................................................63
3.5.1 Schnittstellen....................................................................................................................63
3.5.2 Anzeige­ und Bedienelemente.........................................................................................66
3.6 Gehäuse und Montage.............................................................................................................70
3.7 HMI..........................................................................................................................................77
3.7.1 Bedienung der Oberfläche...............................................................................................77
3.7.2 Besonderheiten.................................................................................................................79
3.7.2.1 Initialisierung der IO­Warrior­Ports.........................................................................80
3.7.2.2 Funktion IOWarriorValueRead................................................................................80
3.7.2.3 Steuerung des Zündvorgangs...................................................................................81
3.7.2.4 I2C­Pakete.................................................................................................................82
3.7.2.5 Kommunikation mit dem Mikrocontroller...............................................................82
3.7.2.6 Kommunikation mit den Temperatursensoren.........................................................84
3.7.2.7 Protokollierung.........................................................................................................85
3.7.2.8 Reset der IGBT­Treiber............................................................................................85
4 Testphase.........................................................................................................................................86
4.1 Abschaltversuche.....................................................................................................................86
4.2 Test der Signalmodulation.......................................................................................................90
4.3 Test am Brenner Delta Gun.....................................................................................................91
5 Zusammenfassung und Ausblick.....................................................................................................96
6 Anhang............................................................................................................................................98
6.1 Schaltpläne...............................................................................................................................98
6.2 Pin­Belegung IO­Warrior......................................................................................................104
6.3 Verkabelung...........................................................................................................................106
6.4 Platinenlayouts.......................................................................................................................115
6.4.1 Control­ und Interfaceplatine.........................................................................................115
6.4.2 Netzteil...........................................................................................................................116
6.4.3 Temperatursensoren.......................................................................................................118
6.5 Bestückunspläne....................................................................................................................119
6.5.1 Control­ und Interfaceplatine.........................................................................................119
6.5.2 Netzteil...........................................................................................................................120
6.5.3 Temperatursensoren.......................................................................................................121
6.6 Stückliste................................................................................................................................122
6.7 Technische Zeichnungen und Skizzen...................................................................................126
6.7.1 Front­ und Rückplatte....................................................................................................126
6.7.2 Grundplatte.....................................................................................................................127
6.7.3 Kupferschiene Kollektor................................................................................................128
6.7.4 Kupferschiene Emitter 1................................................................................................129
6.7.5 Kupferschiene Emitter 2................................................................................................130
6.7.6 Kupferschiene Emitter 3................................................................................................131
6.7.7 Hartgewebeplatte Oberteil.............................................................................................132
6.7.8 Hartgewebeplatte Unterteil............................................................................................133
6.8 Literaturverzeichnis...............................................................................................................134
6.9 Abbildungsverzeichnis...........................................................................................................136
6.10 CD........................................................................................................................................139
1 Einleitung
Seite 6
1 Einleitung
1.1 Allgemeines
Plasma beschreibt Materie im vierten Aggregatszustand: Wird einem Gas Energie zugeführt (z. B.
durch einen Lichtbogen), so erfolgt bei Molekülgasen zuerst die Dissoziation: Die Moleküle spalten
sich auf. Bei weiterer Energiezufuhr wird das Gas ionisiert. Sobald dieses Gemisch aus Ionen,
Elektronen und Neutralen eine elektrisch­magnetische Beeinflussbarkeit zeigt, spricht man von
Plasma. Typische technische Anwendungen für Plasmen sind Lichtquellen, Plasmabeschleuniger,
MHD­Generatoren sowie die Kernfusion mit Plasmaeinschluss. Forschungsschwerpunkt des Licht­
bogenlabors des Institutes für Grundlagen der Elektrotechnik sind Plasmabeschleuniger zur Ober­
flächenbehandlung (thermisches Spritzen und Aktivieren). Zu diesem Zweck werden die Eigen­
schaften von Plasmen untersucht sowie eigene Plasmaquellen (TRIPLEX, LARGE) entwickelt.
1.2 Plasmaquelle Delta Gun
Die Mehrkathoden/­anodenbrenner TRIPLEX und Delta Gun stellen Weiterentwicklungen des F4­
Brenners (Abbildung 1.1) dar.
Abbildung 1.1: Schnitt F4­Brenner
Beim F4­Brenner brennt der Lichtbogen zwischen der stiftförmigen Kathode und der düsenför­
migen Anode. Dabei besitzt der Lichtbogen bezüglich seines anodischen Fußpunktes zwei Frei­
heitsgrade – axial und azimutal. Dies bedeutet, dass sowohl die Länge des Lichtbogens als auch die
Position des anodischen Fußpunktes auf dem Kreisumfang variiert. Die Folge daraus sind starke
Leistungspulsationen durch die sich verändernde Bogenspannung.
Entwicklung und Realisierung einer mikrocontrollerbasierten Pulssteuerung für die Plasmaquelle Delta Gun
1 Einleitung
Seite 7
Die erste Weiterentwicklung des F4­Brenners stellt der Dreikathodenbrenner TRIPLEX (Abbildung
1.2, vgl. [1]) dar. Abbildung 1.2: Schnitt TRIPLEX
Zu Entwicklungsbeginn lag dieser Plasmaquelle das Konzept der axialen Pulvereingabe zugrunde.
Es stellte sich jedoch heraus, dass dies nicht realisierbar ist. Aufgrund der Brennergeometrie
besitzen die Lichtbögen jedoch nur noch eingeschränkte azimutale Freiheitsgrade, was zwangsläu­
fig geringere Leistungspulsationen zur Folge hat.
Den nächsten Entwicklungsschritt stellt der Delta Gun dar. Er verfügt über drei Anoden und eine
stiftförmige Kathode (ähnlich F4­Brenner). Durch axial kurz ausgeführte Anoden, welche zudem
nur Kreisbögen darstellen, besitzen die Lichtbögen nun bezüglich ihrer anodischen Fußpunkte keine
Freiheitsgrade mehr – die Leistungspulsation wird minimal.
Abbildung 1.3: Frontansicht Delta Gun
Abbildung 1.4: Detailansicht Anoden
Die Aufteilung auf drei Anoden ergibt aufgrund des quadratisch in die Verlustleistung eingehenden
Stromes P = R ⋅ I 2  darüber hinaus eine Neuntelung der Wärmebelastung der jeweiligen An­
ode, was die Kühlbarkeit deutlich vereinfacht. Ein weiteres wesentliches Merkmal des Delta Gun ist
die im Vergleich zu F4 und TRIPLEX höhere Lichtbogenspannung, welche die Energieeinkopplung
in das Plasma und damit das Aufschmelzen der Partikel wesentlich effizienter macht. Während eine
Entwicklung und Realisierung einer mikrocontrollerbasierten Pulssteuerung für die Plasmaquelle Delta Gun
1 Einleitung
Seite 8
Bogenspannung von 50 V bei dem F4­Brenner die Verwendung von Molekülgas voraussetzt, ist
dies mit dem Delta Gun bereits im reinen Argon­Betrieb möglich.
1.3 Steuerung Delta Control
Durch das Wegfallen der Leistungspulsation entfallen auch die dadurch hervorgerufenen Turbulen­
zen im Plasmastrahl. Dies hat wiederum zur Folge, dass aufgrund der Viskosität des Plasmas, wel­
che mit der von Öl vergleichbar ist, Partikel nur schlecht in das Plasma eingebracht und aufge­
schmolzen werden können. Eine Lösung für dieses Problem stellt eine Modulation der drei Lichtbö­
gen dar: Dabei werden ein oder zwei der drei Lichtbögen zyklisch abgeschaltet oder mit weniger
Strom beaufschlagt. Diese Modulation erfolgt mit Frequenzen zwischen 0 und 7000 Hz. Für erste
Tests wurde dafür die Steuerung „Delta Control“ entworfen. Die Bestandteile dieser Steuerung
zeigt Abbildung 1.5.
R
Delta Gun
R
R
Treiber
PC mit Framegrabber
Zündgerät
Abbildung 1.5: Schema Delta Control
Zur Zündung des Plasmabrenners wird ein Zündgerät benötigt, welches durch die Einkopplung
eines Hochspannungsimpulses einen Pilotlichtbogen zwischen Kathode und Neutrode erzeugt.
Entwicklung und Realisierung einer mikrocontrollerbasierten Pulssteuerung für die Plasmaquelle Delta Gun
1 Einleitung
Seite 9
Durch die Gaszufuhr wird dieser Lichtbogen in Richtung Anode getrieben, bis er schließlich zwi­
schen Kathode und Anode brennt. Für diesen Zündvorgang müssen im Zündgerät insgesamt fünf
Schütze geschaltet werden. Dies geschieht durch eine über RS232 am Steuerrechner angeschlossene
Relaiskarte.
Abbildung 1.6: Delta Control
Wesentliche Nachteile von Delta Control sind:
•
vollständiges Abschalten der einzelnen Lichtbögen nicht möglich
•
undefinierte Schaltzustände der IGBTs im Fehlerfall (z.B. Programmabsturz)
•
hoher Hardwareaufwand bezüglich des Steuer­PCs (Framegrabberkarte)
1.4 Anforderungen an die neue Steuerung
Die neue Steuerung „Delta Gun Switching Circuit“ (DeGuSCi) soll eine kompakte Standalone­
Steuerung sein, welche mit möglichst geringem Aufwand durch jeden handelsüblichen PC mit Mi­
crosoft Windows Betriebssystem konfigurierbar ist.
Viele der im Laborbetrieb verwendeten peripheren Geräten benötigen zur Kommunikation mit dem
Entwicklung und Realisierung einer mikrocontrollerbasierten Pulssteuerung für die Plasmaquelle Delta Gun
1 Einleitung
Seite 10
jeweiligen PC RS232­Schnittstellen. Im Regelfall verfügen diese Rechner nur über zwei RS232­
Schnittstellen, so genannte „legacy free“­Notebooks verzichten mittlerweile komplette auf serielle
und parallele Ports. Um im Zweifelsfall das Nachrüsten teurer Schnittstellenkarten zu umgehen, er­
folgt die Kommunikation zwischen PC und DeGuSCi über den wesentlich zukunftsträchtigeren
Universal Serial Bus (USB).
Zusammen mit den in 1.3 aufgeführten Nachteilen der Steuerung Delta Control ergeben sich damit
folgende Anforderungen an die neue Steuerung:
•
USB­Schnittstelle
•
Verzicht auf Hardwareergänzungen/­änderungen am Steuerrechner
•
Unempfindlichkeit gegen Betriebsstörungen des Steuerrechners
•
Standalone­Betrieb
•
Verzicht auf parallele Widerstände
•
➔
höhere Fehlertoleranz notwendig
➔
höhere Strombelastung notwendig (bis 500 A)
kompakter Aufbau
Entwicklung und Realisierung einer mikrocontrollerbasierten Pulssteuerung für die Plasmaquelle Delta Gun
2 Entwurfsphase
Seite 11
2 Entwurfsphase
2.1 USB­Kommunikation
Grundsätzliche Vorteile von USB gegenüber RS232 sind für den User leichte Anwendbarkeit, hohe
Datenraten, große Flexibilität und Plug & Play. Allerdings muss auf peripherer Seite seitens des
Entwicklers ein deutlich höherer Aufwand getrieben werden – es ist ein eigener USB­Controller
notwendig. Hier haben sich zu Beginn dieser Arbeit drei Produkte herauskristallisiert:
1. Microcontroller Microchip PIC 16C745/16C765
2. FTDI FT232BM
3. Code Mercenaries IO­Warrior 40
Die Mikrocontroller PIC 16C745/16C765 sind preiswerte 8­Bit­Mikrocontroller mit integrierter
USB­Schnittstelle und 22 bzw. 33 I/O­Pins. Außer der USB­Schnittstelle verfügen diese Controller
noch über eine USART­Schnittstelle, welche zum Beispiel als RS232­Port konfiguriert werden
kann. Für diese Controller stellt Microchip auch rudimentäre Firmware zur Verfügung, die jedoch
noch deutlich ergänzt werden muss, bevor die eigentliche Anwendung implementiert werden kann.
Das Schreiben der Betriebssystemtreiber bleibt ebenfalls dem Entwickler überlassen. Größter Nach­
teil dieser Chip­Reihe ist jedoch, dass sie lediglich in OTP­Versionen angeboten werden. Dies be­
deutet, dass sie nur ein einziges Mal beschreibbar sind. Ein späteres Löschen oder Verändern des
Programmcodes ist nicht möglich. Das ist in der Entwicklungsphase schlichtweg nicht tragbar.
Mit dem Baustein FTDI FT232BM wird eine andere Richtung verfolgt. Er stellt im Wesentlichen
die unkomplizierte Umsetzung einer USB­Schnittstelle auf eine RS232­Schnittstelle dar. Die von
FTDI bereitgestellten Betriebssystemtreiber ermöglichen den Zugriff auf das periphere, am FT232
angeschlossene Gerät über einen so genannten „Virtual COM Port“. Diese virtuelle RS232­Schnitt­
stelle lässt sich über die Standard­Windows VCOMM­API ansprechen. Für die spätere Funktionali­
tät des DeGuSCi wäre dann noch ein zweiter Mikrocontroller notwendig, welcher die eigentliche
Funktionalität (autarke Signalmodulation) beinhaltet und mit dem FTDI FT232BM über das
RS232­Protokoll kommuniziert.
Code Mercenaries IO­Warrior 40 wurde in [3] kurz vorgestellt und verspricht sehr kurze Entwick­
lungszeiten. Es handelt sich dabei um einen 8­Bit Mikrocontroller des Typs Cypress CY7C6341,
welcher über 32 I/O­Pins verfügt und darüber hinaus als Master am I2C­Bus fungieren kann. Die
Entwicklung und Realisierung einer mikrocontrollerbasierten Pulssteuerung für die Plasmaquelle Delta Gun
2 Entwurfsphase
Seite 12
notwendige Firmware ist bereits in den Chip geschrieben und im Software Development Kit sind
Libraries und Anwendungsbeispiele für verschiedene Betriebssysteme und Programmiersprachen
enthalten.
Der I2C­Bus (Inter­Integrated­Circuit­Bus) ist ein von Philips semiconductors im Jahre 1982 einge­
führter Busstandard, welcher ursprünglich für die Kommunikation verschiedener integrierter Bau­
steine in Geräten der Unterhaltungselektronik vorgesehen war. Mittlerweile gibt es allerdings über
1000 verschiedene Bausteine (AD/DA­Wandler, Controller, Sensoren, EEPROMs), welche zum
I2C­Protokoll kompatibel sind (vgl. [4]). Physisch handelt es sich beim I2C­Bus um einen Zwei­
drahtbus, wobei jedoch zusätzlich die GND­Leitung als Bezugspotential sowie meist eine
Spannungsversorgung für das angeschlossene Gerät mitgeführt werden. Am Bus angeschlossen ist
ein Master, sowie eine (theoretisch) lediglich durch die Adressierung (sieben oder zehn Bit) be­
grenzte Anzahl von Slaves. Praktisch wird die Anzahl der Slaves auch durch die maximal zulässige
Buskapazität von 400 pF eingeschränkt. Die Kommunikation zwischen I2C­Master und I2C­Slaves
wird in 3.1.3 sowie in 3.7.2.4 beschrieben. Weiterführende Informationen zur I2C­Spezifikation und
dem zugehörigen Busprotokoll finden sich in [5].
Die Kombination aus einfach setz­/abfragbaren I/O­Pins, dem universellen I2C­Bus sowie der einfa­
chen Einbindung in eine C++­Entwicklungsumgebung qualifizieren den IO­Warrior 40 als beste
Lösung. Weitere Kenntnisse des USB­Standards und des Protokolls sind damit nicht notwendig,
weshalb hier lediglich auf Grundlagenliteratur zu USB verwiesen sei ([2]).
2.2 Controller
Um das DeGuSCi bei Bedarf auch ohne Steuerrechner betreiben zu können und darüber hinaus un­
abhängig von Programm­ oder Steuerrechnerabstürzen zu sein, benötigt die Steuerung einen
eigenen Controller. Die Ausgänge des USB­Chip IO­Warrior 40 können weder ohne Verbindung
zum Rechner gesetzt/gelesen werden, noch würde dessen Geschwindigkeit (ca. 100 Pinstatus­
änderungen pro Sekunde) für eine Modulation im Kilohertzbereich ausreichen. Ein zweiter Con­
troller ist notwendig. An diesen werden folgende Anforderungen gestellt:
•
I2C­Interface, um mit dem IO­Warrior kommunizieren zu können
•
EEPROM­Speicher, um Informationen wie Default­Werte auch nach dem Abschalten der Ver­
sorgungsspannung erhalten zu können
•
Flashbarkeit
Entwicklung und Realisierung einer mikrocontrollerbasierten Pulssteuerung für die Plasmaquelle Delta Gun
2 Entwurfsphase
•
Seite 13
Verarbeitungsgeschwindigkeit ausreichend für Modulationsfrequenzen bis 7 kHz
Desweiteren müssen zur Wahl eines geeigneten Controllers die für die spätere Signalmodulation
notwendigen Berechnungen betrachtet werden. In Abbildung 2.1 ist die Einschaltdauer der ver­
schiedenen Lichtbögen für drei verschiedene Einschaltzeiten dargestellt.
Tp < 1/3 * T
Tp > 1/3 * T
Tp < 2/3 * T
Tp > 2/3 * T
0 1/3 * T 2/3 * T T T + 1/3 * T T + 2/3 * T 2T
Ta Tb Ta Tb Ta Tb Ta Tb Ta Tb Ta Tb
Abbildung 2.1: Signalverläufe
Entwicklung und Realisierung einer mikrocontrollerbasierten Pulssteuerung für die Plasmaquelle Delta Gun
2 Entwurfsphase
Seite 14
Bei der Signalmodulation handelt es sich um drei pulsweitenmodulierte Signale (blau, grün und
rot), wobei Signal 2 (grün) um eine Drittelperiode gegenüber Signal 1 (blau), und Signal 3 (rot)
zwei Drittelperioden gegenüber Signal 1 verschoben ist.
Der Markt bietet Mikrocontroller mit mehreren, voneinander unabhängigen PWM­Ausgängen, wie
zum Beispiel Bausteine der Serie Microchip PIC18F6X2X. Bei diesen Bauteilen müssen lediglich
der PWM­Modus aktiviert und die entsprechenden Register mit den Sollfrequenzen und ­tastver­
hältnissen beschrieben werden. Nachteil dieses Verfahrens ist jedoch, dass die kleinste zu errei­
chende Frequenz 2,44 kHz beträgt. Im jetzigen Entwicklungsstadium des Delta Gun sind zu Test­
zwecken allerdings auch Modulationsfrequenzen im Bereich von wenigen zehn Hertz notwendig,
was wiederum die Verwendung von externen, einstellbaren Frequenzteilern notwendig machen
würde. Auf der anderen Seite genügt als maximale Modulationsfrequenz 7 kHz, während Controller
der o.g. Baureihe PWM­Signale in akzeptabler Auflösung (8 Bit) mit Frequenzen bis zu 156,25 kHz
liefern können. Es liegt also nahe, die drei für den Delta Gun notwendigen Signale durch manuelles
Setzen von drei Ausgängen des Controllers zu generieren.
In Abbildung 2.1 sind die drei sich ergebenden Grenzfälle der Modulation dargestellt:
Modus I:
Die Einschaltdauer ist geringer als ein Drittel der Periodendauer. Daraus resultiert, dass nie mehr als ein Transistor eingeschaltet ist. Die zur Darstellung des Signals notwen­
digen Zeiten lassen sich wie folgt darstellen:
T a = T  p ,1
T b = 1/3⋅T − T  p ,1
Modus II: Hier ist die Einschaltdauer größer als ein Drittel, jedoch kleiner als zwei Drittel der Pe­
riodendauer. Es ist immer mindestens ein Transistor eingeschaltet, die zur Charakte­
risierung notwendigen Zeiten lassen sich wie folgt bestimmen:
T a = T  p ,2 − 1/3⋅T
T b = 2 /3⋅T − T  p ,2
Modus III: Nun ist die Einschaltdauer größer als zwei Drittel der Periodendauer, mindestens zwei Transistoren sind immer eingeschaltet. Die beschreibenden Zeiten ergeben sich zu:
T a = T  p ,3 − 2 /3⋅T
T b = T − T  p ,3
Entwicklung und Realisierung einer mikrocontrollerbasierten Pulssteuerung für die Plasmaquelle Delta Gun
2 Entwurfsphase
Seite 15
Jeweils zu Beginn oder Ende der jeweiligen Zeit muss an einem oder mehreren der drei Signalaus­
gänge des Controllers ein Schaltvorgang erfolgen. Würde man die Zeiten Ta und Tb an den Con­
troller übertragen, so müsste zusätzlich noch der jeweilige Modus übertragen werden. Dies lässt
sich umgehen, indem man lediglich das Tastverhältnis Tp, welche dem Ausschaltzeitpunkt des
ersten Transistors (T1,aus) entspricht, sowie den Einschaltzeitpunkt des zweiten Transistors (T2,ein),
welcher einem Drittel der Periodendauer entspricht, überträgt. Mit den Beziehungen
T 1, aus = T ⋅ DT = T p
T 2, ein =
1
⋅T
3
1
2
T 3, ein = 2 ⋅T 2, ein = 2 ⋅ ⋅T = ⋅T
3
3
1
3
T = 3⋅T 2, ein = 3⋅ ⋅T = ⋅T
3
3
lassen sich dann im Controller Ta und Tb berechnen.
Setzt man die Verwendung von 16­Bit­Zahlen voraus, so ergibt sich als größte darstellbare
Zahl 65535. Definiert man diese Zahl als „Zeit [5 µs]“, so erhält man als längste Wartezeit
5 * 65535 µs = 327675 µs. Dies entspricht einer minimalen Frequenz von 3,05 Hz und erfüllt damit
die Anforderung, zu Testzwecken auch Signale mit sehr kleinen Frequenzen modulieren zu können.
Durch den Verzicht auf 32­Bit­Zahlen bleibt die Menge der verfügbaren Controller und zugehöriger
C­Compiler groß.
Aufgrund der bereits im Institut EIT2 teilweise vorhandenen Entwicklungsumgebung fiel schließ­
lich die Wahl auf den PIC16F877. Dieser Baustein verfügt über 33 I/O­Pins, 256 Byte EEPROM­
Speicher, 368 Byte RAM­Speicher, acht ADC­Eingänge, drei Timer, I2C­ und RS232­Schnittstelle
und PWM­Einheit und ist mit bis zu 20 MHz taktbar. Bei 20 MHz dauert die Abarbeitung eines
Assemblerbefehls 1 µs, sodass auch bei der maximalen Frequenz von 7 kHz (T = 143 µs) keine Pro­
bleme aufgrund eines zu langsamen Controllers auftreten.
Entwicklung und Realisierung einer mikrocontrollerbasierten Pulssteuerung für die Plasmaquelle Delta Gun
2 Entwurfsphase
Seite 16
2.3 Leistungsteil
Heute können in der Leistungselektronik eine Vielzahl der Schaltaufgaben mit MOSFETs (Metal
Oxide Semiconductor Field Effect Transistor) oder IGBTs (Insulated Gate Bipolar Transistor)
realisiert werden. Diese Halbleiterelemente verdrängen seit Mitte der 80er Jahre mehr und mehr die
bis dahin verwendeten Thyristoren. MOSFETs und IGBTs weisen gegenüber Thyristoren folgende
Vorteile auf ([6]):
•
aktive Ausschaltbarkeit
•
Betrieb ohne Beschaltungsnetzwerke
•
einfache Ansteuerung
•
kurze Schaltzeiten
•
relativ niedrige Schaltverluste
Abbildung 2.2:
Abbildung 2.3:
MOSFET­Zelle im Durchlasszustand [7]
IGBT­Zelle im Durchlasszustand [8]
Die Abbildungen 2.2 und 2.3 zeigen den Aufbau von MOSFET und IGBT im Vergleich. Mit dem
Anlegen einer positiven Steuerspannung bildet sich im p­leitenden Silizium­Material ein leitender
Kanal mit Elektronen als Ladungsträgern aus. Wird keine Steuerspannung angelegt, sperren die
Elemente. IGBTs weisen konstruktionsbedingt bei hochsperrenden Typen (ab etwa 400 V) eine
geringere Durchlassspannung als vergleichbare MOSFETs auf. Damit können IGBTs bei gleicher
Chipfläche für höhere Spannungen und Ströme ausgelegt werden. Tendentiell werden IGBTs für
hohe Spannungen und große Ströme (zur Zeit bis 3,3 kV und 2,4 kA) verwendet, während MOS­
FETs auf höhere Schaltfrequenzen (zur Zeit ca. 500 kHz) ausgelegt sind.
Der Leistungsteil der alten Steuerung „Delta Control“ setzt sich pro Anodenzweig aus sechs IGBTs
Entwicklung und Realisierung einer mikrocontrollerbasierten Pulssteuerung für die Plasmaquelle Delta Gun
2 Entwurfsphase
Seite 17
des Typs BUP314 zusammen, welche parallel geschaltet sind und damit eine maximale
Strombelastbarkeit von 312 A (bei 25 °C) zulassen. Diese 18 IGBTs werden über drei optoge­
koppelte Treiber angesteuert, welche jedoch weder auf diesen IGBT­Typ, noch auf eine Parallel­
schaltung der Halbleiter optimiert sind. Die Bauteile sind auf einem Metallkühlkörper montiert, so
dass die entstehende Verlustleistung mittels Kühlwasser abgeführt werden kann. Zur Anzeige der
Kühlkörpertemperatur wird ein handelsübliches PT100­Thermometer mit digitaler Anzeige
verwendet.
Abbildung 2.4: Treiberstufe Delta Control
Abbildung 2.5: IGBT­Block Delta Control
Damit ergeben sich folgende Optimierungsmöglichkeiten für den Leistungsteil:
•
Verzicht auf die Parallelschaltung von IGBTs und Verwendung leistungsstärkerer Module
•
Auswahl der IGBT­Treiber im Hinblick auf die zu verwendenden IGBT­Module
•
Überwachung der Kühlkörpertemperatur mittels Steuer­PC oder Mikrocontroller
Entwicklung und Realisierung einer mikrocontrollerbasierten Pulssteuerung für die Plasmaquelle Delta Gun
2 Entwurfsphase
Seite 18
Der Delta Gun ist auf Ströme bis 500 A ausgelegt, womit gleichzeitig auch schon das maßgebliche
Dimensionierungskriterium für die zu verwendenden Leistungshableiter formuliert ist. Der Markt­
führer Semikron bietet eine große Auswahl an Leistungsmodulen verschiedenster Dimensionierung
an. Für Ströme bis 500 A und Spannungen bis 1200 V empfiehlt sich das IGBT­Modul SKM500­
GA123D. Dieses Modul eignet sich aufgrund seiner Bauform zum einen sehr gut zur Montage auf
einer Kühlplatte und zum anderen können dank großzügig ausgeführter Anschlussterminals spätere
Kupferverschienungen problemlos angeschlossen werden.
Der im DeGuSCi verwendete Controller stellt an seinen Ausgängen lediglich TTL­Signale zur
Verfügung, welche nicht zur direkten Ansteuerung der IGBT­Gates verwendet werden können. Hier
sind zusätzliche Treiber erforderlich, welche die TTL­Signale in entsprechende, zum Umladen der
Gatekapazitäten notwendige, Strompulse konvertieren. Um die Entwicklungszeit kurz zu halten und
gleichzeitig eine große Funktionalität zu gewährleisten, fiel die Wahl auf die Standardtreiber SKHI
10/12 von Semikron, welche ohne große Modifikationen zur Ansteuerung der SKM500GA123D­
Module verwendet werden können.
Die in den IGBTs entstehenden Durchlass­ und Schaltverluste sind im Bereich einiger kW anzu­
setzen, sodass eine effiziente Kühlung notwendig ist. Hier bietet sich die Verwendung einer
Wasserkühlung an, da dies bei gleicher Kühlleistung wesentlich platzsparender und leiser ist als
eine vergleichbare Luftkühlung. Unabhängig von der Kühlmethode sollte die Temperatur der ein­
zelnen IGBTs bzw. der Kühlplatte überwacht werden, um zu hohe Sperrschichttemperaturen, wel­
che zwangsläufig zur Zerstörung der Transistoren führen würden, zu vermeiden. Hier kann natür­
lich, wie bei Delta Control, ein einfacher PT100­Sensor in Verbindung mit einer Konstantstrom­
quelle und einem AD­Wandler des Controllers verwendet werden. Wesentlich einfacher und
eleganter ist jedoch die Verwendung von Temperatursensoren, welche die gemessene Temperatur
intern in digitale Werte wandeln, die dann über den I2C­Bus entweder vom PIC16F877 oder vom
IO­Warrior 40 abgefragt werden können. Ein solches Bauteil, mit für diese Anwendung ausrei­
chender Genauigkeit (± 2 K), ist der LM75 von Linear. ICs dieser Serie sind auch mit höheren Ge­
nauigkeiten verfügbar.
Entwicklung und Realisierung einer mikrocontrollerbasierten Pulssteuerung für die Plasmaquelle Delta Gun
2 Entwurfsphase
Seite 19
2.4 Netzteil
Da DeGuSCi ein Standalone­Gerät mit möglichst geringer externer Beschaltung werden soll, ist ein
integriertes Netzteil notwendig, welche die verschiedenen, zum Betrieb der Komponenten notwen­
digen Spannungen zur Verfügung stellt. Der Controller PIC16F877 benötigt 5 V, Einbauleucht­
dioden und extern durch den IO­Warrior 40 zu schaltende Peripherie arbeiten auf der 12 V­Ebene,
die IGBT­Treiber verlangen 15 V.
Grundsätzlich stellt sich die Frage, ob ein konventionelles Netzteil mit Transformator, Brücken­
gleichrichter, Siebelkos und Längsreglern entworfen wird oder kommerzielle Schaltnetzteile zum
Einsatz kommt. Für Schaltnetzteile sprechen die kompakte Baugröße sowie der relativ niedrige
Preis. Diesen Vorteilen steht jedoch der Nachteil der durch die Taktung hervorgerufenen Störab­
strahlung gegenüber. Ein konventionelles Netzteil weist diese Abstrahlungen nicht auf und kann
desweiteren besser auf den jeweiligen Einsatzzweck optimiert werden. Die Abführung der Verlust­
leistung der zu verwendenden Längsregler stellt ebenfalls kein Problem dar, da dazu die Kühlplatte
der IGBTs mitbenutzt werden kann.
Aus den genannten Gründen wird auf die Verwendung von Schaltnetzteilen verzichtet und ein kon­
ventionelles Netzteil entworfen, welches die erforderlichen Spannungen/Ströme liefern kann.
Gleichzeitig werden auf der Netzteilplatine auch Not­Aus­ und Reset­Funktionalitäten imple­
mentiert.
Entwicklung und Realisierung einer mikrocontrollerbasierten Pulssteuerung für die Plasmaquelle Delta Gun
2 Entwurfsphase
Seite 20
2.5 Schnittstellen, Anzeige­ und Bedienelemente
Nachdem der Entwurf der Baugruppen abgeschlossen ist, ergeben sich die folgenden, für Funktion
bzw. Bedienung notwendigen Anschlüsse und Bedienelemente:
•
•
•
•
IO­Warrior 40:
•
USB­Buchse
•
Eingänge
•
Ausgänge
•
LED zur Überwachung der USB­Verbindung
PIC16F877
•
Flash­Eingang
•
Betriebsartwahlschalter (Steuerung durch PC oder Standalone)
•
LED für Modulationsmodus
Leistungsteil
•
Leistungsanschlüsse der IGBTs
•
LEDs für den Status der IGBTs (leitend oder sperrend)
•
LED für eine qualitative Darstellung der Kühlkörpertemperatur
Netzteil/Schaltlogik
•
Netzschalter
•
Netzanschlussbuchse
•
Anschluss für Not­Aus­Schalter
•
Reset­Taster
•
LEDs zur Überwachung der erzeugten Spannungen
•
LED zur Anzeige des Gesamtstatus des DeGuSCi (Fehler/kein Fehler)
Entwicklung und Realisierung einer mikrocontrollerbasierten Pulssteuerung für die Plasmaquelle Delta Gun
2 Entwurfsphase
Seite 21
2.6 Zusammenfassung
In den Kapiteln 2.1 bis 2.5 wurden die Einzelkomponenten des DeGuSCi so weit skizziert, dass nun
in der Realisierungsphase mit der Schaltungssynthese und dem Schreiben von Mikrocontroller­ und
Human­Machine­Interface­Code (HMI) begonnen werden kann. Abbildung 2.6 zeigt das DeGuSCi
im Verbund mit der wesentlichen Delta Gun­Peripherie.
Steuer­PC
Treiber
IO­Warrior
I2C
PIC16F877
Zündgerät
TTL
HV­Puls
+15V
­8V
IGBTs
Temperaturüberwachung
USB
Delta Gun
Abbildung 2.6: DeGuSCi im Verbund
Entwicklung und Realisierung einer mikrocontrollerbasierten Pulssteuerung für die Plasmaquelle Delta Gun
3 Realisierungsphase
Seite 22
3 Realisierungsphase
3.1 USB­Kommunikation
3.1.1 USB­Chip Code Mercenaries IO­Warrior 40
Der IO­Warrior 40 ist sowohl in der konventionellen DIL­Gehäuseform als auch als SMD­Version
im SSOP48­Gehäuse verfügbar. Zur Minimierung des Platzbedarfs soll das gesamte Control­ und
Interfaceboard bestehend aus IO­Warrior, PIC16F877, Schnittstellen und notwendiger Beschaltung
auf einer Eurokarte (100 mm x 160 mm) untergebracht werden. Dies setzt einen Aufbau in SMD­
Technik voraus, weshalb die Wahl auf die SSOP48­Version fällt.
Abbildung 3.1: Gehäusetypen IO­Warrior 40
Der IO­Warrior kommt mit einem Minimum an externer Beschaltung aus. Gemäß Datenblatt ([8])
sind folgende Komponenten notwendig:
•
Pull­Up­Widerstand (typisch 7,5 k ) an der Differenzsignalleitung D­ der USB­Verbindung
•
100 k Widerstand an P0.0 zur Festlegung des maximal zulässigen, über die USB­Leitung
fließenden Stromes
•
100 k Widerstand an P3.7
•
Keramik­Oszillator (6 MHz) an den Takteingängen XIn und XOut
•
100nF Entkopplungskondensator zwischen den Pins für die Spannungsversorgung
Entwicklung und Realisierung einer mikrocontrollerbasierten Pulssteuerung für die Plasmaquelle Delta Gun
3 Realisierungsphase
Seite 23
Beim Layout müssen die Leiterbahnen für das USB­Differenzsignal parallel geführt werden, um die
durch das Differenzsignalprinzip gewonnene Störsicherheit nicht zu beeinträchtigen. Desweiteren
ist darauf zu achten, dass der Entstörkondensator (100 nF) sich so nahe wie möglich an den entspre­
chenden Pins (47 und 48) befindet und dass die Massepins 23 und 24 direkt miteinander verbunden
sind.
Liegt über den 100 k Widerstand ein High­Potential an P0.0 an, so meldet sich der IO­Warrior am
Bus als High­Power­Device (Strombedarf bis 500 mA) an. Wird P0.0 dagegen über den
Widerstand auf Masse gezogen, darf der Strombedarf 100 mA nicht überschreiten.
Die 32 Ein­/Ausgänge sind in vier Ports (P0, P1, P2, P3) zu je acht I/O­Pins unterteilt. Im I2C­Mo­
dus stehen P0.6 und P0.7 jedoch nicht mehr zur Verfügung, da diese dann als Signalleitungen (I2C­
Clock und I2C­Data) fungieren.
Abbildung 3.2 zeigt den IO­Warrior mit der im DeGuSCi verwendeten Beschaltung.
Abbildung 3.2: Beschaltung IO­Warrior
Entwicklung und Realisierung einer mikrocontrollerbasierten Pulssteuerung für die Plasmaquelle Delta Gun
3 Realisierungsphase
Seite 24
Grundsätzlich können alle Pins sowohl als Eingänge als auch als Ausgänge verwendet werden. Dies
wird lediglich durch die äußere Beschaltung festgelegt. Soll ein Pin als Ausgang fungieren, benötigt
er eine Treiberstufe, während zur Verwendung als Eingang eine Inverterstufe notwendig ist. Dies
wird in Kapitel 3.4 näher erläutert. Die Belegung der einzelnen Pins ist in Kapitel 6.2 aufgeführt.
3.1.2 SDK zum IO­Warrior 40
Im Software Development Kit zum IO­Warrior 40 finden sich Programmierbeispiele und Bibliothe­
ken in den Sprachen Delphi und C++. Mit der entsprechenden Bibliothek (iowkit.dll), kann die
mitgelieferte C++­Klasse „iowkit“ genutzt werden. Der IO­Warrior 40 gehört in die USB­Katego­
rie der generischen HID­Geräte. In dieser Kategorie ist die Funktion des jeweiligen Gerätes nicht
festgelegt, sodass diese Geräte auch nicht durch Systemtreiber höherer Ebenen kontrolliert werden.
Dies ermöglicht den Zugriff auf der Anwendungsebene. Nach dem Herstellen der USB­Verbindung
zwischen Rechner und IO­Warrior wird ab Microsoft Windows 98 automatisch der entsprechende
Treiber installiert und das Gerät eingerichtet. Ein externe Treiberdatei ist nicht notwendig. Die
C++­Klasse „iowkit“ ermöglicht nun Zugriff auf den IO Warrior. In der SDK­Version vom
22.04.2003 (Chip­Revision 1.0.0.3) stehen damit im C++­Builder folgende Funktionen zur Verfü­
gung:
•
IowKitOpenDevice(void)
•
IowKitCloseDevice(IOWKIT_HANDLE devHandle)
•
IowKitWrite(IOWKIT_HANDLE devHandle, ULONG numPipe, PCHAR buffer, ULONG
length)
•
IowKitRead(IOWKIT_HANDLE devHandle, ULONG numPipe, PCHAR buffer, ULONG
length)
•
IowKitReadImmediate(IOWKIT_HANDLE devHandle, PDWORD value)
IowKitOpenDevice initialisiert den IO­Warrior und liefert einen Zeiger (Handle) zurück, welcher
für den späteren Zugriff auf den IO­Warrior benötigt wird. IowKitCloseDevice meldet den IO­War­
rior vom System ab.
Die Funktion IowKitWrite wird zum Setzen der Ports benötigt. Die Parameter dieser Funktion sind
der durch IowKitOpenDevice zurückgelieferte Zeiger devHandle, der so genannte „Endpoint“ num­
Pipe, die zu schreibenden Werte buffer sowie die Anzahl der zu schreibenden Bytes length. Der IO­
Entwicklung und Realisierung einer mikrocontrollerbasierten Pulssteuerung für die Plasmaquelle Delta Gun
3 Realisierungsphase
Seite 25
Warrior verfügt über drei Endpoints, wobei praktisch nur die Endpoints 0 und 1 relevant sind. Wäh­
rend zum Setzen der Ports der Endpoint 0 verwendet wird, erfolgt die I2C­Kommunikation über den
Endpoint 1. Der Inhalt der Variable buffer richtet sich ebenfalls nach dem aktuellen Betriebsmodus.
Dies wird in Kapitel 3.1.3 näher beschrieben.
Zum Auslesen der Ports stehen zwei Funktionen zur Verfügung. Während IowKitReadImmediate
den aktuellen Portstatus als 32­Bit­Wort zurückliefert, führt IowKitRead zu einem so genannten
„blocking read“. Dies bedeutet, dass nach dem Aufruf der Funktion IowKitRead das eigentliche
Programm erst fortgesetzt wird, wenn sich der Status eines oder mehrerer Ports geändert hat. Die an
IowKitRead zu übergebenden Parameter entsprechen denen der Funktion IowKitWrite. Bei einer
Änderung des Portstatus wird dieser im Array buffer abgelegt.
3.1.3 IO­Warrior Paketzusammensetzung
Grundsätzlich muss zwischen zwei unterschiedlichen Betriebsmodi unterschieden werden: Port­
Modus und I2C­Modus. Die Variable buffer ist stets ein Array aus Bytes. Der jeweilige Modus wird
durch das erste Byte (Report­ID) festgelegt: 0 bezeichnet den Port­Modus, 1 bis 3 kennzeichnen die
I2C­Kommunikation.
Im Port­Modus ist das Array fünfstellig, wobei das Zeichen an der zweiten Stelle des Arrays den
Port 0 und das Zeichen am Ende des Arrays den Port 3 darstellt. Bei den Zeichen wiederum ist das
MSB dem siebten Bit und das LSB dem nullten Bit des jeweiligen Ports zugeordnet. Beispiel:
Report­ID
Byte 1
Byte 2
Byte 3
Byte 4
0
128
69
47
236
Port 0
Port 1
Port 2
Port 3
1000 0000
0100 0101
0010 1111
1110 1100
Im I2C­Modus ist die Paketzusammensetzung komplexer. Jedes Paket besteht aus acht Bytes, deren
Bedeutung je nach I2C­Operation variiert. Zu unterscheiden sind Kontroll­, Schreib­ und Leseopera­
tionen.
Entwicklung und Realisierung einer mikrocontrollerbasierten Pulssteuerung für die Plasmaquelle Delta Gun
3 Realisierungsphase
Seite 26
Kontrolloperationen dienen dem Aktivieren/Deaktivieren des I2C­Modus des IO­Warriors. Dazu
wird folgendes Paket verwendet:
Report­ID
Byte 1
Byte 2
Byte 3
Byte 4
Byte 5
Byte 6
Byte 7
1
0 / 1
0
0
0
0
0
0
Ist Byte 1 true (false), wird der I2C­Modus aktiviert (deaktiviert).
Pakete für Schreiboperationen weisen folgendes Format auf:
Report­ID
Byte 1
Byte 2
Byte 3
Byte 4
Byte 5
Byte 6
Byte 7
2
Flag
Data
Data
Data
Data
Data
Data
Die Bits des Flag­Bytes sind vom zu sendenden Paket abhängig und sind wie folgt definiert:
•
Bit 7: Erzeuge Start
•
Bit 6: Erzeuge Stopp
•
Bit 5: Nicht verwendet: immer 0
•
Bit 4: Nicht verwendet: immer 0
•
Bit 3: Nicht verwendet: immer 0
•
Bit 2,1 und 0: Anzahl der zu sendenden Data­Bytes (Bit 2: MSB, Bit 0: LSB)
Bit 7 und 6 hängen von der Anzahl der zu übertragenden Bytes ab. Es ergeben sich drei Fälle:
•
Anzahl < 7:
Flag­Byte des Paketes:
1 1 0 0 0 x x x
•
7 < Anzahl < 12:
Flag­Byte des ersten Paketes:
1 0 0 0 0 x x x
Flag­Byte des zweiten Paketes:
0 1 0 0 0 x x x
Flag­Byte des ersten Paketes:
1 0 0 0 0 x x x
Flag­Byte des n­ten Paketes:
0 0 0 0 0 x x x
Flag­Byte des letzten Paketes:
0 1 0 0 0 x x x
•
Anzahl >12:
Entwicklung und Realisierung einer mikrocontrollerbasierten Pulssteuerung für die Plasmaquelle Delta Gun
3 Realisierungsphase
Seite 27
Schreiboperationen werden durch den IO­Warrior mit folgendem Paket bestätigt:
Report­ID
Byte 1
Byte 2
Byte 3
Byte 4
Byte 5
Byte 6
Byte 7
2
Flag
0
0
0
0
0
0
Das Bits des Flag­Bytes haben die Bedeutungen:
•
Bit 7: Fehler­Bit: Trat ein Fehler auf, so ist dieses Bit 1.
•
Bit 6: Nicht verwendet: immer 0
•
Bit 5: Nicht verwendet: immer 0
•
Bit 4: Nicht verwendet: immer 0
•
Bit 3: Nicht verwendet: immer 0
•
Bit 2,1 und 0: Anzahl der gesendeten Data­Bytes (Bit 2: MSB, Bit 0: LSB)
Die Kontrolle der Bits 7, 2, 1 und 0 ermöglicht eine leichte Verifizierung des Schreibvorgangs.
Für die Initiierung einer Leseoperation ist folgendes Paket vorgesehen:
Report­ID
Byte 1
Byte 2
Byte 3
Byte 4
Byte 5
Byte 6
Byte 7
3
Number
Command
0
0
0
0
0
Number bezeichnet die Anzahl der auszulesenden Zeichen und Command beinhaltet die Adresse
des anzusprechenden I2C­Slaves (vgl. 3.7.2.4). Nach dieser Initiierung kann durch entsprechenden
Aufruf der Funktion IowKitRead das vom Slave gesendete Paket ausgelesen werden. Das emp­
fangende Paket hat dabei die Struktur:
Report­ID
Byte 1
Byte 2
Byte 3
Byte 4
Byte 5
Byte 6
Byte 7
3
Flag
Data
Data
Data
Data
Data
Data
Byte 1 entspricht dem Flag­Byte des Paketes, mit welchem der IO­Warrior Schreiboperationen
quittiert. Auch hier ergibt sich damit eine leichte Möglichkeit, die Leseoperation auf Erfolg zu über­
prüfen.
3.1.4 C++­Klasse „IOWarrior_Package“
Die durch das SDK zur Verfügung gestellten Funktionen ermöglichen bereits eine hinreichende
Kontrolle des IO­Warriors. Die Kapitel 3.1.2 und 3.1.3 zeigen jedoch, dass die Verwendung der
vorhandenen Funktionen recht komplex ist, dies eine nicht zu vernachlässigende Einarbeitungszeit
erfordert und schließlich den Quellcode der jeweiligen Anwendung schnell unübersichtlich werden
Entwicklung und Realisierung einer mikrocontrollerbasierten Pulssteuerung für die Plasmaquelle Delta Gun
3 Realisierungsphase
Seite 28
lassen. Desweiteren müssten Features wie USB­Verbindungsprüfung oder Fehlerbearbeitungen
stets neu programmiert werden. Aus diesen Gründen wird ein C++­Package erstellt, welche dem
Programmierer die Funktionalität des IO­Warriors in leicht anzuwendenden Funktionen zur Verfü­
gung stellt.
Nach dem Bilden einer Instanz der Klasse IOWarrior_Package stehen folgende Properties und
Funktionen zur Verfügung:
•
IOWarriorActive (Boolean):
Wird diese Variable auf true gesetzt, erfolgt die Initialisierung des IO­Warriors. Gleichzeitig
wird die Verbindungsprüfung gestartet. Diese führt in einem einstellbaren Zeitintervall einen
Refresh der Ports durch. Führt der Versuch des Refreshs zu einem Fehler, liegt eine Unterbre­
chung der Verbindung vor. Diese Variable kann nur zur Laufzeit auf true gesetzt werden.
•
AliveCheckInterval (Integer):
Diese Variable legt das Zeitintervall für die Verbindungsprüfung fest. Gültig sind dabei Werte
zwischen 200 und 300000 ms.
•
IICEnabled (Boolean):
Ein Setzen dieser Variable aktiviert den I2C­Modus.
•
OnConnect(TNotifyEvent):
Hier kann eine Funktion eingehängt werden, welche ausgeführt werden soll, sobald die In­
itialisierung des IO­Warriors abgeschlossen ist.
•
OnDisconnect(TNotifyEvent):
Dieses Property stellt das Gegenstück zu OnConnect dar. Eine hier eingehängte Funktion wird
aufgerufen, falls die Verbindung zum IO­Warrior unterbrochen oder das Gerät beim System
abgemeldet (z.B. durch IOWarriorActive = false) wurde.
•
OnConnectionPing(TNotifyEvent):
Nach jedem durch die Verbindungsprüfung hervorgerufenem Refresh wird die hier eingehängte
Funktion aufgerufen.
Entwicklung und Realisierung einer mikrocontrollerbasierten Pulssteuerung für die Plasmaquelle Delta Gun
3 Realisierungsphase
•
Seite 29
OnError(TIOW_Error):
Treten im Betrieb des IO­Warriors Fehler auf (Verbindungsunterbrechung, fehlerhafte Pakete,
u.ä.), wird eine hier eingehängte Funktion aufgerufen. Dabei werden sowohl der Fehlertyp (Er­
rorCode vom Typ ErrorType) als auch eine Nachricht (ErrorMessage vom Typ AnsiString)
übergeben.
•
OnValueRead(TIOW_ReadEvent):
Wird hier eine Funktion eingehängt, führt dies zum Start eines eigenständigen neuen Threads,
welcher die Funktion IowKitRead beinhaltet. Ändert sich nun der Portstatus, wird die in
OnValueRead eingehängte Funktion aufgerufen und gleichzeitig der neue Portstatus an diese
Funktion übergeben. Dieses Feature erlaubt eine unterbrechungsgesteuerte Ereignisverarbeitung
und macht damit ein Abfragen der Ports in Intervallen (Polling) überflüssig.
•
WriteBitToInterface(int InterfaceID, int BitNumber, bool Bit):
Diese Funktion dient zum Setzen/Löschen einzelner Bits. Ein WriteBitToInterface(1, 6, true)
setzt das sechste Bit von Port 1 auf true.
•
WriteByteToInterface(int InterfaceID, unsigned char Byte):
Während mit WriteBitToInterface einzelne Bits gesetzt/gelöscht werden können, kann mit
WriteByteToInterface ein Port komplett beschrieben werden.
•
WriteAllInterfaces(unsigned char* BytesToWrite):
Diese Funktion stellt die dritte Variante zum Ändern der Ports dar. Hier werden alle Ports gleich­
zeitig geändert.
•
WriteIIC(unsigned char* BytesToWrite, int NumberOfBytes):
WriteIIC schreibt die im Array BytesToWrite enthaltenen Zeichen auf den I2C­Bus. Der I2C­Mo­
dus muss zuvor durch IICEnabled = true aktiviert worden sein.
•
ReadIIC(unsigned char IICReadCommand, int NumberOfBytes):
Diese Funktion führt eine Leseoperation auf dem I2C­Bus durch. Auch hier muss der I2C­Modus
zuvor durch IICEnabled = true aktiviert worden sein.
•
unsigned char ReadIOWarrior_Interface(int InterfaceID) oder
unsigned long ReadIOWarrior_Interface():
Hier wird in Abhängigkeit des übergebenen Parameters entweder der zuletzt ermittelte Status
eines Ports oder aller Ports zurückgeliefert.
Entwicklung und Realisierung einer mikrocontrollerbasierten Pulssteuerung für die Plasmaquelle Delta Gun
3 Realisierungsphase
•
Seite 30
ResetErrorStatus():
Diese Funktion setzt den Fehlerstatus des IO­Warriors zurück.
Zu Testzwecken wurde die grafische Oberfläche „IOWarrior_Testumgebung“ (CD:/Code/IO­War­
rior (Package und Testumgebung)/Testumgebung_IOWarrior) geschrieben, welche auf der Klasse
IOWarrior_Package aufbaut und die Anwendung der aufgeführten Properties und Funktionen bei­
spielhaft dargestellt. Einen Screenshot dieser Testumgebung zeigt Abbildung 3.3.
Abbildung 3.3: Screenshot Testumgebung IO­Warrior
Entwicklung und Realisierung einer mikrocontrollerbasierten Pulssteuerung für die Plasmaquelle Delta Gun
3 Realisierungsphase
Seite 31
3.2 Controller
3.2.1 Mikrocontroller Microchip PIC16F877
Der Mikrocontroller Microchip PIC16F877 ist der leistungsfähigste Chip der PIC16­Serie. Durch
große Speicherbereiche, einer großen Anzahl an I/O­Pins und einer Vielzahl an Zusatzfunktionen
bietet dieses IC vielfältige Einsatzmöglichkeiten.
Ähnlich wie beim IO­Warrior ist die externe Beschaltung des PICs unkompliziert. So benötigt der
Controller lediglich einen Oszillator zur Takterzeugung und einen Entkopplungskondensator zwi­
schen Vdd und Vss. Abbildung 3.4 zeigt die im DeGuSCi verwendete Schaltung.
Abbildung 3.4: Beschaltung PIC16F877
Der PIC16F877 verfügt über fünf Ports mit unterschiedlich vielen Ein­/Ausgängen. Port A verfügt
über sechs, Port B, C und D jeweils über acht und Port E über drei I/O­Pins. Diese Pins sind jedoch
teilweise mehrfach belegt. Soll zum Beispiel die RS232­Schnittstelle des Controllers verwendet
werden, stehen die Pins RC7 und RC6 nicht mehr für andere Funktionen zur Verfügung.
Entwicklung und Realisierung einer mikrocontrollerbasierten Pulssteuerung für die Plasmaquelle Delta Gun
3 Realisierungsphase
Seite 32
Für die Anwendung im DeGuSCi werden 15 I/O­Pins benötigt:
•
ICSP: 3 Pins
•
I2C­Kommunikation: 2 Pins
•
Betriebsartwahlschalter: 3 Pins
•
IGBT­Ansteuerung: 3 Pins
•
Anzeige der Betriebsart: 1 Pin
•
Treiber­Reset: 3 Pins
In Circuit Serial Programming (ICSP) bezeichnet das Flashen des Mikrocontrollers, ohne diesen aus
der Schaltung entnehmen und in ein Brenngerät setzen zu müssen (vgl. [10] und [11]). Zum
Beschreiben des Controllers sind lediglich fünf Datenleitungen notwendig: +12 V, +5 V, GND, Da­
tenleitung und Taktleitung. Um den PIC in den Programmiermodus zu bringen, werden nach dem
Einschalten der Betriebsspannung (+5 V) zuerst die Pins MCLR, RB6 und RB7 mit GND ver­
bunden. Wird dann der Pin MCLR auf +12 V gezogen, wird der PIC in den Programmiermodus
versetzt. Nun kann die Programmierung über die Pins RB6 und RB7 durchgeführt werden. Um die
Beeinflussung der übrigen Schaltung durch den Brennvorgang zu verhindern, werden die Bauteile
D1, D2 und R4 benötigt. Wird an den MCLR­Pin Massepotential angelegt, führt der PIC einen
Reset durch. Dieser Pin ist im Normalbetrieb über den Widerstand R4 mit der Betriebsspannung
verbunden (+5 V) oder wird zum Reset kurz auf Masse gezogen. D1 sorgt dafür, dass die beim
Flashvorgang anliegende Programmierspannung (+12 V) die übrige Schaltung nicht beeinflussen
kann. D2 verhindert dasselbe für die vom Programmiergerät zur Verfügung gestellte Betriebs­
spannung (+5 V).
Die I2C­Kommunikation erfolgt über die Pins RC3/SCK (Taktleitung) und RC4/SDI (Datenleitung).
Diese können direkt mit den entsprechenden Pins (P0.6 und P0.7) des IO­Warriors verbunden
werden.
Für den Betrieb der Plasmaquelle werden drei prinzipielle Betriebszustände der IGBTs benötigt:
„alle IGBTs ausgeschaltet“, „alle IGBTs eingeschaltet“ und „IGBTs im Modulationsbetrieb“. Wird
das DeGuSCi durch den Steuer­PC bedient, so werden diese Zustände per Software gewählt. Um
zwischen diesen Betriebsarten auch im Standalone­Betrieb wechseln zu können, muss ein
physischer Umschalter vorgesehen werden. Zur Abfrage der Schalterstellung werden drei Pins
Entwicklung und Realisierung einer mikrocontrollerbasierten Pulssteuerung für die Plasmaquelle Delta Gun
3 Realisierungsphase
Seite 33
(RB1, RB2 und RB3) benötigt. Um ein Floaten der Eingänge zu verhindern, werden diese durch
Pull­Down­Widerstände (typisch 10 k) auf Massepotential gezogen. Damit ergeben sich vier un­
terscheidbare Zustände:
RB1
RB2
RB3
Zustand
0
0
0
Kontrolle durch Steuer­PC
1
0
0
IGBTs im Modulationsbetrieb
1
1
0
alle IGBTs ein
1
1
1
alle IGBTs aus
Zur Ansteuerung der IGBT­Treiber werden die Pins RD5, RD6 und RD7 verwendet. Da die Ein­
gänge der Treiber TTL­kompatibel sind, ist keine weitere Beschaltung notwendig. Gleichzeitig
werden durch diese Ausgänge auch die LEDs angesteuert, die den aktuellen Betriebszustand der
IGBTs (ein oder aus) anzeigen.
Die, den aktuellen Betriebszustand der IGBTs anzeigenden, LEDs erlauben bei hohen Frequenzen
keine Unterscheidung mehr zwischen den Zuständen „alle IGBTs ein“ und „IGBTs im Modu­
lationsbetrieb“. Aus diesem Grund wird eine zusätzliche LED über Pin RD4 gesteuert, welche im
Modulationsmodus aufleuchtet.
Die IGBT­Treiber verfügen über Reset­Eingänge, welche im Normalbetrieb auf Massepotential ge­
zogen sein müssen (vgl. 3.3.3). Wird das DeGuSCi mittels eines Steuer­PCs kontrolliert, erfolgt
dies durch den IO­Warrior über P1.3, P1.5 und P1.7. Da dieser im Standalone­Betrieb jedoch de­
aktiviert ist, muss der PIC diese Aufgabe übernehmen können (Pins RC5, RC6 und RC7).
3.2.2 Entwicklungstools
Prinzipiell wird zum Arbeiten mit Mikrocontrollern eine Entwicklungsumgebung zum Erstellen der
Programme und ein Brenngerät zum Beschreiben der Mikrocontroller benötigt. Es ergibt sich
folgender Arbeitsablauf:
Kompilierung
Assemblierung
Schreibvorgang
Entwicklung und Realisierung einer mikrocontrollerbasierten Pulssteuerung für die Plasmaquelle Delta Gun
3 Realisierungsphase
Seite 34
Der Code für der Mikrocontroller kann entweder in C (oder einer anderen Hochsprache) ge­
schrieben und anschließend kompiliert als auch direkt in Assembler erstellt werden. Aufgrund der
Tatsache, dass heute auch leistungsfähige Controller sehr preisgünstig sind, ist das zeitaufwendige
Programmieren in Assembler nur sinnvoll, wenn optimierter und möglichst kompakter Code für die
jeweilige Anwendung nötig ist. Ansonsten ist eine Hochsprache zu bevorzugen.
Beim Vorgang des Kompilierens wird das C­Programm in ein Assembler­Programm gewandelt.
Dieses wird dann assembliert und schließlich in den Mikrocontroller geschrieben. Für die PIC16­
Familie sind dazu verschiedene Werkzeuge erhältlich.
3.2.2.1 MPLAB
Die Umgebung MPLAB stellt Microchip für die PIC16­Familie kostenlos zum Download zur
Verfügung. Es handelt sich dabei um eine auf Microsoft Windows basierende integrierte Entwick­
lungsumgebung, welche das Schreiben, Debuggen und Optimieren von Code für die PIC­Familie
erlaubt. Dazu sind im Programm Texteditor, Codesimulator, Linker, Assemblierer und eine
Komponente zum Ansprechen des Brenngerätes vorhanden. Wenn ein zusätzlicher C­Compiler
verwendet wird (vgl. 3.2.2.2), so erfolgen in MPLAB lediglich die Schritte Projekterzeugung,
Assemblierung und Beschreiben des Controllers.
Zu Beginn werden die controllerspezifischen Einstellungen vorgenommen. Dies sind Controllertyp
(Configure/Select Devive...), Taktrate (Debugger/Settings...) und Configuration Bits. Die Configura­
tion Bits stellen wesentliche Eckpfeiler für die spätere Funktion des PICs dar:
•
Oscillator:
Hier wird der verwendete Taktgenerator angegeben. Im DeGuSCi wird ein Keramikoszillator
mit 20 MHz verwendet, weshalb dieses Flag auf „HS“ gesetzt wird.
•
Watchdog Timer:
Wird dieser Timer aktiviert (Flag auf Enabled), muss er im späteren Betrieb des PICs ca. alle
5 ms durch geeigneten Programmcode zurückgesetzt werden. Passiert dies nicht, löst der WDT
einen Reset des PICs aus. Diese Funktionalität dient dazu, eventuelle Programmabstürze
(„Hängen“ des Controllers) automatisch abfangen zu können. Im DeGuSCi wird der WDT nicht
verwendet, da das zyklische Zurücksetzen im Konflikt mit dem für die Modulation verwendeten
Wartealgorithmus stehen würde.
Entwicklung und Realisierung einer mikrocontrollerbasierten Pulssteuerung für die Plasmaquelle Delta Gun
3 Realisierungsphase
•
Seite 35
Power Up Timer:
Diese Operation erhöht die Stabilität der Gesamtschaltung, da der Programmcode bei aktiviertem
Power Up Timer erst ca. 72 ms nach dem Einschalten der Betriebsspannung zu laufen beginnt.
So haben die übrigen Komponenten (z.B. IGBT­Treiber) ausreichend Zeit, um ihre Anfangszu­
stände einzunehmen.
•
Brown Out Detect:
Dies stellt eine Überwachung der Betriebsspannung dar. Fällt die Versorgungsspannung für
länger als 0,1 ms unter 4 V ab, wird ein Reset des Controllers ausgelöst. Dies beugt einem Ab­
sturz aufgrund undefinierter Beriebszustände vor.
•
Low Voltage Program:
Ist diese Option aktiviert, kann zum Beschreiben des Controllers eine Programmierspannung von
5 V (statt 12 V) verwendet werden. Da diese Option vom verwendeten Brenngerät jedoch nicht
unterstützt wird, wird dieses Option deaktiviert.
•
Flash Program Write:
Hier wird festgelegt, ob das spätere Controllerprogramm Daten auch in den Programmspeicher
ablegen oder lediglich in den Datenbereich und in den EEPROM­Speicher schreiben darf.
•
Background Debug:
Die Microchip PIC­Controller bieten in Kombination mit externer Hardware die Möglichkeit
zum In­Circuit­Debugging. Hierbei können im laufenden Controllerprogramm Breakpoints
gesetzt und Registerinhalte ausgelesen werden. Damit dies möglich ist, muss das Flag Back­
ground Debug gesetzt sein.
•
Data EE Read Protect:
Ist dieses Flag gesetzt, kann das interne Daten­EEPROM nicht ausgelesen werden.
•
Code Protect:
Hiermit kann verhindert werden, dass der Programmcode eines beschriebenen PICs wieder aus­
gelesen werden kann.
Für weitergehende Informationen zu den Configuration Bits sei auf das Datenblatt zum jeweiligen
Controller (PIC16F877: [12]) verwiesen.
Nachdem die Konfiguration abgeschlossen worden ist, kann nun mit Project/New... ein neues Pro­
jekt erstellt werden. Diesem Projekt wird dann das entsprechende ASM­File hinzugefügt. Dieses
kann entweder mit dem Texteditor in MPLAB erstellt oder durch einen externen Compiler erzeugt
Entwicklung und Realisierung einer mikrocontrollerbasierten Pulssteuerung für die Plasmaquelle Delta Gun
3 Realisierungsphase
Seite 36
worden sein. Hier ist darauf zu achten, dass Projekt und ASM­File den gleichen Dateinamen
besitzen. Jetzt wird mit Project/Build All die Assemblierung durchgeführt. Abschließend kann nun
der Controller beschrieben werden (Programmer/Enable Programmer und Programmer/Program).
Abbildung 3.5: Screenshot MPLAB
3.2.2.2 PicAnt IDE
Microchip stellt für die PIC16­Familie keine C­Compiler zur Verfügung und verweist auf Drittan­
bieter. Aufgrund des sehr guten Preis­Leistungs­Verhältnisses fiel hier die Wahl auf die Entwick­
lungsumgebung PicAnt IDE (mittlerweile SourceBoost IDE) von Pavel Baranov. Diese ermöglicht
es zum einen, in Standard­C/C++ zu programmieren und stellt zum anderen auch PIC­spezifische
Befehle zur Verfügung. Desweiteren verfügt diese Entwicklungsumgebung (wie auch MPLAB)
über Debug­Werkzeuge, um den Inhalt von Registern ausgeben können oder das Setzen von Break­
points zu ermöglichen.
Entwicklung und Realisierung einer mikrocontrollerbasierten Pulssteuerung für die Plasmaquelle Delta Gun
3 Realisierungsphase
Seite 37
Die verfügbaren C­Befehle sind:
•
if, else, while, for, return, break, continue, extern, switch, case, default
•
goto und labels
•
char, short, int, long, void
•
~, ++, ­­, +, ­, <, <=, >, >=, ==, !=, =, !, &, |, ^, &=, |=, ^=, &&, ||, *, /, %, <<, >>, <<=, >>=
•
Eindimensionale Arrays
•
Funktionen mit keinem/einem/vielen Parametern, welch void­ oder char­Typen zurückliefern
•
#include, #define, #undef, #ifdef, #ifndef, #else, #endif
Um auf die Register des Controllers zuzugreifen, können entweder vordefinierte Variablen (z.B.
porta für den Port A) oder absolute Adressen (vgl. Datenblatt) verwendet werden. Darüber hinaus
stellt PicAnt IDE noch spezielle Funktionen zur Verfügung. Die wichtigsten sind:
•
void main(void):
Der in der Funktion main stehende Code wird zu Programmbeginn ausgeführt.
•
void interrupt(void):
Wird mit Interrupts gearbeitet, so springt das Programm im Interruptfall an diese Stelle.
•
void clear_wdt(void):
Der Watchdog­Timer wird zurückgesetzt.
•
void sleep(void):
Der PIC wird in den sleep­Modus versetzt.
•
void set_bit(Registername, Bitnummer)/void clear_bit(Registername, Bitnummer):
Im entsprechenden Register wird ein Bit gesetzt/gelöscht.
•
void putchar(Ausdruck):
Ausdruck wird auf die RS232­Schnittstelle geschrieben.
•
char getchar(void):
Liest ein Byte von der RS232­Schnittstelle.
•
void delay_s(Ausdruck)/void delay_ms(Ausdruck)/void delay_us(Ausdruck):
Diese Funktionen führen zu einer durch Ausdruck festgelegten Verzögerung in
Sekunden/Millisekunden/Mikrosekunden.
Entwicklung und Realisierung einer mikrocontrollerbasierten Pulssteuerung für die Plasmaquelle Delta Gun
3 Realisierungsphase
Seite 38
Weitere, in der Praxis weniger relevante, Funktionen sind in der Hilfefunktion zu PicAnt IDE auf­
geführt.
Ähnlich wie bei MPLAB müssen zu Beginn Controllertyp (Settings/Target) und die Taktrate
(Settings/Clock Rate) festgelegt. Anschließend wird ein neues Projekt erzeugt (Project/New...) und
es kann mit dem Schreiben des Codes begonnen werden.
Abbildung 3.6: Screenshot PicAnt IDE
In der praktischen Arbeit hat sich folgender Arbeitsablauf als sinnvoll herausgestellt:
1. Erstellen des C­Codes in PICAnt IDE
2. Kompilieren des Codes in PICAnt IDE (Build/compile)
3. Assemblierung des Codes in MPLAB (Project/Build All)
4. Programmieren des Controllers in MPLAB (Programmer/Program)
Entwicklung und Realisierung einer mikrocontrollerbasierten Pulssteuerung für die Plasmaquelle Delta Gun
3 Realisierungsphase
Seite 39
3.2.2.3 PICStart Plus
Sowohl Microchip als auch Drittanbieter bieten Programmiergeräte an, welche das Beschreiben von
Mikrocontroller ermöglichen. Das Microchip PICStart Plus stellt das preiswerteste Gerät dar. Es
verfügt über einen Nullkraftsockel und wird über die RS232­Schnittstelle mit dem PC verbunden.
Anschließend kann es über die Oberfläche MPLAB angesprochen werden.
Abbildung 3.7: PICStart Plus
Abbildung 3.8: ICSP­Modifikation PICStart Plus
Nachteil dieses Gerätes ist, dass es serienmäßig keine Möglichkeit bietet, Controller in SMD­Bau­
formen zu beschreiben. Da für das DeGuSCi jedoch ICSP vorgesehen wurde (vgl. 3.2.1), ist ein
Adapter von PLCC auf DIL nicht nötig. Es müssen lediglich die entsprechenden für ICSP notwen­
digen Leitungen nach außen geführt werden. Bezogen auf den vierzigpoligen DIL­Sockel sind dies:
•
Pin 1: +12 V
•
Pin 32: +5 V
•
Pin 31: GND
•
Pin 39: Taktleitung
•
Pin 40: Datenleitung
Als Schnittstelle wurde ein SubD9­Stiftstecker gewählt (vgl. Abbildung 3.8). Somit kann das
DeGuSCi zum Flashen des Controllers mit Hilfe eines handelsüblichen RS232­Kabels mit der
ICSP­Schnittstelle des PICStart Plus verbunden werden.
Entwicklung und Realisierung einer mikrocontrollerbasierten Pulssteuerung für die Plasmaquelle Delta Gun
3 Realisierungsphase
Seite 40
3.2.3 Controller­Code
3.2.3.1 Kommunikationsprotokoll
Zur Kommunikation zwischen IO­Warrior und PIC16F877 muss vor der eigentlichen Program­
mierung ein Protokoll festgelegt werden. Es ergibt sich die prinzipielle Unterscheidung zwischen
Kommandopaketen und Datenpaketen. Während Betriebszustände durch Kommandopakete codiert
werden, erfolgt die Übertragung der für die Modulation relevanten Zeiten (vgl. Kapitel 2.2) in Da­
tenpaketen. Die erforderlichen Kommandos sind:
•
Modus: alle IGBTs aus
•
Modus: alle IGBTs ein
•
Modus: Modulation
•
Befehl: Verwende neue Werte
•
Befehl: Speichere aktuelle Werte in EEPROM
•
Befehl: Sende aktuelle Werte
Die Zeit T1,aus = 65535 ist definitionsgemäß mit 16 Bit darstellbar. Die Zeit T2,ein kann maximal ein
Drittel von T1,aus betragen, womit für die Darstellung 15 Bit genügen (T2,ein,max = 21845 < 32767).
Das I2C­Protokoll sieht für die Länge eines Zeichens acht Bit vor. Um die erforderlichen Werte
übertragen zu können, sind insgesamt 31 Bit notwendig. Werden vier Byte verwendet, bleibt ein Bit
für die Unterscheidung zwischen Kommando­ und Datenpaket. Daraus abgeleitet wird folgendes
Protokoll definiert:
Kommandopakete bestehen aus einem Byte, dessen erstes Bit eine Eins ist:
Modus: Alle IGBTs aus (= 128)
1
0
0
0
0
0
0
0
0
1
1
1
Modus: Alle IGBTs ein (= 129)
1
0
0
0
0
0
Modus: Modulation (= 131)
1
0
0
0
0
0
Entwicklung und Realisierung einer mikrocontrollerbasierten Pulssteuerung für die Plasmaquelle Delta Gun
3 Realisierungsphase
Seite 41
Befehl: Verwende neue Werte (= 130)
1
0
0
0
0
0
1
0
Befehl: Speichere aktuelle Werte in EEPROM (= 132)
1
0
0
0
0
1
0
0
0
0
0
1
1
0
1
1
Befehl: Sende aktuelle Werte (Byte 1) (= 136)
1
0
0
0
1
0
Befehl: Sende aktuelle Werte (Byte 2) (= 137)
1
0
0
0
1
0
Befehl: Sende aktuelle Werte (Byte 3) (= 138)
1
0
0
0
1
0
Befehl: Sende aktuelle Werte (Byte 4) (= 139)
1
0
0
0
1
0
Datenpakete bestehen aus vier nacheinander übermittelten Bytes (a bis d), wobei das erste Bit des
ersten Bytes Null ist:
T2,ein in 15 Bit kodiert
T1,aus in 16 Bit kodiert
0 a6 a5 a4 a3 a2 a1 a0 b7 b6 b5 b4 b3 b2 b1 b0 c7 c6 c5 c4 c3 c2 c1 c0 d7 d6 d5 d4 d3 d2 d1 d0
3.2.3.2 Signalmodulation
Nach dem Empfang eines Datenpaketes erfolgt zuerst die Berechnung der fehlenden Zeiten T3,ein
und T. Danach werden zur Ermittlung des Modulationsmodusses (abhängig von Tp) eine Fallunter­
scheidung durchgeführt und die Zeiten Ta und Tb berechnet (vgl. jeweils 2.2). Der Programmablauf­
plan der eigentlichen Modulation stellt sich gemäß Abbildung 3.9 dar. Gestrichelt dargestellte
Felder werden nur bei der Initialisierung des jeweiligen Modulationsmodusses ausgeführt.
Entwicklung und Realisierung einer mikrocontrollerbasierten Pulssteuerung für die Plasmaquelle Delta Gun
3 Realisierungsphase
Seite 42
T1,aus < T2,ein
T1,aus > T2,ein
T1,aus < T3,ein
T1,aus > T3,ein
IGBT1 ein, warte Ta
IGBT3 ein
IGBT1 ein
IGBT1 aus, warte Tb
IGBT1 ein, warte Ta
IGBT2 ein
IGBT2 ein, warte Ta
IGBT3 aus, warte Tb
IGBT3 ein
IGBT2 aus, warte Tb
IGBT2 ein, warte Ta
Warte Ta
IGBT3 ein, warte Ta
IGBT1 aus, warte Tb
IGBT2 aus, warte Tb
IGBT3 aus, warte Tb
IGBT3 ein, warte Ta
IGBT2 ein, warte Ta
IGBT2 aus, warte Tb
IGBT3 aus, warte Tb
IGBT3 ein, warte Ta
IGBT1 aus, warte Tb
IGBT1 ein, warte Ta
Abbildung 3.9: Programmablaufplan Signalmodulation
Entwicklung und Realisierung einer mikrocontrollerbasierten Pulssteuerung für die Plasmaquelle Delta Gun
3 Realisierungsphase
Seite 43
3.2.3.3 Funktionen des Controllerprogramms
•
void main(void):
Dies ist die Einstiegsstelle für den Controller nach dem Einschalten der Versorgungsspannung.
Nach der Initialisierung der notwendigen Register durch Initialise() beginnt eine Endlosschleife,
in welchem die Ausgänge gemäß der gewünschten Betriebsart (vgl. 3.2.1) gesetzt oder durch
Aufruf der Funktion Modulation() moduliert werden. CommandByte bezeichnet die gewählte Be­
triebsart (vgl. 3.2.3.1).
•
void Initialise(void):
Diese Funktion wird nur einmal nach einem (Neu­)Start des PICs aus der main()­Funktion aufge­
rufen und konfiguriert den PIC für die spätere Anwendung. Die trisx­Register definieren die Pins
des jeweiligen Ports x als Aus­ oder Eingänge. Der Befehl trisd = 0x00 weist allen Pins von
Port D den Status von Ausgängen zu, trisb = 0xFF macht die Pins von Port B zu Eingängen. Da­
nach werden die im EEPROM gespeicherten Werte ausgelesen, aus welchen wiederum die für
die Modulation notwendigen Zeiten berechnet werden. Diese Berechung wird in der
Beschreibung der Funktionen CreateCommand() und CalculateTaTb() erläutert. Nun wird der
PIC durch entsprechendes Setzen von SSPCON und SSPADD als I2C­Slave mit 7­Bit­Adresse
(0110 0000) konfiguriert. Da die Schnittstellenkommunikation interruptgesteuert ist, muss
schließlich noch die entsprechende Interruptquelle (SSP) freigegeben (vgl. dazu auch [13])
werden.
•
void interrupt(void):
Die I2C­Kommunikation funktioniert interruptgesteuert: Schreib­ und Leseoperationen des I2C­
Masters (IO­Warrior) erzeugen Interrupts, deren Bearbeitung die Basis der eigentlichen Kom­
munikation darstellt. Zu Beginn der Funktion interrupt() wird geprüft, ob es sich um einen
durch das Kommunikationsmodul (SSP) des PICs generierten Interrupt handelt. Danach wird der
PIC wieder für weitere Interrupts freigegeben und die Art der I2C­Operation festgestellt.
Folgende I2C­Operationen sind möglich (vgl. [13]):
•
Schreiboperation, letztes Byte war Adresse:
Der Master hat eine Schreiboperation begonnen, im ersten Byte wurde die Adresse des Slaves
übermittelt. Durch Test = sspbuf erfolgt das Auslesen des Registers sspbuf. Obwohl der Inhalt
dieses Registers zu diesem Zeitpunkt nicht benötigt wird, muss es ausgelesen werden, um es
damit für das nächste Byte zu leeren.
Entwicklung und Realisierung einer mikrocontrollerbasierten Pulssteuerung für die Plasmaquelle Delta Gun
3 Realisierungsphase
•
Seite 44
Schreiboperation, letztes Byte war Datenwort:
Nachdem im ersten Byte die Adresse übertragen wurde, erfolgt nun der Empfang der Nutz­
informationen. Dies sind die in 3.2.3.1 definierten Kommando­ oder Datenpakete, welche in
dem Array CommandString abgelegt und in der Funktion CreateCommand() weiterverarbeitet
werden.
•
Leseoperation, letztes Byte war Adresse:
Der Master hat eine Leseoperation initiiert. Durch Aufrufen der Funktion WriteI2C() kann der
PIC nun ein Byte über den I2C­Bus senden.
•
Leseoperation, letztes Byte war Datenwort:
Nachdem in der vorherigen Operation bereits ein Byte gesendet wurde, könnten hier nun die
übrigen, gemäß der vom I2C­Master geforderten Anzahl, zu sendenden Bytes übermittelt
werden. Dies funktioniert jedoch seitens des IO­Warriors nicht. Sobald das n­te Byte größer
als 127 ist, erfolgt ein Übertrag von 128 auf das (n+1)­te Byte. Daher wurde das Senden meh­
rerer Bytes nach einer Leseinitiierung nicht implementiert, was in der praktischen
Anwendung in Bezug auf das DeGuSCi jedoch keine Einschränkung darstellt.
•
I2C­Master hat ein „not acknowledged“ gesendet:
Bei der Übertragung von Paketen vom Master zum Slave wurde ein „not acknowledged“ mit­
gesendet. Dies führt zu einem Hardware­Reset der I2C­Logik des Slaves und braucht im Code
nicht bearbeitet zu werden.
•
void CreateCommand (void):
Nach dem Empfang von I2C­Nutzinformationen in der interrupt()­Funktion werden diese nun
ausgewertet. Zuerst wird anhand des ersten Bits des ersten Bytes geprüft, ob es sich um ein
Kommandopaket oder um das erste Byte des Datenpaketes handelt. Liegt ein Kommandopaket
vor, werden die entsprechenden Zustände/Operationen gemäß 3.2.3.1 eingenommen/ausgeführt.
Eine Besonderheit ist dabei, dass das Beschreiben des EEPROMs nur erlaubt wird, wenn sich die
IGBTs nicht im Modulationsmodus (entspricht CommandByte = 0x00 oder CommandByte =
0x01) befinden. Dies ist notwendig, da das Beschreiben des EEPROMs relativ lange dauert (4
bis 8 ms) und ein Schreibvorgang die laufende Signalmodulation stören könnte. Ist das erste Bit
des ersten empfangenen Bytes Null, so wurde das erste Byte des Datenpaketes empfangen. So­
lange noch nicht alle Bytes empfangen sind (PointerForCommandString < 4), wird lediglich die
Entwicklung und Realisierung einer mikrocontrollerbasierten Pulssteuerung für die Plasmaquelle Delta Gun
3 Realisierungsphase
Seite 45
Zeigervariable für das Array CommandString erhöht. Sind alle vier Bytes empfangen, werden
diese mittels Bitschiebeoperationen zu zwei 16­Bit­Variablen zusammengesetzt. Anschließend
erfolgt die Berechnung der übrigen zur Modulation notwendigen Zeiten.
•
void CalculateTaTb(void):
Diese Funktion wird aufgerufen, nachdem in der Funktion CreateCommand() das entsprechende
Kommadopaket zur Verwendung der zuletzt übermittelten Werte erkannt wurde. Es erfolgt die
Ermittlung des Modulationsmodusses (in Abhängigkeit von Tp) und die Berechnung von Ta und
Tb (vgl. 2.2). Gleichzeitig wird eine eventuelle Initialisierung (vgl. gestrichelte Felder in Abbil­
dung 3.9) der Signalausgänge durchgeführt. Schließlich werden die Zeiten Ta und Tb in „Warte­
zeit [5 µs]“ (TaUs/TbUs) und in „Wartezeit [ms]“ (TaMs/TbMs) aufgeteilt. Der minimale Wert
für TaUs/TbUs ist dabei auf 2 limitiert (vgl. Funktionsbeschreibung Modulate()). •
void Modulate(void):
Hier erfolgt die Signalmodulation gemäß des Programmablaufplans nach Abbildung 3.9. Eine
Besonderheit stellt dabei die Zeile Wait(TaMs,TaUs­2) dar. Im Modulationsmodus 2
(1/3 < Tp < 2/3) können die Schaltvorgänge prinzipbedingt nicht in der Form set_bit(portd,x) –
wait – clear_bit(portd,x) beschrieben werden. Dies führt dazu, dass sich die Laufzeit des die Mo­
dulationssequenz umgebenden Programmcodes nicht wie in den Modulationsmodi 1 und 3 auf
alle Signale gleich, sondern lediglich auf eines der drei Signale auswirkt. Praktisch führt dies zu
Unterschieden in den Ein/Aus­Verhältnissen von bis zu 15%. Durch eine Verkürzung der Warte­
zeit um 10 µs mittels Wait(TaMs,TaUs­2) zu Beginn der Sequenz wird die Laufzeit des übrigen
Programmcodes kompensiert und die Differenz in den Ein/Aus­Verhältnissen auf unter 2% redu­
ziert. Der Wert der Variable TaUs darf jetzt natürlich nie kleiner als 2 werden, was die in
CalculateTaTb() festgelegte Beschränkung erklärt.
•
void Wait(unsigned long MilliSeconds, unsigned long FiveMicroSeconds):
Die in 3.2.2.2 beschriebenen Wartefunktionen (delay_s, delay_ms, delay_us) erwiesen sich als
zu ungenau, um damit eine verlässliche Signalmodulation beschreiben zu können. Die Parameter
der neu erstellten Verzögerungsfunktion wurden durch Messungen ermittelt. Bei der Anwendung
ist der bei jedem Aufruf entstehende Offset von 12,15 µs zu beachten: Wait(0,5) führt zu einer
effektiven Verzögerung von t = 5⋅5  s  12,15  s = 37,15  s.
Entwicklung und Realisierung einer mikrocontrollerbasierten Pulssteuerung für die Plasmaquelle Delta Gun
3 Realisierungsphase
•
Seite 46
void WriteI2C(char ByteToWrite):
Aufgerufen aus der interrupt()­Funktion ist dies die Implementierung des Schreibvorgangs auf
den I2C­Bus. Nachdem das sspbuf­Register leer ist, wird es mit dem zu sendenden Byte be­
schrieben. Sollte eine Schreibkollision auftreten sein, wird der Vorgang bis zum erfolgreichen
Abschluss wiederholt.
•
void WriteEEPROM(char Address, char Data):
Zum Beschreiben des EEPROMs müssen zuerst alle Interrupts deaktiviert werden, um eine Un­
terbrechung der von Microchip festgelegten Befehlsreihenfolge (eecon2 = 0x55; eecon2 = 0xA;
set_bit(eecon1,1)) zu verhindern. Danach werden Adresse und zu schreibendes Zeichen in die
Register eeadr und eedata geschrieben. Schließlich erfolgt durch die o.g. Befehlsreihenfolge der
eigentliche Schreibvorgang.
•
unsigned char ReadEEPROM(char Address):
Zum Auslesen des EEPROMs muss lediglich die Adresse übergeben, sowie der Lesevorgang
durch clear_bit(eecon1,7) und set_bit(eecon1,0) initialisiert werden. Anschließend steht das ent­
sprechende Zeichen im Register eedata zur Verfügung.
Entwicklung und Realisierung einer mikrocontrollerbasierten Pulssteuerung für die Plasmaquelle Delta Gun
3 Realisierungsphase
Seite 47
3.3 Leistungsteil
3.3.1 IGBT
Abbildung 3.10: IGBT SKM500GA123
Nachdem die Modulauswahl anhand der vorgegebenen Strom­ und Spannungsbelastung gemäß Ka­
pitel 2.3 erfolgt ist, wird nun eine Worst­Case­Verlustleistungsbetrachtung bezüglich der später im
Betrieb verwendeten Ströme und Taktfrequenzen durchgeführt (vgl. [6]: Kapitel 2.3 und 3.2).
IGBTs sind keine idealen Schalter und erzeugen sowohl beim Schalten als auch im Durchlasszu­
stand nicht zu vernachlässigende Verlustleistungen. Die Gesamtverluste jedes der drei im DeGuSCi
verwendeten Transistoren setzen sich also aus den Durchlassverlusten Pfw,T und den Schaltverlusten
Pon,T und Poff,T (beim Ein­ und Ausschalten) zusammen:
P T = P fw ,T  P On ,T  P Off ,T
Während die Schaltverluste von den zum Schalten notwendigen Energie Eon,T und Eoff,T und der
verwendeten Schaltfrequenz f abhängig sind, werden die Durchlassverluste durch den fließenden
Strom IC, die Kollektor­Emitter­Sättigungsspannung UCE,sat und das Tastverhältnis DT bestimmt:
P On ,T = f ⋅E On ,T
P Off ,T = f ⋅ E Off ,T
P fw ,T = I C ⋅U CE , sat ⋅ DT
Entwicklung und Realisierung einer mikrocontrollerbasierten Pulssteuerung für die Plasmaquelle Delta Gun
3 Realisierungsphase
Seite 48
Der allgemeiner Zusammenhang für die Durchlassverluste Pfw,T gilt bei der im DeGuSCi verwende­
ten Beschaltung nur im Modulationsmodus I. In den Modi II und III ergibt sich gemäß folgender
Herleitung, dass die Durchlassverluste unabhängig von der Einschaltdauer sind.
T
1
Der arithmetische Mittelwert des Kollektorstromes ist definiert als: IC =
⋅ ∫ iC t  dt
T
0
Gemäß Abbildung 2.1 ergeben sich in einer Periode im Modus II drei verschiedene und Modus III
fünf verschiedene Strombelastungen, welche für jeden der drei IGBTs gelten.
Modus II:
Modus III:



 t 1 = T ⋅ DT −
 t2 = T ⋅



1
:
3
2
− DT :
3
 t 3 = T ⋅ DT −
1
:
3
IC =
I
2
IC = I
IC =





 t2 = T ⋅
I
2
IC =
I
3
3
− DT :
3
IC =
I
2
2
:
3
IC =
I
3
3
− DT :
3
IC =
I
2
2
:
3
IC =
I
3
 t 3 = T ⋅ DT −
t4 = T ⋅





2
:
3
 t 1 = T ⋅ DT −
 t 5 = T ⋅ DT −
Bildet man nun das Integral, so ergibt sich:
Modus II:
IC =
[
Modus III:
IC =

1
I
1
⋅ 2 ⋅ ⋅T ⋅ DT −
T
2
3
[ 
1
I
2
⋅ 3⋅ ⋅T ⋅ DT −
T
3
3

 I ⋅T ⋅
 
 2⋅

2
− DT
3

]

= I ⋅ DT −
I
3
⋅T ⋅ − DT
2
3
 ]


1 2
1
 − DT = ⋅ I
3 3
3
= I ⋅ DT −

2 3
1
 − DT = ⋅ I
3 3
3
Entwicklung und Realisierung einer mikrocontrollerbasierten Pulssteuerung für die Plasmaquelle Delta Gun
3 Realisierungsphase
Seite 49
Damit gilt in den Modi II und III für die Durchlassverluste:
P fw ,T =
1
⋅ I ⋅U CE , sat
3
Zur Bestimmung der Kollektor­Emitter­Sättigungsspannung müssen die von der Sperrschichttem­
peratur abhängigen Kennwerte Einsatzspannung UCE(Tj) und Durchlass­Ersatzwiderstand rCE(Tj) be­
stimmt werden. Deren Kennlinien sind dem Datenblatt zu entnehmen ([14]: Figure 11):
U CE , sat = U CE T j   r CE T j ⋅ I C
U CE T j  = 1,5  0,002 ⋅T j − 25 [V ]; T j in °C
r CE T j  = 0,0025  0,00001⋅T j − 25 []; T j in °C
Sowohl zwischen den IGBT­Chips und dem Modulgehäuse als auch zwischen dem Modulgehäuse
und dem Kühlkörper existiert ein Wärmeübergangswiderstand ( Tjc und  Tch). Multipliziert man
diese mit der abzuführenden Verlustleistung, ergibt sich bei vorgegebener Temperatur der IGBT­
Chips Tj die maximal zulässig Temperatur des Kühlkörpers Th:
T jc = P T ⋅ R th , jc
T ch = P T ⋅ R th , ch
T h = T j − T ch − T jc
Für die Worst­Case­Betrachtung wird obige Rechnung nun für den maximal möglichen Strom von
500 A bei der maximalen Frequenz von 7000 Hz durchgeführt. Es werden allerdings nur die Modi
II und III betrachtet, da ein Betrieb mit diesen Parametern im Modus I aufgrund der entstehenden
Abschaltüberspannungen nicht realisierbar ist (vgl. Kapitel 3.3.4.3). Gemäß [14], Figure 3 sind bei
RG = 5  (vgl. Kapitel 3.3.3) zum Einschalten des IGBTs (EOn,T) 75 mWs und zum Abschalten
(EOff,T) 60 mWs notwendig. Als maximal zulässige Sperrschichttemperatur werden 125 °C festge­
legt.
Entwicklung und Realisierung einer mikrocontrollerbasierten Pulssteuerung für die Plasmaquelle Delta Gun
3 Realisierungsphase
Seite 50
Damit ergibt sich:
P On ,T = f ⋅ E On ,T = 7000 Hz ⋅75 mWs = 525 W
P Off ,T = f ⋅E Off ,T = 7000 Hz ⋅60 mWs = 420 W
U CE 125 = 1,5  0,002 ⋅125 − 25 [V ] = 1,70 V
r CE 125 = 0,0025  0,00001⋅125 − 25 [] = 0,0035 
1
U CE , sat = U CE T j   r CE T j ⋅ I C = 1,70 V  0,0035⋅ ⋅500 A = 2,28V
3
P fw ,T =
1
⋅ I ⋅U CE , sat = 166,66 A⋅2,28V = 380,56 W
3
P T = P fw ,T  P On ,T  P Off ,T = 1325,26 W
T jc = P T ⋅ R th , jc = 1325,26 W ⋅0,041
K
= 54,35 K
W
T ch = P T ⋅ R th , ch = 1325,26 W ⋅0,038
K
= 50,37 K
W
T h = T j − T ch − T jc = 125° C − 54,35 K − 50,37 K = 20,28 ° C
Die Kühlkörpertemperatur sollte also bei maximaler Frequenz 20 °C nicht übersteigen. Aufgrund
der großzügig dimensionierten maximalen Sperrschichttemperatur von 125 °C, welche damit um
25 °C unter der vom Hersteller angegebenen zulässigen Temperatur von 150 °C liegt, sind jedoch
100
I = 500 A
80
60
40
20
0
1000 2000 3000 4000 5000 6000 7000
Frequenz [Hz]
Zulässige Kühlkörpertemperatur [°C]
Zulässige Kühlkörpertemperatur [°C]
auch hier ausreichende Sicherheitsreserven vorhanden.
60
f = 7000 Hz
50
40
30
20
0
100
200
300
400
500
Strom [A]
Entwicklung und Realisierung einer mikrocontrollerbasierten Pulssteuerung für die Plasmaquelle Delta Gun
3 Realisierungsphase
Seite 51
3.3.2 Kühlkörper
Zum Abführen der in den IGBTs erzeugten Verlustleistung wird ein Wasserkühler verwendet.
Dieser besteht aus zwei miteinander verschraubten und mittels O­Ring abgedichteter Aluminium­
platten, auf welchen neben den IGBTs auch die Längsspannungsregler des Netzteils aufgeschraubt
werden. Der eigentliche Kühlkanal ist mäanderförmig ausgeführt, um eine bestmögliche Wärmeab­
führung durch das Kühlmittel zu gewährleisten. In der späteren Innenseite der oberen Aluminium­
platte sind Fräsungen für drei Temperatursensoren vorgesehen (vgl. Kapitel 3.3.4.2). Die Abbil­
dungen 3.11 und 3.12 zeigen die Kühlplatte in verschiedenen Ansichten.
Abbildung 3.11: Kühlplatte Außenseiten
Abbildung 3.12: Kühlplatte Oberteil Innenansicht
Entwicklung und Realisierung einer mikrocontrollerbasierten Pulssteuerung für die Plasmaquelle Delta Gun
3 Realisierungsphase
Seite 52
3.3.3 Treiber
Der Treiberstufe kommt bei der Verwendung von Hochleistungstransistoren eine besondere Bedeu­
tung zu. Sie muss nicht nur die zum Umladen der Gatekapazitäten notwendigen Energien (EOn,T und
EOff,T) mit der geforderten Taktfrequenz aufbringen, sondern auch die den Treiber ansteuernde
Schaltung vor eventuellen Betriebsstörungen des IGBTs schützen. Das Treibermodul SKHI 10/12
von Semikron erfüllt diese Forderungen und weist darüber hinaus folgende Eigenschaften auf:
•
Eingangslevel entweder auf CMOS­ (+15 V) oder auf HCMOS­Level (+5 V) konfigurierbar
•
Fehlerspeicher, welcher eine Ansteuerung des IGBTs im Kurzschlussfall oder bei unzurei­
chender Versorgungsspannung unterbindet
•
Transformator zur galvanischen Trennung von Logik­ und Leistungsteil (Prüfspannung 4000 V)
•
DC/DC­Wandler, um die zur Ansteuerung notwendigen Gatespannungen (+15 V und ­8 V) zu
erzeugen
•
Kurzschlussüberwachung
•
Ausgangsschaltung, welche für das Schalten von 400A­IGBTs bei 20 kHz dimensioniert ist
Abbildung 3.13: Blockschaltbild Semikron SKHI 10/12 [15]
Abbildung 3.14: Semikron SKHI 10/12
Am Eingang des Treibers werden die Versorgungsspannung (+15 V und GND) und das Ansteuersi­
gnal zugeführt. Im DeGuSCi wird als Ansteuersignal ohne weitere Treiberstufe der Pegel des jewei­
lige PIC­Ausgangs (RD5, RD6 oder RD7) verwendet. Da es sich dabei um TTL­Signale handelt,
muss der SKHI­Treiber auf HCMOS­Level durch Setzen des Jumpers J1 konfiguriert werden.
Entwicklung und Realisierung einer mikrocontrollerbasierten Pulssteuerung für die Plasmaquelle Delta Gun
3 Realisierungsphase
Seite 53
Die Betriebsspannung darf nicht unter +13 V absinken, da der Treiber ansonsten nicht mehr die
zum Schalten der IGBTs nötige Energie aufbringen kann und in den Fehler­Modus wechselt. Dies
wird durch entsprechende Dimensionierung des Netzteils sichergestellt (vgl. 3.4.1). Auf den Kurz­
schlussschutz wird in 3.3.4.1 eingegangen.
Der SKHI­Treiber verfügt über einen Reset­Eingang und einen Error­Ausgang. Der Reset­Eingang
muss auf GND gezogen werden, um ein Ansteuern des IGBTs zu ermöglichen. Im PC­Betrieb
steuert der IO­Warrior die Eingänge der drei verwendeten Treiber (P1.3, P1.5 und P1.7), während
im Standalone­Betrieb der PIC diese Aufgabe übernimmt (Pins RC5, RC6 und RC7). Befindet sich
der Treiber im Fehlermodus (Error­Ausgang auf High bei Verwendung negativer Logik (J3
gesetzt)), kann ein Reset entweder durch ein mindestens 5 µs langes High­Signal auf dem Reset­
Eingang oder aber durch Abschalten der Versorgungsspannung erfolgen. Dieses Reset­Signal kann
im PC­Betrieb durch den IO­Warrior erzeugt werden (P1.2, P1.4 und P1.6). Ein Reset im Standa­
lone­Betrieb ist nicht vorgesehen.
Da die SEMIDRIVER SKHI 10/12 IGBT­Universaltreiber darstellen, müssen sie auf das jeweilige
IGBT­Modul angepasst werden. Das Schaltverhalten von IGBT­Modulen wird primär durch die
Umladegeschwindigkeit der Gatekapazität bestimmt. Eine der am häufigsten verwendeten Variante
zur Beeinflussung dieser Geschwindigkeit ist die Widerstandssteuerung, bei welcher durch Wider­
stände in Serie zu einer Spannungsquelle eine Stromprägung erfolgt. Je kleiner dieser Widerstand,
desto höher ist der Strom, und desto schneller wird die Gatekapazität umgeladen. Die Geschwindig­
keit des Umladens bestimmt jedoch die Höhe der entstehenden Abschaltüberspannung sowie die
notwendige Schaltenergie (vgl. [14]: Figure 3). Semikron empfiehlt für das IGBT­Modul SKM500­
GA123 sowohl für RG,Off als auch für RG,On 5,6  . Dazu werden parallel zu den ab Werk aus­
gelieferten 43  ­Widerständen jeweils zwei Widerstände mit 15  eingelötet. Im praktischen
Betrieb des DeGuSCi hat sich dieser Wert als guter Kompromiss zwischen den notwendigen Schalt­
energien und der entstehenden Überspannung herausgestellt.
Die SKHI­Treiber sind auch dafür vorgesehen, mehrere IGBT­Module parallel zu treiben, weshalb
die On/Off­Signale getrennt geführt sind. Wird lediglich ein IGBT angesteuert, werden die On/Off­
Signale durch Setzen des Jumpers J2 zusammengelegt, sodass nur eine Anschlussleitung zum Gate
des IGBTs geführt werden muss.
Entwicklung und Realisierung einer mikrocontrollerbasierten Pulssteuerung für die Plasmaquelle Delta Gun
3 Realisierungsphase
Seite 54
3.3.4 Schutzeinrichtungen
Die IGBTs müssen in jedem Betriebszustand vor zu hohen, die Datenblattangaben überschrei­
tenden, Belastungen geschützt werden, da dies im Grenzfall die sofortige Zerstörung des Bauteils
nach sich ziehen würden. Die Überbelastung kann hierbei durch zu hohen Strom, zu große
Spannung oder zu hohe Temperatur hervorgerufen werden.
3.3.4.1 Schutz vor Überstrom / Kurzschlussstrom
IGBTs sind grundsätzlich in der Lage, Kurzschlussströme beschädigungsfrei abzuschalten, wenn
folgende Bedingungen eingehalten werden ([6]: 3.6.2):
•
Kurschlußerkennung und ­abschaltung nach spätestens 10 µs
•
Zeit zwischen zwei Kurzschlüssen > 1 Sekunde
•
maximal 1000 Kurzschlüsse
Beim Kurzschluss steigt der Kollektorstrom sehr steil an, und es kommt zur Entsättigung des
IGBTs, was zum Ansteigen der Spannung UCE führt. Zur Erkennung eines Kurzschlusses vergleicht
der Treiber diese Spannung mit einem Referenzwert und schaltet gegebenenfalls den Transistor ab.
Dabei wird der Widerstand RG,Off erhöht, um das Abschalten im Vergleich zum Normalbetrieb zu
verlangsamen. Dadurch wird einer unzulässig hohen Abschaltüberspannung vorgebeugt. Echte
Kurzschlußfälle (acht­ bis zehnfacher Nennstrom) sind im Betrieb des DeGuSCi an der zur Zeit im
Lichtbogenlabor des Institutes EIT2 verwendeten Stromquelle nicht zu erwarten, da diese lediglich
600 A liefern kann. 3.3.4.2 Schutz vor Übertemperatur
Die im DeGuSCi verwendeten IGBTs haben eine zulässige Sperrschichttemperatur von 150 °C.
Diese kann jedoch nicht direkt gemessen werden, da ein Zugriff auf die einzelnen Transistorzellen
innerhalb des Moduls nicht möglich ist. Hier bleibt demnach nur die Möglichkeit, die Kühlkör­
pertemperatur zu überwachen, um eine Überlastung frühzeitig erkennen zu können (vgl. 3.3.1). In
der Kühlplatte wird zu diesem Zweck unter jedem IGBT ein Temperatursensor vorgesehen.
Zum Einsatz kommen I2C­kompatible, digitale Temperatursensoren vom Typ LM75. Es handelt
sich dabei um ICs in der SMD­Bauform SO8, welche ohne externe Beschaltung auskommen. Die
Pins 1 und 2 dienen der I2C­Kommunikation (SDA und SCL), die Versorgungsspannung wird über
Entwicklung und Realisierung einer mikrocontrollerbasierten Pulssteuerung für die Plasmaquelle Delta Gun
3 Realisierungsphase
Seite 55
die Pins 4 und 8 zugeführt (+3...5,5 V und GND) und über die Pins 5,6 und 7 werden die letzten
drei Bit der 7­Bit­I2C­Adresse festgelegt (High am jeweiligen Pin bedeutet 1, Low bedeutet 0). Dar­
über hinaus verfügt das IC noch über einen Ausgang, welcher High wird, wenn eine vorher festge­
legte Temperatur überschritten wurde (Pin 3). Sowohl der IO­Warrior als auch der PIC können über
den I2C­Bus das Temperaturregister der LM75 auslesen und diese Informationen auswerten. Auf die
Kommunikation wird in 3.7.2.6 eingegangen.
Um die Sensoren in die Kühlplatte integrieren zu können, werden die ICs und die Anschlusslei­
tungen auf entsprechende Platinen gelötet. Die jeweilige I2C­Adresse wird dabei bereits durch das
Layout festgelegt. Zur Isolation und zum Schutz vor Umwelteinflüssen werden die Sensorplatinen
bis auf Höhe der IC­Oberflächen mit Zwei­Komponenten­Kleber vergossen.
Abbildung 3.15: Sensorplatine LM75 Detail
Abbildung 3.16: Sensorplatine LM75 mit Leitung
Nach dem Vergießen müssen die Ränder der Sensorplatinen so entgratet werden, dass sie mit den
IC­Oberflächen und nicht mit dem Harz auf der Kühlplatte aufliegen. Anschließend werden die
Sensoren in die Kühlplatte eingepasst. Dabei wird Wärmeleitpaste verwendet, um einen bestmögli­
chen Wärmeübergang zwischen Sensoren und Kühlpatte zu gewährleisten.
Entwicklung und Realisierung einer mikrocontrollerbasierten Pulssteuerung für die Plasmaquelle Delta Gun
3 Realisierungsphase
Seite 56
Abbildung 3.17: Kühlplatte mit Sensoren
3.3.4.3 Schutz vor Überspannung
Beim harten Abschalten eines induktiven Stromes wird aufgrund der hohen Änderungsgeschwin­
digkeit des magnetischen Flusses eine Spannung über dem Schalter induziert. Um eine Zerstörung
des IGBTs zu verhindern, darf diese Spannung nicht größer als 1200V (vgl. [14]) werden. Dazu
werden Varistoren parallel zur Stromquelle geschaltet, welche ab ihrer Einsetzspannung die Strom­
quelle kurzschließen und dabei die gespeicherte magnetische Energie in Wärme umsetzen. Zur
Dimensionierung der Varistoren wird die umzusetzende Energie sowie die Spannungsfestigkeit der
zu schützenden Komponenten benötigt. Die Energie berechnet sich zu:
W =
1
⋅L⋅I2
2
Für I wird der maximal mögliche Strom der Anlage (600 A) eingesetzt. Die an den Anschluss­
klemmen wirksame Induktivität L wird durch Abschaltversuche (vgl. 4.1) ermittelt. Es ergibt sich:
W =
2
1
⋅46,24 mH ⋅  600 A  = 8323 J
2
Die maximale Einsetzspannung der Varistoren wird auf 1000 V festgelegt. Diesen Forderungen
wird eine Parallelschaltung von 15 Varistoren des Typs Epcos B40K320 gerecht. Sie verfügen über
eine Einsetzspannung von 840 V und können jeweils 640 J aufnehmen (vgl. [18]). Durch die Par­
allelschaltung ergibt sich eine Gesamtenergie von W = 15⋅640 J = 9600 J . Damit stehen
Entwicklung und Realisierung einer mikrocontrollerbasierten Pulssteuerung für die Plasmaquelle Delta Gun
3 Realisierungsphase
Seite 57
ausreichende Reserven zur Verfügung. Die Varistoren können allerdings nur sehr begrenzt Wärme­
energie abführen. Bei dem Typ B40K320 sind dies je Modul 1,4 W. Damit ergeben sich für die ge­
samte Parallelschaltung 21 W. Die für das Abführen der Wärmeenergie benötigte Zeit ermittelt sich
zu t = W / P . Setzt man einen abzuschaltenden Strom von 500 A (maximaler Strom des Delta
Gun) an, so erhält man:
1
2
⋅46,24 mH ⋅  500 A 
W
2
5780 J
t =
=
=
= 275 s
P
15⋅1,4 W
21 W
Ein vollständiges Abschalten darf also nur etwa alle fünf Minuten durchgeführt werden und sollte
daher nur in Notfällen erfolgen. Gleichzeitig ist der Betrieb des DeGuSCi im Modulationsmodus I
(Tp < 1/3) nicht zulässig, da hierbei der Strom mit dem Dreifachen der Modulationsfrequenz abge­
schaltet werden würde (vgl. 2.2) und eine schnelle Zerstörung der Varistoren die Folge wäre.
Abbildung 3.18: Varistorblock
Entwicklung und Realisierung einer mikrocontrollerbasierten Pulssteuerung für die Plasmaquelle Delta Gun
3 Realisierungsphase
Seite 58
3.4 Netzteil
3.4.1 Spannungswandlung
Im DeGuSCi werden vier verschiedene Spannungen benötigt:
•
+5 V­USB zur Versorgung des IO­Warriors
•
+5 V zur Versorgung des PICs und dessen Peripherie
•
+12 V für externe Schaltausgänge und Anzeigeelemente (LEDs)
•
+15 V für die IGBT­Treiber
Die Trennung zwischen der Versorgung des IO­Warriors und der des PICs machen es möglich, über
den Steuer­Rechner das DeGuSCi ein­ oder auszuschalten, ohne das der PIC oder sonstige
Komponenten mit Spannung versorgt werden (vgl. 3.4.2). Der IO­Warrior wird dazu über den USB
mit Strom versorgt, während das Netzteil die Versorgung der übrigen Komponenten übernimmt.
Jede Spannungsebene sollte dabei mit mindestens 1 A belastbar sein. Es wird folgende Schaltung
verwendet:
Abbildung 3.19: Schaltplan Netzteil Spannungswandlung
Dabei wird die Netzspannung zuerst durch die beiden Transformatoren TR1 und TR2 auf 18V bzw.
9 V heruntertransformiert. Anschließend erfolgt die Gleichrichtung durch die Brückengleichrichter
B1 und B2 und die Glättung durch die Elkos C6, C9 und C10. Schließlich werden die Ausgangs­
spannungen durch Längsregler stabilisiert. Die Größe der Siebkondensatoren richtet sich nach der
zulässigen Brummspannung. Diese wird auf 5% festgelegt. Nach [16], Kapitel 9.2 ergibt sich dann
die Größe der Siebelkos zu:
C ≈
I a ⋅T /2
I a ⋅T / 2
=
U BRss
U a ⋅0,05
Entwicklung und Realisierung einer mikrocontrollerbasierten Pulssteuerung für die Plasmaquelle Delta Gun
3 Realisierungsphase
Seite 59
Für die Ausgangsspannungen der Transformatoren gelten bei einer typischen Regelung von 15%
(vgl. [17]):
U a = 1,15⋅  2⋅U N
Damit berechnen sich die notwendigen Kapazitäten in den beiden Zweigen zu:
+15 V / +12 V: C 12 V /15V ≈
+5 V:
C 5V ≈
2000 mA⋅10 ms
20 mC
=
= 13,33 mF
1,5V
0,05⋅1,15⋅  2⋅18V
1000 mA⋅10 ms
10 mC
=
= 13,33 mF
0,75 V
0,05⋅1,15⋅  2⋅9 V
Um im +15 V / +12 V­Zweig größere Stromreserven zu haben, werden hier 20000 µF vorgesehen.
Im +5 V­Zweig sind dagegen aufgrund geringerer Lasten 10000 µF ausreichend.
Die Verlustleistung eines Linearreglers ist das Produkt aus der über ihm abfallenden Spannung und
dem fließenden Strom. Die höchste Verlustleistung weist demnach IC5 auf. Bei einer Belastung
von 1 A ergibt sich die Verlustleistung zu:
P V =  U N − 12 V  ⋅ I =  30 V − 12 V  ⋅1 A = 18W
In der Bauform ISOWATT200 besitzt der Baustein LM7812CP einen Wärmeübergangswiderstand
zwischen Sperrschicht und Gehäuse von Rch = 4 °C/W. Der Übergangswiderstand zwischen Ge­
häuse und Kühlkörper kann hier vernachlässigt werden, da er wesentlich kleiner als Rch ist. Daraus
resultiert eine maximal zulässige Kühlkörpertemperatur von:
T h = T j −  R ch ⋅ P V  = 150 ° C −  4 ° C /W ⋅18W  = 78° C
Die Spannungsregler werden über die in 3.3.2 beschriebene Kühlplatte gekühlt. Die berechnete
Temperatur von 78 °C liegt wesentlich über der durch die Verlustleistung der IGBTs bereits in 3.3.1
definierten maximalen Kühlkörpertemperatur von 20 °C (bei maximalem Strom). Insofern sind
keine Probleme bezüglich der Abfuhr der Verlustleistungen der Spannungsregler zu erwarten.
Entwicklung und Realisierung einer mikrocontrollerbasierten Pulssteuerung für die Plasmaquelle Delta Gun
3 Realisierungsphase
Seite 60
3.4.2 Logik
Die Not­Aus­ und Reset­Funktionalität des DeGuSCi wird ebenfalls auf der Netzteilplatine unterge­
bracht. Dazu wird folgende Logikschaltung verwendet:
Abbildung 3.20: Schaltplan Netzteil Logik
Zur Erklärung wird zunächst der Zustand nach dem Einschalten der Netzspannung bei ge­
schlossenem Not­Aus­Schalter (Not­Aus nicht aktiv) betrachtet. Unabhängig von dem durch den
IO­Warrior vorgegebenen Pegel an Pin 2 von IC6 ist Pin 6 Low, da Pin 1 über R8 auf Masse gezo­
gen wird. T2 sperrt und auch am Emitter von T1 liegt kein Potential an. Das Relais K1 ist daher
abgefallen und P1, P2 und P3 sind mit den jeweiligen Öffnerkontakten verbunden – die Ausgänge
des Netzteils (X6) sind spannungsfrei. Soll das Relais nun geschaltet werden, muss zuerst an Pin 2
von IC6 ein High­Signal anliegen. Wenn jetzt die Verbindung zwischen SL3­1 und SL4­1 (An­
schluss für Reset­Taster, vgl. 3.5.2) kurz geschlossen wird, zieht das Relais an, P1, P2 und P3 sind
mit den Schließerkontakten verbunden und der Emitter von T1 liegt auf +12 V. Gleichzeitig werden
Entwicklung und Realisierung einer mikrocontrollerbasierten Pulssteuerung für die Plasmaquelle Delta Gun
3 Realisierungsphase
Seite 61
dadurch Pin 1 und damit auch Pin 6 High und T2 kann leiten. Dieser zieht die Basis von T1 auf
Masse, womit T1 weiterhin leitend bleibt. Auch wenn die Verbindung zwischen SL3­1 und SL4­1
nun wieder unterbrochen wird, bleibt das Relais angezogen und an den Netzteilausgängen (X6) liegt
Potential an. Zum Einschalten muss also der entsprechende Ausgang des IO­Warriors High und der
Reset­Schalter geschlossen sein.
Zum Abschalten kann nun entweder die Verbindung zwischen SL3­2 und SL4­2 (Anschluss für
Not­Aus­Schalter, vgl. 3.5.1) geöffnet oder Pin 2 auf Masse gezogen werden. Wird Pin 2 Low,
sperrt T2. Die Basis von T1 liegt dann über R5 auf +12 V, was zum Sperren von T1 und damit zum
Abfallen des Relais führt. Somit ist ein Abschalten sowohl über einen externen Schalter (Not­Aus)
als auch über den IO­Warrior (verbunden mit Pin 2 von IC6) möglich.
Die Abbildungen 3.21 und 3.22 zeigen das Netzteil in aufgebauter Form. Aus Platzgründen wurden
die beiden Transformatoren übereinander angeordnet.
Abbildung 3.21: Netzteil Frontansicht
Entwicklung und Realisierung einer mikrocontrollerbasierten Pulssteuerung für die Plasmaquelle Delta Gun
3 Realisierungsphase
Seite 62
Abbildung 3.22: Netzteil Rückansicht
Entwicklung und Realisierung einer mikrocontrollerbasierten Pulssteuerung für die Plasmaquelle Delta Gun
3 Realisierungsphase
Seite 63
3.5 Schnittstellen, Anzeige­ und Bedienelemente
3.5.1 Schnittstellen
Alle Anschlüsse werden auf der Rückseite des Gerätes herausgeführt.
Abbildung 3.23: Rückplatte
Für das Netzteil sind eine Kaltgerätebuchse zum Anschluss der Versorgungsspannung (230 V) so­
wie eine BNC­Buchse zum Anschließen eines externen Not­Aus­Schalter vorgesehen. Der Not­
Aus­Schalter muss dabei als Öffner ausgeführt sein.
Die externe Kommunikation des IO­Warriors erfolgt über einen SubD9­Buchsenstecker, zwei
SubD9­Stiftstecker sowie über eine USB­Buchse. Die beiden Stiftstecker stellen dabei die Aus­
gänge (Zündung und Aux), der obere Buchsenstecker den Eingang (Aux) dar.
Der IO­Warrior kann maximal 7 mA Strom je Pin liefern. Da dies für externe Peripherie (z.B. Re­
lais des Zündgerätes) zu wenig ist, sind zusätzliche Treiberbausteine notwendig. Hierzu werden
siebenfach­TTL­NPN­Treiber des Typs ULN2003 vorgesehen, welche kurzzeitig bis zu 500 mA je
Kanal liefern können. Liegt am Eingang eines Kanals dieses ICs ein High­Pegel an, wird der zuge­
hörige Ausgang auf Masse gezogen – ein zwischen diesem Ausgang und der Versorgungsspannung
angeschlossener Verbraucher wird dann mit Strom versorgt.
Entwicklung und Realisierung einer mikrocontrollerbasierten Pulssteuerung für die Plasmaquelle Delta Gun
3 Realisierungsphase
Seite 64
Abbildung 3.24 zeigt die beiden Ausgänge Ignition Out und Aux Out mit den Treiberstufen:
Abbildung 3.24: Schaltplan Treiberstufen Ausgänge Zündung und Aux
Wird an den IO­Warrior die Versorgungsspannung angelegt, zieht dieser alle I/O­Pins auf High­Po­
tential. In der im DeGuSCi verwendeten Beschaltung würde dies bei angezogenem Netzteilrelais
ein Einschalten aller Ausgänge bewirken. Dieser Betriebszustand kann eintreten, wenn bei hoch­
gefahrenem DeGuSCi die USB­Verbindung kurzzeitig unterbrochen wird. Dabei bliebe das Netz­
teilrelais angezogen, während der IO­Warrior aufgrund des Neustarts eine Initialisierung durchfüh­
ren würde. Dies hätte eine effektvolle Zerstörung des Zündgerätes zur Folge. Da zum ULN2003
komplementäre PNP­Treiber verhältnismäßig teuer sind, wird dieses Problem durch eine Logik­
schaltung gelöst: Die Versorgungsspannung (+12 V) wird nur dann an die Ausgänge gelegt, wenn
ein Ausgang des IO­Warriors auf Low­Potential liegt. Abbildung 3.25 zeigt die verwendete
Schaltung:
Abbildung 3.25: Schaltplan Spannungsfreigabe für die Ausgänge
Entwicklung und Realisierung einer mikrocontrollerbasierten Pulssteuerung für die Plasmaquelle Delta Gun
3 Realisierungsphase
Seite 65
Liegt über R39 an der Basis von Q18 ein High­Pegel an, sperrt Q19. Damit ist die Basis des PNP­
Transistors T4 über R43 mit der Versorgungsspannung verbunden, T4 sperrt ebenfalls und an den
Ausgängen X11­9 und X12­9 liegt keine Spannung an. Wird nun Q19 durch ein Sperren von Q18
(Low­Potential an dessen Basis) leitend, leitet auch T4 und an den Ausgänge steht Potential zur
Verfügung. Im Normalbetrieb des DeGuSCi werden die drei Reset­Eingänge der IGBT­Treiber
über den IO­Warrior auf Low­Pegel gehalten (vgl. 3.3.3). Nur im Reset­Fall erfolgt ein kurzes
Setzen (10 ms) auf High­Pegel. Da die Wahrscheinlichkeit, dass der IO­Warrior einen Neustart
durchführt, während gerade ein IGBT­Treiber­Reset durchgeführt wird, vernachlässigbar gering ist,
kann einer dieser IO­Warrior­Ausgänge (P1.7) für das Schalten der Versorgungsspannung
verwendet werden.
Die digitalen Eingänge des DeGuSCi werden als Inverterstufen ausgeführt (vgl. Abbildung 3.26).
Dabei wird der jeweilige Pin des IO­Warriors auf Masse gezogen, sobald am zugehörigen Eingang
High­Potential anliegt. Dies stellt eine einfache Möglichkeit zum Schutz des IO­Warriors vor Über­
spannung/Überstrom dar.
Abbildung 3.26: Schaltplan Eingang Aux
Entwicklung und Realisierung einer mikrocontrollerbasierten Pulssteuerung für die Plasmaquelle Delta Gun
3 Realisierungsphase
Seite 66
Um den PIC16F877 flashen zu können, wird ein SubD9­Buchsenstecker vorgesehen. In Kombina­
tion mit der in 3.2.2.3 beschriebenen Modifikation am Brenngerät PICStart Plus kann dann zum
Flashen ein handelsübliches RS232­Schnittstellenkabel verwendet.
Die Anschlüsse der Leistungstransistoren werden über zugentlastete Kupferschienen mit 60 mm2
Querschnitt herausgeführt (eine gemeinsame Kollektorschiene und drei Emitterschienen), an welche
zur Verbindung mit Stromquelle und Plasmabrenner entsprechende Kabelschuhe angeschraubt
werden können.
3.5.2 Anzeige­ und Bedienelemente
Alle zur Bedienung und zur Anzeige des Betriebszustandes notwendigen Elemente werden auf der
Frontseite des Gerätes vorgesehen. Abbildung 3.27: Frontplatte
Im einzelnen sind dies:
•
Netzschalter:
Der beleuchtete Netzschalter schaltet zweipolig die Netzspannung auf die Transformatoren des
Netzteils.
•
LEDs 5V und 12V/15V:
Diese grünen LEDs dienen der Überwachung der im Netzteil erzeugten Spannungen. •
Reset­Schalter:
Der als Taster ausgeführte Schalter wird zum Hochfahren des DeGuSCi (vgl. 3.4.2) benötigt.
Entwicklung und Realisierung einer mikrocontrollerbasierten Pulssteuerung für die Plasmaquelle Delta Gun
3 Realisierungsphase
•
Seite 67
Error­LED:
Ist das Gerät eingeschaltet, aber die Control­/Interfaceplatine noch ohne Spannung, leuchtet
diese LED rot. Wird das DeGuSCi mittels des entsprechenden Befehls an den IO­Warrior und
Drücken des Reset­Tasters (vgl. 3.4.2) hochgefahren, wechselt die LED auf Grün.
•
USB­LED:
Liegt keine Spannung am IO­Warrior (über USB) an, so leuchtet diese LED rot. Wenn der IO­
Warrior mit Strom über den USB versorgt wird, aber noch nicht durch die Steuer­Software in­
itialisiert worden ist, zeigt die LED gelb. Ist das DeGuSCi dagegen über den Steuer­PC korrekt
initialisiert worden (vgl. 3.7.2.1), wird von der Software alle zwei Sekunden eine Verbindungs­
prüfung durchgeführt. Dieses wird durch kurzes Aufleuchten der grünen LED angezeigt.
•
Temperatur­LED:
Die qualitative Anzeige der Kühlkörpertemperatur ist nur in Kombination mit dem Steuer­PC
möglich. In Abhängigkeit von der verwendeten Modulationsfrequenz und der Kühlkörpertempe­
ratur leuchtet diese LED grün, gelb oder rot (vgl. 3.7.2.6).
•
Betriebsartwahlschalter:
Dieser Vierfach­Drehschalter dient zum Anwählen der in 3.2.1 beschriebenen Betriebsarten.
•
Modulations­LED:
Durch diese grüne LED wird angezeigt, ob sich das DeGuSCi im Modulationsmodus befindet.
•
LEDs T1, T2 und T3:
Hiermit wird der Status der IGBTs angezeigt. Ein Leuchten der jeweiligen LED zeigt an, dass
der entsprechende Transistor durchgeschaltet ist.
Die Leuchtdioden benötigen eine Versorgungsspannung von 12 V bei jeweils 30 mA. Die zur
Spannungsüberwachung verwendeten LEDs und die Error­LED werden direkt vom Netzteil ge­
schaltet (vgl. 6.1). Da die LEDs für Modulation und Status der IGBTs von dem Mikrocontroller ge­
steuert werden, ist ein Treiberbaustein zwischen Controller und Leuchtdioden notwendig. Auch hier
wird der bereits in 3.5.1 beschriebene ULN2003 verwendet. Für die Funktionalität der Leuchtdi­
oden für die Anzeige der USB­Verbindung und der Kühlkörpertemperatur ist ein etwas größerer
Aufwand notwendig. Die verwendeten Duo­LEDs verfügen jeweils über eine gemeinsame Kathode,
so dass zum Schalten PNP­Transistoren verwendet werden müssen. Diese können jedoch nur sper­
Entwicklung und Realisierung einer mikrocontrollerbasierten Pulssteuerung für die Plasmaquelle Delta Gun
3 Realisierungsphase
Seite 68
ren, wenn ihre Basis mindestens so positiv ist wie ihr Kollektor (12 V). Zur Steuerung stehen
allerdings nur die durch den IO­Warrior generierten TTL­Pegel zur Verfügung. Abhilfe schafft die
Schaltung nach Abbildung 3.28:
Abbildung 3.28: Schaltplan Beschaltung LEDs Verbindung und Temperatur
Liegt an der Basis des jeweiligen NPN­Transistors High­Potential an, so wird die Basis des zugehö­
rigen PNP­Transistors auf Masse gezogen. Dieser leitet und die entsprechende LED leuchtet. Ist die
Basis des NPN­Transistors dagegen auf GND gezogen oder offen, ist die Basis des PNP­Transistors
über einen Pull­Up­Widerstand mit +12 V verbunden und der PNP­Transistor sperrt. Durch den
Widerstand R16 wird erreicht, dass der rote Teil der USB­LED leuchtet, wenn durch den IO­Warri­
or an P0.2 kein Low­Pegel vorgegeben wird.
Entwicklung und Realisierung einer mikrocontrollerbasierten Pulssteuerung für die Plasmaquelle Delta Gun
3 Realisierungsphase
Seite 69
Die Abbildungen 3.29 und 3.30 zeigen die Control­/ Interfaceplatine des DeGuSCi.
Abbildung 3.29: Control­ und Interfaceplatine Top­Layer
Abbildung 3.30: Control­ und Interfaceplatine Bottom­Layer
Entwicklung und Realisierung einer mikrocontrollerbasierten Pulssteuerung für die Plasmaquelle Delta Gun
3 Realisierungsphase
Seite 70
3.6 Gehäuse und Montage
Für das DeGuSCi wird ein pulverbeschichtetes Aluminiumgehäuse mit den Außenmassen
350x250x120 verwendet. Durch die Verwendung eines Metallgehäuses wird die Gefahr von Per­
sonen­ oder Sachschäden durch eventuelle Defekte der Komponenten minimiert. Die im Gehäuse
unterzubringenden Baugruppen sind:
•
Frontplatte
•
Netzteil
•
Control­ und Interfaceplatine
•
Treiberplatinen
•
Kühlplatte mit Temperatursensoren
•
IGBTs
•
Snubber­Kondensatoren für die IGBTs
•
Kupferverschienung
•
Hartgewebeplatte zur Zugentlastung der Kupferverschienung
Zu Beginn wird die Kühlplatte auf die Grundplatte des Gehäuses geschraubt. Anschließend wird
das Netzteil mit passenden Abstandshaltern mit der Grundplatte verschraubt und die Spannungs­
regler an der Kühlplatte fixiert. Nun erfolgt die Befestigung der drei IGBTs auf der Kühlplatte. Im
Anschluß daran können die drei IGBT­Treiber mit den zugehörigen Anschlussleitungen montiert
werden. Abschließend werden die Kupferschienen und die Snubberkondensatoren auf die IGBT­
Terminals geschraubt. Die Abbildungen 3.31 bis 3.33 zeigen die so vorbereitete Grundplatte. Entwicklung und Realisierung einer mikrocontrollerbasierten Pulssteuerung für die Plasmaquelle Delta Gun
3 Realisierungsphase
Seite 71
Abbildung 3.31: Grundplatte mit montierten Komponenten (Ansicht von schräg vorne)
Abbildung 3.32: Grundplatte mit montierten Komponenten (Ansicht von schräg hinten)
Entwicklung und Realisierung einer mikrocontrollerbasierten Pulssteuerung für die Plasmaquelle Delta Gun
3 Realisierungsphase
Seite 72
Abbildung 3.33: Grundplatte mit montierten Komponenten (Ansicht von oben)
Nachdem die entsprechenden Komponenten mit der Grundplatte verschraubt sind, werden nun
Control­/Interfaceplatine, Netzbuchse und Not­Aus­Buchse an der Rückplatte angebracht.
Abbildung 3.34: Rückplatte Innenseite
Entwicklung und Realisierung einer mikrocontrollerbasierten Pulssteuerung für die Plasmaquelle Delta Gun
3 Realisierungsphase
Seite 73
Danach werden die Bedien­ und Anzeigeelemente in die Frontplatte eingepasst und die erforderli­
chen Anschlussleitungen angelötet.
Abbildung 3.35: Frontplatte Innenseite
Jetzt wird die Hartgewebeplatte zur Zugentlastung mit den Kupferschienen verschraubt. Im An­
schluss daran erfolgt das Einpassen der Grundplatte in das Frontteil und in das rechte (von vorn
gesehen) Seitenteil des Gehäuses. Danach kann die Rückplatte angebracht und mit dem rechten Sei­
tenteil und der HGW­Platte verschraubt werden. Nun werden die Frontplatte an dem Frontteil
befestigt, die Kabel verlegt, konfektioniert (Buchsenstecker in Schneid­Klemm­Technik) und ge­
mäß 6.3 angeschlossen. Zum Schluss wird der Deckel eingeschoben, das linke Seitenteil angebracht
und mit dem restlichen Gehäuse verschraubt. Die Abbildungen 3.39 und 3.40 zeigen das fertige
Endgerät.
Entwicklung und Realisierung einer mikrocontrollerbasierten Pulssteuerung für die Plasmaquelle Delta Gun
3 Realisierungsphase
Seite 74
Abbildung 3.36: DeGuSCi gesamt (ohne Deckel, Frontansicht)
Abbildung 3.37: DeGuSCi gesamt (ohne Deckel, Rückansicht)
Entwicklung und Realisierung einer mikrocontrollerbasierten Pulssteuerung für die Plasmaquelle Delta Gun
3 Realisierungsphase
Seite 75
Abbildung 3.38: DeGuSCi gesamt (ohne Deckel, Ansicht von oben)
Entwicklung und Realisierung einer mikrocontrollerbasierten Pulssteuerung für die Plasmaquelle Delta Gun
3 Realisierungsphase
Seite 76
Abbildung 3.39: DeGuSCi gesamt (Frontansicht)
Abbildung 3.40: DeGuSCi gesamt (Rückansicht)
Entwicklung und Realisierung einer mikrocontrollerbasierten Pulssteuerung für die Plasmaquelle Delta Gun
3 Realisierungsphase
Seite 77
3.7 HMI
3.7.1 Bedienung der Oberfläche
Abbildung 3.41: Screenshot DeGuSCi Panel
Abbildung 3.41 zeigt die Oberfläche des HMI DeGuSCi Panel. Sie besteht aus fünf Panels und
einem Nachrichtenfenster:
•
Panel DeGuSCi Control:
Dieses Panel ist das einzige, welches bereits beim Programmstart verfügbar ist. Zuerst erfolgt die
Initialisierung des IO­Warriors durch Klick auf den Button Enable DeGuSCi. War diese erfolg­
reich, leuchtet die Anzeige DeGuSCi connected bei jeder durchgeführten Verbindungsprüfung
(alle zwei Sekunden) grün auf. Ist das DeGuSCi zu diesem Zeitpunkt bereits eingeschaltet und
funktionstüchtig, zeigen die Anzeigen +5V und +12V / +15V ebenfalls grün. Jetzt ist auch der
Entwicklung und Realisierung einer mikrocontrollerbasierten Pulssteuerung für die Plasmaquelle Delta Gun
3 Realisierungsphase
Seite 78
Button Power Up DeGuSCi verfügbar. Wird dieser angeklickt, zieht der IO­Warrior Pin 2 von
IC6 auf High, und das DeGuSCi kann durch Drücken des Reset­Taster (maximal zehn Sekunden
nach dem Anklicken) hochgefahren werden (vgl. 3.4.2). War das Einschalten des DeGuSCi er­
folgreich, wechselt die Anzeige DeGuSCi enabled von rot blinkend auf grün leuchtend. Die üb­
rigen Panels werden freigegeben und es kann mit dem Zünden des Brenners fortgefahren
werden.
•
Panel Ignition Control:
Nach einem Klick auf den Ignition­Button und der Bestätigung einer Sicherheitsabfrage werden
die Zündausgänge des DeGuSCi gemäß des durch die Datei DeltaGun_Zuendung.ini festgeleg­
ten Zündablaufes gesetzt (vgl. 3.7.2.3). Der Status der Ausgänge wird dabei durch die Anzeigen
R0 bis R7 angezeigt. Gleichzeitig werden der Log Data­Modus aktiviert (Protokollierung der
Betriebsparameter, vgl. 3.7.2.7) und alle IGBTs eingeschaltet (Betriebsart „alle an“).
•
Panel IGBT Status:
Dieses Panel dient der Überwachung der IGBT­Temperaturen und der Kontrolle der Fehler­ und
Resetfunktionen der IGBT­Treiber (vgl. 3.3.3 und 3.3.4.2). In Abhängigkeit von der gewählten
Betriebsart der Transistoren (alle an, alle aus, Modulation) wird die kritische Temperatur der
Kühlplatte (gültig für 500 A) angezeigt. Bei Erreichen der kritischen Temperatur wird die jewei­
lige IGBT­Temperatur in Gelb, bei Überschreiten der kritischen Temperatur um mehr als 10°C
in Rot angezeigt. Meldet ein IGBT­Treiber einen Fehler, so blinkt die Error­Anzeige rot und der
jeweilige Reset­Button wird verfügbar. Mit einem Klick auf diesen Button kann der IGBT­
Treiber dann zurückgesetzt werden.
•
Panel Aux Control:
Zum Schalten der Aux­Ausgänge stehen vier Schalter (Out 1 bis Out 4) zur Verfügung. Ein
High­Pegel an einem der Aux­Eingänge führt zum Aufleuchten der jeweiligen In­Anzeige.
•
Panel IGBT Control:
Im fünften Panel werden die Wahl der Betriebsart und die Einstellungen der Frequenz und des
Ein/Aus­Verhältnisses vorgenommen. Desweiteren können die Werte für Frequenz und Ein/Aus­
Verhältnis im EEPROM gespeichert werden. Durch die drei Radiobuttons kann der Benutzer
festlegen, ob bei Veränderung von Frequenz und Ein/Aus­Verhältnis die neuen Werte sofort an
den Controller übermittelt und verwendet werden sollen, oder ob dies erst nach dem Klicken auf
die Buttons Send bzw. Use erfolgen soll. Der Regler für das Ein/Aus­Verhältnis ist dabei bei
Entwicklung und Realisierung einer mikrocontrollerbasierten Pulssteuerung für die Plasmaquelle Delta Gun
3 Realisierungsphase
Seite 79
Programmstart auf den Wertebereich von 40% bis 100% beschränkt, um eine Beschädigung der
IGBTs und/oder der Varistoren zu verhindern. Zu Testzwecken kann diese Beschränkung durch
Anklicken der Checkbox Enable full range (0...100%) aufgehoben werden. Im linken Bereich
des Panels werden Frequenz und Ein/Aus­Verhältnis in verschiedenen Kategorien angezeigt. Set
gibt die Sollwerte gemäß der Positionen der Einstellregler wieder. Calculated berücksichtigt die
bei der Berechnung der zur Modulation notwendigen Zeiten im PIC entstehenden Rundungsfeh­
ler und gibt damit die aus den Sollwerten resultierenden Istwerte an. Die Werte in den Buffered­
Feldern stellen die Parameter dar, die der PIC gespeichert hat, welche aber noch nicht zur Modu­
lation verwendet werden. Die im Modulation­Modus benutzten Werte werden in der Used­Kate­
gorie angezeigt.
•
Nachrichtenfenster:
Im Nachrichtenfenster werden Statusmeldungen wie zum Beispiel Fehler der IGBT­Treiber oder
Ablauf der Zündung angezeigt. Ist die Checkbox Show additional messages angeklickt, werden
zusätzlich vom IO­Warrior generierte Fehlermeldungen sowie die I2C­Pakete zwischen PIC und
IO­Warrior beim Übermitteln neuer Werte dargestellt. Unter dem Nachrichtenfenster befindet
sich die Checkbox Log Data. Ist diese aktiviert, werden bei Änderungen der Betriebsart und zu­
sätzlich alle zwanzig Sekunden die Parameter Datum, Uhrzeit, Betriebsart, IGBT­Temperatur 1,
IGBT­Temperatur 2, IGBT­Temperatur 3, Frequenz und Ein/Aus­Verhältnis in der Datei
DeGuSCi_Data.log protokolliert. 3.7.2 Besonderheiten
Große Teile des Programmcodes bestimmen das Verhalten der eigentlichen Oberfläche. Dabei wird
festgelegt, wann zum Beispiel auf ein Panel zugegriffen werden darf oder wann ein Button verfüg­
bar ist. Durch entsprechend gewählte Variablennamen sind diese Codeteile selbsterklärend, weshalb
hier nur auf Programmpassagen eingegangen wird, die der eigentlichen Steuerung des DeGuSCi
dienen.
Entwicklung und Realisierung einer mikrocontrollerbasierten Pulssteuerung für die Plasmaquelle Delta Gun
3 Realisierungsphase
Seite 80
3.7.2.1 Initialisierung der IO­Warrior­Ports
Durch das Klicken auf den Button Enable DeGuSCi wird durch IOWarriorActive = true der Zugriff
auf den IO­Warrior ermöglicht (vgl. 3.1.4). Damit werden automatisch auch alle Pins des IO­War­
riors auf High­Potential gezogen. Gemäß der verwendeten Beschaltung müssen die Pins, welche
Eingänge darstellen, auf 1 gesetzt werden. Die als Ausgang konfigurierten Pins werden dagegen zu
Beginn auf 0 gesetzt, womit auch die entsprechenden Ausgänge deaktiviert sind. Zum Schreiben
der Ports wird der durch die C++­Klasse „IOWarrior_Package“ zur Verfügung gestellte Befehl
WriteByteToInterface(int InterfaceID, unsigned char Byte) verwendet. Die Pin­Zuweisungen sowie
deren Initialisierungswerte können Kapitel 6.2 entnommen werden. Ist die Initialisierung erfolg­
reich wird die Funktion IOWarriorConnect ausgeführt und die Verbindungsprüfung (vgl. 3.1.4)
gestartet.
3.7.2.2 Funktion IOWarriorValueRead
Die Funktion IOWarriorValueRead ist als OnValueRead­Fuktion (vgl. 3.1.4) eingehängt. Damit
startet die Klasse IOWarrior_Package zur Laufzeit einen Read­Thread, welcher bei Änderung des
Portstatus des IO­Warriors die Funktion IOWarriorValueRead aufruft. In dieser werden dann die
Zustände der als Eingang konfigurierten Pins ausgewertet. Im einzelnen sind dies:
•
P0.1 (IO­Warrior­>ReadIOWarrior_Interface(0) & 0x002):
Ist dieser Eingang Null, so ist das Relais des Netzteils angezogen und die Control­/Interface­
platine wird mit Strom versorgt – das DeGuSCi ist hochgefahren und die OnPowerUp­Routine
wird ausgeführt. Liegt dagegen P0.1 auf High­Potential, ist das Relais abgefallen und damit das
DeGuSCi nicht (mehr) aktiv. War das Gerät zuvor hochgefahren, wird die OnShutdown­Funkti­
on aufgerufen.
•
P1.0 und P1.1 :
Dieser beiden Eingänge dienen der Überwachung der im Netzteil erzeugten Spannungen 5 V und
12 V / 15 V. Ihr Status wird im Panel DeGuSCi Control dargestellt.
•
P1.2, P1.4 und P1.6:
Wird einer dieser Eingänge Null, so hat der entsprechende IGBT­Treiber einen Fehler gemeldet.
Es erfolgt die Anzeige des Fehlers im IGBT Status­Panel und der Aufruf der OnIGBTError­
Funktion.
Entwicklung und Realisierung einer mikrocontrollerbasierten Pulssteuerung für die Plasmaquelle Delta Gun
3 Realisierungsphase
•
Seite 81
P2.4 bis P2.7:
Mit Hilfe dieser Eingänge erfolgt die Auswertung der vier Aux­Eingänge, deren Status im Panel
Aux angezeigt wird. Eine Ergänzung des Codes an dieser Stelle, um auf Änderungen des Aux­
Einganges zu reagieren, ist problemlos möglich.
3.7.2.3 Steuerung des Zündvorgangs
Zur Zündung des Delta Gun wird ein Zündgerät verwendet, welches einen Hochspannungspuls zwi­
schen Kathode und Neutrode einkoppelt und damit einen Pilotlichtbogen im Brenner erzeugt. Nach
einem Klick auf den Ignition­Button und der Bestätigung der Sicherheitsabfrage werden zunächst
der I2C­Modus des IO­Warriors deaktiviert und anschließend die beiden I2C­Signalleitungen auf
GND gezogen. Dies vermindert eine Beeinflussung des Busses durch den Hochspannungspuls.
Nach Abschluss des Zündvorgangs wird der I2C­Modus wieder aktiviert. Ein Abbruch der Zündung
ist jederzeit durch nochmaliges Anklicken des Ignition­Buttons möglich.
Insgesamt werden zur Zündung fünf Relais/Schütze in einem bestimmten zeitlichen Ablauf ge­
schaltet. Um diesen Ablauf ohne Änderung des Quellcodes variieren zu können, wird dieser durch
eine Konfigurationsdatei (DeltaGun_Zuendung.ini) mit folgendem Inhalt beschrieben:
[Ignition]
0=3;1;0;0; 1=6;0;0;0; 2=1;1;0;0; 3=2;1;0;1; 4=0;1;0;1; 5=0;0;0;1; 6=1;0;0;0;
7=2;0;0;1; 8=3;0;0;0; End=9
Jeder Abschnitt stellt dabei ein Kommando mit folgender Syntax dar:
Befehlsnummer = Relaisnummer;
Sollzustand des Relais;
Wartezeit in Sekunden, bis das Relais zum vorherigen Zustand zurückkehren soll (falls > 0);
Wartezeit in Sekunden, bis der nächste Befehl ausgeführt werden soll
So bedeutet die Zeile 3=2;1;0;1, dass als dritter Befehl das Relais 2 auf Eins gesetzt werden soll, es
nicht automatisch nach einer Wartezeit wieder abfällt und dass der nächste Befehl erst nach einer
Sekunde Wartezeit ausgeführt wird.
Entwicklung und Realisierung einer mikrocontrollerbasierten Pulssteuerung für die Plasmaquelle Delta Gun
3 Realisierungsphase
Seite 82
Diese Datei wird mittels Aufruf von LoadIgnitionIniFile geladen und interpretiert. In dieser Funkti­
on wird zunächst mit der Datei eine Instanz der Klasse TIniFile gebildet. Anschließend werden die
einzelnen Befehle als Strukturen in einer Instanz der Klasse TList abgelegt. Als Ergebnis steht dann
die Liste ListOfCommands zur Verfügung, welche die Kommandos im Integerformat beinhaltet.
Mit Hilfe der Funktion ProcessIgnitionCommand wird diese Liste in entsprechende Schaltbefehle
für den IO­Warrior umgesetzt. Beinhaltet ein Zündkommando eine Wartezeit, nach der das jewei­
lige Relais in seinen vorherigen Zustand zurückkehren soll, wird diese Wartezeit durch dynamische
Timer der Klasse TPlusTimer implementiert. Die Klasse TPlusTimer ist von der Klasse TTimer
abgeleitet und bietet die Möglichkeit, die Relaisnummer sowie den vorherigen Zustand zu über­
geben.
3.7.2.4 I2C­Pakete
Wie bereits in 2.1 beschrieben, können die Slaves an einem I2C­Bus im 7­ oder im 10­Bit­Modus
adressiert werden. Da im DeGuSCi nur vier Slaves verwendet werden, genügt die 7­Bit­
Adressierung. Um ein Gerät nun anzusprechen, wird die Adresse durch ein achtes Bit (LSB)
ergänzt. Für eine Schreiboperation ist dieses Bit Null, für eine Leseoperation ist es Eins.
Die Adresse des PICs wird durch das Beschreiben des Register sspadd im Mikrocontrollercode ge­
wählt (0110 000). Bei den Temperatursensoren sind die ersten vier Bit herstellerseitig vorgegeben
(1001), die restlichen drei Bits werden durch die Pegel an den Pins 5, 6 und 7 festgelegt
(vgl. 3.3.4.2).
Ein Schreibbefehl an einen I2C­Slave besteht immer aus mindestens zwei Bytes: Im ersten Byte be­
findet sich die durch eine Null ergänzte 7­Bit­Adresse, während in dem/den folgenden Byte/Bytes
die Nutzinformation enthalten ist/sind.
3.7.2.5 Kommunikation mit dem Mikrocontroller
Die Steuerung des Mikrocontrollers basiert auf dem in 3.2.3.1 definierten Kommunikationsproto­
koll. Folgende Funktionen setzen das Protokoll entsprechend um:
Entwicklung und Realisierung einer mikrocontrollerbasierten Pulssteuerung für die Plasmaquelle Delta Gun
3 Realisierungsphase
•
Seite 83
AllOffButtonClick:
Nach einem Klick auf den Button All IGBTs OFF erfolgt die Übermittlung des Kommadopake­
tes „alle IGBTs aus“. Gleichzeitig wird die kritische Kühlkörpertemperatur auf 95 °C festgelegt,
welche der in 3.3.1 ermittelten, maximal zulässigen Temperatur bei minimaler Frequenz und ma­
ximalem Strom entspricht.
•
AllOnButtonClick:
Durch Klicken auf den Button All IGBTs ON wird das Kommadopaket „alle IGBTs ein“ über­
tragen. Auch hier wird die kritische Kühlkörpertemperatur auf 95 °C gesetzt.
•
ModulateButtonClick:
Wird der Button Modulate angeklickt, werden das Kommadopaket „Modulation“ gesendet und
die aktuellen, zur Modulation verwendeten Zeiten ausgelesen (ReadBufferButtonClick(NULL))
Wurden zuvor keine neuen Frequenz­ und/oder Ein/Aus­Verhältnis­Werte übermittelt,
verwendet der Controller die im EEPROM gespeicherten Werte. Desweiteren erfolgt die Berech­
nung der kritischen Kühlkörpertemperatur mit Hilfe der in 3.3.1 ermittelten Kennlinie (T = f(f)
bei I = 500 A).
•
SendValuesButtonClick:
Diese Funktion wird entweder durch Klicken des Send­Buttons oder durch Ändern der Frequenz
und/oder des Ein/Aus­Verhältnisses aufgerufen (in Abhängigkeit der entsprechenden Radiobut­
tons). Es erfolgt die Übermittlung des Datenpaketes, in welchem die Zeiten T1,aus und T2,ein ko­
diert enthalten sind (vgl. 3.2.3.1). Zur Überprüfung der erfolgreichen Übertragung erfolgt direkt
im Anschluss ein Auslesen der übertragenen Werte (ReadBufferButtonClick(NULL)).
•
UseValuesButtonClick:
Auch diese Funktion wird entweder durch Klicken des Use­Buttons oder durch Ändern der
Frequenz und/oder des Ein/Aus­Verhältnisses aufgerufen (in Abhängigkeit der entsprechenden
Radiobuttons). Sie sendet dem PIC das Kommandopaket „Übernehme neue Werte“ . Ist der PIC
im Modulationsmodus, erfolgt die Aktualisierung der kritischen Kühlkörpertemperatur.
•
ReadBufferButtonClick:
Diese Funktion dient zum Auslesen der aktuell im Controller gespeicherten Werte. Dabei werden
zunächst die vier Bytes des Datenpaketes (vgl. 3.2.3.1) einzeln über I2C­Leseoperationen ange­
fordert. Anschließend erfolgt die Berechnung der daraus resultierenden Werte für Frequenz und
Ein/Aus­Verhältnis.
Entwicklung und Realisierung einer mikrocontrollerbasierten Pulssteuerung für die Plasmaquelle Delta Gun
3 Realisierungsphase
•
Seite 84
SaveToEEPROMClick:
Nach einem Klick auf den Button Save buffered values to EEPROM wird das Kommando „Spei­
chere Werte in EEPROM“ übertragen.
•
OnValueChange:
Wenn die Sollwerte für Frequenz oder Ein/Aus­Verhältnis durch Verschieben der entspre­
chenden Slider verändert werden, wird die Funktion OnValueChange aufgerufen. Hier wird die
Umrechnung der Sollwerte in die zur Modulation notwendigen Zeiten T1,aus und T2,ein (vgl. 2.2)
und deren Kodierung in vier Zeichen mit jeweils acht Bit (vgl. 3.2.3.1) durchgeführt. Dabei er­
folgt zum einen die Berücksichtigung des durch die im PIC­Code verwendeten Warteschleifen
hervorgerufenen Offsets, als auch das Abfangen von (für den Algorithmus im PIC) unzulässigen
Werten, wie sie durch Rundungsfehler entstehen können. So kann zum Beispiel das Verhältnis
von T1,aus zu T2,ein prinzipbedingt nie größer als Drei sein. Sollte diese Bedingung durch
Rundungsfehler verletzt werden, wird T1,aus auf das Dreifache von T2,ein gesetzt.
Nachdem die Zeiten T1,aus und T2,ein aus den Sollwerten ermittelt wurden, wird die Berechung der
übrigen Zeiten im PIC simuliert. Die aus dieser Kalkulation resultierenden Werte ergeben die
tatsächlichen Ist­Werte für Frequenz und Ein/Aus­Verhältnis und werden als Calculated­Werte
im Panel IGBT Control angezeigt.
3.7.2.6 Kommunikation mit den Temperatursensoren
Solange kein Zündvorgang stattfindet, erfolgt das Abfragen der drei Temperatursensoren zyklisch
einmal pro Sekunde mit Hilfe des Timers PollTemperature, indem als OnTimer­Ereignis die
Funktion OnPollTemperature eingehängt wird. Zum Auslesen wird zuerst durch eine I2C­Schreib­
operation der interne Pointer des LM75 auf das Temperaturregister gesetzt. Danach erfolgt ein I2C­
Read­Request, worauf der jeweilige Temperatursensor den Inhalt seines Temperaturregisters in
zwei Bytes (signed char) übermittelt (vgl. dazu jeweils [19]). Sollte ein ermittelter Temperaturwert
die aus der gewählten Betriebsart resultierende kritische Temperatur überschreiten, wird dieser
Wert in gelber Schrift bei einer Differenz von weniger als 10 °C, und in roter Schrift bei einer Dif­
ferenz von mehr als 10 °C angezeigt. Gleichzeitig wird auch die Farbe der Temperatur­LED am
DeGuSCi entsprechend geändert.
Entwicklung und Realisierung einer mikrocontrollerbasierten Pulssteuerung für die Plasmaquelle Delta Gun
3 Realisierungsphase
Seite 85
3.7.2.7 Protokollierung
Um das Auswerten von Versuchsreihen zu erleichtern, können die verwendeten Parameter wie Be­
triebsart, Modulationsfrequenz, Ein/Aus­Verhältnis und IGBT­Temperaturen in einer Datei mitpro­
tokolliert werden. Nach Aktivierung der Checkbox Log Data wird der Timer LogDataTimer ge­
startet, welcher alle zwanzig Sekunden die Funktion OnLogDataTimer aufruft. Mit dieser Funktion
werden die o.g. Daten mit Datum und Uhrzeit zeilenweise in die Datei DeGuSCi_Data.log ge­
schrieben und können nach Versuchsende als externe Daten in eine Tabellenkalkulation importiert
werden.
3.7.2.8 Reset der IGBT­Treiber
Soll ein IGBT­Treiber im Fehlerfall zurückgesetzt werden, so muss an seinem Reset­Eingang für
mindestens 5 µs ein High­Signal anliegen. Nach einem Klick auf den entsprechenden Reset­Button
im IGBT Status­Panel wird der Eingang des zurückzusetzenden Treibers für 10 ms (sleep(10)) auf
High gezogen.
Entwicklung und Realisierung einer mikrocontrollerbasierten Pulssteuerung für die Plasmaquelle Delta Gun
4 Testphase
Seite 86
4 Testphase
4.1 Abschaltversuche
Bevor mit den Versuchen an der Plasmaquelle begonnen werden kann, muss zunächst der Varistor­
block (vgl. 3.3.4.3) dimensioniert werden, welcher die beim harten Abschalten entstehenden Über­
spannungen auf ein für die IGBTs verträgliches Maß begrenzt. Dazu wird die an den Anschluss­
klemmen wirksame Induktivität der Stromquelle durch Abschaltversuche mit Hilfe der Schaltung
nach Abbildung 4.1 ermittelt.
I
U
Abbildung 4.1: Schaltung Abschaltversuch
Abbildung 4.2: Abschaltversuch Aufbau 1
Abbildung 4.3: Abschaltversuch Aufbau 2
Entwicklung und Realisierung einer mikrocontrollerbasierten Pulssteuerung für die Plasmaquelle Delta Gun
4 Testphase
Seite 87
Die verrichtete Arbeit ist definiert als:
W =
∫ P t  dt
=
∫ u t ⋅i t  dt
Bei einer Messung mit endlich vielen Messwerten ergibt sich die Arbeit zu:
W = u1 t 1 ⋅i1 t 1 ⋅ t 1  u 2 t 2 ⋅i 2 t 2 ⋅ t 2  ...  u n t n ⋅i n t n ⋅ t n
Aus der errechneten Arbeit kann bei bekanntem Strom die wirksame Induktivität ermittelt werden:
W =
1
⋅L ⋅I2
2 ∑ max
⇔
L∑ =
2⋅W
I 2max
Insgesamt wurden Versuche mit vier verschiedenen Stromstärken (50 A, 100 A, 150 A und 200 A)
durchgeführt, wobei jeweils für Strom und Spannung 2500 Messwerte aufgenommen wurden. Die
Abbildungen 4.4 bis 4.7 zeigen die entsprechenden Signalverläufe. Es ergeben sich folgende, an
den Anschlussklemmen wirksame Induktivitäten:
Strom
50,00 A
101,56 A
150,00 A
201,56 A
Induktivität
43,95 mH
52,11 mH
44,33 mH
44,58 mH
Das arithmetische Mittel aus den vier ermittelten Induktivitäten ergibt 46,24 mH und wird zur
Dimensionierung der Varistoren herangezogen.
Entwicklung und Realisierung einer mikrocontrollerbasierten Pulssteuerung für die Plasmaquelle Delta Gun
4 Testphase
Seite 88
500
400
300
Strom I [100 A / div]
Spannung U [100 V / div]
200
100
0
-100
-5
5
15
25
Zeit t [ms]
Abbildung 4.4: Auswertung Abschaltversuch 50 A
500
400
300
200
Strom I [100 A / div]
Spannung U [100 V / div]
100
0
-100
-5
5
15
25
Zeit t [ms]
Abbildung 4.5: Auswertung Abschaltversuch 100 A
Entwicklung und Realisierung einer mikrocontrollerbasierten Pulssteuerung für die Plasmaquelle Delta Gun
4 Testphase
Seite 89
500
400
300
200
Strom I [100 A / div]
Spannung U [100 V / div]
100
0
-100
-5
5
15
25
Zeit t [ms]
Abbildung 4.6: Auswertung Abschaltversuch 150 A
500
400
300
200
Strom I [100 A / div]
Spannung U [100 V / div]
100
0
-100
-5
5
15
25
Zeit t [ms]
Abbildung 4.7: Auswertung Abschaltversuch 200 A
Entwicklung und Realisierung einer mikrocontrollerbasierten Pulssteuerung für die Plasmaquelle Delta Gun
4 Testphase
Seite 90
4.2 Test der Signalmodulation
Im Betrieb an der Plasmaquelle können nicht definierte Zustände der Modulationsausgänge des
PICs zu Beschädigungen der IGBTs und/oder der Plasmaquelle führen. Daher wird zunächst die
korrekte Erzeugung der Signale überprüft. Dazu werden die Modulationsausgänge des Mikrocon­
trollers direkt mit einem Oszilloskop verbunden und in der Software DeGuSCi Panel der gesamte
Frequenzbereich mit verschiedenen Ein/Aus­Verhältnissen durchlaufen. Es erfolgt ein Vergleich
zwischen den tatsächlichen Ausgangssignalen und den in der Software ermittelten Calculated­
Werten. Die Resultate dieses Tests sind:
•
Notwendigkeit der Berücksichtigung von Programmlaufzeiten des PIC­Codes im Modulations­
modus II (Wait(TaMs,TaUs­2), vgl. 3.2.3.3)
•
Ermittlung und Berücksichtigung des durch die Wartefunktionen im PIC­Code hervorgerufenen
Offsets im HMI DeGuSCi Panel
•
Abfangen von nicht definierten Zuständen im DeGuSCi Panel (Funktion OnValueChange):
•
Die minimale Sollfrequenz darf 4 Hz nicht unterschreiten.
•
Die an den PIC übermittelten Werte müssen eine Fallunterscheidung gemäß der Funktion
CalculateTaTb (PIC­Code) erlauben.
•
•
Das Verhältnis von T1,aus zu T2,ein kann nicht größer als Drei sein.
Flankensteilheit und Pegel der Ausgangssignale entsprechen stets der TTL­Norm, so dass eine
korrekte Ansteuerung der IGBT­Treiber gewährleistet ist. Nach der Umsetzung der Testresultate durch Änderung bzw. Ergänzung des entsprechenden Pro­
grammcodes ist das DeGuSCi betriebsbereit und es kann mit den Versuchen an der Plasmaquelle
begonnen werden.
Entwicklung und Realisierung einer mikrocontrollerbasierten Pulssteuerung für die Plasmaquelle Delta Gun
4 Testphase
Seite 91
4.3 Test am Brenner Delta Gun
Für die Testphase an der Plasmaquelle stand der Brenner Delta Gun III (Düsendurchmesser 10 mm,
vgl. Abbildungen 1.3 und 1.4) zur Verfügung. Der bestehende Versuchsstand wurde dabei wie folgt
verändert:
•
Integration des DeGuSCi •
Integration eines Hochleistungsschützes, um den Delta Gun sowohl mit als auch ohne durch das
DeGuSCi brückbare Widerstände betreiben zu können
•
Änderung des Zündgerätes, um es mit dem DeGuSCi ansteuern zu können
•
Integration des Varistorblocks
S2
Delta Gun
S1
Abbildung 4.8: Prinzipschaltbild Brennerversuche
Entwicklung und Realisierung einer mikrocontrollerbasierten Pulssteuerung für die Plasmaquelle Delta Gun
4 Testphase
Seite 92
Das Hochleistungsschütz (S1) wird über den Aux­Ausgang des DeGuSCi gesteuert. Damit ist ein
leichtes Zu­/Wegschalten der Widerstände aus der Software DeGuSCi Panel heraus möglich. Die
Varistoren müssen während des Zündvorgangs mit Hilfe des Schützes S2 von der Stromquelle ge­
trennt werden, da sich ansonsten kein Zündfunke im Brenner ausbilden kann. Die Abbildungen 4.9
bis 4.11 zeigen den Versuchsstand mit seinen wesentlichen Komponenten:
Schütz S1
Wassergekühlte Widerstände
DeGuSCi
Trennverstärker
Abbildung 4.9: Versuchsstand (Ansicht linke Kesselseite)
Entwicklung und Realisierung einer mikrocontrollerbasierten Pulssteuerung für die Plasmaquelle Delta Gun
4 Testphase
Seite 93
Oszilloskop
Steuer­PC mit DeGuSCi Panel
Diagnostik
(Gas und Kühlwasser)
Abbildung 4.10: Versuchstand (Ansicht von schräg vorne)
Brenner Delta Gun
Varistorblock mit Schütz S2
Zündgerät
Pulverförderer
Abbildung 4.11: Versuchsstand (Ansicht rechte Kesselseite)
Entwicklung und Realisierung einer mikrocontrollerbasierten Pulssteuerung für die Plasmaquelle Delta Gun
4 Testphase
Seite 94
Die Inbetriebnahme wurde mit Zündversuchen ohne Stromquelle begonnen, um die Störfestigkeit
des DeGuSCi gegenüber dem durch den Pilotlichtbogen erzeugten EMV­Puls zu testen. Hierbei
konnten zum einen Totalabstürze der USB­Kommunikation und zum anderen Fehlfunktionen der
Temperatursensoren beobachtet werden. Die Probleme mit der USB­Schnittstelle rührten lediglich
von einem zu langen USB­Anschlusskabel her: Die maximal zulässige Leitungslänge zwischen
zwei USB­Geräten beträgt gemäß Spezifikation fünf Meter und sollte im Hinblick auf die Störsi­
cherheit des gesamten Systems nicht überschritten werden. Die Störempfindlichkeit der Tempera­
tursensoren konnte durch Ergänzen von je einem 100 nF Entstörkondensator zwischen den Versor­
gungsspannungspins der ICs (Pins 4 und 8) und der Verwendung von geschirmten Zuleitungen auf­
gehoben werden. Bei der Modifikation der Zuleitungen wurde versehentlich durch eine zu großzü­
gige Dimensionierung der Kabellängen die zulässige Gesamtkapazität des I2C­Bus von 400 pF
überschritten, was sich in einer gestörten Kommunikation zwischen PIC und IO­Warrior bemerkbar
machte. Das Problem konnte durch Kürzen der Zuleitungen einfach gelöst werden. Allgemein soll­
ten jedoch die notwendigen Leitungslängen bei der Verwendung von I2C­Komponenten bereits in
der Entwurfsphase berücksichtigt werden.
Zur Quantifizierung des eigentlichen Plasmaspritzprozesses wird das Particle Flux Imaging­System
(PFI) der Zierhut Messtechnik GmbH eingesetzt. Das System besteht aus einem handelsüblichen
PC mit spezieller Auswertesoftware und einem ortsfesten Messkopf, welcher mit einer CCD­Kame­
ra sowohl den Plasma­ als auch den Partikelstrahl aufnimmt. Durch Verwendung verhältnismäßig
langer Verschlusszeiten (Sekundenbereich) werden Plasma­ und Partikelstrahl als diffus leuchtende
Helligkeitsbereiche wiedergegeben. Die Software berechnet nun Ellipsen, welche bezüglich ihrer
Lage und Größe den Helligkeitsbereichen entsprechen. Eine Änderung der Bereiche führt demnach
auch zur Veränderung der Ellipsenparameter (Halbachsen a und b, Schwerpunkt und Winkel) und
ermöglicht so eine quantifizierende Aussage über den Spritzprozess.
Nach dem Zünden des Brenners wurde zuerst ein, aus vorherigen Versuchen bekannter, optimaler
Arbeitspunkt bezüglich der Parameter Strom, Trägergasdurchfluss, Plasmagasdurchfluss und
Pulverförderrate angefahren, wobei sich das DeGuSCi dabei im Modus „alle IGBTs ein“ befand.
Nun wurde mittels PFI eine Referenzellipse für den Partikelstrahl ermittelt und in den Modulations­
modus gewechselt.
Entwicklung und Realisierung einer mikrocontrollerbasierten Pulssteuerung für die Plasmaquelle Delta Gun
4 Testphase
Seite 95
Abbildung 4.12 zeigt die Abweichungen der Ellipsenparameter Achse a und Achse b von den Refe­
renzparametern im Zusammenhang mit Änderungen von Modulationsfrequenz und Ein/Aus­
Verhältnis.
100
90
80
70
60
50
40
30
20
10
0
­10
­20
­30
­40
­50
­60
Kurzzeitige Re­
Referenzparameter
duzierung des
Stroms auf 100 A
Strom: 280 A; Plasmagas: 20 slpm;
Trägergas: 1,5 slpm; Pulverrate: 12 rpm
Achse a [%]
Achse b [%]
Frequenz [100 Hz]
Ein/Aus­Verhältnis [%]
Abbildung 4.12: Auswertung Brennerversuche
Das Diagramm zeigt eine deutliche Zunahme (bis zu 46%) von Länge und Breite des Partikelstrahls
bei Ein/Aus­Verhältnissen zwischen 40 und 50%. Diese Vergrößerung des Partikelstrahls hat ihre
Ursache in der höheren Anzahl von aufgeschmolzenen Partikeln und bedeutet eine signifikante Ver­
besserung des Prozesses. Die notwendige Modulationsfrequenz konnte in ergänzenden Versuchen
auf einen Frequenzbereich zwischen 5 und 7 kHz festgelegt werden. Eine weitere Eingrenzung der
Modulationsparameter sowie die Optimierung des Arbeitspunktes bezüglich der Gas­ und Pulverpa­
rameter könnten das Ziel weiterführender Experimente sein.
Entwicklung und Realisierung einer mikrocontrollerbasierten Pulssteuerung für die Plasmaquelle Delta Gun
5 Zusammenfassung und Ausblick
Seite 96
5 Zusammenfassung und Ausblick
Die in dieser Arbeit entwickelte und realisierte Pulssteuerung für die Plasmaquelle Delta Gun erfüllt
ohne Einschränkungen die in Kapitel 1.4 formulierten Anforderungen. Der gemäß Kapitel 3 aufge­
baute Prototyp musste zur korrekten Funktion nur minimal modifiziert werden (Temperatursenso­
ren, vgl. 4.3). Das DeGuSCi ließ sich problemlos in die bereits bestehende Delta Gun Peripherie in­
tegrieren und ermöglicht ein effizientes Testen des Delta Gun in verschiedensten Parameterfeldern.
Aufgrund des modularen Aufbaus des DeGuSCi können Erweiterungen oder Änderungen verhält­
nismäßig leicht durchgeführt werden. Als Ausblick seien hierzu beispielhaft zwei grundsätzliche
Modifikationsmöglichkeiten aufgeführt: Änderung des Frequenzbereiches und Erweiterung des
Standalone­Betriebs.
Das im Modulationsbetrieb nutzbare Frequenzspektrum ist maßgeblich durch den verwendeten Mi­
krocontroller und dessen Beschaltung definiert. Es bestehen damit folgende Änderungsmöglichkei­
ten, die lediglich einen Austausch oder eine Modifikation der Control­/Interfaceplatine erfordern:
1. Ersetzen des Controllers PIC16F877 durch das pinkompatible Modell PIC18F448:
Der PIC18F448 erlaubt Taktfrequenzen bis 40 MHz und ermöglicht damit bei fast identischem
Mikrocontrollercode Modulationsfrequenzen bis 14 kHz.
2. Änderung der Control­/Interfaceplatine und Verwendung eines PIC18F6X2X:
Bausteine der Serie PIC18F6X2X verfügen über mehrere unabhängige PWM­Ausgänge, welche
Signale mit Frequenzen über 150 kHz liefern können.
3. Änderung der Control­/Interfaceplatine und Verwendung des PWM­Moduls des PIC16F877:
Soll das PWM­Modul des PIC16F877 genutzt werden, muss die zeitliche Verschiebung der Si­
gnale 2 und 3 gegenüber dem Signal 1 (vgl. Abbildung 2.1) durch externe Komponenten erzeugt
werden, da der PIC16F877 praktisch nur über einen nutzbaren PWM­Ausgang verfügt. Dazu
bietet sich beispielsweise eine Kombination aus zwei Schieberegistern (Serie 4031, z.B.
MC14517B) und einem externen, variablen Taktgenerator (z.B. LTC6904, I2C­kompatibel) an.
Das PWM­Signal des PICs wird dazu jeweils auf ein 64­Bit­ und ein 128­Bit­Register gegeben,
welche mit dem 192­fachen der Frequenz des PWM­Signals getaktet sind. An den Ausgängen
der Register stehen dann PWM­Signale mit dem gewünschten zeitlichen Versatz zur Verfügung.
Entwicklung und Realisierung einer mikrocontrollerbasierten Pulssteuerung für die Plasmaquelle Delta Gun
5 Zusammenfassung und Ausblick
Seite 97
Ergibt sich im praktischen Betrieb, dass die umfangreichen Konfigurationsmöglichkeiten durch den
Steuerrechner nicht mehr notwendig sind, können mit geringem Aufwand (ebenfalls durch Aus­
tausch der Control­/Interfaceplatine) die Fähigkeiten des DeGuSCi im Standalone­Betrieb erweitert
werden. Denkbar wäre hierbei beispielsweise die Temperaturüberwachung durch den PIC im I2C­
Master­Betrieb, ein durch den Mikrocontroller gesteuerter Zündvorgang des Plasmabrenners oder
auch die eigenständige Überwachung der IGBT­Treiber bezüglich deren Fehlerstatus.
Über die Steuerung des Delta Gun hinaus stellt diese Arbeit auch eine Grundlage für Projekt­
realisierungen mit Mikrocontrollern (speziell hinsichtlich USB­Anbindung und I2C­Kommunikati­
on) und Leistungshalbleitern dar.
Entwicklung und Realisierung einer mikrocontrollerbasierten Pulssteuerung für die Plasmaquelle Delta Gun
6 Anhang
Seite 98
6 Anhang
6.1 Schaltpläne
Entwicklung und Realisierung einer mikrocontrollerbasierten Pulssteuerung für die Plasmaquelle Delta Gun
6 Anhang
Seite 99
Entwicklung und Realisierung einer mikrocontrollerbasierten Pulssteuerung für die Plasmaquelle Delta Gun
6 Anhang
Seite 100
Entwicklung und Realisierung einer mikrocontrollerbasierten Pulssteuerung für die Plasmaquelle Delta Gun
6 Anhang
Seite 101
Entwicklung und Realisierung einer mikrocontrollerbasierten Pulssteuerung für die Plasmaquelle Delta Gun
6 Anhang
Seite 102
Entwicklung und Realisierung einer mikrocontrollerbasierten Pulssteuerung für die Plasmaquelle Delta Gun
6 Anhang
Seite 103
Entwicklung und Realisierung einer mikrocontrollerbasierten Pulssteuerung für die Plasmaquelle Delta Gun
6 Anhang
Seite 104
6.2 Pin­Belegung IO­Warrior
Pin
Funktion
Richtung
Beschaltung
Initialisierung
0.0
Power Up
OUT
ohne
0
0.1
Status Not­Aus
IN
Transistor als Inverter 1
0.2
Connection LED rot
OUT
Treiber 12V/15mA
0
0.3
Connection LED grün
OUT
Treiber 12V/15mA
0
0.4
Temperatur LED grün
OUT
Treiber 12V/15mA
0
0.5
Temperatur LED rot
0.6
OUT
Treiber 12V/15mA
0
2
OUT/IN
ohne Treiber
0
2
I C SCL
0.7
I C SDA
OUT/IN
ohne Treiber
0
1.0
+5V Erkennung
IN
Transistor als Inverter
1
1.1
+12V/+15V Erkennung
IN
Transistor als Inverter
1
1.2
IGBT 1 – Error
IN
ohne
1
1.3
IGBT 1 – Reset
OUT
ohne
0
1.4
IGBT 2 – Error
IN
ohne
1
1.5
IGBT 2 – Reset
OUT
ohne
0
1.6
IGBT 3 – Error
IN
ohne
1
1.7 IGBT 3 – Reset/Enable Outs
OUT
ohne
0
2.0
Aux­Ausgang 1
OUT
Treiber 12V
0
2.1
Aux­Ausgang 2
OUT
Treiber 12V
0
2.2
Aux­Ausgang 3
OUT
Treiber 12V
0
2.3
Aux­Ausgang 4
OUT
Treiber 12V
0
2.4
Aux­Eingang 1
IN
Transistor als Inverter
1
2.5
Aux­Eingang 2
IN
Transistor als Inverter
1
2.6
Aux­Eingang 3
IN
Transistor als Inverter
1
2.7
Aux­Eingang 4
IN
Transistor als Inverter
1
Entwicklung und Realisierung einer mikrocontrollerbasierten Pulssteuerung für die Plasmaquelle Delta Gun
6 Anhang
Seite 105
Pin
Funktion
Richtung
Beschaltung
Initialisierung
3.0
Zündung 1
OUT
Treiber 12V
0
3.1
Zündung 2
OUT
Treiber 12V
0
3.2
Zündung 3
OUT
Treiber 12V
0
3.3
Zündung 4
OUT
Treiber 12V
0
3.4
Zündung 5
OUT
Treiber 12V
0
3.5
Zündung 6
OUT
Treiber 12V
0
3.6
Zündung 7
OUT
Treiber 12V
0
3.7
Zündung 8
OUT
Treiber 12V
0
Entwicklung und Realisierung einer mikrocontrollerbasierten Pulssteuerung für die Plasmaquelle Delta Gun
6 Anhang
Seite 106
6.3 Verkabelung
Stecker Pin
X1
X2
X3
X4
X5
X6
X7
verbunden mit
Funktion
Farbe des Kabels
1
+5V­USB
USB­Anschluss
2
IO­Warrior D­
USB­Anschluss
3
IO­Warrior D+
USB­Anschluss
4
GND
USB­Anschluss
1
220V­Schalter 1
Netzanschluss
Braun
2
220V­Schalter 2
Netzanschluss
Blau
1
Gleichrichter +
Platinenverbindung
Rot
2
Gleichrichter ­
Platinenverbindung
Schwarz
1
Elkos +
Platinenverbindung
Rot
2
Elkos ­
Platinenverbindung
Schwarz
1
220V­Schalter 1
Netzanschluss
Braun
2
220V­Schalter 2
Netzanschluss
Blau
1
X13­1
+5V geschaltet, netzteilseitig
Gelb
2
X13­2
+15V geschaltet, netzteilseitig
Rot
3
X13­3
+12V geschaltet, netzteilseitig
Rot
4
X13­4
GND, netzteilseitig
Schwarz
1
P0.3 (über Treiber)
Connection LED rot, Anode
Rot
2
P0.2 (über Treiber)
Connection LED grün, Anode
Blau
3
P0.4 (über Treiber)
Temperatur LED, grün, Anode
Grün
4
P0.5 (über Treiber)
Temperatur LED, rot, Anode
Weiß
5
GND
Connection LEDs, Kathoden
Schwarz
6
GND
Temperatur LEDs, Kathoden
Scharz
7
NC
keine
8
NC
keine
9
NC
keine
10 NC
keine
Entwicklung und Realisierung einer mikrocontrollerbasierten Pulssteuerung für die Plasmaquelle Delta Gun
6 Anhang
Seite 107
Stecker Pin
X8
X9
X10
verbunden mit
Funktion
Farbe des Kabels
1
I2C­SDA
Temperatursensor 1, I2C­SDA
Gelb
2
I2C­SDA
Temperatursensor 2, I2C­SDA
Gelb
3
I2C­SCL
Temperatursensor 1, I2C­SCL
Grün
4
I2C­SCL
Temperatursensor 2, I2C­SCL
Grün
5
GND
Temperatursensor 1, GND
Braun
6
GND
Temperatursensor 2, GND
Braun
7
+5V­USB
Temperatursensor 1, +5V­USB
Weiß
8
+5V­USB
Temperatursensor 2, +5V­USB
Weiß
9
NC
keine
10 NC
keine
1
I2C­SDA
Temperatursensor 3, I2C­SDA
2
I2C­SDA
I2C­Aux, I2C­SDA
3
I2C­SCL
Temperatursensor 3, I2C­SCL
4
I2C­SCL
I2C­Aux, I2C­SCL
5
GND
Temperatursensor 3, GND
6
GND
I2C­Aux, GND
7
+5V­USB
Temperatursensor 3, +5V­USB
8
+5V­USB
I2C­Aux, +5V­USB
9
NC
keine
10 NC
keine
G GND
Eingang ICSP Schirmung
1
ICSP­1
Eingang ICSP 1
2
ICSP­2
Eingang ICSP 2
3
GND
Eingang ICSP 3
4
ICSP­4
Eingang ICSP 4
5
GND
Eingang ICSP 5
6
ICSP­6
Eingang ICSP 6
7
NC
keine
8
NC
keine
9
NC
keine
Gelb
Grün
Braun
Weiß
Entwicklung und Realisierung einer mikrocontrollerbasierten Pulssteuerung für die Plasmaquelle Delta Gun
6 Anhang
Seite 108
Stecker Pin
X11
X12
X13
verbunden mit
Funktion
G GND
Ausgang Zündung Abschirmung
1
P3.0 (über Treiber)
Ausgang Zündung 1
2
P3.1 (über Treiber)
Ausgang Zündung 2
3
P3.2 (über Treiber)
Ausgang Zündung 3
4
P3.3 (über Treiber)
Ausgang Zündung 4
5
P3.4 (über Treiber)
Ausgang Zündung 5
6
P3.5 (über Treiber)
Ausgang Zündung 6
7
P3.6 (über Treiber)
Ausgang Zündung 7
8
P3.7 (über Treiber)
Ausgang Zündung 8
9
Kollektor T4
Ausgang Zündung +12V
G GND
Ausgang Aux Abschirmung
1
GND
Ausgang Aux GND
2
NC
keine
3
NC
keine
4
NC
keine
5
P2.0 (über Treiber)
Ausgang Aux 1
6
P2.1 (über Treiber)
Ausgang Aux 2
7
P2.2 (über Treiber)
Ausgang Aux 3
8
P2.3 (über Treiber)
Ausgang Aux 4
9
Kollektor T4
Ausgang Aux +12V
G GND
Eingang Aux Abschirmung
1
GND
Eingang Aux GND
2
NC
keine
3
NC
keine
4
NC
keine
5
NC
keine
6
P2.4 (über Inverter)
Eingang Aux 1
7
P2.5 (über Inverter)
Eingang Aux 2
8
P2.6 (über Inverter)
Eingang Aux 3
9
P2.7 (über Inverter)
Eingang Aux 4
Farbe des Kabels
Entwicklung und Realisierung einer mikrocontrollerbasierten Pulssteuerung für die Plasmaquelle Delta Gun
6 Anhang
Seite 109
Stecker Pin
X14
verbunden mit
Funktion
Farbe des Kabels
1
+12V­SWITCH
LED Modulation Anode
Rot
2
MODLEDSIG (über
LED Modulation Kathode
Weiß
Treiber)
3
+12V­SWITCH
LED IGBT 1 Anode
Rot
4
IGBT1­CTRL (über
LED IGBT 1 Kathode
Grün
Treiber)
5
+12V­SWITCH
LED IGBT 2 Anode
Rot
6
IGBT2­CTRL (über
LED IGBT 2 Kathode
Blau
Treiber)
7
+12V­SWITCH
LED IGBT 3 Anode
Rot
8
IGBT3­CTRL (über
LED IGBT 3 Kathode
Schwarz
Treiber)
9
X15
NC
keine
10 NC
keine
1
Erkennung +12V, Versorgung +12V
Rot
Erkennung +12V, Versorgung +12V
Rot
Erkennung +5V, Versorgung +5V
Gelb
Erkennung +5V, Versorgung +5V
Gelb
P1.0 (über Inverter),
+5V, SL1­4
2
P1.0 (über Inverter),
+5V, SL2­1
3
P1.1 (über Inverter),
+12V, SL1­3
4
P1.1 (über Inverter),
+12V, SL2­3
5
P0.0, SL1­1
Power­Up
Weiß
6
P0.0, SL2­1
Power­Up
Weiß
7
+5V­SWITCH
Vierfach­Schalter Mitte
Gelb
8
SETMODE­0
Vierfach­Schalter Stellung 2
Grün
9
SETMODE­1
Vierfach­Schalter Stellung 3
Blau
10 SETMODE­2
Vierfach­Schalter Stellung 4
Schwarz
Entwicklung und Realisierung einer mikrocontrollerbasierten Pulssteuerung für die Plasmaquelle Delta Gun
6 Anhang
Seite 110
Stecker Pin
X16
1
verbunden mit
Funktion
X6­1, +5V­SWITCH, +5V geschaltet, controllerseitig,
P0.1 (über Treiber)
Farbe des Kabels
Gelb
Not­Aus­Erkennung
2
X6­2, +15V­SWITCH +15V geschaltet, controllerseitig
Rot
3
X6­3, +12V­SWITCH +12V geschaltet, controllerseitig
Rot
4
X6­4, GND
Schwarz
GND, controllerseitig
Entwicklung und Realisierung einer mikrocontrollerbasierten Pulssteuerung für die Plasmaquelle Delta Gun
6 Anhang
Seite 111
Stecker Pin
X17
verbunden mit
Funktion
1
GND
keine
2
IGBT1­CTRL, Pin 2
IGBT 1 Ansteuersignal
Farbe des Kabels
Treiberstufe 1
3
P1.2, Pin 3
IGBT 1 Fehler
Treiberstufe
4
P1.3, Pin 4
IGBT 1 Reset
Treiberstufe
5
GND
keine
6
GND
keine
7
GND
keine
8
+15V­SWITCH, Pin 8 IGBT 1 +15V
Treiberstufe 1
9
+15V­SWITCH, Pin 9 IGBT 1 +15V
Treiberstufe 1
10 GND, Pin 10
IGBT 1 GND
Treiberstufe 1
X18
1
GND, Pin 11
IGBT 1 GND
Treiberstufe 1
2
GND
keine
3
GND
keine
4
GND
keine
5
NC
keine
6
NC
keine
7
NC
keine
8
NC
keine
9
NC
keine
10 NC
keine
Entwicklung und Realisierung einer mikrocontrollerbasierten Pulssteuerung für die Plasmaquelle Delta Gun
6 Anhang
Seite 112
Stecker Pin
X19
verbunden mit
Funktion
1
GND
keine
2
IGBT2­CTRL, Pin 2
IGBT 2 Ansteuersignal
Farbe des Kabels
Treiberstufe 2
3
P1.4, Pin 3
IGBT 2 Fehler
Treiberstufe 2
4
P1.3, Pin 4
IGBT 2 Reset
Treiberstufe 2
5
GND
keine
6
GND
keine
7
GND
keine
8
+15V­SWITCH, Pin 8 IGBT 2 +15V
Treiberstufe 2
9
+15V­SWITCH, Pin 9 IGBT 2 +15V
Treiberstufe 2
10 GND, Pin 10
IGBT 2 GND
Treiberstufe 2
X20
1
GND, Pin 11
IGBT 2 GND
Treiberstufe 2
2
GND
keine
3
GND
keine
4
GND
keine
5
NC
keine
6
NC
keine
7
NC
keine
8
NC
keine
9
NC
keine
10 NC
keine
Entwicklung und Realisierung einer mikrocontrollerbasierten Pulssteuerung für die Plasmaquelle Delta Gun
6 Anhang
Seite 113
Stecker Pin
X21
verbunden mit
Funktion
1
GND
keine
2
IGBT2­CTRL, Pin 2
IGBT 3 Ansteuersignal
Farbe des Kabels
Treiberstufe 3
3
P1.4, Pin 3
IGBT 3 Fehler
Treiberstufe 3
4
P1.3, Pin 4
IGBT 3 Reset
Treiberstufe 3
5
GND
keine
6
GND
keine
7
GND
keine
8
+15V­SWITCH, Pin 8 IGBT 3 +15V
Treiberstufe 3
9
+15V­SWITCH, Pin 9 IGBT 3 +15V
Treiberstufe 3
10 GND, Pin 10
IGBT 3 GND
Treiberstufe 3
X22
1
GND, Pin 11
IGBT 3 GND
Treiberstufe 3
2
GND
keine
3
GND
keine
4
GND
keine
5
NC
keine
6
NC
keine
7
NC
keine
8
NC
keine
9
NC
keine
10 NC
keine
Entwicklung und Realisierung einer mikrocontrollerbasierten Pulssteuerung für die Plasmaquelle Delta Gun
6 Anhang
Seite 114
Stecker Pin
SL1 &
SL2
SL3 &
SL4
verbunden mit
Funktion
Farbe des Kabels
1­1 X15­5
Power­Up­Signal
Weiß
2­1 X15­6
Power­Up­Signal
Weiß
1­2 +12V­NT
LED +12V, Anode
Rot
2­2 GND­NT
LED +12V, Kathode
Schwarz
1­3 +12V­NT, X15­1
Erkennung +12V
Rot
2­3 +12V­NT, X15­2
Erkennung +12V
Rot
1­4 +5V­NT, X15­3
Erkennung +5V
Gelb
2­4 +5V­NT, X15­4
Erkennung +5V
Gelb
3­1 +12V­NT
Reset
Weiß
4­1 Relais +
Reset
Weiß
3­2 GND­NT
Not­Aus
Rot
4­2 Relais ­
Not­Aus
Rot
3­3 +12V­NT
LED +5V, Anode
Rot
4­3 GND­NT (über
LED +5V, Kathode
Blau
Power­LED, rot, Anode
Gelb
Power­LED, grün, Anode
Grün
Power LED, Kathoden
Schwarz
Transistor)
3­4 Öffner 12V ­
Relaiskontakt
4­4 Schließer 12V ­
Relaiskontakt
3­5 GND­NT
SL5
1
+5V, netzteilseitig
Überbrückung Warrior Power­Up
2
Eingang Gatter
Überbrückung Warrior Power­Up
Entwicklung und Realisierung einer mikrocontrollerbasierten Pulssteuerung für die Plasmaquelle Delta Gun
6 Anhang
Seite 115
6.4 Platinenlayouts
6.4.1 Control­ und Interfaceplatine
Entwicklung und Realisierung einer mikrocontrollerbasierten Pulssteuerung für die Plasmaquelle Delta Gun
6 Anhang
Seite 116
6.4.2 Netzteil
Entwicklung und Realisierung einer mikrocontrollerbasierten Pulssteuerung für die Plasmaquelle Delta Gun
6 Anhang
Seite 117
Entwicklung und Realisierung einer mikrocontrollerbasierten Pulssteuerung für die Plasmaquelle Delta Gun
6 Anhang
Seite 118
6.4.3 Temperatursensoren
Entwicklung und Realisierung einer mikrocontrollerbasierten Pulssteuerung für die Plasmaquelle Delta Gun
6 Anhang
Seite 119
6.5 Bestückunspläne
6.5.1 Control­ und Interfaceplatine
Entwicklung und Realisierung einer mikrocontrollerbasierten Pulssteuerung für die Plasmaquelle Delta Gun
6 Anhang
Seite 120
6.5.2 Netzteil
Entwicklung und Realisierung einer mikrocontrollerbasierten Pulssteuerung für die Plasmaquelle Delta Gun
6 Anhang
Seite 121
6.5.3 Temperatursensoren
Entwicklung und Realisierung einer mikrocontrollerbasierten Pulssteuerung für die Plasmaquelle Delta Gun
6 Anhang
Seite 122
6.6 Stückliste
Anzahl
Lieferant
Bestell­
nummer
Name
Wert
Bezeichnung
im SCH
2
Farnell
438­029
Brückengleichrichter
6 A, 40 V
B1, B2
3
Farnell
400­1667 Keramikvielschicht­Kondensator
100 nF
C5, C8, C12
100 nF
C1, C3
330 nF
C4, C7, C11
10 µF / 16 V
C2
Typ B37981
2
Farnell
757­640
SMD­Keramikvielschicht­
Kondensator bis 50 V
3
Farnell
400­1692 Keramikvielschicht­Kondensator
Typ B37981
1
Farnell
197­518
Tantal­SMD­
Elektrolytkondensatoren bis 25 V
10 µF
3
Farnell
106­802
Elektrolytkondensator
10000 µF / 40 V
C6, C9, C10
2
Farnell
739­182
SMD­Schaltdiode MiniMelf
LL4148
D1, D2
1
Bürklin
26S8150
Schaltdiode
1N4148
D3
1
Farnell
851­206
Sicherung
1,6 A träge
F1
1
Farnell
851­255
Diode
2 A träge
F2
1
Code
Mercenaries
USB­Chip
IO­Warrior 40
IC1
1
Farnell
324­5585
Mikrocontroller
PIC16F877L
IC2
1
Farnell
412­855
Spannungsregler +5V 2A
7805T
IC3
1
Farnell
559­180
Spannungsregler +12V 1A
7812T
IC5
1
Farnell
413­495
Spannungsregler +15V 2A
7815T
IC4
1
Bürklin
44S8100
Vierfach NAND­Gatter
SN7400N
IC6
3
Bürklin
50S2325
Darlington­NPN­Treiber
1
Farnell
845­772
Relais DS4, monostabil, 12V
Nais DS4E­M­1
K1
1
Farnell
648­139
Keramik­Schwinger
6 MHz
Q1
1
Farnell
648­190
Keramik­Schwinger
20 MHz
Q2
ULN2003AD IC7, IC8, IC9
Entwicklung und Realisierung einer mikrocontrollerbasierten Pulssteuerung für die Plasmaquelle Delta Gun
6 Anhang
Seite 123
Anzahl
Lieferant
13
Farnell
Bestell­
nummer
Name
516­831 SMD­Universal­Bipolartransistor
Wert
Bezeichnung
im SCH
BC846
Q4, Q6, Q8,
Q10, Q11,
Q12, Q13,
Q14, Q15,
Q16, Q17,
Q18, Q19
BC856
Q3, Q5, Q7,
Q9
NPN
4
Farnell
506­266 SMD­Universal­Bipolartransistor
PNP
1
Bürklin
17E215
Kohleschichtwiderstand 0,3 W
510R (500R)
R8
2
Bürklin
17E240
Kohleschichtwiderstand 0,3 W
1k
R6, R7
17
Farnell
613­708
Multicomp
1k
R12, R13,
R15, R18,
R20, R21,
R22, R25,
R27, R29,
R30, R32,
R35, R36,
R39, R41,
R42
8k2 (7k5)
R1
SMD­Widerstand 1206
1
Farnell
613­812
Multicomp
SMD­Widerstand 1206
2
Bürklin
17E310
Kohleschichtwiderstand 0,3 W
10k
R5, R10
17
Farnell
613­824
Multicomp
10k
R9, R11,
R14, R16,
R17, R19,
R23, R24,
R26, R28,
R31, R33,
R34, R37,
R38, R40,
R43
100k
R2, R3
220k (200k)
R4
SMD­Widerstand 1206
2
Farnell
613­940
Multicomp
SMD­Widerstand 1206
1
Farnell
613­988
Multicomp
SMD­Widerstand 1206
2
Bürklin
12S4850 Universal­Bipolartransistor NPN
BC547
T2, T3
1
Bürklin
12S5400
BC557
T1
Universal­Bipolartransistor PNP
Entwicklung und Realisierung einer mikrocontrollerbasierten Pulssteuerung für die Plasmaquelle Delta Gun
6 Anhang
Seite 124
Anzahl
Lieferant
Bestell­
nummer
Name
Wert
Bezeichnung
im SCH
1
Bürklin
13S5350
Leistungstransistor PNP
BD140
T4
1
Farnell
899­574
Flachtransformator
2x9V 18 VA
TR1
1
Farnell
899­707
Flachtransformator
2x18V 30VA
TR2
1
Suyin
020149
MA004S
203ZL
SMD­USB­Buchse
Typ B
X1
4
Farnell
333­6396
Anschlussklemme
2­polig
X2, X3, X4,
X5
2
Farnell
333­6414
Anschlussklemme
4­polig
X6, X16
2
Farnell
341­6914
SubD­Buchsenstecker
9­polig
X10, X13
UNC4­40
2
Farnell
341­6859
SubD­Stiftstecker
9­polig
X11, X12
UNC4­40
11
Bürklin
59F5687
SMD­Stiftleiste
2 x 5­polig
X7, X8, X9,
X14, X15,
X17, X18,
X19, X20,
X21, X22
1
Farnell
809­690
Stiftleiste
4 x 5­polig,
1 x 2­polig
SL1, SL2,
SL3, SL4
Entwicklung und Realisierung einer mikrocontrollerbasierten Pulssteuerung für die Plasmaquelle Delta Gun
6 Anhang
Seite 125
Anzahl
Lieferant
Bestell­
nummer
Name
Wert
1
Farnell
930­313
Gehäuse OKW Mettec
350x250x120
1
Farnell
930­416
Frontplattensatz
für 930­313
3
Farnell
179­776
LED flach hell verchromt
12V dreifarbig
6
Farnell
179­769
LED flach hell verchromt
12V grün
1
Farnell
521­930
Schalter Serie 1300/1350, Wippe
zweipolig Aus/Ein grün
bedruckt und beleuchtet
1
Farnell
422­230 Drucktaster Serie MP12, schwarz
1
Farnell
382­3076
Netz­Einbaubuchse
Serie JR­101S­G
1
Farnell
422­447
Drehschalter Serie CK
4 Stellungen, kurzschließend 1
Farnell
890­935
Drehknopf Alu blank 23,8 mm
3
Farnell
839­474
Federleisten SEK18
10­polig
6
Farnell
839­486
Federleisten SEK18
14­polig
1
Farnell
839­516 Federleisten SEK18
26­polig
3
Bürklin
41S1206
I2C­Temperatursensor
LM75, Bauform SO8
3
Farnell
257­485
Leerbuchse
Molex KK 3,96
9
Farnell
143­193
Crimp­Anschlussfedern
für 257­485
3
Farnell
470­4540
Hochleistungs­Polypropylen­
1000 V / 1 µF
Impuls­Filmkondensatoren
3
Semikron
IGBT
SKM500GA123D
3
Semikron
IGBT­Treiber
SKHI10/12
15
Bürklin
Varistor
B40K320
82E2613
Entwicklung und Realisierung einer mikrocontrollerbasierten Pulssteuerung für die Plasmaquelle Delta Gun
6 Anhang
Seite 126
6.7 Technische Zeichnungen und Skizzen
6.7.1 Front­ und Rückplatte (Maßstab 1:2, Bemaßung siehe CD:/Zeichnungen/CDR)
Entwicklung und Realisierung einer mikrocontrollerbasierten Pulssteuerung für die Plasmaquelle Delta Gun
6 Anhang
Seite 127
6.7.2 Grundplatte (Maßstab 1:2, Bemaßung siehe CD:/Zeichnungen/CDR)
Entwicklung und Realisierung einer mikrocontrollerbasierten Pulssteuerung für die Plasmaquelle Delta Gun
6 Anhang
Seite 128
6.7.3 Kupferschiene Kollektor (Maßstab 1:2)
Entwicklung und Realisierung einer mikrocontrollerbasierten Pulssteuerung für die Plasmaquelle Delta Gun
6 Anhang
Seite 129
6.7.4 Kupferschiene Emitter 1 (Maßstab 1:2)
Entwicklung und Realisierung einer mikrocontrollerbasierten Pulssteuerung für die Plasmaquelle Delta Gun
6 Anhang
Seite 130
6.7.5 Kupferschiene Emitter 2 (Maßstab 1:2)
Entwicklung und Realisierung einer mikrocontrollerbasierten Pulssteuerung für die Plasmaquelle Delta Gun
6 Anhang
Seite 131
6.7.6 Kupferschiene Emitter 3 (Maßstab 1:1)
Entwicklung und Realisierung einer mikrocontrollerbasierten Pulssteuerung für die Plasmaquelle Delta Gun
6 Anhang
Seite 132
6.7.7 Hartgewebeplatte Oberteil (Maßstab 1:2)
Entwicklung und Realisierung einer mikrocontrollerbasierten Pulssteuerung für die Plasmaquelle Delta Gun
6 Anhang
Seite 133
6.7.8 Hartgewebeplatte Unterteil (Maßstab 1:2)
Entwicklung und Realisierung einer mikrocontrollerbasierten Pulssteuerung für die Plasmaquelle Delta Gun
6 Anhang
Seite 134
6.8 Literaturverzeichnis
[1]
P. Haslbeck: Entwicklung eines Dreikathoden­Plasmaspritzbrenners unter Anwendung adap­
tierter plasmadiagnostischer Methoden, Dissertation, Universität der Bundeswehr München, 1995
[2]
Jan Axelson: USB Handbuch für Entwickler, vmi­Buch AG & Co. KG, 2001
[3]
Carsten Meyer: Draht nach draußen, USB­Interfacing mit Custom­Chips, c't 8/2003, S. 208
[4]
Philips semiconductors: I2C Logic Selection Guide 2003,
CD:/Datenblätter/Philips I2C Selection Guide 2003.pdf
[5]
Philips semiconductors: The I2C­Bus Specification Version 2.01, Januar 2000,
CD:/Datenblätter/Philips I2C Spezifikation.pdf
[6]
Semikron: Applikationshandbuch IGBT­ und MOSFET­Leistungsmodule,
CD:/Semikron oder http://www.semikron.de/skcweb/d/applika/applica_help.html
[7]
Stengl, J.P.; Tihanyi, J.: Leistungs­MOS­FET­Praxis, Pflaum Verlag München, 2. Auflage, 1992
[8]
Schröder, D.: Elektrische Antriebe 3: Leistungselektronische Bauelemente, Springer Verlag Berlin Heidelberg 1996
[9]
Code Mercenaries: IO­Warrior – Generic universal I/O Controller for USB, Oktober 2003,
CD:/Datenblätter/IOWarrior Stand 13102003.pdf
[10] Jörg Bredendiek: ICSP­ In Cicuit Serial Programming, Juni 2003,
http://www.sprut.de/electronic/pic/icsp/icsp.htm
[11] Microchip: How to Implement ICSP Using PIC16CXXX OTP MCUs, Juni 2000,
CD:/Datenblätter/Microchip How to Implement ICSP Using PIC16CXXX OTP MCUs.pdf
[12] Microchip: PIC16F87XA Data Sheet, 2001, CD:/Datenblätter/PIC16F877.pdf
[13] Microchip: Using the Microchip PICmicro SSP for Slave I2C Communication, 2000,
CD:/Datenblätter/Microchip PICmicro SSP for Slave I2C Communication.pdf
[14] Semikron: SEMITRANS IGBT Module SKM500GA123D,
CD:/Datenblätter/Semikron SEMITRANS SKM500GA123D.pdf
[15] Semikron: SEMIDRIVER High Power IGBT Driver SKHI 10,
CD:/Datenblätter/Semikron SKHI 10.pdf
[16] Ralf Kories, Heinz Schmidt­Walter: Taschenbuch der Elektrotechnik, Verlag Harri Deutsch, Thun und Frankfurt am Main, 2000
Entwicklung und Realisierung einer mikrocontrollerbasierten Pulssteuerung für die Plasmaquelle Delta Gun
6 Anhang
Seite 135
[17] Dagnall Electronics Limited: 30VA Low profile encapsulated transformer, CD:/Datenblätter/Flachtransformator 2x18V bei 30VA.pdf
[18] EPCOS AG: SIOV Metal Oxide Varistors, Oktober 2000,
CD:/Datenblätter/SIOV Varistoren.pdf
[19] National Semiconductor: LM75 Digital Temperature Sensor an Thermal Watchdog with Two­
Wire­Interface, Juni 1996, CD:/Datenblätter/lm75cim.pdf
Entwicklung und Realisierung einer mikrocontrollerbasierten Pulssteuerung für die Plasmaquelle Delta Gun
6 Anhang
Seite 136
6.9 Abbildungsverzeichnis
Abbildung 1.1: Schnitt F4­Brenner......................................................................................................6
Abbildung 1.2: Schnitt TRIPLEX........................................................................................................7
Abbildung 1.3: Frontansicht Delta Gun...............................................................................................7
Abbildung 1.4: Detailansicht Anoden..................................................................................................7
Abbildung 1.5: Schema Delta Control.................................................................................................8
Abbildung 1.6: Delta Control...............................................................................................................9
Abbildung 2.1: Signalverläufe............................................................................................................13
Abbildung 2.2: MOSFET­Zelle im Durchlasszustand.......................................................................16
Abbildung 2.3: IGBT­Zelle im Durchlasszustand..............................................................................16
Abbildung 2.4: Treiberstufe Delta Control........................................................................................17
Abbildung 2.5: IGBT­Block Delta Control........................................................................................17
Abbildung 2.6: DeGuSCi im Verbund...............................................................................................21
Abbildung 3.1: Gehäusetypen IO­Warrior 40....................................................................................22
Abbildung 3.2: Beschaltung IO­Warrior............................................................................................23
Abbildung 3.3: Screenshot Testumgebung IO­Warrior.....................................................................30
Abbildung 3.4: Beschaltung PIC16F877............................................................................................31
Abbildung 3.5: Screenshot MPLAB...................................................................................................36
Abbildung 3.6: Screenshot PicAnt IDE..............................................................................................38
Abbildung 3.7: PICStart Plus.............................................................................................................39
Abbildung 3.8: ICSP­Modifikation PICStart Plus.............................................................................39
Abbildung 3.9: Programmablaufplan Signalmodulation....................................................................42
Abbildung 3.10: IGBT SKM500GA123............................................................................................47
Abbildung 3.11: Kühlplatte Außenseiten...........................................................................................51
Abbildung 3.12: Kühlplatte Oberteil Innenansicht............................................................................51
Abbildung 3.13: Blockschaltbild Semikron SKHI 10/12 [15]...........................................................52
Abbildung 3.14: Semikron SKHI 10/12.............................................................................................52
Abbildung 3.15: Sensorplatine LM75 Detail.....................................................................................55
Abbildung 3.16: Sensorplatine LM75 mit Leitung............................................................................55
Abbildung 3.17: Kühlplatte mit Sensoren..........................................................................................56
Abbildung 3.18: Varistorblock...........................................................................................................57
Entwicklung und Realisierung einer mikrocontrollerbasierten Pulssteuerung für die Plasmaquelle Delta Gun
6 Anhang
Seite 137
Abbildung 3.19: Schaltplan Netzteil Spannungswandlung................................................................58
Abbildung 3.20: Schaltplan Netzteil Logik........................................................................................60
Abbildung 3.21: Netzteil Frontansicht...............................................................................................61
Abbildung 3.22: Netzteil Rückansicht...............................................................................................62
Abbildung 3.23: Rückplatte................................................................................................................63
Abbildung 3.24: Schaltplan Treiberstufen Ausgänge Zündung und Aux..........................................64
Abbildung 3.25: Schaltplan Spannungsfreigabe für die Ausgänge....................................................64
Abbildung 3.26: Schaltplan Eingang Aux..........................................................................................65
Abbildung 3.27: Frontplatte...............................................................................................................66
Abbildung 3.28: Schaltplan Beschaltung LEDs Verbindung und Temperatur..................................68
Abbildung 3.29: Control­ und Interfaceplatine Top­Layer................................................................69
Abbildung 3.30: Control­ und Interfaceplatine Bottom­Layer...........................................................69
Abbildung 3.31: Grundplatte mit montierten Komponenten (Ansicht von schräg vorne).................71
Abbildung 3.32: Grundplatte mit montierten Komponenten (Ansicht von schräg hinten)................71
Abbildung 3.33: Grundplatte mit montierten Komponenten (Ansicht von oben)..............................72
Abbildung 3.34: Rückplatte Innenseite..............................................................................................72
Abbildung 3.35: Frontplatte Innenseite..............................................................................................73
Abbildung 3.36: DeGuSCi gesamt (ohne Deckel, Frontansicht).......................................................74
Abbildung 3.37: DeGuSCi gesamt (ohne Deckel, Rückansicht).......................................................74
Abbildung 3.38: DeGuSCi gesamt (ohne Deckel, Ansicht von oben)...............................................75
Abbildung 3.39: DeGuSCi gesamt (Frontansicht).............................................................................76
Abbildung 3.40: DeGuSCi gesamt (Rückansicht)..............................................................................76
Abbildung 3.41: Screenshot DeGuSCi Panel.....................................................................................77
Abbildung 4.1: Schaltung Abschaltversuch.......................................................................................86
Abbildung 4.2: Abschaltversuch Aufbau 1........................................................................................86
Abbildung 4.3: Abschaltversuch Aufbau 2........................................................................................86
Abbildung 4.4: Auswertung Abschaltversuch 50 A...........................................................................88
Abbildung 4.5: Auswertung Abschaltversuch 100 A.........................................................................88
Abbildung 4.6: Auswertung Abschaltversuch 150 A.........................................................................89
Abbildung 4.7: Auswertung Abschaltversuch 200 A.........................................................................89
Abbildung 4.8: Prinzipschaltbild Brennerversuche............................................................................91
Entwicklung und Realisierung einer mikrocontrollerbasierten Pulssteuerung für die Plasmaquelle Delta Gun
6 Anhang
Seite 138
Abbildung 4.9: Versuchsstand (Ansicht linke Kesselseite)...............................................................92
Abbildung 4.10: Versuchstand (Ansicht von schräg vorne)..............................................................93
Abbildung 4.11: Versuchsstand (Ansicht rechte Kesselseite)............................................................93
Abbildung 4.12: Auswertung Brennerversuche.................................................................................95
Entwicklung und Realisierung einer mikrocontrollerbasierten Pulssteuerung für die Plasmaquelle Delta Gun
6 Anhang
Seite 139
6.10 CD
Entwicklung und Realisierung einer mikrocontrollerbasierten Pulssteuerung für die Plasmaquelle Delta Gun
Herunterladen