Generación de ruido térmico a partir de una resistencia

Me gustaría crear un generador de números aleatorios basado en el ruido térmico de una resistencia, usando un opamp para amplificar el ruido y un inversor para convertir los picos resultantes en una señal digital.

Aquí está mi diseño actual:

Generador basado en ruido térmico de resistencia (revisión 0)

Cuando elimino R5 y alimente la fuente de ruido térmico de Multisim (ajustada a 10M ohm / 27C / 1MHz de ancho de banda) obtengo resultados perfectos. La salida de U2 es ruidosa, la entrada de U1A varía aproximadamente de +12 V a -12 V, y la salida de U1A me da una salida digital aleatoria. Planeo enviar esto a un PIC y hacer una corrección de sesgo allí.

El problema es que las resistencias de Multisim son ideales, o al menos lo suficientemente ideales para no producir ningún ruido. Como tal, no puedo probar esto. ¿Funcionará como espero o me estoy perdiendo algo?

Actualización n. ° 1:
dividí el amplificador operacional en tres etapas e introduje una segunda resistencia de 10 M para hacer que la entrada sea de escala media. Ahora obtengo una salida de ancho de banda mucho mayor y mi ganancia es de aproximadamente 10,000.Generador basado en ruido térmico de resistencia (revisión 1)

Actualización # 2:
Ok, creo que estamos llegando allí. Se han modificado algunos valores de resistencia y se ha agregado un punto medio.Generador basado en ruido térmico de resistencia (revisión 2)

Solo un comentario: está utilizando una ganancia de 20000 en una sola etapa de amplificador operacional. Definitivamente lo dividiría en múltiples etapas por varias razones, una de las cuales es que necesitaría un amplificador operacional de ancho de banda de ganancia bastante alto para lograr esa ganancia de 20000 a un ancho de banda de más de unos pocos cientos de hercios.
Ah, no había pensado en eso. ¿Creo que podría lograr esto con un par de opamps, o necesitaría más? ¿O hay una solución aún mejor?
Uno de mis profesores en la universidad planteó esa pregunta con algunas restricciones (desafortunadamente, no recuerdo cuáles eran) y mostró una prueba de que la ganancia óptima por etapa era e (= 2.718281828...) -- eso es un poco bajo para la realidad. , pero supongo que una ganancia en algún lugar en el rango de 10-100 por etapa sería apropiada. Probablemente lo dividiría en 3 etapas (con una ganancia de alrededor de 27 por etapa), pero no conozco sus requisitos de ancho de banda. La primera etapa tendrá que ser un amplificador operacional de bajo voltaje de compensación (vamos a mencionarlo: debe dividir R5 para que la entrada + de U2 sea de escala media).
He actualizado el diseño para reflejar su entrada. Los resultados son más o menos los mismos, pero la simulación tarda mucho más en ejecutarse cuando tengo un visor adjunto, lo que sugiere que el ancho de banda resultante es significativamente mayor que antes. ¡Sin embargo, todavía no estoy seguro de si esto producirá los resultados correctos en la vida real!
Estás más cerca... Con los amplificadores operacionales funcionando con un solo suministro, tu ganancia aún hará que los amplificadores operacionales se saturen. Debe agregar ganancia en relación con la escala media del rango de entrada opamp... por lo que mi sugerencia de dividir R5 probablemente lo haya desviado... sería mejor crear un punto de escala media de suministro (por ejemplo, un par de resistencias de 1K dispuestas en un divisor de voltaje, el nodo medio es la "salida", con el capacitor pasando a tierra -- 0.1uF probablemente esté bien) y luego conecte todas sus resistencias de 1.0K allí, así como una resistencia de 10M entre el punto de escala media y la primera entrada + ....
... necesita usar el mismo punto de escala media porque si usó dos puntos de escala media separados, con una ganancia de 20,000, si tiene incluso 1mV de descuento, eso crearía una compensación de salida de 20V. (O podría acoplar CA cada etapa). Por cierto, no soy un experto en fuentes de ruido; Creo que hay una manera de hacer esto con uno o dos HC04 como pseudoamplificadores, pero no recuerdo dónde vi esto.
Gracias por la ayuda. Creo que he hecho los cambios sugeridos. Sin embargo, todavía no puedo averiguar cómo hacer que Multisim tenga en cuenta el ruido térmico sin agregar explícitamente la fuente de ruido :(
Oh, en realidad, parece que estos nuevos cambios lo rompieron. Acabo de obtener -40 V CC ahora estoy usando el punto medio.
Todo se ve bien, excepto C2, que debe conectarse entre tierra y el punto medio de R12, R11. -40V CC?! creo que el software se está confundiendo... ¿cuál es la corriente de polarización de entrada de un 3554AM?
También es posible que deba amortiguar este punto medio artificial con un cuarto opamp para que sea insensible a los cambios causados ​​por las corrientes a través de las resistencias de 1K. suspiro. Lo siento por no darte información 100% correcta.
El modelo indica Ib1 = 1.2e-011Ay Ib2 = 8e-012A, aunque después de mover esa tapa (¡no tengo idea de por qué la puse en el lugar equivocado!) ahora está a -18 V en lugar de -40 V y C1 está eliminando la multa de CC, dándome los resultados esperados.
¿Es obligatorio el uso de ruido térmico de resistencia en su proyecto? El ruido zener del transistor con polarización inversa (base al emisor al revés) es un ruido blanco. He construido un amplificador para uso de audio en solo dos etapas. solo busque el generador de ruido rosa de Google (produce ruido rosa, pero ese es solo el filtro en el ciclo de retroalimentación que se puede eliminar)
@miceuz: también he estado investigando otros generadores de ruido. Supongo que probablemente opte por un diseño basado en transistores con un colector flotante. En realidad, solo estaba tratando de descubrir el ruido térmico como tema de investigación.

Respuestas (1)

también tienes ruido de palomitas de maíz en el extremo frontal OA ... ya no es aleatorio

Los amplificadores operacionales generan ruido de palomitas de maíz a diferencia del ruido aleatorio del movimiento browniano térmico, por lo que su suposición no es válida. Esto funciona para el rango de ruido de microondas, pero no para el rango de frecuencia de audio, a menos que use OA de bajo ruido que sea más bajo que una resistencia. Por lo tanto, su diseño no creará un generador de números aleatorios a partir del sesgo en el dominio del tiempo del ruido de las palomitas de maíz en las partes activas.

... ¿qué? No tengo idea de lo que estás diciendo aquí.
Esta no es una respuesta realmente. Publicarlo como un comentario en su lugar.
Esto parece una respuesta a la pregunta "No puedo probar esto. ¿Funcionará como espero o me estoy perdiendo algo?" a mi.
@ noah1989: la respuesta original fue solo la primera línea, se ha editado desde entonces.
Bueno, aceptaré esto ya que responde a mi pregunta. Gracias a Jason S también, por discutir la idea conmigo :)