Impressum | Datenschutz | Shop | DIY | TT @ Twitter | TT-Cabs
Anzeigen der neuesten Beiträge

Röhrenmodellierung

  • 89 Antworten
  • 40491 Aufrufe

0 Mitglieder und 1 Gast betrachten dieses Thema.

*

Offline Stone(d)

  • Full Member
  • ***
  • 80
Re: Röhrenmodellierung
« Antwort #15 am: 22.06.2009 23:26 »
Danke für den Linktipp Gates.

@ordi:

Sry, ich poste das morgen. Hab noch den ganzen Abend an der unteren nichtlinearität gemodellt, aber nicht wirklich was zufriedenstellendes erreicht.

Die Suche nach einer einfachen, gut parametrisierbaren Funktion mit nem schnönen Anstieg geht weiter. Falls da jemand ne Idee hat, immer raus damit. Bin um jeden Tip dankbar.
Immoment läuft das so: Ich habe eine Gleichung aus dem Buch für den Anodenstrom die zwar von den Werten her passt, aber vollkommen linear ist. Ab einer gewissen Spannung addiere ich den Wert einer gewissen Funktion, die damit dann den schönen Schwung erzeugt. Eine Gleichung 5. Grades würde zum Ziel führen, aber die parametrierung ist hier recht kompliziert und würde wohl in eine Kurvendiskusion ausarten. Das würde ich gerne vermeiden. Meine derzeitige Funktion ia,addieren= Koeff * ( e^(0.5 * (x-Ug,nichtlin)) -1) erzeugt einfach nicht den schönen knick, da es nur eine e-funktion ist.
Naja, die Suche geht weiter....vielleicht liest das ja jemand der mir ne gute Funktion sagen kan.

so long...
Lukas
« Letzte Änderung: 23.06.2009 09:00 von Stone(d) »

*

Offline röhrenlehrling-ordi

  • YaBB God
  • *****
  • 860
  • I hope, I will become a master!
Re: Röhrenmodellierung
« Antwort #16 am: 23.06.2009 07:34 »
Hey kein Problem! Ich kann durchaus noch einen Tag warten, aber wenn du die Lösung mit der Funktion 5ten Grades schon hast, jaja auch wenn sie schwierig sei, dann probiers dohc mal aus, vielleicht mit vereinfachten Parametern, nur um zu sehen, ob das Ergebnis so hinkommt. Auf jedenfall hab ich noch nie genau gesehen, wie so eine Funktion ausschaut, deswegen werd ich auf die Schnelle mal eine zeichnen! Dann noch viel Spaß beim "Basteln"!

mfg ordi
http://ordoalephysik.wordpress.com/

Geologische Fragen an mich, elektrotechnische an euch!

*

Offline Stone(d)

  • Full Member
  • ***
  • 80
Re: Röhrenmodellierung
« Antwort #17 am: 23.06.2009 09:26 »
Update:

Habe mir gerade noch etwas gedanken gemacht. Es könnte gut sein das man mit einer Funktion 4.Grades schon hinkommt. Dazu würde ich mir zu den zwei bekannten Punkten (anfang der nichtlinearität und Schnittpunkt mit der Ug-Achse) noch zwei Stützpunkte generieren. Die würde ich in etwa so bestimmen: Bei 80% Ib(ug0mA)= |ip(ug0mA)| haben wir z.B. 60% ug0mA. Mit einem 2ten Punkt dieser Art, etwas mehr auf den Beginn der nichtlinearität hin, hätte man dann 4 Punkte und könnte y(x) = a1 * x^4 + a2 *X^3 + a3 * x^2 + a4 *X lösen. Werde heute Abend mal testen, ob das hinkommt.

*

Offline torus

  • YaBB God
  • *****
  • 401
Re: Röhrenmodellierung
« Antwort #18 am: 23.06.2009 22:39 »
Weiss auch nicht, wie das mit 1 oder 2 DSPs gehen soll. Wenn ich dagegen GuitarRig 3 oder Overloud hernehme, kommt man da doch in ganz andere dimensionen.

Moin.

Ich hab die letzten zwei Jahre beruflich Code für einen TI C64x+ DSP geschrieben. Glaub mir - das geht mit einem DSP.

Es ist eine furchtbare Arbeit Code für so einen DSP zu optimieren, aber wenn man alle Register zieht, dann kann man mit dem DSP in seiner Parade-Disziplin (Signalbearbeitung) einem Pentium4 locker das Wasser reichen.

