Reparatur K.M.E. SPA500F Endstufe

Mein Freund Falk hat mich Anfang des Jahres gefragt, ob ich mir mal eine defekte Endstufe angucken würde, die er sehr günstig im Internet kaufen könnte. Meiner Meinung nach konnte man damit nichts falsch machen, da schon der eingebaute Netztrafo allein den Kaufpreis wert war. Also wurde die Endstufe bestellt und gleich zu mir nach Hause geliefert. Es handelte sich um ein Gerät der Firma K.M.E., Modell SPA500F mit 2x 250W RMS an 4 Ohm bzw. 2x 150W RMS an 8 Ohm. Das Baujahr war ungefähr 2000. Der Verkäufer beschrieb den Zustand etwa so: „Ein Kanal geht nicht, der Rest ist in Top Zustand, weiß auch nicht.“ Nach zwei Tagen war das Teil bei mir. Den Rest der Story erzähle ich als kleine Bildergeschichte im Folgenden.

Bestandsaufnahme

Als erstes war die Eingangsprüfung dran, also Gehäusedeckel abschrauben und mal gucken.

Gehäuse geöffnet auf der Werkbank

Ein starker Geruch nach kaltem Zigarettenrauch und verbrannter Elektronik und entsprechende Ablagerungen verrieten: Das Gerät war jahrelang in einer Umgebung mit viel Nikotin im Einsatz, wahrscheinlich eine Diskothek.

Braune Ablagerungen auf dem Kühlkörper

Außerdem waren eine Menge Bauteile auf der Platine verbrannt oder sogar explodiert.

Brandspuren im Gehäusedeckel

Es war auch deutlich zu erkennen, dass das Gerät kürzlich geöffnet worden war. Bei den Brandspuren auf dem Deckel und dem Geruch, was man beides schwer übersehen kann, war der Verkäufer eventuell nicht ganz aufrichtig bei der Zustandsbeschreibung.

Hier einige Bilder von den spannenden Stellen.

Gate-Widerstände der Endtransistoren
Gate-Widerstände vom positiven Zweig
Weitere durchgebrannte Teile
Ein Bild der Verwüstung

Auch einige Leiterbahnen hatten sich in Wohlgefallen aufgelöst. Schnell war klar, dass ich hier ohne Schaltbild nicht weiterkomme. Eine Suche nach den Unterlagen im Internet hat nichts ergeben, also habe ich kurzerhand am Wochenende eine freundliche Anfrage an die Service-Email von K.M.E. geschickt. Und voila, am Montag früh waren Schaltbild und Bestückungsplan in meinem Posteingang, Absender war der Produktionsleiter persönlich. An dieser Stelle noch mal vielen Dank dafür.

Defekte Teile

Im nächsten Schritt habe ich alle defekten Teile gesucht und ausgelötet. Da ist einiges zusammengekommen wie man auf den Fotos sieht.

Ausgelötete Bauteile
Weitere Bauteile

Ersatz

Ersatz zu beschaffen war diesmal einfach. Mein lokaler Elektronik-Bauteile Dealer SEGOR-electronics GmbH Berlin hatte alles parat, sogar relativ exotische Japan-Transistoren 2SC… waren ab Lager verfügbar. Von einem Auslauftyp hatte ich allerdings die letzten Exemplare gekauft.

Ersatzteile

Die Teile zu tauschen war nicht schwer Dank Schaltbild und Bestückungsplan. Nach wenigen Stunden war alles erledigt und die verdampften Leiterzüge durch dünne PTFE-isolierte Drähte ersetzt.

Ersetzte Leiterzüge

Test mit Vorsichtsmaßnahmen

Als nächstes war eine erste Prüfung dran. Das ist eine heikle Angelegenheit. Wenn man einen Fehler gemacht oder die Ursache nicht gefunden hat, macht es wumms, es steigen kleine Wölkchen auf und man kann nochmals diverse Teile tauschen. Eine sehr gute Versicherung gegen ein neuerliches Desaster ist eine vorgeschaltete Glühlampe. Diese schleift man in die Stromversorgung ein, sodass die maximale Leistung stark reduziert wird und bei Kurzschluss etwa nur die Glühlampe leuchtet und nichts explodiert. Für eine Endstufe dieser Größe ist eine 100W Glühlampe angemessen, gut wer so etwas noch besitzt.

