Sie sind nicht angemeldet.

Lieber Besucher, herzlich willkommen bei: Forum der DL-QRP-AG für QRP und Selbstbau im Amateurfunk. Falls dies Ihr erster Besuch auf dieser Seite ist, lesen Sie sich bitte die Hilfe durch. Dort wird Ihnen die Bedienung dieser Seite näher erläutert. Darüber hinaus sollten Sie sich registrieren, um alle Funktionen dieser Seite nutzen zu können. Benutzen Sie das Registrierungsformular, um sich zu registrieren oder informieren Sie sich ausführlich über den Registrierungsvorgang. Falls Sie sich bereits zu einem früheren Zeitpunkt registriert haben, können Sie sich hier anmelden.

1

Samstag, 30. Januar 2016, 16:10

Cw-Dekoder Arduino basiert

Hallo,

schon ein Jahr alt, aber er scheint zumindest bei suberem Signal zu funktionieren und benötigt ausser dem Arduino wenige Komponenten:
http://k2jji.org/2014/09/18/arduino-base-cw-decoder/

73 de Hajo

2

Samstag, 30. Januar 2016, 23:20

Hallo Hajo,

hattest Du die Hardware / Software mal ausprobiert ?
73 de Uwe
DC5PI

3

Sonntag, 31. Januar 2016, 09:39

Moin,

es gibt nur einen Einsatzzweck für einen CW Decoder und das ist die Überprüfung der eigenen Tastung. Da dies meist ohne Nebengeräusche abläuft, kann man damit gut üben. Dabei ist eher die schlechteste Software geeignet, als eine die per besonderen Algorithmen usw. versucht die Zeichen zu dekodieren. Eine Software die ziemlich wankelmütig auf Geschwindigkeitsänderungen und Tastverhältnisse reagiert, zwingt zu einer sauberen Gebeweise.

Ich übe z.B. mit der Palm Single im Cootie-Modus mit der von Mike, DF2OK vorgeschlagenen Software PCW-Fistcheck, weil man durch den "Schreiber" gleich sehen kann, wie das Tastverhältnis ist.

73, Tom

http://www.qsl.net/dj7hs/download.htm
DARC I18 |DL-QRP-AG #1186|G-QRP #14624|FISTS #15933|SKCC #13896|LIDS #88 https://twitter.com/DL7BJ

4

Sonntag, 31. Januar 2016, 12:08

Hallo Uwe,

den Worten von Tom ist nichts hinzu zufuegen. Ich habe es nicht ausprobiert, da wie anderswo ausfuehrlich beschrieben, keine guten Ergebnisse zu erwarten sind. Ein BAstelproject zum Lernen.

Die besten CW-Dekoder immer noch:
CW-Skimmer fuer Rufzeichen und der
[Lange Nase Modus an]
Kx3, da ich die problematischen Parameter (Rauschen, Tonhoehe, Bandbreite) so genau einstellen kann, dass sich der Dekoder tatsaechlich auf die Zeichen konzentrieren kann. Ausserdem scheint der Alghorithmus etwas ausgefeilter, als das was man von der Standardware gewohnt ist. Beim Kx3 geht das bei einigermassen sauberer Gebeweise bis Tempo 40. Klasse.
[Lange Nase Modus aus]

73 de Hajo

5

Sonntag, 31. Januar 2016, 12:52

Hajo, Du hast den Biocomputer in der Aufzählung vergessen! :D
DARC I18 |DL-QRP-AG #1186|G-QRP #14624|FISTS #15933|SKCC #13896|LIDS #88 https://twitter.com/DL7BJ

6

Sonntag, 31. Januar 2016, 12:56

Hajo, Du hast den Biocomputer in der Aufzählung vergessen! :D


Oh, leider ist der Sourcecode nicht verfuegbar und nicht Open Source und kann deswegen leider nicht beruecksichtigt werden. Ausserdem habe ich immer Probleme, dafuer eine ordentliche Kiste zu bauen ;-), aus der nicht wieder 1000 Kabel raushaengen.

73 de Hajo

7

Sonntag, 31. Januar 2016, 13:29

Hajo-Ino statt ARDUINO also... einen schönen Sonntag :)

8

Sonntag, 31. Januar 2016, 13:41

Raimund,

es wuerde noch ein schoenerer Sonntag werden, wenn sich endlich mal jemand dem K3NG Keyer von OZ1JHM widmen wuerde. Der OM hat sich leider nicht gemeldet. Mit der Platine wuerde ich den sofort nachbauen. Denn der kann alles ... auch dekodieren
http://skovholm.com/content/cw-keyer-k3ng-and-oz1jhm

73 de Hajo

9

Sonntag, 31. Januar 2016, 13:58

Hajo,

