Hello Guest it is March 07, 2021, 04:35:25 AM

Show Posts

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.


Messages - TPS

1861
VB and the development of wizards / Re: Tangential spindle
« on: April 18, 2015, 07:09:30 AM »
ok i am pretty sure the next problem will be the dwell of the spindle,
because it is locking axis movement and so Input1 will go off again.

so i think the only practicable way well be to drive a axis not tangential and
control it miz g-code, something like this:

G0 Z0 A0
G0 X100 Y100
G0 Z70
M3
G1 X0
M5
G1 A90
M3
G1 Y80
M5
G1 A180
M3
G1 X100
M5
G1 A90
 

and so on.
what means you can only do straight line an no circles
(witch would not work anyway with this code for turn on/off spindle)


Thomas

1862
VB and the development of wizards / Re: Tangential spindle
« on: April 18, 2015, 06:47:52 AM »
Hello Damir,

tested here:

M3
setUserLed(2100,1)

M5
setUserLed(2100,0)

macropump
If GetOEMLed(2100) and GetLed(4) Then
  If IsActive(Input1) Then
    DoSpinStop()
  else
    DoSpinCW()
  End if  
End If


don't ask me why GetUserLed does not work, GetOEMLed is working.

Thomas



1863
VB and the development of wizards / Re: Tangential spindle
« on: April 18, 2015, 02:27:15 AM »
Hello Damir,

if the function should only be enabled between M3 and M5 call in
g-code we can use them to enable like this:

add this conde in M3
Code: [Select]
setUserLed(2100,1)
add this conde in M5
Code: [Select]
setUserLed(2100,0)

and this in macropump
Code: [Select]
If (GetUserLed(2100)=True) and (GetLed(4)=True) Then
  If Not IsActive(Input1) Then
    DoSpinCW()
  End if 
End If

  If IsActive(Input1) Then
    DoSpinStop()
  End if 

the only thing i see, that nothing resets the UserLed if
you cancle a program.
but give it a try.

Thomas





1864
VB and the development of wizards / Re: Tangential spindle
« on: April 17, 2015, 06:38:29 AM »
Hello Damir,

the feedrate thing is not working to seperate between
G0 and G1. if i look to your g-code maybe we can use the
z-axis as second trigger like this:

act_Z=GetDro(2)

If (act_Z>69) and (GetLed(4)=True) Then
  If Not IsActive(Input1) Then
    DoSpinCW()
  End if  
End If

  If IsActive(Input1) Then
    DoSpinStop()
  End if  


Thomas



1865
VB and the development of wizards / Re: Tangential spindle
« on: April 17, 2015, 06:04:57 AM »
changed getdro(18) to getdro(13)

sorry wrong dro

1866
VB and the development of wizards / Re: Tangential spindle
« on: April 17, 2015, 05:58:25 AM »
Hi Damir,

makes it a little bit clearer
put this in macropump:


act_feedrate=GetDro(13)

If (act_feedrate<3500) and (GetLed(4)=True) Then
  If Not IsActive(Input1) Then
    DoSpinCW()
  End if  
End If

  If IsActive(Input1) Then
    DoSpinStop()
  End if  


what i try to do with this:

act_feedrate=GetDro(13)
If (act_feedrate<3500) and (GetLed(4)=True) Then

is to the check the atual feedrate the 3500 must be lower than your G0 feedrate and
higher than your max G1.
try to use this to seperate between G0 and G1.

the GetLed(4)=True is to check that a g-code programm ist started.



Thomas

1867
VB and the development of wizards / Re: Tangential spindle
« on: April 17, 2015, 05:05:09 AM »
Hello,

--Could we use M code in the G-code to activate the script, for example M3 activate script, M5 deactivate script (or we can create some other M code),
--because we are in the script from before had a problem because she started immediately as soon as start Mach3?
--thanks
--Damir

please try to explane what is the real clue behind this fuctionality,
because for the moment i am not that i understand 100% the thing.

maybe a snipped of your g-code wold help.



Thomas  





1868
VB and the development of wizards / Re: Tangential spindle
« on: April 16, 2015, 02:41:03 PM »
Ok seems not to be so easy,

act_feedrate=GetDro(18)

If (act_feedrate<1500) and (GetLed(4)=1) Then
  If Not IsActive(Input1) Then
    DoSpinCW()
  End if 
End If

  If IsActive(Input1) Then
    DoSpinStop()
  End if 


Thomas

1869
VB and the development of wizards / Re: Tangential spindle
« on: April 16, 2015, 06:37:36 AM »
Hi,

something like this might work:

act_feedrate=GetDro(18)

If (act_feedrate<1500) and (GetLed(4)=1) Then
  If Not IsActive(Input1) Then
    DoSpinCW()
  End if 
  If IsActive(Input1) Then
    DoSpinStop()
  End if 
End If

Thomas


1870
VB and the development of wizards / Re: Tangential spindle
« on: April 16, 2015, 03:07:39 AM »
Hi,

macropump can help:

If IsActive(Input1) Then
  DoSpinStop()
End If

Thomas