From: EBo <eb...@sa...> - 2013-08-17 00:07:31
|
On Aug 16 2013 3:24 PM, David Bagby wrote: > 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. one of Dante's levels of hell?!?! I love it ;-) I agree that the extrude when up to temperature could be handled by an mcode, but the actual extrusion needs to be coordinated with the axes movement. EBo -- |