Da es jetzt langsam Zeit für eine eigene Lötstation wurde, stand ich mal wieder vor der Qual der Wahl. Welche soll es werden und vor allem wie teuer wird das Ganze?
Die Wahl des Lötkolbens war relativ einfach. Ich habe auf Arbeit schon regelmäßig mit dem WSP 80 von Weller gearbeitet und will ihn nicht mehr missen.
Im Vergleich zu den günstigen Lötstationen von z.B. ELV (LS 50), lassen sich vor allem SMD-Bauteile deutlich angenehmer und sauberer verarbeiten.
Aber auch bei großflächigeren Lötungen und bei Masseflächen funktioniert der WSP 80 nach meinen Erfahrungen deutlich besser.
Wobei ich die ELV-Stationen aber auf keinen Fall schlecht machen will, da sie nach wie vor ein super Preis-Leistungsverhältnis bieten.
Der WSP 80 ist kleiner und leichter als die meisten Lötkolben und liegt somit deutlich besser in der Hand. Die Zuleitung ist flexibel (Silikonleitung) und mit seinen 80 Watt hat er viel Leistung.
Der Wärmeübergang zur Spitze ist sehr gut, dies macht sich besonders bei SMD-Lötungen auf Masseflächen bemerkbar. Die Auswahl der Lötspitzen reicht von kleinen SMD-Spitzen bis zu großen, meißelförmigen Spitzen für große Lötstellen.
Alles in allem ein sehr gutes Gesamtkonzept, wenn der Preis nur nicht so happig wäre…
Die digitale Lötstation WSD 81 mit WSP 80 Lötkolben schlägt mit ca. 280€ zu Buche. Dabei hat sie lediglich eine kleine, 3-stellige 7-Segment-Anzeige und 2 Taster.
Also selber bauen ist die Devise. Einen WSP 80 Lötkolben (mit Ständer, Schwamm und einer Spitze) habe ich neu bei eBay für 95€ ersteigert, blieben also noch 185€ für eine Eigenbau-Lötstation.
Meine Ansprüche waren hierbei:
- Sehr gute Regeleigenschaften, es sollte bei der praktischen
Verwendung kein Unterschied zum Original feststellbar sein. - Das Gehäuse sollte nicht wesentlich größer als das Original sein.
- Die Bedienung sollte ähnlich der LS50 von ELV erfolgen, also 3
programmierbare Speicherplätze und eine Leistungsanzeige. - RS232 Schnittstelle zum Programmieren und für Firmware Updates
(Bootloader), sowie zum Debuggen und Analysieren der Regelkurve.
Funktionsbeschreibung
So… jetzt mussten erst mal ein paar Daten zu dem WSP 80 Lötkolben zusammengetragen werden.
- Spannung: 24 V
- Leistung: 80 W
Okay, das war einfach, steht ja dran. Der Strom ist auch nicht so schwierig, da das Heizelement ein ohmscher Widerstand ist, gilt:
P = U * I -> I = P / U; 80 W / 24 V = 3,33 A.
- Strom: 3,33 A
Schwieriger war jetzt schon der Temperatursensor, also erst mal im Internet gesucht. Hier zeigt sich wieder, dass nicht alles was im Internet steht, auch unbedingt stimmt.
Die Aussage, dass es sich um einen Platinsensor handelt ist richtig.
Dieser hat allerdings einen Nennwiderstand von 20 Ω bei 0 °C und nicht, wie im unter anderem bei Mikrocontroller.net zu lesen, 25 Ω (vermutlich wurde hier bei Raumtemperatur gemessen).
Der Nennwiderstand von Platinsensoren wird generell bei 0 °C angegeben, daher lässt sich die allgemeine Näherungsformel für Platinwiderstände verwenden.
Rheiss = R0 x ( 1 + 0,00385 x °C )
Ausgerechnet, nachgemessen, stimmt!
- Sensor: Platinsensor, 20 Ω bei 0 °C
Die Pinbelegung rauszufinden war dann nicht mehr das Problem:
Lötkolbenstecker, auf die Steckkontakte gesehen, oder Buchse von der Rückseite (von der Seite an der die Leitungen zur Platine angelötet werden).
- 1-2: Heizwiderstand, 7,2Ω
- 3-4: Platinsensor
- 5: Potentialausgleich (niederohmig mit Lötspitze verbunden)
- 6: am Lötkolbenstecker nicht vorhanden
- 7: nicht belegt, damit der 80W Lötkolben mechanisch nicht an eine Station für 50W passt.
Jetzt gilt es, sich Gedanken um die Bauteile für die Frontplatte zu machen.
Als erstes muss für den Lötkolben eine passende Buchse her. Der Stecker sieht wie DIN-Norm aus, hat zusätzlich einen Bajonett-Verschluss.
Bei Reichelt nicht zu finden, aber die Buchsen von Amphenol (Best. Nr.: 74 00 77-24) und Binder (Best.-Nr.: 73 87 97-24) bei Conrad sehen ganz gut aus.
Habe mich hier für die Buchsen von Binder entschieden, da diese günstiger sind.
Datenblatt heruntergeladen und gleich die erste Überraschung erlebt.
Die 7-polige Buchse sieht zwar auf den ersten Blick genauso aus wie die Originalbuchse, allerdings sind die Löcher für die Kontakte um 30° verdreht (gegenüber der Nase an der Unterkante und der Bajonettverriegelung).
Passt also doch nicht!
Die 6-polige Buchse würde passen, wenn nur der 7. Pin am Stecker nicht wäre.
Also hab ich die 6-polige Buchse von Binder bestellt (Conrad Best. Nr.: 74 00 64-24) und an der Stelle (wo sich passenderweise eine kleine Vertiefung mit dem Binder-Logo befindet) ein kleines Loch für den 7. Pin gebohrt.
Hierbei sollte man eine kleine Standbohrmaschine mit einem Maschinenschraubstock verwenden.
Da der 7. Pin ohnehin nicht beschaltet ist, braucht man sich um den elektrischen Kontakt keine Gedanken zu machen, da man ihn nicht benötigt.
Der Grund, weshalb Weller für den WSP 80 einen „komischen“ Stecker verwendet, liegt meines Erachtens nicht darin, Nachbauten zu erschweren, sondern vielmehr an der Entstehungsgeschichte der Weller Lötstationen.
Wenn man sich die „alten“ 50W Stationen ansieht, ist dort die bereits genannte 6-pol Buchse verbaut. Außerdem fehlt an 50W Lötkolben der 7. Pin.
Wenn man davon ausgeht, dass Weller zuerst nur 50W Systeme gebaut hat und dann auf 80W erweiterte, standen sie vor dem Problem, dass der erste DAU einen 80W Lötkolben an eine 50W Station anschließt und die Station damit überlastet.
Also durften die neuen 80W Lötkolben nicht an die alten Stationen passen.
Auf der anderen Seite sollten die alten Lötkolben aber an die neuen 80W Stationen passen.
Da die tatsächliche Leistung durch den Innenwiderstand des Lötkolbens bestimmt wird, ist Letzteres kein Problem. Also erweiterte man die 6-polige Buchse um ein weiteres Loch und die Stecker der 80W Lötkolben um den 7. Pin.
Jetzt passen die neuen 80W Lötkolben nicht in eine alte 50W Station, aber die alten 50W Lötkolben in eine neue 80W Station.
Die Frage des Displays hatte sich für mich schnell erledigt, ich hatte das blauweiße Grafik LCD (Reichelt Best. Nr.: LCD 128BL DIP) noch von einem älteren Projekt übrig.
Es hat einen KS0107/8 Controller (der PT6608 ist kompatibel).
Alternativ kann jedes Display mit KS0107/8 Controller und 128×64 Pixeln verwendet werden.
Es ist hierbei allerdings auf die chipselect-Leitungen zu achten. Bei meinem Display sind die beiden chipselect-Leitungen „High-Active“ beschaltet (siehe Datenblatt). Wenn man ein Display mit „Low-Active“ chipselect Leitungen hat, muss man diese vertauschen.
Sollte es trotzdem noch Probleme geben, bitte ich um eine Rückmeldung, ggf. kann ich die Firmware noch anpassen.
Die 3 Taster rechts neben dem Display als Softkeys und der Drehimpulsgeber (ohne Tastfunktion) erschlossen sich dann schnell.
Beim Drehimpulsgeber habe ich zunächst die Signalverläufe der Ausgänge analysiert (Oszilloskop), da diese sich je nach Hersteller und Typ unterscheiden können.
Auf die Entstehung der restlichen Schaltung werde ich nicht so detailliert eingehen.
Sollten Fragen zur Funktion bestehen, bitte zuerst ins Elektronik-Kompendium sehen und mir danach ggf. eine Mail senden.
Die Primärseite besteht aus einer Kaltgerätebuchse, ein Netzschalter und einer Sicherung. Dann kommt der Trafo. Dieser muss 2 12V Wicklungen haben, oder eine 24V Wicklung mit Mittelanzapfung (gibt es kaum noch). Die Leistung sollte bei mehr als 80VA liegen, da naben unserem Lötkolben mit 80W ja auch noch die Elektronik Strom braucht. Die nächste handelsübliche Größe ist dann 100VA oder 120VA.
Ich habe aus Platzgründen einen 80VA Ringkerntrafo verwendet, dieser wird bei Maximalleistung geringfügig überlastet. Dies ist aber nur kurzzeitig der Fall und somit in der Praxis unproblematisch.
Die Sekundärseite ist in 2 Abschnitte und 3 Platinen aufgeteilt:
Der Leistungsteil enthält einen Gleichrichter (B1) und zwei Ladekondensatoren (C29, C30).
Diese stellen eine unstabilisierte Gleichspannung von ca. ±15V für die Steuerung bereit.
Ferner enthält der Leistungsteil einen Optotriac (OK1) und einen Leistungstriac (T2) mit Kühlkörper.
Die Steuerung steuert die „Leuchtdiode“ im Optotriac, der wiederum den Leistungstriac ansteuert.
Der Leistungstriac regelt letztendlich die Leistung des Heizwiderstandes im Lötkolben.
Die Leuchtdiode bekommt ein PWM-Signal mit einer Frequenz von 1Hz und 100 Abstufungen.
Nicht ganz zufällig entspricht jede PWM-Stufe genau einer Halbwelle der 50Hz Wechselspannung.
Der Optotriac (OK1) hat eine integrierte Nulldurchgangserkennung. Er schaltet T2 also nur im Nulldurchgang der Wechselspannung.
Somit habe ich eine einfache Paketsteuerung realisiert, indem ich über das Puls-/Pausenverhältnis der PWM die Anzahl der Halbwellen pro Sekunde einstellen kann.
Da der Triac (T2) im Nulldurchgang der Wechselspannung schaltet entstehen keine Störungen in der Betriebsspannung.
Über den PN-Übergängen des Triacs fallen ca. 1,5V ab.
Daher entsteht eine Peak-Verlustleistung am Triac von etwa 3,5W, die aber nur kurzzeitig erreicht wird.
Es empfiehlt sich, einen kleinen Kühlkörper zu verwenden.
Das Kernstück des Steuerungsteils ist der Mikrocontroller (IC1), ein ATmega32.
Er steuert das Grafik-LCD an, liest den AD-Wandler (IC4) aus, generiert das PWM Signal für den Optotriac und berechnet die Leistung.
PD5 vom ATmega32 ist dem internen Timer 1 zugeordnet, welcher das PWM-Signal liefert.
Dieses wird über den Vorwiderstand R2 auf die Anode des Optotriacs (OK1) gegeben.
An die Stiftleiste JP3 wird die RS232-Buchse angeschlossen.
Der MAX232 (IC3) ist ein Pegelwandler für RS232.
Die TTL-Signale liegen dann an den Anschlüssen des Hardware UART des ATmega32 (PD1 und PD0) an.
Die Frontplatte wird über den Steckverbinder SV1 angeschlossen.
Auf der Frontplatte befinden sich 3 Taster, der Drehimpulsgeber und das Display, sowie der Vorwiderstand für die Hintergrundbeleuchtung.
Die Anode der Hintergrundbeleuchtung wird über den 18Ω Vorwiderstand mit 5V verbunden.
Die Kathode wird dann über T3 nach Masse geschaltet.
T3 wird mit einem PWM-Signal vom Timer 2 angesteuert, somit lässt sich die Helligkeit der Hintergrundbeleuchtung im Menü regeln.
R4 war als Alternative vorgesehen, falls die PWM-Reglung zu große Störungen auf der Betriebsspannung verursachen würde und somit das Ergebnis des AD-Wandler negativ beeinflusst.
Dies hat sich bei mir allerdings nicht bestätigt und ich habe R4 somit nicht bestückt.
Falls es Probleme gibt, kann man statt R33 und T3 auch R4 bestücken und die Helligkeit mit dem Trimmer einstellen.
Die unstabilisierten Gleichspannungen (ca. ±15V) vom Leistungsteil werden an die Buchse J2 angeschlossen.
Aus den +15V macht der LM317 (IC6) zunächst 8V.
Da diese Spannung auch als Referenz für unseren Analogteil dient, müssen die 8V mit R19 genau eingestellt werden.
Ein Voltmeter kann man hierzu an die Messpunkte PAD2 und PAD1 anschließen.
Anschließend macht ein 7805 (IC7) daraus 5V für die restliche Schaltung.
Der 7905 (IC5) generiert -5V als negative Betriebsspannung für den Analogteil.
Da ich unter anderem die Hintergrundbeleuchtung des Displays aus den 5V speise, werden IC6 und IC7 durchaus warm.
Ich habe sie wärmeleitfähig mit einer großen Kupferfläche auf meiner (doppelseitigen) Platine verbunden.
Ist dies nicht möglich empfehle ich die Verwendung von Fingerkühlkörpern.
Der Analogteil rund um den Operationsverstärker IC2 sieht auf dem ersten Blick komplizierter aus als er ist.
Der erste Teil (IC2C) arbeitet als invertierender „Verstärker“ mit einem Verstärkungsfaktor von -0,00834.
Da er immer 8V „verstärkt“, erzeugt er konstante -66,7mV am Ausgang, die man mit R3 genau einstellen kann.
Diese geringe negative Spannung benötige ich zum Nullpunktabgleich des Sensors.
Jetzt folgt eine Reihenschaltung des Temperatursensors und dem 2,4kΩ Widerstand R7.
Da R7 sehr viel größer ist als unser Temperatursensor, verändert sich der Stromfluss durch beide Widerstände im gesamten Temperaturbereich des Sensors nur sehr wenig. Dadurch erhält man nahezu eine Stromquelle für den Sensor.
Bei 0°C hat unser Sensor einen Widerstand von 20Ω.
In Reihe mit R7 ergibt sich ein Spannungsabfall über dem Sensor von 66,7mV.
Da dieser Spannungsabfall sich aber auf meine negative Spannung von IC2C bezieht habe ich bei 0°C an dem positiven Eingang von IC2B genau 0V anliegen.
Bei 450°C hat der Temperatursensor einen Widerstand von 54,65Ω.
Das entspricht 179,6mV Spannungsabfall über dem Sensor, somit ergeben sich 112,9mV am Eingang von IC2B.
C9 dient zur Stabilisierung dieser Spannung, da durch die lange Zuleitung des Lötkolbens Störungen eingekoppelt werden können.
IC2C stellt einen Komparator dar, der die Ausgangsspannung unserer Reihenschaltung mit 5V vergleicht.
Solange ein Lötkolben eingesteckt ist, erreicht die Ausgangsspannung unserer Reihenschaltung höchstens etwas mehr als 100mV.
Wenn allerdings kein Lötkolben eingesteckt ist, fließt kein Strom durch R7 und es liegen an IC2C 8V an, also mehr als 5V.
R24 und D5 begrenzen die Ausgangsspannung auf ca. -0,7 – + 4,7V. Das Ausgangssignal entspricht dann einer logischen 1 bzw. 0.
1 bedeutet also Lötkolben angeschlossen und 0 kein Lötkolben angeschlossen.
Dieses digitale Signal wird dann auf den Anschluss PA1 des ATmega32s zur Weiterverarbeitung gegeben.
IC2B ist ein nicht invertierender Verstärker mit einem Verstärkungsfaktor von 33,73.
Er verstärkt die Ausgangsspannung unserer Reihenschaltung auf einen für den AD-Wandler (IC4) messbaren Wert.
R10 und C10 ergeben einen Tiefpassfilter der eventuelle Störungen filtert und D1 schützt den Eingang von IC4 vor einer zu hohen Spannung (z.B. wenn kein Lötkolben eingesteckt ist).
Der MAX191 (IC4) ist ein 12-Bit AD-Wandler mit einer internen Referenzspannungsquelle von 4,096V.
Außerdem besitzt er neben dem (hier genutzten) SPI-Interface auch noch ein paralleles.
C11, C16, C17 und C18 stabilisieren die Betriebs- und Referenzspannungen von IC4.
Ich hatte den MAX191 noch von einem ausgeschlachteten Gerät in meiner Bastelkiste, daher habe ich ihn verwendet.
Im Prinzip würde auch jeder andere 12Bit AD-Wandler funktionieren, der über eine passende Referenz verfügt (oder an den eine passende Referenz angeschlossen wird).
Bei größerer Nachfrage würde ich die Firmware evtl. auch auf einen bei Reichelt erhältlichen Typ umschreiben.
Nachtrag:
Bei Nachbauten wurde erfolgreich der MCP3201 eingesetzt. Er ist bei Reichelt erhältlich, und seitens der SPI-Ansteuerung kompatibel zum MAX191.
Es ist daher keine andere Firmware nötig. Allerdings verfügt der MCP3201 nicht über eine interne Referenz.
Eine externe 4,096V Refernz gibt es als IC zu kaufen, oder man kann sie aus den 8V mit Hilfe eines einstellbaren Spannungsteilers und einem größeren Kondensator gewinnen.
Letzteres hat zwar eine geringere absolute Genauigkeit, was aber kein großes Problem ist.
IC2D arbeitet als invertierender Schmitt-Trigger.
Er sorgt für eine direkte Hardware-Übertemperaturabschaltung, wenn die Software des Mikrocontrollers abstürzen sollte, oder noch nicht aufgespielt ist.
R13 und D4 begrenzen die Ausgangspannung wieder auf TTL-Pegel. Der ATmega32 kann am Anschluss PA0 also abfragen ob die Übertemperaturabschaltung aktiv ist.
Solange die Abschaltung nicht aktiv ist, liegt H-Pegel an, der den Transistor (T1) durchschaltet und somit die Kathode vom Optotriac auf Masse legt.
Sobald der Lötkolben eine Temperatur von ca. 550°C erreicht, löst die Übertemperaturabschaltung aus, der Ausgang geht auf 0, T1 sperrt und die Kathode des Optotriac wird getrennt.
Jetzt ist es egal, wie der Mikrocontroller die Anode des Optotriacs ansteuert, die LED leuchtet auf keinen Fall und der Lötkolben ist abgeschaltet.
Sobald der Lötkolben ca. 450°C erreicht, deaktiviert sich die Abschaltung wieder.
Die Abschaltung ist auch aktiv, wenn kein Lötkolben eingesteckt ist.
Somit ist die Buchse im offenen Zustand nahezu spannungsfrei.
Die Firmware bildet einen PID-Regler nach, um eine möglichst schnelle und genaue Temperaturreglung zu gewährleisten.
Erste Inbetriebnahme
Nachdem die Lötstation soweit fertig gebaut ist, würde ich zunächst einen Test ohne ATmega32 und AD-Wandler machen.
Hierbei sollten Sie kontrollieren, ob die Versorgungsspannungen an den Fassungen für den ATmega32 bzw. den MAX191 stimmen.
Bevor wir aber die eigentliche Firmware aufspielen können, muss zuerst der Bootloader auf den ATmega32.
Der Einfachheit halber verwende ich den freien Bootloader von Chip45.
Ich beziehe mich hier auf die Version 2.94.
Neuere Versionen sollten aber auch funktionieren.
Laden Sie sich zuerst den Bootloader von der Website und entpacken Sie ihn.
Mit einem beliebigen AVR (ISP) Programmer stellen Sie die Fusebits zunächst wie abgebildet ein:
Jetzt flashen Sie die Datei chip45boot2_ATmega32_uart0_v2.94.hex aus dem entpackten Ordner auf den ATmega32.
Nachdem der Bootloader auf dem ATmega32 ist, können Sie ihn und den AD-Wandler einbauen und die Lötstation einschalten.
Jetzt verbinden Sie die Lötstation mit Ihrem Computer.
Sollte dieser keine RS232-Schnittstelle haben, sollten auch die meisten USB-Adapter funktionieren.
Getestet habe ich einen Adapter mit FTDI232RL Chipsatz.
Wer sich es zutraut kann auch einen FTDI232RL einzeln in die Lötstation einbauen und eine USB-B Buchse verwenden.
Der MAX232 entfällt hierbei.
Jetzt benutzen Sie am Besten das GUI von Chip45 zum flashen meiner Firmware.
Die Bedienung des GUI ist bei Chip45 beschrieben.
Die betreffende COM-Schnittstelle wird auf 19200 Baud eingestellt.
Zum Rücksetzen des ATmega32 kann einfach die Lötstation aus- und wieder eingeschaltet werden.
Auch wenn der interne EEPROM verwendet wird, muss kein EEPROM-File geschrieben werden.
Dies erledigt der ATmega32 beim ersten Start selbst, bzw. die alten Speicherwerte bleiben erhalten.
Bei einem Firmwareupdate muss lediglich die neue Version über das GUI von Chip45 aufgespielt werden.
Hierzu muss die Lötstation nicht aufgeschraubt werden.
Bedienungsanleitung
Die Bedienung ist hoffentlich weitestgehend selbsterklärlich.
Mit dem Drehimpulsgeber stellt man die gewünschte Solltemperatur ein.
Die aktuelle Temperatur wird darunter angezeigt.
Der Bargraph am linken Bildschirmrand stellt die aktuelle Leistung dar.
Mit einem kurzen Klick auf eine der Tasten wird der gespeicherte Temperaturwert ausgewählt.
Mit einem langen Druck wird der aktuelle Wert in den jeweiligen Speicherplatz geschrieben.
Wenn man den Taster 1 und den Taster 3 gleichzeitig drückt, gelangt man in das Menü.
Mit den Tasten 1 und 3 navigiert man hoch und runter, mit dem Drehimpulsgeber verändert man den jeweiligen Wert.
Der P-, I- und D-Wert beeinflusst, zu welchem Teil die entsprechenden Gleichungsbestandteile in die Leistungsberechnung eingehen.
Man kann damit die Regelung noch etwas optimieren, oder belässt einfach die Standardwerte.
Mit einem kurzen Druck auf Taster 2 speichert man die Einstellungen und verlässt das Menü.
Auf der Rückseite befindet sich der Netzanschluss, der RS232 Anschluss, die Potentialausgleichsbuchse, sowie die Trimmer für den Nullpunktabgleich und Displaykontrast.
Die Potentialausgleichsbuchse ist eine 3,5mm Klinkenbuchse in mono Ausführung.
Solange sich kein Stecker in ihr befindet ist der Lötkolben hart geerdet (niederohmig mit Erde verbunden).
Wenn man einen Stecker hineinsteckt, trennt man den Lötkolben von der Erde.
Der Lötkolben ist nun mit der Spitze des Steckers verbunden und der hintere Teil des Steckers ist mit Erde verbunden.
Man kann nun, indem man einen beliebigen Widerstand in den Stecker lötet, den Erdungswiderstand bestimmen, oder aber den Lötkolben auf ein anderes Potential legen.
Auch ist es möglich an diese Buchse ein Erdungsarmband anzuschließen.