Tutorials

 
Kontakt| Impressum
   
Pic Phase Control (PPC)

Tutorial

Phasenanschnittsteuerung mit dem PIC18F252

 

1 Einführung

2 Funktionsweise und Systemaufbau

3 Aufbau

4 Erste Inbetriebnahme

5 Software

6 Links

7 Download

8 Haftung

 

Das Projekt befindet sich derzeit in Arbeit

 

1 Einführung

In der Automatisierungstechnik kommt es immer wieder vor, dass ein einphasiger Wechselstrommotor konstant auf einer vorgegebenen Drehzahl gehalten werden soll. Die hier vorgestellte Schaltung ist in der Lage einen einphasigen Verbraucher – es kann neben einer induktiven Last auch eine ohmsche Last sein –, welche mit bis zu 240V Wechselstrom betrieben werden kann und eine maximale Leistung von 1500 Watt hat nach einem Vorgabewert (Sollwert) konstant zu regeln. Das Bild oben zeigt eine mögliche Anwendung der Phasenanschnittsteuerung. Im dargestellen Fall wird eine Frässpindel für eine Hobby-CNC Maschine auf konstanter Drehzahl gehalten. Als Antrieb dient der Motor eines Winkelschleifers aus dem Baumarkt, oft schon zu haben für 15 Euro. Über das graue Kabel gelangt das Signal eines Hall Sensors zur Phasenanschnittsteurung. Im Inneren sind an der Spindel vier Magnete angebracht, sodass man am Ausgang des Hall Sensors pro Umdrehung 4 Implulse messen kann.

2 Funktionsweise uns Systemaufbau

2.1 Steuereinheit

Der Kern der Steuereinheit bildet ein PIC18 Mikrocontroller. Seine Aufgaben bestehen darin, den Istwert (die Drehzahl des Motors) zu messen, den Sollwert einzulesen (es handelt sich letztlich ebenfalls um eine Messung) und basierend auf der Regelabweichung die Stellgrösse (Zündzeitpunkt des Triacs) nach erkennen des Nulldurchganges durch die Triggerschaltung verzögert auszugeben. Abbildung 1 zeigt den prinzipiellen Aufbau des Phasen Controller Boards.

Abbildung 1: Systemaufbau des Phasen Controller Boards

2.2 Sollwertvorgabe

Die Sollwertvorgabe kann entweder über eine eingestellte Spannung, über die RS232 oder ein pulsweiten moduliertes Signal erfolgen. Im letzten Fall steckt die Information in der Breite des Pulses.

Prinzip der Sollwertvorgabe über ein pulsweitenmoduliertes Signal

Der Sollwert steht in diesem Fall im Verhältnis der Breite des High- zum Low-Impuls. Die Frequenz des Signals hat in diesem Fall keinen Einfluss. Bei der Dauer des High-Pulses/zur Dauer des Low-Pulses sind Werte zwischen 0..1 möglich. Der Zusammenhang wird in Abbildung 3 noch einmal grafisch verdeutlicht. Aus Sicherheitsgründen ist die Firmware der Steuereinheit so ausgelegt, dass bei einem Puls/Pause-Verhältnis von 1 die Spindel ausgeschaltet wird. Auf diese Weise wird sichergestellt, falls am Sollwertgeber eine Fehlfunktion und damit verbunden eine unerwünschte Vollaussteuerung signalisiert wird, vermieden wird. Abbildung 2 zeigt die


Abbildung 2: Funktionsweise der Sollwertvorgabe über Pulsweitenmodulation

Netzsynchronisation

Um eine optimale Regelung des Sollwertes zu erreichen muss die Regelung synchron zur Netzfrequenz erfolgen. Dem Regler muss also bekannt sein, wann eine Sinuswelle den Nulldurchgang erreicht. Man benötigt einen Triggerschalter. Aus Sicherheitsgründen sollte die Triggerschaltung galvanisch getrennt sein. Eingesetzt wird dazu ein Optokoppler, der die Steuereinheit vom Netz trennt. Die Triggerschaltung führt eine Vollwellengleichrichtung durch und erzeugt jeden Nulldurchgang einen Impuls vorgegebener Länge Delta T. Abbildung 3 zeigt das Prinzip von der Netzeinspeisung über die Vollwellengleichrichtung bis zur Erzeugung des Triggerimpules.

Abbildung 3: Funktionsweise der Phasenanschnittsteuerung

Leistungsteil

Der Leistungsteil ist as Sicherheitsgründen wieder galvanisch übe einen Optokoppler von der Steuereinheit getrennt. Die Last selbst wird durch einen Triac geschaltet.

Istwerterfassung

