Model SPICE lampy ECC81 - problem

Teoria lamp elektronowych, techniki próżniowe, zagadnienia konstrukcyjne. Nic dodać, nic ująć. Wszystko o lampach.

Moderatorzy: gsmok, tszczesn, Romekd, Einherjer, OTLamp

Awatar użytkownika
gsmok
3125...6249 postów
3125...6249 postów
Posty: 3943
Rejestracja: wt, 8 kwietnia 2003, 08:33
Lokalizacja: Warszawa

Model SPICE lampy ECC81 - problem

Post autor: gsmok »

Witam
Napotkałem na problem z modelem lampy ECC81. Oto jej model zapisany w formacie SPICE:

Kod: Zaznacz cały

****************************************************
.SUBCKT ECC81 1 2 3; A G C;
*      Extract V1.030
*  Model created:  5-Jan-2014
X1 1 2 3 TriodeK MU= 63.24 EX=1.338 KG1= 306.7 KP= 208.5 KVB= 2363. RGI=2000
+ CCG=0.0P  CGP=0.0P CCP=0.0P  ;
.ENDS

****************************************************
.SUBCKT TriodeK 1 2 3; A G C
E1 7 0 VALUE=
+{V(1,3)/KP*LOG(1+EXP(KP*(1/MU+V(2,3)/SQRT(KVB+V(1,3)*V(1,3)))))}
RE1 7 0 1G
G1 1 3 VALUE={0.5*(PWR(V(7),EX)+PWRS(V(7),EX))/KG1}
RCP 1 3 1G    ; TO AVOID FLOATING NODES IN MU-FOLLOWER
C1 2 3 {CCG}  ; CATHODE-GRID
C2 2 1 {CGP}  ; GRID-PLATE
C3 1 3 {CCP}  ; CATHODE-PLATE
D3 5 3 DX     ; FOR GRID CURRENT
R1 2 5 {RGI}  ; FOR GRID CURRENT
.MODEL DX D(IS=1N RS=1 CJO=10PF TT=1N)
.ENDS TriodeK
A oto jej charakterystyka znaleziona w Internecie wyznaczona na podstawie tego modelu:
ecc81.gif
Mój problem polega na tym, że skrypt, który napisałem w oparciu o pokazany model wylicza znacznie zaniżone wartości prądu anodowego, od tych pokazanych na załączonej charakterystyce. Zrobiłem prawdopodobnie jakiś prosty błąd i nie mogę go znaleźć (tak to jest jak po paru godzinach pracy patrzy się na własny kod programu :oops: ). Chciałbym się jednak upewnić, czy na pewno to mój błąd.
Mam prośbę, aby dla jednego punktu pomiarowego ktoś chętny "ręcznie" wyliczył prąd anodowy i skonfrontował go z wykresem. Przyjmijmy, że
UA = 150V
UG= -2V.
Dane modelu zgodnie z załączonym plikiem SPICE:
MU= 63.24
EX=1.338
KG1= 306.7
KP= 208.5
KVB= 2363

Prąd anodowy wyliczamy zgodnie z modelem dwuetapowo:

Krok 1

E1 = UA / KP * LOG(1 + EXP( KP * ( 1 / MU + UG / SQRT(KVB+ UA * UA)))))

Krok 2

IA = 0.5 * (PWR(E1, EX) + PWRS(E1, EX)) / KG1


Dla ułatwienia, dla podanego punktu pracy funkcje PWR() i PWRS() zwracają tą samą wartość czyli po prostu E1 podniesione do potęgi EX, czyli:

IA = PWR(E1, EX) / KGI

Z góry dziękuję za poniesiony trud wyliczenia tej jednej wartości prądu anodowego.
Nie masz wymaganych uprawnień, aby zobaczyć pliki załączone do tego posta.
witko
100...124 posty
100...124 posty
Posty: 117
Rejestracja: sob, 5 stycznia 2008, 13:03
Lokalizacja: Świdnica

