Filozoficky rozbor proto, abys pochopil ze pro tiskarnu je to k nicemu
Ja to na krokacich pouzivam v jednom jednoucelovem CNC obrabecim stroji, ale jen pro hlidani vypadku kroku.
Takze postrehy z praxe: Pro tento ucel se to pouzit da, ale je tam nekolik zadrhelu se kterymi je treba pocitat.
Krokovy motor se vzdy za polohou danou prichazejicimi pulzy trochu zpozduje. To zpozdeni je zavisle na otackach a zatizeni motoru. S tim se musi system do ktereho je zapojen enkoder poprat. U otacek to neni celkem problem, u zatizeni ano, protoze ho system nezna. Z tohoto (a mnoha jinych) duvodu je i nesmysl nejakym zpusobem dorovnavat polohu za chodu motoru.
Pokud by se nejake dorovnavani melo konat, musel by system spocitat v realnem case polohovou, rychlostni i momentovou PIDku a vysledek nejakym zpusobem prenest na motor. Jenze to by arduino nestihalo ani kdyby obsluhovalo jediny motor a nedelalo nic jineho, bezne drivery na to nejsou stavene a ani krokac nedokaze v potrebne chvili zvysit nekolikanasobne moment tak jako servo.
Ja to pouzivam ve stroji proto, ze pokud se neco zasekne apod., pokundi se hodne drahy dil ktery se obrabi, havarie by mohla byt celkem nebezpecna pro obsluhu a ani nastroje nejsou za hubicku. Funguje mi to tak, ze pokud se lisi zadana a skutecna poloha o vic nez 20 mikrokroku, system vyhlasi chybu ztrata kroku a zastavi stroj. Na nic jineho enkoder u beznych krokacu pouzitelny neni, takze pochybuji ze to bude implementovano v nekterem FW. Ja jsem si psal FW pro zmineny stroj od zakladu sam.