Messung des Prellverhaltens bei Morsetasten und Schaltern

Werbung
DD7NT
von: Matthias, DD7NT
1/14
April 2017
E-Mail: [email protected]
Messung des Prellverhaltens bei Morsetasten und Schaltern
Bild 1: Meine Untersuchungsobjekte
Ein OM in unserer CW-Runde meinte neulich: Deine Taste prellt etwas. Ich hatte es nicht bemerkt.
Hinterher stellte ich fest, dass sich eine Rändelmutter am Bug (Schlackertaste) etwas gelockert
hatte. An diese kleine Episode musste ich denken, als ich einen kleinen Versuchsaufbau mit einem
Atmega8, einem Display und einem Drehgeber fertiggestellt hatte. Der Aufbau auf einem Brettchen
sollte zur Vorbereitung verschiedener anderer Vorhaben zusammen mit einem Steckboard als Basis
dienen. Zu diesem Aufbau stellte ich als erstes ein paar Programmzeilen für Displayausgabe,
Drehencoder, Konvertierung, und Menüführung zusammen und testete diese. Dabei kam mir die
Idee diesen Test gleich dazu zu benutzen, das Prellen an Morsetasten zu beobachten. Das passte ins
Konzept, weil zunächst keinerlei weitere Beschaltung des Versuchsbrettchens brauchte. Das Spiel
mit dieser Versuchsanordnung war so interessant, dass ich das Programm erweitert habe, so dass es
für Handtasten, Paddles, Bugs aber auch für Schalter, Drucktaster oder Drehencoder genutzt werden
kann. In Verbindung mit einem Steckbrett können mit der Versuchsanordnung auch
Entprellschaltungen erprobt und in ihrer Wirkung beobachtet werden.
Eine Visualisierung der Prellvorgänge war dabei nicht beabsichtigt. Einige schöne Darstellungen
kann man bei /1/ finden. Dafür wurde ein Agilent Oszilloskop MSO-X 3054A (500 MHz)
verwendet.
DD7NT
2/14
April 2017
Bild 2: Schaltung des Versuchsaufbaus zur Prellmessung
Die Schaltung beinhaltet den Atmega 8 in Standardbeschaltung mit 16 MHz Quarz, Resettsaster
usw. Ziel des Versuchsboards sollte es sein, den Atmega 8 mindestens mit einem Drehencoder und
einem Display fest zu beschalten, dabei möglichst viele Ports für Versuche freizuhalten und die
Programmierung des Atmega 8 im Versuchsbetrieb zu ermöglichen, ohne dass verbundene Teile
getrennt werden müssen. Dazu wurde am Regler 7805 die Diode D1 in die Masseleitung eingefügt,
so dass am Ausgang des Reglers 5,6V anliegen. Nach D2 und D3 sind das wieder 5V und die
Versorgung des Atmega8 ist von der Versorgung übriger Bauteile getrennt. Damit ist eine
Voraussetzung für die einfache Programmierbarkeit des Atmega 8 gegeben. Das Programmiergerät
versorgt beim Programmiervorgang über den ISP-Stecker nun nur den Prozessor. R1, R2 und R3
sorgen dafür, dass sich Display und Programmiergerät an der ISP-Buchse die Ports PB3 /MOSI,
PB4/MISO und PB5/SCK teilen können, ohne dass das angeschlossene Display das Flashen des
Prozessors stört. Dieser Tipp stammt aus dem AVR-Freaks Forum /2/. Das Flashen des Prozessors
gelingt mit dieser Konfiguration auch während des Testbetriebs mit dem Versuchsboard und auch
bei eingeschalteter Betriebsspannung.
Die 5,6V am 7805 werden für die Displaybeleuchtung des DV 20208 verwendet (statt 5,7V). Dieses
Display bereitet leider nicht nur mir einigen Kummer, siehe auch /3/. Der Adressbereich der 2. Zeile
muss nach HDD 44780 Standard bei Adresse 40 beginnen; dieses Display musste aber ab Adresse
38 für das erste Zeichen der 2. Zeile angesteuert werden. Die Ansteuerung einzelner Zeichen in der
2. Zeile war nicht möglich, das Display stürzte ab.
Die mit diesem Artikel verlinkte .hex-Datei mit dem Programm zur Prellzeitmessung wurde daher
für Displays mit 2 x 16 Zeichen erstellt. Die Darstellung wurde entsprechend angepasst und weicht
geringfügig von der hier gezeigten ab.
Messmethode und Messgrenzen
Das Testobjekt Morsetaste wird an den Port PD0 des Atmega8 angeschlossen, der über den internen
DD7NT
3/14
April 2017
Pullup-Widerstand des Prozessors auf "High" gezogen ist. Anschließend wird die Taste gedrückt,
der Port wechselt auf "Low" und die Taste wird wieder losgelassen. Durch eine möglichst schnelle
Abtastung des Ports in einer Schleife wird erkannt, wie oft der Port beim Drücken der Taste nach
dem ersten Wechsel auf "Low" wieder auf "High" springt, bevor er für ein "stabiles Intervall" auf
"Low" stehen bleibt. Beim anschließendem Loslassen der Taste wird nach dem ersten Zustand
"High" beobachtet, wie lange und wie oft der Port auf "Low" zurückfällt, bevor er im
abschließenden Zustand "High" stabil wird. Die Prellzeiten an den beiden Zustandsübergängen
werden gemessen. Die Dauer eines "stabilen Intervalls" kann eingestellt werden. Als Standard
wurden 10ms voreingestellt. Die registrierte Zahl der Abweichungen vom "Sollzustand" sind nicht
identisch mit der Zahl der Prellvorgänge. Bei diskreter Abtastung kann nicht entschieden werden,
ob es sich bei aufeinanderfolgenden Abweichungen vom Sollzustand um einen andauernden
Prellvorgang oder um zwei aufeinanderfolgende schnelle Prellvorgänge gehandelt hat. Daher wird
die Zahl der Sollabweichungen als "N" ausgegeben. Immerhin zeigt auch diese Größe in der
Tendenz etwas über die Qualität oder die Spezifik eines Kontaktes.
Bild 3: Ablauf der Messung
DD7NT
Zeitpunkt
4/14
April 2017
Ereignis
T0
Beginn der Messung. Es wird ein stabiler "OFF" (=High) Zustand am Port
abgewartet. Diese erste "OFF" Phase wird zur Erreichung eines stabilen
Ausgangszustands benötigt und wird nicht weiter ausgewertet.
T1
Der stabile Zustand ist eingetreten. Das Intervall (T0,T1) ist ein willkürlich
festgelegtes Zeitintervall, bei dem man davon ausgehen kann, dass bezogen auf den
jeweiligen Schaltzustand, keine Preller mehr auftreten werden. Nachdem T1 erreicht
wurde, wartet das Programm nun auf die erste Zustandsänderung nach "Low" , die
den "ON"-Zustand (Taste gedrückt) einleitet.
T2
Am Port tritt der erste "LOW" Wert auf. Jetzt werden zwei Zähler mit dem Wert 0
initialisiert und durch den Timer0 des Atmega8 per Timerinterrupt nach jeweils
100µs inkrementiert. Zähler1 läuft durch, bis bei T4 ein stabiler Zustand erreicht
wird. Zähler2 wird jedes Mal auf Null zurückgesetzt sobald in der Prellphase (rote
Fläche) der Port vom Sollwert "Low" wieder auf "High" zurückgefallen ist. bei
Erreichen von T4 wird auch dieser Zähler angehalten. Die Prelldauer beim Drücken
der Taste ergibt sich aus dem Wert von Zähler1 minus Zähler2.
T4
Der Zustand "Low" (Taste gedrückt) ist nun stabil. Es wird auf den ersten "High"
Zustand des Ports gewartet, der das Loslassen der Taste anzeigt.
T5
Der Wartezustand auf "High" wird beendet. Analog zu T3 werden nun wieder die
zwei Zähler zum Feststellen der Prellzeit bei "OFF" nun aber mit dem Sollwert
"High" gestartet. die Differenz beider Zähler ergibt dann die Prellzeit beim
Loslassen der Taste
T6
Der "High"-Zustand ist stabil geworden. Die Messung ist beendet.
Um eine Aussage zu erhalten, mit welcher Abtastrate der Schaltzustand der Taste am Port PD0 des
Atmega8 abgefragt wird, wurde in die beiden Programmteile "Warten auf stabilen Zustand"
wait_stable() und "Warten auf Zustandsänderung" wait_change() zwei Anweisungen eingebaut, die
den Port PD3 "toggeln", d.h. pro Durchlauf jeweils von 0 nach 1 bzw. von 1 nach 0 schalten. Zwei
dieser Schaltvorgänge ergeben eine Rechteckschwingung mit der halben Durchlaufrate, die man mit
dem Frequenzzähler erfassen kann. Bei dem mit 16 MHz getakteten Atmega8 kam der wait_stableZyklus auf eine Durchlaufrate 153 kHz und der wait_change-Zyklus auf 214 kHz. Damit kann man
davon ausgehen, dass ein Prellereignis ab einer Dauer von 7µs sicher erfasst wird.
Die Beobachtungsgenauigkeit der Anordnung reicht damit aus, um die in der Praxis stattfindenden
Prellvorgänge mit einer für den Funkamateur ausreichenden Genauigkeit zu beobachten. Man kann
dazu auch die Angaben in dem Grundlagenartikel von Jack Ganssle /1/ heranziehen.
Eine verfeinerte Zeiterfassung (besser als 100µs) durch Hinzunahme des Zählerrestes in TCNT0
hat sich nicht als zweckmäßig erwiesen. Die Zählerreste können nicht mit der nötigen Genauigkeit
erfasst und verwertet werden und geben beim Aufaddieren zu lange Prellzeiten.
Messungen an Bugs (Schlackertasten)
Die im vorigen Abschnitt beschriebene Methode wird für Handtasten und Paddles benutzt. Bei den
Paddles werden Strich- und Punktkontakt zusammengeschaltet an Port PD0 gelegt. Als Ergebnisse
erscheinen die Prellzeiten für "ON" und "OFF" sowie die Zahl der erfassten Sollabweichungen.
Dieser Programmzweig kann man auch Bugs nutzen um den Strichkontakt zu testen oder einen
DD7NT
5/14
April 2017
Einzelpunkt zu geben. . Für Punkteserien an Bugs wurde ein gesonderter Programmzweig
aufgenommen. Darin werden nicht nur die Prellzeiten, sondern auch die Dauer der stabilen Phasen
für eine Serie von je 10 Punkten ausgewertet. Die stabile Länge eines Punktes ergibt sich nach
Bild 2 zu T5-T4+Tstabil (= Zeitdauer des grünen Bereiches).
Menüs und Bedienung
Das Menü des "Prellomaten" hat den in Bild 4 dargestellten Aufbau:
Bild 4: Menüaufbau
Durch die Menüeinträge kann man jeweils mit dem Drehencoder vor und zurück scrollen. Betätigt
man den Taster des Drehencoders, wird die Ebene des jeweils gewählten Zweiges erreicht. Mit
"Zurück" erreicht man immer das Hauptmenü. Das Menü hat nur 2 Ebenen mit 3 Zweigen in der 2.
Ebene. Es startet mit "Messen"
Messen einer Serie mit einer Handtaste
 = einen Drehencoderschritt vorwärts (im Uhrzeigersinn)

