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.
Přesné řízení serva
Pravidla fóra
toto forum vyzaduje schvaleni prispevku moderatorem
toto forum vyzaduje schvaleni prispevku moderatorem
-
- Sponzor fora
- Příspěvky: 8163
- Registrován: 16. 7. 2006, 12:33
- Bydliště: Praha Bohnice + Roudnice nad Labem
- Kontaktovat uživatele:
Třeba by to šlo, nikdy jsem s tím nedělal Nějaké drobné programování podle vzoru zvládnu, aspoň to budu mít pod kontrolou, ale asi bych teď nedal pronikání do pro mě úplně nové technologie.
Aleš Procháska
Ahoj,
Taky kmitavy pohyb vie sam od seba menic servostar a nic ine k tomu nie je treba. Da sa to spustit cez rs232. Akurat ze to bude treba pred kmitanim nahomovat.
Edit: neviem ci sa takto sa fakt sinus, pre ten kmitavy pohyb sa da definovat rychlost, zrychlenie a typ zrychlenia-linear alebo s-krivka. Mozno touto kombinaciou sa da spravit presny sinus
Taky kmitavy pohyb vie sam od seba menic servostar a nic ine k tomu nie je treba. Da sa to spustit cez rs232. Akurat ze to bude treba pred kmitanim nahomovat.
Edit: neviem ci sa takto sa fakt sinus, pre ten kmitavy pohyb sa da definovat rychlost, zrychlenie a typ zrychlenia-linear alebo s-krivka. Mozno touto kombinaciou sa da spravit presny sinus
S nějakým malým procesorem (STM32F...) bych to dal. Když tak napiš.
-
- Sponzor fora
- Příspěvky: 8163
- Registrován: 16. 7. 2006, 12:33
- Bydliště: Praha Bohnice + Roudnice nad Labem
- Kontaktovat uživatele:
To jsem neznal, díky. Aproximace rychlost-zrychlení stačí, pohodlně se tak vejdu do 3% zkreslení (maximální dovolené), jestli je to plynulé tak by to úplně vyhovělo. Podívám se na toPBr píše: ↑9. 1. 2023, 6:19 Ahoj,
Taky kmitavy pohyb vie sam od seba menic servostar a nic ine k tomu nie je treba. Da sa to spustit cez rs232. Akurat ze to bude treba pred kmitanim nahomovat.
Edit: neviem ci sa takto sa fakt sinus, pre ten kmitavy pohyb sa da definovat rychlost, zrychlenie a typ zrychlenia-linear alebo s-krivka. Mozno touto kombinaciou sa da spravit presny sinus
Aleš Procháska
-
- Sponzor fora
- Příspěvky: 8163
- Registrován: 16. 7. 2006, 12:33
- Bydliště: Praha Bohnice + Roudnice nad Labem
- Kontaktovat uživatele:
Díky fóru (Radhard) vyřešeno. Požadovaný průběh rychlosti naprogramoval přímo jako funkci jejich interpolátoru a já teď jen z aplikace posílám příkazy a nemusím se o nic dalšího starat
Aleš Procháska