• WARNING: Tube/Valve amplifiers use potentially LETHAL HIGH VOLTAGES.
    Building, troubleshooting and testing of these amplifiers should only be
    performed by someone who is thoroughly familiar with
    the safety precautions around high voltages.

Vacuum tube modeling software - beta testers wanted

Status
This old topic is closed. If you want to reopen this topic, contact a moderator using the "Report Post" button.
Hi,
I am trying to build a model for an 812A Triode.
I have followed all the instructions I can find to build the model, however
once the devcie model is drawn, some of the curces are dropped, and what remains is an incredably bad fit. In addition all the Loren modle did not compute #INF mA

Here is the curve I am trying to fit to as well as my captured data set.

I would be greatfull if somone could give me some pointers?

I have renamed the .crv file with a .txt extension to allow it to be attached

Regards

Roger

Roger, CurveCaptor does not work (model) in the positive grid region. That's why some of the curves were dropped. :)
 
A closely related topic: I want to create curves based on an actually physical tube. I can think of some expensive and convoluted ways to measure the tube. Has anyone seen a simple method.
Look at this : Tube Curves Tracer

It can be what you look for ... The software is free but I don't know anything about it. I download everything yesterday, also the complete source codes in Visual Basic ... It work with the sound card.

The circuit look easy to build, there is a little 10W chipamp use to drive the grid, it can be any other amp ... I just hope it can work on 60Hz because the guy who design it live in France and they run on 50Hz ...

To see if the software work well, you don't have to build all the circuit, just a test setup for one tube at a fixed voltage, I will probably try it this winter when the outside temperature will be - 40°C, tonight, it was already 0°C here, I have to cover all my tomato and chili pepper plants with a big plastic sheet ...

Cheers,

Alain. :trapper:
 
Last edited:
The curve tracer idea of Y. Monmagnon is fantastic because what is need in a tube curves tracer is a sweep plate voltage variation to read the current at different grid bias voltages and he simply use the positive alternance of the AC 50 or 60Hz line to do that ...

Look at is tube supply :

An externally hosted image should be here but it was not working when we last tested it.


The only missing part of the three schematics of the project is the screen grid supply, but that it very easy to design one ...

There is some voltage dropping resistances and transformer taps selectors to adjust the peak plate voltage, the anode voltage is read by the left input channel of the sound card and the current by the right input channel exactly at the same time.

So even if there is line variation or transformer voltage drop with the current, 50Hz or 60Hz line, amplitude distortion in the wave shape, the current VS the voltage is always exact ... I don't examine is source code yet but I think is program read the amplitude data directly from the sound card, but it can also be done by opening a recorded .WAV file to read the "stereo" data from ...

Is program take care of the bias voltages on the grid with a TDA1910 10W chipamp but for a simple DIY circuit using the same principle, it can be adjust by hand using a voltmeter, same thing for the plate and screen grid voltage !

Just a small Basic or C program with a graphic output window can do the job. There is no need for a complex printer output or differents image files type writing, just a window image copy with "Alt + PrintScreen" and paste into any image drawing software, like "MS Paint" can do the job. A curve output file is also very easy to implement in a program.

Cheers,

Alain. :D
 
Last edited:
I made a very accurate russian 6S19P power triode yesterday with the Andrei Frolov CurveCaptor program ... It is a very good tube available on eBay for only 2,50$ + shipping ...

I do it with only one marker at each end of the plate volts and currents axis and I put only one marker on every 10ma line, except below 10ma where I put two but I don't think it was very useful ...

I get the datasheet from : http://www.radiolamp.su/pdf/113/6/6S19P.pdf

Here's the original curves :

An externally hosted image should be here but it was not working when we last tested it.


Here's now the Koren 8 parameters Spice model :
* 6S19P Spice 3F4 model - Mean fit error 3,62003ma - Koren 8 parameters
* By Alain Poitras sept 2011 with CurveCaptor from Andrei Frolov

.subckt APK8P6S19P P G K

Cgp G P 8p
Ci G K 6.5p
Co P K 2.5p
RCP P K 1G ; TO AVOID FLOATING NODES IN MU-FOLLOWER

Bp P K I=(0.2754453821m)*uramp(V(P,K)*ln(1.0+(-0.06735064062)+exp((0.244090488)+(0.244090488)*((21.75937268)+(-6.104396368m)*V(G,K))*V(G,K)/sqrt((21.47517074)^2+(V(P,K)-(21.76460623))^2)))/(0.244090488))^(1.289056054)
.ends APK8P6S19P
This is the curves graphic I made from this model with my SIMetrix Spice simulator :

An externally hosted image should be here but it was not working when we last tested it.


Here's the list of all my checkpoints to compare both graphics :

An externally hosted image should be here but it was not working when we last tested it.


Like you can see, the voltages are about 26V over at the 0ma "cutoff" but those position are not very importants for design loadlines ...

I am very proud of this model because I try to make a ECC88 model from a Philips datasheet and it was a real disaster ... I think there was not enough bias curves, the more there is, the better it is ...

Cheers,

Alain. :trapper:
 
Andrei, thank you for the good tool!

I just tried version 0.9.1 on a linux-box with Ubuntu 12.04LTS.
Unzip all files from the distribution to a single directory and get the patch file "tubefit-gcc4.patch.txt" posted earlier in this thread.

To get it running, you have to install some tools on a command line:
$ sudo apt-get install gcc m4 tk8.5

This will install GCC 4.6, so you must apply the patch "tubefit-gcc4.patch.txt":
$ patch -b < tubefit-gcc4.patch.txt

This command alters the file tubefit.c.

Then simply compile and install with:
$ sudo make install
$ sudo cp models.m4 /usr/local/bin

Now you can run and enjoy
$ curvecaptor
:)

