Tablaya parçayı bağlama

@Yusuf SEYLAN abi kodları denedim. Fakat G43H kodu sapıttırıyor. Softlmit hatası veriyor. Çünkü G53 takım telafisi kodu. Bizim takım telafisi yapabileceğimiz bir değişken yok. SAnırım bu kısmı iptal edip, takım takılım, ok butona basıldıktan sonra Prob X,Y,Z'ye gidip, probdan sinyali alana kadar Z ekseni aşağıya inmeye devam etmeli. Sinyal alındığında Z ekseni durmalı ve o noktayı yani proble kalınlığını DRO Z 'ye yazmalı...
 
Limit hatalarından , malzeme bağlama konusu kaynamış



Aspire için mi? mesela vectric 2d çözünürlük kısmı yok.
 
Kodları çözüyorum yavaş yavaş fakat bir problemim var. Benim touchprobe sabit noktada olacak. Dolayısıyla ona ulaşmak için makina koordinat sistemine G53 ile geçiyorum.
Code "G53 X-100Z-100"

Fakat Z eksenin proba dokunmak için inmem gereken komut G31'li

Code "G31Z-100 F25" 'Probe cok yaklastik yavasca probe'u ara
While IsMoving()
Wend

Dolayısıyla buradaki Z-100 benim makinama göre değilde 0'lama yapılan yere göre -100 oluyor. Halbuki benim probeum sabit noktada. Ben x ve y'de probe'un olduğu konuma G53 makina koordinatı ile gidip, z ekseninde de yine makina koordinatına göre hesap yapmak istiyorum. Fakat G31 ile bu mümkün olmuyor.Bir çözümü var mıdır?
 
bu kadar zor değil
kodların arasına sizin probunuza götürecek kod satırı ekleyin olsun bitsin.

mesela probunuz x150 y150 de
z-100 yapmadan önce makineyi proba yolayın bir. ondan sonra z alçalsın
 
öyle zaten abi,

Code "G53 G0 X-100Y-100" 'Proble için x ve y konumuna git
Code "G53 Z-50 F25" 'Probe yaklasirken hizli git

Code "G31Z-55 F25" 'Probe cok yaklastik yavasca probea doğru gir
While IsMoving()
Wend


Fakat yukarıdakiG52 Z-50 makina koordinatına gidiyorken, G31 deki Z-55'de parçaya 0'ladığım yerden itibaren -55'e gitmeye çalışıyor. Halbuki ben burada makina koordinatına göre sabit z yüksekliğinde olan probuma Z-55'e gitmesini istiyorum.
 
macro kullanmadım hiç kodlamasını da bilmem.
aman mantık şöyle olmalı
önce takım değiştirmek için belli bir yüksekliğe çık.
takım değişti ise,
proba git
z ekseni proba değsin ve ölçüyü z eksenine yazsın
daha sonra z ekseni bilmem kaç mm yukarı
programa devam
g53 ü ben gcodelardan çıkarıyorum makineyi sapıttırıyordu. neden g53 süz denemiyorsun ?

benim tablaya bağladığım parçalar standart değil kimi zaman büyük parçanın içinde belirsiz yerden kesim yapıyorum. parçayı küçültüp kesme lüksüm yok. o yüzden makine koordinat sistemini kullanmıyorum. göz kararı nereden başlayacaksa orada sıfırlayıp işe başlıyorum.
 
Dediğin doğruda işte g-code'da zaten makina koordinatı olmuyor. O gcode'da M6 kodu gelince bizim script çalıyor. Ucu değiştir uyarısı çıkıyor. Değiştirip ok'e basıyorum. Makine probe'un olduğu koordinata makina koordinatına geçerek gidiyor. Çünkü sıfırladığıma göre gitse probe'a gitmeyecek. Fakat z ekseninde G31 olması gerekiyor. Probe switch'ini beklemesi için.. Ama onunla da makina koordinatı olmuyor.
 
Kod:
 'tool = GetSelectedTool()
'SetCurrentTool( tool )
' OldTool = GetOEMDRO (1224)
' Speak ("Presss xxxxx" )

