Monostabile transistor-level con trigger PWL
Una sequenza di tre impulsi attivi bassi avvia il timer discreto. La demo mostra la relazione fra trigger, latch, carica del condensatore e durata dell’uscita, usando la netlist PWL originale senza convertirla in PULSE.
Circuito e obiettivo
- Core a transistor: comparatori, latch, transistor di scarica e stadio d’uscita; modelli BJT e diodo volutamente semplificati.
- Alimentazione da 0 a 12 V con power-up a 1 ms; reset mantenuto alto.
RMONO = 100 kΩ,CMONO = 1 µF; threshold e discharge collegati al condensatore.- Carico d’uscita 10 kΩ / 100 pF; bypass control 10 nF.
- 53 elementi, 34 nodi, 13 direttive di misura; 99002 punti stimati dal validatore Registered.
Stimolo e analisi
.tran 20u 2.000 20m 100u uic
La simulazione parte da zero con UIC, conserva i dati dopo 20 ms e termina a 2 s. Il passo massimo interno è 100 µs: i campioni effettivi sono adattivi, non una griglia uniforme da 20 µs.
Il trigger sale da 0 a 10 V nei primi 2 ms, poi scende da 10 a 0 V in 100 µs prima di 0,500 s, 1,000 s e 1,500 s. Rimane a zero per 5 ms e risale in 100 µs.
Come funziona
Il trigger basso commuta il latch, alza l’uscita e disabilita la scarica. Il condensatore si carica attraverso RMONO; raggiunta la soglia del comparatore, l’uscita torna bassa e il condensatore viene scaricato. Ogni trigger intenzionale genera un impulso più lungo dello stimolo di ingresso.
La stima ideale è T ≈ RC ln(3) ≈ 109,86 ms, spesso arrotondata a 1,1 RC ≈ 110 ms. Il modello discreto produce circa 109,5 ms. Le soglie effettive dipendono dai transistor: non sono esattamente 4 V e 8 V.
Misure verificate
Riferimento principale: pipeline server Registered, ngspice 44.2, 20055 campioni e 48 variabili RAW. La prova browser WebAssembly produce 20022 campioni e 35 quantità circuitali disponibili nel viewer. Le variabili RAW del server comprendono anche scalari di misura: i conteggi non indicano nodi mancanti nel browser.
| Misura | Server 44.2 | Browser locale |
|---|---|---|
OUT_MAX | 10,52289 V | 10,5106 V |
OUT_MIN | 0,02374605 V | −0,167649 V |
OUT_PP | 10,49915 V | 10,6782 V |
TIMING_MAX | 7,992825 V | 7,99284 V |
TIMING_MIN_SS | −0,4129529 V | −1,26448 V |
CONTROL_AVG | 8,002285 V | 8,00228 V |
REF_1_3_AVG | 4,004773 V | 4,00477 V |
TRIGGER_LOW_MIN | 0 V | 0 V |
TRIGGER_HIGH_MAX | 10 V | 10 V |
TRIG_TO_OUT | 3,299104 µs | −0,114969 µs |
MONO_WIDTH | 109,5238 ms | 109,505 ms |
CAP_4_TO_8 | Non disponibile: il condensatore non raggiunge 8 V. | |
ICC_AVG | −33,00331 mA | −33,0046 mA |
Un controllo indipendente del RAW 44.2 individua tre impulsi intenzionali: 109,5238 ms, 109,5308 ms e 109,4976 ms. Le misure temporali originali usano TD=400m per escludere l’avvio.
Limiti della demo, non bug CalcLab
trig(TARG): out of interval nel log; la misura non viene inventata né sostituita con zero. La simulazione e le altre 12 misure restano valide.TRIG_TO_OUTconfronta due soglie scelte (trigger a 4 V, uscita a 6 V), non misura un ritardo fisico garantito positivo. Valori molto piccoli e anche negativi non dimostrano una violazione causale: soglie reali e interpolazione contano.- I picchi negativi di commutazione sono sensibili al modello semplificato e al motore. La prova locale dichiara modalità di compatibilità
ps lt a, mentre il server non ne seleziona alcuna. Non presentiamo i due risultati come numericamente identici, né come caratterizzazione di un componente reale. - La corrente della sorgente VCC è negativa quando questa eroga energia; il consumo medio corrisponde a circa 33 mA.
- I commenti storici sui workaround precedenti restano nel file originale per integrità: non sono una descrizione aggiornata delle capacità del framework.
Tracce consigliate
NE555_TRIGGER NE555_OUT
Confrontare il trigger basso da 5 ms con l’uscita alta da circa 109,5 ms. Uno zoom X da 490 ms a 620 ms rende leggibile il primo evento.
NE555_TIMING NE555_CONTROL NE555_REF_1_3
Osservare carica, soglia effettiva e scarica. Per approfondire aggiungere latch A/B e discharge.
Riprodurre la prova
- Scaricare la netlist originale dal link qui sotto e aprire SPICE Simulator.
- Aprire Netlist → Choose netlist, selezionare il file e premere Use imported netlist. Lo schema grafico non viene ricostruito.
- Scegliere Run locally, oppure Run on Giux-CalcLab server con un account Registered/Trusted verificato. Le quote di ciascun profilo restano applicate.
- Avviare la simulazione, consultare Measurements (12) e SPICE Log, poi aggiungere manualmente le tracce nel Waveform Viewer.
Compatibilità e sicurezza verificate
- MISS-005 risolto per sorgenti V/I
PWL(t v …)numeriche inline: coppie complete, valori finiti, tempi non negativi e strettamente crescenti; separatori spazio/virgola e suffissi SPICE. - Punti PWL mantenuti nello stesso ordine e con gli stessi valori. Nessuna eccezione basata su nomi della demo o dei nodi.
- Le analisi top-level vengono ora avviate esplicitamente nel worker locale; i blocchi control già eseguiti al caricamento non vengono eseguiti una seconda volta.
- Quick Results non attribuisce più un falso istante zero alle misure prive di
at. - Il server resta autoritativo; limiti dei profili, sandbox, seccomp e NoNewPrivileges restano applicati. File PWL esterni, espressioni, opzioni di ripetizione/ritardo, include/lib, percorsi e comandi arbitrari non vengono abilitati.
CALCLAB_*,GIUXCALC_*e__calclab_*importati restano commenti inerti. Non vengono creati preset trusted; il Waveform Viewer non è stato modificato.
Il sottoinsieme accettato è intenzionalmente più ristretto della sintassi PWL completa di ngspice. Fra le coppie temporali il segnale è interpolato linearmente.
Netlist originale verificata
Scarica demo_02b_ne555_discrete_monostable_pwl_v1.cir
Integrità del file
File originale conservato byte-per-byte, inclusa la misura CAP_4_TO_8 documentata sopra.
SHA-256:100918e5884caf798aa5bd62dfe55ecb737cfd0f03288b68dce4fc72b6e61303