Der Test verlief zunächst gut, das eingespeiste Sinussignal war am Ausgang zu sehen. Allerdings traten bei etwas größerer Aussteuerung starke Verzerrungen auf. Der nicht reparierte Kanal lief nach wie vor tadellos.

Oszillogramm intakter Kanal
Oszillogramm defekter Kanal

Knifflige Fehlersuche

Den Rest der Geschichte kann ich kurz zusammenfassen. Bei der Reparatur der Leiterzüge hatte ich einen kleinen Fehler gemacht und die Treiber der einen Halbwelle mit den Endtransistoren der anderen Halbwelle verbunden. Bei geringer Lautstärke war das Signal ok, wenn aber die Endtransistoren mit übernehmen, kommt nur noch Murks aus dem Lautsprecher. Das Problem hat mich noch ein paar Tage verfolgt. Vor lauter Verzweiflung habe ich fast alle Teile der defekten Kanals getauscht, ohne Erfolg. Die ausgelöteten Teile ergaben bald so eine Art Wimmelbild.

Ersetzte Kleinteile
Neue Bauteile eingelötet

Nach ein paar Nächten drüber schlafen habe ich dann noch mal systematisch das Problem gesucht. Große Zufriedenheit, als ich den winzigen Fehler gefunden und behoben hatte. Eigentlich hatte ich im ersten Versuch alles weitere richtig gemacht. Das klappt bei einer umfangreichen Reparatur nicht sehr oft.

Abgleich

Einziger notwendiger Abgleich ist der Ruhestrom. Dazu habe ich einfach den Spannungsabfall über den Drainwiderständen des intakten Kanals gemessen und den anderen Kanal genauso eingestellt.

Fehlerursache und Update

Im Testlauf hat sich herausgestellt, dass die Kühlkörper auch ohne Last schon ziemlich heiß werden. Ab einer bestimmten Temperatur werden dann die eingebauten Lüfter aktiviert. Die Temperatur im Leerlauf erschien mir zu hoch. Das passte auch zu einer Änderung bzw. einem Update des Gerätes, das in den Unterlagen, die mir K.M.E. geschickt hatte, zu sehen war. Das Update führt dazu, dass die Lüfter permanent mit geringer Drehzahl laufen, um eine Überhitzung zu verhindern. Damit ist nun wohl auch die Ursache des Defektes gefunden. Ziemlich sicher ist einer der Endtransistoren den Hitzetod gestorben und hat diverse andere Bauteile mitgezogen.

Das aus einem 220nF Kondensator und zwei 5,6V Z-Dioden bestehende Update war schnell eingebaut.

Schließlich störten jetzt nur noch die alten, unrund laufenden und ziemlich lauten Lüfter, die ja nun permanent an sind. Das leiseste passende Modell zum Austausch war schnell gefunden und bestellt.

Neuer Lüfter

Letzte Amtshandlung war der Austausch der drei Lüfter.

Lüftertausch

 

Bekomme Updates per Email

Loading

Wochenendprojekt: Avalanche-Puls Generator

Dieses Projekt hatte ich schon vor einiger Zeit an einem freien Wochenende gebaut. Nun ist endlich mal Zeit, das hier zu dokumentieren. Ich wollte schon immer die Bandbreite von meinen beiden Oszilloskopen testen, ein Analoges und ein Digitales, wusste aber nicht wie. Hilfe gibt es vom Avalanche-Effekt auch Lawinendurchbruch genannt, der sich in der Raumladungszone im p-n Übergang eines Halbleiters abspielt. Bei dieser Art des Durchbruchs werden freie Ladungsträger exponentiell vervielfacht, was zu einem sehr schnellen Anstieg der Stromstärke führt. Mit anderen Worten: Man kann extrem schnelle bzw. steile Impulse erzeugen.

Idee

Die Idee hatte ich von diesem Artikel hier: Avalanche Pulse Generator Build Using 2N3904. Der Aufbau ist sehr simpel, benötigt aber mindestens 120V. Zum Glück kommt die Schaltung ohne spezielles Bauteil wie z.B. eine Avalanche-Diode aus. Es eignen sich viele Standard-Transistoren, die man in der Bastelkiste hat für den Avalanche-Effekt und einige 2N3904 waren vorhanden. Also kurzerhand eine kleine Lochrasterplatine zurechtgesägt, die Teile zusammengesucht und ans Werk.

