Multisim and Ultiboard

cancel
Showing results for 
Search instead for 
Did you mean: 

Multisim Error when importing JFET model

Trying to figure out what his error means and how to resolve it properly!

somekindasupertech_0-1677257093561.png

 

Thanks,

 

Jeff

http://www.ampedupelectronics.com

 

0 Kudos
Message 1 of 45
(2,787 Views)

Привет! Файл выкладывайте в формате "ms", а то непонятно, что Вы там делаете...

0 Kudos
Message 2 of 45
(2,765 Views)

I used russian translator for your comment...

 

It looks like you want my spice file:

 

Please find the Spice file I am trying to import.

 

https://unitedsic.com/products/sic-jfets/uj3n065080k3s/

 

Спасибо за вашу помощь

0 Kudos
Message 3 of 45
(2,717 Views)

Привет! Спасибо за файл. Синтаксис spice для программы LTs. Для Мультисим нужно править текстовый файл модели, чтобы было понятно Мультисиму. Я насчитал 3 модели транзистора и две для ёмкости затвор-сток (вероятно для моделирования площадки Миллера)
Вот модели: (разной сложности, nd ng ns,- программа не понимает, нужно заменить на цифры 1,2,3 )
1.
.subckt UJ3N065080K3S nd ng ns
*#ASSOC Category="N-Channel JFET" Symbol=njfet
Ld nd nd1 5n
Ljg ng ng1 10n
Ls ns ns1 2n
xj1 nd1 ng1 ns1 jfet_G3_650V_Ron params: Ron=75m Rgon=4 Rgoff=4
.ends
2.
.subckt jfet_G3_650V_Ron d g s params: Ron=0 Rgon=0 Rgoff=0
.param Ron1={Ron}
.param Rgon1={Rgon}
.param Rgoff1={Rgoff}
.param a= {75m/{Ron1}}
X1 di gi s jfet_G3_650V params: ascale={a}
XCgs gi s Cgs_650V params: acgs={a}
XCgd gi di Cgd_650V params: acgd={a}
Cgdex gi di {25p * {a} }
Cgsex gi s {80p * {a} }
Rd d di Rtemp {50m/{a}}
.MODEL Rtemp RES (TC1=2.112e-3, TC2=3.6244e-5)
GRg g gi value={if(v(g,gi)>0,v(g,gi)/{Rgon1},v(g,gi)/{Rgoff1})}
.ends
3.

.subckt jfet_G3_650V d g s Params: ascale=0
.param Fc1=0.5
.param Pb1=3.25
.param M1=0.5
.param Vd0=400
.param gos={0.0178*{ascale}}
.param gfs={23.5*{ascale}}
.param f=1.763
.param vth=-10

.param cgs1=0.375n
.param cgd1=0.0404n

.param bt={({f}*{gfs}+2*{gos}*{Vd0}/{vth})/2/(-{vth})}
.param lamd={1*{gos}/{bt}/{vth}/{vth}}
.param cgs0={pwr((1+30/{Pb1}),{M1})*{cgs1}}
.param cgd0={pwr((1+{Vd0}/{Pb1}),{M1})*{cgd1}}

J1 d g s jfet_650
Dgs g s Dgs_iv
Dgd g d Dgd_iv
Rgs g s 1Meg
Rgd g d 10Meg

.MODEL jfet_650 NJF(
+ Beta={bt} BetaTce=0 Vto={vth} VtoTc=0 lambda={lamd}
+ Is=1e-60
+ Cgs={{cgs0}*{ascale}} Cgd={{cgd0}*{ascale}} Fc={Fc1} Pb={Pb1}
+ M={M1})

.MODEL Dgs_iv D (CJO=0 BV=40 IS=1e-50 ISR=1e-50 Eg=3.5 Rs=0)
.MODEL Dgd_iv D (CJO=0 BV=850 IBV=1m IS=1e-50 ISR=1e-50 Eg=3.5 Rs={15.1m/{ascale}})
.ends
4.

.subckt Cgs_650V g s params: acgs=0
.param c0=1n
.param vsgmin=-2
.param vsgmax=15
.param a1={0.25n*{acgs}}
.param b1=1
.func Qgs1(u) {- {a1} / {b1} *(exp(- {b1} *u)-1)}

.param a2={0.35n*{acgs}}
.param b2=0.5
.param c2=8.7

.func Qgs2(u)
+ {if(abs(u)<{vsgmax},
+ {a2}*u + {a2}*(-{b2})*log(cosh((u-{c2})/-{b2}))
+ -{a2}*(-{b2})*log(cosh(-{c2}/-{b2})),
+ {a2}*{vsgmax} + {a2}*(-{b2})*log(cosh(({vsgmax}-{c2})/-{b2}))
+ -{a2}*(-{b2})*log(cosh(-{c2}/-{b2})))}

E1 s m1 value={v(s,g)-Qgs1(v(s,g))/{c0}}
C01 m1 g {c0}
E2 s m2 value={v(s,g)-Qgs2(limit(v(s,g),-{vsgmax},{vsgmax}))/{c0}}
C02 m2 g {c0}

.ends
5.


.subckt Cgd_650V g d params:acgd=0

.param c0=1n

.param a1={0.2n*{acgd}}
.param b1=0.6
.param c1=19
.param vdgmax1=30

