Referenční a pracovní nuly

Diskuze o softvéru MACH od tvůrců Artsoft všech verzí: dotazy, programování, skripty, poznatky atd...
Odpovědět
Uživatelský avatar
Mrosconi
Příspěvky: 1978
Registrován: 22. 2. 2015, 6:30
Bydliště: Netřebská 47, Praha 6 Ruzyně
Kontaktovat uživatele:

26. 8. 2022, 7:25

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
RaS
Příspěvky: 8589
Registrován: 26. 3. 2009, 9:12
Bydliště: Úvaly

26. 8. 2022, 8:41

u normálního stroje G53 X0 Y0 najede do strojní nuly, jestli ti to nefunguje hledej problém v tvé kočkopsovi :D
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živatelský avatar
Mrosconi
Příspěvky: 1978
Registrován: 22. 2. 2015, 6:30
Bydliště: Netřebská 47, Praha 6 Ruzyně
Kontaktovat uživatele:

26. 8. 2022, 9:03

Hmm, nepotěšil. U mne to najede do pracovní. Diky
Uživatelský avatar
Thomeeque
Příspěvky: 8907
Registrován: 30. 1. 2012, 10:20
Bydliště: Mimo ČR

26. 8. 2022, 9:14

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:

Kód: Vybrat vše

mc.mcCntlMdiExecute(inst, "G00 G53 X0\nG00 G53 Z0 Y0")
Případně jen:

Kód: Vybrat vše

mc.mcCntlMdiExecute(inst, "G00 G53 X0\nG53 Z0 Y0")
(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:

Kód: Vybrat vše

G00 G53 X0
G00 Z0 Y0
G00 X0
Č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).
mimooborová naplavenina • kolowratský zázrak™ • NPS • GCU • HirthCalc • ncDP.ino
Uživatelský avatar
Thomeeque
Příspěvky: 8907
Registrován: 30. 1. 2012, 10:20
Bydliště: Mimo ČR

26. 8. 2022, 9:46

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:

Kód: Vybrat vše

mc.mcCntlMdiExecute(inst, "G00 G53 X0\nG53 Z0 Y0\nG01 G53 X0 Z0 Y0")
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\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
Uživatelský avatar
Mrosconi
Příspěvky: 1978
Registrován: 22. 2. 2015, 6:30
Bydliště: Netřebská 47, Praha 6 Ruzyně
Kontaktovat uživatele:

26. 8. 2022, 10:01

Díky, vyzkoušíme:)
Uživatelský avatar
Thomeeque
Příspěvky: 8907
Registrován: 30. 1. 2012, 10:20
Bydliště: Mimo ČR

26. 8. 2022, 10:10

👍
mimooborová naplavenina • kolowratský zázrak™ • NPS • GCU • HirthCalc • ncDP.ino
jergus.balaz
Příspěvky: 1541
Registrován: 24. 6. 2020, 8:41
Kontaktovat uživatele:

26. 8. 2022, 10:51

RaS píše: 26. 8. 2022, 8:41 v tvé kočkopsovi :D
:lol: :lol: :lol:
BalazKovo.sk
Uživatelský avatar
Thomeeque
Příspěvky: 8907
Registrován: 30. 1. 2012, 10:20
Bydliště: Mimo ČR

26. 8. 2022, 10:59

Kolik mašin už jsi sestavil a nakonfiguroval, Jerguši?
mimooborová naplavenina • kolowratský zázrak™ • NPS • GCU • HirthCalc • ncDP.ino
jergus.balaz
Příspěvky: 1541
Registrován: 24. 6. 2020, 8:41
Kontaktovat uživatele:

26. 8. 2022, 11:14

Thomeeque píše: 26. 8. 2022, 10:59 Kolik mašin už jsi sestavil a nakonfiguroval, Jerguši?
Nebudem sa púšťať do niečoho, čo som nevyštudoval a s čím nemám skúsenosti. Keď budem mašinu potrebovať, tak si ju dám urobiť. Takže spravil som 0 mašín a ani sa toto číslo nebudem snažiť zmeniť.
BalazKovo.sk
Uživatelský avatar
Mrosconi
Příspěvky: 1978
Registrován: 22. 2. 2015, 6:30
Bydliště: Netřebská 47, Praha 6 Ruzyně
Kontaktovat uživatele:

26. 8. 2022, 3:38

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.
Uživatelský avatar
Mrosconi
Příspěvky: 1978
Registrován: 22. 2. 2015, 6:30
Bydliště: Netřebská 47, Praha 6 Ruzyně
Kontaktovat uživatele:

27. 8. 2022, 6:29

RaS píše: 26. 8. 2022, 8:41 u normálního stroje G53 X0 Y0 najede do strojní nuly, jestli ti to nefunguje hledej problém v tvé kočkopsovi :D
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é🤗
Uživatelský avatar
Thomeeque
Příspěvky: 8907
Registrován: 30. 1. 2012, 10:20
Bydliště: Mimo ČR

29. 8. 2022, 8:31

Mrosconi píše: 26. 8. 2022, 10:01 Díky, vyzkoušíme:)
Jak to dopadlo?
mimooborová naplavenina • kolowratský zázrak™ • NPS • GCU • HirthCalc • ncDP.ino
Uživatelský avatar
Mrosconi
Příspěvky: 1978
Registrován: 22. 2. 2015, 6:30
Bydliště: Netřebská 47, Praha 6 Ruzyně
Kontaktovat uživatele:

30. 8. 2022, 8:38

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
Odpovědět

Zpět na „MACH všech verzí“