Referenční a pracovní nuly
- Mrosconi
- Příspěvky: 1978
- Registrován: 22. 2. 2015, 6:30
- Bydliště: Netřebská 47, Praha 6 Ruzyně
- Kontaktovat uživatele:
Ahoj, prosím o radu jak napsat příkaz aby se mi provedl nájezd do dané pozice na základě referenčního bodu stroje.
1. Po najetí softu provedu homování a tím pádem dostanu "referenční bod" v Mach řeči "Machine Zero".
2. Pak si stanovím řadu offsetu, třeba takový, že vřeteno přijede na pozici X100 Y100 Z100 a tam se vynuluje do pracovního "Work Zero".
OK, ale jam mám donutit mašinu, aby tyto souřadnice počítala od referenčního bodu, tedy v mém případě zároveň strojní nuly? Ať už tam mám G28, G53, G54 tak vždy se mi ta akce provede z "pracovní nuly" a ne ze strojní.
Jak zni příkaz pro návrat do strojní nuly? Ten mi taky nefunguje. Vždy se to vrací do pracovní nuly,
Tlačítko pro najetí na mou potřebou referenci je:
local inst = mc.mcGetInstance()
mc.mcCntlMdiExecute(inst, "G00 G28 X0\nG00 Z-500 Y160\nG00 X-600")
Talčítko pro návrat na referenční nulu je:
local inst = mc.mcGetInstance()
mc.mcCntlMdiExecute(inst, "G00 G53 X0\nG00 Z0 Y0\nG00 X0")
Zkopíroval jsem to přímo z originálního skrínu Machu4, a jen převrátil hodnoty X a Z. Je to na soustruh a tlačítko má sloužit pro najetí nožové hlavy do pozice pro vrtání. Mašina je frézko-soustruh a nožová hlava je součástí vřeteníku. Jsou dvě, jedna klasická se 4 noži a druhá s ER40. Nejdříve jsem to chtěl udělat vše na jedné kružnici, tedy že jak vrták tak i nůž bude mít stejnou referenci, ale je tam moc velké vyložení, tak jsem to udělal samostatně a tak musím mít dvě referenční pozice. Chtěl bych mít dvě tlačítka a to že po zreferování mašiny zmačknu tlačítko "pozice pro soustružení" a vřeteník s nožovou hlavou přejede do pozice pro soustruřžení a nuž bude v pozici X0. Od toho místa si pak stanovím pracovní nulu.
Určitě to tak funguje, protože je to přece nějaký ten offset, ale nevím jak to správně napsat.
Prosím o pomoc.
Děkuji
1. Po najetí softu provedu homování a tím pádem dostanu "referenční bod" v Mach řeči "Machine Zero".
2. Pak si stanovím řadu offsetu, třeba takový, že vřeteno přijede na pozici X100 Y100 Z100 a tam se vynuluje do pracovního "Work Zero".
OK, ale jam mám donutit mašinu, aby tyto souřadnice počítala od referenčního bodu, tedy v mém případě zároveň strojní nuly? Ať už tam mám G28, G53, G54 tak vždy se mi ta akce provede z "pracovní nuly" a ne ze strojní.
Jak zni příkaz pro návrat do strojní nuly? Ten mi taky nefunguje. Vždy se to vrací do pracovní nuly,
Tlačítko pro najetí na mou potřebou referenci je:
local inst = mc.mcGetInstance()
mc.mcCntlMdiExecute(inst, "G00 G28 X0\nG00 Z-500 Y160\nG00 X-600")
Talčítko pro návrat na referenční nulu je:
local inst = mc.mcGetInstance()
mc.mcCntlMdiExecute(inst, "G00 G53 X0\nG00 Z0 Y0\nG00 X0")
Zkopíroval jsem to přímo z originálního skrínu Machu4, a jen převrátil hodnoty X a Z. Je to na soustruh a tlačítko má sloužit pro najetí nožové hlavy do pozice pro vrtání. Mašina je frézko-soustruh a nožová hlava je součástí vřeteníku. Jsou dvě, jedna klasická se 4 noži a druhá s ER40. Nejdříve jsem to chtěl udělat vše na jedné kružnici, tedy že jak vrták tak i nůž bude mít stejnou referenci, ale je tam moc velké vyložení, tak jsem to udělal samostatně a tak musím mít dvě referenční pozice. Chtěl bych mít dvě tlačítka a to že po zreferování mašiny zmačknu tlačítko "pozice pro soustružení" a vřeteník s nožovou hlavou přejede do pozice pro soustruřžení a nuž bude v pozici X0. Od toho místa si pak stanovím pracovní nulu.
Určitě to tak funguje, protože je to přece nějaký ten offset, ale nevím jak to správně napsat.
Prosím o pomoc.
Děkuji
u normálního stroje G53 X0 Y0 najede do strojní nuly, jestli ti to nefunguje hledej problém v tvé kočkopsovi
věčný rýpal,který musí mít poslední slovo, odpůrce low-cost zařízení končících v naprosté většině případů v hromadě šrotu
uživatelé hýbátek, kteří mají z mých příspěvků celoživotní trauma nechť si mé příspěvky VYPNOU
uživatelé hýbátek, kteří mají z mých příspěvků celoživotní trauma nechť si mé příspěvky VYPNOU
https://machmotion.com/blog/knowledge-g ... oordinates
G53 is not modal and must be programmed on each line on which it is intended to be active.
Takže správně by to mělo být:
Případně jen:
(G00 modální je, zůstává tedy aktivní i na dalším řádku).
"\n" je odřádkování, takže tvoje tlačítko dělalo toto:
Čili první řádek imho odjel správně Xkem na nulu stroje, ale pak jsi to zase poslal vše do pracovní nuly (chyběly ti tam ty G53).
G53 is not modal and must be programmed on each line on which it is intended to be active.
Takže správně by to mělo být:
Kód: Vybrat vše
mc.mcCntlMdiExecute(inst, "G00 G53 X0\nG00 G53 Z0 Y0")
Kód: Vybrat vše
mc.mcCntlMdiExecute(inst, "G00 G53 X0\nG53 Z0 Y0")
"\n" je odřádkování, takže tvoje tlačítko dělalo toto:
Kód: Vybrat vše
G00 G53 X0
G00 Z0 Y0
G00 X0
mimooborová naplavenina • kolowratský zázrak™ • NPS • GCU • HirthCalc • ncDP.ino
Ještě bych možná pro sychr na konec přidal "G01 G53 X0 Y0 Z0", aby jsi měl po vykonání obsluhy tlačítka aktivní pracovní posuv (G1), nikoliv rapid (G0). Nevím, jak přesně Mach funguje (jestli tlačítko jede v nějaké svojí bublině nebo jestli třeba neovlivní i běžící program, pak by ho mohl přehodit do rapidu, když to nečeká a mohlo by být zle). Uškodit by to nemělo. Takže:
Akorát to může zase někdy nadávat, že to pro G1 nemá nastavený feed (což by ale také mělo být neškodné, jen to možná bude otravné).. zaexperimentoval bych.
EDIT:
Možná by byl lepší G80 (Cancel motion mode).
Kód: Vybrat vše
mc.mcCntlMdiExecute(inst, "G00 G53 X0\nG53 Z0 Y0\nG01 G53 X0 Z0 Y0")
EDIT:
Možná by byl lepší G80 (Cancel motion mode).
Kód: Vybrat vše
mc.mcCntlMdiExecute(inst, "G00 G53 X0\nG53 Z0 Y0\nG80")
Naposledy upravil(a) Thomeeque dne 26. 8. 2022, 10:09, celkem upraveno 1 x.
mimooborová naplavenina • kolowratský zázrak™ • NPS • GCU • HirthCalc • ncDP.ino
-
- Příspěvky: 1559
- Registrován: 24. 6. 2020, 8:41
- Kontaktovat uživatele:
-
- Příspěvky: 1559
- Registrován: 24. 6. 2020, 8:41
- Kontaktovat uživatele:
- Mrosconi
- Příspěvky: 1978
- Registrován: 22. 2. 2015, 6:30
- Bydliště: Netřebská 47, Praha 6 Ruzyně
- Kontaktovat uživatele:
Každý si může dělat co chce, takže všichni máte pravdu. Jsme ale na fóru, které jsem chápal jako amatérské, tedy pro nadšence. Takže počítám s tím, že je tady spousta kluků, co něco doma staví. No a k oboru a studiu... Ano, je dobré mít něco vystudováno, ale důležitější je praxe. A nad to vše trocha odvahy aby zkoušet dělat věci jinak. Bez nadšenců by jsme dnes měli možná tak prví parní stroje. Osobně tleskam každému kdo něco postavil. A je jedno zda je to stolní frézka se dřevotřísky Nemo X tunové monstrum.
- Mrosconi
- Příspěvky: 1978
- Registrován: 22. 2. 2015, 6:30
- Bydliště: Netřebská 47, Praha 6 Ruzyně
- Kontaktovat uživatele:
Mimochodem, takto to funguje na komerční verzi Mach4 Home. Nezávisle na mém stroji. Zkouším to na simulaci, jde nemám kromě limitu a nastavení otáček žádnou závislost na mém stroji. Takže řeči o kočkoosovi jsou poměrně trapné
- Mrosconi
- Příspěvky: 1978
- Registrován: 22. 2. 2015, 6:30
- Bydliště: Netřebská 47, Praha 6 Ruzyně
- Kontaktovat uživatele:
Ahoj, ještě nijak ale v simulaci je to už OK. takže jsem si nastavil dva referenční body a mašina tam jede stanovenou rychlostí vždy ze strojní / referenční nuly. Takže tak jak jsem chtěl.
Díky
Díky