wenn Du Maschinen codieren, decodieren willst dann heissen die Betriebsarten PSK31, Rtty, Domino, Hell, Olivia usw. CW ist was anderes.

73 de uwe df7bl
Uwe df7bl

Wenn Du meinst etwas geht nicht, dann störe nicht die, die es gerade machen.

10

Montag, 1. Februar 2016, 12:41

Hallo Funkfreunde,
zweifellos ist das Gehirn immer noch der beste CW-Decoder. Aber man kann es ja mal ausprobieren mit einem Mikrocontroller; einfach nur um zu studieren, wie es gehen könnte.


Ich habe einer elektronischen Morsetaste mit ARDUINO einfach einen Decoder als Display hinten dran gehängt; mit der Geschwindigkeit hat der keine Probleme, da Geber und Decoder im gleichen Programm laufen.
Die Idee für den Decoder findet man hier: https://raronoff.wordpress.com/2010/12/16/morse-endecoder/ .
Interessant ist m.E. das Verfahren , nach dem die Morsezeichen decodiert werden ( " morse tree " , siehe Suchmaschine).

Das Programm "Elektronische Morsetaste mit ARDUINO" und den Musteraufbau habe ich zum Schwarzwaldtreffen 2015 gezeigt ( siehe hier ). Das komplette Programm mit Decoder ist hier .

72
Heribert
DK2JK

11

Montag, 1. Februar 2016, 12:51

Hallo Heribert,

danke für die Links. Nur durch selbst aufbauen und programmieren, lernt man, wo die Probleme liegen. Wenn das bei den Platinen und Gehäusen nur auch so wäre.

73 de Hajo

12

Montag, 1. Februar 2016, 20:38

Ja Heribert,

Diese Arte der Codierung eines binären Suchbaums als "String" nennt man auch "dichotomic search table".

Und wie sollte es anders sein, dass man in der (meiner) Fachliteratur darüber auch Morse Code dekodiert.

Siehe:
[1] https://en.wikipedia.org/wiki/Dichotomic_search

Ich habe mich man hingesetzt und den Morse Codedekoder als Deterministischer endlicher Automat DEA programmiert.

Der benötigt durch den Zustandsautomaten etwas mehr Flashspeicher, ist einfacher mit neuen Morse Code Zeichen zu erweitern, man kann auch einfacher eine Fehlerauswertung betreiben und man könnte auch noch Epsilon transition einbauen. Dann wird aus dem DEA ein Nichtdeterministischer endlicher Automat NDE.
73 de Uwe
DC5PI

Dieser Beitrag wurde bereits 1 mal editiert, zuletzt von »DC5PI« (1. Februar 2016, 21:18)


13

Dienstag, 2. Februar 2016, 15:49

Uwe,
Deinen Sourcecode finden wir wo zum herunterladen??

Gruß - Raimund

14

Dienstag, 2. Februar 2016, 19:42

Hallo Raimund,

wenn ich mal fertig mit testen bin, ein analoges Frotend designed habe und dazu noch eine SMD Projektplatine erstellt habe, mache ich daraus eine OV Bauprojekt.
Ich will ja auch noch Morsecode geben lernen. 8)

Im allg. stelle ich keinen Code öffentlich ein. Da die wenigsten die Möglichkeit haben diesen zu verstehen.
Es ist halt keine Bascom oder Arduino Quellcode.
In der endgültigen Fassung enthält so ein Code-Gebilde einiges an Assembler Bibliotheken.

Die Klasse für den Morse Code Automaten erfüllt nach den ersten und simplen Tests die Dekodierung von Morsecode zu Morsezeichen einwandfrei.

Zur vollständigen Prüfung habe ich ein Testprogramm erstellt.
Das Testprogramm macht im Augenblick folgendes:
- über den Uart empfängt man "." oder "0" für ein DIT oder "-" oder "1" für ein DAH.
- nach der Eingabe eines CR wird der Morsecode als Folge von [.,0]* und [-,1]* ausgewertet.

Wurde der Morsecode vom DEA erkannt, wird danach das zugeordnete ASCII-Zeichen über den Uart ausgeben.
So kann ich fast automatisiert verschiedene Morsecode Sequenzen in das Programm einspeisen.
73 de Uwe
DC5PI

15

Dienstag, 2. Februar 2016, 19:47

bin schon riesig gespannt! Viel Erfolg!

16

Mittwoch, 3. Februar 2016, 00:01

Moin,
Im allg. stelle ich keinen Code öffentlich ein. Da die wenigsten die Möglichkeit haben diesen zu verstehen.
Es ist halt keine Bascom oder Arduino Quellcode.
Sorry Uwe, aber das mit dem Verstehen ist absolut kein Grund. Gerade an solchen Codebeispielen kann man lernen, diesen zu verstehen. Das wäre genauso, als wenn niemand mehr Schaltbilder veröffentlicht, weil > 80% (grob geschätzt) der Funkamateure die sowieso nicht verstehen.