Zu Deinem Polynom: Checke mal vorher ab, ob Du damit auch alle Deine Oberwellen bekommst. Wenn ich mich recht erinnere, dann bekommst Du mit einem Polynom vierter Ordnung auch nur vier Oberwellen rein. Besser ist es vermutlich, wenn Du die Funktion zumindest zum Teil durch eine transzendentale Funktion (sin, log, exp) approximierst und das ganze dann in eine Tabelle packst.

Aus der kannst Du dann schön Kubisch interpolierend lesen.

Gruß und gutes Gelingen.. Ich bin an einem ähnlichen Projekt am Arbeiten, mach mir die Arbeit aber viel einfacher, weil ich kein Röhrensound modellieren möchte, sondern lediglich einen guten Distortion-Sound.


*

Offline Stone(d)

  • Full Member
  • ***
  • 80
Re: Röhrenmodellierung
« Antwort #19 am: 23.06.2009 22:59 »
Moin.

Ich hab die letzten zwei Jahre beruflich Code für einen TI C64x+ DSP geschrieben. Glaub mir - das geht mit einem DSP.


Hehe, das ja mal gut ;-) , den hat ich auch im Auge. Die 2400MFLOPS sprechen ja für sich.



Zu Deinem Polynom: Checke mal vorher ab, ob Du damit auch alle Deine Oberwellen bekommst. Wenn ich mich recht erinnere, dann bekommst Du mit einem Polynom vierter Ordnung auch nur vier Oberwellen rein. Besser ist es vermutlich, wenn Du die Funktion zumindest zum Teil durch eine transzendentale Funktion (sin, log, exp) approximierst und das ganze dann in eine Tabelle packst.


Danke für den Tipp. Das mit den Oberwellen stimmt natürlich, daran hatte ich garnicht gedacht. Ich werde mal versuchen, mit einer anderen Funktion hinzukommen. Zum Glück hab ich auch noch Maple, das macht die Arbeit mit den Funktionen recht einfach da man da gut visualisieren kann. Die Idee mit der Tabelle ist zwar auch gut, aber ich würde es gerne mit einer richtigen Funktion lösen. In Sachen parametrisierung ist das wesentlich besser, da ich ja "jede beliebige Röhre" simulieren können möchen.

Um was geht es denn genau in deinen Projekt, wenn man Fragen darf?  ;D   Vielleicht können wir ja beide etwas voneinander abschauen  ;)

So long..
Lukas

*

Offline torus

  • YaBB God
  • *****
  • 401
Re: Röhrenmodellierung
« Antwort #20 am: 24.06.2009 02:30 »
Hehe, das ja mal gut ;-) , den hat ich auch im Auge. Die 2400MFLOPS sprechen ja für sich.

Leider keine Flops, sondern nur MIPS, da der C64x+ kein Floating-Point kann. Dafür sind es aber auch ein paar mehr..

Wenn Du billig an ein Board rankommen möchtest empfehle ich Dir das hier: http://beagleboard.org/

3440 Drystone-Mips auf dem DSP und noch einmal ca. 1200 Mips auf einem ARM-Cortex A8 (der dann aber auch mit Vektor Floating Point)
 
Zitat
Um was geht es denn genau in deinen Projekt, wenn man Fragen darf?  ;D   Vielleicht können wir ja beide etwas voneinander abschauen  ;)

Ich versuche mal das Gain-Stacking und Voicing der Zerre, wie wir sie in den Röhren-Amps haben auf Echtzeit-Klangsynthese anzuwenden (als Effekt). Dort wird nämlich meist das Signal nur durch einen Atan2 zum Anzerren gejagt. Das dort viel mehr geht hab ich germerkt, als ich bei meinem Amp das Voicing an meinen Geschmack angepasst habe.


*

Offline Stone(d)

  • Full Member
  • ***
  • 80
Re: Röhrenmodellierung
« Antwort #21 am: 24.06.2009 09:15 »
Leider keine Flops, sondern nur MIPS, da der C64x+ kein Floating-Point kann. Dafür sind es aber auch ein paar mehr..


Ups, da hab ich mich wohl verlesen. Ich meinte den C674x. So ein Board wäre was feines. Gibts da vielleicht noch andere die schon einen C674x draufhaben? ICh muss sowieso mal schauen, wie aufwendig eine Röhre dann von der Berechnung her ist. Wenn da noch gut luft ist, werde ich das Tone-Stack gleich mit reinpacken. So kann man sich dann aussuchen, ob man es anschaltet oder nicht und so bestimmen an welcher Stelle es sitzt.
Generelle Frage noch: Brauch ich für so einen DSP (C674x) eigentlich noch einen A/D-Wandler, oder hat der schon einen guten Eingebaut?

