LTSPICE - Cómo crear PWM con tiempo de subida

0

Es fácil crear un circuito PWM simple utilizando LTSPICE, como:

VIN VSIN 0  SIN(0 1 10 0 0)
 VP VTRI 0 PULSE(-1.5 1.5 0 9.998m 1u 1u 10m)
 B1 VOUT 0 V=U(V(Vtri)-V(Vsin))*5

Pero en las simulaciones de reflexión de voltaje, necesito que el flanco ascendente de PWM sea más realista, es decir, con un retardo de tiempo en el flanco ascendente como este:

HeintentadousarunPULSO,perosufrecuenciaytiemposonfijos.

Loquenecesitoesalgoqueactiveunpulsodeterminadoounafuentedevoltajedecomportamientoquepuedacrearunpulsosisecumpleciertacondición.Elpulsodebedurartantocomolacondiciónseaverdadera,comoocurreconlaPWMconvencional.

Unejemplodeloqueheintentado,peroquecausóunerrordesintaxis:

ElerrordesintaxisesqueenelelementoB2(aladerecha),nosepuedeusar"V1" como salida de voltaje. Tiene que ser 5 (voltios) o algo así.

¿Cómo soluciono esto? Acabo de comenzar a usar SPICE hace dos días, y apuesto a que hay algunos trucos que aún no conozco

    
pregunta fluxmodel

3 respuestas

0

Esto funciona para mí.

TuvequecambiarelprefijoaBVpara[B]V4.Ytambiénusarnombresdered;noparecetomarlosnombresdelasfuentesdevoltajeenesasexpresionesdecomportamiento.

  

Loquenecesitoesalgoqueactiveunpulsodeterminadoounafuentedevoltajedecomportamientoquepuedacrearunpulsosisecumpleciertacondición.

Sinembargo,loqueparecequerealmentequieresesunarampaactivadaporPWL:

Además,loqueestásdescribiendonosellamaenrealidad PWM . Si de alguna manera necesita modular el ancho en lugar de la activación, consulte esta solución .

Bueno, suponiendo que solo desea un aumento no cero (como en su gráfico) pero cero tiempo de caída, y desea que combinado con PWM, básicamente debe combinar las dos soluciones anteriores:

    
respondido por el Fizz
0

Intente utilizar una fuente de voltaje lineal por piezas (en el cuadro de diálogo avanzado).

Esto utiliza una secuencia de pares de valores de tiempo y puede definirse en el diálogo de origen o desde un archivo.

LTSpice se interpolará de un par dado al siguiente de manera lineal.

Si comienzo con tiempo = 0 y v = 0 y el siguiente par está en tiempo = 1m con v = 3, entonces obtendrás una señal ascendente a 3v / milisegundo.

Agregue más puntos para obtener el wavrform preciso que desea.

Esto es increíblemente útil cuando ha medido una forma de onda y la ha guardado desde un ámbito para hacer un análisis hipotético con un circuito en el simulador, para nombrar al menos otra aplicación.

    
respondido por el Peter Smith
0

Los métodos propuestos funcionarán, pero está mucho mejor utilizando un elemento dedicado para este trabajo: [Digital]/diffschmitt :

Puede especificar tiempos de subida y caída separados a través de trise y tfall . Para más información, consulte la ayuda, LTspice > Circuit Elements > A. Special functions .

    
respondido por el a concerned citizen

Lea otras preguntas en las etiquetas