.func Qgd1(u)
+ {if(abs(u)<{vdgmax1},
+ {a1}*u + {a1}*(-{b1})*log(cosh((u-{c1})/-{b1}))
+ -{a1}*(-{b1})*log(cosh(-{c1}/-{b1})),
+ {a1}*{vdgmax1} + {a1}*(-{b1})*log(cosh(({vdgmax1}-{c1})/-{b1}))
+ -{a1}*(-{b1})*log(cosh(-{c1}/-{b1})))}

.param a2={0*{acgd}}
.param b2=0.5
.param c2=9.5
.param vdgmax2=15

.func Qgd2(u)
+ {if(abs(u)<{vdgmax2},
+ (-1)*({a2}*u + {a2}*(-{b2})*log(cosh((u-{c2})/-{b2}))
+ -{a2}*(-{b2})*log(cosh(-{c2}/-{b2}))),
+ (-1)*({a2}*{vdgmax2} + {a2}*(-{b2})*log(cosh(({vdgmax2}-{c2})/-{b2}))
+ -{a2}*(-{b2})*log(cosh(-{c2}/-{b2}))))}


E1 d m1 value={v(d,g)-Qgd1(limit(v(d,g),-{vdgmax1},+{vdgmax1}))/{c0}}
C01 m1 g {c0}
E2 d m2 value={v(d,g)-Qgd2(limit(v(d,g),-{vdgmax2},+{vdgmax2}))/{c0}}
C02 m2 g {c0}

.ends
Все модели в MS начинаются с

.subckt
и кончаются
.ends
Остальное игнорируется, иногда выскакивает ошибка из-за излишних символов...

0 Kudos
Message 4 of 45
(2,711 Views)

Hi Tipa,

Извините, я не понимаю ваших инструкций по ремонту? Можете ли вы попытаться упростить для меня?

0 Kudos
Message 5 of 45
(2,695 Views)
Я не могу определить степень вышей подготовленности в программе, поэтому не знаю на каком уровне с Вами вести беседу... Заранее извиняюсь, если буду слишком наивным. Файл, который ВЫ мне любезно предоставили, есть модель транзистора в формате ".asy" ,это формат программы ltspice, у которой более универсальный синтаксис. Мультисим "съедает" модели в текстовом формате, только нужна правка текста, соответствующая синтаксису MS/Насколько я понимаю,-это сборная солянка со всех spice-syntax,-так что очень постраться надо забить параметры из Вашего файла в модель , съедобную для MS. Сразу бросилось в глаза отличие в обозначении выводов. Для MS их нужно писать 1,2,3. И далее в описании модели пользоваться ими.
0 Kudos
Message 6 of 45
(2,682 Views)

Я попробовал всю текстовую модель впихнуть в "ARBITRARY_SPICE_BLOCK" и промоделировать. Получилось вот, что:

tipa_0-1677742827643.png

 

Вот тут симуляция от LTs https://kazus.ru/forums/showpost.php?p=1390015&postcount=611
-или, взять за основу подходящую модель из основной базы, и вставить туда параметры из текстового файла, остальные оставить по-умолчанию. Думаю, основные параметры просимулируются...

tipa_0-1677744330728.png

 

Message 7 of 45
(2,615 Views)

I appreciate the help. I worry that adjusting these values alone will not be accurate like the original Spice?

 

Is it possible to add to fix the official Spice for Multisim, add to library? The company so far has told me to use alternate software for example LTSpice. This is not a good solution. I cannot get UnitedSiC to make the required fixes to use the model. Multisim is better quality software in my opinion.

You are correct, I am not an expert. I do not know much about Spice language. I do not want to change the accuracy of the original model.

 

I see your suggestions are editing specific FET perimeters but I do not know enough to rely on this method.

 

Я ценю помощь. Я беспокоюсь, что регулировка этих значений сама по себе не будет такой же точной, как в оригинальном Spice?


Можно ли добавить в фикс официальную Spice for Multisim, добавить в библиотеку? До сих пор компания говорила мне использовать альтернативное программное обеспечение, например LTSpice. Это не очень хорошее решение. Я не могу заставить UnitedSiC внести необходимые исправления для использования модели. Multisim, на мой взгляд, более качественный софт.

Вы правы, я не специалист. Я мало что знаю о языке Spice. Я не хочу менять точность исходной модели.


Я вижу, что ваши предложения касаются редактирования определенных периметров FET, но я недостаточно знаю, чтобы полагаться на этот метод.

0 Kudos
Message 8 of 45
(2,596 Views)

Уважаемый коллега! Я ценю Ваше стремление постичь науку о SPICE-моделировании, но, к сожалению сам пока не достиг определённых успехов. Зато я знаю человека, который может вам помочь, и конвертировать "несъедобные" параметры для MS.  Для этого нужно зарегистрироваться на сайте https://kazus.ru/, и задать свой вопрос непосредственно в этой ветке:https://kazus.ru/forums/showpost.php?p=1390015&postcount=611
Александр Петрович Бордодынов обязательно ответит Вам. 
Сайт имеет англоязычную версию, можете работать в ней, если вам это удобнее.
Есть другой путь для построения модели через графики из даташит. В программе "Microcap" есть подпрограмма "Model maker", которая работает независимо,- можно воспользоваться ей.

0 Kudos
Message 9 of 45
(2,568 Views)

for some reason I cannot register to that site.

 

Can someone provide fixed model .zip file on here for Multisim 14?

0 Kudos
Message 10 of 45
(2,471 Views)