Re: [Emc-users] Foam cutting configuration
On Wed, 2007-08-22 at 09:36 -0500, Jeff Epler wrote: On Wed, Aug 22, 2007 at 02:02:39PM +, ben lipkowitz wrote: The first couple of cuts I was using a chord length of about 100mm, meaning that my g-code statements around the leading edge where about 0.1mm apart or less, which caused the feedrate to slow down for some reason, which caused too much heat to build up in the leading edge. If you use G64 P0.1 the trajectory planner *should* automatically blend out the unnecessary segments and give you full speed over the entire shape. Unfortunately, G64 P- only simplifies nearly-colinear segments when they are purely XYZ movement. If there is any movement on the other axes (ABC or UVW) then the simplification doesn't take place. Ahhh, ok. After reading the description of G64, I am realizing that the reduction in feed rate is probably due to my acceleration limits. I have not really tuned those parameters and they are probably still very conservative. Does that make sense? A question about radius cuts. I would like to be able to command a circular cut simultaneously in XY and UV (to cut a cylinder). G01 x10 y10 u10 v10 G17 G2 x10 y10 u10 v10 i0 y2 I assume that this will cut a circle in the XY plane with a radius of 2 and start/end at x10 y10, but it seems from the description that uv will remain stationary causing me to end up with a cone, is that correct? Or is there a way to tell it to use both xy and uv for the circle? Ryan - This SF.net email is sponsored by: Splunk Inc. Still grepping through log files to find problems? Stop. Now Search log events and configuration files using AJAX and a browser. Download your FREE copy of Splunk now http://get.splunk.com/ ___ Emc-users mailing list Emc-users@lists.sourceforge.net https://lists.sourceforge.net/lists/listinfo/emc-users
Re: [Emc-users] Foam cutting configuration
Ok, so i solved that first problem (i had actually forgotten to set axes to 4. Now I am getting this problem. Seems Axis may not handle 4 axes? Is there another front end I should be using? EMC2 - pre-2.2 CVS HEAD Machine configuration directory is '/home/rhulsker/emcsource/emc2-trunk/scripts/../configs/stepper' Machine configuration file is 'foam.ini' Starting EMC2... iocontrol: machine: 'EMC-HAL-STEP-MM' version '1.15' task: machine: 'EMC-HAL-STEP-MM' version '1.15' emcTrajSetAxes failing: axes=4 axismask=c3 bad return value from emcTrajSetAxes emcTrajSetAxes failing: axes=4 axismask=c3 bad return value from emcTrajSetAxes emcTrajSetAxes failing: axes=4 axismask=c3 bad return value from emcTrajSetAxes emcTrajSetAxes failing: axes=4 axismask=c3 bad return value from emcTrajSetAxes emcTrajSetAxes failing: axes=4 axismask=c3 bad return value from emcTrajSetAxes emcTrajSetAxes failing: axes=4 axismask=c3 bad return value from emcTrajSetAxes emcTrajSetAxes failing: axes=4 axismask=c3 bad return value from emcTrajSetAxes emcTrajSetAxes failing: axes=4 axismask=c3 bad return value from emcTrajSetAxes emcTrajSetAxes failing: axes=4 axismask=c3 bad return value from emcTrajSetAxes emcTrajSetAxes failing: axes=4 axismask=c3 bad return value from emcTrajSetAxes emc/task/emctaskmain.cc 2584: can't initialize motion And then I get the splash screen, but Axis never comes up. Ryan On Mon, 2007-08-20 at 13:00 -0600, Ryan Hulsker wrote: I completed building my 4 axis hotwire foam cutter this weekend and am trying to get EMC2 to work with it. I checked out emc2-head yesterday and managed to get it to compile (run in place) and it seems to run ok with the default stepper_mm configuration. So i decided to use this as a base to configure it for foam cutting, but I am getting some errors. Here is what I did. made a copy of stepper_mm.ini (foam.ini) changed foam.ini core_stepper.hal to core_foam_stepper.hal changed foam.ini standard_pinout.hal to foam_pinout.hal copied core_stepper.hal to core_foam_stepper.hal copied standard_pinout.hal to foam_pinout.hal in core_foam_stepper.hal changed loadrt stepgen step_type=0,0,0 to 0,0,0,0 changed all Z references to U added V axis as axis.3 and stepgen.3 etc in foam_pinout.hal changed all references to Z axis to U added Vstep as pin 9 and Vdir as pin 8 changed spindle out to pin 1 in the Traj section of foam.ini changed axes to 4 changed COORDINATES to X Y U V created [AXIS_3] section as a copy of [AXIS_2] When I run EMC get this error. But I am not sure what to do about it? HAL: ERROR: pin 'axis.3.motor-pos-cmd' not found HAL:31: link failed HAL config file ../configs/stepper/core_foam_stepper.hal failed. I assume i am supposed to be using a different kin/mot module or something but I can't figure it out. Any help would be appreciated. Ryan - This SF.net email is sponsored by: Splunk Inc. Still grepping through log files to find problems? Stop. Now Search log events and configuration files using AJAX and a browser. Download your FREE copy of Splunk now http://get.splunk.com/ ___ Emc-users mailing list Emc-users@lists.sourceforge.net https://lists.sourceforge.net/lists/listinfo/emc-users - This SF.net email is sponsored by: Splunk Inc. Still grepping through log files to find problems? Stop. Now Search log events and configuration files using AJAX and a browser. Download your FREE copy of Splunk now http://get.splunk.com/ ___ Emc-users mailing list Emc-users@lists.sourceforge.net https://lists.sourceforge.net/lists/listinfo/emc-users
[Emc-users] Foam cutting configuration
I completed building my 4 axis hotwire foam cutter this weekend and am trying to get EMC2 to work with it. I checked out emc2-head yesterday and managed to get it to compile (run in place) and it seems to run ok with the default stepper_mm configuration. So i decided to use this as a base to configure it for foam cutting, but I am getting some errors. Here is what I did. made a copy of stepper_mm.ini (foam.ini) changed foam.ini core_stepper.hal to core_foam_stepper.hal changed foam.ini standard_pinout.hal to foam_pinout.hal copied core_stepper.hal to core_foam_stepper.hal copied standard_pinout.hal to foam_pinout.hal in core_foam_stepper.hal changed loadrt stepgen step_type=0,0,0 to 0,0,0,0 changed all Z references to U added V axis as axis.3 and stepgen.3 etc in foam_pinout.hal changed all references to Z axis to U added Vstep as pin 9 and Vdir as pin 8 changed spindle out to pin 1 in the Traj section of foam.ini changed axes to 4 changed COORDINATES to X Y U V created [AXIS_3] section as a copy of [AXIS_2] When I run EMC get this error. But I am not sure what to do about it? HAL: ERROR: pin 'axis.3.motor-pos-cmd' not found HAL:31: link failed HAL config file ../configs/stepper/core_foam_stepper.hal failed. I assume i am supposed to be using a different kin/mot module or something but I can't figure it out. Any help would be appreciated. Ryan - This SF.net email is sponsored by: Splunk Inc. Still grepping through log files to find problems? Stop. Now Search log events and configuration files using AJAX and a browser. Download your FREE copy of Splunk now http://get.splunk.com/ ___ Emc-users mailing list Emc-users@lists.sourceforge.net https://lists.sourceforge.net/lists/listinfo/emc-users
Re: [Emc-users] Foam cutting configuration
Ok, thanks for your help (Chris too), I seem to have it working now. In the ini file I have AXES = 8 COORDINATES = X Y U V HOME = 0 0 0 0 And [AXIS_6] and [AXIS_7] sections instead of the 2 and 3 I had before. And in my core_foam_stepper.hal I changed all refences to axis.[23] to axis.[67] etc. And of course I updated the references to the [AXIS_x] parts of the ini file to match the new settings. and I left all the stepgen.[23] references as they where. Axis now loads up and I can jog XYUV and they all work. (I am not at the machine at the moment but the front end seems to be doing the right thing). A question about feed rates. From the quick testing I have just done it looks like it always tries to apply the feed rate to the XY axes, and scales the feed rate for the UV to match so that they all reach their end point at the same time. Unless your feed rate at XY causes the UV to overrun the max, or any individual axis to overrun its max speed, then the XY is scaled down until UV are running at their max. Does this sound correct? Seems like the right thing to do to me. Just wanted to make sure that it is treating the XY and UV as two separate pairs from which to calculate 2 separate combined feed rates to apply the max. And I am assuming that the feed rate shown in the Axis display is always the feed rate for XY, and not some algorithmic combination of XY + UV or something. With any luck I will be cutting up some foam tonight. I need to hand code some g-code so that I can make a table of kerf width at different feed rates and wire temperatures. I am planning on cutting circles (cylinders) at different speeds, and then comparing the diameters to what the commanded diameters where. I am assuming that cutter compensation to handle a variable width kerf depending on feed rate, and applying it to 2 different sets of axes is not handled by standard g-code? So I am planning on incorporating it into my g-code generator. Ryan On Mon, 2007-08-20 at 15:01 -0500, Jeff Epler wrote: On Mon, Aug 20, 2007 at 02:59:39PM -0500, Jeff Epler wrote: [TRAJ]AXES should probably be set to 8. Here's the explanation from the documentation: One more than the number of the highest joint number in the system. For an XYZ machine, the joints are numbered 0, 1 and 2; in this case AXES should be 3. For an XYUV machine using ``trivial kinematics'', the V joint is numbered 8 and therefore AXES should be 9. For a machine with nontrivial kinematics (e.g., scarakins) this will generally be the number of controlled joints. http://linuxcnc.org/docs/devel/html/config/ini_config/index.html#hue432 Just as I was posting this, another developer noticed that the documentation was incorrect. The corrected text reads: the V joint is numbered 7 and therefore AXES should be 8. I think the rest of what I said in my message is correct. Jeff - This SF.net email is sponsored by: Splunk Inc. Still grepping through log files to find problems? Stop. Now Search log events and configuration files using AJAX and a browser. Download your FREE copy of Splunk now http://get.splunk.com/ ___ Emc-users mailing list Emc-users@lists.sourceforge.net https://lists.sourceforge.net/lists/listinfo/emc-users - This SF.net email is sponsored by: Splunk Inc. Still grepping through log files to find problems? Stop. Now Search log events and configuration files using AJAX and a browser. Download your FREE copy of Splunk now http://get.splunk.com/ ___ Emc-users mailing list Emc-users@lists.sourceforge.net https://lists.sourceforge.net/lists/listinfo/emc-users
Re: [Emc-users] EMC Features (Filament Winding)
On Fri, 2007-08-17 at 14:36 -0400, John Kasunich wrote: It sounds to me like this will require some very tricky g-coding. One possibility to consider is using a rotary axis instead of a spindle. Then you can program any head-vs-mandrel pattern you want, including zero-degree, 90-degree, etc. I think this is probably the best bet. Having direct control of the relationship between all the machine parts, and letting EMC handle running of the motors etc. You mentioned in an earlier email that setting it up as a rotary axis may induce problems because it will always be spinning in the same direction, and thus its position will slowly be increasing the whole time you are winding. Any idea what the limit of the position is? would this eventually cause an integer overrun or something similar that would cause the emc to freak out? Clearly the CAM requirements for fiber winding are a lot different than those for milling or lathe work. Figuring out the toolpath is the hard part - controlling motors to follow that path (what EMC does) is easy by comparison. If g-code doesn't lend itself to describing the paths you need, there are other ways. Can you can write a program that prints the desired mandrel angle, feed head axial position, and feed head radial positions, at some relatively small time interval? (Like 0.01 second or so.) If so, it isn't hard to feed that stream of positions to motors. (See the man page for hal_streamer). I am reasonably handy with programming in C and perl, and as far as i can tell all the winding geometry should just be basic trigonometry. I don't see why I would not be able to write an app that allows you to import the mandrel geometry, specify some winding parameters and have it spit out the g-code. Thanks for your help Ryan - This SF.net email is sponsored by: Splunk Inc. Still grepping through log files to find problems? Stop. Now Search log events and configuration files using AJAX and a browser. Download your FREE copy of Splunk now http://get.splunk.com/ ___ Emc-users mailing list Emc-users@lists.sourceforge.net https://lists.sourceforge.net/lists/listinfo/emc-users
[Emc-users] EMC Features
Some of the recent discussion on wish lists and silent users etc. has prompted me to chime in here. I have been a lurker on this list for a long time, have played with EMC several times, and have dreamt of building a CNC machine (mill, drill, filament winder, or foam cutter, depending on which project I am consumed with at the time) for a long time. With the help of some like minded friends I have finally started building building a CNC Foam cutting machine (hot wire), and am interested in running it with EMC. It is almost done, and I have been using EMC to tune the axises etc. I have seen comments on these machines in the past on this list and the consensus seemed to be that EMC was not able to work with them. I am wondering if this has changed with EMC2/Axis. From browsing the .ini file, it looks like there are provisions for axis a,b,c, (I think, working from memory here) which are described in the comments as running parallel to x,y,z, is that what these are for? The other thing I am interested in building that I have not seen alot of discussion on is a filament winding machine. Again, I have looked at using EMC for this in the past, and came to the conclusion that it was not possible. But with the addition of the lathe/threading code, it seems that a filament winder should certainly be possible. I think the hardest part of this would be generating g-code for proper placement of the filaments/tows, but EMC2 should be capable of laying them down where you want while being indexed to the mandrel rotation once you have the g-code. Does anyone know of a g-code generator that would generate code for a filament winder that is free/open-source? Ryan Hulsker - This SF.net email is sponsored by: Splunk Inc. Still grepping through log files to find problems? Stop. Now Search log events and configuration files using AJAX and a browser. Download your FREE copy of Splunk now http://get.splunk.com/ ___ Emc-users mailing list Emc-users@lists.sourceforge.net https://lists.sourceforge.net/lists/listinfo/emc-users