Estoy tratando de simular un Bubba Ocsillator en MATLAB, Simulink. El problema es que no puedo generar la sinusoidal del circuito.
Este a continuación es mi circuito:
Y este a continuación es mi resultado (simulado durante 10 segundos):
Resultado ampliado (simulado durante 10 segundos):
¿Qué hice mal? Cómo lograr una forma de onda sinusoidal pura de este oscilador bubba...
Ha creado un modelo ideal (OPAMP de ancho de banda infinito, voltaje de salida infinito, etc.) que es condicionalmente estable y lo ejecutó.
mira tu eje y, tiene un alcance de 1.5x ¡GIGANTE!. Esto es lo que está causando una excepción... se ha quedado sin resolución para representar este "oscilador" inestable
SI se usa un OPAMP más cercano a la realidad (+-15V, ganancia limitada a 100,000) se comporta
Sí oscila, puedes ver que lo hace en el lado derecho de la gráfica. Si hace zoom en el lado izquierdo, también debería ver la oscilación, pero con una amplitud mucho menor.
Su concepto erróneo proviene del hecho de que primero debe comprender la teoría del funcionamiento de los osciladores .
Sugiero leer sobre el criterio de estabilidad de Barkhausen .
Esto establece que un oscilador oscila cuando la ganancia de bucle es mayor que 1 .
Para el oscilador Bubba este es el caso.
Sin embargo, cuando la ganancia de bucle permanece por encima de 1, la amplitud de la oscilación aumentará y seguirá aumentando.
Ha utilizado amplificadores operacionales ideales (sospecho) y eso significa que la amplitud de la oscilación aumentará y seguirá aumentando. Eso es lo que muestra tu trama.
En el artículo sobre el oscilador Bubba, el autor utiliza amplificadores operacionales reales . Estos amplificadores operacionales no pueden generar voltajes infinitos, por lo que en algún voltaje su voltaje de salida será menor de lo que idealmente esperaría . Y eso significa que la ganancia de bucle se vuelve más pequeña. Tal oscilador con amplificadores operacionales reales estabilizará la amplitud de su señal en el punto donde la ganancia de bucle es precisamente uno .
Y eso dará como resultado una amplitud estable.
Entonces, la solución a su problema es: use (modelos de) opamps menos ideales.
Ha comenzado a oscilar. La amplitud crece exponencialmente. La simulación se detiene cuando alguna corriente, voltaje o variable interna alcanza el límite del rango numérico disponible.
Tome un par de diodos zener conectados en serie con los ánodos uno contra el otro. Inserte ese circuito limitador en paralelo con uno de los condensadores. La amplitud no crece más hasta el infinito.
Esta no es una buena solución si necesita una onda sinusoidal de baja distorsión. Un buen oscilador de onda sinusoidal analógica tiene un circuito de control especialmente diseñado que verifica la amplitud de salida y reduce la ganancia hasta que la amplitud de salida sea la deseada. El controlador busca continuamente la ganancia correcta pero tiene la inercia adecuada que evita la distorsión de los pulsos sinusoidales. En teoría de control lo llaman controlador PI. Necesita un componente controlado por voltaje que tenga ganancia, atenuación o resistencia variable. He visto en circuitos prácticos incluso una resistencia NTC utilizada aquí.
En Simulink, puede tomar un rectificador, alimentarlo desde su onda sinusoidal, bombear su salida a un integrador RC de tiempo constante prolongado y reemplazar uno de sus seguidores de voltaje con un circuito que normalmente tiene ganancia = 1, pero reduce la ganancia con una pendiente pronunciada tan pronto como ya que el voltaje en el integrador RC excede un cierto límite.
Desafortunadamente, no tengo Matlab ni Simulink, solo imitaciones de bajo costo, pero funciona allí.
Solo para agregar otra publicación más sobre esto. Aquí hay un circuito que realmente debería funcionar, usando un quad LT1631 y un solo riel de fuente de alimentación:
simular este circuito : esquema creado con CircuitLab
La frecuencia de salida debe estar cerca de aproximadamente o cerca para los valores dados de y se muestra en el esquema anterior.
Aquí está la salida de LTSpice:
Debería poder replicar resultados similares en su propio simulador.
(Para un arreglo más económico, pruebe el dispositivo de paquete cuádruple TI LMV324IPWR).
La ganancia es insuficiente para sostener la oscilación. Necesita una ganancia mínima de 4. Con las resistencias que se muestran (1.5M y 360k, su ganancia es mucho menor que eso).
He construido el circuito y NO funciona. De hecho, la mayoría de los circuitos osciladores bubba en Internet no pueden funcionar (excepto en un programa de simulación).
Sea mi invitado, constrúyalos con piezas reales en una placa de prueba y compruébelo usted mismo.
Trevor_G
Martín Petrei
dravidiano