Step and repeat patterns

Discussion/questions about software used with your CNC Shark and programming issues

Moderators: al wolford, sbk, Bob, Kayvon

User avatar
gmm50
Posts: 46
Joined: Fri May 16, 2014 5:22 pm

Step and repeat patterns

Post by gmm50 »

Hi All:

We setting up our Shark for a production job. This will take us several months to complete with many parts.

Our most current problem is that we have one complete part with all the tool paths. We would like to load up a piece of raw material, zero the mill and start cutting a part. When the part is complete move zero and start cutting a second part. And doing this till a board full of parts is cut.

My question is can we use any of the Shark control software to do the step and repeat function and then 'call up' a routine that actually cuts the part. Then repeat the move and cut operations till all the parts are cut.

Sometimes called step and repeat. Sometimes called wizards. Sometimes called subroutines.
Thanks in advance.
George

Kevink18
Posts: 205
Joined: Fri Nov 23, 2012 3:30 pm

Re: Step and repeat patterns

Post by Kevink18 »

In aspire or v carve pro you can do a plate production and you can set it up to cut as many parts that can fit in your piece of material

User avatar
gmm50
Posts: 46
Joined: Fri May 16, 2014 5:22 pm

Re: Step and repeat patterns

Post by gmm50 »

I believe that will generate one BIG file with all the tool paths for all the parts.

I'm thinking of setting up a front end that has the array on screen and the user highlights the specific parts that are to be cut.

Say a sheet of material holds 4x4 or 16 parts and we only need 5 parts. Then I would highlight the 5 and run a job.

Next time if I need 3 parts I would mount the board and highlight the next 5 parts.

We have 6 separate parts and need 1000 per year but don't exactly know how orders will come in.
George

Eagle55
Posts: 788
Joined: Sun Nov 20, 2011 8:44 pm

Re: Step and repeat patterns

Post by Eagle55 »

My initial thought would be to lay out all 16 on a sheet of material but rather than to put all of them on the same tool path, put each part on its own tool path and name them Part1, Part2.... etc up to Part16. The number would represent each position possible for a part to be cut. If you just wanted to cut 5 parts you could load Part1 tool path and cut it, then load Part2 tool path and cut it until you cut all 5. Would take 30 seconds between each part to load the next tool path but could cut the ones you wanted. The other way would be to have a tool path with the first row of 4, another for the second row, and another for the 3 row so you would cut 4 at a time in three different rows. The thing that I would think would make more sense for me is the cut all 16 or what ever "one sheet" of materials is and leave them on the sheet cut until I was ready to remove them and do the finish work on each one. That way you wouldn't have to run to the shop and run them every time you get an order. I have and item (Beadboard) that typically a customer will buy either 2 of one model or 1 of 2 or 3 different models of a possible 6 variations that I offer. When I get an order and don't have one on the shelf ready to finish, I will make the one that they want and then 4 or 5 more to go on the shelf. If it happens with a different model next time I make several of that model and put the extras on the shelf. When I take the time to set up the machine, that is time lost, so when I set it up at least I can average the set up over 5 or 10 parts instead of just one part. Just some idea and different ways of looking at it.

Roger
CNC Shark HD ~ Control Panel 2.0 ~ Windows 7 & XP
Located in West Tennessee near the Tennessee River
http://www.eaglecarver4.com

Rando
Posts: 757
Joined: Tue Jan 06, 2015 3:24 pm
Location: Boise, ID
Contact:

Re: Step and repeat patterns

Post by Rando »

GMM50:

If you're automagically constructing gcode for this, one possible way is to:

** Create a custom-named Post Processor file that includes the following:
** Know the distances needed to move up/over to the "next" part. (XPartIncrement, YPartIncrement)
** At the END of the individual master part, have it move to XPartIncrement, YPartIncrement (G0, etc.)
** At the START of the individual master part, when it "should be" at 0,0 give it a G92 X0 Y0. If you don't reliably know what height of Z at that time, don't include it; I'm pretty sure it doesn't need all three.

Theoretically, that will make the first part, and at the end leave the cutter at the 000 for the next part. Then, when you re-run that same file, it will set it's 000 to where the last run left it. You can automate further with rows and going back to the starting end, or you can leave that to manual operations. Time saved versus not having to program all that is probably a wash.

Technically G92 is an old deprecated code, so your controller might not like it. Test it first cutting air with a test file.

And, of course, there's also the work offset code, G54, but that's apparently not widely supported on the Shark-level of controllers. I've not seen anything that used it in control panels, but it might be available elsewhere. If you went the work-offset way, your queuing program would just change the work offsets as appropriate.

I suppose you can also mark the toolpath as a sub-program and call it that way, assuming the controller memory will store it. I'm pretty certain that the Shark controllers don't support sub-programs. And, If you know what those are, then you're already nearly there and don't need my explanation :D.

The reason I like the G92 method is because I can imagine the X0, Y0, Z0 and Set buttons in the control panel using this GCode to set the controller's state.

Do that, put out the tap GCode file, and then just repeat it however many times you need for a "row", or whatever orientation you chose to set it in.

Note that this kind of thing doesn't do any of the cool nesting features of purpose-build software, like rotating the parts, and so on.

