Draairichting Rotary encoders?

Ik speel hier al een tijdje met rotary encoders, tamelijk veelzijdige modules om een apparaat te bedienen. En dan wil je meestal dat een waarde groter wordt als je de encoder met de klok mee draait.

Nu heb ik een aantal encoders laten komen uit china. Die vermelden vaak het typenummer KY-040, maar ik kan daar geen datasheet van vinden.

Die encoders zijn wel pin-compatible met bijvoorbeeld bourns PEC-11 serie. Dat ze maar 20 clicks per omwenteling hebben ipv 24 vind ik niet zo erg.

Onlangs heb ik een paar echte van Bourns laten komen (ivm langere as). En nu blijkt dat die net andersom draaien. Als je met de klok meedraait dan gaat bij de KY040 eerst de B schakelaar dicht, en daarna pas het A contact. Bij die van Bourns is dat precies net andersom.

Ook de plaats van de 'klik' is niet altijd hetzelfde. Bij deze twee zit de klik precies halverwege de positie met A en B open. Bij sommige encoders van ALPS zit de klik halverwege het 'A' traject, dus precies waar 'B' omschakelt. En dan zijn er ook encoders met 2 clicks per cyclus, en ook encodders zonder kliks.

Dus blijkbaar moet je goed opletten welke variant je bestelt, en ik moet nu ook in mijn software een optie inbouwen om de richting van de encoder te kunnen instellen.

Hierbij een paar voorbeeldjes uit verschillende datasheets:
Bourns PEC11/PEC12

ALPS EC11

APLS EC11 (2 clicks per cyclus)

ALPS EC11/EC12

BI Technologies (Draait net andersom.)

Ook bij ALPS heb ik ooit varianten gezien die net andersom draaien.

Volgens mij is dit toch wel belangrijk als je een rotary encoder gaat gebruiken, maar in geen enkele tutorial kan ik dit terug vinden.

wissel A en B of inverteer 1 van beide signalen. Dan draait ie weer de juiste kant op.

four NANDS do make a NOR . Kijk ook eens in onze shop: http://www.bitwizard.nl/shop/

Ja, natuurlijk, maar als je al een print hebt dan wordt dat lastig..

Op 18 maart 2019 00:55:27 schreef deKees:
Ja, natuurlijk, maar als je al een print hebt dan wordt dat lastig..

Dat 'omdraaien' kun je toch simpel in de software oplossen ?

GJ_

Moderator

Op 17 maart 2019 23:29:30 schreef deKees:...en ik moet nu ook in mijn software een optie inbouwen om de richting van de encoder te kunnen instellen.

Een mogelijkheid om dit in te stellen lijkt mij wel het minste. Jumpertjes kan ook natuurlijk, of een paar soldeereilandjes die je aan elkaar kunt solderen.

In mijn STM32 zet ik een bitje: "invert A" of "invert B". Voor een commercieel project heb ik daarvoor een paar bitjes in "de config" voor gemaakt. Die kan de klant dan eenmalig instellen. De oude hardware (uit begin deze eeuw) had een hardware jumper om de signalen te inverteren. een XOR gate (74HC86) een pullup weerstand en een jumper of dip switch.

four NANDS do make a NOR . Kijk ook eens in onze shop: http://www.bitwizard.nl/shop/
GJ_

Moderator

Daar is allebei wat voor te zeggen. Als de klant de encoder monteerd zou ik het in de software willen. Als de encoder op de print gesoldeerd zit zou ik het in de hardware willen of op een onbereikbare plek in de software.

Lambiek

Special Member

Of A komt voor B, of B komt voor A. gewoon in de software inverteren. En of die klik nu aan het begin van de flank zit of in het midden van de puls, moet volgens mij niet uitmaken voor de werking. Of ik moet het mis hebben, ik gebruik alleen maar optische encoders, vind die mechanische maar ondingen. :)

Als je haar maar goed zit, GROETEN LAMBIEK.

Tja, bij een eigen project is het allemaal wel aan te passen. Maar als je voor een bestaand apparaat nieuwe encoders wilt bestellen dan moet je dus wel weten welke je nodig hebt, en die info is doorgaans miet beschikbaar, en ook niet zo gemakkelijk te meten.

En voor mij was het ook een verassing. Ik heb nu dus 2 varianten liggen die net andersom draaien. En de software moet dus aangepast worden aan de gebruikte encoders. Best wel vervelend eigenlijk.

