hallo, ich suche eine diskrete schaltung um die signale eines mechanischen drehencoders für einen counter mit einem up/down eingang und einem clock eingang nutzbar zu machen... counter z.b 74 191 m.
D-Flip flop 4013. Kanal A auf D, und Kanal B auf Clock. Am Ausgang hast du dann eine 1 oder 0 je nach Drehrichtung. Damit kannst du deinen Counter umschalten. Jürgen
...das problem der meisten schaltungen ist ja der drehrichtungswechsel... oftmals wird dann noch ein schritt in die falsche richtung gezählt.... ich habe damals einen extremen gatterverhau benötigt um das problem zu lösen, die gepostete seite ist schon nicht schlecht, die komplexere schaltung weiter unten geht schon in die richtung, in der es damals bei mir auch ausgeartet war, die frage ist nur ob sie funktioniert... ich habe damals 4 flankengesteuerte j/k ff mit asynchronen r/s eingängen genutzt und sie alle in bezug auf ihre r/s eingänge in einem ring zusammengeschlatet.... ich habe dann insgesamt auf 4 flanken, und zustände reagiert um das up/down signal im richtigen moment zu beeinflussen... drum herum habe ich fast ausschließlich 4093 verwendet... das problem war eben, das 4 unterschiedliche flanken, unterschiedliche signalzustände des jeweils anderen pins des drehencoders annehmen mussten, und alle hatten einfluss auf einen pin, den u/d pin des counters... ich dachte, das es evtl auch einen besseren, einfacheren weg gibt... m.
@ martin (Gast) >...das problem der meisten schaltungen ist ja der >drehrichtungswechsel... Eben. Die Schaltungen auf der verlinten Seite sind allesamt Hobbymurks. Geht so, aber nciht wasserdicht. Besser so. http://www.dse-faq.elektronik-kompendium.de/dse-faq.htm#F.29 MFG Falk
Hallo, hat diese Schaltung schon jemand ausprobiert: http://www.dse-faq.elektronik-kompendium.de/dse-faq.htm#F.29 Wenn ja, wie kommt sie mit prellenden Kontakten zurecht und was ist das Clock enable Signal? Ist es möglich diese Schaltung mit TTl(74HCT...) IC´s funktionsfähig auzubauen oder wäre es besser einen Gal oder µC zu bemühen. mfg Benedikt
@ Benedikt Lippert (Gast) >Wenn ja, wie kommt sie mit prellenden Kontakten zurecht Problemlos. > und was ist das Clock enable Signal? Da gibt einen nachfolgenden Zähler frei. >Ist es möglich diese Schaltung mit TTl(74HCT...) IC´s funktionsfähig >auzubauen Ja. > oder wäre es besser einen Gal oder µC zu bemühen. Bei niedrigen Drehzahlen ist ein uC besser. Siehe Drehgeber Mfg Falk
http://www.usdigital.com/assets/general/111_lfls7084-s_datasheet_1.pdf LFLS7084-S Encoder to Counter Interface Chip These devices allow incremental shaft encoders to drive standard up/down counters.
So habe ich's auch vor ... Drehencoder + Attiny ... dann hat mans schön diskret und vor allem beschafftbar. Die meiste quadrature decoder sind imho für höhere Auflösungen gedacht und haben rehct unpraktische oder unnütz große packages. Zudem bekommt man eigentlich kaum einen brauchbaren Chip wo gekauft.
Hallo und sorry für das ausgraben dieses alten Threads... Ich habe gerade die diskrete Schaltung aus dem Drehencoder Wikieintrag aufgebaut: http://www.mikrocontroller.net/articles/Drehgeber#Dekoder_mit_diskreten_Logik-ICs Kann mal jemand bitte kurz beschreiben, wie die Signale ausgewertet werden müssen? Leider fehlt dieser Teil im Wiki ;-) Ich bekomme pro Encoder Rastung 4 Flankenwechsel auf der DIR Leitung und 4 oder manchmal mehr Pulse auf der Enable Leitung. Was ich erkennen kann: Bei High auf Enable ist DIR High bei rechtsdrehend, Low bei linksdrehend. (Bilder 1 und 2) Wenn der Encoder aber prellt (langsames drehen) gibt es einen Flankenwechsel auf DIR (Bild 3) In diesem Bild ist nur das prellen dargestellt, also die beiden ersten Flanken, es kommen danach noch 2 weitere. So habe ich beim prellen also mehr als 4 Enable Pulse... Wann soll denn wie ausgewertet werden? Bei Flankenwechsel? Vielen Dank für Eure Tipps. Grüße, Klaus
@ Klaus Leidinger (klausleidinger)
>Wann soll denn wie ausgewertet werden? Bei Flankenwechsel?
Dann braucht man ja keinen Decoder. Man hängt dort einen synchronen
Vorwärts/Rückwärts Zähler mit DIR und Clock enable dran. Der Takt geht
auf den Decoder und den Zähler.
MFG
Falk
Hallo Falk, aha, dann zählt der Zähler die Impulse während ENA aktiv ist, beim prellen also einen vor und wieder einen zurück? Pro Rastung kommen dann doch aber 4 Impulse zu stande, oder? Oh sh*t das ist mit einen Controller ja blöd auszuwerten. Gibt es eine Schaltung die besser für Microcontroller geeignet ist, also die das prellen verschluckt und nur die Anzahl "gültiger" Pulse mit Richtung rausgibt? Vielen Dank, Klaus
@ Klaus Leidinger (klausleidinger) >aha, dann zählt der Zähler die Impulse während ENA aktiv ist, beim >prellen also einen vor und wieder einen zurück? Pro Rastung kommen dann >doch aber 4 Impulse zu stande, oder? Ja. >Oh sh*t das ist mit einen Controller ja blöd auszuwerten. Dafür ist die Schaltung auch nicht gedacht. > Gibt es eine >Schaltung die besser für Microcontroller geeignet ist, also die das >prellen verschluckt und nur die Anzahl "gültiger" Pulse mit Richtung >rausgibt? Die sind alle gültig. Und für einen manuellen Drehgeber braucht man sie nicht, das kann ein uC problemlos direkt auswerten. MFG Falk
Hallo Falk, danke nochmal für die Infos, jetzt ist es klarer. Falk Brunner schrieb: > Die sind alle gültig. Und für einen manuellen Drehgeber braucht man sie > nicht, das kann ein uC problemlos direkt auswerten. Na ja, da würde ich mal sagen "kommt drauf an" wie schnell z.B. der Motor dreht und was noch so alles vom Controller gemacht werden soll. (und wie viele Timer noch übrig sind). Auch bei von Hand bedienten Encodern werden bei schneller Drehung nicht immer alle Impulse erfasst. Ich probiere gerade die Schaltung im Anhang, scheint zumindest für meinen Motor mit Hallgebern ordentlich zu funktionieren. Ich muß aber noch die Wiederholgenauigkeit überprüfen. Grüße, Klaus
@Klaus Leidinger (klausleidinger) >Na ja, da würde ich mal sagen "kommt drauf an" wie schnell z.B. der >Motor dreht und was noch so alles vom Controller gemacht werden soll. Was ist es denn für ein Drehgeber? Wieviel Pulse/Umdrehung? Drehzahl? Siehe Netiquette. >(und wie viele Timer noch übrig sind). Da braucht man keinen extra, das kann man in einen vorhandenen meist problemlos einarbeiten. > Auch bei von Hand bedienten >Encodern werden bei schneller Drehung nicht immer alle Impulse erfasst. Nö, man muss nur halbwegs schnell abtasten, 1 kHz geht meistens in Ordnung. >Ich probiere gerade die Schaltung im Anhang, scheint zumindest für >meinen Motor mit Hallgebern ordentlich zu funktionieren. Nein, das tut sie nicht. Warum das so ist, steht im Artikel Drehgeber. MfG Falk
Hallo Falk, >>Na ja, da würde ich mal sagen "kommt drauf an" wie schnell z.B. der >>Motor dreht und was noch so alles vom Controller gemacht werden soll. > > Was ist es denn für ein Drehgeber? Wieviel Pulse/Umdrehung? Drehzahl? OK, das war eher generisch gemeint, aktuell hat der Motor der bei mir liegt 800 U/Min und einen Geber mit 18°, also 20 Stellungen auf der Motorwelle. Wenn ich das richtig rechne sind das ~500Hz? Brauche ich da nicht schon 2 KHz? Es gibt den Motor aber auch mit 10° und 1500 U/min und sogar mit 1°, wobei das für die geplante Anwendung übertrieben ist. Mit einer ordentlichen Hardwarelösung wäre das Thema halt erledigt gewesen. Bei den geplanten Stückzahlen wären ein paar Cent nicht ins Gewicht gefallen. >>Ich probiere gerade die Schaltung im Anhang, scheint zumindest für >>meinen Motor mit Hallgebern ordentlich zu funktionieren. > > Nein, das tut sie nicht. Warum das so ist, steht im Artikel > Drehgeber. Da hast Du natürlich Recht! Das ist ja die Sache mit dem schwingen. Das Risiko ist mir dann doch zu groß. Wenn es also keine vernünftige diskrete Lösung gibt, dann lieber doch in Software... Grüße, Klaus
@ Klaus Leidinger (klausleidinger) >liegt 800 U/Min und einen Geber mit 18°, also 20 Stellungen auf der >Motorwelle. >Wenn ich das richtig rechne sind das ~500Hz? ich komme auf 266 Pulse/s. >Brauche ich da nicht schon 2 KHz? Ja und? Ein 2 kHz Timer-Interrupt ist für einen heutigen uC ein Klacks. >Es gibt den Motor aber auch mit 10° und 1500 U/min und sogar mit 1°, >wobei das für die geplante Anwendung übertrieben ist. Dann lass es bei 10°. Macht gerade mal 900 Pulse/s. Wenn man die mit sagen wir 5 kHz abtastet ist das kein Thema. >Mit einer ordentlichen Hardwarelösung wäre das Thema halt erledigt >gewesen. Bei den geplanten Stückzahlen wären ein paar Cent nicht ins >Gewicht gefallen. Dann nimm einen AVR und alles wird gut. MfG Falk
Bitte melde dich an um einen Beitrag zu schreiben. Anmeldung ist kostenlos und dauert nur eine Minute.
Bestehender Account
Schon ein Account bei Google/GoogleMail? Keine Anmeldung erforderlich!
Mit Google-Account einloggen
Mit Google-Account einloggen
Noch kein Account? Hier anmelden.