Der Istwert (die Drehzahl) wird von einem Sensor erfasst und als Drehzahlwert umgerechnet. Zum Einsatz kann beispielsweise ein Hallsensor kommen, der bei jedem Umlauf der Spindel einen Impuls erzeugt. Um die Auflösung zu erhöhen können beim Hallsensor auch mehrere Magnete angebracht werden. Pro Umdrehung werden dann je nach Anzahl der aufgebrachten Magnete 2, 3, 4 oder mehrere Impulse erzeugt.

Parametrierung

Um eine möglichst grosse Flexibilität bzgl. der anschliessbaren Geräte zu erreichen, kann die Steuereinheit über die RS232-Schnittstelle parametriert werden. Zu den Parameter gehören dabei der P-, I- und D-Wert des Reglers, und andererseits die maximale Drehzahl bei voll ausgesteuertem Triac. Abbildung 4 zeigt die vier möglichen Parameter.

Parameter
Beschreibung Parameter
P P-Anteil des Reglers $Pxxxxx
I I-Anteil des Reglers $Ixxxxx
D D-Anteil des Reglers $Dxxxxx
n_max Maximale Drehzahl des Motors $Nxxxxx

Abbildung 4: Parameter für das Phasen Controller Board

3 Aufbau

Die Grundlagen der Schaltung habe ich aus einem Elektor-Heft aus den fühen Neunziger-Jahren. Der gesamte Steuer- bzw. Regelungsteil wurde aber komplett überarbeitet. Da sich die Preise von Mikrocontrollern bei solch einer Schaltung heute nicht mehr wesentlich zu Buche schlagen, wurde ein PIC18F252 verwendet. Dieser Mikrocontroller eignet sich sehr gut für solch eine Aufgabe, da die vorhandene Hardware den Aufwand für die Programmierung erleichtert. So verfügt der Chip über einen USART, genügen Timer und Capture and Compare register zur Puls-Pause-Messung und zur Herstellung des notwenigen Timings.,

Die Schaltung lässt sich sehr gut in Mischtechnik aufbauen. Bei meinen Prototpyen habe ich, in dem Teil in dem auf der Schaltung die Netzspannung geführt wird mit "through hole"-Komponenten gearbeitet. Der Steuer- bzw. Regelungsteil ist aus SMD-Bauteilen aufgebaut. Von der Schaltung habe ich leider kein Layout, da meine Freeware-Eagle-Version auf 80mm x 100mm begrenzt ist. Vielleicht hat aber jemand Lust, das Layout zu erstellen, damit man es zur Verfügung stellen kann. Abbildung 5 zeigt den Schaltplan des Phasen Controller Boards. Ein Prototyp des Pic Phasen Controller Boardss wurde allerdings bereits auf einer Lochrasterplatine aufgebaut und funktionierte sehr gut.

Da die Spannungsversorgung des PIC ohne Verpolungsschutz aufgebaut wurde, ist darauf zu achten, dass der 5V+ und der GND Eingang nicht vertauscht sind. Anderenfalls kann dies (in vielen Fällen) die Zerstörung des PIC zur Folge haben.

Bei der Dimensionierung der Bauteile ist darauf zu achten, dass sie genügende Spannungsfestigkeit aufweisen. Im Leistungsteil habe ich 1/4Watt Metallschichtwiderstände verwendet. Kleine SMD-Widerstände mit der Bauform 0805 oder 1206 haben sind meist nur für eine Spannung von 50V ausgelegt. Bei den drei Kondensatoren im Leistungsteile wurden X2-Typen verwendet.

Der Ein- und Ausgang für dei serielle Schnittstelle wurde mit eine Pull Down- und einem Serienwiderstand ausgeführt. Dadurch ist man in der Lage (MIT entsprechendee Änderunge der Software) anstatt der seriellen Schnittstelle z.B. Taster anzubringen.

Bild anklicken zum Vergrössern

Abbildung 5: Schaltplan für den PIC Phasen Controller

4 Inbetriebnahme

Die RS232 ist auf dem Phasen Controller Board nicht vollständig bestückt. Um die Kompatibilität zu einem PC herzustellen ergeben sich zwei Möglichkeiten.

Herstellung der Kompatibilität mit Hilfe des MAX232 Schnittstellenbausteins

 

In diesem Fall sorgt der spezielle Schnittstellenbaustein MAX232 von MAXIM für die richtigen Pegel zwischen RS232 und Phasen Controller Board. Der Aufbau des Adapters ist in Abbildung 6 dargestellt.

Abbilung 6: Aufbau des Adapter zur Herstellung der RS232 Kompatibilität

Je nach vernwendetem Typ können auch kleinere Kondensatoren gewählt werden. mit den 1uF liegt man allerdings auf der sicheren Seite. Abbildung 7 zeigt links das Prinzipschaltbild des Schnittstellenbausteines MAX232 und die Vorgabe zur Dimensionierung des Kondensatoren für die Ladungspumpe.

Abbildung 7: Adapter zur Herstellung der RS232 Kompatibilität

