titizmutfak
Üye
- Katılım
- 6 Nis 2012
- Mesajlar
- 5
- Puanları
- 1
- Yaş
- 34
Lpt drayver i kurdunuzmu mach 3 ile birlikte kuruluyor
Merhaba konu detayli bi sekilde mehmet kose abinin takim degistirme konusu icinde yer aliyor.. forumda kontrol edersen ve okursa isi cozersin... macro icinde kullanim sekli detayli anlatimis....arkadaşlar mach3 te takım değiştirme üzerinde çalışıyorum. Sağolsunlar paylaşımlardan çok yararlandım.fakat şöyle bir sıkıntı var makinayı kapattıktan sonra yeniden açtığımda referans home gönderiyorum. programı yükleyip çalıştırınca takım üzerinde olmasına rağmen alakasız bir yere gidip takımı bırakıp almaya çalışıyor.
acaba referans home macro yazıp, referansa gittikten sonra g54 e gitse ve orda takımı ve takım boyunu set ettirebilirmiyim .
şimdiden yardımlarınız için teşekkürler.
takım son üzerinde kalan takım olarak görünüyor. ilk açılışta referansa gönderdikten sonra y-300 lere gidiyor.sanki takımı bırakıyor tekrar alıyor gibi ve takım telafisi iptal olmuş oluyor kod şöyle
' OTOMATİK TAKIM DEĞİŞTİRME MAKROSU'
Public Xtool As Integer
Public Ytool As Integer
Sub Main()
OldTool = GetOEMDRO (1200)
x = GetToolChangeStart( 0 )
y = GetToolChangeStart( 1 )
z = GetToolChangeStart( 2 )
tool = GetSelectedTool()
Park = 50
NewTool = tool
MaxToolNum = 10 '*** Değiştirmek istenen max. takım sayısı
ToolDown = -15 '*** Takımı almak yada bırakmak için Z nin pozisyonu...!
ToolUp = 185 '*** Bıraktığı takımdan alacağı takıma giderken Z nin pozisyonu...!
If NewTool = OldTool Then
Exit Sub
End If
If OldTool = 0 Then
Call ToolPos(NewTool)
Code "G53 G00 X" & XTool & " Y" & YTool
While IsMoving()
Wend
Code "G53 G00 Z" & ToolDown
Code "G4 P.75"
While IsMoving()
Wend
Code "M9" '*** Takımı bırakmak için gönderilen sinyali kapatıyor, yani takımı tutuyor.
Code "G4 P1.0" '*** Wait for the tool to Clamp
While IsMoving()
Wend
Code "G53 G00 X" & XTool & " Y" & YTool-Park '*** Takım alındıktan sonra mandaldan kurtarmak için Y yönünde +20 gidiliyor...
While IsMoving()
Wend
Code "G53 G00 Z" & ToolUp
While IsMoving()
Wend
Call SetUserDRO (1200,ToolUp)
Code "G43 H" & NewTool
Code "M3"
'************* Tool numarası set ediliyor ***********************
Call SetUserDRO (1200,NewTool)
Call SetCurrentTool( NewTool )
Code "G00 X" & x & " Y" & y '*** Takım değiştirmeyi tamamlayıp kaldığı yere konumlanma....
End If
'*************** Eski takım bırakılıyor *************************
Code "G53 G00 Z" & ToolUp
While IsMoving()
Wend
Code "M5"
Call ToolPos(OldTool)
Code "G53 G00 X" & XTool & " Y" & YTool-Park
While IsMoving()
Wend
Call SetUserDRO (1200,ToolUp)
Code "G53 G00 Z" & ToolDown
Code "G4 P.75"
While IsMoving()
Wend
Code "G53 G00 X" & XTool & " Y" & YTool
While IsMoving()
Wend
Code "M7" '*** Takımı bırakmak için gerekli sinyal....!
Code "G4 P1.0" '*** Takımı bırakmak için bekletmek... gerektiği kadar gecikme yaptırılır...!
'SystemWaitFor (7) '*** Takımı aldığını bildiren Limit switch sinyalini beklemek...opsiyoneldir..
Code "G53 G00 Z" & ToolUp '*** Takım bırakıldı ve Toolup seviyesine çıkıldı...
'************** Yeni takım alınıyor ******************************
Call ToolPos(NewTool)
Code "G53 G00 X" & XTool & " Y" & YTool
While IsMoving()
Wend
Code "G53 G00 Z" & ToolDown
Code "G4 P.75"
While IsMoving()
Wend
Code "M9" '*** Takımı bırakmak için gönderilen sinyali kapatıyor, yani takımı tutuyor.
Code "G4 P1.0" '*** Wait for the tool to Clamp
While IsMoving()
Wend
Code "G53 G00 X" & XTool & " Y" & YTool-Park '*** Takım alındıktan sonra mandaldan kurtarmak için Y yönünde +20 gidiliyor...
While IsMoving()
Wend
Code "G53 G00 Z" & ToolUp
While IsMoving()
Wend
Call SetUserDRO (1200,ToolUp)
Code "G43 H" & NewTool
Code "M3"
'************* Tool numarası set ediliyor ***********************
Call SetUserDRO (1200,NewTool)
Call SetCurrentTool( NewTool )
Code "G00 X" & x & " Y" & y '*** Takım değiştirmeyi tamamlayıp kaldığı yere konumlanma....
End Sub
'*********** Takım konumlnma alt fonksiyonu Takım yerleri burda belirtilir. ************
'Xtool: Toolun X değeri Ytool: Toolun Y değeri.
'Tool hangi eksende ise ona göre değerleri değiştirmek gerekir.
Sub ToolPos(ByVal ToolNumber As Integer)
Select Case ToolNumber
Case Is = 1
XTool = 45
YTool = 60
Case Is = 2
XTool = 165
YTool = 60
Case Is = 3
XTool = 285
YTool = 59
Case Is = 4
XTool = 405
YTool = 59
Case Is = 5
XTool = 525
YTool = 59
Case Is = 6
XTool = 645
YTool = 60
Case Is = 7
XTool = 765
YTool = 60
Case Is = 8
XTool = 885
YTool = 60
Case Is = 9
XTool = 1005
YTool = 60
Case Is = 10
XTool = 1125
YTool = 60
End Select
End Sub