Mi consejo es que dejes de usar fuentes de comportamiento y, en su lugar, usa esto:
Lasfuentesdecomportamientodependendeltiempoytienenunaresoluciónlimitadacuandosenecesitanprocesargrandesrangosdinámicos,yaseadefrecuenciaoamplitud.Sustripdv/tripdt
paarmeterssolopuedencorregirtanto.OTOH,losdispositivosAtienenpropiedadesintegradasqueloshacenprecisos.
Lomismoocurreconlageneracióndetriángulos(orampa,etc.).Useunafuentefija,queseexpande,internamente,enpuntosconocidoseneltiempodesimulación,quesedibujarácorrectamenteconLTspice,mientrasqueunafuentedecomportamientodeberácalcular,enelmomento,todoslospuntos,loquelaharápropensaaerrores.
TLDR:useloselementosdeLTspicesobrelasfuentesdecomportamientosiemprequeseaposible.
AquíhayunejemplofalsodeunconversorBuck:
A1
yV2
hacenqueelcomparadorylarampa,G1
yC2
seanelamplificadordeerror.Todoslosvaloresestánhechoscompletamente,soloparaejemplificación,solo.Sinecesitauncontroladordehistéresis,solouseA1
comocomparadordeSchmittyconfigurelosparámetrosapropiadosvt
yvh
.Puedenecesitarmáselementosqueunaúnicafuentedecomportamiento,peroavecesnopodráhacerfrentealrangodinámico.Valelapenaelcambio.Avecesmássimplenoesmejor.
DesglosandolaseccióndePWMyusandotuentrada(500Hz
,5V
,2s
),asíescomoseve:
Lo que hay entre los nodos o
y f
es un Butterworth de segundo orden con fc=50Hz@-3dB
(el parámetro fc
). Observe que no hay un paso de tiempo impuesto en .tran
, pero también que hay una rampa 95%
. Podría usar un 100%
( 1/f
para Trise
y Tperiod
, cero para Ton
y Tfall
), pero LTspice se ve forzado a hacer dos puntos de cero coincidentes, lo que se traduce en una resolución deficiente : asume que sabes lo que estás haciendo y omite los pasos de tiempo, lo que da como resultado, más o menos, lo que tienes en tu OP. Solo uno de los parámetros de la fuente se puede establecer en cero para una buena resolución.