Bauteile und Lochraster-Platine

Die Schaltung

Die Hochspannung erzeugt ein guter alter 555, nach einer Schaltung, die ich  schon mehrfach verwendet hatte, unter anderem im VU-Meter mit EM84. Der eigentliche Generator besteht aus nur 6 Bauteilen wie im Schaltbild zu sehen ist.

Schaltbild
Schaltbild

Aufbau

Zunächst hatte ich den 2N3904 ausprobiert. Bei meiner Transistor-Charge von SEGOR-electronics GmbH Berlin tritt der Avalanche-Effekt bei 130V ein. Bei Segor hatte ich auch ein paar 2N2369A erstanden, die schon bei ~90V den Lawinendurchbruch haben, für die ich mich dann schlussendlich entschieden habe. Vermutlich gibt es große Streuungen gibt je nach Hersteller und Produktionsjahr, man muss wohl etwas experimentieren.

Fertig zusammengebaut

Nach kurzer Zeit war die kleine Schaltung dann fertig zusammengelötet und alles funktionierte auf Anhieb wie geplant. Sehr gespannt war ich nun auf den Test der Bandbreite meiner zwei Oszilloskope. Für die Berechnung der Bandbreite aus der Anstiegszeit gibt es meines Wissens nach keine exakte Formel. Üblicherweise wird die Bandbreite mit 0,35 geteilt durch die Anstiegszeit berechnet. Die Anstiegszeit des Signals ist dabei die Zeit in der das Signal von 10% auf 90% des Endwertes ansteigt.

Oszilloskoptests

Als erstes war das gute alte analoge Tektronix 2465B (Baujahr 1991) dran.

Bandbreitentest TDS2465B

Der Bildschirm hat Markierungen bei 10% und 90% und einen Cursor für Δt. So kann man die Kurve prima einstellen und relativ genau ablesen. Die ermittelten 0,78ns Anstiegszeit ergeben eine Bandbreite von immerhin ca. 450MHz. Das ist deutlich mehr als der Hersteller angibt und ich bin sehr zufrieden.

Als nächstes wurde das digitale Modell TDS784C (Baujahr 1996) angeschlossen.

TDS784C Anstiegszeit

Das Gerät kann eine automatische Messung der Anstiegszeit vornehmen. Das Ergebnis ist ziemlich genau 1GHz Bandbreite, was auch der Hersteller angibt für das Gerät. Interessant war für mich, dass es nach einem initialen Anstieg auf etwas mehr als 10% so eine Art Pause gibt, nach der das Signal dann sehr schnell weiter wächst. In der Vergrößerung ist das besser zu sehen.

Anstiegszeit Detail

Gehäuse

Summa summarum war alles wie erwartet und ich habe wieder einiges gelernt bei diesem Versuch. Am Ende habe ich der Schaltung noch ein kleines chices Gehäuse spendiert, was mittlerweile sogar beschriftet ist.

dsPIC33 Experimente

Wer meinen Artikel Fledermausdetektor gelesen hat, wird sicher den Unterton mitbekommen haben, dass ich nicht ganz zufrieden war mit dem Ergebnis. Das Gerät funktioniert zwar grundsätzlich, ist aber zu unempfindlich. Das hat mich bewogen das ganze noch mal aufzubauen, diesmal mit Digitaltechnik, die der Aufgabe besser gewachsen ist. Zentrales Bauteil ist ein dsPIC33E, ein Mikrocontroller mit DSP-Funktionen von Microchip.

Das Ziel

Die Idee ist, das Ultraschallsignal mit Mikrofonen aufzunehmen, die in dem Bereich empfindlich sind. Das verstärkte Signal wird mit einem AD-Wandler mit mindestens 300kHz Samplingrate eingelesen. Nach einer Spektralanalyse mit FFT wird das Spektrum zunächst auf einem Display ausgegeben. Wenn möglich wird es mit einer inversen FFT und nach Anpassung der Samplingrate wieder hörbar gemacht. Soweit die grobe Idee und wenn das Projekt mit aller Hardware, Software und Mathematik weiter gediehen ist, gibt es hier sicher einen Artikel dazu.

Das Experiment

