Mach2 - ach ,ten pomiar wysokości nrzędzia
: 20 lut 2007, 18:31
Witam - dzisiaj zacznę od narzekania !!!
Od kilku dni prubuję w Mach2 zastosować czujnk pomiarowy wysok. narzędzia ale im dłużej nad tym siedzę tym bardziej krew mnie zalewa. Mam w mojej maszynie zainstalowane wszystkie czujniki , po 3 na każdą oś : limit - , home , limit +.
Home umieszczone są w pobliżu limitów- ( na osiach X i Y ) oraz w pobliżu limit + na osi Z.
wykonałem też czujnik pomiarowy (wys. narzędzia). Wszystkie krańcówki i czujnik są poprawnie podłączone i działają świetnie.
Problem w tym , że mam problemy z zastosowaniem praktycznym czujnika pomiarowego.
Przejżałem na tym forum kilka programów "makr" przeznaczonych do tego, ale wszystkie one zawierały błędy. Minęło kilka dni zanim sam musiałem dojśc , że niepoprawnie były zaznaczane komentarze.
Temat był poruszany kilkakrotnie , ale nigdy do końca nie był wyjaśniony.
Może teraz znajdzie się osoba , która podpowie krok po kroku jak należy postępować.
Moje założenia i punkt wyjścia jest następujący:
1. czujniki limity i home działają
2. na osi Z kolejnośc krańcówek od góry jest następująca: limit+ , zaraz za nim (ok. 20mm) home, na dole limit-
3. we wrzecionie jest założony frez
4. koniec freza znajduje sie w p. Home ( g53 xo yo zo) - (osie X i Y home - ok. 10 mm od limit-) , a os Z podniesiona prawie max do góry-ok. 20 mm przed limit+.
5. na stole frezarki ( pośrodku stołu leży materiał MDF do obróbki-prób) wysokości 20 mm.
6. w punkcie G53 x0 y190 stoi czujnik pomiarowy , wysokość końca czujnika (od pow. stołu) 85 mm ( zadziałanie następuje na wys. ok. 82 mm)
7. mam zamontowane wrzeciono Elte sterowane falownikiem , załączam je (na razie) ręcznie. ( w programie umieszczam M1 i komentarz " załącz / wyłącz wrzeciono")
Nie będę więcej pisał jakie i ile prób przeprowadzałem , bo bym tylko się zaplątał.
Przeczytałem całe forum i proszę mi wierzyć , że nigdzie nie jest to do końca wyjaśnione.
Oczekuje , że życzliwa osoba podpowie:
1. Jakie macro ( M6Start oraz M6End) trzeba napisać aby "płynnie " w trakcie frezowania dokonać wymiany, gdy program napotka :
M1 ; wyłącz wrzeciono
M6 T2
M1 ; załącz wrzeciono
2. Moje macro M6Start.m1s , działa OK i jest następujące ( ściągnięte z forum i trochę
zmienione):
tool = GetSelectedTool()
SetCurrentTool( tool ) ' oryginalna czesc z Macha
Code "g0"
Code "G53 z0" ' ruch do Z0
While IsMoving()
Wend
Code "G0"
Code "G53 x0 y100" ' u mnie wymiana frezów jest oddalona od Home(0,0) do (0,100)
While IsMoving()
Wend
Może ktoś mi powie po, co są dwie pierwsze linie ( bo i bez nich działa OK)
3. Moje macro M6End.m1s , ściągnięte z forum -działa mniej więcej do połowy ( wpisuje
bzdury do rejestru wysokości):
dim ZTOP, ZBOTTOM, ZTOP
dim tool
Code "g0" ' wywołanie ruchu G0
Code "g53 z0" ' na wszelki wypadek ruch do Z0 , gdyby nie było wywołane macro M6Start
While IsMoving() ' petla
Wend ' ktora czeka , aż maszyna dojedzie
Code "g0"
Code "g53 x0 y190" ' ruch do pozycji czujnika wysokości
While IsMoving() ' petla
Wend ' ktora czeka , aż maszyna dojedzie
ZTOP = GetDRO(2) ' pobranie pozycji osi Z
Code "G31 Z-50 F60" ' oś Z jedzie z posuwem F60 w dól ( max -50 mm), az napotka sygnal DIGITIZE
While IsMoving()
Wend
ZBOTTOM = GetVar( 2002 ) ' pobieranie osi Z maszyny w momencie naciśnięcia czujnika
message (ZBOTTOM) ' wyświetlanie wartości na dolnym pasku ekranu
ZTOTAL = ZBOTTOM-ZTOP
Code "G0"
Code "G53 z0"
While IsMoving() ' podjechanie osią Z do Z0
Wend
call SetOEMDRO(42,ZTOTAL)
Tool = GetDRO( 24 ) ' wpisanie wyliczonej wartosci do rejestru dlugosci narzedzia
Code "G43 H" & Tool ' i wywolanie korekty dla tego narzedzia
Code "G53 z-1"
While IsMoving()
Wend
Code "G53 z0" ' ta czesc jest najbardziej tajemnicza , musialem tak zrobic
While IsMoving() ' ponieważ bez tego przy założeniu krotszego albo dluzszego
Wend ' freza maszyna jechala do gory pomimo ze byla na samej gorze i naciskala LIMIT Z
Mniej więcej od połowy tego macra coś nie działa.
4. Czy naciśnięcie "GotoToolChange" jest równoznaczne z wywołaniem M6Start.m1s ?
Gdy ja naciskam tem klawisz to maszyna jedzie do G53 X0 Y0 Z0 ( Home) .
Jak mozna to zmienic aby np jechała do (0,100,0) ?
5. Czy naciśnięcie "AutoTool Zero" jest równoznaczne z M6End.m1s
6. Czy przy wymianie należy kożystać z innych G55, G56 .......
Moje dotychczasowe uwagi n/t Macha2.:
- gdy pracuję jednym frezem - bez zmiany wszystko jest OK.
- gdy trzeba zmienić narzędzie i coś nie wyjdzie to program wariuje.
- np. gdy określam nowy obszar roboczy G54 poprzez "touch" potrafi generowac jakies końcówki np 0.0367 itp. , które potem wloką się i nie jestem pewien dalszych wymiarów.
Na razie tyle - tak mi się zebrało
Może ktoś się odezwie , bo napewno nie tylko ja mam z tym problemy.
Jak się przekonałem bez dokładnej wymiany nie ma żadnej robotyna frezarce.
Pozdr.
[ Dodano: 2007-02-20, 18:37 ]
Bykom STOP zamiana : "kożystać" na korzystać
Od kilku dni prubuję w Mach2 zastosować czujnk pomiarowy wysok. narzędzia ale im dłużej nad tym siedzę tym bardziej krew mnie zalewa. Mam w mojej maszynie zainstalowane wszystkie czujniki , po 3 na każdą oś : limit - , home , limit +.
Home umieszczone są w pobliżu limitów- ( na osiach X i Y ) oraz w pobliżu limit + na osi Z.
wykonałem też czujnik pomiarowy (wys. narzędzia). Wszystkie krańcówki i czujnik są poprawnie podłączone i działają świetnie.
Problem w tym , że mam problemy z zastosowaniem praktycznym czujnika pomiarowego.
Przejżałem na tym forum kilka programów "makr" przeznaczonych do tego, ale wszystkie one zawierały błędy. Minęło kilka dni zanim sam musiałem dojśc , że niepoprawnie były zaznaczane komentarze.
Temat był poruszany kilkakrotnie , ale nigdy do końca nie był wyjaśniony.
Może teraz znajdzie się osoba , która podpowie krok po kroku jak należy postępować.
Moje założenia i punkt wyjścia jest następujący:
1. czujniki limity i home działają
2. na osi Z kolejnośc krańcówek od góry jest następująca: limit+ , zaraz za nim (ok. 20mm) home, na dole limit-
3. we wrzecionie jest założony frez
4. koniec freza znajduje sie w p. Home ( g53 xo yo zo) - (osie X i Y home - ok. 10 mm od limit-) , a os Z podniesiona prawie max do góry-ok. 20 mm przed limit+.
5. na stole frezarki ( pośrodku stołu leży materiał MDF do obróbki-prób) wysokości 20 mm.
6. w punkcie G53 x0 y190 stoi czujnik pomiarowy , wysokość końca czujnika (od pow. stołu) 85 mm ( zadziałanie następuje na wys. ok. 82 mm)
7. mam zamontowane wrzeciono Elte sterowane falownikiem , załączam je (na razie) ręcznie. ( w programie umieszczam M1 i komentarz " załącz / wyłącz wrzeciono")
Nie będę więcej pisał jakie i ile prób przeprowadzałem , bo bym tylko się zaplątał.
Przeczytałem całe forum i proszę mi wierzyć , że nigdzie nie jest to do końca wyjaśnione.
Oczekuje , że życzliwa osoba podpowie:
1. Jakie macro ( M6Start oraz M6End) trzeba napisać aby "płynnie " w trakcie frezowania dokonać wymiany, gdy program napotka :
M1 ; wyłącz wrzeciono
M6 T2
M1 ; załącz wrzeciono
2. Moje macro M6Start.m1s , działa OK i jest następujące ( ściągnięte z forum i trochę
zmienione):
tool = GetSelectedTool()
SetCurrentTool( tool ) ' oryginalna czesc z Macha
Code "g0"
Code "G53 z0" ' ruch do Z0
While IsMoving()
Wend
Code "G0"
Code "G53 x0 y100" ' u mnie wymiana frezów jest oddalona od Home(0,0) do (0,100)
While IsMoving()
Wend
Może ktoś mi powie po, co są dwie pierwsze linie ( bo i bez nich działa OK)
3. Moje macro M6End.m1s , ściągnięte z forum -działa mniej więcej do połowy ( wpisuje
bzdury do rejestru wysokości):
dim ZTOP, ZBOTTOM, ZTOP
dim tool
Code "g0" ' wywołanie ruchu G0
Code "g53 z0" ' na wszelki wypadek ruch do Z0 , gdyby nie było wywołane macro M6Start
While IsMoving() ' petla
Wend ' ktora czeka , aż maszyna dojedzie
Code "g0"
Code "g53 x0 y190" ' ruch do pozycji czujnika wysokości
While IsMoving() ' petla
Wend ' ktora czeka , aż maszyna dojedzie
ZTOP = GetDRO(2) ' pobranie pozycji osi Z
Code "G31 Z-50 F60" ' oś Z jedzie z posuwem F60 w dól ( max -50 mm), az napotka sygnal DIGITIZE
While IsMoving()
Wend
ZBOTTOM = GetVar( 2002 ) ' pobieranie osi Z maszyny w momencie naciśnięcia czujnika
message (ZBOTTOM) ' wyświetlanie wartości na dolnym pasku ekranu
ZTOTAL = ZBOTTOM-ZTOP
Code "G0"
Code "G53 z0"
While IsMoving() ' podjechanie osią Z do Z0
Wend
call SetOEMDRO(42,ZTOTAL)
Tool = GetDRO( 24 ) ' wpisanie wyliczonej wartosci do rejestru dlugosci narzedzia
Code "G43 H" & Tool ' i wywolanie korekty dla tego narzedzia
Code "G53 z-1"
While IsMoving()
Wend
Code "G53 z0" ' ta czesc jest najbardziej tajemnicza , musialem tak zrobic
While IsMoving() ' ponieważ bez tego przy założeniu krotszego albo dluzszego
Wend ' freza maszyna jechala do gory pomimo ze byla na samej gorze i naciskala LIMIT Z
Mniej więcej od połowy tego macra coś nie działa.
4. Czy naciśnięcie "GotoToolChange" jest równoznaczne z wywołaniem M6Start.m1s ?
Gdy ja naciskam tem klawisz to maszyna jedzie do G53 X0 Y0 Z0 ( Home) .
Jak mozna to zmienic aby np jechała do (0,100,0) ?
5. Czy naciśnięcie "AutoTool Zero" jest równoznaczne z M6End.m1s
6. Czy przy wymianie należy kożystać z innych G55, G56 .......
Moje dotychczasowe uwagi n/t Macha2.:
- gdy pracuję jednym frezem - bez zmiany wszystko jest OK.
- gdy trzeba zmienić narzędzie i coś nie wyjdzie to program wariuje.
- np. gdy określam nowy obszar roboczy G54 poprzez "touch" potrafi generowac jakies końcówki np 0.0367 itp. , które potem wloką się i nie jestem pewien dalszych wymiarów.
Na razie tyle - tak mi się zebrało
Może ktoś się odezwie , bo napewno nie tylko ja mam z tym problemy.
Jak się przekonałem bez dokładnej wymiany nie ma żadnej robotyna frezarce.
Pozdr.
[ Dodano: 2007-02-20, 18:37 ]
Bykom STOP zamiana : "kożystać" na korzystać