Hello Guest it is April 19, 2024, 02:54:17 PM

Author Topic: manual tool zero  (Read 2779 times)

0 Members and 1 Guest are viewing this topic.

Offline amnon

*
  •  40 40
    • View Profile
manual tool zero
« on: October 12, 2014, 08:31:47 AM »
Hello,

I have macro M6End for manual tool changing and zeroing:


dim tool
z=25

Xtcp= GetUserDro (1200)
Ytcp= GetUserDro (1201)
Ztcp= GetUserDro (1202)
Feed= GetDRO(18)

Code"G53 Z"&Ztcp
While IsMoving
Wend
Code"G53 Y"&Ytcp & "x"&Xtcp

Code "G31 Z" & z-100 & "f100"
While IsMoving()
Wend
Z = GetVar( 2002 )
Code "G0"
Code "G53 Z0"
While IsMoving()
Wend
call SetOEMDRO(42,z-2)
Tool = GetDRO( 24 )
Code "G43 H"&Tool
Code "G53 z0"
While IsMoving()
Wend


but I don't know why is that after tools change I have different Z positions of tools.
When my program execute code G54 Z0 afer tools change Z axis is not on the top of my material as a planed. (G54 set on top of my material)

Best Regards
Amnon
Re: manual tool zero
« Reply #1 on: January 10, 2015, 05:35:45 PM »
'---------------------------------------------------------------------------------------------------------------
' Automatyczny pomiar bazy materiałowej dla osi Z
' andmar2005
'---------------------------------------------------------------------------------------------------------------

Podkladka_pomiarowa = 41.45  '<<TU PODAJEMY WYSOKOŚĆ PODKŁADKI POMIAROWEJ

o_ile = 8.55 '<< Tu podajemy o ile podniesie się w osi Z nad PODKŁADKE POMIAROWA

droga_pomiaru = 5 ' << Tu podajemy odcinek pomiaru -w osi Z pojedzie -5mm

posow_pomiaru = 25 ' << Tu podajemy posów pomiaru -w osi Z pojedzie F25

'-----------------------------------------------------------------------------------------
'Sprawdzam wrzeciono
If GetOEMLed(11) Then
wrzeciono = MsgBox("Wrzeciono ON"& Chr(10) &""& Chr(10) &"WYŁĄCZAM >> WRZECIONO OFF <<")
  If wrzeciono = 1 Then
      Code "M5"
      Sleep (500)
      Message "Wrzeciono OFF"
      Sleep (100)
      While IsMoving () 'czeka na wykonanie pomiaru
      Wend
  End If
End If
'Koniec
'-----------------------------------------------------------------------------------------
'Sprawdzam zbazowonie maszyny
If GetOEMLed(807) And GetOEMLed(808) And GetOEMLed(809) Then
     MsgBox("Maszyna nie zbazowana"& Chr(10) &""& Chr(10) &"ZBAZUJ MASZYNE")
     End
End If
'Koniec
'------------------------------------------------------------------------------------
'Sprawdzam czujnik
If GetOemLed (825)=0 Then 'Sprawdź czy sonda jest już zwarta lub uszkodzona
     Else
     MsgBox("Sprawdź czujnik >> jest teraz zwarty") 'komunikat jesli jest zwarty
End If
'Koniec
'------------------------------------------------------------------------------------
'Zaczyna pomiar
 DoOEMButton (1010) 'Zeruje dro osi Z i zaczyna pomiar
 Code "G4 P2" ' odmierza czas
 Code "G31 Z-" & droga_pomiaru & "F" & posow_pomiaru 'Start pomiaru - jedzie w z do styku Podkladka_pomiarowa
 While IsMoving() 'czeka
 Wend
'------------------------------------------------------------------------------------
'Sprawdza czy przekroczyło parametr droga_pomiaru
 TestZ = GetDro(2) 'Odczyt aktualnej pozycji osi Z
If (TestZ) <= (droga_pomiaru) Then 'Oblicza czy nie przekroczyło droga_pomiaru
    MsgBox("BRAK SYGNAŁU Z CZUJNIKA"& Chr(10) &""& Chr(10) &">> PONOW POMIAR OSI - Z - <<")
    Else
'Koniec
'------------------------------------------------------------------------------------
'Jeśli narzędzie nie przekroczyło parametru droga_pomiaru
    Call SetDro (2, Podkladka_pomiarowa) ' Wpisuje wysokość PODKŁADKI POMIAROWEJ
    While IsMoving ()'czeka
    Wend
    Code "G4 P0.25" 'odmierza czas
    odczytDroZ = GetDro(2)
    Code "G1 Z" & odczytDroZ + o_ile & "F300" 'Podnosi oś Z nad PODKŁADKE POMIAROWA
    Code "(Oś Z ustawiona na zerze materiału Przykładowo G54 w osi Z)" 'info o wykonaniu pomiaru
    While IsMoving () 'czeka
    Wend
