On 8/16/2013 11:28 AM, Charles Steinkuehler wrote: > It sounds like this would work pretty well as a start, but unless I'm > missing something it would still allow rapid moves on the extruder > axis when the extruder wasn't at temperature. Ideally all extruder > movement should be gated by the extruder-at-temperature signal. Excuse me while I play heretic... Perhaps it may be worth considering a change of mental model here...?
Postulate: the 3d printer world's use of "E:" as an axis for extrruders is a bad hack that should be consigned to one of Daunte's circles. Maybe one can twist LCNC into using an axis to do what you want an extruder to do.... but I suspect it would be cleaner to think of an extruder as an extruder object - and then think about what an extruder inherently needs to do... Off the top of my head (not owning an extruder) I'd think that it needs to start extruding, extrude material at a specified rate and stop extruding. It may also have some init conditions (like it has to get to temp before you let it start extruding).. Uh, maybe it is just me, but it seems that none of the obvious extruder functions have anything to do with axis movement. I find myself thinking that this conversation is twisted by the assumption that an extruder as an axis - I don't think it is. To me, one of the basic functions of a CNC machine is to control movement and positioning of a "controlled point". We commonly think of that point as being the tip of a tool. We move axes around to get the controlled point where we want it. We move the axes in coordinated motion to get feed rates etc. People buy an extruder, then they realize from looking inside the "extruder black box", that the extrusion action is controlled by a motor... Hey, we think... motors can controlled by this software - all I have to do it hook up the extruder to the CNC software. The CNC software likes to think of motors as moving axes (I'm ignoring joint / axis differences). ... so suddenly the extruder magically becomes an "axis".... and one is left thinking that's needed to hook up the extruder motor... TILT. But an extruder is NOT an axis motor... It's function has nothing to do with positioning of the machine's controlled point. Making that (bad) association (between extruder and axis) leads one to start talking about "extruder rapids". I can't help but think that talk of "rapid" and "feed" moves for an extruder is just a symptom for a bad system model. Does an extruder have a motor? yes. Does and extruder have an axis motor? no. Perhaps by separating the concepts, one will not need to talk or think about how to control "extruder rapid movements". The topic at hand is: How can one use LCNC to control a stepper motor; when the motor is NOT an axis motor? Sounds like a Hal level question to me - an extruder needs a pulse generator that you can control (that gets the motor movement), some IO (to turn the heater on/off and to get temp feedback). I'm thinking there must be ways to do that which don't require the involvement of the layers above hal that plan axis movements etc. (and hence use higher level concepts like an "axis"). If after you have this hooked up, you need to have an interface from the gcode level, think Mcodes and not Gcodes. Dave ------------------------------------------------------------------------------ Get 100% visibility into Java/.NET code with AppDynamics Lite! It's a free troubleshooting tool designed for production. Get down to code-level detail for bottlenecks, with <2% overhead. Download for free and get started troubleshooting in minutes. http://pubads.g.doubleclick.net/gampad/clk?id=48897031&iu=/4140/ostg.clktrk _______________________________________________ Emc-developers mailing list [email protected] https://lists.sourceforge.net/lists/listinfo/emc-developers