Re: Model SPICE lampy ECC81 - problem

Post autor: witko »

Może prosty błąd w spice LOG to LN ?
pozdr, wk

PS
dla Log E1 = 0,272V -> Ia =0,57 mA
dla LN E1 =0,626V -> Ia = 1,74 mA
(liczone w arkuszu LibreOffice)
Ostatnio zmieniony sob, 17 maja 2014, 14:08 przez witko, łącznie zmieniany 1 raz.
Einherjer
2500...3124 posty
2500...3124 posty
Posty: 2666
Rejestracja: pt, 22 stycznia 2010, 18:34
Lokalizacja: Wałbrzych

Re: Model SPICE lampy ECC81 - problem

Post autor: Einherjer »

No właśnie, zanim zaczniemy liczyć, powiedz czy LOG wyliczasz jako logarytm naturalny, czy dziesiętny. W Spice LOG to logarytm naturalny. Może wklej kod skryptu?
Awatar użytkownika
gsmok
3125...6249 postów
3125...6249 postów
Posty: 3943
Rejestracja: wt, 8 kwietnia 2003, 08:33
Lokalizacja: Warszawa

Re: Model SPICE lampy ECC81 - problem

Post autor: gsmok »

Panowie, dziękuję za zainteresowanie i szybki odzew.
witko pisze:Może prosty błąd w spice LOG to LN ?
pozdr, wk
I tu rzeczywiście był pies pogrzebany. Jak mogłem zrobić tak głupi błąd :oops: . Teraz już skrypt wylicza wartości zgodne z charakterystykami lampy :) .
Jeszcze raz dzięki :D .
Einherjer
2500...3124 posty
2500...3124 posty
Posty: 2666
Rejestracja: pt, 22 stycznia 2010, 18:34
Lokalizacja: Wałbrzych

Re: Model SPICE lampy ECC81 - problem

Post autor: Einherjer »

gsmoku, nawet jak się żyje z programowania to się głupsze błędy robi i spędza nad nimi mnóstwo czasu ;) Można wiedzieć do czego będziesz wykorzystywał te skrypty?
Awatar użytkownika
gsmok
3125...6249 postów
3125...6249 postów
Posty: 3943
Rejestracja: wt, 8 kwietnia 2003, 08:33
Lokalizacja: Warszawa

Re: Model SPICE lampy ECC81 - problem

Post autor: gsmok »

Chciałbym udostępnić program do tworzenia modeli i wyznaczania parametrów lamp w formie skryptu w Serwisie TRIODA.
Mam tester "uTracer" (opis w wątku w dziale Wspomaganie układów Lampowych), który eksportuje dane mierzonej lampy do komputera. Na podstawie tych danych opracowany został program do generowania modeli SPICE. Ten program jest zrobiony w formie pliku wykonywalnego na komputerze użytkownika (exe). Chciałbym w wolnej chwili zrobić jego wersję w formie uruchamianej wewnątrz przeglądarki internetowej.
Einherjer
2500...3124 posty
2500...3124 posty
Posty: 2666
Rejestracja: pt, 22 stycznia 2010, 18:34
Lokalizacja: Wałbrzych

Re: Model SPICE lampy ECC81 - problem

Post autor: Einherjer »

Chodzi Ci o program Motega? Czy coś Twojego autorstwa? Identyfikacja parametrów modelu wymaga użycia jakiegoś algorytmu optymalizacji nieliniowej. Jak to zrobić w przeglądarce? Chyba, że chodzi Ci o taki program, w którym ręcznie zmieniając parametry dopasowujesz je do charakterystyk.
Awatar użytkownika
gsmok
3125...6249 postów
3125...6249 postów
Posty: 3943
Rejestracja: wt, 8 kwietnia 2003, 08:33
Lokalizacja: Warszawa

Re: Model SPICE lampy ECC81 - problem

Post autor: gsmok »

