LTspice installation base de données

Très élégant ce potentiomètre logarithmique. J’adopte :smiley:

Peut-être ajouter un petit « epsilon » à la ligne :
R-(R/RANGE)*PWR(RANGE,SET) qui plante pour SET = 1 (résistance nulle)
Perso, j’initialise avec RANGE = 100 qui donne 10% de la résistance totale quand le curseur est à la moitié de la piste, ce que l’on admet généralement pour un potentiomètre logarithmique.
Bravo et merci.
jcj

Merci beaucoup,

Dans mes bibliothèques, j’ai trouvé ce modèle de potentiomètre audio. Je ne l’ai pas essayé, je ne sais pas si il fonctionne et ce qu’il vaut. :wink:
Le code brut de décoffrage : (le curseur est en 3 et la prise loudness en 4 )

[code]* Potentiometer with a logarithm characteristic and a tap.

  • The tap is typically at about 50%(tap=0.5) of the poentiometer’s travel.
  • RTAP is the resistance between node 4 and node 2.
  • v=V0*wiper^const
  • tap at wiper=0.5(50%), Rtap=0.1(10%)*Rtot
  • const = ln(0.5)/ln(0.1)
  • 3 wiper
  • V
  • 1.0 <------------------------- 0.0
  • ___ 5 ___ ___ 6 ___
  • 1–||–||-o-||–||–2
  • |
  • R1 R2 | R3 R4
  • 4 tap
  • Rtot=R1+R2+R3+R4
  • Rtap=R3+R4

.SUBCKT pot_tap_audio 1 2 3 4 RT={RT} SET={SET} RTAP={RTAP} TAP={TAP}
.param w=limit(set,0.1m,.9999)

.param pwrexp=ln(RTAP/RT)/ln(TAP)
.param ratio=w**pwrexp

.param RD=Rtot*ratio

