Bitte Empfehlung für CW-Keyer mit clickfreiem wohlklingenden Sinuston

  • Moin Thilo,

    Ich lerne also bis hier: Keyer lassen sich relativ einfach realisieren, die schwierige Titelfrage lautet:

    "Wie baue ich einen schön klingenden NF-Sinus-Tongenerator mit clickfreiem Auf-/Zu-Tastverhalten?"

    Das Stichwort heisst dann "Wave Shaping" und vielleicht kaeme dieser Oszillator in Frage:

    Twin-T Morse Code Practice Oscillator [K4ICY]

    Moderne KW-TRX koennen das auch und die Rampen sind programmierbar.

    73, Joerg

  • Moin Thilo,

    Dirk, DH4YM hat Leiterplatten zum DL4YHF Keyer.

    An wohlklingendem Mithörton hätte ich auch Interesse..

    73, Bert DF7DJ

  • Hallo Thilo,

    in Ergänzung zu Bert habe ich mal Bilder angefügt. Es handelt sich zwar um die Schaltung von OM Wolfgang, DL4YHF, Layout wurde aber nach den Bedürfnissen von Bert ein wenig angepasst. U.a. dass der Keyer in ein bestimmtes Gehäuses passt und eine leicht marktverfügbare Knopfzelle verwendet werden kann. Die Front ist so gestaltet, dass man diese senkrecht zur Hauptplatine verlöten kann, siehe Bilder. Zu den mechanischen Details kann Bert sicherlich bei Bedarf weiter ausführen.

  • @ Thilo, DL7AME

    Hihi, habe erst sehr spät "geschnallt" dass Dir der Ton des Morserino, den ich Dir mal übers QRP-Forum verhökert hatte, nicht gut genug ist.

    Ich war auch überrascht, dass der Ton so schlecht ist (ich hatte den Morserino nur kurz erworben, um den Ton mal zu "erleben").

    Mit dem weiter oben beschriebenen LC-Filter habe ich den aber mit einfachsten Mitteln ganz gut in den Griff bekommen. Hatte sogar einem Funkfreund eine solche Platine schnell mal zusammen gebraten, und er war hoch zufrieden.

    Im zip-File sind ein paar Oszillogramme und Klangbeispiele.

    Jedoch ist - wie erwähnt - der Ausgangspegel zu gering für Kopfhörer-Betrieb. Aber ein 1-stufiger Impedanzwandler aus 4 oder 5 Bauteilen sollte reichen, um den Pegel niederohmig zu machen. Und der Morserino hat ja 3 Volt Betriebsspannung an Bord.


    Zu RC-Oszillatoren:

    Meine Erfahrungen mit den einfachen RC-Oszillatoren: Ein Sinusgenerator muss ja eine Schleifenverstärlung von möglichst genau 1 haben (sonst wird der Sinus durch Begrenzung platt gemacht). Stromverstärkung des Transistors, Betriebsspannung, Temperatur beeinflussen die Verstärkung.

    Das meist vorhandene Trimmpoti ist weniger für die Tonhöhen-Einstellung sondern für die Wahl eines Arbeitspunktes, bei dem Kurvenform und Hüllkurve einigermassen passen. Also eine ziemlich wacklige Angelegenheit.

    73,

    Ralf


    morserino-icw.zip

    Ach, hier noch die Hüllkurve eines gefilterten Rechteck-Signals:

    2 Mal editiert, zuletzt von DK5BU (22. Juli 2023 um 13:46)

  • Nur sind die Möglichkeiten auf einem 8-Bit Controller eingeschränkt, wenn man noch was anderes damit machen möchte, als nur ein Tongenerator.

    Moin,

    also so eine Aussage kann ich nicht nachvollziehen. Bei 16 MHz Takt langweilt sich doch so ein µC bei so einer banalen Aufgabe. Hier eines von vielen Beispielen ...

    Nun ja, man kann ja einen Ton auf viele Arten erzeugen. PWM mit Filter, R2R, dann braucht man wenig Filterung, oder man nimmt einen DAC. Egel wie man es anstellt: Wenn man den Sinus einfach nur ein und ausschaltet, dann wird es Klicks geben. Daher ist das A&O ein An- und Abschwingen der Amplitude des Tones. Die ARRL veröffentlich ja die Bilder des CW-Signals in ihren Testberichten von Transceivern. Da kann man es sehen. Was für klickfreie HF gilt, gilt auch für NF.

    73, Holger DL9HDA

  • Martin, falls Du noch etwas zu dem NF-Phasenschieber findest, würde mich sehr interessieren.

    Leider finde ich den Original-Artikel nicht mehr.....

    Aber die Schaltung entsprach nach meiner Erinnerung der aus folgendem Faden:

    Einfacher Sinusoszillator mit Phasenschieber Ersatzteilversand - Reparatur

    im Beitrag: BID = 469116

    Für die Frequenzberechnung kann man diese Seite nutzen:

    Phasenschieber-Oszillator

    mit Tante google findet man jede Menge zum Thema, z.B.:

    https://www.google.com/search?client=firefox-b-d&q=nf+sinusgenerator+phasenschieber

    Das Thema mit dem Ein- und Ausschaltklick ist damit aber nicht gelöst......

    Martin, DH4NWG

    vy 72/73 de Martin, DH4NWG

    hpe cuagn !!

    DARC DOK B12 | DL-QRP-AG #490 | FISTS #18187 | SKCC #12673 | GQRP #17504

  • Hallo zusammen,

    hab mit einem STM32-Mikro eine Sinusausgabe via DMA und D/A-Wandler vor ein paar Jahren realisiert. ;) :)

    Allerdings nur für Iambic B, Iambic A sollte aber auch kein Problem sein.

    Bei wirklichem Interesse könnte man daraus ein Platinchen machen.

    Bin eh seit geraumer Zeit am überlegen, ob ich dies nicht für für meine CW-Schüler für ICW zur Verfügung

    stellen sollte.

    Beste 73, Uli, DL8SBX

    DL8SBX

  • Moin Martin,

    Das Thema mit dem Ein- und Ausschaltklick ist damit aber nicht gelöst......

    Ralf, DK5BU hat im Thread bereits 2 Möglichkeiten aufgeführt.

    1) Die Schaltung in #25 mit dem L/C Filter.

    2) Per Software in #8 (PCM mit Hüllkurve und Attack/Release)

    Zu 2) habe ich eben mal ein MP3 über Mikrophone vom iPhone aufgenommen. Das ist Mega328 mit 16MHz und 64 Werten für Sinustabelle. Mit 128 Werten wäre es etwas weniger kratzig. Mit 256 Werten ist es einfach zu knapp. Es ist ein leichtes Attack und Release, also Anschwingen beim Tastendruck und Abschwingen beim Loslassen der Taste in der Software implementiert. Ursprünglich hatte ich diesen Lautsprecher geplant, weil der so schön flach auf die Leiterplatte gelötet werden kann. Der war aber einfach nur enttäuschend, so dass ich schon überlegt hatte, einen der Lautsprecher für die Sounddekoder in den Modellbahnloks zu verwenden, weil die echt richtig Krach machen ohne zu scheppern. Letztendlich bin ich wieder beim Visaton BF32 gelandet, klingt für mich richtig gut. Auf extrem sauerstofffreie Leitungen und Netzfilter mit Klangreiniger habe ich aber verzichtet ;)

    73, Tom

    Einmal editiert, zuletzt von DL7BJ (22. Juli 2023 um 22:41)

  • Moin Uli,

    hab mit einem STM32-Mikro eine Sinusausgabe via DMA und D/A-Wandler vor ein paar Jahren realisiert. ;) :)

    jo, ein ARM Cortex M4 hat natürlich Power. Hans (QRP Labs) verwendet im QMX ja nun auch die STM32.

    Morsekeyer mit 512kByte Speicher und DSP hat was ;)

    Mittlerweile gibt es Arduino Boards mit ARM Controllern und entsprechende Sound-Bibliotheken.

    73, Tom

  • Moin Tom,

    nein, das geht auch mit ganz kleinen Derivaten und 64k-Flash.

    Bei mir werkelt ein STM32F303K8T6 vor sich hin. Bin viel zu faul um dicke, fette IC's zu löten.

    Und nebenbei versorgt der Mikro noch ein Display um mir anzuzeigen, was ich so in die Welt

    hinaus morse....

    Zudem nütze ich einen internen OP des Mikros und ich höre einen sauberen, klickfreien Sinus...

    Beste 73 de Uli

    DL8SBX

  • Wer es nicht digital mag, kann hier einen Sinusoszillator-Bausatz kaufen für 4 EUR inkl. Versand. Er basiert auf dem ICL8038 Chip und macht einen perfekten Sinus mit einstellbarer Frequenz.

    73, Peter - HB9PJT

  • Moin Uli,

    nein, das geht auch mit ganz kleinen Derivaten und 64k-Flash.

    das war auch mehr ein Scherz ;) Ich habe noch ein Dev-Board mit STM32 liegen, auch mal was mit gemacht, aber akt. habe ich die Toolchain für STM32 nicht auf dem Rechner und man kann nicht alles machen.

    73, Tom

  • Mit einem simplen Differenzverstärker und einem Transistor im Emitter lässt sich ganz einfach eine spannungsgesteuerter Verstärker als "Declicker" hinter einem Sinusgenerator realisieren. Die Tastung lädt über einen Widerstand einen Kondensator des Steuertransistors exponentiell auf, bis der Verstärker von Null bis volle Verstärkung durchgeschaltet ist. Mit der RC-Zeitkonstante vor der Basis lässt sich die Zeit für das Ansteigen/Abklingen einstellen. Ganz oldscool, ohne 32 bit ARM Mikrocontroller.

    smooth clickless cw sidetone generator

    M0XPD clickless Keyer

    73

    Günter

    "For every complex problem there is an answer that is clear, simple, and wrong" (H.L. Mencken)

    Einmal editiert, zuletzt von DL4ZAO (23. Juli 2023 um 15:01)

  • Moin,

    Mit der RC-Zeitkonstante vor der Basis lässt sich die Zeit für das Ansteigen/Abklingen einstellen. Ganz oldscool, ohne 32 bit ARM Mikrocontroller.

    klar kann man das machen. Man kann auch einen kompletten Morsekeyer ganz oldschool mit Transistoren aufbauen. Viele Wege führen nach Rom. Wenn man aber einen Controller verwendet, egal ob 8,16 oder 32 Bit, kann man den einfach nutzen und die Sinusfunktion für einen Mithörton mit ein paar Zeilen Code implementieren. Sogar mit einstellbarer Zeit für das Ansteigen/Abklingen, was praktisch nur ein wenig Bitschieberei ist. Das ist auch bei einem 8-Bit Controller (die in der Regel einen nicht so hohen Systemtakt haben) nicht das Problem. Das Problem entsteht erst, wenn höhere Tonfrequenzen gefordert sind (beim Mithörton wohl kaum mehr als 1200Hz) oder mit vielen Werten für die Sinustabelle gearbeitet wird, weil durch die erforderliche Frequenz für das Nachladen des Timers zu wenig Taktzyklen für andere Aufgaben zwischen den Interrupts verbleiben. Das ist dann Geschmackssache, ob das Audiosignal mit z.B. 64 oder 128 Werten den Ansprüchen genügt. Bei 256 Werten der Sinustabelle müssen bei einem Mithörton von 600Hz 153600 Werte pro Sekunde in den Timer geschoben werden, bei einem 16MHz Controller verbleiben so nur ca. 80 Taktzyklen zwischen den Interrupts, das ist trotz RISC Architektur beim ATMega nicht viel. Da hat ein STM32 nicht nur durch den höheren Systemtakt sondern durch den enthaltenen DAC und DMA Vorteile.

    Falls es interessiert, genau das Thema hatten wir hier im Forum 2011 schon mal. Dort wurde auch klassische Analogelektronik vorgeschlagen. Uwe, DC5PI hat es dann auf einem ATTiny umgesetzt. Da haben einige den Vorteil, dass sie 16-Bit 64MHz PWM haben. Uwe hatte im Thread auch einige Links dazu angeführt.

    73, Tom

    4 Mal editiert, zuletzt von DL7BJ (23. Juli 2023 um 16:56)

  • und ich höre einen sauberen, klickfreien Sinus

    Hallo Uli, das klingt sehr interessant! Hättest du Interesse den Code und den Plan mit anderen zu teilen? Mich würde interessierenm wie man so etwas programmiert (ein STM32 Nucleo-32 liegt hier noch in der Kiste) Tks, Max

    73 de Max