Morse1

Aus microbit - Das Schulbuch
Zur Navigation springen Zur Suche springen

Icon Übertragen von Geheimcode

Hallo, ich bin Robi-x01 und ich möchte mich mit meiner Freundin unterhalten können, ohne dass dies jemand anderer versteht. Dazu verwenden wir ein Geheimsprache namens Morsecode. Diese Sprache hat genauso 2 Zeichen, einen Punkt und einen Strich.

  • Wie soll das klappen?
  • Eine erste Begrüßung an dich: 50%
  • Wir werden den Micro:bit hier auch verwenden, um Informationen zu übertragen.
  • Der Morsecode hatte früher eine große Bedeutung in der Nachrichtenübertragung. Lies dazu und zur Entstehung in Wikipedia **Morsecode** nach.

Wenn man Geheimsprache vereinbart, dann muss der Sender und der Empfänger genau diesselbe Verschlüsselung und Entschlüsselung verwenden. Dazu gibt es Tabellen, die diese Schlüssel verraten. Unterhalb siehst du die Morse-Tabelle. Diese Schlüsseltabelle dürfen bei Geheimprojekten natürlich nur der Sender und der Empfänger haben.

Icon Aufgabenstellung

Mit dem BBC micro:bit kannst du Morsezeichen anzeigen und auch übertragen. Entwickle ein Programm mit dem man ein Morsekombination für einen Buchstaben oder ein Wort anzeigen und versenden kann.

  • Das Drücken der Taste A sollte einen Morsepunkt aussenden
  • Die Taste B sollte einen Morsestrich aussenden
  • Beim Empfänger sollten diese Symbole angezeigt werden
  • Mehrere Morsesymbole (Punkte und Striche) ergeben einen Buchstaben - nun muss man noch mitteilen, wann ein Buchstabe fertiggestellt ist - das macht man mit einer Pause von etwa 1 Sekunde
  • Damit haben wir einen Morseapparat
  • Die Regelmäßigkeit des Drückens der Tasten hat hier eine große Bedeutung für das Erkennen von Morsezeichen

Icon Materialien

  • Zwei BBC Micro:bit (Version V2 oder V1 mit Lautsprecher oder Kopfhörer)
  • Papier und Stift
  • Das ausgedrucke Morsealphabet (ausdruckbar mit rechter Maustaste und Grafik kopieren und drucken)

50%

  • Ein Morsegerät, wie es verwendet wurde:

Icon Zeitaufwand

  • 2 Unterrichtseinheit

Icon Schwierigkeitsgrad

borderlessborderlessborderless

Icon Kompetenzen

Du solltest bereits

  • Daten mit dem Micro:bit anzeigen können
  • Den Tastenfunktionen (A und B) verwenden können


Beim Programmieren lernst bzw. übst du

Bei dieser Aufgabe lernst du auch

  • ein neues Programm zu erstellen
  • ein fremdes Programm zu ändern

Icon Unterrichtsfächer

  • Werken
  • Informatik
  • Deutsch
  • Physik

Icon Tipps und Hilfestellungen

Erforderliche Programmierblöcke

Ziel

  • Taste A soll einen Punkt, Taste B einen Strich auf das Display schicken
  • Per Funk sollte das Zeichen versendet werden
  • Beim Empfänger soll das Zeichen angezeigt werden

  • Welcher Buchstabe wird hier im bild angezeigt?
  • Erweiterung: Es sollte ein ganzes Wort versendet werden

Blöcke

  • Nach Programmstart sollte ein Symbol zeigen, dass er Micro:bit bereit ist
  • Ein Morsezeichen (. oder -) sollte per Tastendruck angezeigt werden <spoiler text="Block">
input.onButtonPressed(Button.A, function () {
    basic.showLeds(`
        . . . . .
        . . . . .
        . . # . .
        . . . . .
        . . . . .
        `)
})
input.onButtonPressed(Button.B, function () {
    basic.showLeds(`
        . . . . .
        . . . . .
        . # # # .
        . . . . .
        . . . . .
        `)
})

</spoiler>

  • Zwei Micro:bit sollen mit Funk verbunden werden
  • Der Funkkanal muss für beide gleich lauten
  • Kein anderes Kommunikations-Paar in der Klasse darf diesen Kanal benutzen (Kanal 1 bis 255 ist möglich) <spoiler text="Block">
basic.showLeds(`
    . . # . .
    # # # # #
    . . # . .
    . # . # .
    # . . . #
    `)
radio.setGroup(25)

</spoiler>

  • Daten müssen an den zweiten Micro.bit gesendet werden
  • Sendungen können nur Buchstaben, Texte oder Ziffern sein - aber keine Bilder
  • Blöcke zum Senden von Daten <spoiler text="Block">
input.onButtonPressed(Button.A, function () {
    radio.sendString(".")
})
input.onButtonPressed(Button.B, function () {
    radio.sendString("---")
})

