Un subsistema con salidas aleatorias (sin microcontroladores)

1

Estoy tratando de hacer un subsistema que tiene varias salidas. De forma predeterminada, todas las salidas son 0. Cuando está activado, quiero que al azar establezca una salida en 1, y haga que permanezca en 1 hasta que se reinicie (el procedimiento de reinicio puede ser cualquier cosa, pero es preferiblemente un pulso). Soy un poco novato en electrónica, pero conozco todos los conceptos básicos. Aparte de los componentes básicos, tengo acceso a 555s y la mayoría de las series 4000.

Preferiblemente, me gustaría evitar el uso de un microcontrolador.

    
pregunta Bluefire

3 respuestas

2

Cuatro posibilidades vienen a la mente:

  1. Su idea de un astable conectado a un 4017, podría funcionar, si lo usa

    • Un pulso de disparo de 1000 o más veces el período del oscilador astable (posiblemente utilizando un monoestable 555 para extender el pulso de disparo existente)
    • Un termistor, que controla la frecuencia de la oscilación astable o la duración del impulso de disparo.

    En este caso, el pequeño calentamiento / enfriamiento aleatorio del termistor por las corrientes de aire puede ser suficiente para producir un resultado aleatorio.

  2. Si esto no funciona, un microcontrolador es la opción más fácil (esto probablemente sea cierto incluso si no tienes experiencia con los microcontroladores).

  3. El tipo de algoritmo que se implementaría dentro de un microcontrolador puede construirse a partir de la lógica de la serie 4000, pero no sería del todo sencillo. Con un puñado de registros de desplazamiento y compuertas XOR puede crear un registro de desplazamiento de realimentación lineal (LFSR), que produce un flujo de bits pseudoaleatorio. Podría demultiplexar algunos bits de los registros de desplazamiento para habilitar una de las N salidas (más fácil si N es una potencia de dos). Es posible que deba cronometrar el LFSR más de una vez por salida, para evitar fuertes correlaciones en la salida aleatoria.

  4. Si realmente necesita una fuente genuina de aleatoriedad, una opción de bajo costo es utilizar ruido de ruptura de avalanchas de transistores para generar un flujo de bits aleatorio, y luego usar un registro de desplazamiento y un demultiplexador de nuevo para generar la salida aleatoria de uno de N.

respondido por el Chris Johnson
1

Haga una radio AM o transistor simple de un transistor, como descrito aquí (o use la salida de un comercial) y ajústelo entre estaciones para generar estática, su fuente aleatoria. (Supongo que su ubicación será fija, por lo que puede encontrar un punto confiable entre estaciones locales). Alimente la salida que normalmente entra al altavoz en un comparador y configúrelo de modo que el comparador se dispare en los picos provenientes de la radio.

Cuando la radio está encendida, inicie un temporizador para detectar el primer pico. Durante el período de tiempo, cuente las salidas del comparador. Usa esos para alimentar un contador. Cuando el cronómetro se detenga, deje de contar y use el valor del contador para seleccionar sus 1 de N salidas. Necesitará ajustar experimentalmente el temporizador para obtener el número de picos que promedian la mitad del valor de su contador.

    
respondido por el tcrosley
0

No estoy del todo seguro de lo cómodo que estás con la electrónica. Aquí hay algo que encontré hace mucho tiempo cuando intentaba hacer algo muy similar (aunque no estoy seguro de cómo terminé haciéndolo, para ser honesto).

enlace

En cierto sentido, es un resumen de una serie de posibles soluciones / discusiones publicadas en revistas revisadas por pares entre 1955 y 1996. Las últimas incluyen también esquemas en bruto y podrían reproducirse.

El enlace ha sido válido al menos desde 2007. En caso de que en un futuro lejano desaparezca, Internet Archive o Way Back Machine o uno de esos servicios probablemente tendrán una copia en caché.

    
respondido por el Chintalagiri Shashank

Lea otras preguntas en las etiquetas