Se connecter
Se connecter

ou
Créer un compte

ou
Agrandir
Les Mains dans le Cambouis
Bidouille & Développement Informatique

Gnuplot : Modéliser des tubes pour LT spice.

  • 11 réponses
  • 4 participants
  • 2 489 vues
  • 5 followers
Sujet de la discussion Gnuplot : Modéliser des tubes pour LT spice.
Bonjour à tous,
J’ouvre ce sujet car je rencontre un petit souci concernant la modélisation de tubes électroniques pour ensuite les utiliser avec LT Spice.

Il y a quelques temps, j’ai construit un traceur de courbe (Utracer) pour tester, appairer, etc… mes tubes.
(voir le sujet : https://fr.audiofanzine.com/les-mains-dans-le-cambouis/forums/t.589807,traceur-de-courbe-utracer-3.html)
Utracer : http://www.dos4ever.com/uTracer3/uTracer3_pag0.html

Il y a peu, j’ai découvert que ce même traceur de courbe pouvait me permettre de récupérer les données des tubes mesurés sous forme de fichier .utd pour ensuite les modéliser et utiliser ces « modèles » dans le logiciel de simulation LT Spice.
Voici le lien qui explique cette procédure : http://www.dos4ever.com/uTracer3/uTracer3_pag14.html

J'ai donc voulu modéliser le tube 5840 (introuvable en spice). J'ai suivi la procédure expliquée (c.f. le lien ci-dessus) en utilisant les logiciels ExtractModel et Gnuplot.

Mon souci est que lorsque je compare les courbes que mon Utracer a relevées et celles restituées par Gnuplot...

image.php
(pour agrandir : clique gauche + afficher l'image ;))

Les petites croix sur Gnuplot (les deux graphes du dessus) semblent représentatives de ce que mon traceur de courbe a relevé (les deux graphes du dessous). Par contre, les courbes tracées par Gnuplot elles ne ressemblent plus du tout aux courbes relevées ! :8O:
Puis, lorsque je "teste" ce même tube sur LT Spice ce dernier restitu effectivement la courbe de Gnuplot mais du coup, cela n'a plus rien à voir avec le tube réel !

image.php
(pour agrandir : clique gauche + afficher l'image bis ;))

D'où proviendrait cette différence selon vous ?
Quelqu'un pratiquerait il cette modélisation ?

Merci par avance :bravo:



Je suis CHARLIE

[ Dernière édition du message le 13/04/2017 à 15:16:43 ]

2
PS : sur l'image LT Spice représentant le pentode 5840, cette dernière est sous la forme d'une tétrode car sous la forme d'une réelle pentode, LT Spice m'explique que dans les données du fichier .cir, fournit par Gnuplot, il n'y a pas la 5ième électrode de spécifié. (C.f. image ci-dessous)

image.php

Le tube 5840 ayant sa grille G3 reliée à la cathode en interne j'ai du coup fait aussi le teste avec un tube 6AU6... Le résultat fut le même...

J'en ai déduit que vu que le câblage de G3 est relié à la cathode lors des testes, mon traceur de courbe ne notifie pas cette électrode car il ne voit du coup qu'une : La Cathode...

Je suis CHARLIE

3
J'ai effectivement l'impression que tu utilises le mauvais modèle Spice. L'outil tente de calquer au mieux les paramètres d'un modèle de tetrode sur tes données de pentode, et ca ne correspond pas bien.
(Au passage, gnuplot ne fait qu'afficher, c'est le programme ExtractModel qui fait le fitting)
4
Citation :
Au passage, gnuplot ne fait qu'afficher, c'est le programme ExtractModel qui fait le fitting

Oui, tu as tout à fait raison :)

Citation :
L'outil tente de calquer au mieux les paramètres d'un modèle de tetrode sur tes données de pentode, et ca ne correspond pas bien.

En fait, je crois que je n'ai pas vraiment le choix... C'est le Utracer qui transmet les données... Et lors de la mesure sur le traceur de courbe, G3 est câblé à la cathode... Donc, il semblerait que soit le Utracer, soit ExtractModel, ou encore les deux, ne déterminent pas cet électrode surement par manque de variation dessus...
Ce qui fait que je me retrouve avec un .SUBCKT bien notifié pentode mais qui n'a semble t il que 4 électrodes A G2 G1 C... :??: (c.f. le post 2)
Et donc, si j'utilise un modèle pentode sur LT Spice, ce dernier refuse la simulation car il ne trouve pas G3...:(

Je suis CHARLIE

5
Bon nouveau tests qui se rapprochent mais toujours pas 100 % concluants :
image.php

image.php

image.php

Alors le changement c'est fait auprès du fichiers .ini pour le câblage pentode qui dirigent ExtractModel : le changement fut de passer du mode P (pentode "habituelle") en mode V (pentode à mu variable) et utiliser le model 'DerkE.


Pour le "câblage" pentode :
C:Program Files (x86)gnuplotinwgnuplot.exe
5 ! 5 data files now
5840_75 ! three files with I as a function of Va for different Vg
5840_100 ! each file for a different screen voltage
5840_125 !
5840_150 !
5840_triode ! the pentode measured as triode again
V ! fit a variable mu pentode
DerkE ! model DerkE
.9 ! Pmax in fit
0 ! Vg Offset

pour le "câblage" triode :
C:Program Files (x86)gnuplotinwgnuplot.exe
1 ! only one file
5840_triode ! with the pentode measured with screen connected to anode
X ! to sum Ia and Is to fit the triode model
Derk ! Derk is used
.9 ! Pmax in fit
0 ! Vg Offset

Mais... Ce n'est toujours pas exacte... :(
Suis un peu perdu :??: :lol:

Je suis CHARLIE

6
C'est quand même beaucoup mieux !

Tu as aussi le modèle 'B', sur ton précédent lien ils expliquent que la différence entre 'P' et 'B' n'est pas Pentode vs. Beam tetrode, mais une question de prise en compte de l'émission secondaire. À tester avec Derk et DerkE.

[ Dernière édition du message le 13/04/2017 à 22:04:43 ]

7
Citation de Jimbass :
C'est quand même beaucoup mieux !

oui ! Mais pas encore exacte...
Citation de Jimbass :
Tu as aussi le modèle 'B',

Je l'ai essayé et il donne à peu près la même chose que le modèle V pour le 5840... Donc du coup, pas réellement le relevé du Utracer...

Je n'arrive pas à trouver où cela pêche...:((

Je suis CHARLIE

8
Salut Taffer, je m'amuse aussi pas mal avec les différents modèles de tubes, pour l'instant je n'ai travaillé qu'avec les triodes mais je vais suivre ton projet de prêt ;)
Je ne sais pas comment fonctionne le logiciel mais les résultats que tu présentes paraissent déjà pas mal du tout! Le modèle n'est pas parfait non plus donc "fitter" totalement les mesures me paraît un peu optimiste...
Est-ce qu'il est possible de modifier ExtractModel pour utiliser un autre modèle?
Si oui je te suggère d'essayer de rajouter un paramètre Kvb2 (l'idée provient de ce document : https://hal.archives-ouvertes.fr/hal-00811215/document )
Tu peux remplacer la ligne :
+{V(2,4)/KP*LOG(1+EXP(KP*(1/MU+V(3,4)/SQRT(KVB+V(2,4)*V(2,4)))))}
par :
+{V(2,4)/KP*LOG(1+EXP(KP*(1/MU+V(3,4)/SQRT(KVB+V(2,4)*V(2,4)+KVB2*V(2,4)))))}

[ Dernière édition du message le 18/04/2017 à 12:38:32 ]

9
Bonjour GrosGrainGras

Merci pour ta participation ! :bravo:
Citation :
Est-ce qu'il est possible de modifier ExtractModel pour utiliser un autre modèle?

Heu... En fait je ne comprends pas bien ce que tu veux dire... Tu voudrais modifier le programme "ExtractModel" lui même ? Et, qu'appelles tu "utiliser un autre modèle" ?

Citation :
Si oui je te suggère d'essayer de rajouter un paramètre Kvb2 (l'idée provient de ce document : https://hal.archives-ouvertes.fr/hal-00811215/document )
Tu peux remplacer la ligne :
+{V(2,4)/KP*LOG(1+EXP(KP*(1/MU+V(3,4)/SQRT(KVB+V(2,4)*V(2,4)))))}
par :
+{V(2,4)/KP*LOG(1+EXP(KP*(1/MU+V(3,4)/SQRT(KVB+V(2,4)*V(2,4)+KVB2*V(2,4)))))}

Je suis encore plus perdu... :??:
Je veux bien que tu m'expliques cela en le vulgarisant un maximum car je suis totalement néophyte en matière de programme informatique :(

Je suis CHARLIE

10
Je vais tenter d'expliquer
En gros le tube est modélisé ici par 2 sources de courant pilotées en tension, une diode et quelques composants passifs autour.
Les équations ne changent pas d'un tube à l'autre mais seulement les valeurs des paramètres ( MU, Ex, kG1, KP, ... ).
Donc j'imagine que le programme ExtractModel permet de tester pleins de valeurs de paramètres du modèle pour "fitter" au mieux les mesures.
Perso, j'ai essayé de faire ça une fois avec Matlab et la fonction fminsearch mais le résultat n'était vraiment pas terrible, principalement parceque le modèle de Norman Koren n'est pas très réaliste!!!
Le modèle utilisé ici pour la pentode en est directement dérivé, mais il existe de nombreux autres modèles comme https://aaltodoc.aalto.fi/bitstream/handle/123456789/14420/article3.pdf?sequence=6, http://recherche.ircam.fr/pub/dafx11/Papers/76_e.pdf, http://www.duncanamps.com/spicevalvesgt.html ...
Donc je pense que le résultat que tu as obtenu est déjà pas mal, maintenant si tu veux obtenir mieux, il faut trouver un modèle plus souple ou plus réaliste et bidouiller pour trouver les valeurs des paramètres... (Le code source de "ExtractModel" n'a pas l'air disponible donc en fait ce que je proposais n'a pas l'air possible)