'Koniec
End If

« Last Edit: January 10, 2015, 05:38:40 PM by andmar2005 »

Offline amnon

*
  •  40 40
    • View Profile
Re: manual tool zero
« Reply #2 on: January 12, 2015, 02:42:48 PM »
Hej

Thank's andmar2005, I have another question

Code "G31 Z" & z-100 & "f100"
While IsMoving()
Wend
Z = GetVar( 2002 )

After probing Z = 6,5 mm - what kind of length is this. How is it measure.

Best Regards
Amnon
Re: manual tool zero
« Reply #3 on: January 13, 2015, 01:27:44 AM »
Welcome

1- Work Offsets G54 in the Z axis on the material always measure tool No. 1

this script

'---------------------------------------------------------------------------------------------------------------
' Automatyczny pomiar bazy materiałowej dla osi Z
' andmar2005
'---------------------------------------------------------------------------------------------------------------
Dim Podkladka_pomiarowa
Dim o_ile
Dim droga_pomiaru
Dim posow_pomiaru
Dim obecby_posow
Dim jakie_G

Podkladka_pomiarowa = 41.45  '<<TU PODAJEMY WYSOKOŚĆ PODKŁADKI POMIAROWEJ
'---------------------------------
o_ile = 8.55 '<< Tu podajemy o ile podniesie się w osi Z nad PODKŁADKE POMIAROWA
'---------------------------------
droga_pomiaru = 5 ' << Tu podajemy odcinek pomiaru -w osi Z pojedzie -5mm
'---------------------------------
posow_pomiaru = 25 ' << Tu podajemy posów pomiaru -w osi Z pojedzie F25
'---------------------------------
obecby_posow = GetOemDRO(818) 'odczyt aktualnego parametru F
'---------------------------------
jakie_G = GetOemLED(48) 'odczy czy G90/G91

'-----------------------------------------------------------------------------------------
'Sprawdzam zbazowonie maszyny
If GetOEMLed(807) And GetOEMLed(808) And GetOEMLed(809) Then
     bazowanie = MsgBox("Maszyna nie zbazowana"& Chr(10) &""& Chr(10) &"ZBAZUJ MASZYNE" ,16, "BAZOWANIE")
     End
End If
'-----------------------------------------------------------------------------------------
'Sprawdzam wrzeciono
If GetOEMLed(11) Then
wrzeciono = MsgBox("Wrzeciono ON"& Chr(10) &""& Chr(10) &"WYŁĄCZAM >> WRZECIONO OFF <<" ,48,"TEST PRACY WRZECIONA")
  If wrzeciono = 1 Then
      Code "M5"
      Sleep (500)
      Message "Wrzeciono OFF"
      Sleep (100)
      While IsMoving () 'czeka na wykonanie pomiaru
      Wend
  End If
End If
'------------------------------------------------------------------------------------
'Sprawdzam czujnik
If GetOemLed (825)=0 Then 'Sprawdź czy sonda jest już zwarta lub uszkodzona
     Else
     test = MsgBox("Sprawdź czujnik"& Chr(10) &""& Chr(10) &"JEST TERAZ ZWARTY" ,32, "TEST CZUJNIKA") 'Komunikat
     End
End If
'------------------------------------------------------------------------------------
'Zaczyna pomiar
 DoOEMButton (1010) 'Zeruje dro osi Z i zaczyna pomiar
 Code "G4 P2" ' odmierza czas
 Code "G90"
 Code "G31 Z-" & droga_pomiaru & "F" & posow_pomiaru 'Start pomiaru - jedzie w z do styku Podkladka_pomiarowa
 While IsMoving() 'czeka
 Wend
'------------------------------------------------------------------------------------
'Sprawdza czy przekroczyło parametr droga_pomiaru
 TestZ = GetDro(2) 'Odczyt aktualnej pozycji osi Z
If (TestZ) <= (droga_pomiaru) Then 'Oblicza czy nie przekroczyło droga_pomiaru
    pomiar = MsgBox("BRAK SYGNAŁU Z CZUJNIKA"& Chr(10) &""& Chr(10) &">> PONOW POMIAR OSI - Z - <<" ,16, "DROGA POMIARU")
    Else