Ich versuche mal das Gain-Stacking und Voicing der Zerre, wie wir sie in den Röhren-Amps haben auf Echtzeit-Klangsynthese anzuwenden (als Effekt). Dort wird nämlich meist das Signal nur durch einen Atan2 zum Anzerren gejagt. Das dort viel mehr geht hab ich germerkt, als ich bei meinem Amp das Voicing an meinen Geschmack angepasst habe.


Ui, auch interessant. Ich hoffe mal das das bei mir alles von selbst kommt, da ja einfach das Ausgangssignal der Röhre erzeugt wird. Kennst du vielleicht eine gute Seite, wo man sich die Grundlagen zu Effekten (Reverb und Delay im besonderen) anschauen kann?

Zu meiner Funktion: Habe gestern abend mal etwas mit einer E-Funktion rumgespielt und gemerkt das die es wahrscheinlich sein dürfte. Ich muss nur die Steigung und den fu-Wert am Beginn der Nichtlinearität gleichsetzen und noch den Punkt auswählen wo die Funktion durch die 0mA läuft. Damit könnte ich dann wieder die Parameter bestimmen und fertig ist der Lack  ;D

Update: Hab eine Funktion gefunden die zu 95% hinkommt. Ist ein tangens-hyperbolicus mit folgender Parametrisierung:y(x)= p1*(tanh(p2*x) +p3). Jetzt muss ich "nur noch" die Konstanten allg. Bestimmen und die Sache passt.
« Letzte Änderung: 24.06.2009 12:57 von Stone(d) »

*

Offline torus

  • YaBB God
  • *****
  • 401
Re: Röhrenmodellierung
« Antwort #22 am: 24.06.2009 16:12 »
Ups, da hab ich mich wohl verlesen. Ich meinte den C674x. So ein Board wäre was feines.

Ich kann mal schauen, ob es da was gibt..

Zitat
Generelle Frage noch: Brauch ich für so einen DSP (C674x) eigentlich noch einen A/D-Wandler, oder hat der schon einen guten Eingebaut?

Ein A/D Wandler ist da nicht drauf. Du kannst aber relativ einfach einen Audio-Datenstrom auf einen Pin packen, und da einen A/D Wandler dranhängen.

In der Praxis musst Du das aber garnicht. Mit Hobby-Mitteln ist es unmöglich ein Platinen-Layout für einen DSP für einen C674x zu machen. Der wird - wenn Du glück hast - laufen, aber sicher nicht stabil. Selbst TI braucht drei Anläufe dafür, und die haben die Experten im Haus.

Zitat
Ui, auch interessant. Ich hoffe mal das das bei mir alles von selbst kommt, da ja einfach das Ausgangssignal der Röhre erzeugt wird. Kennst du vielleicht eine gute Seite, wo man sich die Grundlagen zu Effekten (Reverb und Delay im besonderen) anschauen kann?

Googel mal nach MUSICDSP. Da wird Dir geholfen.

Zitat
Update: Hab eine Funktion gefunden die zu 95% hinkommt. Ist ein tangens-hyperbolicus mit folgender Parametrisierung:y(x)= p1*(tanh(p2*x) +p3). Jetzt muss ich "nur noch" die Konstanten allg. Bestimmen und die Sache passt.

Herzlichen Glückwunsch. Damit hast Du Transistor-Zerre. ;D Tanh ist genau das, was ein Differentialverstärker in Transistor-Technik rauskommt, wenn man ihn übersteuert. Schau Dir dazu mal meinen (gruseligen) VCA in Transitor-Technik an: http://torus.untergrund.net/vca_improved_circuit.gif

Das hier ist die Transfer-Kurve meiner Messungen (nicht gefaked) und die Approximation über tanh: http://torus.untergrund.net/vca_improved_trace.gif

Das Du bei tanh gelandet bist ist aber nicht weiter schlimm, denn schlecht klingt das nicht. Ich würd erstmal weitermachen.

Gruß,
  Nils

*

Offline Stone(d)

  • Full Member
  • ***
  • 80
Re: Röhrenmodellierung
« Antwort #23 am: 24.06.2009 19:17 »
Ein A/D Wandler ist da nicht drauf. Du kannst aber relativ einfach einen Audio-Datenstrom auf einen Pin packen, und da einen A/D Wandler dranhängen.

In der Praxis musst Du das aber garnicht. Mit Hobby-Mitteln ist es unmöglich ein Platinen-Layout für einen DSP für einen C674x zu machen. Der wird - wenn Du glück hast - laufen, aber sicher nicht stabil. Selbst TI braucht drei Anläufe dafür, und die haben die Experten im Haus.


