Interpolator programmed stops

More
4 years 2 months ago #250309 by arabel1a
Hi there ! I'm using LinuxCNC on a punching machine. Among others, it should have a 'scissors' mode (also called 'nibbling'). In this mode, in any moving command (like G1X123Y456) it should stop moving every time it goes specified distance, make a punch and continue. Due to some reasons i can not resolve this in CAD system.
 
What i want in brief:
If M-function  ( M123 PX ) was executed, than in every moving frame ( with G1 and G2 ) after moving for distance X, linuxcnc should stop moving, than toggle a halpin 'punch', wait for halpin 'punch-done' and repeat this until it reaches target position.
If another M-function (M124 ) was executed, than it should move normally without stops.

I haven't found any parameter  that will help me. So probably i should modify linuxcnc interpolator for my purposes. I'm new to linuxcnc sources. Please give me advice, which files i should look at. Interpolator? Trajectory planner? How thoose files are named and where they are located? Maybe there is a simpler way to resolve my problem?

If it's important, i use RIP linuxncn-dev 2.9 with trivkins kinematics on my machine.

Thank you,
arabel1a.

Please Log in to join the conversation.

More
4 years 2 months ago #250311 by tommylight
I know exactly what you are looking for as i have worked and programmed punch presses, but not sure how to implement that.
Using M codes might be doable but i would like to have it implemented as the Fanuc machines, so
Nib x100-x200
Should do a nibble from x100 to x200, but there are many variables there as the tool has to be chosen and depending on tool length/width the number of punches must be calculated, etc.
There are other nifty shortcuts like that, LAA or line at angle, Matrices with hole size/spacing/number of, etc.
Been quite a while, so a bit fuzzy on the other ones.
Thinking of how it can be implemented, but no clear solution for now.

Please Log in to join the conversation.

More
4 years 2 months ago #250419 by arabel1a
Thank you, so i'd decide this in CAD :)

Please Log in to join the conversation.

More
4 years 2 months ago #250433 by tommylight
I do not think CAD will help with that.
That begs the question, why are you using CAD for a punch press? :)
There are several posibilities that might or might not work:
Hal, pretty sure it can be done but also pretty sure it would take a lot of effort and hoops and... a lot, so i would avoid this, especially since i am still traumatised from doing THC in hal several years back.
Component, this might be the easiest and best solution, but i do not know how, it would require a bit of fine tuning, but if done, it would work.
Macros, i do not like them much, but might be the easiest to do.
Same with M codes, might be easiest but not a single one for all functions.
If we could limit the tools used to 1, that would make it easier, but still i am sure it would require the tool to be the rotating one, and that would also need angles to be calculated.
Etc etc etc....
Personally, i would aim for a component as it would not limit machine use and would be much more versatile in use.
As a start, what does the NIB command need as variables, besides start and end point and angle?

Please Log in to join the conversation.

More
4 years 2 months ago #250538 by arabel1a
Machine is Trumpf Truematic tc 2000, It has TOPS - a proprietary cad system. (I'm not sure that i use this term correctly) that allows to draw a scheme and convert it to time-optimized program. My customer want to make programs in TOPS, so anyway i'm making a postprocessor to translate TOPS code intro NGC file.
It looks like nibbling consists of two parameters - ON/OF and a distance through which a punch is made. So during parsing a TOPS file i replace every move frame with subroutine call, passing target position as it's parametrs. In this subroutine, If #<_nib> is enabled, it splits a path intro small pieces and makes a nibbling. Now this pretty works with linear and circular interpolation, and not so with splines. But i can forbid using spline interpolation in TOPS, so (for my particular case) it is a solution.

By the way, is there a way to access to NGC parameters outside linuxcnc? I need to parametrise punching (sheet thikness, pressure, speed/accel and etc), and have no idea how to transmit this parameters from mdi to my head controller.

Please Log in to join the conversation.

More
4 years 2 months ago #250542 by arabel1a
Oh my stupid head, looks like in english it called "CAM", not "CAD" :)

Please Log in to join the conversation.

More
4 years 1 month ago #251126 by andypugh
Does your machine have top of travel and bottom of travel sensors?

If so then insert an M66 wait-for-bottom then wait-for top before each XY movement and motion will stop during the punch.
linuxcnc.org/docs/stable/html/gcode/m-code.html#mcode:m66

Have you tried the G61.1 "exact stop" mode? linuxcnc.org/docs/stable/html/gcode/g-code.html#gcode:g61.1
(That probably isn't enough, but is worth a try)

Please Log in to join the conversation.

Time to create page: 0.107 seconds
Powered by Kunena Forum