Tengelyen léptetés közös végállás logikával hogyan?
Van egy arduino uno-ba illeszthető 4 léptető motor vezérlésére képes lapom. Az érdekessége az, hogy mindegyik tengely esetében a kétoldali végálláskapcsolók direktben össze vannak kötve a nyomtatott áramkörön. Tehát hiába van külön tüske az X+ és az X- végállás észlelésére, a szoftver felé mindkét végállás esetén egyetlen bit információ jut csak el.
Eddig a léptető szoftverem tudta, hogy melyik végénél értem el a tengelyt, és így csak az azirányú lépéseket nem adta ki, a másik irányú lépéseket engedélyezte. Ez így kerek, jól is működik.
De hogyan tudom a közösen kezelt végállást korrekten és megbízhatóan kezelni?
Eddig a legjobb ötletem, hogy végállás esetén az utolsó ismert pozíció vagy lépésirány alapján megsaccolom, hogy melyik végállásban van a kettő közül. De ezt nem érzem korrektnek. Például áramszünet esetén, vagy csak elinduláskor, ha a végállás jelez, nem ismerek lépéselőzményeket. Persze minden lépés után el is tárolhatnám az utolsó ismert pozíciót, de - tudtommal - ez olyan mennyiségű írást eredményezne a FLASH memóriában, amivel már hamar tönkre menne.
Tehát mi a korrekt, és teljesen megbízható végállás észlelés logikája, ha a két végálláskapcsoló egy közös jelet küld?
- Tovább (Tengelyen léptetés közös végállás logikával hogyan?)