Pass Labs F5 Turbo

example for optran
This commit is contained in:
Holger Vogt 2020-05-25 00:12:41 +02:00
parent a20afc54a5
commit 29dfa23465
4 changed files with 191 additions and 0 deletions

View File

@ -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

View File

@ -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

View File

@ -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

View File

@ -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