R1 1 5 {limit(1m, (RT-RD), (RT-RTAP-1m)}
R2 5 4 {limit(1m, (RD-RTAP), (RT-RTAP-1m)}
R3 4 6 {limit(1m, (RTAP-RD), (RTAP-1m)}
R4 6 2 {limit(1m, (RD), (RTAP-1m)}

sw5 5 3 7 0 sw1
sw6 6 3 7 0 sw2

vsw 7 0 {w}
.model sw1 SW(Ron=1m, Roff=1T vt=0.5)
.model sw2 SW(Ron=1T, Roff=1m vt=0.5)
.ENDS
[/code]

J’ai fait la simulation avec le modèle ci-dessus en reprenant le dernier schéma de JC Jardine

Loudnesst.jpg

Bonjour,
Cela semble correct.
Si j’ai bien compris le modèle (doc joint)il doit y avoir un petit défaut, le schéma change toujours pour SET = 0,5 au lieu de changer quand le curseur passe au niveau de la prise.
Il n’y a pas si longtemps, je pensais que simuler un potentiomètre à prise intermédiaire était simple. :smiley:
Cordialement : jcj
pot-prise-log.jpg

Bonjour,
Oui, ce sont les 2 switches qui commutent à 0.5. Il faudrait leur mettre la valeur de la variable de Tap.

SUBCKT pot_tap_audio 1 2 3 4 RT={RT} SET={SET} RTAP={RTAP} [b][b]TAP={TAP}[/b][/b] .model sw1 SW(Ron=1m, Roff=1T [b]vt={Tap}[/b]) .model sw2 SW(Ron=1T, Roff=1m [b]vt={Tap}[/b])
Et ça devrait fonctionner.

Après modif du code ça a l’air de fonctionner :

[code].SUBCKT pot_tap_audio 1 2 3 4

  • Parameters RT, SET, RTAP, TAP

.param w=limit(Set,0.01m,.99999)
.param TAP1=limit(0.01m, TAP, 0.99999)
.param pwrexp=ln(RTAP/RT)/(1-TAP1)
*
.param ratio=exp(pwrexp*(1-w))
.param RD=Rt*ratio
*
R1 1 5 {limit(0.01m, (RT-RD), (RT-RTAP-0.01m)}
R2 5 4 {limit(0.01m, (RD-RTAP), (RT-RTAP-0.01m)}
R3 4 6 {limit(0.01m, (RTAP-RD), (RTAP-0.01m)}
R4 6 2 {limit(0.01m, (RD), (RTAP-0.01m)}
*
sw5 5 3 7 0 sw1
sw6 6 3 7 0 sw2
*
vsw 7 0 {w}
.model sw1 SW(Ron=1m, Roff=1T vt={TAP1})
.model sw2 SW(Ron=1T, Roff=1m vt={TAP1})
*
.ENDS[/code]

Il suffit de remplacer 0,5 par TAP, je ne comprends pas (ou j’ai oublié) ce que signifie et

Simulation avec modification de la prise « loudness »

compare Tap value.jpg

OK pour la correction.
Pour un pot log, on admet que l’on a 10% de la résistance totale au milieu de la piste soit Rtap = 100k pour tap = 0.5 pour Rt= 1Meg
En prenant Rtap = 30 k pour Tap = 0.30 (pour éviter 0.5) j’obtiens le courbes jointes, ce qui me parait normal.
pot-log-prise-2.png

C’est curieux, avec les mêmes paramètres, je n’obtiens pas les mêmes courbes :astonished:

compare courbes.jpg

Sur vos simulations, il manque le SET = 0 qui ne doit donner que du bruit de fond (-180 dB sur mes courbes).
Peut être un problème de limitation du SET pour ne pas tomber sur des résistances nulles ?
Si je débute le paramétrage à 0.1, on commence à se rapprocher, mais pas tout a fait.
pot-log-prise-3.jpg

Non, ce n’est pas la raison, je balaye bien de 0 à 1 et de toutes façons, le 0 est exclu du modèle : « .param w=limit(Set,0.01m,.99999) »
Et voici une courbe sans balayage avec Set = 0
Je suis à -44dB

J’utilise le fichier que vous avez donné le 7 janvier à 19h30, en ayant corrigé une erreur (un Rtot à remplacer par RT).
Vos limites de SET, sont légèrement différentes : .param w=limit(Set,0.01m,.99999), alors que sur le fichier d’origine : w=limit(set,0.1m,.9999)
Peut-être d’autres petites modifs ?
Amplitude de la source alternative : j’ai pris 1 V

Je me suis servi du code publé ce matin en page 2
http://forum.retrotechnique.org/viewtopic.php?f=2&t=256443&start=15#p491203

Pour la source de tension, c’est tout simple, je prends une source de tension et je simplement mets à 1V dans le cadre AC analysis.

Source.jpg

Avec le nouveau fichier de ce matin, nous trouvons bien les même choses. J’avais simplement un jour de retard.

Je préfère, je n’y comprenais plus rien :laughing:

Juste pour faire travailler nos petites cellules grises.
Un petit défaut…
Quand on fait SET = 0, on s’attend a trouver une atténuation très forte (en dessous -100 dB), or ce n’est pas toujours le cas. Dans la simulation jointe on n’a que -29dB.
Tentative d’explication :
J’ai reporté les formules des résistances dans Excel, et dans le cas de la simulation jointe, SET=0 donne une résistance RD entre curseur et masse de 37,2k au lieu de voisin de zéro, d’ou les -29 dB d’atténuation seulement.
20*log(37200/1037200) = -29dB
L’erreur est d’autant plus grande que RTAP est grande et que TAP est faible.
Ce n’est pas très grave… juste pour le plaisir de faire des mathématiques :smiley:
pot-log-prise-4.jpg
pot-log-prise-5.jpg

Bizarre, moi je trouve quasiment mes -44dB de la dernière simu avec SET=0
Colonne de gauche, j’ai mis les formules du modèle.
Et si je refais les calculs avec SET=1 alors je trouve RD = 1 000 000 et ratio = 1

attenuation.jpg

mes valeurs sont pour RTAP=100 k

On est d’accord, avec 100k, je suis aussi à -29dB (j’avais pas vu la valeur de RTAP sur le schéma)
Mais avec RTAP = 100k, est-on toujours à TAP = 0.3?
Avec TAP à 0.5 par exemple l’atténuation est de -40dB (juste pour dire…)

Si on ne donne pas des valeurs aberrantes pour les coeffs cela reste très correct.
Sur la base de 10% de RTotal à mi-piste, soit 100000 Ohm sur prise à 50% ou 40000 Ohm sur prise à 30%, c’est très bien. Au mini on est à - 40dB.
Les potentiomètres des tables de mixages sont souvent graduées entre -40 à +10 dB (en dessous de -40 dB c’est le silence).