Re: [Emc-users] Foam cutting configuration

2007-08-22 Thread Ryan Hulsker
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

2007-08-20 Thread Ryan Hulsker
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

2007-08-20 Thread Ryan Hulsker

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

2007-08-20 Thread Ryan Hulsker
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)

2007-08-17 Thread Ryan Hulsker
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

2007-08-15 Thread Ryan Hulsker

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