Ein Grund wäre es, wenn Du einfach sagst, dass Du das nicht möchtest, das muss man dann halt akzeptieren.

Wobei ich der Meinung bin, jeglicher Code aus unserem Hobby zu Hobbyprojekten gehört nach GitHub, wenn man damit in die Öffentlichkeit geht.

73, Tom
DARC I18 |DL-QRP-AG #1186|G-QRP #14624|FISTS #15933|SKCC #13896|LIDS #88 https://twitter.com/DL7BJ

17

Mittwoch, 3. Februar 2016, 13:24

Zitat von »DC5PI«
Im allg. stelle ich keinen Code öffentlich ein. Da die wenigsten die Möglichkeit haben diesen zu verstehen.
Es ist halt keine Bascom oder Arduino Quellcode.
Hallo Funkfreunde,
da bin ich ganz anderer Ansicht. Eine Veröffentlichung ist m.E. heutzutage im Hobbybereich üblich und sinnvoll. Ein Standard wie c++ ( z.B. 'Arduino' ) fördert natürlich auch die Verständigung und die Möglichkeit des Programmaustausches oder zum Studium .
Bedingung ist natürlich, dass man Zeit hast, das Programm zu pflegen. Bei kommerziellen Projekten jedoch würde ich nicht andere Leute am Programm werkeln lassen- schon wegen des Supports, den man leisten muss.

72 Heribert

Ref.:[url]http://www.qrpforum.de/index.php?page=Thread&postID=82220#post82220[/url]

18

Mittwoch, 3. Februar 2016, 15:04

moin,
ich verstehe uwe's haltung zum veroeffentlichen eines quellcodes.
es muss nicht jeder code veroeffentlich werden.
so wie ich es verstehe, hat er diesen code fuer sich entwickelt und keine absicht kundgetan diesen zu veroeffentlichen.
das sollte man respektieren.
73 de
Addi

19

Mittwoch, 3. Februar 2016, 16:04

Im allg. stelle ich keinen Code öffentlich ein.
Das ist legitim und für mich aus vielen Gründen nachvollziehbar. Mit der Aussage hätte ich - und wie ich feststelle, auch andere - kein Problem. Was mich stört, sind folgende Nachsätze:
Da die wenigsten die Möglichkeit haben diesen zu verstehen.
Das ist arrogant...
Es ist halt keine Bascom oder Arduino Quellcode.
...was hier noch unterstrichen wird.
so wie ich es verstehe, hat er diesen code fuer sich entwickelt und keine absicht kundgetan diesen zu veroeffentlichen. das sollte man respektieren.
Sicher, wenn die despektierlichen Nachsätze nicht gewesen wären... :S
73 de Michael, DF2OK Ein Mensch, der keine Zeit hat, nimmt sich ganz einfach zu wichtig. Webseite qrz.com YouTube Twitter
~ DARC ~ G-QRP-Club ~ DL-QRP-AG ~ AGCW ~ FISTS ~ QRPARCI ~ SKCC ~

20

Mittwoch, 3. Februar 2016, 17:19

dynamic dichotomic search table

Hallo,

um eine dynamic dichotomic search table kann man natürlich eine Karopapier verwenden und alle Eintrage per Hand vornehmen.
Da ich das nicht machen wollte, habe ein kleines C Programm geschrieben, dass in einer Tabelle mit 128 Einträgen, die definierten Morse Code Pattern einsortiert.
Die Kodierung erfolgt Rückwärts mit einer terminierenden "1" auf der linken Seite.

Beispiel1: A := ". _" = 01

Quellcode

1
INSERT_DATA(0b00000110, 'A');


Beispiel1: C := "_ . _ ." = 1010

Quellcode

1
INSERT_DATA(0b00010101, 'C');


Das kleine Programm überprüft auch noch, ob der Speicherplatz vorher nicht schon besetzt wurde und gibt im Fehlerfall eine Meldung aus.

Für die im Augenblick definierten Morsezeichen reichen 128 Byte Speicherplatz, strukturiert als dynamic dichotomic search table, aus.

Wer will kann sich gerne beim erweitern der definierten Morsezeichen beteiligen.
»DC5PI« hat folgende Datei angehängt:
  • main.c.zip (1,57 kB - 77 mal heruntergeladen - zuletzt: 2. Oktober 2018, 21:28)
73 de Uwe
DC5PI

Dieser Beitrag wurde bereits 3 mal editiert, zuletzt von »DC5PI« (3. Februar 2016, 17:58)