'------------------------------------------------------------------------------------
'Jeśli narzędzie nie przekroczyło parametru droga_pomiaru
    Call SetDro (2, Podkladka_pomiarowa) ' Wpisuje wysokość PODKŁADKI POMIAROWEJ
    While IsMoving ()'czeka
    Wend
    Code "G4 P0.25" 'odmierza czas
    odczytDroZ = GetDro(2)
    Code "G1 Z" & odczytDroZ + o_ile & "F300" 'Podnosi oś Z nad PODKŁADKE POMIAROWA
    Code "(Oś Z ustawiona na zerze materiału Przykładowo G54 w osi Z)" 'info o wykonaniu pomiaru
    While IsMoving () 'czeka
    Wend
'------------------------------------------------------------------------------------
'Przywraca F i G
        Code "F" & obecby_posow& 'Wczytuje początkowy F
       If jakie_G = 0 Then 'przywraca odczy G90 lub G91
       Code "G91"
       End If  
End If      

2 - Then degree all the tools that I use for the treatment of
For example, the tool
T01 - for the tool Height (H) in the Z-axis must be 0
T02
T09
T12
All tools (except T01 - I measured the G54) degree
this script

'---------------------------------------------------------------------------------------------------------------
' Automatyczny pomiar narzędzia
' andmar2005
'---------------------------------------------------------------------------------------------------------------
Dim Podkladka_pomiarowa
Dim o_ile
Dim droga_pomiaru
Dim posow_pomiaru
Dim narzedzie
Dim obecby_posow
Dim jakie_G
'---------------------------------------------------------------------------------------------------------------

Podkladka_pomiarowa = 41.45  '<<TU PODAJEMY WYSOKOŚĆ PODKŁADKI POMIAROWEJ
'---------------------------------
o_ile = 8.55 '<< Tu podajemy o ile podniesie się w osi Z nad PODKŁADKE POMIAROWA
'---------------------------------
droga_pomiaru = 5 ' << Tu podajemy odcinek pomiaru -w osi Z pojedzie -5mm
'---------------------------------
posow_pomiaru = 25 ' << Tu podajemy posów pomiaru -w osi Z pojedzie F25
'---------------------------------
narzedzie = GetDRO (24)' pobiera dane dla zminnej
'---------------------------------
obecby_posow = GetOemDRO(818) 'odczyt aktualnego parametru F
'---------------------------------
jakie_G = GetOemLED(48) 'odczy czy G90/G91

'---------------------------------------------------------------------------------------------------------------
'Sprawdzam czujnik
If GetOemLed (825)=0 And narzedzie>0 Then 'Sprawdza stan czujnika i nr narzędzia
  Else
    test = MsgBox("Sprawdź czujnik >> jest teraz zwarty"& Chr(10) &""& Chr(10) &"LUB NARZĘDZIE >> T0 <<" ,32, "TEST CZUJNIKA I NUMERU NARZEDZIA") 'Komunikat
  End
End If
'---------------------------------------------------------------------------------------------------------------
'Zaczyna pomiar
      Code "G4 P2" ' Czeka czas P
      Code "G90"
      Code "G31 Z-" & droga_pomiaru & "F" & posow_pomiaru 'Start pomiaru - jedzie w z do styku Podkladka_pomiarowa
      While IsMoving() 'czeka na wykonanie pomiaru (pętli)
      Wend
'------------------------------------------------------------------------------------
'Jeśli narzędzie dotkneło PODKŁADKI POMIAROWEJ
    If narzedzie <>0 Then
       Z_Offset = GetOEMDRO ( 49 ) 'pobiera dane
       Axis_Pos = GetOEMDRO(85) 'pobiera dane  
       Tool_Offset = Axis_Pos - Z_Offset - Podkladka_pomiarowa 'Oblicza owset
     Call setOEMDRO(42, Tool_Offset) ' Wpisuje wyliczony owset
       wpis = MsgBox("WPISANO OWSET NARZĘDZIA"& Chr(10) &""& Chr(10) &">>  T " & narzedzie &" <<" ,64, "OWSET NARZEDZIA")'Komunikat
       Code "G01 Z" & (Podkladka_pomiarowa + o_ile) & "F300" ' podnosi oś Z na 50
    End If
'------------------------------------------------------------------------------------
'Przywraca F i G
    Code "F" & obecby_posow& 'Wczytuje początkowy F
       If jakie_G = 0 Then 'przywraca odczy G90 lub G91
       Code "G91"
       End If
        

All measured - start to work

Best Regards
« Last Edit: January 13, 2015, 01:29:49 AM by andmar2005 »