MAKRO M6

Dyskusje dotyczące najpopularniejszego programu sterującego maszynami CNC

Autor tematu
fizyk19
Czytelnik forum poziom 1 (min. 10)
Czytelnik forum poziom 1 (min. 10)
Posty w temacie: 7
Posty: 18
Rejestracja: 22 maja 2008, 09:05
Lokalizacja: polska

#11

Post napisał: fizyk19 » 19 sty 2013, 12:52

Skype nie mam ale może wyślesz mi nr tel na pw to oddzwonię.



Tagi:


dziabi3
Specjalista poziom 3 (min. 600)
Specjalista poziom 3 (min. 600)
Posty w temacie: 5
Posty: 874
Rejestracja: 13 sie 2009, 16:15
Lokalizacja: xxx

#12

Post napisał: dziabi3 » 19 sty 2013, 14:24

szkoda bo bym ci objaśnił co i jak, udostępniłbym ci ekran i byś wszystko widział

zadzwon tak po 19 stej 793 693 779

[ Dodano: 2013-01-19, 22:00 ]
' makro wymiany narżedzia , definiujące całkowicie porty wyjściowe z zabespieczeniem czasowym przed
' przekroczeniem czasu poszukiwania włąsciwego slotu zmieniarki
' UWAGA!!! sciśle określona przynalerżność numerów narzędzi do imaków
' imak 1 narzedzia 1,2,3,4 imak 2 narzedia 5,6,7,8

'------------------------------------------------------------------------------------------------------------
' >>>imak 1<<<

Const czujimaka1 = Input2 'czujnik zamknięcia magazynu imak1 // narzedzia 1-4
Const delayimak1 = 3 'czas na zmiane narzedzia imak1 w s
Const zwlokaimak1 = 500 'pauza po wybraniu narzedzia imak1 w ms


'narzędzie port
Const narz1 = Output7
Const narz2 = Output8
Const narz3 = Output9
Const narz4 = Output10

'------------------------------------------------------------------------------------------------------------
' >>>imak2<<<

Const czujimaka2 = Input4 'czujnik zamknięcia magazynu imak2 // narzedzia 5-8
Const delayimak2 = 3 'czas na zmiane narzedzia imak2 w s
Const zwlokaimak2 = 500 'pauza po wybraniu narzedzia imak2 w ms

'narzędzie port
Const narz5 = Output12
Const narz6 = Output13
Const narz7 = Output14
Const narz8 = Output15

'------------------------------------------------------------------------------------------------------------
' >>>porty wspulne dla obu imaków<<<

Const blokada = Output11 'sygnał zezwalający na obrót imaka

'------------------------------------------------------------------------------------------------------------
'zmienne

Dim Curenttime As Single
Dim narzedzie As Integer
Dim ToolOld As Integer
Dim ToolNew As Integer

'------------------------------------------------------------------------------------------------------------

Sub Main

ToolOld = GetCurrentTool()
ToolNew = GetSelectedTool()



If (ToolNew = 0) Then
SetCurrentTool( ToolOld )
DoOEMButton(1003)
DoOEMButton(1002)
Sleep(150)
Message("W magazynie nie ma T00 !!!")
Sleep(150)
End
ElseIf (ToolNew > 8) Then
SetCurrentTool( ToolOld )
DoOEMButton(1003)
DoOEMButton(1002)
Sleep(150)
Message("Magazyn mieści tylko" & toolnum & "oprawek")
Sleep(150)
End
ElseIf (ToolNew = ToolOld) Then
SetCurrentTool( ToolOld )
Sleep(150)
Message("Narzędzie jest już w uchwycie")
Sleep(150)
End
End If


Select Case ToolNew

