Projektlabor WS 2020/21
Grundlegender Aufbau
In diesem Projekt geht es um einen Mini-Synthesizer, der Dreieck- und Rechtecksignale verschiedener Frequenzen erzeugen kann.
Abb. 1 zeigt die wesentlichen Funktionseinheiten des Synthesizers als Blockschaltbild.
Als Input verwenden wir 12 Tasten. Der Mikrocontroller registriert, welche Taste gedrückt wurde und gibt eine Gleichspannung an den VCO (Voltage Controlled Oscillator bzw. spannungsgesteuerter Oszillator) weiter. Der VCO erzeugt das Dreieck- und das Rechtecksignal und gibt diese an den Mixer weiter. Hier können die beiden Signale addiert werden. Danach kann das Signal mit verschiedenen Effekten (ADSR-E) versehen werden. Zum Schluss wird es verstärkt und an den Ausgang zum Lautsprecher geleitet.
Die Töne, die wir erzeugen möchten, sieht man mit den zugehörigen Frequenzen in Tabelle 1. Ein Unterschied von einer Oktave enspricht einer Verdopplung der Frequenz. Beim Drücken der Tasten 1 bis 12 müssen die Spannungen daher einen exponentiellen Verlauf haben. Diese Spannungen gibt der Mikrocontroller an den VCO-Eingang weiter. Die Spannungswerte wurden aus Simulationen ermittelt.
Der Mikrocontroller
Der Mikrocontroller besitzt sowohl digitale als auch analoge Eingänge. Die digitalen Eingänge kommen von den Tasten und werden an den Tiefpassfilter (LPF bzw. low pass filter) als PWM-Signal (PWM: Pulsweitenmodulation) ausgegeben. Dieser erzeugt näherungsweise eine Gleichspannung, die zum VCO geführt wird.
Die Hüllkurve (s. Abschnitt ADSR) wird auch im Mikrocontroller berechnet. Dafür werden die analogen Eingänge des Mikrocontrollers verwendet.
Der VCO
Der VCO erzeugt die Schwingungen in Form von Dreieck- und Rechtecksignalen, wobei die Frequenz des Ausgangs von der anliegenden Eingangsspannung abhängt. Sie ist proportional zur Eingangsspannung.
Der verwendete VCO ist in Abb. 2 zu sehen. Er besteht aus einem Integrierer und aus einem Schmitt-Trigger. Für die Widerstände verwenden wir R = 50 kΩ. UDD ist die Betriebsspannung der beiden Operationsverstärker (in unserem Fall 5V).
Wenn der Transistor leitet, dann wird der Kondensator aufgeladen und die Spannung am Ausgang 1 steigt an. Nach einer gewissen Zeit übersteigt sie die eine Schaltschwelle des Schmitt-Triggers, danach liegt die negative Betriebsspannung (in unserem Fall 0 V) am zweiten Ausgang an. Damit wird der Basisstrom des Bipolartransistors niedriger und er leitet nicht mehr. In diesem Fall entlädt der Eingangsstrom den Kondensator. Die Spannung am Ausgang 1 unterschreitet irgendwann die zweite Schaltschwelle des Schmitt-Triggers und der zweite Ausgang wird gleich der Betriebsspannung (hier 5 V). Dadurch fängt der Transistor an, wieder zu leiten.
Dieser Vorgang wiederholt sich periodisch. Man erhält am Ausgang 1 das Dreiecksignal und am Ausgang 2 das Rechtecksignal.
Der Mixer
Für den Mixer verwenden wir invertierende Summierverstärker (s. Abb. 3). Mit dieser Schaltung kann man die Signale addieren und durch die Wahl der Widerstände beliebig skalieren.
Die ersten beiden Summierverstärker skalieren und invertieren die Signale. Dabei ist Ue1 das Dreiecksignal und Ue1‚ das Rechtecksignal. Ue2 und Ue2‚ sind konstante Spannungen. Der zweite Summierverstärker addiert die beiden skalierten Signale und invertiert sie wieder (ohne Verstärkung, da hier alle Widerstände gleich sind).
ADSR und Analogmultiplizierer
Um die Amplitude des Signals zeitlich verändern zu können, wird eine ADSR-Schaltung verwendet. Es wird eine sogenannte Hüllkurve mit unserem Signal multipliziert. ADSR steht für die Phasen Attack, Decay, Sustain und Release. Die Phasen und eine Hüllkurve sind in Abb. 4 grafisch dargestellt. Die Hüllkurve wird im Mikrocontroller erzeugt und als PWM-Signal ausgegeben. Dieses Signal wird vor der Multiplikation noch durch einen Tiefpassfilter (LPF in Abb. 1) zur Glättung geleitet.
Wir brauchen also eine Schaltung, die zwei Signale miteinander multiplizieren kann. Man kann dafür einen Summierverstärker und den folgenden Zusammenhang verwenden:
U1 · U2 = exp(ln(U1 · U2)) = exp(ln(U1) + ln(U2)).
Der Logarithmus und die Exponentialfunktion können mit Hilfe der beiden Schaltungen aus Abb. 5 implementiert werden.
Die gesamte Schaltung für die Multiplikation ist in Abb. 6 zu sehen.
Verstärker und Lautsprecher
Das Signal muss noch verstärkt werden. Dafür wird ein Operationsverstärker (der LM 386) verwendet. Die Beschaltung sieht man in Abb. 7, zusammen mit dem Lautsprecher am Ausgang. Mit dieser Schaltung kann eine maximale Verstärkung von 20 erzielt werden. Diese reicht für unsere Zwecke aus.
Der Lautsprecher am Ausgang wandelt das elektrische Signal in ein akustisches Signal um. Wir verwenden einen Visaton FRS 5X (Abb. 8). Das ist ein 8 Ω/5 W Breitbandlautsprecher, der einen breiten Frequenzbereich abdecken kann. Der Übertragungsbereich beträgt 120 Hz bis 20 kHz.
Simulation
Vor dem richtigen Aufbau werden alle Schaltungen zuerst in LTSpice simuliert, um das Verhalten der Schaltungen näherungsweise einschätzen zu können.
Die LTSpice-Simulationen für den VCO und den Mixer sieht man in Abb. 9 und 10. Die Betriebsspannung wurde mit 3,5 V statt 5 V simuliert, weil die verwendeten Operationsverstärker in der realen Schaltung nur eine maximale Spannung von 3,5 V ausgeben können. Damit erhält man realistischere Ergebnisse.
Die Eingangswiderstände der invertierenden Summierverstärker werden so gewählt, dass am Ausgang eine um 0 V zentrierter Spannungsverlauf mit einer maximalen Amplitude von ±2 V ensteht. Die Widerstände R8 und R13 können durch Potentiometer ersetzt werden. Damit kann man einstellen, mit welchem Anteil das jeweilige Singal zum Gesamtsignal addiert wird.
Abb. 11 und 12 enthalten die Simulationen für die ADSR-Schaltung. Der erste Teil der Schaltung erzeugt die Hüllkurve, der zweite Teil multipliziert diese Hüllkurve mit dem Eingangssignal.
Die Simulation der Verstärkerschaltung mit angepassten Werten sieht man in Abb. 13. Der zusätzliche Kondensator C3 wird zur Unterdrückung von Störsignalen verwendet. Ein solcher Kondensator wird im realen Aufbau auch bei jedem anderen Operationsverstärker verwendet.
Steckbrettaufbau
Nach der Simulation werden die Schaltungen zuerst auf dem Steckbrett aufgebaut. Sind sie funktionsfähig, dann kann man mit dem Platinenlayout anfangen.
Der VCO und der Mixer im Steckbrettaufbau sind in Abb. 14 zu sehen. An der mit 1 gekennzeichneten Stelle kann man das Dreiecksignal, bei 2 das Rechtecksignal und bei 3 den Mixer-Ausgang abgreifen.
Darunter ist der Mikrocontroller sowie der Steckbrett mit zunächst nur 8 Tasten und mit dem RC-Tiefpass zu sehen.
In Abb. 16 ist der Steckbrettaufbau des Analogmultiplizierers und in Abb. 17 der des Verstärkers zu sehen.
Oszilloskopbilder der gemessenen Signale aus dem Stekbrettaufbau werden im Folgenden aufgelistet (Abb. 18: PWM-Signal und tiefpassgefiltertes Signal, Abb. 19, 20, 21: VCO und Mixer, Abb. 22: Multiplizierer-Ausgang, Abb. 23: Ein- und Ausgangssignale des Verstärkers).
Platinenlayout
Das Platinenlayout wurde mit dem Simulationsprogramm EAGLE angefertigt. Dieser Teil des Projektes gestaltete sich als sehr zeitaufwendig, da man auf viele Sachen achten muss. Wir mussten das Layout mehrmals wieder von vorne anfangen.
Die Platinen haben die Maße 125 mm x 40 mm. Diese Größe hat am Anfang Schwierigkeiten gemacht, bei den späteren Versuchen mussten wir die Bauteile auf der Platine präziser und platzsparender auslegen.
Die fertigen Platinen sowie die Platinen im Gehäuse werden im Folgenden gezeigt.