Morse Code Übersetzer Sender mit fischertechnik ROBO Pro

Nach dem ich schon einige Lösungen beim Arduino gesehen hatte, beschloss ich mal einen Morcecodeübersetzer für fischertechnik zu schreiben.
Leider beherrscht die Programmierumgebung ROBO Pro keine Tonerzeugung. Ansonsten brauchte man noch nicht einmal Hardware. Als Hardware kann man das ROBO Interface oder den ROBO TX Controller einsetzen. Wer auf Ton verzichten kann, dem reicht auch schon die ROBO Pro Demo von der fischertechnik Homepage.
Mit Hardware schließt man an den Ausgang1 eine Lampe oder/und einen Buzzer an.

Die Idee zu diesem Morsegenerator kam mir durch ein ähnliches Projekt für den Arduino in dem Buch “30 Arduino Selbstbau-Projekte”. Den Quellcode der Programm kann man hier herunterladen. Für das Verständnis der Programm ist aber schon das Buch notwendig.

 

Beschreibung fischertechnik Morsecode Generator:

In das Textelement (1) kommt der Text welcher als Morsecode ausgegeben werden soll.
Die nächste Befehlsbox (2) gibt den Text Zeichenweise als ASCII Code aus.
Der ASCII Code dient als Index für die Liste (3). Diese enthält den Morsecode. Da die Liste nur Zahlenwerte aufnehmen kann, habe ich den Punkt mit “1” und den Strich mit “2” übersetzt. Dies wäre schon der schwierigste Teil wenn ROBO Pro Textstrings verarbeiten könnte.
So zerlege ich erstmal den maximal 5 stelligen Morscecode in Einzelziffern um diese nacheinander abzuarbeiten (4).
Die Ausgabe besteht aus einem Unterprogramm welches die Ziffern aus der Liste nach 0, 1, 2 unterscheidet und der eigentliche Ausgabe, welche je nach Zeichenlänge Ausgang 1 aktiv schaltet.
Damit alle Programmteile synchron laufen und die Morsezeichen die korrekte Längen und Pausen haben, gibt es diverse Ja/Nein-Blöcke. Die Variablen zwischen Liste und Ausgabe sind eigentlich überflüssig, zeigen aber schön die Funktionsweise.

Die Zeichen- und Pausendauer kann mit dem Schieberegler angepaßt werden.

Morse Generator mit ROBO Pro

Das Morse ROBO Pro Programm herunterladen
Die CSV Datei mit dem Morse Code

 

 

Einschränkungen:

  • nur Zahlen und Buchstaben
  • max. Zeichenlänge 5
  • keine zusätzliche Pause zwischen Wörtern

Weiterentwicklung
Denkbar wären folgende Erweiterungen:

  • Den Morsecodesender mit einer leistungsstarken LED oder Laserpointer zu betreiben und ein weiteres ROBO Interface oder ROBO TX Controller für dem Empfang (Fototransistor) und das Übersetzen Morsecode/Alphabet programmieren. Wer morsen kann, dem würde schon Taster und Lampe reichen.
  • Das Textelement durch Tastfelder für Buchstaben/Zahlen ersetzten.
  • Mit Hilfe des I2C Bus plus I2C-fähigem Keypad und LCD den ROBO TX Controller ohne PC betreiben.

Zeichen- und Pausenlänge beim Morsecode

  • Ein Strich ist dreimal so lang wie ein Punkt.
  • Die Pause zwischen zwei Punkten/Strichen entspricht einem Punkt.
  • Die Pause zwischen den Buchstaben/Zahlen dauert 3 Punkte.
  • Die Paus zwischen den Worten dauert 7 Punkte (im Beispiel nicht umgesetzt).

Tabelle ASCII Morsecode für dieses Beispiel

Dez ASCII Morse
0 NUL
1 SOH
2 STX
3 ETX
4 EOT
5 ENQ
6 ACK
7 BEL
8 BS
9 TAB
10 LF
11 VT
12 FF
13 CR
14 SO
15 SI
16 DLE
17 DC1
18 DC2
19 DC3
20 DC4
21 NAK
22 SYN
23 ETB
24 CAN
25 EM
26 SUB
27 ESC
28 FS
29 GS
30 RS
31 US
32 SP
33 !
34
35 #
36 $
37 %
38 &
39
40 (
41  )
42 *
43 +
44 ,
45
46 ,
47 /
48 0 —–
49 1 .—-
50 2 ..—
51 3 …–
52 4 ….-
53 5 …..
54 6 -….
55 7 –…
56 8 —..
57 9 —-.
58 :
59 ;
60 <
61 =
62 >
63 ?
64 @
65 A .-
66 B -…
67 C -.-.
68 D -..
69 E .
70 F ..-.
71 G –.
72 H ….
73 I ..
74 J .—
75 K -.-
76 L .-..
77 M
78 N -.
79 O
80 P .–.
81 Q –.-
82 R .-.
83 S
84 T
85 U ..-
86 V …-
87 W .–
88 X -..-
89 Y -.–
90 Z –..
91 [
92 \
93 ]
94 ^
95 _
96 `
97 a .-
98 b -…
99 c -.-.
100 d -..
101 e .
102 f ..-.
103 g –.
104 h ….
105 i ..
106 j .—
107 k -.-
108 l .-..
109 m
110 n -.
111 o
112 p .–.
113 q –.-
114 r .-.
115 s
116 t
117 u ..-
118 v …-
119 w .–
120 x -..-
121 y -.–
122 z –..
123 {
124 |
125 }
126 ~
127 DEL

Schreibe einen Kommentar

Deine E-Mail-Adresse wird nicht veröffentlicht.