651
Building or Buying a Wood routing table.. Beginnners guide.. / Re: CNC 5040 z-axis problem
« on: December 31, 2020, 01:18:57 AM »
Config -> Ports&Pins -> Motor Outputs -> Z-axis -> Dir LowActive
This section allows you to view all posts made by this member. Note that you can only see posts made in areas you currently have access to.
Rem VBScript To center probe X-Axis
Speak (" psizionarsi CINQUE millimetri sopra il pezzo") 'Avviso Vocale
response = MsgBox (" 5 mm SOPRA IL PEZZO")
Begin Dialog ButtonSample 250,200,120,60," CENTRO PEZZO PIENO ? "
OKButton 12,20,40,14
CancelButton 68,20,40,14
End Dialog
Dim Dlg2 As ButtonSample
Button = Dialog (Dlg2)
If Button = 0 Then
MsgBox "CENTRO PEZZO CANCELLATO !"
Speak (" CENTRO PEZZO CANCELLATO") 'Avviso Vocale
Exit Sub
End If
Sleep (1000) ' pausa di 1 secondi
Speak (" CONFERMARE centro pezzo pieno") 'Avviso Vocale
Message "INIZIO CENTRO PEZZO PIENO"
Sleep (1000) ' pausa di 1 secondi
response = MsgBox ("CONFERMARE CENTRO PEZZO PIENO")
Message "**** zero assi ****"
DoOEMButton (1008) 'zero X
DoOEMButton (1009) 'zero Y
DoOEMButton (1010) 'zero Z
Sleep (2000) ' pausa di 1 secondi
Speak ("ZERO assi completato") 'Avviso Vocale
CurrentFeed = GetOemDRO(818) 'Get the current feedrate to return to later
CurrentAbsInc = GetOemLED(48) 'Get the current G90/G91 state
CurrentGmode = GetOemDRO(819) 'Get the current G0/G1 state
CurrentToolDiameter = GetOemDRO(1000) 'gets the current tool diameter
If GetOemLed (825) <> 0 Then 'Check to see if the probe is already grounded or faulty
Call ProbeGrounded()
Exit Sub
Else
XCurrent = GetDro(0)
YCurrent = GetDro(1)
OutsideDiameter = GetUserDRO(1152)
Code "G4 P1" 'Pause 1 second to give time to position probe plate
While IsMoving ()
Wend
Call SetDro (0,0.000)
While IsMoving ()
Wend
Call SetDro (1,0.000)
Code "F50" 'slow feed rate to 100mm/sec
Code "G90 G0 X" &XNew + OutsideDiameter * .6
Code "G91 G0 Z-10"
Rem Probe Left
XNew = Xcurrent - 75
Code "G31 X" &XNew
While IsMoving() 'wait for the move to finish
Wend
Code "G91 G0 X2 F10"
While IsMoving() 'wait for the move to finish
Wend
Code "G31 X" &XNew
While IsMoving() 'wait for the move to finish
Wend
XPos1 = GetVar(2000) 'get the probe touch location
Code "G91 G0 X2 F50"
Code "G91 G0 Z10"
Code "G90 G0 X" &XCurrent 'rapid move back to start point
Code "G91 G0 X" &XCurrent - OutsideDiameter * .6
Code "G91 G0 Z-10"
Rem Probe Right
XNew = XCurrent + 75 'probe 75mm to right
Code "G31 X" &XNew
While IsMoving()
Wend
Code "G91 G0 X-2 F10"
While IsMoving() 'wait for the move to finish
Wend
Code "G31 X" &XNew
While IsMoving() 'wait for the move to finish
Wend
XPos2 = GetVar(2000)
Code "G91 G0 X-2 F50"
Code "G91 G0 Z10"
XCenter = (XPos1 + XPos2) / 2 'center is midway between XPos1 and XPos2
Code "G90 G0 X" &XCenter 'rapid move to the x center location
While IsMoving ()
Wend
Call SetDro (0,0.000)
Code "G4 P0.25"
Code "F" &CurrentFeed 'restore starting feed rate
Call ReturnG90G91State()
Exit Sub
End If
Rem VBScript To center probe Y-Axis
Speak (" psizionarsi CINQUE millimetri sopra il pezzo") 'Avviso Vocale
response = MsgBox (" 5 mm SOPRA IL PEZZO")
Begin Dialog ButtonSample 250,200,120,60," CENTRO PEZZO PIENO ? "
OKButton 12,20,40,14
CancelButton 68,20,40,14
End Dialog
Dim Dlg2 As ButtonSample
Button = Dialog (Dlg2)
If Button = 0 Then
MsgBox "CENTRO PEZZO CANCELLATO !"
Speak (" CENTRO PEZZO CANCELLATO") 'Avviso Vocale
Exit Sub
End If
Sleep (1000) ' pausa di 1 secondi
Speak (" CONFERMARE centro pezzo pieno") 'Avviso Vocale
Message "INIZIO CENTRO PEZZO PIENO"
Sleep (1000) ' pausa di 1 secondi
response = MsgBox ("CONFERMARE CENTRO PEZZO PIENO")
Message "**** zero assi ****"
DoOEMButton (1008) 'zero X
DoOEMButton (1009) 'zero Y
DoOEMButton (1010) 'zero Z
Sleep (2000) ' pausa di 1 secondi
Speak ("ZERO assi completato") 'Avviso Vocale
CurrentFeed = GetOemDRO(818) 'Get the current feedrate to return to later
CurrentAbsInc = GetOemLED(48) 'Get the current G90/G91 state
CurrentGmode = GetOemDRO(819) 'Get the current G0/G1 state
CurrentToolDiameter = GetOemDRO(1000) 'gets the current tool diameter
If GetOemLed (825) <> 0 Then 'Check to see if the probe is already grounded or faulty
Call ProbeGrounded()
Exit Sub
Else
XCurrent = GetDro(0)
YCurrent = GetDro(1)
OutsideDiameter = GetUserDRO(1152)
Code "G4 P1" 'Pause 1 second to give time to position probe plate
While IsMoving ()
Wend
Call SetDro (0,0.000)
While IsMoving ()
Wend
Call SetDro (1,0.000)
Code "F50" 'slow feed rate to 100mm/sec
Code "G90 G0 Y" &YNew - OutsideDiameter * .6
Code "G91 G0 Z-10"
Rem Probe up
YNew = YCurrent + 75
Code "G31 Y" &YNew
While IsMoving()
Wend
Code "G91 G0 Y-2 F10"
While IsMoving() 'wait for the move to finish
Wend
Code "G31 Y" &YNew
While IsMoving() 'wait for the move to finish
Wend
YPos1 = GetVar(2001)
Code "G91 G0 Y-2 F50"
Code "G91 G0 Z10"
Code "G90 G0 Y" &YCurrent
Code "G91 G0 Y" &YCurrent + OutsideDiameter * .6
Code "G91 G0 Z-10"
Rem Probe down
YNew = YCurrent - 75
Code "G31 Y" &YNew
While IsMoving()
Wend
Code "G91 G0 Y2 F10"
While IsMoving() 'wait for the move to finish
Wend
Code "G31 Y" &YNew
While IsMoving() 'wait for the move to finish
Wend
YPos2 = GetVar(2001)
Code "G91 G0 Y2 F50"
Code "G91 G0 Z10"
YCenter = (YPos1 + YPos2) / 2
Rem move To the center
Code "G90 G0 Y" &YCenter
While IsMoving ()
Wend
Call SetDro (1,0.000)
While IsMoving ()
Wend
Call SetUserDro (1152,YPos2 - YPos1 - CurrentToolDiameter)
Code "G4 P0.25"
Code "F" &CurrentFeed 'restore starting feed rate
Call ReturnG90G91State()
Exit Sub
End If
Rem VBScript To center probe outside diameter Metric Version
Speak (" psizionarsi CINQUE millimetri sopra il pezzo") 'Avviso Vocale
response = MsgBox (" 5 mm SOPRA IL PEZZO")
Begin Dialog ButtonSample 250,200,120,60," CENTRO PEZZO PIENO ? "
OKButton 12,20,40,14
CancelButton 68,20,40,14
End Dialog
Dim Dlg2 As ButtonSample
Button = Dialog (Dlg2)
If Button = 0 Then
MsgBox "CENTRO PEZZO CANCELLATO !"
Speak (" CENTRO PEZZO CANCELLATO") 'Avviso Vocale
Exit Sub
End If
Sleep (1000) ' pausa di 1 secondi
Speak (" CONFERMARE centro pezzo pieno") 'Avviso Vocale
Message "INIZIO CENTRO PEZZO PIENO"
Sleep (1000) ' pausa di 1 secondi
response = MsgBox ("CONFERMARE CENTRO PEZZO PIENO")
Message "**** zero assi ****"
DoOEMButton (1008) 'zero X
DoOEMButton (1009) 'zero Y
DoOEMButton (1010) 'zero Z
Sleep (2000) ' pausa di 1 secondi
Speak ("ZERO assi completato") 'Avviso Vocale
CurrentFeed = GetOemDRO(818) 'Get the current feedrate to return to later
CurrentAbsInc = GetOemLED(48) 'Get the current G90/G91 state
CurrentGmode = GetOemDRO(819) 'Get the current G0/G1 state
CurrentToolDiameter = GetOemDRO(1000) 'gets the current tool diameter
If GetOemLed (825) <> 0 Then 'Check to see if the probe is already grounded or faulty
Call ProbeGrounded()
Exit Sub
Else
XCurrent = GetDro(0)
YCurrent = GetDro(1)
OutsideDiameter = GetUserDRO(1152)
Code "G4 P1" 'Pause 1 second to give time to position probe plate
While IsMoving ()
Wend
Call SetDro (0,0.000)
While IsMoving ()
Wend
Call SetDro (1,0.000)
Code "F50" 'slow feed rate to 100mm/sec
Code "G90 G0 X" &XNew + OutsideDiameter * .6
Code "G91 G0 Z-10"
Rem Probe Left
XNew = Xcurrent - 75
Code "G31 X" &XNew
While IsMoving() 'wait for the move to finish
Wend
Code "G91 G0 X2 F10"
While IsMoving() 'wait for the move to finish
Wend
Code "G31 X" &XNew
While IsMoving() 'wait for the move to finish
Wend
XPos1 = GetVar(2000) 'get the probe touch location
Code "G91 G0 X2 F50"
Code "G91 G0 Z10"
Code "G90 G0 X" &XCurrent 'rapid move back to start point
Code "G91 G0 X" &XCurrent - OutsideDiameter * .6
Code "G91 G0 Z-10"
Rem Probe Right
XNew = XCurrent + 75 'probe 75mm to right
Code "G31 X" &XNew
While IsMoving()
Wend
Code "G91 G0 X-2 F10"
While IsMoving() 'wait for the move to finish
Wend
Code "G31 X" &XNew
While IsMoving() 'wait for the move to finish
Wend
XPos2 = GetVar(2000)
Code "G91 G0 X-2 F50"
Code "G91 G0 Z10"
XCenter = (XPos1 + XPos2) / 2 'center is midway between XPos1 and XPos2
Code "G90 G0 X" &XCenter 'rapid move to the x center location
While IsMoving ()
Wend
Call SetDro (0,0.000)
Code "G4 P0.25"
Code "G90 G0 Y" &YNew - OutsideDiameter * .6
Code "G91 G0 Z-10"
Rem Probe up
YNew = YCurrent + 75
Code "G31 Y" &YNew
While IsMoving()
Wend
Code "G91 G0 Y-2 F10"
While IsMoving() 'wait for the move to finish
Wend
Code "G31 Y" &YNew
While IsMoving() 'wait for the move to finish
Wend
YPos1 = GetVar(2001)
Code "G91 G0 Y-2 F50"
Code "G91 G0 Z10"
Code "G90 G0 Y" &YCurrent
Code "G91 G0 Y" &YCurrent + OutsideDiameter * .6
Code "G91 G0 Z-10"
Rem Probe down
YNew = YCurrent - 75
Code "G31 Y" &YNew
While IsMoving()
Wend
Code "G91 G0 Y2 F10"
While IsMoving() 'wait for the move to finish
Wend
Code "G31 Y" &YNew
While IsMoving() 'wait for the move to finish
Wend
YPos2 = GetVar(2001)
Code "G91 G0 Y2 F50"
Code "G91 G0 Z10"
YCenter = (YPos1 + YPos2) / 2
Rem move To the center
Code "G90 G0 Y" &YCenter
While IsMoving ()
Wend
Call SetDro (1,0.000)
While IsMoving ()
Wend
Call SetUserDro (1152,YPos2 - YPos1 - CurrentToolDiameter)
Code "G4 P0.25"
Code "F" &CurrentFeed 'restore starting feed rate
Call ReturnG90G91State()
Exit Sub
End If
Does any of these open Mach 3 ''*.f3z, *.f3d, *.fbx, *.iam, *.ipt, *.obj, *.skp, *.smt, *.step, *.stl, *.stp''no