agentee

Simulation

Simulation de circuit

Exécutez la partie analogique d'un schéma à partir de sa liste de nœuds : point de fonctionnement, AC, transitoire et bruit, avec des amplificateurs opérationnels et des diodes modélisés à partir de leurs fiches techniques et des vérifications sur les résultats.

Une simulation de circuit exécute la partie analogique d'un schéma directement depuis sa liste de nomenclature : le point de fonctionnement à chaque fois, et un balayage AC, un transitoire et une analyse de bruit lorsque la spécification les demande. Aucun routage n'est nécessaire, donc elle répond aux questions qui décident du schéma : le biais est-il là où il devrait, quel est le gain à 1 kHz, où la sortie sature-t-elle, quelle est l'amplitude du bruit.

Démarrer une

agentee new sim preamp-ac --kind circuit

L'exemple de préamplificateur exécute un préamplificateur à amplificateur opérationnel 9 V à travers chaque analyse. Voici son exécution AC et bruit, abrégée :

name = "preamp-ac"
kind = "circuit"
schematic = "preamp"
record = ["VCC", "VREF", "GAIN_OUT", "FILT_OUT", "OUT"]

[[drives]]
net = "VBAT"
dc = "9V"

[[drives]]
net = "IN"
ac = 1
resistance = "100ohm"

[ac]
from = "1Hz"
to = "1MHz"
points = 20

[noise]
output = "OUT"
input = "IN"
from = "20Hz"
to = "20kHz"

[[checks]]
v = "VREF"
min = 4.1
max = 4.3

[[checks]]
v = "OUT"
at = "1kHz"
min = 18.3
max = 19.3

[[checks]]
noise = "OUT"
at = "1kHz"
max = "500n"

[[blocks]]
ref = "U1"
kind = "opamp"
gain = 1e5
gbw = "0.7MHz"
en = "40n"
vos = "3mV"
headroom_high = "1.5V"
headroom_low = "5mV"
agentee sim preamp-ac
agentee render sim:preamp-ac -o preamp-ac.png

L'exécution écrit preamp-ac.result.json à côté de la spécification, avec le point de fonctionnement de chaque net, le courant à travers chaque pièce, chaque vérification et sa valeur, et les courbes des nomenclatures enregistrées. Le visualiseur et render tracent le gain, la phase et le bruit.

Sources

Seule une source alimente un net, donc donner une source à chaque alimentation. Une source est une source de tension vers la masse, ou vers le net dans return, avec une resistance en série. current = true en fait une source de courant, c'est ainsi que le préamplificateur retire le courant de repos de l'amplificateur opérationnel de son rail. ac marque l'entrée des analyses AC et bruit. Pour le transitoire, une source prend des steps (linéaire par morceaux), un pulse ou un sine.

La masse est chaque net nommé GND, 0V, GROUND ou commençant par VSS.

Analyses

  • Point de fonctionnement : toujours. Itération de Newton avec limitation de jonction, puis pas de gmin, puis pas de source lorsqu'il ne se stabilise pas.
  • AC : [ac] balaie de from à to avec points par décennie, linéarisé au point de fonctionnement. Les gains sont en dB par rapport à la source ac.
  • Transitoire : [tran] exécute jusqu'à stop avec step comme plus grand pas. Il stocke également le spectre de chaque nomenclature enregistrée sur sa seconde moitié.
  • Bruit : [noise] donne la densité à output et, avec input, la courbe rapportée à l'entrée, plus le RMS sur la bande. Les résistances, les courants de jonction, les canaux des MOSFET et le en des amplificateurs opérationnels contribuent tous.

Vérifications

Une vérification lit un nombre et le maintient entre min et max. Ce qu'elle lit dépend de at :

vérificationlit
v = "NET"la tension au point de fonctionnement
v = "NET", at = "5ms"la tension dans le transitoire
v = "NET", at = "1kHz"le gain AC en dB
phase = "NET", at = "1kHz"la phase en degrés
noise = "NET", at = "1kHz"la densité de bruit en V/rtHz
i = "R1"le courant à travers une pièce à deux broches, de la broche 1 à la broche 2
peak, trough, rms, freq, thdle transitoire entre from et to

Une vérification qui échoue est une erreur sur la simulation. Augmenter la vérification à 1 kHz ci-dessus à min = 19 et l'exécution échoue, et agentee check la signale comme erreur tant que ce résultat est actuel :

error: ./preamp-ac.sim.toml: preamp-ac result: v(OUT) at 1kHz is 18.7870 dB, wanted 19 to 19.3 dB

Le résultat devient périmé lorsque la spécification ou la liste de nomenclature du schéma change : la vérification le note comme périmé et ignore ses échecs jusqu'à ce que la simulation s'exécute à nouveau, donc relancer la simulation après chaque modification du circuit. Commencer une portée thd ou freq après que le circuit se stabilise, sinon l'étape de démarrage est lue comme une distorsion.

Les modèles proviennent de la fiche technique

Chaque pièce devient un élément par sa lettre de référence : R, C et L par valeur, D comme diode, Q comme BJT ou MOSFET par les noms de ses broches. Les connecteurs, points de test, trous et cristaux sont exclus, et tout le reste est une erreur tant qu'il n'a pas de bloc ou n'est pas dans ignore.

Les composants intégrés sont des substituts génériques : une diode au silicium, un BJT de petit signal, un MOSFET de niveau logique. Un résultat qui repose sur l'un d'eux décrit le substitut, pas votre composant. Donnez à chaque composant important une entrée [[blocks]] avec les valeurs de sa fiche technique :

  • Les amplificateurs opérationnels sont un pôle unique avec gain, gbw, rout, vos, en, ib, slew, psrr, et une limitation lisse headroom par rapport à chaque rail. Chaque unité d'un double ou quadruple est son propre amplificateur opérationnel sur des rails partagés.
  • Les diodes prennent is et n. Ajustez-les à deux points typiques de VF espacés d'une décennie de courant : n = dV / (Vt ln 10), puis is = I / exp(V / (n Vt)).
  • Les BJT et MOSFET prennent is, bf, va ou vth, k, lambda, et leurs capacités.
  • Les LDO maintiennent vout jusqu'à ce que l'entrée approche à dropout, puis la suivent à la baisse.
  • Les potentiomètres prennent une position de 0 à 1, de sorte que le curseur charge et est chargé comme le composant réel.

Placez la fiche technique et le tableau d'origine de chaque valeur dans le description de la simulation. La personne suivante qui lira le résultat, souvent l'agent, saura alors sur quoi il repose.

Exemples

  • examples/preamp : le point de fonctionnement, le gain et le bruit d'un étage d'amplification et d'un filtre Sallen-Key sur un LM358, le claquement à la mise sous tension, la saturation, et la diode de batterie inversée.
  • examples/ladder-vcf : un filtre à échelle de transistors dont les simulations vérifient le suivi de 1 V/oct à trois CV, le pic de résonance, et l'auto-oscillation en transitoire.
  • examples/lna : lna-supply vérifie l'OR de deux entrées d'alimentation à travers des Schottky, et lna-biastee combien de RF le bias tee laisse passer sur l'alimentation.

Toutes les clés sont dans la référence circuit.

Améliorer ce guide · Markdown pour agents