What's new
What's new

How do you folks generate unique program numbers for gcode

as9100d

Stainless
Joined
Apr 19, 2019
Location
Paris, Arkansas
We have a delima of sorts, I've changed our traveler template a smidge for unique program numbers based on a few jobs being ran with old programs and causing an ncmr and following car.

Is there an easy way to generate a unique program number and keep track of them some how?
 
If you make a lot or different parts you run out of numbers to use if you keep old programs in the CAD or control.
Obvious is a hash of date but that won't stop somebody from using the old one as it won't be a nice list.
There is the leave room between original program numbers and add one to each so a higher number in a group means think when you go to load one.
If you only have say 1000 part programs it gets easier to make this type system work.

You need to archive and remove the the old program(s) to a place where they can not be used accidentally.
That unfortunately means a dependence on programmers and operators to follow the rules and update the routing.
Much here is going to depend on your programming and part file storage method and software. You can do all sorts of niffy things with excel if your programs are on a pc to help track.
Where are the programs?

Life sucks when you run into a car, particularity here when you have no good excuse and need to explain how you won't do it again.
Bob
 
I like descriptive program names with part number, operation, machine, revision, etc - as opposed to purely numerical naming convention.

Programs stored on server, not in control.

In execution, this means the programmer is assigning fairly long program names and storing them in the appropriate directory. Not much automation to be had, as far as I know.

I should probably add that I store all my native CAM files on the server with the long names and revision control. My posts are basic names: O1001, and get reposted as necessary. The actual g-code program is discarded at end of job.
 
We have a delima of sorts, I've changed our traveler template a smidge for unique program numbers based on a few jobs being ran with old programs and causing an ncmr and following car.

Is there an easy way to generate a unique program number and keep track of them some how?

What kind of CNC controls? With Fanuc, you're locked into just O & 4 digits...

Others that allow longer strings of characters & letters offer more flexibility.

If you can simply make the program number match the drawing number, perhaps with a suffix, that might be the easiest from a naming/management perspective. IE - Drawing number is 3213-F-4222, then the program number is 3213-F-4222-OP10, and so fourth...


But yes, old programs need to be pulled from the control ASAP.
 
Here is sample of how we start all of are programs O0001 to O5999

we save all are programs in a folder on company server in folders and accesses on any connected computer. we can upload and download to over 44 different cnc machines using DNC software that keeps it all straight under customer and part number. just pick and choose on setup guy end from DNC.

At end of job on machine if program been modified it gets uploaded and saved if need. It then gets deleted out of controller at start of next setup.

As jobs and customer go away, we delete old and reuse program numbers as they open back up.

Have excel sheet that keeps track of program numbers being used or not.




%
O2254
(custname*partnumber*OPerationnumber*-Machinenumber)
(REV.x**REV.*DATE*6/29/12*original*programer*name)
(LAST*MODIFIED*10/17/13*who*last*mod)
G40G49G80


M30
%
 
We keep zero programs in the control and pull everything from the file server. Which is going to get more complicated possibly with the dfars800-171 cyber security compliance and trying to get rid of all the USB thumb drives.

I guess what we need to do is create some kind of database that tracks nc code like "2019-job number-1000" and increment the last as the program number for each op/program for a same part if needed.

We are getting close to phasing out the old Haas machines to all NGC machine so we can push the nc files directly to the machines. Or the machine specific folder.

Also as much of a pain as it is. Nothing gets edited at the control. If a change is needed, engineering fixes the program. More time and overhead but to make sure files are correct for the repeat job it's a must. Too many folks forget to upload the edited file and any changes made never get documented with a Delta fai.
 
We keep zero programs in the control and pull everything from the file server. Which is going to get more complicated possibly with the dfars800-171 cyber security compliance and trying to get rid of all the USB thumb drives.

I guess what we need to do is create some kind of database that tracks nc code like "2019-job number-1000" and increment the last as the program number for each op/program for a same part if needed.

We are getting close to phasing out the old Haas machines to all NGC machine so we can push the nc files directly to the machines. Or the machine specific folder.

Also as much of a pain as it is. Nothing gets edited at the control. If a change is needed, engineering fixes the program. More time and overhead but to make sure files are correct for the repeat job it's a must. Too many folks forget to upload the edited file and any changes made never get documented with a Delta fai.

Do you have to get rid of the usb drives, or can you encrypt them? A few years back I worked for a place doing aero and some dod and we went thru and encrypted thumb drives for certain work areas. Part of it was security on the pc's that would flash a big red error if you tried to use an un-encrypted drive.
 
Every Fanuc style program that needs a number, I use O1234. The operator loads the program, runs it and if any changes were made, saves it to the local computer.If no changes were made, he just deletes it from his machine.
So basically we only use 1 program number.

EDIT:
After re-reading your OP, my answer doesn't help you.
oops.
 
? Answer is "sequentially". O0000-O9999 there are that many numbers using basic sequential numbering, but 39 Million combinations. Ask Tom to hook you up with a spreadsheet.

R
 
? Answer is "sequentially". O0000-O9999 there are that many numbers using basic sequential numbering, but 39 Million combinations. Ask Tom to hook you up with a spreadsheet.

R

Since the "Oh" is fixed and you only get to use numeric for the last four how do you get 39 million combinations?
I'm missing something.
Options for program names or numbers are different for old controls vs new.
On newer or in the PC O1 and O0001 are different programs, on older you can't do this.
On PC side I like customer code, part number, and revision which sorts nicely.
Bob
 