= Drehencoder drücken (Tasterfunktion des Drehencoders)
Ablauf:
"Messen"  "Taste/Schalter"  "*Key OFF-ON-OFF*". Das ist die Aufforderung, die Taste
nun zu betätigen und wieder loszulassen. Danach erscheint das Ergebnis dieser einen Messung.
Bild 5: Messergebnis Taste K45
Das Betätigen der Taste war prellfrei. Beim Loslassen wurden 1.2 ms lang 218 Sollabweichungen
gezählt. Der "*" rechts in der 2. Zeile erscheint erst nach einer kurzen Pause. Man kann dann mit 
zurück ins Grundmenü wechseln oder man betätigt die Taste und kommt zum Beginn der nächsten
Messung; es erscheint wieder "*Key OFF-ON-OFF*". Misst man nacheinander mehrere
DD7NT
6/14
April 2017
Schaltvorgänge ohne zum Startmenü zurückzugehen, kann man sich den gesammelten
Durchschnittswert für die ON- bzw. OFF-Prellzeit ansehen: mit  ins Grundmenü 
"Ergebnisse"  "Werte Taste" 
Messen einer Serie mit einem Bug
Ablauf:
"Messen"  "Taste/Schalter"  "Bug"  "*Punkte geben*". Das ist die Aufforderung mit
dem Bug eine Punkteserie von mindestens 8 Punkten zu geben. Für die Punkteserie wird die
mittlere Prellzeit für ON und OFF sowie die mittlere Punktelänge und Pausenlänge ermittelt.
Bild 6: Prellzeiten / stabile Zeiten für eine einzelne Serie aus 8 Punkten bei einem Bug
Erscheint nach der Punkteserie im Display rechts im Display der "*", kann eine weitere Serie
gemessen werden oder mit mit  ins Grundmenü  "Ergebnisse"  "Werte Taste" 
"Werte Bug" 
Mit 
wird jeweils weiter geschaltet
Bild 7: Gesammelte Werte für ein Bug, gemittelt über 9 Punkteserien mit je 8 Punkten.
DD7NT
7/14
April 2017
Einstellungen ändern
Im Zweig Einstellungen gibt es folgende Einstellmöglichkeiten:
Menüpunkt
Pullup Ein
Verwendung
Schaltet an dem für die Zeitermittlung verwendeten Port PD0 das Pullup ein. Der
Port führt dann eine Spannung von ca. 5V, die beim Betätigen des Schalters / der
Taste heruntergezogen wird. Diese Einstellung ist beim Start Standard. Wird Pullup
abgeschaltet, kann es durch  hier wieder eingeschaltet werden.
Pullup Aus Damit kann man am Port PD0 Pullup ausschalten. Das kann zur Erprobung von
Entprellschaltungen erforderlich sein, in die der zwischen Spannungsquelle und
Portausgang integrierte Pullup-Widerstand im Prozessor (ca. 50k) nicht integriert
werden kann. Die entsprechende Entprellschaltung (siehe hierzu /1/ ) muss dann
selbst eine ausreichende Pullup-Spannung bereitstellen.
Zeitkonstante
Durch  und Drehen des Enocders kann die standardmäßig eingestellte "stabile
Zeit" von 10ms erhöht oder verringert werden. Für das Messen ist das mit
Ausnahme bei Drehencodern nicht erforderlich. Für Drehencoder sollte man eine
geringere stabile Phase wählen. Das Erhöhen der erforderlichen stabilen Phase ist
bis 200ms möglich. Diese Möglichkeit kann man nutzen, um am Port PD3 die
Schaltfrequenz für den wait-stable-Zyklus zu messen. Erhöht man die stabile Zeit so
weit, dass man mit der Messobjekt eine kurzen Schaltvorgang hinbekommt, der
schneller ist, als die stabile Zeit, dann wird dieser Schaltvorgang für einen
Prellvorgang gehalten und der wait-stable-Zyklus wird nicht verlassen. Das
ermöglicht das Ablesen am Frequenzzählers der halben Abtastfrequenz des sonst zu
kurzen Abschnitts. Für den wait-change-Zyklus ist dieser Trick nicht erforderlich.
Solange die Taste gehalten wird oder losgelassen bleibt, kann die halbe
Abtastfrequenz für diesen Abschnitt der Messung bequem abgelesen werden.
Einige Messergebnisse für Paddles und Handtasten
Die folgenden Tabellen zeigen einige ermittelte Werte in ms für Paddles, Bugs und Handtasten. Für
Bugs wurden jeweils 10 Serien mit je 8 Punkten gemessen, für die übrigen jeweils 10 Einzelwerte.
Bei den Paddles wurde der "schlechtere" Kontakt gewertet. Sind die Ergebnisse bei einem Paddle
unterschiedlich, sollte man die Reinheit der Kontakte, Abstand und Federspannung sowie die
Stellung des Kontakts prüfen. Mann kann die Einstellung bezüglich der Prellzeit optimieren.
Alle Messungen erfolgten mit einer Spannung an der Taste von 5V und einem Tastenstrom von
100µA.
DD7NT
8/14
April 2017
Paddles (ms)
Ø Prellzeit ON
Ø Prellzeit OFF
Scheunemann P3
0,3
0,0
Scheunemann Einhebel II
0,0
0,1
Bencher
0,0
0,1
Die gemessenen Zeiten belegen die hochwertige mechanische Fertigung dieser Tasten. Hier muss
man sich über das Entprellen keinerlei Gedanken machen. Die Scheunemann Einhebel II arbeitet
am besten mit eng eingestellten Kontakten.
Handtasten (ms)
Ø Prellzeit ON
Ø Prellzeit OFF
Tschechische Bügeltaste
0,1
0,1
KENT
5,1
0,2
MT50 Funkwerk Köpenick
0,0
0,6
Junker
0 ,0
1,1
K45 Fahrzeugtechnik Leipzig
0,0
1,6
Bei den Handtasten fallen die guten Werte der K45 und der tschechischen Bügeltaste auf. Letztere
besticht darüber hinaus mit einem hohen Gebekomfort. Bei allen Handtasten wurde ein
ausreichender Hub und eine relativ straffe Federspannung eingestellt. Zu kleiner Hub und zu lasche
Federspannung verschlechtern die Werte. Die Kontakte wurden vor dem Messen gereinigt.
Neben den Tasten wurden diverse Schalter und Taster gemessen. Es traten durchgängig Prellzeiten
zwischen 1 und 10 ms ON und zwischen 0 und 2ms OFF auf.
Messungen an Bugs
Bei Bugs ist der Punktkontakt interessant. Durch den Andruck der Feder an den Punktkontakt
entsteht auch eine reibende Querbewegung zwischen den Kontakten.
Bild 8: Bewegungen am Punktkontakt einer Bug
DD7NT
9/14
April 2017
Einen Eindruck vom Geschehen gibt die Anzahl der Sollabweichungen "ON" bei der
Einzelmessung eines Punktkontaktes Die Regel sind > 500 Abweichungen pro Punkt in Zeiten
zwischen 3-16 ms. Dann folgt eine stabile Phase und der Kontakt
öffnet ohne oder mit wenigen Abweichungen.
Bild 9: Einzelmessungen am Punktkontakt (Vibroplex Anniversary)
Messung im Bugmodus - 8 Punkte gemittelt x 10 Proben
Bugs (ms)
Ø Prellzeit ON
Ø Prellzeit OFF Stabil ON
Stabil OFF
Vibroplex Blue 4,6
Racer
#104759
0,0
65,3
59,1
Vibroplex
Anniversary
#916
6,7
0,0
71,5
63,2
BK100
8,4
0,0
94,4
77,5
Die Prellzeiten beim Schließen der Kontaktfeder des Punktkontaktes sind, verglichen mit guten
Paddles und Handtasten, vergleichsweise lang. Beim Andruck der Feder an den Punktkontakt
bewegt sich der Federkontakt durch die Kontraktion der Feder auf dem Punktkontakt. Diese
reibende Kontaktierung verursacht längeres Prellen. Industriell gefertigte Transceiver kommen mit
diesen Prellzeiten in der Regel zurecht. Mitunter könnte aber auch da bereits ein Kratzen hörbar
sein. Für den Eigenbau von Transceivern oder von Keyern mit gemeinsamem Handtasten- /
Paddleeingang sollte man selbst für Entprellung sorgen.
DD7NT
10/14
April 2017
Versuche mit Entprellschaltungen
Kondensator parallel zur Taste
Der erste Versuch, einen prellenden Schalter oder eine prellende Taste zu bändigen, besteht meist
darin, eine Kondensator parallel zu schalten. Dieser liegt dann in Reihe mit dem Pullup-Widerstand
im Prozessor. Da die BK100 und die KENT-Handtaste etwas höhere Prellzeiten hatten, wurde
damit verglichen.
Taste (ms)
C in nF
Ø Prellzeit
ON
ohne C
Ø Prellzeit
OFF
ohne C
Ø Prellzeit ON
mit C
Ø Prellzeit OFF
mit C
BK100
150
8,4
0,0
0,3
1,7
Kent
150
5,1
0,2
0.0
1,8
Man sieht, dass dieser einfache Versuch nicht unbedingt zu verwerfen ist. Während die Prellzeit
beim Auftreffen des Punktkontaktes nun kein Thema mehr ist, verschlechtert sich die Prellzeit beim
"Abheben". Die Summe der Prellzeiten verringert sich deutlich. Das Punkt/ Pause-Verhältnis bei der
Bug verschiebt sich zugunsten längerer Punkte (1,67 mit C gegenüber 1,3 ohne). Die
Geschwindigkeit bleibt unverändert. Wenn man durch Justage ein vernünftiges Punkt/PauseVerhältnis wieder erreichen kann, ist das Entprellen einer Bug oder einer Handtaste mit einem
geeignet dimensionierten Kondensator insbesondere bei Eigenbau TRX ein möglicher Weg.
Warum taucht bei der BK100, die beim Abheben des Kontaktes ohne parallel geschalteten
Kondensator nicht prellt, nun nach Parallelschaltung des 150nF Kondensators eine längere Prellzeit
auf? Diese Frage hat mich längere Zeit beschäftigt. Mit C parallel zur Taste wird die Schaltflanke
beim Loslassen des Kontaktes abgeflacht. Trotzdem sollte das nicht zu Sollabweichungen führen.
Da die Prellzeiten und die Zahl der Sollabweichungen bei Parallelschaltung eines Kondensators bei
mehreren Proben immer fast identisch waren und abhängig von der Kapazität des Kondensators, bin
ich zu der Ansicht gekommen, dass es beim Öffnen des Kontaktes eine kurze gedämpfte
Schwingung gibt, die hier registriert wird. Diese Vermutung wurde bestätigt, als ich einen
ATTiny13-Prozessor mit Entprellprogramm testete. Wenn das entprellte Signal vom Attiny direkt an
den Atmega8 angelegt wurde, waren keine Sollabweichungen zu registrieren. Wurde ein
Optokoppler dazwischengeschaltet gab es bei der Einzelmessung OFF-Prellzeiten < 100µs
(aufgerundet auf 0,1ms) mit konstant jeweils 14 Sollabweichungen pro Versuch. Der Optokoppler
bringt eine kleine Kapazität mit.
Kondensator mit Lade/Entladewiderstand und Schmitt-Trigger
Diese Entprellschaltung findet man bei /1/ sowie in Datenblättern von Drehencodern (dort ohne
Schmitt-Trigger)
DD7NT
11/14
April 2017
Bild 10: Entprellschaltung nach Ganssle /1/
Bei bekannten Schaltschwellen des Triggers kann die Dimensionierung des Kondensators und der
Widerstände für bekannte Prellzeiten berechnet werden. Dafür gibt Ganssle ein Beispiel an. Da aber
das "Tastverhältnis" der Preller nicht bekannt ist und wohl auch hier das Einfügen des Kondensators
zum kurzen Nachschwingen führt, hatte ich mit meinen Versuchen dazu keine signifikant besseren
Ergebnisse als mit dem einfachen Parallelschalten eines Kondensators.
Entprellen mit einem Attiny13 Prozessor
Die Entprellschaltung mit Trigger kann digital nachgebildet und verbessert werden. Der Test eines
kleinen Programms mit dem ATTiny13 und der BK100 lieferte das erwartete
Ergebnis (Einzelpunktmessung und Serienmessung) sowie ein gutes Punkt/Pause-Verhältnis:
Bild 11: digital entprellte BK 100
DD7NT
12/14
April 2017
Verwendet wurde ein 32-Byte großer Puffer, in dem im Takt von 220µs die Werte 0/1des
Bugkontakts eingetragen und gleitend summiert werden. Zwei Schwellwerte für die Summe bilden
die Hysterese ab, bei der geschaltet wird. Nach jedem Schalten wird ein erneutes
Schalten für 40 Takte (ca. 9ms) unterbunden. In dieser Zeit wird die gleitende Summe weiterhin
berechnet, so dass nach dieser Haltezeit sofort geschaltet werden kann. Die verwendeten Werte
eignen sich damit sowohl für QRS als auch für QRQ. Vom ATTiny13 wird das CW-Signal entweder
direkt oder über Optokoppler an die Messschaltung oder zum Anhören an den TRX geliefert. Bei
direkter Kopplung des ATTINY13 an den Atmega8 muss dort vorher das Pullup des Ports PD0 im
Menü abgeschaltet werden. Das Punkt/Pause-Verhältnis liegt bei ca. 0,9 – 1.1 und ist ohne
Veränderung der Justage besser als mit parallelem Kondensator.
Bei einem 32-Byte Puffer mit 0/1-Werten ergeben sich gleitende Summen von 0...32. Die
Schwellwerte für das Schalten wurden mit 8 (ON) und 24 (OFF) festgesetzt. Die BK100 wurde
auch bei langsamster Geschwindigkeit von 55 BPM sicher entprellt. Bei dieser Einstellung zeigte
sie ohne Entprellung trotz sorgfältiger Justage am TRX gelegentlich ein deutliches Kratzen.
Die Verwendung von Logikbauteilen und Optokopplern kann bei QRO zu Problemen führen, die
bei der Spannungsversorgung, der Schirmung einer solchen Baugruppe und der Kabel der Tasten zu
beachten sind. Ggf. können die Tasten und die Leitung zum TRX mit Tiefpässen versehen werden.
Bild 12: Testplatine mit ATTINY13 als Entprellschaltung
DD7NT
13/14
April 2017
Bild 13: Schaltung damit ATTINY13
Warum prellen Morsetasten?
Nach einem Vortrag über dieses Thema zum OV-Abend war die häufigste Frage: welche Ursachen
gibt es für das Prellen der Tasten, welche Einflussfaktoren bestimmen die Prelldauer?
Die Messungen der Prellzeiten ergaben durchgängig sehr gute Werte für präzis gefertigte Paddles
und Handtasten. Daher scheint die Tastenmechanik das bestimmende Element zu sein. Sauber
aufsetzende Kontakte mit hoher Oberflächengüte, Lager mit sehr geringem Spiel und gut
eingestellte Federspannung führen dort zu vernachlässigbaren Prellzeiten bzw. der Kontakt prellt
nicht.
Beim Punktkontakt von Bugs, der kontruktionsbedingt in Bewegung aufsetzt und reibt, sieht man
längere Prellzeiten beim Schließen des Kontaktes, während beim Öffnen kaum Preller gesehen
werden. Für meine Bugs habe ich die besten Werte erzielt, wenn ich Schwungfeder und Gewicht
eine relativ weite Bewegung erlaubt habe und den Abstand des Punktkontaktes anschließend so
eingestellt habe, dass ein Punkt/Pause-Verhältnis nahe 1 erreicht wird. Zu eng eingestellte Bugs
geben zu kurze Punkte und neigen zu längeren Prellzeiten sowie zum Prellen beim Öffnen des
Kontakts.
Für Preller beim Öffnen von Handtasten und Paddles kommt eine zu schwach eingestellte
Federspannung in Frage. Selbst geringe Verschmutzungen verursachen ebenfalls eine schlechte
Kontaktgabe.
Peter, DL6DSA brachte die Diskussion auf den Einfluss von Tastenspannung und Strom auf des
Prellverhalten und trug dazu die entsprechenden Werte mehrerer Transceiver zusammen. Die an der
Taste gemessenen Spannungen reichen von 3,3V bis 7V und die Ströme bei geschlossenem Kontakt
von 50µA bis 800µA. Ich habe daraufhin Versuchsreihen mit einer Spannung von 5V und Strömen
von 100µA, 1mA und 5mA mit dem Bug BK100 durchgeführt. Beim Schließen des Punktkontaktes
DD7NT
14/14
April 2017
ergaben sich keine schlüssigen Veränderung der Prellzeit. Beim Öffnen konnte eine Verringerung
der Prellzeiten bei höheren Strömen beobachtet werden (100µA ON=6,2ms / OFF=0,3ms; 1mA
ON=5,9ms OFF=0,1ms; 5mA ON=6,7ms OFF=0,0ms).
Zusammenfassung
Es wird eine Schaltung auf Basis eines Atmega8 vorgestellt, mit der das Prellverhalten von
Schaltern und Tasten beobachtet werden kann. Damit wurden Morsetasten getestet.
Bei qualitativ hochwertigen Tasten wurden Prellzeiten beobachtet, die vernachlässigt werden
können. Bei Bugs kann man über einen parallel geschalteten Kondensator /eine Lösung mit
nachgeschalteter Logik anlassbezogen (Eigenbau TRX) nachdenken.
Ursachen für hörbar unsaubere Tastung – soweit sie nicht in der Gebeweise liegen – können in
gelockerten Rändelschrauben, Verschmutzungen oder korrekturbedürftiger Justage liegen. Für das
saubere Einstellen von Tasten, insbesondere von Bugs, ist der „Prellomat“ eine gute Hilfe.
Entprellschaltungen können auf ihre Wirksamkeit damit praktisch untersucht werden.
Quellenverweise
/1/ Jack Ganssle: A Guide to Debouncing, or, How to Debounce a Contact in Two Easy Pages,
2004-2014 in: http://www.ganssle.com/debouncing.htm
/2/ Zur Beschaltung des Atmega8 - Nutzung der ISP-Ports für das Display:
http://www.avrfreaks.net/forum/can-i-reuse-isp-pins-other-taskstarget-Atmega164p
/3/ Zu Problemen mit dem Display Datavision DV20208
https://www.mikrocontroller.net/topic/279944
Anlagen
•
Hexdatei für Atmega8 (Prelltest16.hex)
•
Hexdatei für Entprellprogrann mit dem Attiny13 (Entpreller16.hex)
Herunterladen