Hm, das hab ich mir fast gedacht. Aber solange das Modell gut läuft, kann den Hardware-Part ja jemand anders übernehmen ^^

Herzlichen Glückwunsch. Damit hast Du Transistor-Zerre. ;D Tanh ist genau das, was ein Differentialverstärker in Transistor-Technik rauskommt, wenn man ihn übersteuert. Schau Dir dazu mal meinen (gruseligen) VCA in Transitor-Technik an: http://torus.untergrund.net/vca_improved_circuit.gif

Das hier ist die Transfer-Kurve meiner Messungen (nicht gefaked) und die Approximation über tanh: http://torus.untergrund.net/vca_improved_trace.gif

Das Du bei tanh gelandet bist ist aber nicht weiter schlimm, denn schlecht klingt das nicht. Ich würd erstmal weitermachen.

Gruß,
  Nils

Hm, ich glaub da hast haben wir uns missverstanden ^^ Ich hab mal ein Bild reingestellt, das das ganze illustrieren soll. Je nach momentanem Ug wert am Gitter wird dann eine der 4 Funktionen aktiv.

*

Offline Stone(d)

  • Full Member
  • ***
  • 80
Re: Röhrenmodellierung
« Antwort #24 am: 25.06.2009 13:09 »
So, kurz und knapp: WIN würd ich mal sagen.

Edit: Hab den Quellcode angehängt mit Graph, den Rest hab ich rausgenommen. Das Modell funktioniert jetzt. Nächste Etappe sind die Filter.
« Letzte Änderung: 25.06.2009 21:24 von Stone(d) »

*

Offline Stone(d)

  • Full Member
  • ***
  • 80
Re: Röhrenmodellierung
« Antwort #25 am: 26.06.2009 09:57 »
So, bevor es an die Filter geht, werde ich das Ganze erstmal in SimuLink portieren und mit zeitdiskreten Signalen testen. Das macht die Filter dann "fast" zum Kinderspiel mit der Filter Design Toolbox. Dazu nehme ich eine 30-60s Wav-File mit 192kHz Samplingrate und 24bit-Auflösung über mein Audio-Interface auf, wie auch später im DSP. Zum Aufnehmen werde ich GuitarRig3 hernehmen, mit dem ersten Recorder und in einem leeren Profil. Als Testsequenz dachte ich mir folgendes:

- 1x Jede Saite leer anschlagen, nicht abdgeämpft

- Zwei offene Accorde in verschiedenen Lagen (um den 1ten und um den 5ten Bund)

- Harmonics auf dem 7ten oder 9ten Bund über alle Saiten

- Kurzers Riff (4-5 Cords  teilweise Abgedämpft)

- Kurze "Solo-Sequenz" über dem 12ten Bund, mit Bending und Glissando, vielleicht auch mit Tremolo.

Damit dürfte ich fast jeden möglichen Fall in der Wav haben. Da ich eine SSH Strat habe, versuche ich die Sequenz möglichst identisch (is ja fast nicht möglich) auf dem Singlecoil (Halsposition) und auf dem Humbucker (Stegposition) aufzunehmen. Damit hab ich dann auch gleich verschiedene Signalpegel. Vor der Aufnahme wird die Gitarre möglichst genau im Standard-Tuning gestimmt, neue Saiten hab ich schon drauf.

Ich hätte da auch noch was...könnte jemand, der eine LP o.Ä. hat mit relativ viel Output, und einem guten Audio-Interface mal ein richtig schnelles Solo (>=180BPS, wenn möglich in guter metal Manier ;D) aufnehmen? Sowas hätte ich echt gerne zum Testen!

Hab ich was wichtiges vergessen??

Grüsse,
Stone
« Letzte Änderung: 26.06.2009 10:26 von Stone(d) »

*

Offline Chryz

  • YaBB God
  • *****
  • 1.394
Re: Röhrenmodellierung
« Antwort #26 am: 26.06.2009 13:23 »
Ich hätte da auch noch was...könnte jemand, der eine LP o.Ä. hat mit relativ viel Output, und einem guten Audio-Interface mal ein richtig schnelles Solo (>=180BPS, wenn möglich in guter metal Manier ;D) aufnehmen? Sowas hätte ich echt gerne zum Testen!

Pierrooooooooooooooooooooooooo!!!!!  ;D

Hau den doch mal an. Das ist hier wohl unser Experte für Überschall Soli.
mfg

Chryz

*

Offline Stone(d)

  • Full Member
  • ***
  • 80
