Zobacz to
My M6start
'---------------------------------------------------------------------------------------------------------------
' Automatyczny pomiar bazy materiałowej dla osi Z
' andmar2005
'---------------------------------------------------------------------------------------------------------------
Dim obecby_posow
Dim jakie_G
Const Podkladka_pomiarowa = 41.45 '<<TU PODAJEMY WYSOKOŚĆ PODKŁADKI POMIAROWEJ
'---------------------------------
Const o_ile = 8.55 '<< Tu podajemy o ile podniesie się w osi Z nad PODKŁADKE POMIAROWA
'---------------------------------
Const droga_pomiaru = -5 ' << Tu podajemy odcinek pomiaru -w osi Z pojedzie -5mm
'---------------------------------
Const posow_pomiaru = 25 ' << Tu podajemy posów pomiaru -w osi Z pojedzie F25
'---------------------------------
Sub Program
zbazowonie_maszyny
sprawdzam_wrzeciono
sprawdzam_czujnik
odczyt_F
odczyt_G
'---------------------------------------------------------------------------------------------------------------
'Zaczyna pomiar
Call SetOemDro(42,0)'UWAGA ZERUJE OWSET DANEGO NARZĘDZIA !!!!
Sleep(100)
DoOEMButton (1010) 'Zeruje dro osi Z
Code "G4 P2" ' odmierza czas
Code "G90"
Code "G31 Z" & droga_pomiaru & "F" & posow_pomiaru 'Start pomiaru - jedzie w z do styku Podkladka_pomiarowa
czekam_na_wykonanie
Styk_sondy = GetVar(2002) 'Przechwytuje miejsce styku do Podkladka_pomiarowa
Code "G0 Z" &Styk_sondy 'Powraca do miejsca styku
czekam_na_wykonanie
przekroczenie_Z
'---------------------------------------------------------------------------------------------------------------
'Jeśli narzędzie nie przekroczyło parametru droga_pomiaru
Call SetDro (2, Podkladka_pomiarowa) ' Wpisuje wysokość PODKŁADKI POMIAROWEJ
Czekam_na_wykonanie
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
czekam_na_wykonanie
End If
wpisuje_F
wpisuje_G
End Sub
'---------------------------------------------------------------------------------------------------------------
Sub zbazowonie_maszyny ()
If GetOEMLed(807) Or GetOEMLed(808) Or GetOEMLed(809) Then
bazowanie = MsgBox("Maszyna nie zbazowana"& Chr(10) &""& Chr(10) &"ZBAZUJ MASZYNE" ,16, "BAZOWANIE")
End
End If
End Sub
'---------------------------------------------------------------------------------------------------------------
Sub sprawdzam_wrzeciono () 'Sprawdza czy wrzeciono pracuje
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)
czekam_na_wykonanie
End If
End If
End Sub
'---------------------------------------------------------------------------------------------------------------
Sub sprawdzam_czujnik ()
If GetOemLed (825)=0 Then 'Sprawdź czy sonda jest zwarta przed pomiarem
Else
test = MsgBox("Sprawdź czujnik"& Chr(10) &""& Chr(10) &"JEST TERAZ ZWARTY" ,32, "TEST CZUJNIKA") 'Komunikat
End
End If
End Sub
'---------------------------------------------------------------------------------------------------------------
Sub odczyt_F ()
obecby_posow = GetOemDRO(818) 'odczyt aktualnego F
End Sub
'---------------------------------------------------------------------------------------------------------------
Sub wpisuje_F ()
Code "F" & obecby_posow& 'wczytuje odczytany F
End Sub
'---------------------------------------------------------------------------------------------------------------
Sub odczyt_G ()
jakie_G = GetOemLED(48) 'odczyt G90 czy G91
End Sub
'---------------------------------------------------------------------------------------------------------------
Sub wpisuje_G ()
If jakie_G = 0 Then 'przywraca odczytany G90 lub G91
Code "G91"
End If
End Sub
'---------------------------------------------------------------------------------------------------------------
Sub przekroczenie_Z ()
test_Z= GetDro(2)
If (test_Z) <= (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")
wpisuje_F
wpisuje_G
End
End If
Sub End
'---------------------------------------------------------------------------------------------------------------
Sub czekam_na_wykonanie ()
While IsMoving()
Sleep(50)
Wend
End Sub
'---------------------------------------------------------------------------------------------------------------
'Koniec