Hello, first, sorry for my poor English. I'm from Brazil. Sorry for this long post! Jon, thanks for posting about my problem here. Also I need thanks all you great developers guys, working so hard in this very good free software. I'd fall in love with EMC2 in December, 2005. I'm reading and learning so much, but I don't have programming skills for work in a complex code like EMC2. I think EMC2 is by far the best pc based cnc controller. But my heart broked when we'd need use cutter compensation! Most cnc controllers we know have a better way (at least in the user viewpoint) for cutter radius compensation. Most have restrictions when you have G2 or G3 blocks with radius smaller that the tool used and, like EMC2, prompt an error. The thing change when g1 intersections occur. In the Nist interpreter way any g1 intersection with a angle <180 will prompt a error. Most cnc controllers consider this a valid code. Also, Art from Mach3, changed the NIST cutter radius compensation last year. See in: http://www.cnczone.com/forums/showthread.php?t=14537
I tested today G41 in Mach3 and really it seems Art did a great job, changing the original NIST tool radius compensation. So, I can think we have better programmers here in EMC2 and this change is NOT impossible. Here are images from my test with Mach3: http://imagebin.org/8506 http://imagebin.org/8507 http://imagebin.org/8508 You can se that Mach3 is working now, like almost any other cnc controller we know. G1 intersections are OK but g2 or g3 smaller than tool radius prompt an error. Also, a interesting feature in new Mach3: "auto entry move when needed", at least I think is what I saw in g41test1. You can download and test it for free. The programs used in these tests: (ref g41test1) (tool 1 dia =1) m6 t1 g17 f100 g0x0y0 G1 X1 Y4.5 (make alignment move) G41 x1 Y3.5 (turn compensation on and make first entry move) G3 X2 Y2.5 R1 (make second entry move) g1 x3 y2.5 g1 x5.2 y3 g1 x5.5 y3.5 g1 x5.5 y4 g1 x7 y4 g1 x7 y3 g1 x9 y2.5 M2 __________________________________________________________ (ref g41test2) (tool 2 dia =2) m6 t2 g17 f100 g0x0y0 G1 X1 Y6.5 (make alignment move) G41 x1 Y4.5 (turn compensation on and make first entry move) g1 x3 y2.5 g1 x5.2 y3 g1 x5.5 y3.5 g1 x5.5 y4 g1 x7 y4 g1 x7 y3 g1 x9 y2.5 M2 _________________________________________________________ (ref g41test2) (tool 2 dia =2) m6 t1 g17 f100 g0x0y0 G1 X1 Y4.5 (make alignment move) G41 x1 Y3.5 (turn compensation on and make first entry move) G3 X2 Y2.5 R1 (make second entry move) g1 x3 y2.5 g1 x5.2 y3 g3 x5.5 y3.5 R0.4(radius smaller than tool) g1 x5.5 y4 g1 x7 y4 g1 x7 y3 g1 x9 y2.5 M2 Here you can see some path exemples in the FAGOR manual about tool radius compensation: http://imagebin.org/8509 And the original doc: http://www.bmed.mcgill.ca/dept_resources/machine_shop/machinery/mill/Fagor/8040M_USER.pdf Here you can see a capture from AXIS error when running my example. http://imagebin.org/8510 This is a very important feature, especially if you can not use a good CAM software. A CAM software can do this tool compensation for you, for each tool you'll need use. But when hand programming, is by far more easy and simple, only describe the geometric shape you need machine and active g41 or g42. For pocketing anything with angles is impossible in EMC2 using g41 or g42 without adding g2 with the correct radius. If you need one first pass and a finishing pass you need two programs. If your tool broked and you need replace for a different diameter, again you will need change the Gcode. If EMC2 can work like most you for example only need describe a square and use any tool you have using the tool radius compensation. I have a problem now. We need make Emc2 control a polishing machine. The tool have a 500mm diameter when start and 250mm when need be replaced. I'll use g38.2 for scan the work table, after use that points for generate a Gcode using G1 blocks and, IF POSSIBLE, use G41 or G42 for adjust the tool wear when necessary.(many, many times) I really need this working ASAP. If the Board can not include this Interpreter change or think this is not a important feature, I can pay for someone change this code for me and I will permit publish this payed change with GPL, so if more guys will need this feature tomorrow this is ready for use. If anyone can help me, please send me a email at dschbr at gmail dot com. Thanks for your patience in reading all this, if you made it this far! P.S. I really do not want use Mach3!!!!!! But...... Daniel ------------------------------------------------------------------------- This SF.net email is sponsored by DB2 Express Download DB2 Express C - the FREE version of DB2 express and take control of your XML. No limits. Just data. Click to get it now. http://sourceforge.net/powerbar/db2/ _______________________________________________ Emc-developers mailing list Emc-developers@lists.sourceforge.net https://lists.sourceforge.net/lists/listinfo/emc-developers