Re: Röhrenmodellierung
« Antwort #27 am: 26.06.2009 14:37 »
Pierrooooooooooooooooooooooooo!!!!!  ;D

Hau den doch mal an. Das ist hier wohl unser Experte für Überschall Soli.
mfg

Chryz

Oki, werd ich   :devil:

MIR IST EIN GROBER FEHLER UNTERLAUFEN!!!!!!!! ICH HABE ETWAS UNGLAUBLICH WICHTIGES VERGESSEN!!!!!!!
Ich berechne zwar wunderbar den Anodenstrom und alles, aber was ist mit der Kathode !?!?!? Die habe ich vollkommen vergessen!!!!!!! Was passiert nun, wenn man einen Kathodenfolger einbauen will -> genau, nichts, weil der Trottel der das Modell geschrieben hat noch nie einen Amp gebaut hat und keinen Plan hat.... >:(

Da ich in keinem der Bücher etwas zur Berechnung des Stromes und der Spannung bei einem Kathodenfolger gefunden habe, bitte ich euch um HILFE !  :danke:

Was mir derzeit zu Kathodenfolgern bekannt ist (nicht wirklich viel  :'( ):
 - Es tritt keine Phasenverschiebung der Ausgangsspannung um 180° auf wie beim Anodenfolger.
 - Lo- und Highfreq. -Verhalten hängt von der Beschaltung der Kathode ab (dementsprechend ändern sich die Filter)
 - Kathodenfolger werden hauptsächlich dazu benutzt, Impendanzen zu entkoppeln da die Ausgangsimpendanz um einiges Geringer ist als bei einem Anodenfolger z.B. in Effekt-Loops, Reverbs und vor Tonestacks
 

Was nun gesucht ist: Gibt es eine direkte Beziehung zwischen der Anode und der Kathode die es ermöglicht den Kathoden-Stom und -Spannung zu berechnen  ??? Ist die Berechnung gar gleich, und es wird anstatt dem Anodenwiderstand in die Formel nur der Kathodenwiderstand  RK,tot  = (ra)/(mu+1) || (Rk+Rl) eingesetzt?

Ich baue auf eur fundiertes Wissen und erfahrung...  :danke:



Grüsse,
Lukas
« Letzte Änderung: 26.06.2009 15:20 von Stone(d) »

*

Offline SvR

  • YaBB God
  • *****
  • 2.384
Re: Röhrenmodellierung
« Antwort #28 am: 26.06.2009 15:30 »
Salü,
in Rainer zur Linde´s Buch "Audio- und Gitarrenschaltungen mit Röhren" findest du auf Seite 78-80 etwas über Kathodenfolger (ich weiß nicht in wie weit die Formeln für dich ausreichend sind), eben so im Anhang des Buches auf Seite 271.
Es gibt übrigens zwei Arten von Kathodenfolgern. Einmal nur mit Rk (Bsp: JCM800) und einmal mit einem "geteileten" Widerstand an der Kathode (siehe Schaltbild).


mfg sven
Rettet den Wald, esst mehr Biber!
PIC32-Tutorial

*

Offline Stone(d)

  • Full Member
  • ***
  • 80
Re: Röhrenmodellierung
« Antwort #29 am: 26.06.2009 16:05 »
Salut,

Salü,
in Rainer zur Linde´s Buch "Audio- und Gitarrenschaltungen mit Röhren" findest du auf Seite 78-80 etwas über Kathodenfolger (ich weiß nicht in wie weit die Formeln für dich ausreichend sind), eben so im Anhang des Buches auf Seite 271.
Es gibt übrigens zwei Arten von Kathodenfolgern. Einmal nur mit Rk (Bsp: JCM800) und einmal mit einem "geteileten" Widerstand an der Kathode (siehe Schaltbild).

mfg sven

Jup, hab mich etwas eingelesen und hab auch die 2 Arten gefunden.  Außerdem hab ich noch was zum Biasing gesehen, da war noch ein Widerstand vom Grid zur Anode. Ich seh schon, da muss ich mir erstmal einige Ersatzschaltbilder zeichnen...Jetzt muss ich dich aber noch um einen mittelschweren Gefallen bitten...da ich das Buch nicht habe, könntest du mir die Formeln vielleicht abschreiben? (Scannen dürfte nicht gehen, wegen Urheberrecht, es sei denn du schickst mir ne Mail damit es unter uns bleibt  ;) )

Nachdem mein Modell für den Anodenfolger echt gut geworden ist (ok, es fehlen noch die filter, aber der rest is doch fein) möchte ich natürlich beim Kathodenfolger die selben Maßstäbe anlegen.