Zunächst benötige ich also ein kleines System zur digitalen Signalverarbeitung. Am Eingang ein Vorverstärker, AD-Wandler, DSP bzw. schneller Mikrocontroller und am Ausgang wieder ein DA-Wandler. Ein kleines Display sollte auch nicht fehlen. Schön wäre eine Stromversorgung per Batterie, alternativ USB.

Blockschaltbild mit Frontend, AD-Wandler, DSP, DA-Wandler und Stromversorgung

Bauteilrecherchen

Ein solches Projekt fängt immer mit Recherchen zu den verwendeten Bauteilen an. Welcher Mikrocontroller wird gewählt, welche Wandler, Stromversorgung usw. usf. Aus diesen Überlegungen und nach einiger Suche ist dann schon ein recht detailliertes Blockschaltbild entstanden wie oben zu sehen.

Leider sind einige spezielle Bauteile nicht mehr im Handel für Amateure zu bekommen. Den DSP z.B. gibt es nur bei großen überregionalen Distributoren mit ziemlich hohen  Versandkosten oder direkt beim Hersteller. Insgesamt waren glaube ich 3-4 Bestellungen nötig, um alle Teile zu besorgen und wegen der modernen Gehäusebauformen muss man die meisten ICs auf eine kleine Adapterplatine löten, um sie zu einer Lochrasterkarte passend zu machen.

Adapterplatinen für verschiedene TSSOP und SSOP Gehäuse

Prototyp

Einige Bastelabende nachdem die Bestellungen da waren, war der Prototyp soweit fertig, dass ich anfangen konnte, die einzelnen Schaltungsteile zu testen.

Prototyp auf Lochrasterplatine aufgebaut

Es ging los mit dem Oszillator, dann der I2C Bus, Display und AD/DA-Wandler. An der Stelle kam ich etwas ins Stocken. Es ist jedes Mal ziemlich knifflig, eine SPI (synchron serielle Schnittstelle) mit hohen Datenraten zum Laufen zu bekommen. Ich musste mir noch einen neuen Logikanalysator mit 100MHz Auflösung anschaffen, um das Problem zu lösen. Der Grund war, dass der AD-Wandler noch ein Signal /CONVST (conversion start) benötigt, was die CPU nicht schnell genug und vor allem nicht synchron generieren kann. Als Ausweg habe ich das Signal /SS (slavesync) der SPI invertiert und als /CONVST verwendet. Die AD-Wandlung soll ohnehin synchron zur SPI Schnittstelle erfolgen was bedeutet, dass je eine Übertragung auf der SPI-Schnittstelle (/SS) auf eine AD-Wandlung (/CONVST) folgt.

Für die Analyse der Datenübertragung verwende ich PulseView, eine tolle Open Source Software für einige vorwiegend günstige Logikanalysatoren.

Logikanalysator Anzeige für SPI-Schnittstelle des AD-Wandler MAX8328

Nachdem ich die Schwierigkeiten mit einigen Hard- und Software-Änderungen umschifft hatte, war es ein toller Moment, den ersten verzerrungsfreien synthetisch erzeugten Sinus-Ton zu hören.

Software

Die Software habe ich zunächst vorwiegend in C geschrieben. Vom Prozessor-Hersteller gibt es eine tolle Entwicklungsumgebung, „MPLAB® X„, die frei verfügbar ist. Leider hat die freie Version einige Einschränkungen bei den Compileroptionen. Mehr als ein „-o1“ ist nicht erlaubt, was zu relativ langsamem Code führt. Das ist hier aber kein Problem, zeitkritische Dinge werden einfach in Assembler implementiert.
Das auch als Tipp an alle Nutzer von GCC, AVR-GCC etc: Es ist ziemlich einfach, Assembler in C zu integrieren. Man muss lediglich eine Datei mit der Endung „.s“ oder „.S“ dem Projekt hinzufügen. Dabei wird die Datei mit dem großen S noch vom Preprozessor verarbeitet.

Die jeweils aktuelle Software habe ich unter meinem Github-Account zur Verfügung gestellt.

Hardware

Die Hardware ist noch nicht perfekt, aber ganz gut geeignet für weitere Experimente. Immerhin sind  mit dem System 16bit mit 384kHz Mono bzw. 192kHz Stereo Samplingrate als Input möglich und 24bit bei 192kHz Stereo als Output. Dabei ist die CPU mit dem Datentransfer zu nur wenigen Prozent ausgelastet dank DMA-Transfers.

