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: IC = ⋅ ∫ 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: IC = [ Modus III: IC = 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