Drehgeber anschließen über 1m-Zuleitung - Leitung schirmen?

OP #2589863
Lesenswert?

Hallo Leute,

ich probiere gerade mit Drehgebern herum und möchte bei meinem nächsten 
Projekt vier davon verwenden, Typ: EC11 von ALPS.

Mit der Auswerteroutine von Peter Dannegger klappt auch alles in der 
Test-Schaltung, wo aber bis jetzt nur ein EC11 direkt auf der Platine 
verbaut ist. OK, ob einer oder vier EC11 ist der Auswertung ja egal, 
aber mein Problem ist folgendes:

Die Drehgeber müssen ca. 1m entfernt von der Platine angebracht werden 
(zwei 1m links davon, zwei 1m rechts davon), und da wollte ich einfachen 
Schaltdraht ("Klingeldraht") für die Zuleitungen verwenden, die ja nur 
aus A, B, und GND bestehen. Interne Pullups am uC sind aktiviert.

Wird so eine Konstruktion eher als Antenne wirken und Störungen in die 
Schaltung einkoppeln, oder ist bei dieser Konstellation nichts 
dergleichen zu befürchten? Als Alternative könnte ich Kopfhörerkabel 
verwenden, lohnt sich das? Oder ist es noch sinnvoll, irgendeine Art 
RC-Tiefpass an die uC-Eingänge zu hängen (bzw. ein einfacher C nach GND 
reicht ja wegen der Pullups)?

Danke für eure Einschätzungen.

Gruß
Jens
#2589892
Lesenswert?

@  Jens B. (nixiefreak)

>der Idee eines einfachen 100nF nach GND von den Inputs des uC

Schlecht, denn dann schließt dein Drehgeber immer einen geladenen 
Kondensator kurz, das wird er auf Dauer nicht mögen. Die zwei 
Widerstände braucht man schon noch. Und wenn du einen AVR hast, dann hat 
der schon Schmitt-Trigger eingebaut.
OP #2589900
Lesenswert?

Ich nutze den PIC16LF722, genauer, dessen PORTB wegen der internen 
Pullups.

Na gut, man kann dem 100nF ja noch einen R in Reihe spendieren (150R 
oder so), ändert die Tiefpasscharakteristik nicht zu sensibel und die 
Entladung dürfte dann auch stressfreier für das Kerlchen sein.

Ich habe auf der Platine keinen Platz mehr für einen dedizierten 
Schmitt-Trigger, und die Drehgeber-Routine von Peter ist ja spitze, die 
fängt sogar Prellen ab, daher dachte ich, die Spar-Maßnahme reicht.

Gruß
Jens
Gast #2589907
Lesenswert?

Man sieht von hier aus Dein Störfeld nicht. In einfachen Fällen könnte 
auf dem Schreibtisch verdrillter Klingeldraht reichen. Wenn jedoch PWM 
und Motoren ins Spiel kommen wird die Sache kniffliger. Schon mal 
LAN-Kabel getestet?
OP #2589912
Lesenswert?

Die Schaltung (Schaltplan hab ich nur im Kopf) besteht aus insgesamt elf 
Sieben-Segment-Anzeigen, die mittels CD4094-Schieberegister -> ULN2803A 
angesteuert werden, ohne PWM, also einfach nur statisch an. Dann noch 
die vier Drehgeber und ein Taster, das war's.

Allerdings soll die Schaltung auf einem Messestand verwendet werden, wie 
es da mit Störquellen aussieht weiß man vorher ja nie so genau.

Gruß
Jens
#2589976
Lesenswert?

Kondensatoren könnten das Entprellen durcheinander bringen.
Besser die Pullups schön niederohmig machen (1k).
Die Abfrage im Timerinterrupt sollte dann ausreichend resistent gegen 
Störungen sein.

Oder jedem Encoder seinen eigenen µC (ATtiny25) spendieren und alle als 
I2C-Slave an einen Bus.


Peter
Gast #2589985
Lesenswert?

Jens B. schrieb:
> Ich nutze den PIC16LF722, genauer, dessen PORTB wegen der internen
> Pullups.

Die dir in diesem Fall nicht nutzen da es "weak pullups" sind. Auch 
Schmitt Trrigger etc führen in die falsche Richtung, die können 
Störungen auch  icht filtern (sonst wären es ja keine).

Mach die Leitungen niederohmig. Niemand hindert dich die Pullups auf 
(brutalstmögliche aber übertriebene) 100 Ohm zu setzen. Ein Schirm dazu. 
Auf Messen weiß man nie was drumherum ist, Handystrahlung ist auf jeden 
Fall immer "genug vorhanden".
Gast #2589994
Lesenswert?

> Wird so eine Konstruktion eher als Antenne wirken und Störungen in die
> Schaltung einkoppeln

Ja

> Als Alternative könnte ich Kopfhörerkabel verwenden, lohnt sich das?

Geschirmtes Kabel ist sinnvoll, aber bei 1m nicht nötig.

> Oder ist es noch sinnvoll, irgendeine Art RC-Tiefpass an die
> uC-Eingänge zu hängen (bzw. ein einfacher C nach GND
> reicht ja wegen der Pullups)?

Nein, bloss nicht.

Aber nimm dringenst niederohmigere PullUps, ich würde 1k vorschlagen für 
5mA Strom. Damit werden die Leitungen ausreichend niederohmig 
angeschlossen damit Einstreuungen nicht zu Spannungsänderungen führen, 
die high zu low bzw. umgekehrt machen.

Nur wenn die 1k PullUps nicht reichen, dann das geschirmte Kabel 
(UKW-Antenne), ich geh aber davon aus daß 1k reichen.
Gast #2589995
Lesenswert?

Peter Dannegger schrieb:
> Oder jedem Encoder seinen eigenen µC (ATtiny25) spendieren und alle als
> I2C-Slave an einen Bus.

Bevor ich so einen Aufstand mache (der das Problem der Störstrahlung von 
einfachen GrayCoder Leitungen auf einen komplexeren Bus "verschiebt") 
nehme ich gleich Optokoppler und lasse die mit 20mA "bestromen".
Gast #2590004
Lesenswert?

Jens B. schrieb:
> weak internal pullups

Einfach messen (Strom gg Masse). Typ. 22k aber temperaturabhängig und 
für deinen Zweck eh nicht zu gebrauchen. Abgesehen davon ist es 
prinzipiell keine gute Idee Störstrahlung im Prozessor zu vernichten. 
Das ist Physik und unabhängig von Marke und irgendwelchen Feinheiten am 
Port.
Gast #2590015
Lesenswert?

Jens B. schrieb:
> Naja, wir reden ja über einen Meter, da muss noch nicht der Holzhammer
> her. ;-)

Eben, ging auch um die Idee die Daten über I2C zu übetragen.



Kopfhörerkabel reicht, Schirmung an zentralen Massepunkt.

Das wichtigste auf Messen ist aber eher Stecker Belegung und Kabel 
anständig zu beschriften ;-).
Gast #2590030
Lesenswert?

Jens B. schrieb:
> Ich arbeite bei 3.3V (ist ja ein LF-PIC), aber die 1k hören sich gut an,
> werde ich einbauen.

Wenn das Ding 5V tolerante Eingänge hat dann empfehle ich damit die 
Encoder zu versorgen. Hebt den (möglichen) Störabstand deutlich an.

Antwort schreiben

Bitte melde dich an, um einen Beitrag zu schreiben.

oder

Mit Google-Account einloggen

Die Registrierung ist kostenlos und dauert nur eine Minute.

Jetzt registrieren