Schaltbild, noch ohne Frontend für Mikrofone und Line-In

Trotzdem würde ich beim nächsten Prototyp einiges verbessern, vor allem, um die SPI Programmierung einfacher zu machen.

  • dsPIC mit I2S Schnittstelle
  • dsPIC mit mindestens 3 SPI Schnittstellen und mehr IO Ports
  • ein größeres Display in Farbe
  • zusätzlicher RAM, evtl. an SPI Schnittstelle

Mehr RAM wäre prima. Das Maximum on Chip für dsPIC33 CPUs sind ca. 50kByte. Ein dsPIC33EP512GP806 im TQFP64 Gehäuse wäre gut geeignet vielleicht aber auch ein 32bit Controller wie der PIC32MZ1024EFH100.

Vorläufig fertiges Experimentierboard mit Programmieradapter und Logikanalysator in Betrieb

Wochenendprojekt: Fledermausdetektor

Seit Jahren beobachte ich eine Menge Fledermäuse am Abend und schon seit langem hat mich deren Art der Orientierung und der Kommunikation mittels Ultraschall interessiert. Vorvorletztes Wochenende hatte ich endlich mal wieder etwas Zeit, um einen Fledermausdetektor zu bauen.

Es sollte ein schneller Aufbau auf einer Lochraster-Platine werden und daher habe ich nach einer fertigen Schaltung gesucht. Eine kurze Recherche im Internet liefert einiges an Anleitungen. Nach ein paar Stunden lesen und dem Abgleich der notwendigen Bauteile mit dem Vorhandenen in der Bastelkiste, habe ich mich für eine Analogschaltung entscheiden, die mit einem 4-fach OPV auskommt.

Blockschaltbild

Das Prinzip ist ähnlich einem Superhet-Empfänger: Das hochfrequente Eingangssignal wird etwa 140.000-fach verstärkt und mit einem Oszillatorsignal auf eine niedrigere Frequenz gemischt. Das Prinzip eines Mischers ist umfassend bei Wikipedia erklärt. An der originalen Schaltung habe ich nur wenige Modifikationen vorgenommen. So habe ich den 62kΩ  Widerstand durch ein 68kΩ Exemplar aus der E12 Reihe ersetzt, was die Verstärkung unwesentlich erhöht hat. Außerdem hatte ich kein 50kΩ Poti parat und habe deshalb ein 100kΩ eingesetzt, was zum Ausgleich mit einem weiteren 68kΩ Widerstand überbrückt wurde. Das vollständige Schaltbild ohne die Modifikationen ist hier zu sehen:


Bat Detector, Quelle: https://www.nutsvolts.com/

Auf der o.g. Seite ist alles wunderbar beschrieben, auch ein paar Hintergrundinformationen zu Fledermäusen findet man dort. Um den Detektor richtig anwenden zu können, sollte man den Artikel unbedingt lesen.

Im Folgenden noch eine kleine Bildergeschichte des Aufbaus. Da mir das Projekt sehr gefallen hat, habe ich ein adäquates chices Gehäuse aus Sperrholz gebaut. Das Mikrofon ist steckbar, sodass man mit verschiedenen Mikrofonen experimentieren kann.

Gehäuse Einzelteile, verklebt und geölt
Gehäuse fertig zusammengebaut
Platine von oben
Platine von unten
Batteriefach
Einsatzbereit
Mikrofon (Piezo-Summer)

Erste Versuche haben gezeigt, dass man einiges an Geduld aufbringen muss, um eine Fledermaus zu hören. Die Geräusche sind recht leise und auch nur zu hören, wenn das Säugetier direkt auf einen zufliegt. In einem Berliner Innenhof, in dem in der Dämmerung fünf bis zehn Fledermäuse ihre Runden drehen kann man mit etwas Glück alle viertel Stunde so eine Art rhythmisches Glucksen vernehmen.

 

Bekomme Updates per Email

Loading

USB Wägezellen Interface mit AD7797