I have five digits available, and all our part numbers are four digits, so I used the PN as the first four digits and the operation number as the last. Then PN's started climbing into the 9000's and I realized I couldn't continue. Now I use one number for op 1, another for op 2, etc., and reuse the same numbers for every part. Saves having to manually delete programs from the machine, and makes sure I'm always using the latest version of program.
 
I´ll try to help.

Actual final mechanics depend on your control sw, server, and tech. details.

You must de-couple your program nr from your machine tool, and instant-it at the server side in some way.
This is not very hard to do, and not very expensive.

Likewise, You should "block" program numbers into segments, not ever run them sequential.
So that you have say 50 program numbers for 20 machines, in area "a".
Or area "a".type n1.-nxx.

Every machine in a block of 50, say 4 blocks of 20 machines of 50 nr ranges of 50 each,
will call their own start-up program.
That program then instantiates the actual call-up time, machine, exact timestamp, intent-nr to run the same program, etc.

Then that particular machine starts to run a program of say 12345..
as far as the machine tool knows.
And the program 12345 has in its comment headers, not-used at the control, the actual data of what program version is being run at this time.

I used to do robots like this, 30 years ago, that ran 70.000 re-boots on dos/NT4/Novell 286/keyboard hacks.
And later tens of thousands per hour connections of large corporate vpns, globally.
Managing hundreds of routers in real-time with 13.000 users.

It is not difficult.
It is and should be de-coupled from program nr and machine nr.
Pm for details and practical advice.
 
Since the "Oh" is fixed and you only get to use numeric for the last four how do you get 39 million combinations?
I'm missing something.
Options for program names or numbers are different for old controls vs new.
On newer or in the PC O1 and O0001 are different programs, on older you can't do this.
On PC side I like customer code, part number, and revision which sorts nicely.
Bob

My apologies for the exaggeration:)

Derrr uhhm 10,000 combinations.

R
 
I didn't read everything. I my opinion, there is no reason to save any program. There should only be on program in the machine, everything else is deleted out. The only data that we retain is the CAM file. It is against the rules to edit ANYTHING at the machine. Even as little as forgetting an M08. The program should run as maintained in the CAM system. To do otherwise creates a quagmire of old floppy disks, thumb drives and tribal knowledge.
 
My apologies for the exaggeration:)

Derrr uhhm 10,000 combinations.

R

Quite a few moons ago, I got my new bank card from my new bank with my NEW pin number..

I happened to be at the shop when I opened the envelope.. And HOLY CRAP.. SAME pin
# I had been assigned from my other bank.. SCORE, I don't have to remember anything new.

So I made the offhand remark (being excited and all that I didn't have to call and change the #).

"What are the odds"? And a guy I worked with who was and probably still is really smart.. Said
"Man, that has to be one in a million".. And then I thought for a second and realized that its only
4 digits, its 1:10,000. And I told him, and he smacked himself in the forehead...

Thought I will throw you a strange one.. 75% of all debit card or credit card #'s I've ever had since
I was in high school have all ended in 7037 or 7137.. Even my new electric company account number ends
in 7137. Half dozen plus banks and a dozen or more credit cards... And then the electric bill account #.
Just weird.


On programs... O1000 for everything. O1001, 2, 3 etc.. for subs or other things..

You can name them anything you want on your computer... Why clog up the memory in the machine???

When I post I save under a file name I started using a decade ago. 'Delete Me'. There
is also Delete Me1, Delete Me2, Delete Me3 and 4. I only save under a specific part #
when it is something tricky where I have to do some hand coding.

99% of the time, I go to the cam, and repost.. New tools, new techniques... etc... I also
want to review WTF I was doing the last time I ran this part.. Feeds, speeds obviously, but
I'm not overly consistent on where I run my Zzero depending on what is going on. sometimes its
on top, sometimes its on the bottom.

So lets ask a question. What do you do when you don't have a part#, an assembly# or even a print??
How do you organize THAT? How do you organize THAT when it changes..

This morning I was making a delivery (the first of 3 today to the same customer) and I was commenting that it seems
there have been a lot of design changes this year.. And he says "that design sucked,
has to be made better".. And then as he's sliding some 2x6 tubing onto my truck, he says
"I've made a ton of these machines over the past 35 years, and they work great and everybody
loves them, so I'm going to change the design"..

How do you document that? Not one single part # or blueprint on ANY of it.. Sometimes I spend
more time looking for the Cad file than I do setting up and making the part..
 
My apologies for the exaggeration:)

Derrr uhhm 10,000 combinations.

R

Then if you leave room, say the last digit for revisions you only have a thousand.
Minus the 9000 series and after a while you run out of numbers.
Try to code a customer into it and is goes away even faster.
Imagine a shop with 300 cncs on the floor and high hundreds or more in part numbers currently being built and a huge amount of old service parts.
It's enough to drive you mad and so easy to make the old part.
I think many places have made a part to the old print and not the newest one. This is bigger than just a program numbering problem to track and follow.
Do you destroy every copy of old prints to make sure they can't get to the floor? How do you know if someone has an old copy in a toolbox and says "Been there, done that, I know how to make this"?

The starting standard should have been bigger like 10-16 digits and letters but who knew all this was coming? You could spend an hour just punching a mid size tape correctly.
If you have never been burnt hard by revision control you are blessed. The OP seems to have run into this.
Bob
 
Just so everyone knows, on all Fanuc Oi-F and all 30 series controls, you are given the option of 4 digit program #'s or 8 digit program #'s. Parameter #11304 bit 3 will let you change this. There is also a warning with this that if you change this, all current programs will be deleted from memory, so do a backup.

This will not help on older controls that are not 30 series but for newer controls, this is a viable option.

Paul
 








 
Back
Top