Das Problem besteht darin, Regler für Gain / Volume / Pan / Balance / Crossfade / Mix mit einem glatten "Gesetz" oder "Taper" zu entwerfen. Die Geschwindigkeit, mit der sich die hörbare Lautstärke ändert, wenn Sie sie drehen. ( Zum Beispiel in Das geheime Leben von Töpfen und das Ändern des Gesetzes eines Topfes beschrieben .)
Es ist einfach, Steuerelemente zu erstellen, bei denen sich die Verstärkung in der Mitte nur sehr wenig ändert und dann zum Beispiel nach oben springt, aber das ist nicht gut.
Ich möchte also die Schaltung "zeichnen" und dann die Verstärkung / Dämpfung als Funktion der Topfposition entweder mit logarithmischen oder linearen Töpfen zeichnen und in der Lage sein, Komponentenwerte zu variieren und die Auswirkung auf die Verstärkungsfunktion schnell zu sehen um das Finden der optimalen Layout- / Widerstandswerte zu beschleunigen.
Derzeit mache ich eine der folgenden Aktionen:
- Simulieren Sie die Schaltung in TINA-TI . Das ist scheiße, weil:
- Die Töpfe sind nur linear verjüngt
- Es gibt keine Möglichkeit, etwas als Funktion der Topfposition zu zeichnen. Sie können den Pot als Kontrollobjekt festlegen und die Position in Schritten von 0% bis 100% variieren, aber ich kenne keine Möglichkeit, die Verstärkung zu zeichnen. Ich weiß nur, dass Sie den Frequenzgang an jeder Position darstellen, die Verstärkungen aus dem Frequenzgangdiagramm ablesen und in eine Tabelle einfügen können, was sehr mühsam ist.
- Berechnen Sie die Kurve in einem Mathematikprogramm wie wxMaxima oder Python und zeichnen Sie sie. Das ist scheiße, weil:
- Es erfordert die manuelle Eingabe der Verstärkungsgleichung, was für bestimmte Schaltungen mühsam und fehleranfällig sein kann. Anhand einer komplexen Gleichung kann man nicht erkennen, ob sie richtig ist oder nicht, und es ist schwierig, sie durch Hinzufügen von Widerständen parallel zu vorhandenen Schaltkreisen zu modifizieren.
- Auch hier ist das Plotten für einen Log Taper Pot schwierig. Sie müssten die Verjüngung als separate Funktion eingeben, die in die Verstärkungsfunktion eingespeist wird, und sie würde immer noch nicht genau mit der realen Welt übereinstimmen.
Irgendwelche anderen Ideen?
Zur Veranschaulichung hier ein Diagramm, das ich erstellt habe, indem ich einen linearen Topf, logarithmische Verjüngungstöpfe und einen linearen Topf mit einem "Pulldown-Widerstand" verglichen habe, um eine logarithmische Verjüngung zu approximieren. Ich möchte etwas, das die gelbe Kurve für verschiedene Werte des Pulldown-Widerstands darstellt, damit er sich so nah wie möglich an den anderen Kurven verhält, ohne manuell eine Gleichung eingeben zu müssen. Natürlich sind meine realen Anwendungen komplexer, aber dies ist ein Beispiel dafür, was ich tun möchte.
(Von Electronics Exchange kopiert )
quelle
Antworten:
Es hört sich so an, als ob Sie mit dem in Ihrem Schaltungssimulator verwendeten integrierten Topfmodell die Topfposition nur einmal im Schaltplan einstellen können und die Position dann während der Simulation konstant bleibt.
Das Potentiometermodell bei eCircuit zeigt, wie ein Modell erstellt wird, das sich wie ein linearer Topf verhält , der sich während der Simulation dreht. Genau das brauchen Sie, oder?
Dieses Modell verfügt über eine Gewürzdatei, die eine stückweise lineare Quelle (PWL) verwendet, die die Position des Topfes gegenüber der Zeit steuert.
Sie können entweder die "Spannung" von VPOS als X-Koordinate in Ihrem Diagramm verwenden, die die Topfposition darstellt. oder vielleicht ist es einfacher, X als Zeit zu zeichnen und eine PWL auszuwählen, die den Pot linear proportional zur Zeit dreht.
Anschließend führen Sie die Simulation aus und zeichnen die Ausgangsspannung gegen die Zeit auf. Führen Sie möglicherweise eine Rechteckwelle mit einer bestimmten Audiofrequenz ein und zeichnen Sie die Ausgangsspannung gegen die Zeit auf. Wenn Sie dann mehrere Sekunden der Simulation anzeigen, sehen Sie eine feste Masse (die Schwingungen sind zu schnell, um mehr als 1 Zyklus pro Pixelbreite zu sehen), die die Hüllkurve der Ausgangswellenform anzeigt, und Sie können entweder die obere oder die obere verwenden unten als Schätzung des Gewinns.
Um einen nichtlinearen Pot zu simulieren, können Sie (a) die PWL-Linie bearbeiten, um den Pot mit einer nichtlinearen Rate zu drehen, aber X als Zeit zeichnen, etwa wie folgt:
Oder Sie könnten (b) ein Modell eines nichtlinearen Topfes erstellen und die PWL diesen Topf mit etwas wie einer linearen Geschwindigkeit drehen lassen
Sowohl (a) als auch (b) ergeben die gleichen Widerstands-Zeit-Eigenschaften, richtig? Hoffentlich finden Sie eine Funktion oder ein Polynom oder eine Reihe von Punkten, die in PWL oder TABLE eingespeist werden können und die dem tatsächlichen Widerstand Ihres realen nichtlinearen Potts nahe genug kommen.
Ich gehe davon aus, dass Sie bereits über Software-Tools verfügen, mit denen Sie einen Schaltplan zeichnen und simulieren können, die auch SPICE-Modelle akzeptieren. Wenn nicht, bin ich mir ziemlich sicher, dass die Liste der Simulatoren für freie Elektronikschaltungen etwas Passendes enthält .
BEARBEITEN:
Oder auf der Chiphacker-Liste der Freeware-SPICE-Simulatoren .
Führen Sie zunächst eine transiente (Zeit-) Simulation durch, um die Verstärkung des Wechselstromsignals als Funktion der Topfposition darzustellen. Zeichnen Sie dann den Ausgang (die Spannung am Kabel zum Lautsprecher) gegen die Zeit. (Oder Sie können es gegen den "Blinker" V (20) im obigen Code zeichnen). Möglicherweise haben Sie dazu eine Pulldown-Menüoption. Die Methode der alten Schule ist so etwas wie:
quelle
Dies ist in LTSpice sehr einfach (möglicherweise kann es auch in andere Varianten von Spice übersetzt werden, ich habe es nicht versucht). Gehen Sie zu http://tech.groups.yahoo.com/group/LTspice/files/%20Tut/Potentiometer / um die Datei potentiometer_standard_test.asc abzurufen. Es werden die verschiedenen Kurven genau so dargestellt, wie Sie es wollten.
quelle
Also, was ich getan habe:
Es ist nicht so einfach wie das Zeichnen der Schaltung in einer GUI, aber es funktioniert und die Kurven sind so realistisch wie möglich.
quelle
Es hört sich so an, als ob Sie ein Servo oder einen Stepper an einen Poti anschließen und einen ADC verwenden möchten, um Ihre abhängige Variable zu messen, sei es die Reaktion des Systems, das der Poti steuert (Verstärker, Fader, Equalizer usw.) oder einfach der Widerstand von den Scheibenwischer an einem der Enden.
quelle