Chodzi mi o program ExtractModel opracowany do wspomnianego "uTracera" autorstwa Derka Reefmana:
http://www.dos4ever.com/uTracer3/uTracer3_pag14.html

Nie przewiduję ręcznego dopasowywania parametrów. Autor wspomnianego programu nie udostępnia kodu, a jedynie plik wykonywalny. Z krótkiego opisu wynika jednak, że do znajdowania parametrów stosuje zmodyfikowaną metodę najmniejszych kwadratów. Przyznaję, że nie znając szczegółów nie za bardzo wiem, jak ta metoda radzi sobie z problemem nieliniowym. Ja stosowałem metodę najmniejszych kwadratów tylko do zagadnień liniowych, dla problemów optymalizacji bez lokalnych minimów. Ale jak widać z praktyki zaimplementowane podeście sprawdza się - no chyba, że tajemnica kryje się w tym, że przed uruchomieniem procedury optymalizacji trzeba podać ich wartości początkowe - może to powoduje, że algorytm nie "grzęźnie" w jakimś lokalnym minimum i zbiega zapewniając mały błąd. Nie będę raczej zgłębiał szczegółów i od razu planuję zastosować algorytm genetyczny - mam z nim bardzo pozytywne doświadczenia w optymalizacji nieliniowej :) . Zrobiłem parę prób co do szybkości obliczeń i wygląda na to, że przeglądarka spokojnie sobie poradzi :) . Gdyby pomysł z algorytmem genetycznym "wypalił" to po cichu planuję "olać" te wzory, które powiązane są ze zjawiskami fizycznymi zachodzącymi w lampach i do modelowania zastosować jakąś formę wielomianu odpowiedniego stopnia. Myślę, że wyznaczanie przebiegu charakterystyk byłoby szybsze - ale to pieśń przyszłości.
Einherjer
2500...3124 posty
2500...3124 posty
Posty: 2666
Rejestracja: pt, 22 stycznia 2010, 18:34
Lokalizacja: Wałbrzych

Re: Model SPICE lampy ECC81 - problem

Post autor: Einherjer »

A może by użyć bardziej "wypasionych" modeli: http://www.boschma.com/motega_math.html Lepiej oddają zachowanie lampy przy niskim Ia i wysokim Ua. Różnica jest zauważalna. Wspomniany przeze mnie program http://www.boschma.com/motega.html korzysta właśnie z algorytmów genetycznych i działa to bardzo dobrze :)
Awatar użytkownika
gsmok
3125...6249 postów
3125...6249 postów
Posty: 3943
Rejestracja: wt, 8 kwietnia 2003, 08:33
Lokalizacja: Warszawa

Re: Model SPICE lampy ECC81 - problem

Post autor: gsmok »

Dziękuje z informację. Oczywiście będę próbował z modelami o różnym stopniu złożoności.
Kazimierz
625...1249 postów
625...1249 postów
Posty: 730
Rejestracja: śr, 25 czerwca 2003, 22:17
Lokalizacja: Warszawa

Re: Model SPICE lampy ECC81 - problem

Post autor: Kazimierz »

gsmok pisze: ...planuję zastosować algorytm genetyczny - mam z nim bardzo pozytywne doświadczenia w optymalizacji nieliniowej :) .
Ja też mam takie doświadczenia, wprawdzie nie w elektronice ale oprócz aplikacji samodzielnej także w połączeniu z siecią neuronową. Powiedziałbym, że nawet więcej niż pozytywne :D . AG to bardzo silne narzędzie. Nie akceptowane przez kreacjonistów.
pozdrawiam
Awatar użytkownika
gsmok
3125...6249 postów
3125...6249 postów
Posty: 3943
Rejestracja: wt, 8 kwietnia 2003, 08:33
Lokalizacja: Warszawa

Re: Model SPICE lampy ECC81 - problem

Post autor: gsmok »

A więc jest nas już co najmniej dwóch :). Jak będę miał już coś do pokazania, to podam link do programu na naszym Forum.