4 changed files with 191 additions and 0 deletions
-
69examples/optran/F5TurboV2thermal-optran.cir
-
78examples/optran/F5models.lib
-
4examples/optran/contents.txt
-
40examples/optran/script-optran.txt
@ -0,0 +1,69 @@ |
|||
.title KiCad schematic |
|||
.include "F5models.lib" |
|||
.include "script-optran.txt" |
|||
R2 in 0 47.5k |
|||
R1 Net-_Q1-Pad2_ in 1k |
|||
R5 +32 Net-_P1-Pad1_ 1k |
|||
R3 Net-_P3-Pad1_ 0 10 |
|||
R4 0 Net-_P3-Pad1_ 10 |
|||
R6 Net-_P2-Pad1_ -32 1k |
|||
R7 out Net-_P3-Pad1_ 220 |
|||
R8 out Net-_P3-Pad1_ 220 |
|||
R9 out Net-_P3-Pad1_ 220 |
|||
R10 out Net-_P3-Pad1_ 220 |
|||
R11 Net-_R11-Pad1_ Net-_P1-Pad1_ 2.2k |
|||
R13 Net-_Q3-Pad2_ Net-_P1-Pad1_ 47.5 |
|||
R15 Net-_Q5-Pad2_ Net-_P2-Pad1_ 47.5 |
|||
R12 Net-_R12-Pad1_ Net-_P2-Pad1_ 2.2k |
|||
R17 +32 Net-_D3a1-Pad1_ 1 |
|||
R21 Net-_D1a1-Pad2_ -32 1 |
|||
R18 +32 Net-_D3a1-Pad1_ 1 |
|||
R22 Net-_D1a1-Pad2_ -32 1 |
|||
R16 Net-_Q6-Pad2_ Net-_P2-Pad1_ 47.5 |
|||
R14 Net-_Q4-Pad2_ Net-_P1-Pad1_ 47.5 |
|||
R19 +32 Net-_D4a1-Pad1_ 1 |
|||
R23 Net-_D2a1-Pad2_ -32 1 |
|||
R20 +32 Net-_D4a1-Pad1_ 1 |
|||
R24 Net-_D2a1-Pad2_ -32 1 |
|||
Rl1 out 0 4 |
|||
D3a1 +32 Net-_D3a1-Pad1_ DMOD |
|||
D1a1 Net-_D1a1-Pad2_ -32 DMOD |
|||
D3b1 +32 Net-_D3a1-Pad1_ DMOD |
|||
D1b1 Net-_D1a1-Pad2_ -32 DMOD |
|||
D4a1 +32 Net-_D4a1-Pad1_ DMOD |
|||
D2a1 Net-_D2a1-Pad2_ -32 DMOD |
|||
D4b1 +32 Net-_D4a1-Pad1_ DMOD |
|||
D2b1 Net-_D2a1-Pad2_ -32 DMOD |
|||
XP3 Net-_P3-Pad1_ 0 Net-_P3-Pad1_ RPOT value=200 ratio=0.85 |
|||
XP1 Net-_P1-Pad1_ +32 +32 RPOT value=5k ratio=0.18 |
|||
XP2 Net-_P2-Pad1_ -32 -32 RPOT value=5k ratio=0.18 |
|||
V3 in 0 sin(0 2 1k) |
|||
JQ1 Net-_P1-Pad1_ Net-_Q1-Pad2_ Net-_P3-Pad1_ 2SK170 |
|||
JQ2 Net-_P2-Pad1_ Net-_Q1-Pad2_ Net-_P3-Pad1_ 2SJ74 |
|||
MQ5 out Net-_Q5-Pad2_ Net-_D1a1-Pad2_ Q5tj Q5tc IRFP240 thermal |
|||
MQ4 out Net-_Q4-Pad2_ Net-_D4a1-Pad1_ Q4tj Q4tc IRFP9240 thermal |
|||
MQ6 out Net-_Q6-Pad2_ Net-_D2a1-Pad2_ Q6tj Q6tc IRFP240 thermal |
|||
Rj1 Q3tj 0 1G |
|||
Rj2 Q4tj 0 1G |
|||
Rj3 Q5tj 0 1G |
|||
Rj4 Q6tj 0 1G |
|||
Rc2 Q3hs Net-_Rc2-Pad2_ 0.7 |
|||
Rc4 Q4hs Net-_Rc2-Pad2_ 0.7 |
|||
Rc6 Q5hs Net-_Rc2-Pad2_ 0.7 |
|||
Rc8 Q6hs Net-_Rc2-Pad2_ 0.7 |
|||
Rc1 Q3tc Q3hs 0.1 |
|||
Rc3 Q4tc Q4hs 0.1 |
|||
Rc5 Q5tc Q5hs 0.1 |
|||
Rc7 Q6tc Q6hs 0.1 |
|||
Vt1 Net-_Rc2-Pad2_ 0 40 |
|||
Cc1 Q3hs 0 1 |
|||
Cc2 Q4hs 0 1 |
|||
Cc3 Q5hs 0 1 |
|||
Cc4 Q6hs 0 1 |
|||
V1 +32 0 32 ; pulse(0 32 1m 1m 1m 100 200) |
|||
V2 -32 0 -32 ; pulse(0 -32 1m 1m 1m 100 200) |
|||
XTH2 Net-_D1a1-Pad2_ Q5hs Net-_R12-Pad1_ th R25=4.7k |
|||
XTH1 Net-_D3a1-Pad1_ Q3hs Net-_R11-Pad1_ th R25=4.7k |
|||
MQ3 out Net-_Q3-Pad2_ Net-_D3a1-Pad1_ Q3tj Q3tc IRFP9240 thermal |
|||
*.tran 20u 5 |
|||
.end |
|||
@ -0,0 +1,78 @@ |
|||
* from https://www.diyaudio.com/forums/solid-state/252973-2sk170-2sj74-spice-model-pass-0-4ma.html |
|||
*2SJ74 |
|||
*Toshiba Dep-Mode 20mA 400mW LowNoise pkg:TO-92B 2,1,3 |
|||
.MODEL 2SJ74 PJF(Beta=92.12m Rs=7.748 Rd=7.748 Lambda=4.464m |
|||
+Vto=-.5428 Cgd=85.67p Pb=.3905 Fc=.5 |
|||
+Cgs=78.27p Is=12.98p |
|||
+Kf=26.64E-18 Af=1) |
|||
|
|||
*2SK170 |
|||
* 20mA 400mW LowNoise Dep-Mode pkg:TO-92B 3,1,2 |
|||
.MODEL 2SK170 NJF(Beta=59.86m Rs=4.151 Rd=4.151 Lambda=1.923m |
|||
+Vto=-.5024 Cgd=20p Pb=.4746 Fc=.5 |
|||
+Cgs=25.48p Is=8.477p |
|||
+Kf=111.3E-18 Af=1) |
|||
|
|||
.subckt RPOT 1 2 3 |
|||
R1 1 2 {value*ratio + 1m} |
|||
R2 2 3 {value*(1-ratio)+ 1m} |
|||
* below are default parameters, which are required by some simulators |
|||
.param value=1k |
|||
.param ratio=1 |
|||
.ends |
|||
|
|||
.model IRFP240 VDMOS nchan |
|||
+ Vto=4 Kp=5.9 Lambda=.001 Theta=0.015 ksubthres=.27 |
|||
+ Rd=61m Rs=18m Rg=3 Rds=1e7 |
|||
+ Cgdmax=2.45n Cgdmin=10p a=0.3 Cgs=1.2n |
|||
+ Is=60p N=1.1 Rb=14m XTI=3 |
|||
+ Cjo=1.5n Vj=0.8 m=0.5 |
|||
+ tcvth=0.0065 MU=-1.27 texp0=1.5 |
|||
+ Rthjc=0.4 Cthj=0.1 |
|||
+ mtriode=0.8 |
|||
|
|||
.model IRFP9240 VDMOS pchan |
|||
+ Vto=-4 Kp=8.8 Lambda=.003 Theta=0.08 ksubthres=.35 |
|||
+ Rd=180m Rs=50m Rg=3 Rds=1e7 |
|||
+ Cgdmax=1.25n Cgdmin=50p a=0.23 Cgs=1.15n |
|||
+ Is=150p N=1.3 Rb=16m XTI=2 |
|||
+ Cjo=1.3n Vj=0.8 m=0.5 |
|||
+ tcvth=0.004 MU=-1.27 texp0=1.5 |
|||
+ Rthjc=0.4 Cthj=0.1 |
|||
+ mtriode=0.6 |
|||
|
|||
.model DMOD D |
|||
|
|||
* Thermistor model |
|||
.subckt th n1 nt n2 |
|||
.param B=3977 |
|||
.param R25=4700 |
|||
*control node |
|||
Ctherm1 n1 0 100p |
|||
Ctherm2 n2 0 100p |
|||
Rtherm n1 n2 R = {R25*exp(B*(1/(v(nt)+273.15)-1/(25+273.15)))} |
|||
.ends |
|||
|
|||
* generic relay model |
|||
.subckt genrelay out1 out2 in1 in2 |
|||
.param ron = 10m |
|||
S1 out1 out2 in1 in2 SW |
|||
.MODEL SW VSWITCH(VON=4V VOFF=1V RON={ron} ROFF=100K) |
|||
.ends |
|||
|
|||
.MODEL IXTH16N10 VDMOS Nchan Vds=100 |
|||
+ VTO=-3.2 KP=9 |
|||
+ Lambda=2m |
|||
+ Mtriode=1.8 |
|||
+ Ksubthres=120m |
|||
+ subshift=160m |
|||
+ Rs=4m Rd=5m Rds=200e6 |
|||
+ Cgdmax=9000p Cgdmin=300p A=0.25 |
|||
+ Cgs=5500p Cjo=11000p |
|||
+ Is=10e-6 Rb=8m |
|||
+ BV=200 IBV=250e-6 |
|||
+ NBV=4 |
|||
+ TT=250e-9 |
|||
+ vq=100 |
|||
+ rq=0.1 |
|||
+ Rthjc=0.2 Cthj=0.1 |
|||
@ -0,0 +1,4 @@ |
|||
Pass Labs F5 turbo |
|||
thermal simulation |
|||
use optran for 4s and coarse steps to obtain stable temparature |
|||
then simulate transient with high resolution |
|||
@ -0,0 +1,40 @@ |
|||
.temp {envtemp} |
|||
.param envtemp=40 |
|||
.option savecurrents |
|||
.control |
|||
set controlswait |
|||
if $?sharedmode |
|||
* script for shared ngspice |
|||
version |
|||
rusage |
|||
else |
|||
* script for standard ngspice |
|||
*option noinit |
|||
optran 1 0 0 4 1e-2 0 |
|||
tran 1u 10m |
|||
echo |
|||
* output power |
|||
let po = @rl1[i] * v(out) |
|||
meas tran power_rms rms po from=5m to=10m |
|||
echo |
|||
rusage |
|||
* temperature transistor Q6 |
|||
set xbrushwidth=4 |
|||
settype temperature q6tj q6tc q6hs |
|||
plot q6tj q6tc q6hs ylimit 0 150 |
|||
set xbrushwidth=1 |
|||
* input and output voltages |
|||
plot in out |
|||
* power supply currents |
|||
plot V1#branch V2#branch ylimit -50 50 |
|||
plot V1#branch V2#branch ylimit -10 10 |
|||
* output current |
|||
plot @rl1[i] |
|||
plot @rl1[i] xlimit 0 5m ylimit -0.3 0.3 |
|||
* resistance of thermistor2 TH1, TH2 |
|||
let rth1 = (v("net-_d3a1-pad1_") - v("net-_r11-pad1_")) / (@b.xth1.brtherm[i] + 1n) |
|||
let rth2 = (v("net-_d1a1-pad2_") - v("net-_r12-pad1_")) / (@b.xth2.brtherm[i] + 1n) |
|||
settype impedance rth1 rth2 |
|||
plot rth1 rth2 ylimit 0 5k |
|||
end |
|||
.endc |
|||
Write
Preview
Loading…
Cancel
Save
Reference in new issue