Maar ik zal er maar mee leren leven. Het is niet anders.

De plaats van de klik binnen de cyclus is wel degelijk belangrijk, en hangt af van de gebruikte libraries. Als de library reageert op de flanken van A, dan kun je best een encoder gebruiken die halverwege de A klikt. Mijn library reageert niet op flanken maar op levels. Stable state is A en B allebei hoog. Dan kun je dus maar beter de andere encoder gebruiken, dus met de klik halverwege A en B.

Een goede rotary library zou du eigenlijk alle varianten moeten ondersteunen en ook instelbaar zijn. Best nog wel een puzzel dus.

Bij bijna iedere encoder (van een bekend merk) staat de draairichting... (CW en CCW)

Arco - "Simplicity is a prerequisite for reliability" - www.arcovox.com

Inplaats van de software aan te passen kun je ook het signaal van de encoder inverteren (dat was al eerder beschreven hier).

"vroeger" was alles beter'.
buckfast_beekeeper

Golden Member

Op 18 maart 2019 10:13:01 schreef Lambiek:
Of A komt voor B, of B komt voor A. gewoon in de software inverteren. En of die klik nu aan het begin van de flank zit of in het midden van de puls, moet volgens mij niet uitmaken voor de werking. Of ik moet het mis hebben, ik gebruik alleen maar optische encoders, vind die mechanische maar ondingen. :)

Doe ik ook en altijd dezelfde van Bourns EM14. Geen dender of wat voor zooi ook. Ik weet dat er veel goedkoper te koop is. Toch blijf ik er bij.

Honing kan je importeren, bestuiving niet.
Lambiek

Special Member

Bourns is inderdaad goed spul, maar het is niet echt goedkoop. :)

Als je haar maar goed zit, GROETEN LAMBIEK.

De prijs van Bourns PEC11 en PEC12 zijn goed te doen. Die EM14 valt voor mij buiten budget.

Maar goed, ik zal wel in een optie voorzien om de draairichting in te kunnen stellen.

Misschien een hele domme opmerking, maar het ding een halve slag gedraaid monteren kan dat niet?

Daar waar een schakeling rookt, vloeit de meeste stroom (1e hoofdwet van Toeternietoe)

Andersom monteren? Op zich geen gek idee, misschien zijn er wel modellen waarbij dat kan.

Maar de meeste hebben deze footprint. Dan gaat dat niet werken.

Ik heb net even wat zitten spelen met de Footprint voor deze encoder in KiCad, en heb er 2 op elkaar gezet.

Door de 2e encoder 90 graden te verdraaien heb je erg weinig overlap met de pads.

De pinnen voor de electrische aansluitingen zijn ook vrij dun en flexibel. Die kun je vrij gemakkelijk wat naar buiten buigen.
Niet aan te raden voor echt produktie werk, maar voor hobby en kleine serie's goed te doen.

Een andere optie is om de (through hole) pads voor de A en B lijnen te combineren met Surface mount soldeer bruggen(Bibliotheek Jumper/SolderJumper...) . Dan kun je bij montage b.v. de binnenste 2 solderen voor de ene variant en de buitenste 2 voor de andere variant. Op de print ziet dit er dan zo uit:

(Oops, klein foutje, Rood is bovenkant, Groen is onderkant, de soldeer pads moeten natuurlijk op de onderkant)

[Bericht gewijzigd door Kortsluiting_Online op 14 april 2019 21:59:05 (34%)]

@ Kortsluiting_Online :
Dat vind ik wel een erg creatieve oplossing. Goed bedacht.
Vooral die tweede oplossing ziet erg erg bruikbaar uit.

Gewoon in software A en B omwisselen lijkt me toch een stuk simpeler... ;)

Arco - "Simplicity is a prerequisite for reliability" - www.arcovox.com
Shiptronic

Golden Member

Dan moet je wel bij de software kunnen, dat is met een willekeurig apparaat waar je een drop-in voor zoekt meestal niet het geval .

[Bericht gewijzigd door Shiptronic op 15 april 2019 22:51:47 (78%)]

Wie de vraag stelt, zal met het antwoord moeten leren leven.

Print herontwerpen omdat je niet bij de software kan is toch nog onwaarschijnlijker?

four NANDS do make a NOR . Kijk ook eens in onze shop: http://www.bitwizard.nl/shop/