PDA

Archiv verlassen und diese Seite im Standarddesign anzeigen : RP6: Projekt Morse-Code



Dirk
17.03.2012, 21:38
Hallo Leute,

im RN-Wissen habe ich 'mal ein Software-Projekt (http://www.rn-wissen.de/index.php/RP6_-_Morse-Code) vorgestellt, das sich mit dem Senden und Empfangen von Morse-Code beschäftigt. Diese fast 170 Jahre alte Technologie der Informationsübertragung (170-jähriges Jubiläum im Jahr 2014!) spielt zwar heute kaum noch eine Rolle,- schade fände ich aber, wenn sie völlig in Vergessenheit gerät.

Das Projekt setzt auf der RP6Base, der RP6 CONTROL M32 und der RP6 CCPRO M128 einen Morse-Sender und -Empfänger um. Jede der drei Plattformen kann gleichzeitig Morse-Code senden und empfangen. Dabei sind Geschwindigkeiten von 15 bis 750 CpM (Zeichen pro Minute) möglich.

Viel Spaß! Anregungen und Ergänzungen: Gern!

SlyD
19.03.2012, 10:54
Cool! :)

Könnte man evtl. das IRCOMM als Sender/Empfänger verwenden?

Dirk
19.03.2012, 21:55
@SlyD:
Ja, ich denke schon.
Da, wo die LED zur Anzeige der Morse-Zeichen geschaltet wird, müßte man stattdessen die IRCOMM-Sendedioden (PD7) schalten.
Und anstelle des jetzigen Eingangspins könnte man sicher auch PB2 nehmen.
... muss ich mal probieren ...

SlyD
19.03.2012, 22:30
> müßte man stattdessen die IRCOMM-Sendedioden (PD7) schalten.

Ja, muss allerdings ähnlich wie bei nem Funksender auch moduliert werden - siehe Timer2 ISR (36kHz).
Also ggf. eine Variable einführen mit der man die Modulation an/abschalten kann.
....
else if(ircomm_modulate)
PORTD ^= (1<<PIND7);
else
PORTD &= ~(1<<PIND7);

oder sowas ...

RolfD
20.03.2012, 14:01
Die Idee ansich find ich klasse und hatte auch nicht mit so einem komplexen Beitrag/Sourcecode gerechnet. Großes Lob. Nix gegen den guten alten Morse, aber für moderne Datenübertragung ist das eher nicht geeignet. Dann vielleicht auch direkt etwas weiter gedacht und alternativ ein 8 bit Code in FSK Modulation mit Prüfbit bitte. Nur leider die wenigstens dürften wie ich 2 Bots haben und sowas nutzen wollen. Für Schulen und Studenten aber sicher eine schöne Ergänzug der RP6 Funktionalität - wenn man es richtig anpackt. Immerhin wäre der RP6 dann fast so schnell in der Datenübertragung wie mein erster Akustikkoppler mit 300 Baud :D. Wirklich sinnvolle Datenübertragung z.B. für Telemetrie macht man aber besser mit Funkmodulen die es ja schon für 5 Euro gibt. Trotzdem bemerkenswerter Beitrag!
Vielleicht befasst sich ja auch mal jemand spasseshalber mit diesem werten Herren und dessen Inventionen http://de.wikipedia.org/wiki/Baudot-Code quasi als intelligente Fortsetzung der Arbeit von Morse und Veil. FM und FSK vs. ASK und MFM/RLL wäre dann Teil 3 der Telekommunikationsgrundlagen. Den Viterbi-Algorithmus - welcher mich doch so ein bischen an Fuzzy-Logik erinnert - würde ich aber erst in Teil 4 ansprechen :D. =D> \\:D/
Vor 30 Jahren musste man sich so Wissen noch mühsam aus irgendwelchen Mailboxen und Hackertreffen zusammen angeln. Schön das es heute RN-Wissen gibt - und alte Hasen die es mit ihrem Wissen füttern.

Gruß Rolf

lokirobotics
21.03.2012, 11:16
Also bei den Funkamateuren ist Morsen immer noch sehr beliebt. Man kommt auch bei schwierigsten Ausbreitungsbedingungen noch unglaublich weit. Auch lässt sich das Morsesignal noch bei starkem Hintergrundrauschen heraushören.
Ich finde, CW hat für die moderne Technik auch noch nicht ausgedient. Hohe Übertragungsraten sind schließlich nicht alles. Man kann mit CW sehr energiesparende Sensornetzwerke aufbauen und Daten über sehr weite Entfernungen übertragen. Nur leider braucht man eine Amateurfunklizenz.

Also ich finde das ein sehr schönes Projekt! Und langsam muss Morsen ja auch nicht sein => High Speed Telegraphy (http://www.youtube.com/watch?feature=player_detailpage&v=b9S-NzsUD5w) :)

RolfD
21.03.2012, 18:48
Richtig... aber ... Morsen ist von Menschen für Menschen entwickelt - das betrifft die Geschwindigkeit eben so wie; das normalerweise beim Sender wie Empfänger Menschen als Kontroll- und interpretierende Instanz eingesetzt sind um z.B. Fehler tollerant auszugleichen und genau daher bezieht der Morsecode auch seine Leistunbgsfähigkeit z.b. in schwierigen Einsatzgebieten. Der Mensch kann z.B. eine erneute Übertragung anfordern selbst wenn der Satz syntaktisch richtig ist, im Kontext aber kein Sinn ergibt. Das können Maschinen nicht weil denen Intelligenz fehlt.
Für eine Datenübertragung zwischen 2 Maschinen muss auf Grund diverser Unzulänglichkeiten in Übertragungswegen ein mehr oder weniger ausgefeiltes Fehlerprotokoll her.. und das kann von einfachen seriellen Parity Prüf-Bits bis hin zu komplexen fehlertolleranten Korrektursystemen wie auf CD/DVDs und sogar bis hin zu mehrere tausen Bit langen Keys wie beim WLAN führen.
Jetzt kommt die entscheidende Frage.. zu was nutz man Morsecode auf dem RP6?
Um sich mit Morsecode auseinander zu setzen.. ok... als Code Modell für weitere Experimente.. ok.. zur Telemetriedatenübertragung .. nein. Da gibts wie oben angeschnitten deutlich besseres - wenn man zumindest gewisse Erwartungen an die Präzision hat.
Selbst die Eisenbahn versah schon recht früh Loknummern auf Dampfloks mit Prüfziffern um sicher zu stellen das falsche Übertragungen zwischen Streckenposten auffielen und auch sonst alle wichtigen Dokumente wie Ausweis- und Geldscheinnummern besitzen Prüfziffern. Morsecode ansich ist eben keine gesicherte Übertragung - man muss sich überlegen was man wie sichert. Den Datenstrom als ganzes oder nur Inhalte der Übertragung - oft genug sogar beides. Ein gemorstes "Hallo wie geht es dir, mir gehts gut." muss man jedoch wohl eher nicht extra sichern. Es kommt eben auf die Verwendung an.
Der Verdienst von Morse war es, überhaupt etwas sinnvolles zu übertragen - die Zuverlässigkeit in der Datenübertragung wurde erst durch andere Ideen und Überlegungen hergestellt. Man betrachte dies als Randbemerkung zum Projekt, nicht als Kritik.

Gruß RolfD