Přesné řízení serva
Napsal: 9. 1. 2023, 1:33
Potřeboval bych pomoct s řešením, nebo ještě raději vyřešit "na klíč" přesné řízení serva.
Jde o tohle: mám servo s driverem s ovládáním step/dir. Driver řídím interpolátorem GVE 84 od Gravosu a tomu zadávám povely z PC. Požadovaná funkce je roztočit servo a zase zastavit, přičemž je potřeba co nejpřesněji dodržet rychlost otáčení serva, která musí růst a klesat po sinusovce (v=1−cos(t)). Ve spojení s kuličkovým šroubem je tím vlastně realizovaná taková digitální kliková hřídel. Celé je to hardwarově, elektricky i softwarově funkční, ale potřeboval bych to řízení udělat přesnější, s hladším průběhem. Teď to dělám tak, že aproximuju sínusovku pomocí posloupnosti několika vektorů, což způsobuje skokové změny rychlosti, nebo aproximací pomocí rychlosti a zrychlení, tam ale vycházejí zrychlení tak nízká, že se od interpolátoru nedá spravedlivě chtít aby je přesně dodržoval a vzniká příliš velká odchylka od sinusového průběhu. Použít skutečný klikový mechanismus nelze, protože od toho občas potřebuju i lineární pohyb.
Vím, že tu pár lidí vlastní interpolátor řešilo, takže mám prosbu, jestli byste někdo neuměl tohle postavit na zakázku, s nějakým jednoduchým komunikačním protokolem a připojením na PC přes UART, RS232 nebo RS485. Předpokládané dosahované rychlosti jsou do 8 ot/s při 2000 pulsech na otáčku a dráze do 20 otáček. V úvahu připadá i výměna serva a/nebo driveru za jiný typ, pokud by to bylo potřebné. Řešením by bylo i najít nějaký interpolátor který tohle bude umět sám od sebe, ale pohybuju tady se mimo hranice normálního použití pro CNC, takže nevím, jestli to půjde.
Jde o tohle: mám servo s driverem s ovládáním step/dir. Driver řídím interpolátorem GVE 84 od Gravosu a tomu zadávám povely z PC. Požadovaná funkce je roztočit servo a zase zastavit, přičemž je potřeba co nejpřesněji dodržet rychlost otáčení serva, která musí růst a klesat po sinusovce (v=1−cos(t)). Ve spojení s kuličkovým šroubem je tím vlastně realizovaná taková digitální kliková hřídel. Celé je to hardwarově, elektricky i softwarově funkční, ale potřeboval bych to řízení udělat přesnější, s hladším průběhem. Teď to dělám tak, že aproximuju sínusovku pomocí posloupnosti několika vektorů, což způsobuje skokové změny rychlosti, nebo aproximací pomocí rychlosti a zrychlení, tam ale vycházejí zrychlení tak nízká, že se od interpolátoru nedá spravedlivě chtít aby je přesně dodržoval a vzniká příliš velká odchylka od sinusového průběhu. Použít skutečný klikový mechanismus nelze, protože od toho občas potřebuju i lineární pohyb.
Vím, že tu pár lidí vlastní interpolátor řešilo, takže mám prosbu, jestli byste někdo neuměl tohle postavit na zakázku, s nějakým jednoduchým komunikačním protokolem a připojením na PC přes UART, RS232 nebo RS485. Předpokládané dosahované rychlosti jsou do 8 ot/s při 2000 pulsech na otáčku a dráze do 20 otáček. V úvahu připadá i výměna serva a/nebo driveru za jiný typ, pokud by to bylo potřebné. Řešením by bylo i najít nějaký interpolátor který tohle bude umět sám od sebe, ale pohybuju tady se mimo hranice normálního použití pro CNC, takže nevím, jestli to půjde.