Torsten
 
I am using N Koren Matlab sheets
for the tubes spice models
.
but recently i found A dimitry java set of software that is good
no data entery just point to the picture
here is the link to download
Model Paint Tools: Trace Tube Parameters over Plate Curves, Interactively
the software runs trough the terminal (i am a mac user)
syntax on terminal is
.
java -jar "/location of the jar file/paint_kit.jar" "/location of the file/tube curves.jpg"
.
examle
java -jar "/Users/zoran/Desktop/Model_Paint_Tools/paint_kit.jar" "/Users/zoran/Desktop/Model_Paint_Tools/Graph/12au7.jpg"
.
on win is the same with differences in syntax for the run command window
.
Also I found some soft called Montega (google)
now I am going to read a bit this thread
cheers
.
 
Hi there. I need some help.
I finally figured out how to use Curve Captor and get a SPICE model. I copied and pasted the output model from Curve Captor into a text file. From there I inported that text file into LTSpice. Here is the contents of said text file:

* 6aw8a macro model
.subckt 6aw8a P G K
koren5(0.03503586366,6.707742819,75.61368016,4.088058766,1.154855707)
.ends 6aw8a


* 6aw8a LTSpice model
.subckt 6aw8a P G K
Bp P K I=(0.03503586366m)*uramp(V(P,K)*ln(1.0+exp((6.707742819)+(6.707742819)*(75.61368016)*V(G,K)/sqrt((4.088058766k)+(V(P,K))**2)))/(6.707742819))**(1.154855707)
.ends 6aw8a

Then, I used the Auto Generate Component feature to make a component out of the model. I then made a test circuit to use the new component in. However, when I run the simulation, I get the following error.

lvkuyk.PNG


I don't know what is wrong. I know that the problem is in this component because when I remove it from the simulation, it runs without error.
 
You only need this part for your model:
Code:
* 6aw8a LTSpice model
.subckt 6aw8a P G K
Bp P K I=(0.03503586366m)*uramp(V(P,K)*ln(1.0+exp((6.707742819)+(6.707742819)*(75.61368016)*V(G,K)/sqrt((4.088058766k)+(V(P,K))**2)))/(6.707742819))**(1.154855707)
.ends 6aw8a
You will also need to add the inter-electrode capacitances as in my model below:
Code:
* 6AW8A (triode section) LTSpice model
* Modified Koren model (8 parameters): mean fit error 0.115916mA
* Traced by Wayne Clay on 10/19/2014 using Engauge Digitizer
* and Curve Captor v0.9.1
.subckt 6AW8AT  P G K
    Bp  P K  I=
+ (0.03960037226m)*uramp(V(P,K)*ln(1.0+(-0.02810705112)+exp((5.049360412)+
+ (5.049360412)*((71.53397072)+(-1430.15241m)*V(G,K))*V(G,K)/sqrt((60.13556928)**2+
+ (V(P,K)-(11.95246653))**2)))/(5.049360412))**(1.130546864)
    Cgk G K 3.9p ; 0.7p added (3.2p)
    Cgp G P 2.9p ; 0.7p added (2.2p)
    Cpk P K 0.52p ; 0.2p added (0.32p)
    Rpk P K 1G ; to avoid floating nodes
    d3  G K dx1
.model dx1 d(is=1n rs=2k cjo=1pf N=1.5 tt=1n)
.ends 6AW8AT
 
Does it work on Mac OS 10.15.4? I run it on iMac 2015. thanks

bad screen distance ""
bad screen distance ""
while executing
"$c create line $x $y $x [expr $y+7] $x $y [expr $x+7] $y $x $y $x [expr $y-6] $x $y [expr $x-6] $y -width 1"
("default" arm line 2)
invoked from within
"switch $s {
"tick(v)" {
$c create polygon $x $y [expr $x-4] [expr $y-13] [expr $x+5] [expr $y-13] $x $y [expr $x-6] $y [expr $x+7] $y -width 1 -o..."
(procedure "draw" line 2)
invoked from within
"draw $c $x $y $s"
(procedure "mark" line 4)
invoked from within
"mark $c [lindex $l 0] [lindex $l 1] [lindex $l 2] [lindex $l 3]"
(procedure "slurp" line 5)
invoked from within
"slurp $fp $c "
(procedure "load_markers" line 1)
invoked from within
"load_markers $wt.canvas $fp"
(procedure "load_file" line 24)
invoked from within
"load_file {} .crv"
invoked from within
".n.f0.buttons.load invoke"
("uplevel" body line 1)
invoked from within
"uplevel #0 [list $w invoke]"
(procedure "tk::ButtonUp" line 23)
invoked from within
"tk::ButtonUp .n.f0.buttons.load"
(command bound to event)

couldn't execute "/Users/jerry/Downloads/curvecaptor-0.9.1/tubefit": Bad CPU type in executable
couldn't execute "/Users/jerry/Downloads/curvecaptor-0.9.1/tubefit": Bad CPU type in executable
while executing
"exec -keepnewline $backend -$type -f"$format" -d << [join $m "\n"] 2>@ stderr"
(procedure "curve_data" line 5)
invoked from within
"curve_data $c"
(procedure "capture_data" line 2)
invoked from within
"capture_data $wt.canvas $wd.text"
invoked from within
"$wt.buttons.capture invoke"
(procedure "load_file" line 26)
invoked from within
"load_file {} .crv"
invoked from within
".n.f0.buttons.load invoke"
("uplevel" body line 1)
invoked from within
"uplevel #0 [list $w invoke]"
(procedure "tk::ButtonUp" line 23)
invoked from within
"tk::ButtonUp .n.f0.buttons.load"
(command bound to event)
 
Status
This old topic is closed. If you want to reopen this topic, contact a moderator using the "Report Post" button.