Thom
Last edited by Rando on Mon Jul 20, 2015 11:01 pm, edited 1 time in total.
=====================================================
ThomR.com Creative tools and photographic art
A proud member of the Pacific Northwest CNC Club (now on Facebook)

Eagle55
Posts: 788
Joined: Sun Nov 20, 2011 8:44 pm

Re: Step and repeat patterns

Post by Eagle55 »

Thom,
You must have mistaken me for someone who actually knew what they were talking about. LOL (I'm joking with you I hope you realize) I don't mess with the "code". Years ago I did my share of manually writing machine language code for computers and I have listened to people talk about G-Code and how to manually edit it and achieve the desired results, but these days I am of the mind set, if you can't manipulate the program to do the code, I don't need to mess with it. I know there are knowledgeable gcode people out there and I believe you may be one of them that can speak gcode fluently and if I had the time and enough need I believe I could too but when it comes down to it I am lazy in my later years. My method would be to have 3 or 4 tap files or even 16 tap files to handle several different scenarios. And if you need one part, cut 4 and have extras on the shelf. I believe what the poster originally wanted was to be able to determine how many he wanted to cut and select that number and it would stop at that. I'm sure that it could be done and what you are talking about may be able to do it but in my experience the more you complicate things the more you run the risk of making a mistake that could translate into damaged material or damaged machinery, either of which could negate the convenience and time savings of the effort. I think if I needed to cut a predetermined number, I would just have a VCarve file with an array and select the number and the locations I wanted them cut at and generate a file for that particular run. Takes about 30 seconds and you are relying on the perfection of the software to do it completely and correctly. Not saying it couldn't be by manually manipulating the gcode, just questioning whether or not I could generated that tap file and be cutting long before I could find out what direction I need to be going. I know just enough about gcode to know that everyone uses it and interprets it a little bit differently than anyone else does, and although there are standards within the code, everyone is free to choose how much and what parts of the standards they want to use, hence the library of dozens and dozens of "post-processors". My choice would be the easiest and most fool proof way to do even the most complex part.

Roger
CNC Shark HD ~ Control Panel 2.0 ~ Windows 7 & XP
Located in West Tennessee near the Tennessee River
http://www.eaglecarver4.com

Rando
Posts: 757
Joined: Tue Jan 06, 2015 3:24 pm
Location: Boise, ID
Contact:

Re: Step and repeat patterns

Post by Rando »

Well, I gotta give you passion for your position: you don't like the flavor of GCode and won't touch it. Fair enough. I find it trivially simple compared to actual programming languages, with really only a dozen or so base motions, and many of those are specialized to a particular machine type. A lot simpler than one might imagine, IMO. None of the three of us are trying to solve the problem for all types of machines, so variability among controllers is minimal to this product line.
=====================================================
ThomR.com Creative tools and photographic art
A proud member of the Pacific Northwest CNC Club (now on Facebook)

4DThinker
Posts: 951
Joined: Wed Jun 27, 2012 9:00 am

Re: Step and repeat patterns

Post by 4DThinker »

Don't know if this will help any, but I'll give it a try.

There are two (probably more) strategies for drawing up parts.
One has you choose your material size then lay out parts relative to where the edges of the sheet are.
The other is to draw every part centered around 0,0. I've done this with parts I may cut often, and on whatever scrap I have around when I need one. I know my "push stick" is 7"w x 5" tall. It's in the file name (7w5hPushStick18mm.tap). On any board big enough (18mm thick) I just zero out the bit in the center of any area that large and run the file. Need another one? Re-zero the bit centered in another area. Might be as simple as issuing a G0Y10.5 then re-zero (or SET Y to -10.5 then moveto 0,0,0) to cut one right above where my first one was cut. On a day when I need three I simply re-zero 3 times and run the same file 3 times. I have one of the push sticks with the zero point marked on it. I'll use it to check that where I've zero'd the bit on the CNC there is room to cut one. It is an odd shape, so I can often flip a board around to squeeze one out of it knowing exactly where the part will cut from.

You could also have unique files for unique numbers of parts. 1part.tap, 2parts.tap, 3parts.tap, etc.. When you need two parts just run the 2parts file.

4D

User avatar
gmm50
Posts: 46
Joined: Fri May 16, 2014 5:22 pm

Re: Step and repeat patterns

Post by gmm50 »

Well.............Thank everyone for their comments and input

I believe the first pass at this topic will be to:
put parts in a row in X direction
generate the G Code for that.
document the move required to get to the next row Y direction.
mount material
cut the first row
if more are needed move to the second row
keep repeating till the parts are cut or the material is all used up.

This procedure has a little bit more operator involvement but it's a good starting point.
As sales grow then just get setup to cut whole sheets of parts.

Thank you all.
You guys ROCK
George

4DThinker
Posts: 951
Joined: Wed Jun 27, 2012 9:00 am

Re: Step and repeat patterns

Post by 4DThinker »

For your strategy, the SET command in the Shark Control Panel menu will come in handy. Zero out X.Y, and Z for the first part. Cut the first part. Now open up the SET panel and change X from zero to negative the amount you want to offset the cut. Close the SET window. Now a move to 0,0,0 should move to the new X position, same Y and Z where you can simply cut the same file again. No G-Code you'll need to know.

4D

Post Reply