</spoiler>

  • Empfangen und Anzeigen von Daten <spoiler text="Block">
radio.onReceivedString(function(receivedString: string) {
    basic.showString(receivedString)  
})

</spoiler>

  • Ausgeben von kurzem Sound <spoiler text="Block">
radio.onReceivedString(function(receivedString: string) {
    music.ringTone(Note.C)
    basic.pause(200)
})

</spoiler>

  • Ausgeben von langem Sound <spoiler text="Block">
radio.onReceivedString(function(receivedString: string) {
    music.ringTone(Note.C)
    basic.pause(600)
})

</spoiler>

Eckpfeiler zur Umsetzung

  • Wenn zwei gleiche Symbole unmittelbar hintereinander angezeigt werden, dann erkennt man schwer, dass es zweimal dargestellt wurde
  • Untersuche diese beiden Darstellung, in beiden Fällen wird derselbe Buchstabe gesendet: -..
  • Versuche diese drei Zeichen (Strich, Punkt, Punkt) mit dem Micro:bit-Programm darzustellen <spoiler text="Block">
input.onButtonPressed(Button.A, function () {
    basic.showLeds(`
        . . . . .
        . . . . .
        . . # . .
        . . . . .
        . . . . .
        `)
})
input.onButtonPressed(Button.B, function () {
    basic.showLeds(`
        . . . . .
        . . . . .
        . # # # .
        . . . . .
        . . . . .
        `)
})

</spoiler>

  • Wenn gleiche Zeichen mehrmals hintereinander gesendet werden, kann man nicht erkennen, dass es mehrfach angezeigt wurde: Es bestehen manche Zeichen aus 4 Strichen hintereinander, ----.
  • Überlegt ein Lösung zur besseren Lesbarkeit
  • Das Problem ist bei folgenden beiden Sendungen sichtbar<spoiler text="Bild 1"> </spoiler>
  • Ohne Zwischenphasen <spoiler text="Bild2"> </spoiler>
  • Du brauchst ein Lösung zur besseren Lesbarkeit <spoiler text="Tipp">
input.onButtonPressed(Button.A, function () {
    basic.showLeds(`
        . . . . .
        . . . . .
        . . . . .
        . . . . .
        . . . . .
        `)
})

</spoiler>

  • Programmiere den micro:bit-Zufallsgenerator so, dass durch Schütteln ein Wert "wahr" oder "falsch" ermittelt wird (= Kopf oder Zahl)

Schritt für Schritt zur Lösung

Hinweise zur Lösungsfindung und auch eine mögliche, komplette Lösung findest du auf der Lösungsseite zu diesem Beispiel

Icon Präsentation und Reflexion

Allgemein

  • Stelle dein Ergebnis vor! Was kann dein Produkt?
  • Was hat dir bei der Entwicklung deines Produkts gefallen?
  • Welche Schwierigkeiten hattest? Wie konntest du diese lösen?
  • Erläutere, wie du dein Produkt programmiert hast!
  • Was war bei dieser Aufgabe interessant für dich?

Projektspezifisch

  • Welche Darstellung wurde für die beiden Morsesymbole auf dem Micro:bit gewählt, welche Darstellung könnte man noch verwenden?
  • Wie habt ihr während der Übungen festgelegt, wer senden und wer empfangen darf?
  • Wie funktionierte ds Senden eines ganzen Wortes - habt ihr das überhaupt versucht?
  • Habt ihr das Senden und Empfangen auch in verschiedneen räumen für Sender und Empfänger probiert.
  • Überlege, warum die Morsespezialistinnen diese Tabelle zum Nachschlagen verwendet haben und nicht die obere?
  • Welches wichtige Morsewort wird heute noch immer verwendet? Ein wichtiges Notsignal: ... --- ...
  • Wie könnte man die Morsesignal ohne Computer, mit sehr einfachen Mitteln produzieren?
  • Wie könnte man ein Morsegerät mit dem Micro:bit programmieren, das nur Lichtsignal aussendet?

Icon Weiterentwicklung

  • Überlege wie man eine Bestätigung vom Empfänger programmieren könnte, damit der Sender weiß, dass das Zeichen richtig gelesen werden konnte oder ob es wiederholt werden sollte
  • Wie könnte man gleich einen Buchstaben wählen und der Micro:bit wählt den entsprechenden Morsecode und sendet diesen dann aus.
  • Wie könnte man auf dem Sender-Micro:bit einen Buchstaben auswählen und er wird dann als Morsecode versendet, anstatt als Programmiererin das Programm jedesmal zu ändern
  • Überlege andere Sysmbole füpr eine Geheimsprache zu Übertragung

Noch eine Erweiterungsaufgabe

Analyse eines fremden Programmcodes:

  • Was stellt dieser komplizerte Programmcode dar?

Arrays, die Supervariablen

Arrays, die Supervariablen