Abschnittsübersicht

    • Spielwürfel werden in vielen verschiedenen Spielen zum Erzeugen eines zufälligen Symbols verwendet. Die mit Abstand meistverbreiteten Spielwürfel sind jene mit den Ziffern 1 bis 6 oder entsprechend vielen Punkten, den sogenannten Augen.

      In der hier vorgestellten, elektrischen Umsetzung eines solchen Würfels werden insgesamt 7 Leuchtdioden zur Darstellung des Ergebnisses verwendet. Die Erzeugung pseudo-zufälliger Zahlen erfolgt dabei über einen linearen Kongruenzgenerator, welcher für jeden neuen Durchlauf einen sich ändernden Startwert verwendet.

    • Bevor du diesen Lötbausatz verwendest, lies bitte diese Gebrauchsanleitung. Bewahre sie an einem Ort auf, der für alle Benutzer leicht zugänglich ist.

      Bitte beachte beim Umgang mit diesem Produkt die üblichen Vorsichtsmaßnahmen mit Geräten, die zur Funktion elektrische Spannung benötigen. Insbesondere sind die folgenden Sicherheitshinweise einzuhalten: 

      • Dieser Bausatz darf auf gar keinen Fall mit der Netzspannung verbunden werden, es besteht sonst Lebensgefahr! Bitte verwende ausschließlich die beiliegenden Batterien.
      • Dieser Bausatz ist als Lernmaterial ausgelegt und darf keine Produktions- oder Steueraufgaben übernehmen!
      • In Schulen, Universitäten, Werkstätten und anderen Bildungseinrichtungen ist das Verlöten und Betreiben dieses Bausatzes durch geschultes Personal verantwortlich zu überwachen.
      • Dieser Bausatz darf nicht in Umgebungen betrieben werden, in denen brennende Gase oder Staub auftreten können.
      • Dieser Bausatz darf nicht auf leitenden Oberflächen betrieben werden, da sonst Kurzschlüsse entstehen können.
      • Im Falle einer Reparatur dürfen nur originale Ersatzteile verwendet werden. Ansonsten kann dies zu ernsthaften Personen- oder Sachschäden führen! Eine Reparatur ist nur durch professionelles Personal durchzuführen.
      • Bitte achte darauf, dass du den Bausatz von der Stromquelle trennst, bevor du Lötarbeiten vornimmst. Ansonsten kann dies die Schaltung beschädigen!
    • Stück Pos.-Nr. Bezeichnung / Wert
      1 - Platine "Würfel"
      1 C1 100 nF Kondensator
      2 C2, C3 2,2 μF Kondensator
      7 D1 - D7 Leuchtdiode rot, 5mm
      1 J1 Barrel Jack Anschlussbuchse
      7 R1 - R7 Widerstand 300 Ω
      1 U1 ATtiny24 Mikrocontroller mit Sockel
      1 U2 +5 V Spannungsregler
    • Vorbereitung

      Bitte richte zunächst einen Arbeitsplatz mit hitzeresistenter Unterlage her und lege alle Bauteile aus diesem Bausatz bereit.

      Heize anschließend den Lötkolben auf eine Temperatur von 360 °C auf und lege einen feuchten Schwamm oder Messingwolle für die Reinigung bereit.
    • Schritt 1: 100 nF Kondensator (C1)

      In der Regel bietet es sich an, das mechanisch kleinste Bauteil zuerst zu verlöten. Dieses ist der kleine 100 nF Kondensator, welcher später dafür sorgt, dass der Mikrocontroller die benötigte Spannung erhält und fehlerfrei funktioniert.

      BITTE BEACHTE:
      Die beiden benötigten Kondensatoren sind orange und haben keine Polarität.

    • Schritt 2: 2,2 μF Kondensatoren (C2, C3)

      Damit unsere Schaltung später gut funktioniert, benötigen wir noch zwei weitere Kondensatoren am Ein- und Ausgang des +5 V Spannungsreglers.

      BITTE BEACHTE:
      Die Kondensatoren sind blau und tragen die kleine schwarze Aufschrift „225“.

    • Schritt 3: 300Ω Widerstände (R1 - R7)

      Nun folgen die Vorwiderstände für die Leuchtdioden, welche wir später verlöten. Diese Widerstände begrenzen den Strom durch die Leuchtdioden, um ein Durchbrennen zu verhindern.

    • Schritt 4: Sockel für den Mikrocontroller (U1)

      Als nächstes folgt der Sockel für den Mikrocontroller. Dieser sorgt dafür, dass du diesen aus der Schaltung entnehmen und auch selber programmieren kannst.

      BITTE BEACHTE:
      Der Sockel hat eine kleine Einkerbung im schwarzen Plastik. Diese muss entsprechend der Markierung auf der Platine verlötet werden!

    • Schritt 5: Spannungsregler (U2)

      Jetzt folgt der Spannungsregler. Dieser sorgt dafür, dass Mikrocontroller und Leuchtdioden die Spannung erhalten, die sie zum Betrieb benötigen.

      BITTE BEACHTE:
      Der Spannungsregler ist halbrund und muss entsprechend der Markierung auf der Platine verlötet werden.

    • Schritt 6: Taster (SW1)

      Um später auch den Würfel werfen zu können, ist eine Nutzereingabe erforderlich. Diese erfolgt über einen Taster, der unten rechts auf der Platine verlötet wird.

    • Schritt 7: Leuchtdioden (D1 - D7)

      Zur Anzeige des gewürfelten Ergebnisses werden insgesamt sieben Leuchtdioden verwendet.

      BITTE BEACHTE:
      Hier ist unbedingt auf die Einbaurichtung zu achten! Der kürzere Anschluss der Leuchtdiode muss mit dem eckigen Kontakt auf der Platine verlötet werden!

    • Schritt 8: Barrel Jack Anschluss (J1) 

      Verlöte jetzt den großen schwarzen Stromanschluss an der dafür vorgesehenen Stelle.

    • Schritt 9: Mikrocontroller (Sockel, U1)

      Abschließend muss der Mikrocontroller in den Sockel eingesetzt werden. Bitte verwende hierbei keine Gewalt, da sich sonst die Beine verbiegen oder abbrechen. Am leichtesten ist es, den Mikrocontroller zuerst auf einer Seite einzusetzen.

      BITTE BEACHTE:
      Die Einkerbung des Mikrocontrollers muss mit der entsprechenden Markierung auf der Platine übereinstimmen.

    • Visuelle Überprüfung

      Schaue dir vor Anschließen der Batterie zunächst die Lötstellen an. Diese sollten leicht schimmern und kegelförmig aussehen. Ist dies nicht der Fall, dann erwärme die entsprechende Lötstelle bitte erneut.

      Außerdem sollten keine zwei Lötstellen miteinander verbunden sein. Insbesondere bei dem Temperatursensor solltest du darauf achten, da hier die Anschlüsse nah beieinander liegen.

      Bitte fahre mit dem folgenden Punkt fort, wenn du die visuelle Kontrolle erfolgreich abgeschlossen hast.

    • Schaltung auf Kurzschluss prüfen

      Jetzt wollen wir sicherstellen, dass auf der Schaltung kein Kurzschluss ist, da dies sonst schlimmstenfalls unsere Schaltung beschädigen würde. Stelle dazu das Multimeter zunächst in den Modus „Durchgangsprüfung“ (auf dem Multimeter mit dem Symbol markiert) und schließe die Messspitzen an. Die schwarze Messspitze (GND) kommt an den Anschluss „COM“, der rote Anschluss an die mit „“ beschriftete Buchse, wie in der rechten Abbildung dargestellt ist.
      Bitte führe nun zwei Messungen durch. Halte die Messspitzen dazu bitte an folgende Kontaktflächen auf der Unterseite der Platine (in der rechten Abbildung rot umrandet):

      • VCC und GND
      • +5V und GND

      Sollte das Multimeter einen Ton abspielen oder aufleuchten, hast du einen Kurzschluss. Führe in diesem Fall bitte erneut eine visuelle Überprüfung durch.
      Wenn du keinen Kurzschluss feststellst, dann prüfe bitte noch einmal die Einbaurichtung des Mikrocontrollers. Die Einkerbung sollte oberhalb der entsprechenden Markierung auf der Platine sein. Anschließend kannst du die Batterie anschließen und mit dem Funktionstest fortfahren.
    • Funktionstest

      Nachdem du deine Schaltung visuell und auf Kurzschlüsse überprüft hast, kannst du die Batterie anschließen. Sobald du auf den Taster drückst, siehst du eine Würfel-Animation. Lässt du diesen los, stoppt die Animation und dir wird ein pseudo-zufälliger Wert von 1 bis 6 angezeigt.

    • Zufall

      Als Zufall bezeichnen wir ein Ereignis, welches ohne erkennbares Muster und ohne kontrollierte Entscheidungen, eintritt. Typische Zufallsexperimente sind der Münzwurf, das Werfen eines Würfels (wie es auch dieser Bausatz behandelt), Ziehen von Kugeln aus einer Urne und viele weitere.

    • La-Place-Zufallsverteilung

      Die Laplace-Zufallsverteilung bezeichnet eine besondere und wichtige Zufallsverteilung, bei der das Eintreten jedes möglichen Ergebnisses gleich wahrscheinlich ist. Das Werfen eines idealen Würfels führt zu einer Zahl von 1 bis 6. All diese Ergebnisse können mit einer Wahrscheinlichkeit von \(\frac{1}{6}\) eintreten. Ein weiteres Beispiel ist der Münzwurf: Unter Vernachlässigung der Chance, dass die Münze genau auf der Kante landet, gibt es hier entweder 'Kopf' oder 'Zahl'. Beide Ereignisse haben eine Wahrscheinlichkeit von 50%. 

    • Was sind Pseudo-Zufallszahlen?

      Ein Mikrocontroller ist ein äußerst kompakter Computer, der dazu geschaffen wurde, vordefinierte Abläufe, auch Programme genannt, auszuführen. In diesem Prozess ist das Ergebnis jedes Rechenschritts deterministisch, das heißt, vorhersehbar.

      Wenn jedoch jeder Rechenschritt vorhersehbar ist, wie können dann zufällige Zahlen erzeugt werden? Die kurze Antwort lautet: Das ist nicht möglich! Deswegen werden stattdessen sogenannte Pseudozufallszahlen berechnet. Diese Zahlen wirken zufällig, obwohl ihnen eine vergleichsweise einfache Berechnung zugrunde liegt. Nehmen wir ein Beispiel:

      1, 2, 3, 4, 5, 6, 1, 2, ... 

      Diese Zahlenfolge kann zufällig sein, wirkt jedoch berechenbar. Es folgt immer die nächstgrößere Zahl auf dem Würfel. Nach der Zahl 6 startet die Folge wieder von vorne. Im Gegensatz dazu steht diese Abfolge:

      1, 3, 4, 6, 2, 2, 5, 1, ... 

      Hier fällt es schwer, ein Muster zu erkennen. Entsprechend lässt sich die nächste Zahl nicht vorhersagen - und genau so funktionieren Pseudozufallszahlen.

    • Berechnung von Pseudo-Zufallszahlen

      Die Berechnung von Pseudo-Zufallszahlen kann auf viele unterschiedliche Wege erfolgen. In diesem Kurs wird der sogenannte Lineare Kongruenzgenerator beschrieben, da dieser auch auf dem Mikrocontroller im Bausatz implementiert wurde. 

      Lass dich vom Namen nicht abschrecken, denn die dahinterliegende mathematische Funktion eines linearen Kongruenzgenerators ist eigentlich ziemlich einfach. Betrachten wir zunächst ein konkretes Beispiel:

      \( seed_{0} = 0 \)

      \( seed_{i+1} = 4 \cdot seed_i + 3 \)

      In diesem Beispiel haben wir einen Startwert \(seed_0\) von 0 und eine Berechnungsvorschrift für alle darauf folgenden Zufallswerte. Wichtig ist hierbei zu verstehen, dass der nächste Zufallswert \(seed_{i+1}\) immer vom vorherigen Wert \(seed_i\) abhängt.

      Mit der Berechnungsvorschrift können jetzt beliebig viele Werte ermittelt werden. Nachfolgend findest du die ersten 10 Zufallszahlen der Folge:

      \( seed_{0} = 0 \)

      \(seed_{1} = 4 \cdot seed_{0} + 3 = 4 \cdot 0 + 3 = 3\)

      \(seed_{2} = 4 \cdot seed_{1} + 3 = 4 \cdot 3 + 3 = 15\)

      \(seed_{3} = 4 \cdot seed_{2} + 3 = 4 \cdot 15 + 3 = 63\)

      \(seed_{4} = 4 \cdot seed_{3} + 3 = 4 \cdot 63 + 3 = 255\)

      \(seed_{5} = 4 \cdot seed_{4} + 3 = 4 \cdot 255 + 3 = 1023\)

      \(seed_{6} = 4 \cdot seed_{5} + 3 = 4 \cdot 1023 + 3 = 4095\)

      \(seed_{7} = 4 \cdot seed_{6} + 3 = 4 \cdot 4095 + 3 = 16383\)

      \(seed_{8} = 4 \cdot seed_{7} + 3 = 4 \cdot 16383 + 3 = 65535\)

      \(seed_{9} = 4 \cdot seed_{8} + 3 = 4 \cdot 65535 + 3 = 262143\)

      \(seed_{10} = 4 \cdot seed_{9} + 3 = 4 \cdot 262143 + 3 = 1048575\)

    • Berechnung von Pseudo-Zufallszahlen - Fallbeispiel Würfel

      Im vorherigen Abschnitt hast du einen allgemeinen linearen Kongruenzgenerator kennengelernt. Dieser hat immer größer werdende Werte berechnet. Im Falle unseres Würfels ist dies ein Problem, da wir lediglich Werte von 1 und 6 benötigen. Dafür wird eine weitere Rechenoperation benötigt: Die Division mit Rest, oder auch Modulo.

      Betrachten wir beispielsweise mal Modulo 10, geschrieben % 10. Dann ergeben sich folgende Rechenergebnisse:

      \( 9 \% 10 = 9 \)

      \( 14 \% 10 = 4 \)

      \( 108 \% 10 = 8 \)

      \( 10 \% 10 = 0 \)

      Für unseren Würfel können wir später einfach Modulo 6, geschrieben % 6, verwenden. Dies resultiert in Werte von 0 - 5. Um noch einen Minimalwert von 1 zu erhalten, müssen wir 1 addieren. Insgesamt lautet die allgemeine Rechenvorschrift für einen Zufallsgenerator für Würfel-Werte:

      \(seed_{i+1} = (multiplier \cdot seed_i + increment) \% 6 + 1\)

      Die Werte für \(multiplier\) sowie \(increment\) können beliebig gewählt werden. Für folgendes Beispiel wählen wir, wie im letzten Abschnitt auch, \(multiplier = 4\) und \(increment = 3\). Mit einem Startwert von 0 ergeben sich somit folgende erste 10 Zahlen der Folge:

      \(seed_{0} = 0\)

      \(seed_{1} = 4 \cdot seed_{0} + 3 = 4 \cdot 0 + 3 = 4\)

      \(seed_{2} = 4 \cdot seed_{1} + 3 = 4 \cdot 4 + 3 = 2\)

      \(seed_{3} = 4 \cdot seed_{2} + 3 = 4 \cdot 2 + 3 = 6\)

      \(seed_{4} = 4 \cdot seed_{3} + 3 = 4 \cdot 6 + 3 = 4\)

      \(seed_{5} = 4 \cdot seed_{4} + 3 = 4 \cdot 4 + 3 = 2\)

      \(seed_{6} = 4 \cdot seed_{5} + 3 = 4 \cdot 2 + 3 = 6\)

      \(seed_{7} = 4 \cdot seed_{6} + 3 = 4 \cdot 6 + 3 = 4\)

      \(seed_{8} = 4 \cdot seed_{7} + 3 = 4 \cdot 4 + 3 = 2\)

      \(seed_{9} = 4 \cdot seed_{8} + 3 = 4 \cdot 2 + 3 = 6\)

      \(seed_{10} = 4 \cdot seed_{9} + 3 = 4 \cdot 6 + 3 = 4\)

      Hier siehst du auch direkt schon einen Nachteil von pseudo-Zufallszahlen: Wenn die Werte der Berechnungsvorschrift ungünstig gewählt wurden, dann wiederholt sich die Zahlenfolge. Obiges Beispiel resultiert in

      4, 2, 6, 4, 2, 6, 4, 2, 6, ...

      wodurch die Berechnung wieder absolut vorhersehbar ist. Einige Zahlenwerte, wie z.B. 1, 3 und 5 werden nie erreicht. Für die Implementierung auf dem Mikrocontroller wurden deshalb möglichst große und unterschiedliche Werte gewählt, da so möglichst viele verschiedene Zufallszahlen entstehen, ohne dass sie sich wiederholen.

    • Um das Gesetz der großen Zahlen praktisch zu zeigen, werden in diesem Abschnitt zwei zufällige Startwerte gewählt. Anschließend erfolgt das Würfeln zunächst 30 mal. Danach erfolgt eine größere, automatisierte Messreihe mit 300 Millionen Würfen.

    • Experiment #1: Seed = 4053

      Bei einer kleinen Messreihe mit 30 Würfen erwarten wir bei einem idealen Würfel, dass jede Zahl 5 mal gewürfelt wird. Tatsächlich, wie im rechten Diagramm zu sehen ist, kommt die Zahl '1' tatsächlich 9 mal vor und ist damit etwa doppelt so wahrscheinlich wie erwartet. Lediglich die Zahlen '4', '5' und '6' entsprechen der Erwartung.
      Die größere Messreihe zeigt eine fast ideale Gleichverteilung. Die Zahl '5' kam etwa 5000 mal häufiger vor, als erwartet. Dies entspricht in Anbetracht der 30 Millionen Würfe jedoch nur einem sehr geringen Fehler.
    • Experiment #2: Seed = 19564

      Eine weitere kurze Messreihe wurde mit einem größeren Startwert durchgeführt. Auch hier erhalten wir bei 30 Würfen keine Verteilung, wie wir sie erwarten würden. Tatsächlich kommt die '6' insgesamt 11 mal vor. Dies entspricht einer Wahrscheinlichkeit von mehr als 33% - wäre es also ein guter Würfel für "Mensch ärgere dich nicht"?
      Auch hier zeigt eine größere Messreihe eine fast ideale Gleichverteilung. Bei 30 Mio. Versuchen kommt die Zahl '6' nicht mehr bei 33% aller Würfe vor. Stattdessen ist die Zahl '1' nun die häufigste! Die Abweichung liegt hier jedoch nur bei verhältnismäßig wenigen Würfen.
    • Was besagt nun also das Gesetz der großen Zahlen?

      Das Gesetz der großen Zahlen besagt, dass die Häufigkeit, mit der ein Ereignis eintritt, sich der berechneten Wahrscheinlichkeit annähert, je häufiger das Experiment durchgeführt wird. Umgekehrt kann man auch sagen, dass kleine Messreihen keine Aussagekraft auf die Häufigkeit eines Ereignisses haben.

      Dieses Prinzip lässt sich auch auf ganz andere Projekte anwenden. Möchte man beispielsweise die Umgebungstemperatur messen, so ist es besser, den Sensor mehrfach auszulesen und den Mittelwert zu bilden. Dadurch werden größere Messabweichungen ausgeglichen und die Qualität des Messwertes steigt.

    • Nach Bearbeitung aller Lerneinheiten dieser Seite kannst du diesen Test hier ablegen. Nach Bestehen des Tests erhältst du ein Zertifikat. Viel Spaß und viel Erfolg!