Dieses Projekt hatte ich bereits 2011 entwickelt und andernorts veröffentlicht, Jahre bevor eine Menge ähnlicher Schaltungen im Internet aufgetaucht sind. Es ist ein klar strukturierter Entwurf mit gut funktionierender und frei verfügbarer Software, um eine Wägezelle über USB anzusteuern. Ich habe Teile einer günstigen Küchenwaage mit Doppelbiegebalken vom Discounter genutzt, um eine USB Waage zu bauen mit einer Auflösung von weniger als 1g.

Foto des Prototyps, links eine Wägezelle mit Doppelbiegebalken aus einer 5kg Küchenwaage

Teil 1: USB Wägezellen Interface Controller

Herzstück der Schaltung ist ein Atmel ATMEGA644 Mikrocontroller, der die A/D-Wandlung steuert und die Daten vom AD7797 liest. Auf der anderen Seite fungiert der Atmel als „low speed USB 1.1 HID device“ mit dem Vorteil, dass für HID Devices kein extra Treiber für das Betriebssystem notwendig ist, mit dem die Hardware verbunden ist.

Der Controller macht zusätzliche eingebaute Funktionen möglich.

  • automatische zyklische Wandlung
  • Offset- und Verstärkungs-Kalibrierung
  • diverse Statistikfunktionen wie Mittelwert, Median, Varianz und Standardabweichung

Als Basis für die Statistiken können die letzten 2 bis 256 Messwerte verwendet werden.

Über die serielle RS232 Schnittstelle des ATMEGA644 können nützliche Informationen zur Fehlersuche ausgegeben werden. Dazu muss in der Firmware das „DEBUG“ Flag gesetzt und diese neu übersetzt werden.

Der USB-Teil der Firmware nutzt V-USB, einen reinen Firmware USB Treiber von Objective Development Software GmbH.

Die Software für den integrierten Mikrocontroller ATMEGA644 ist für die Übersetzung mit avr-gcc in C geschrieben. Sie wurde mit „AVR Studio 4.18“, SP3, entwickelt, einer Entwicklungsumgebung für 8 Bit AVR-Controller von Atmel. Der Quellcode steht unter der „GNU General Public License (GPL)“ frei zur Verfügung und kann hier heruntergeladen werden.

Teil 2: Frontend

Das Frontend für die Wägezelle besteht aus einem 24 Bit A/D-Wandler AD7797 von Analog Devices mit integriertem programmierbarem Verstärker mit einer Verstärkung von 128. Dadurch kann der Wandler direkt und ohne zusätzlichen Verstärker mit einer Wägezelle verbunden werden. Die Referenzspannung wird mit einem ADR441 erzeugt, einer „ultra low noise“ Spannungsreferenz ebenfalls von Analog Devices.

Sowohl Offset als auch Verstärkung des Frontends können kalibriert werden. Die Kalibrierungsparameter werden im EEPROM des Controllers gespeichert und beim Einschalten automatisch geladen.

Nahansicht der Schaltung, das RS232 Debug-Interface links oben, der A/D-Wandler rechts unten

Teil 3: USB Host Software mit GUI

Ich habe eine Software als Beispiel bereitgestellt, welche die USB HID Programmierung sowie alle Funktionen der Schaltung demonstriert. Sie kann für Linux, Windows und eventuell für MacOS übersetzt werden. Die Software ist in C++ geschrieben und mit „Qt Creator“ entwickelt, einer Cross-Plattform Qt IDE von Qt Software und Nokia Corporation. Der Quellcode ist hier veröffentlicht unter der „GNU General Public License“ (GPL).

Bereits kompilierte Programmversionen können hier heruntergeladen werden für linux/x86_64 und win32.

Screenshot Messen
Kalibrierungsfunktionen
Statistiken

Projektbesonderheiten

  • 24 Bit A/D-Wandler, 21 Bit effektive Auflösung
  • integrierte Statistikfunktionen
  • Kalibrierungs- und Startparameter im EEPROM gespeichert
  • USB HID Device – kein Treiber im Betriebssystem notwendig
  • optionale Debug-Ausgabe
  • Grafische Bedienoberfläche für verschiedene Plattformen
  • eindeutige USB-ID: vendor: 0x16c0, product: 0x05df, Manufacturer: „runlevel3.de“, Product: „USB-A/D-Interface“

Das Schaltbild ist hier zum Download verfügbar.

USB-AD-Converter_schematics.pdf