'Tool Change Macro For Manual tool change 09/14 CNC4XR7
OldTool = GetOEMDRO (1224)  'Tool In spindle DRO You must add this to your settings screen
'x = GetToolChangeStart( 0 ) ' Get x tool change start position
'y = GetToolChangeStart( 1 ) ' Get y tool change start position
'z = GetToolChangeStart( 2 ) ' Get z tool change start position
Code "G53 G0 X-175Y-200-50Z-15" ' Move z to tool change position in Machine cord.
While IsMoving ' wait for z to move
Wend
tool = GetSelectedTool() ' tool to be changed to
NewTool = tool
Call SetUserDRO (1224,NewTool)
SetCurrentTool( NewTool )  ' input new tool into tool in spindle dro
'Code "G43 H" & tool        ' Call tool offsets for new tool




' Tell the user to load the requested tool
Speak("Please insertAA tool number " & "  (  " & GetCurrentTool() & " )   " & " " &  GetToolDesc(GetCurrentTool) & " )  click ok When Ready")
Code "M00"
' Verify Tool Change Complete message box
Dim Msg, Style, Title, Help, Ctxt, Response,MyString
Msg = "Luften takimı takiniz BB " & "   (   "  & GetCurrentTool() & "   )   " & " " &  GetToolDesc(GetCurrentTool)
'Msg = "Please Insert ToolCC  Number " & " ( "  & GetSelectedTool() & " ) " & "    " & GetToolDesc(Tool) ' Define message
Style = vbYesNo + vbCritical + vbDefaultButton2   ' Define buttons
Style = 0 + 48 + 0   ' Define buttons.
Title = "Takim degistirme talebi"   ' Define title
Help = "DEMO.HLP"   ' Define Help file
Ctxt = 1000   ' Define topic       
'context.       
' Display message.
Response = MsgBox(Msg, Style, Title, Help, Ctxt)
If Response = vbOk Then   ' User chose Ok   
MyString = "Ok"   ' Perform some action
End If
' Tell the user to load the requested tool
Speak("Atool number " & "  (  " & GetCurrentTool() & " )   " & "  )  Installed Returning to Tool Change Start position")
Code "M00"
'Show user the current tool description
Message "BTool  #   " & GetCurrentTool() & " :  " & GetToolDesc(GetCurrentTool) & "  Installed  " & "   Returning to Tool Change Start Position"
Code "G53 G0 X-100Y-100" 'Proble için x ve y konumuna git
Code "G53 Z-50 F500" 'Probe yaklasirken hizli git

Code "G31Z-55 F25" 'Probe cok yaklastik yavasca probe'u ara ! Sorun burada Z-55 makina koordinatı değil. Benim 0 ladığım noktadan -55 hesaplıyor
While IsMoving()
Wend

'Code "G4 P0.25" 'Buradaki P deðeri sýfýrlama iþlemi bittikten sonra Z ekseninin alt satýra yazacaðýmýz deðere kalkarak ne kadar süreyle beklemede kalacaðýdýr.
'Call SetDro (2, -55.00)


' Tell the user to Press cycle start
Speak("Takim degistirme tamamlandi")
Code "M00"
Speak("Devam etmek icin Cycle Start'a basiniz")
Code "M00"

End


Sorunlu olan satır..
Code "G31Z-55 F25" 'Probe cok yaklastik yavasca probe'u ara ! Sorun burada Z-55 makina koordinatı değil. Benim 0 ladığım noktadan -55 hesaplıyor
 
Galiba buldum. Şöyle yapacağım.
Sıfırlama Probe'un konumu Makina koordinatı olarak şöyle X-300Y-300Z-165

Önce makinayı makina koordinatını kullanarak X-300 Y-300 e alıyorum.
Sonra yine makina koordinatı kullanarak Z0 a alıyorum. Ve Normal DRO(makina dro değil) yu 0 lıyorum. Daha sonra makinayı G53 makina koordinatı ile Z-160 a hızlı feedrate ile alıyorum.
Sonra daha yavaş şekilde G31 sıfırlama koduyla -165' e alıyorum. Probe dokunduğundaki konum probe kalınlığı oluyor. Buradan gelen değere göre parça kalınlığını ekleyip DRO'ya değer gireceğim.

Fakat bunun için benim ilk başta parça kalınlığını hep hafızamda/değişkende tutmam gerekiyor. Bunu hangi kod ile yapabilirim?

Edit: Onuda buldum. ToolChange scripti çalışınca ilk iş makinayı 0'ladığım yere göndereceğim. O noktaya geldikten sonra yani parçaya sıfırlama yapılan konumda iken makina koordinatına göre Z değerini alıp bir değişkene kaydedeceğim.
 
Son düzenleme:
Bu siteyi kullanmak için çerezler gereklidir. Siteyi kullanmaya devam etmek için onları kabul etmelisiniz. Daha fazla bilgi edin…