Case 1
Call Ustaw(1, 0, 0, 0, 0, 0, 0, 0, 1)
Call czasimak1
Call Ustaw(0, 0, 0, 0, 0, 0, 0, 0, 0)
Case 2
Call Ustaw(0, 1, 0, 0, 0, 0, 0, 0, 1)
Call czasimak1
Call Ustaw(0, 0, 0, 0, 0, 0, 0, 0, 0)
Case 3
Call Ustaw(0, 0, 1, 0, 0, 0, 0, 0, 1)
Call czasimak1
Call Ustaw(0, 0, 0, 0, 0, 0, 0, 0, 0)
Case 4
Call Ustaw(0, 0, 0, 1, 0, 0, 0, 0, 1)
Call czasimak1
Call Ustaw(0, 0, 0, 0, 0, 0, 0, 0, 0)
Case 5
Call Ustaw(0, 0, 0, 0, 1, 0, 0, 0, 1)
Call czasimak2
Call Ustaw(0, 0, 0, 0, 0, 0, 0, 0, 0)
Case 6
Call Ustaw(0, 0, 0, 0, 0, 1, 0, 0, 1)
Call czasimak2
Call Ustaw(0, 0, 0, 0, 0, 0, 0, 0, 0)
Case 7
Call Ustaw(0, 0, 0, 0, 0, 0, 1, 0, 1)
Call czasimak2
Call Ustaw(0, 0, 0, 0, 0, 0, 0, 0, 0)
Case 8
Call Ustaw(0, 0, 0, 0, 0, 0, 0, 1, 1)
Call czasimak2
Call Ustaw(0, 0, 0, 0, 0, 0, 0, 0, 0)
End Select


SetCurrentTool( ToolNew )
Sleep(150)
Message("załadowano narzedzie nr" & ToolNew )
End Sub

'------------------------------------------------------------------------------------------------------------

Sub czasimak1

Curenttime = Timer

Do Until isActive(czujimaka1)

If Timer > Curenttime + delayimak1 Then
SetCurrentTool( ToolOld )
While IsMoving
Sleep(1)
Wend
DoOEMButton(1021)
Sleep(150)
Message"przekroczono czas wyboru " & ToolNew & " narzędzia > imak 1"
End
End If
Sleep(1)
Loop
Sleep(zwlokaimak1)

End Sub
'------------------------------------------------------------------------------------------------------------

Sub czasimak2

Curenttime = Timer

Do Until isActive(czujimaka2)

If Timer > Curenttime + delayimak2 Then
SetCurrentTool( ToolOld )
While IsMoving
Sleep(1)
Wend
DoOEMButton(1021)
Sleep(150)
Message"przekroczono czas wyboru " & ToolNew & " narzędzia > imak 2"
End
End If
Sleep(1)
Loop
Sleep(zwlokaimak2)

End Sub
'------------------------------------------------------------------------------------------------------------

Public Sub Ustaw (ByVal a As Integer, ByVal b As Integer, ByVal c As Integer, ByVal d As Integer, ByVal e As Integer, ByVal f As Integer, ByVal g As Integer, ByVal h As Integer, ByVal i As Integer)

If a = 1 Then
ActivateSignal(narz1)
Else
DeactivateSignal(narz1)
End If

If b = 1 Then
ActivateSignal(narz2)
Else
DeactivateSignal(narz2)
End If

If c = 1 Then
ActivateSignal(narz3)
Else
DeactivateSignal(narz3)
End If

If d = 1 Then
ActivateSignal(narz4)
Else
DeactivateSignal(narz4)
End If

If e = 1 Then
ActivateSignal(narz5)
Else
DeactivateSignal(narz5)
End If

If f = 1 Then
ActivateSignal(narz6)
Else
DeactivateSignal(narz6)
End If

If g = 1 Then
ActivateSignal(narz7)
Else
DeactivateSignal(narz7)
End If

If h = 1 Then
ActivateSignal(narz8)
Else
DeactivateSignal(narz8)
End If

If i = 1 Then
ActivateSignal(blokada)
Else
DeactivateSignal(blokada)
End If

End Sub
'------------------------------------------------------------------------------------------------------------
Mach3 + CSMIO = :-) :-) :-)


Autor tematu
fizyk19
Czytelnik forum poziom 1 (min. 10)
Czytelnik forum poziom 1 (min. 10)
Posty w temacie: 7
Posty: 18
Rejestracja: 22 maja 2008, 09:05
Lokalizacja: polska

#13

Post napisał: fizyk19 » 27 sty 2013, 15:53

Makro sprawdzone działa rewelacyjnie wielkie dzięki dla kolegi dziabi3

ODPOWIEDZ Poprzedni tematNastępny temat

Wróć do „Mach 2 / 3 / 4 (ArtSoft software)”