Hilfe zur Schriftgrößenänderung
DE EN

- CW Decoder

Anmeldung

Passwort vergessen?

Geben Sie Ihre Mitgliedsnummer und Ihr Passwort ein, um sich an der DARC-Website anzumelden:

Unser CW-Decoder

Arduinoboard dient als Plattform

Im Laufe der letzten Jahre wurden ja schon mehrere Projekte dieser Art veröffentlicht. Der hier vorgestellte CW-Decoder beruht auf dem Bauvorschlag von Reinhard, DL3BR. Unsere Version unterscheidet sich von den bisherigen in Bezug auf die Ansteuerung des Displays und die Verwendung von variablen Speed-Erkennungsroutinen. Wir benutzen die im OV schon bewährte Mikrocontroller-Plattform Arduino in der Version S3v3 Rev.2 und versehen sie mit einem von Reinhard entwickeltem Add-On – unserem "User Interface".
Das notwendige Basiswissen über Mikrocontroller und die Programmiersprache C, als auch bestimmte Vorkenntnisse zur Entwicklungsumgebung  IDE -Arduino und AVR Studio 5 wird Reinhard uns dann, wenn die Hardware steht, noch näher bringen.
Reinhard hat für uns alle die Bauteile beschafft, die Platinen gefertigt und alles sauber in Tüten verpackt. Und so machten wir uns an die Arbeit.

Hardware
Zur Arduino-Plattform soll an dieser Stelle nicht all zu viel gesagt werden. Sie ist ja schon „State of the Art“. Konzentrieren wir uns also auf unsere Add-On‘s. Sie bestehen aus einer Anzeigeeinheit mit Bedienelementen zur Steuerung des Decoders und einem Filterboard. Die Auslegung der Anzeigeeinheit ist variabel, so dass außer dem LCD-Display mit Beleuchtung auch noch Drehgeber oder auch Tasten angeschlossen werden können.(Diese Hardware soll dann auch bei dem als nächstes angesagten Bakenprojekt Verwendung finden. Darüber berichten wir dann später). Das Filterboard soll die in der Folge erwähnten Schwächen eines solchen Projektes auffangen. Das  lässt sich mit wenig Aufwand und sehr günstigen Bauteilen auf einer einseitigen Platine realisieren. Dies wird die Erkennung der Zeichen weiter optimieren und unsere Lötkolben nicht einrosten lassen.

Software
Die Programmierung des Atmega328 erfolgt mit der Entwicklungsumgebung für Arduino. Dort gibt es ja genügend Librarys und Teilprogramme, so das nicht alles neu erfunden werden muss. Dies ist ja auch Sinn und Zweck der ganzen Arduino-Plattform. Sie ist Garant für einen umfangreichen Quellcode/Bibliotheken, sowie entsprechenden Treibern. Wie bei allen Projekten dieser Art, ist auch hier die Programmierung die größte Hürde für uns Amateurfunker. Die grundlegende Mikrocontroller-Software stammt von http://raronoff.wordpress.com/2010/12/16/morse-endecoder/ und wurde aktuell von Hubert,DG4GAH ,auf eine Version mit Display-Ausgabe umgeschrieben und optimiert.

Stärken und Schwächen
Die Stärken dieser Schaltung liegen sicherlich in dem minimalen Hardwareaufwand. Um die CW-Audiosignale jedoch zu decodieren und als sie Text anzuzeigen benötigt man eine sehr gute Signalanalyse, d.h.
      - empfindlichen Decoder
      - automatische Verstärkungsregelung (Signalstärke unterschiedlich)
      - tastgeschwindigkeitsunabhängig (Mensch)
      - gute Störaustastung (QRN/QRM)
      - scharfes CW-Filter

All diese Kriterien machen eine Profilmetrie sehr schwer, muss sie doch in mathematische Funktionen gefasst werden. Hier sind die Programmierer gefragt!
Die Computerprogramme sind in der Regel auf exakt gegebene Morsezeichen getrimmt. Liegen die Abweichungen außerhalb der meist engen Grenzen, ist das automatische Mitschreiben nicht mehr ausreichend sauber. Ungültige Zeichenfolgen sind die Folge.
In einem weiteren Schritt wird Hubert dann das Ziel verfolgen unsere „alte“ Softwarevariante , welche schon vor längerer Zeit von Reinhard, DL3BR, und Hubert,DG4GAH, auf einem anderen Prozessor-Board entwickelt wurde, vollständig auf Arduino zu implementieren. Dadurch werden dann auch die bereits erwähnten automatischen Speed-Erkennungs , Filter und Anpassroutinen enthalten sein.
Wir freuen uns, das wir Hubert, DG4GAH, als Mitstreiter zur Software-Entwicklung gewinnen konnten. Damit steht uns ein weiterer erfahrener Assembler- und  C-Programmierer zur Seite.
Geplant ist dann noch ein Hardwarefilter als CW-PLL aufzubauen. Das  lässt sich mit wenig Aufwand und sehr günstigen Bauteilen auf einer einseitigen Platine realisieren. Dies wird die Erkennung der Zeichen weiter optimieren und unsere Lötkolben nicht einrosten lassen.