Sujet : Re: Yet Another New Machine
De : none (at) *nospam* none.com99 (Bob La Londe)
Groupes : rec.crafts.metalworkingDate : 06. Nov 2024, 18:16:56
Autres entêtes
Organisation : A noiseless patient Spider
Message-ID : <vgg8a7$26lt0$1@dont-email.me>
References : 1 2 3 4 5 6 7
User-Agent : Mozilla Thunderbird
On 11/5/2024 6:53 PM, Jim Wilkins wrote:
So is it a compiler? ... No I think its best described as a specialized interpreter.
I simply wondered if CAD systems typically generated readable and editable G code.
Ready for it?
No. Cad generates pretty pictures. CAM generates g-code (or other code possibly).
Yes, generally g-code is a simple text file with no hidden characters other than a line break. I'm not sure that's the correct character. It might be a hard return. Whatever notepad generates when you hit the enter key is it. I forget. Its been a long time since I looked at that stuff. Anyway a simple text file can be edited in windows notepad. In fact its my default to open an .nc file in Windows if I click on it. .nc .tap .txt or virtually any other extension will work as long as your control software will show and open the file. .nc is the default I use. Mach 3 used .tap by default, but I prefer .nc because it says what it is. A numerical control file.
Embedded documentation is a mixed bag. Some CAM programs will document basics automatically if set to do so. Most probably. Most modern controllers will just ignore comments, but some (mostly early g-code adopters on under powered processors) will reject anything that is not an executable line of code and not execute at all or throw an error.
"Well, WELL! WELLL!," you might say. "What about Fusion360?" you might ask. There are lots of CAD/CAM programs, but CAD and CAM are two different things. In Fusion the functions are tied together so a CAD modification will automatically create different code (if it doesn't cause a failure) the next time you generate code. With no other steps it will generate code based on the new CAD model. There are a fair number of seemingly commingled CAD/CAM programs these days. Fusion360, BobCAD/CAM, etc. Even many purely CAD programs of the past now have plugin's or integrations with CAM programs. Even FreeCAd now has available a "workbench" that can be used for CAM, and CamBam has many simple CAD tools built in. Still CAD and CAM are two different things. CAD generates pretty pictures and CAM generates g-code.
G-Code is just text. For a programmer its pretty easy to read and understand, but except for a few global settings (work offsets, base scale, velocity mode, and some parameters) each line is standalone. It executes the current line base on the information you have and the current position and status of the machine.
If you have a list of simple "G01 X(x) Y(y) F(f)" it will execute each one in order doing what you told it to do. If you used four of those bracketed by other overhead commands to cut a rectangle it will cut your rectangle one line at a time by going from the current location (whatever it is) to X(x) Y(y) in a straight line at a speed of F(f). If you decide you need to modify your rectangle you would need to modify TWO (2) lines of code. This is an over simplification, but it illustrates why some people get in trouble hand editing code. Understanding what a line of code does it a matter of looking up that code and how its executed based on the parameters given, and to a limited extent how the control software implements it. The number of commands (G Codes and M Codes) is rather small. There are also parameters for a single code that can be global until changed. For example drilling operations often will pass on all parameters except the coordinates. If you are drilling a list holes all the parameters that apply may only be in the first line of code to drill the first hole. If you decided to change one in the middle of that list by adding parameters every hole after that would have the new parameters. Maybe that's what you want, and maybe you just blew your part.
Yes, its readable. I think any even hack programmer would pick up the basics pretty quickly. Yes its editable. You really need to understand the whole string of events before you do.
I actually started out CNC machining functionally without CAD or CAM. I wrote out g-code by hand and used a spreadsheet to generate iterative code, and exported the text values of my formulas to copy into a text file.
An issue I ran into is that often the CAM software does not output parameters or lines of code that it doesn't know (because of something I did) that it needs to. A tool change macro would be such an example. If I move the machine in order to execute a tool change the CAM software that did its job at most recent minutes ago, and maybe days or years ago, didn't know that was going to happen. When it starts the next operation it thinks its still in the same place. I had to go back into my macro (part of the control software), save the current coordinates in the current work offset, execute the rest of the tool change, and then return to those coordinates. Specifically for tool changes I would move the table back out of the way, or on a router I might move the gantry to the front of the table either automatically in the macro or manually with the jog functions of the machine (if it allowed it). On another machine for tool changes it would just STOP. On that one I modified my post processor insert a machine coordinate Z height move that brought Z to zero leaving room for the tool change.
Even if you ONLY have CAM generate code for the program you still may need to write a machine specific macro or modify the post processor of the CAM program to add necessary code. Even if you never manually edit program code you still may find it beneficial to know how. On the other hand if you are just an operator then other people will do all of that. You just load the stock and push the start button. You may not even have to check your parts. The quality control people will do that. Then somebody will determine if you are running the machine wrong, if its setup wrong, or its designed (CAD/CAM) wrong.
-- Bob La LondeCNC Molds N Stuff-- This email has been checked for viruses by AVG antivirus software.www.avg.com