- Posts: 22015
- Thank you received: 4
CNC BRIDGE SAW FOR MARBLE
- tommylight
-
- Away
- Administrator
-
Please Log in to join the conversation.
I am attaching a component and hal file that I use on my lathes for jogging in G95 feed per rev mode. I am using spindle encoder as an MPG for axes. You could use the same hack to move XY axes in jog mode, you just need to calculate axis.jog-scale for x and y with some trigonometric functions based in an angle of C axis. The handwheel increment counter could be generated in SW for your needs.
component code:
Please Log in to join the conversation.
fixer wrote: Yannis, I belive that I know what you want to achieve. You want to manually rotate your saw (C axis), then you would like to move the X-Y in line with the angle the saw is pointing to. All this manually, without programming. This is possible with some custom hal component logic.
There are other (possibly easier) ways to do this too.
Take a look at the G10 commands:
linuxcnc.org/docs/2.7/html/gcode/g-code.html#gcode:g10-l2
That allows you to rotate the XY coordinate system around the Z axis.
So, a hardware button that runs an MDI_COMMAND could be set up that runs G10 L2 R[something] would mean that a G1 F100 X2000 (on a second button maybe) would follow the current line of the saw
You could do a similar thing with polar coordinates, but you still need the G10 L20 X0 Y0 to make the current position the centre of the polar coordinate system.
In fact there are three things to do on the button-press so making the MDI_COMMAND button call a G-code subroutine is probably the way to go.
You might need some mathematics in the subroutine to calculate exactly how far the saw can run (then making that request will not cause a "move exceeds limits" warning.
Please Log in to join the conversation.
He propably wants to use this machine in some kind of semi manual mode, using G10 will cause him trouble because he will not be able to use the DRO and G5x zero points.
Please Log in to join the conversation.
The task is done with ngc code nicely
The problem is that the machine have different x and y dimentions
If i put x max dimention in the ngc code and rotate the saw parallel to y i get an y limit error
As for the zeroing position i use the g92 and g92.1 commands thanks toTodd Zuercher suggestion
Please Log in to join the conversation.
linuxcnc.org/docs/2.7/html/gcode/m-code.html#mcode:m100-m199
So that M100 P80 will run to the furthest extent possible at 80mm/min
Then in the G-code subroutine that the M-code is associated with, you need some trigonometry to calculate the furthest possible target point.
I, personally, very rarely use G92. I use G10 to set offsets in coordinate systems and G53 for absolute moves.
I suspect that your user M-code .ngc routine would end up making a G53 G1 move.
Please Log in to join the conversation.
- Todd Zuercher
- Offline
- Platinum Member
-
- Posts: 4739
- Thank you received: 2
andypugh wrote: LinuxCNC will never allow a move that hits the limit switch.
You will have to find a different way to achieve whatever it is you want to do.
(What is it you want to do?)
What if the "limit" switch was configured as a probe input, and the move done as a probe move?
Please Log in to join the conversation.
Todd Zuercher wrote: What if the "limit" switch was configured as a probe input, and the move done as a probe move?
That would work, but only if the machine was set up without limits (or no effective limits)
Please Log in to join the conversation.
I have a 5 axis CNC saw bridge machine. I would like to know how to make a circle with Gcode while making C rotating from -180 to 180 simultaniously with X and Y.
Thank you in advance
Please Log in to join the conversation.
You would probably have to make an octogon first. I don't see how you could turn the blade when engaged on a solid piece
Please Log in to join the conversation.
