Here’s
an observation that I hope you will find interesting.
CAM Software CNC
program estimated cycle times.
My use
of an image of a mechanical stopwatch is no accident. Back in the day, when I
started out as a CNC programmer - which is more years ago now than I care to
mention and before the digital timer age - I felt really important but a little
intimidated and embarrassed to go down to the machine shop with the stopwatch ( it belonged, of course,
to the department ) to time the cycle on first prove-out of one of my well-crafted programs.
We had
no means of accurately estimating the cycle time, and had to go and time it so
that the job could be accurately booked.
Throughout
my CAM software support and selling career working with various CAM system products, the question of cycle time
calculation accuracy has arisen regularly.
I’d
bet that I’m not alone as a CAM salesperson who couldn’t comfortably look my customer
in the eye and say to them that “oh, don't worry it’s spot-on, you won’t have any problem
at all”. I just can’t and won't do it. If I were to do so then I’d possibly be in for a
whole load of trouble down the line.
Instead,
I always tell my customer how it is.
In any CAM system there are, as you might expect, many settings that can be used to influence the cycle time. In ours there is even a ‘fudge factor’ that can be automatically applied to the result, because often the estimated time will prove to consistently be ‘n%’ out.
In any CAM system there are, as you might expect, many settings that can be used to influence the cycle time. In ours there is even a ‘fudge factor’ that can be automatically applied to the result, because often the estimated time will prove to consistently be ‘n%’ out.
But
these things cannot really be guaranteed to be accurate. I wouldn’t bet money on it, I
just know that I’d lose out. There are just too many intangibles, too many
synthetics.
But ..
Here
comes my mention-of-SmartCAM bit.
My boss expects it. No; he demands, it.
My boss expects it. No; he demands, it.
There
is some neat stuff in SmartCAM that can be used to help deliver an accurate
cycle time calculation.
It’s
like most things: if that cycle time is critically important to you then it’s
worth spending some time in trying to get it as accurate as is possible. If
you’re not bothered about the output cycle time, then why bother wasting time
on setting it up.
Anyway,
let’s have a brief look at what is available in SmartCAM.
The
Code Generator ( the SmartCAM community term for ‘post processor’. I’d like a
$, £ or a € for every time I’ve stated that ) Machine Define tool has settings
for machine tool linear and rotary rapid traverse rates, tool index times, that
adjustment factor I mentioned above, and more.
These
settings are used to create a cycle time when graphically verifying toolpath and also when
generating code by running the post processor code generator.
Those
time estimates may well be sufficient for a given need, but as I have said I’d not bet my hard-earned money on them being highly accurate. A good application-use example of
them is a when experimenting with one toolpath / production method over
another, the difference in the resulting cycle times can be helpful.
Cycle times can be output according to needs; as a message block in the code file or in a setup document, to mention but two examples.
Cycle times can be output according to needs; as a message block in the code file or in a setup document, to mention but two examples.
SmartCAM Customizable Job report |
Fine Tuning
Now, if I were tasked with creating accurate cycle time calculations from SmartCAM and the system-generated time didn’t cut it, then I could do more.
Now, if I were tasked with creating accurate cycle time calculations from SmartCAM and the system-generated time didn’t cut it, then I could do more.
The
Code Generator toolkit also uses a template ( *.cgt) file, which controls how and when addresses are output and oh so much more.
CGT
files have sections; the code generator and code generator writer ‘knows’ when
code for key events such as start, end, line, arc, rapid, tool change ( and other events, too
many more to mention here ) is being generated.
Here’s
about the most basic example, a linear move section:
// Linear feed move.
@LINE
< #MOV><
#DCOMP>< X#XPOS>< Y#YPOS>< Z#ZPOS>< F#FEED>
@
CGTs
can also contain logic programming. It is very feasible and actually quite
simple for a Code Generator creator to add logic to his CGT file that manages
cycle time output ( and most stuff, for that matter ) to high levels of
accuracy, adhering to standards that are uniquely theirs or those of the
company.
The CG
( I’m now fed up with typing Code Generator every time ) has a variable for the
length of the linear move ( meaning that you don’t even have to include logic to
work that out using previous and next positions ), and it can get to the
feedrate being used for the move. Counting the incremental time for a linear
move is very simple. Something like:
// Linear feed move.
@LINE
< #MOV>< #DCOMP>< X#XPOS>< Y#YPOS><
Z#ZPOS>< F#FEED>
#EVAL ( #mycycletime = #mycycletime + #LNLEN / JOS( feedupm1 ) )
@
( we
are using CG commands there, but since this isn’t a training lesson, it isn’t
appropriate that I describe that stuff here. Suffice to say that the explanation
is pleasingly technical, simple and logical )
And we might want to output a message block containing
our cycle time at the end of the CNC code output:
@END
#SPOFF M09
< #MOV>< #DCOMP>
( My Estimated Cycle Time
is: #mycycletime minutes )
M30
@
I hope
this gives just a small insight into some of the possibilities.
In addition to managing cycle time at a ‘user level’, when it comes to CNC code requirements CGT logic can be used to output all manner of different things. We never cease to be amazed and impressed by the outputs from SmartCAM that our customers achieve using their preferred CAM system functions.
I like to say that the possibilities are only really ‘limited by the imagination’. But that’s just me being smart.
In addition to managing cycle time at a ‘user level’, when it comes to CNC code requirements CGT logic can be used to output all manner of different things. We never cease to be amazed and impressed by the outputs from SmartCAM that our customers achieve using their preferred CAM system functions.
I like to say that the possibilities are only really ‘limited by the imagination’. But that’s just me being smart.
Good Timing
Whoa! Look at the time. I’ve talked at you about cycle time and our Code Generators for a little longer than I had intended to. But hey, I hope you found my observations of interest, and I hope also that my manager will be pleased.
Whoa! Look at the time. I’ve talked at you about cycle time and our Code Generators for a little longer than I had intended to. But hey, I hope you found my observations of interest, and I hope also that my manager will be pleased.
Take
care.
Have a great day / evening / weekend.
We're at:
Have a great day / evening / weekend.
We're at:
+1 (541) 344-4563
No comments:
Post a Comment