Da die Schaltung sehr einfach ist, lässt sie sich z.B. leicht auf einer Lochrasterplatine aufbauen. Abbildung 7 zeigt eine mögliche Varinate zum Aufbau des RS232 Adapteres.

Bestückungsseite der RS232 Adapterplatine
 
Rückseite der RS232 Adapterplatine
 

Abbildung 7: Adapter zur Herstellung der RS232 Kompatibilität, aufgebaut auf einer Lochraster-Platine.

In der dargestellten Version wird der Schnittstellenbaustein vom PIC Phasen Controller Board her mit Spannung versorgt. Weiter wurde der RTS-Ausgang des PCs zur Erzeugung des Reset-Impulses für die Programmierung verwendet.

Herstellung der Komaptibilität ohne speziellen Schnittstellenbaustein

Das Phasen Controller Board ist so aufgebaut, dass am Eingang der RS232 ein Strombegrenzungswiderstand in Serie zuschaltbar ist. Die RS232 kommt dann ohne weitere Bauteile aus. Abbildung 8 zeigt den Anschluss der RS232 wenn kein Schnittstellenbaustein verwendet wird.


Abbildung 8: Anschluss der seriellen Schnittstelle am Phasen Controller Board ohne Pegelwandler

5 Software

Entwicklungssoftware

Die Entwicklungsumgebung ( MPLAB C18 ) zur Programmierung des PIC in der Sprache C kann man als Demo-Version bei Microchip downloaden. Hier findet man auch einige weitere Beispiele. Selbstverständlich können auch andere C-Compiler, die für den PIC Maschinencode erzeugt werden können, verwendet werden. Eine Auflistung möglicher Entwicklungsumgebungen findet man hier.

Programmierung des PIC18F252

Nach dem erfolgreichen programmieren, compilieren und verlinken des Codes kann das Programm auf den PIC programmiert werden.

Eine einfache Möglichkeit, die ein Maximum an Flexibilität in der Programmierung mit sich bringt ist das Aufspielen einer Bootloader Firmware. Firmware Updates können dann sehr einfach über die RS232-Schnittstelle erfolgen. Mit dem Tiny Bootloader von Claudio Chiculita habe ich bereits sehr gute Erfahrungen gemacht.

 

Bevor man mit der gesamten Schaltung arbeiten kann, muss man zuerst den Bootloader auf den PIC brennen. Ich verwende dazu den PIC Brenner von SPRUT.

 

Bei der Programmierung sollten u.a. die Configruation bits des PIC richtig gesetzt sein. Eine mögliche Konfiguration, mit der die obige Schaltung funktioniert hat ist in Abbildung 7 dargestellt.

 

Configuration bit
Settings
Oscillator XT
Osc. Switch Enable Disabled
Power Up Timer Enabled
Brown Out Detect Disabled in hardware, SBOREN disabled
Brown Out Voltage 2.5V
Watchdog Timer Disabled-Controlled by SWDTEN bit
Watchdog Postscaler 1:128
CCP Mux RC1
Stack Overflow Reset Disabled
Watchdog Timer Disabled-Controlled by SWDTEN bit
Watchdog Postscaler 1:1
Low Voltage Program Disabled
Code protect Disabled

Abbildung 7: Mögliche Einstellung der Konfigurationsbits zum Brennen des PIC18F252

Nach dem erfolgreichen Programmieren des PIC mit der Firmware musst die LED auf der Schaltung mit einer Frequenz von ca. 1Hz blinken. Anschliessend kann die serielle Schnittstelle an den PIC angeschlossen werden.

Programm zum PIC uploaden

Eine Beschrebung des Programmiervorganges findet man in den entsprechenden Unterlagen der genannten Hersteller.

6 Links

Weitere interessane Informationen findet man hier:

7 Download

Nr Type downloadbares File Beschreibung
0 Schaltplan des PIC Phasen Controllers (Eagle Schematics) Schaltplan für das Pic Phasen Controller Board im Eagle-Format
1 Schaltplan des PIC Phasen Controllers Schaltplan für das Pic Phasen Controller Board im GIF-Format
1 Software (ist hier in der nächsten Zeit verfügbar) Kompletter Source code des PIC Phasen Controllers: Dieser lässt sich mit dem Demo-C-Compiler von Microchip compilieren.
2      

 

8 Haftung

Haftung: Achtung, in diesem Projekt wird u.A. mit der Netzspannung experimentiert. Es gilt hier mit besonderer Vorsicht zu arbeiten. Für etwaige Schäden an Leben und Material übernehme ich kein Haftung. BItte lesen Sie dazu genau den Haftungsausschluss.

   

 

Impressum | Haftungsausschluss

Version 1.0, ©Gerhard Burger 2004-2013, alle Rechte vorbehalten, letzte Änderung 09.11.2013