Wie kann man einen elektrischen zufallsgenerator bauen?

6 Antworten

Ich würde einen digitalen Zähler nehmen, der mit einem manuell bedienten, prellenden Kontakt asynchron getaktet wird.

  • Wie fein soll die Auflösung sein (wieviele verschiedene Werte soll der Generator erzeugen)?
  • Soll er ständig Zufälle erzeugen oder erst auf Verlangen/Knopfdruck, so wie wenn man die Münze wirft?
  • Wie soll er den Zufallswert ausgeben? Als Zahl auf einem Display? Als physikalische Grösse, z.B. Helligkeit, Spannung? Als Byte an einer digitalen Schnittstelle?

Firas2 
Beitragsersteller
 21.05.2016, 12:53

10 ungefähr

auf Knopfdruck 

als "Stromleitung" damit meine ich eine der Ausgänge wird Strom (egal ob positiv oder negativ, denn man kann es sehr einfach umkehren...) aussenden.

0
atoemlein  21.05.2016, 22:43
@Firas2

Dann nähme ich den Standard-10er-Zählerbaustein 4017.

Bei dieser Schaltung brauchst du 10 Leuchtdioden, und der Zufall lässt dann jeweils eine dieser 10 LEDs leuchten.

Wär das was?
Kannst du elektronische Schemas lesen?
Dann schicke ich dir einen Vorschlag.

0

Ich selbst würde einen Microcontroller verwenden, z.B. einen ATtiny24 (je nach dem, wie viele Pins ich benötige).

Der Nachteil von einem Microcontroller wäre, dass man zusätzlich Programmierkenntnisse braucht und außerdem ein "Programmiergerät", wozu man aber z.B. einen Arduino verwenden kann, wenn man einen hat.

Der Vorteil ist, dass man mit einem einzigen Chip extrem viel machen kann - man braucht also keine komplizierte Schaltung aus mehreren Chips.

Egal, ob du einen Microcontroller nimmst oder einzelne Chips würde ich es folgendermaßen machen:

Einen Zähler, der dauerhaft schnell zählt; z.B. von 0-5, wenn du einen Würfel bauen willst.

Wenn du die Taste drückst, wird der aktuelle Zählerwert ausgelesen und als Zufallswert ausgegeben.

Wenn du keinen Microcontroller verwenderst, würdest du den Zähler vielleicht mit 100 Hz zählen lassen und beim Druck auf die Taste den Zählerwert in D-Flip-Flops übernehmen...

zB Spannung genau messen und nur die Kommastellen nehmen und dann eventuell mit der Uhrzeit multiplizieren, aber auch nur mit den zehntel und hunderstel Stunden. Dann vermeidest vorne die 6er Grenze


Firas2 
Beitragsersteller
 21.05.2016, 12:59

Real, und nicht ideal

0
kuku27  21.05.2016, 18:34
@Firas2

was immer du damit meinst

ähnliche Methoden sind bei Franzis beschrieben. Eingebaute Zufallsgeneratoren liefern ohne solche Tricks immer die gleichen Ergebnisse.

0

Reicht nicht die Bibliotheksfunktion für Zufallszahlen, die Deine Programmiersprache hat? Oder ein md5-hash der microtime?

Sonst halt ein extra chip oder ein Geiger-Zählrohr. Radioaktiver Zerfall ist absolut zufällig.

Woher ich das weiß:Studium / Ausbildung – Physikstudium

Firas2 
Beitragsersteller
 21.05.2016, 12:58

Radioaktiver Zerfall ist nicht 100% zufällig, denn wenn vor dem Geigerzählrohr Radioaktive Stoffe sind, ist es anderst, als wenn nichts davor ist... aber ich brauche es nicht 100% zufällig. mir reicht ein ne555 microchip, aber ich möchte, dass er auf knopfdruck funktioniert, und nicht, dass er die ganze Zeit eine bestimmte Frequenz hat.

0
segler1968  21.05.2016, 14:48
@Firas2

Radioaktiver Zerfall ist absolut zufällig! Es gibt keinen Weg vorherzusagen, wann ein Atom zerfällt. Damit sind die Impulse eines Geigerzählers auch zufällig, zum Beispiel die Zeit zwischen zwei Clicks.

Wird auch real so dafür angewendet. Aber meistens reichen ja Pseudozufallszahlen aus

0
lowrider0  24.05.2016, 23:44
@Firas2

Und was stört es dich, wenn der die ganze Zeit am Zählen ist? Ist genauso "Zufall", wie wenn er nur dann zählt, wenn du den Taster drückst. 

0