48 Replies Latest reply on Dec 17, 2019 7:05 AM by vinothparama

    Closed-loop control for low-cost 3D printers

    morgaine

      A challenge given to Ben Heck in March of last year was "Challenge - cheap 3D printer" (design a 3D printer more cheaply), and that thread continues to receive replies to this date.  Unfortunately nobody in that thread actually addressed the matter as a design issue.  Instead, most of the replies (including from Ben) seem to have addressed an entirely different question, how to build the same kind of 3D printer as you can buy today, but for less money.

       

      Those are two completely different questions.  It was pointed out by Ben that because of the race to the bottom by a huge number of manufacturers, the current designs can't be made a lot cheaper while still retaining the same speed and accuracy.  That's probably correct with respect to current standard designs, but it says nothing at all about different designs.

       

      So, this thread suggests a different design approach that may offer a solution, and it's a pretty natural step to take.

       

      A useful observation with which to start is that the accuracy and precision obtainable with today's RepRap-style models stems from the design of their stepper motors and the limitations inherent in screw drives and belts and pulleys and the rigidity of their physical construction.  Because of this, if you retain the existing design model but in the quest for lower cost you compromise on one of these areas, you are very likely to lose the necessary degree of printing accuracy even if you are performing steps at very high resolution, so that's not likely to be a good way forward.  Printing with high precision in the wrong place is not helpful.

       

      That observation about accuracy and precision leads us directly to a solution though.  Engineers know full well how to gain high and definable accuracy without each of the components being manufactured to extreme tolerances, and that's by using closed-loop control with negative feedback, the basis of servo-systems.  In a closed-loop system, the only thing that needs to be highly accurate and with known precision is determination of current position, and the heart of that need be nothing more costly than a very accurately printed graticule which can be produced for pennies.  Given the ability to know where the operating head is located very accurately in each relevant axis (not necessarily Cartesian), the only other requirement for maintaining that limit of accuracy is rigidity of coupling between sensors and operating head, ie. the hot end in a 3D printer.  Very importantly, there is no need for rigidity in the motor assemblies --- as long as they're moving the head in the right direction, that's good enough.

       

      So, I'll recast the original question differently and tie it to this specific way forward:

       

      "How can we design a 3D printer based on closed-loop control to gain high accuracy and overcome low cost construction through use of negative feedback?"

       

      It's mostly a matter of examining alternative physical arrangements to find one with good rigidity while also having low suspended mass and being amenable to construction with today's open-loop 3D printers as a stepping stone.  It's worth pointing out that virtually all 2D inkjet printers already use closed-loop control --- if you take one apart you'll find a positional sensor and fine graticule in there somewhere to provide very high accuracy in one dimension at the lowest cost.

       

      Once we start thinking about closed-loop control for 3D printers, many possible advantages start to appear:

       

      • As already mentioned, it compensates for low-quality parts, so prices could fall much lower.
      • Closed loop operation compensates for latitude at assembly time as well, also leading to lower costs.
      • Very much higher accuracy than we have today is possible, and that cannot be done open loop.
      • Motors of many different kinds can be used, AC, DC, brushed, brushless, linear, and also steppers.
      • If steppers are used in a closed-loop system, you can overdrive them without worrying about "lost steps" because the steps aren't used for position control anyway, yet you still retain the advantage of high holding torque.
      • Much higher speeds are possible than we have today because of the two-fold advantage of wider motor choice and arbitrarily high acceleration while the control loop seeks to its desired position.
      • Accuracy and precision are more independently controllable in closed-loop systems.  This provides more opportunities for cost reduction through tradeoffs, as well as dynamic optimization in favour of speed, for example on in-fill.  In open-loop printers with stepper motors, the step size places a limit on precision of positional control, but this is very rarely reflected in the accuracy of actual positioning which is primarily determined by physical construction.

       

      I'm sure there are many other benefits.

       

      The main disadvantage is that this direction requires new thinking, new solutions.  And there's the challenge!

       

      Morgaine.

        • Re: Closed-loop control for low-cost 3D printers
          morgaine

          The topic above is deliberately open-ended and proposes nothing more than closed-loop control, hopefully to encourage people to think laterally and very widely instead of being shackled by a specific construction.  The range of possibilities is enormously varied, probably infinite.

           

          I will however express my own preferences, which are much narrower and more tightly directed.  Please don't be constrained by the following.

           

          Personally, I think closed-loop 3D printers need to head in the direction of direct drive, avoiding intermediate transmission components as much as possible.  Not only would this eliminate loss of rigidity and the severe problems of slip and play and backlash, but it would also open up the possibility of printing our own motors using pancake designs (effectively linear motors arranged in a circle).

           

          This direction is not in the slightest bit easy, but the elimination of transmission components would make this approach more viable at MEMS scales, which are on the path towards which all engineering is leading:  nanotechnology.  The machinery which builds the machinery which builds the machinery which builds the machinery ... of nanoscale systems is in our grasp right now.  It's going to be an interesting voyage.

           

          Morgaine.

          1 of 1 people found this helpful
            • Re: Closed-loop control for low-cost 3D printers
              madman1555

              so your suggesting that you use servos with encoders? thats dandy and all but its much more complex to set up being that as far as i know (which is verry little i will admit) there arent any programs as side from mach3 that will read encoder data not only that but the reason most people sue steppers today is because they are much cheaper and simpler to use in simple hobbycraft

               

              if you are talking about for the wave of commercial 3d printers? well Great! i definitely see the benefit to useing encoders to determine position it will provide more accurate movement and possibly a better print quality

              1 of 1 people found this helpful
                • Re: Closed-loop control for low-cost 3D printers
                  morgaine

                  I'm talking about making the work head's position be determinable to high levels of accuracy --- the distinction between accuracy and precision is important in this context, because we need to know the true position of the hot end when printing.  Inferring head position from the commands we've sent to the motors is absolutely not adequate --- that's open loop operation.  Whatever means are used to move the work head (it's not limited only to hot ends), the motive force should be part of a closed-loop system to reduce the error signal between where you are and where you want to be, as determined by the work head and not by the motors.

                   

                  There is no difference in setup complexity.  In fact closed-loop systems generally require less calibration since the whole idea is that negative feedback should compensate for the work head being in an unexpected place --- that includes being in the wrong place because of latitude at assembly time.  Good design of positional sensing corrects a huge range of cumulative errors quite automatically.

                   

                  Commercial servomotors containing encoders employ the same approach but are not needed here.

                   

                  My interest lies entirely in individual empowerment, and whether the commercial sector picks it up or not isn't particularly interesting except that it might lower the cost of components.  In the end, the future is in our own hands, regardless of where companies want to go for profit.  It's unlikely and would be surprising if the same solutions were best for both.

                   

                  Morgaine.

                  1 of 1 people found this helpful
                    • Re: Closed-loop control for low-cost 3D printers
                      vsluiter

                      Hi Morgaine,

                      It's what Nanotec is already selling for industrial use: stepper motors driven as 2-phase brushless DC motors. Very nice features as high torque, high accuracy, low noise....

                      1 of 1 people found this helpful
                        • Re: Closed-loop control for low-cost 3D printers
                          morgaine

                          Victor Sluiter wrote:

                           

                          It's what Nanotec is already selling for industrial use: stepper motors driven as 2-phase brushless DC motors. Very nice features as high torque, high accuracy, low noise....

                           

                          The NEMA 23 steppers in my Shapercube still-in-construction are from Nanotec, model ST5918M1008-A.  Do you have the model number of the ones to which you're referring to hand?

                           

                          Morgaine.

                            • Re: Closed-loop control for low-cost 3D printers
                              vsluiter

                              You'd have to be able to put an encoder on the rear shaft of the servo, and then use their drivers. Here's some more background info:

                              http://en.nanotec.com/products/1034-smci33-stepper-motor-drive-with-closed-loop-controller/

                              http://en.nanotec.com/support/application-notes/closed-loop-description/

                              1 of 1 people found this helpful
                                • Re: Closed-loop control for low-cost 3D printers
                                  morgaine

                                  Victor Sluiter wrote:

                                   

                                  You'd have to be able to put an encoder on the rear shaft of the servo

                                   

                                  In other situations, sure, but not for our purposes here.  It's not the shaft position that we're trying to control closed-loop, but the position of the work head.  A servomotor with attached encoder could certainly be used as a shaft driver instead of a dumb motor, but in that case the work head is being driven open loop by the servosystem, not closed loop.  This is what I meant in my answer to Chris.  Just because some component of a system uses feedback internally doesn't make the overall control regime closed loop.

                                   

                                  To provide a work head with closed loop positioning, the work head needs to generate the positional information itself, and that is fed back to the control amplifiers and drivers.  The exact physical arrangement will depend on mechanical construction, but a very common design is to scan a linear graticule lying along each axis of movement of the work head, for example optically.  Success requires the tiniest movement of the work head in any one dimension to be detectable as a proportional change in the corresponding sensor output, regardless of whether the corresponding drive motor has moved at all.  This would produce a feedback error signal even if caused by unintended coupling between axes, non-rigid assemblies, thermal and other environmental creep, and so on.

                                   

                                  Encoders on motor shafts solve almost nothing in 3D printing other than detecting lost steps if steppers are being used, which is the least of our problems.  In the context of the work head, that's still open loop operation.

                                   

                                  Morgaine.

                                  1 of 1 people found this helpful
                                    • Re: Closed-loop control for low-cost 3D printers
                                      vsluiter

                                      Hi Morgaine,

                                      I catch your drift, and you're right in most of what you say. Has anyone ever looked at the (incremental) postion feedback which can be found in inkjet printers?

                                       

                                      Where I have to correct you a bit, is that "it solves almost nothing", because it does reduce the 'jerkiness' of movement, which reduces vibrations. Also the resolution can be improved (<<0.9°). Especially the first one can be a major benefit.

                                      1 of 1 people found this helpful
                                        • Re: Closed-loop control for low-cost 3D printers
                                          michaelkellett

                                          The problem with "motor/some kind of leadscrew/sensor for feedback" linear positioning systems is much more difficult to solve than just having a good position sensor at the end. Indeed with simple leadscrews overall feedback may give no benefit compared with motor position feedback. This is because overall feedback can't deal with backlash, dead zones or mechanical hsytereisis very well. To overcome these problems you need to use ball screws and/or preload but these are expensive. As I referred to earlier we have literally hundreds of years of refinement built into modern machine tools.

                                           

                                          At least some inkjet printers work in a slightly different way which would be applicable to some additive 3D techniques but not all. No attempt is made to precisely control the position of the print head but it is traversed at about the right speed and the sensor is used to measure exactly where it is at any given instant and the ink squirted accordingly. This is a nice technique where it can be applied because it sidesteps the issue of backlash and precise position control.

                                          It wouldn't work with toothpaste style 3D printers because the position of the head must be precisely and accurately controlled at all times and it won't work where the load is variable.

                                           

                                          MK

                                          1 of 1 people found this helpful
                                            • Re: Closed-loop control for low-cost 3D printers
                                              vsluiter

                                              Hi Michael,

                                              Good point, thanks!

                                              The feedback at the motor axle could help here because the speed (or better: accleration) of the motor could be controlled much more, thus making the movement smoother, and if you know what the next G-code is, you could take care to slow down the head in time to prevent overshoots. Don't know in how far that's implemented in current 3D-printers. Dead zones might also be somewhat compensated if known... I agree that that's a very hideous EE-domain fix for a Mechanical domain problem....

                                              1 of 1 people found this helpful
                                              • Re: Closed-loop control for low-cost 3D printers
                                                morgaine

                                                Michael Kellett wrote:

                                                 

                                                overall feedback can't deal with backlash, dead zones or mechanical hsytereisis very well.

                                                 

                                                It certainly can deal with backlash, so I'd be interested to read anything suggesting that it can't do it very well.

                                                 

                                                The reality is actually the opposite:  overall feedback returns an error function that contains (as a component) the actual backlash experienced by the work head, instead of a simplified error function that encompasses only a limited set of transmission components and/or which deals with each axis separately.  The needed information is certainly there.  It's a lot harder to interpret this actual feedback of course compared to simplistic single-axis feedback obtained nearer the motors, but it's the real thing, not an approximation.

                                                 

                                                In contrast, motor or feedscrew-level feedback isn't really closing the loop at all from the PoV of the work head, and so it can't compensate for unplanned interactions between axes and other structural problems, as it simply gets no data on them.  The consequence of this is that very high quality construction is still mandatory to avoid the unmonitored anomalies from appearing in the first place in such a half-open-loop system, which of course precludes its use for the subject of the topic, namely "low-cost 3D printers".

                                                 

                                                Morgaine.

                                                1 of 1 people found this helpful
                                                  • Re: Closed-loop control for low-cost 3D printers
                                                    michaelkellett

                                                    First let's get our definitions in order, from Wiki:

                                                     

                                                    in mechanical engineering, backlash, sometimes called lash or play, is clearance or lost motion in a mechanism caused by gaps between the parts. One source defines it as the maximum distance through which one part of something can be moved without moving a connected part. An example, in the context of gears and gear trains, is the amount of clearance between mated gear teeth. It can be seen when the direction of movement is reversed and the slack or lost motion is taken up before the reversal of motion is complete.

                                                     

                                                    Note that bit about "can be moved without moving a connected part" - if the actuator is pushing the load along and needs to reverse the force (for whatever reason) the actuator must move back by the backlash distance. In any real system this takes time and no amount of feedback and no amount of cleverness of control algorithm can do anything about it (the time is set me purely physical constraints). You can try to minimse the effect of backlash by having a very fast slewing actuator but this often results in instability and increases costs. The problem is that in the backlash or dead zone the actuator is not connected to the load so in the time it takes to reconnect the load is uncontrolled.

                                                     

                                                    Clever strategies to try to and reduce the impact are possible (and routinely and instinctively used by manual machine tool operators.). Under some conditions it is possible to ensure that the direction of applied force never changes in a critical place but these restrictions are often inconvenient.

                                                     

                                                    A low cost mechanism may easily be so poor in it's mechnical performance that there is no gain in improving the control. Stepper motors are very poor at fast dynamic control so I can easily believe that there are many cases where control of the stepper motor shaft is no worse than attempting to control the load position, but at least has the advantage of cheapness and robustness (robust in control stability sense).

                                                     

                                                    MK

                                                    1 of 1 people found this helpful
                                                      • Re: Closed-loop control for low-cost 3D printers
                                                        morgaine

                                                        Michael Kellett wrote:

                                                         

                                                        Note that bit about "can be moved without moving a connected part" - if the actuator is pushing the load along and needs to reverse the force (for whatever reason) the actuator must move back by the backlash distance. In any real system this takes time and no amount of feedback and no amount of cleverness of control algorithm can do anything about it (the time is set me purely physical constraints). You can try to minimse the effect of backlash by having a very fast slewing actuator but this often results in instability and increases costs. The problem is that in the backlash or dead zone the actuator is not connected to the load so in the time it takes to reconnect the load is uncontrolled.

                                                         

                                                        That's a very actuator-focused view (instead of being concerned mainly with the work head), and it's also a time-focused view whereas our main concern is that the work head be in the desired position (time is not the key requirement).  It's entirely normal to trade off time (speed of operation) to lower the cost of end products --- this is why low-end 2D printers are slower than higher end ones.

                                                         

                                                        In order to get the work head to a desired position in axis X, the only requirement on the drive train is that this position is reachable in a monotonic traversal using actuator X.  It is not a requirement that the position be reachable by tiny bidirectional increments of the actuator which would litter the workspace with dead zones --- backlash in a given axis is taken up at the start of a movement in one direction in that axis.  The control loop doesn't even need to know that backlash exists in the drive train, because all it's concerned with is reaching its seek position --- backlash just looks like some extra sluggishness in reaching the desired point.  If the backlash is severe enough that it's noticeable at the work head as bumpiness in the extruded plastic at points where there is change of direction, then the control software just needs to reduce the feed rate at the start of changes of direction.  This is no big deal, and it shouldn't be presented as a terminal stumbling block.

                                                         

                                                        I think we may be looking at two very different goals, one (the topic of this thread) which is creating 3D printers at very low cost by closing the loop at the work head to compensate for less than ideal components, and two, making industrial machinery with good open-loop performance, which is extremely interesting in its own right and contributes hugely to the thought process, but is not the end purpose in this thread.

                                                         

                                                        Morgaine.

                                                        1 of 1 people found this helpful
                                                          • Re: Closed-loop control for low-cost 3D printers
                                                            vsluiter

                                                            It's the difference between kinetics and kinematics.

                                                            If the dead zones are known, then you can easily add that in your control scheme. Not perfectly, but still. Otherwise, adding an accelerometer to the end of your tool head might tell you a lot about the accelerations in the head, and can at least tell you when it starts moving. That, combined in a filter with a stepper motor and a control algorithm might already give a great performance boost.

                                                            1 of 1 people found this helpful
                                                              • Re: Closed-loop control for low-cost 3D printers
                                                                morgaine

                                                                Victor Sluiter wrote:

                                                                 

                                                                Otherwise, adding an accelerometer to the end of your tool head might tell you a lot about the accelerations in the head, and can at least tell you when it starts moving.

                                                                 

                                                                Yes!  That's an excellent additional piece of information that the printer firmware can use to do a better job, and at very little cost.  It's probably true to say that just about every kind of data acquired at the work head can be of benefit as feedback.

                                                                 

                                                                Morgaine.

                                                                 

                                                                PS.  As an example, low cost physical construction can result in very nasty undamped vibration modes, which can be annoying, harmful to effective resolution, and reduce lifetime.  Accelerometers with adequate bandwidth can help you detect and avoid equipment resonances.

                                                                1 of 1 people found this helpful
                                                              • Re: Closed-loop control for low-cost 3D printers
                                                                michaelkellett

                                                                By ignoring the accumulated experience of machine tool design you are doomed to repeat all the mistakes of the past. 3D toothpaste style printers have to control speed and precise position of the print head in order to manage the 'thread' of semi molten plastic that they are depositing. They absolutely must cope with direction changes while maintaining positional accuracy and they must control speed because it isn't possible to change the extrusion temperature rapidly.. They don't have to move fast but extrusion type 3D printers are already very slow.

                                                                Adding an accelerometer won't help unless you have an actuator which can operate in the backlash zone. If you consider biological systems they use multiple sensors and multiple actuators, very complex control systems (brains) and require a vast (multi million cycles) amounts of training. So far we have had very little success in copying such systems but done quite well in finding alternative methods. For example replacing panel beating with press tools.

                                                                 

                                                                Back to the 3D printer - you can't always add a better control system at an existing mechanism and get the performance you want - it is almost always necessary to design the mechanics, sensors and controls as a complete system with due reference to the spec.

                                                                 

                                                                With that in mind, what is your performance target for your improved 3D printer ?

                                                                1 of 1 people found this helpful
                                                                  • Re: Closed-loop control for low-cost 3D printers
                                                                    morgaine

                                                                    Michael Kellett wrote:

                                                                     

                                                                    With that in mind, what is your performance target for your improved 3D printer ?

                                                                    Nanometer resolution at terahertz deposition rates, what else?   The only limits are those we impose on ourselves, or try to impose on others.

                                                                     

                                                                    Admittedly we're not in that operating area yet, but of one thing I am certain:  saying that we can't do it because 300 years of experience tells us that we can't is totally doomed to failure.  Future 3D printers won't look anything like current ones nor like CNC tools of the past, so quoting past experience is not particularly useful.  In contrast, control theory is extremely robust and applies at all scales, so closed-loop systems is a very good place at which to start.

                                                                     

                                                                    Michael Kellett writes:

                                                                     

                                                                    Back to the 3D printer - you can't always add a better control system at an existing mechanism and get the performance you want - it is almost always necessary to design the mechanics, sensors and controls as a complete system with due reference to the spec.

                                                                     

                                                                    That goes without saying, which is why the starting point here is closed loop control, and everything else is up for grabs.  I expect that there will be some desire to retain some of the components of past designs, but my inclination towards direct drive certainly doesn't fall into that category.  I'm fascinated to see what emerges, but it's going to need some lateral thinking.

                                                                     

                                                                    Morgaine.

                                                                    1 of 1 people found this helpful
                                                                      • Re: Closed-loop control for low-cost 3D printers
                                                                        michaelkellett

                                                                        Your wilfull misunderstanding of my earlier comments does you no credit.

                                                                         

                                                                        As you are well aware, I have not, at any time, suggested that improvements are not possible.

                                                                         

                                                                        "The only limits are those we impose on ourselves, or try to impose on others" - this isn't engineering but nonsense - and as an excuse for ignoring the work of countless other engineers it's arrogant as well.

                                                                         

                                                                        MK

                                                                          • Re: Closed-loop control for low-cost 3D printers
                                                                            morgaine

                                                                            Michael Kellett wrote:

                                                                             

                                                                            "The only limits are those we impose on ourselves, or try to impose on others" - this isn't engineering but nonsense - and as an excuse for ignoring the work of countless other engineers it's arrogant as well.

                                                                             

                                                                            That's false as a fact and ridiculous as an accusation.  And your personalizing of the discussion is uncalled for as well.

                                                                             

                                                                            It's by ignoring past assumed limits that we've put people on the moon instead of still lying huddled and shivering in caves.  The "valued experience" of experts assured us that the earth was flat, and later that it was the centre of the universe --- see how far that got us.  Minds as bright as Einstein's weren't sufficient to bring us quantum mechanics, so other people had to add that to our state of knowledge.  And in the fields of engineering, materials and methods and understanding improve continually.  Everything changes, and limits derived from partial understanding fall away as our understanding improves.  They are entirely self-imposed limits, and to consider them absolute is to not understand how science works.

                                                                             

                                                                            Arrogance was a pretty negative and irrelevant thing for you to bring up here, but if you're looking for arrogance, consider your own belief that nothing will supersede the experience of the last 300 years or your own knowledge of lessons from CNC --- that's arrogance to the point of comedy.  It's also arrogance to view engineers as high priests preaching unquestionable gospel and wisdom.  There is no such thing --- everything that we know evolves in relevance, and we have so many ad hoc rules of thumb in engineering that treating them as conditional is always advised.

                                                                             

                                                                            A better approach if one is interested in the future is to embrace the key principle held by scientists and a core M.O. of engineers who don't have have a closed mind --- the scientific method, which in an engineering context equates to "nothing is sacrosanct".  Best engineering practices and the most cherished theories are only as good as the next development that improves upon them.  This is as true in machine tool operation as it is in everything else.  It is expected and unavoidable in domestic 3D printing because we're barely on the first rung of that ladder.

                                                                             

                                                                            To answer your last point specifically, it's important to take into account existing experience and best practices where relevant, but only where relevant.  Indeed, the whole point of past experience is to identify the conditions that make known difficulties relevant, so that we can bypass them.  If a known limitation is likely to bite us if we head down a certain road, then the answer is not to head down that road.  And that's exactly what this thread is about, since as Ben Heck said (and I agree), there is not much mileage available in the current open-loop designs for making 3D printers significantly cheaper.

                                                                             

                                                                            I'm not sure why you're trying to naysay future development starting from closed loop design.  You've certainly not presented any argument for why it's not a good way forward, and you haven't bothered to answer previous posts that addressed yours either, so it looks like you're simply begging for a fight as always.

                                                                             

                                                                            Future development is done in the context of past experience.  Past experience should never be employed as a shackle.

                                                                             

                                                                            Morgaine.

                                                    • Re: Closed-loop control for low-cost 3D printers
                                                      michaelkellett

                                                      It's a lot to hope for that the open source/hardware community could easily solve problems which have been at the core of machine tool design for the last 300 years (or more). However there are some modern developments that might help a bit.

                                                      The traditional machine tool approach relies on stiffness of the mechanical structure and this makes the design of the feed back control system much simpler - so my conventional HAAS CNC milling machine uses a cast iron framework, ball screws and positional feedback. I can (slowly) manage the same precision as the mill when doing a task under the microscope using soft biological structures, visual feed back and a lot more processing. The RepRap and all the similar machines use cheap versions of the traditional machine tool structure but without the feedback (as you mentioned in your first post).

                                                      There are two ways you could make cheap and much more precise 3D manipulators - one is to try to reduce the cost of the traditional stiff structure and the other is to attempt a 'soft' machine with much better control systems. People have been trying the first approach for ages and I don't think you will see the cost of a machine with a 30cm cube working area drop much below a £10k - so we had better look elsewhere.

                                                      The RepRap approach is dogged by issues with backlash, friction, steppiness of the stepper motors, frame rigidity etc etc - I'm not convinced that it's the best place to start.

                                                      Reasearch into soft manipulators doesn't seem to have resulted in any commercial products (can anyone tell me of one - I'd like to be wrong) so I'll offer my own cheapo idea:

                                                      How about a suspended hexapod -  I think you can design it so all 6 legs are always in tension so they can be strings wound up and let out by brushless motors - now if someone can suggest how to measure the position accurately enough you're almost there - apart from the control system.

                                                      You might prefer hydraulic actuators (much faster, bipolar forces etc but also much more expensive). There are biological prototypes for both schemes.

                                                       

                                                      MK

                                                        • Re: Closed-loop control for low-cost 3D printers
                                                          shabaz

                                                          What a great thread. Unrelated, I was recently trying to figure out how to measure across a small distance (about 10mm) and I was thinking of using a cheap micrometer end and some sort of camera measurement since they usually have their markings etched quite clearly.

                                                          For a larger platform for a 3D printer, if the string or wire is always wound on a cylinder (like an elevator), a normal rotary encoder could be used maybe? This assumes the wire rolls flat of course and not in a bunch - no idea if that would happen :-(

                                                          Or, replace the wire with flat metal tape of a controlled thickness - then it can roll on top of itself, and the software can compensate for the thickness as more tape is rolled up.

                                                           

                                                          EDIT: I think it would be worth an experiment in one dimension, if some tape could be found!

                                                          1 of 1 people found this helpful
                                                            • Re: Closed-loop control for low-cost 3D printers
                                                              morgaine

                                                              shabaz wrote:

                                                               

                                                              I was thinking of using a cheap micrometer end and some sort of camera measurement since they usually have their markings etched quite clearly.

                                                               

                                                              As camera resolution gets better and better fueled by consumerism, the same sensors give us new capabilities at low cost for machine control as well.  The 1920 horizontal pixels of 1080p is almost 11 bits of resolution horizontally, and with some creativity one could use the 2200 or so diagonal pixels to get a little bit more, but on the whole it's still low resolution if one is thinking of 2D camera sensors as a cheap means of providing position feedback for 2 axes of a 3D printer by observing it from the top.

                                                               

                                                              By Nyquist, a 1920x1080 array of sensors at most allows you to sample 960x540 data points (adjacent pixels 1 and 0 to detect a single period), which at the commonly sought lowest FFF feature resolution of 0.1mm provides only a 96x54mm manufacturing space, and that's assuming that everything else is perfect.  Needless to say, perfection is rarely achieved.  On the whole this approach of using a camera isn't quite there yet, as it doesn't match the product of workspace size times lowest feature resolution of the open loop approach, for now.

                                                               

                                                              It's a pity that those 2 millions pixel sensors aren't available in a nice long line for us.

                                                               

                                                              Linear camera sensors are available as well of course, but they don't get the volume pricing benefits of 2D arrays.  It's worth keeping an eye on them though, since no-contact position sensing of the work head is a very desirable approach.

                                                               

                                                              Morgaine.

                                                               

                                                              PS.  A 2x2 array of 1080p cameras would put us more or less on a sensing par with the Size*Res of current-day open-loop FFF printers.  The Pi's camera board is just about cheap enough for it, although using 4 x Pi just for sensing would be pretty silly.

                                                              1 of 1 people found this helpful
                                                                • Re: Closed-loop control for low-cost 3D printers
                                                                  shabaz

                                                                  Morgaine Dinova wrote:

                                                                  As camera resolution gets better and better fueled by consumerism, the same sensors give us new capabilities at low cost for machine control as well.  The 1920 horizontal pixels of 1080p is almost 11 bits of resolution horizontally, and with some creativity one could use the 2200 or so diagonal pixels to get a little bit more, but on the whole it's still low resolution if one is thinking of 2D camera sensors as a cheap means of providing position feedback for 2 axes of a 3D printer by observing it from the top.

                                                                   

                                                                  (Battling with failed DSL connection today! and VF decided to change the 3G APN settings on their most recent SIMs, which left me confused for hours..).

                                                                  I'm no expert on mechanics (although I have used manual milling machines and lathes) nor 3D printers : (

                                                                  I was thinking of moire patterns (with clear sheets with lines on them), that I remember would produce large changes in bands of light and dark areas for a small angular movement for example. But I couldn't figure out if this would work for a large area.

                                                                  Then I thought it doesn't need that, if there was (say) a rule with (say) markings every 0.1mm, and numbers printed every cm just like a normal rule (or some barcode type pattern instead of a number), and if it was parallel to a linear rail and close to the travelling block, then a camera on the block with 1000x1000 resolution that was focussed on a (say) 2x2cm area could easily precisely measure where it was, and use OCR to know the exact position because at least one number would always be fully visible. This method would need cameras for each axis however, and good focus on a small area. So, maybe too complicated. Maybe a method where only one point is well referenced somehow, and the head always goes to that point and then moves only in one direction from there (and always travels back to the reference point and then moves only in one direction again) may be an alternative way.

                                                                  Hard to know without someone with the tools/skills to try it and measure it : (

                                                                  1 of 1 people found this helpful
                                                                    • Re: Closed-loop control for low-cost 3D printers
                                                                      morgaine

                                                                      shabaz wrote:

                                                                       

                                                                      if there was (say) a rule with (say) markings every 0.1mm, and numbers printed every cm just like a normal rule (or some barcode type pattern instead of a number), and if it was parallel to a linear rail and close to the travelling block, then a camera on the block with 1000x1000 resolution that was focussed on a (say) 2x2cm area could easily precisely measure where it was, and use OCR to know the exact position because at least one number would always be fully visible.

                                                                       

                                                                      Yep, that sounds entirely viable, and I think it can be done in two different ways.  One way (1a) is to make the absolute position markers for OCR occupy a defined box size and have a known positional relationship to the grid pattern between them and OCR being performed continually during movement, and another way (1b) is to scan for an area within the field of view containing self-syncing blocks of reference pattern (no OCR) and use those for the relative speed and direction reference --- OCR areas can then be ignored during traversal but used for calibration and periodic confirmation, which is less intensive.  I like both ideas.  (There is a downside though, namely low precision since the camera senses a relatively wide field of view.)

                                                                       

                                                                      Another approach (2a) that I was considering uses spaces in a regular reference grid of dots to carry metadata about absolute position of the reference grid.  This would allow for very high magnification (tiny FoV) so that only a very small area of the pattern needs to be examined at any time during traversal (3x3 dots should be enough), which would result in very high sensitivity and precision and very low processing overhead at the same time.  If any one of the 9 dots is missing it is simply ignored for speed/direction feedback, yet a pattern of such "holes" can be used to carry metadata which builds up during traversal, so no OCR is needed.  I like this idea not only because of its high precision and sensitivity but because the speed and direction processing will be so fast that the feedback will have very low latency and hence will cope with faster movement of the head.

                                                                       

                                                                      And since the cheap cameras that one would be using would inevitably have colour sensors, there's another very obvious variation to this theme:  use the 3x3 dot array for fast speed and direction processing, but use the colours of the dots to encode absolute position labelling (2b).  This would even increase the already high speed advantages of 2a, since there would be no exception cases of missing dots for it to consider.  But colour can be used for a lot more than that --- imagine encoding two orthogonal graticules using different colours (2c), or using multiple colours to encode reference grids with different resolutions simultaneously (2d).  There's an awful lot of new flexibility obtained once colour is added to the solution space.

                                                                       

                                                                      I've labelled these approaches in case we want to reference them, but I'm sure there are countless others.  This is a really fun area where the mind can be given free reign to seek alternatives.

                                                                       

                                                                      Morgaine.

                                                                        • Re: Closed-loop control for low-cost 3D printers
                                                                          shabaz

                                                                          Here is one method someone devised.

                                                                          It would be nice to have some open source engine that could be used to detect position from an image, and some software to generate the co-ords of where to print dots on a surface.

                                                                          pat1.png

                                                                          pat2.png

                                                                           

                                                                          pat3.png

                                                                          1 of 1 people found this helpful
                                                                            • Re: Closed-loop control for low-cost 3D printers
                                                                              morgaine

                                                                              shabaz wrote:

                                                                               

                                                                              Here is one method someone devised

                                                                               

                                                                              ... which the open source community has to explicitly avoid as it's patented, at least until such a time as Google makes it royalty-free.  Fortunately there are a billion and one other encodings available.

                                                                               

                                                                              It would be nice to have some open source engine that could be used to detect position from an image, and some software to generate the co-ords of where to print dots on a surface.

                                                                               

                                                                              Yes indeed.  I wouldn't be at all surprised to find that it already exists in one of the many image processing communities, especially in machine vision since pattern recognition is one of its core elements.  I doubt that 3D printing will have to invent much that is new in this particular area, only apply it in creative ways.

                                                                               

                                                                              Morgaine.

                                                                              1 of 1 people found this helpful
                                                                            • Re: Closed-loop control for low-cost 3D printers
                                                                              balanc3

                                                                              Hey guys,

                                                                               

                                                                              Not only am I new to this community, but I'm pretty new to hardware development. However, this thread just grabbed me so I couldn't resist chiming in. Alas, with my limited knowledge, I will still try to contribute in some way. I have a few ideas:

                                                                               

                                                                              1. if you are contemplating using a camera anyway, why not use a laser too. You can project it to 3 surfaces and judge distance based on the size.

                                                                               

                                                                              2. I haven't heard anyone mention triangulation. Not that I know entirely what the cost that would be involved, but the algorithms are everywhere and it should be easy to implement. It could be sound or light. I like the idea of an IR pulsing LED on the head, cameras pick it up (cheap ones at that) and triangulate based on latency of the received pulse. Could probably be done many times a second, but might not be sensitive enough.

                                                                               

                                                                               

                                                                              Anyhoo, I'm just learning and would love to hear your comments.

                                                                      • Re: Closed-loop control for low-cost 3D printers
                                                                        morgaine

                                                                        Michael Kellett wrote:

                                                                         

                                                                        It's a lot to hope for that the open source/hardware community could easily solve problems which have been at the core of machine tool design for the last 300 years (or more).

                                                                         

                                                                        I'm not sure why you say it's a lot to hope for --- it's the same brains in action in both cases, and companies have a much higher hill to climb.  They have to create a design that not only works properly, but that also employs such cheap components and manufacturing techniques that the profits from sales can pay the huge expenses of company premises and equipment, the salaries of the 90% of their staff that do nothing technical, many times that to pay for the yachts and mansions of directors, not to mention corporation tax, and I've only just begun with the list.  It's a miracle that they manage to get anything to market at all, because the odds are heavily stacked against it.

                                                                         

                                                                        Individuals and communities in contrast primarily just need to think.  Think of alternative designs that accomplish their desires without needing to be viable commercial products, think how to overcome the hurdles of not having deep resources, think how to share ideas with the whole world so that different groups can reinforce each other (FOSS and OSHW are excellent examples of that) instead of acting as enemies, and think how best to harness those resources which are not in short supply, like their own manpower.

                                                                         

                                                                        Fortunately thinking is cheap, and everyone can do it.  It's curious though how many fall for the propaganda that they are valueless unless they offer their labour to corporations, at which point they are magically empowered to do great things.  Actually, no, all people can do great things, and they don't need to be serfs in a machine designed to funnel benefits to the top of the pyramid to do it.  The success of FOSS highlights this very well, so much so that the very concept of closed source software is starting to sound retro and misguided even to VCs.

                                                                         

                                                                        I certainly agree with the rest of your post.  There is nothing that we can't achieve if we don our thinking caps.

                                                                         

                                                                        Morgaine.

                                                                • Re: Closed-loop control for low-cost 3D printers
                                                                  vsluiter

                                                                  Look at this animation to get all the benefits of closed loop stepper control.

                                                                  http://en.nanotec.com/support/tutorials/closed-loop-animation/

                                                                   

                                                                  At my job we're looking at doing this for smaller servo's, for biomechanic applications.

                                                                  1 of 1 people found this helpful
                                                                  • Re: Closed-loop control for low-cost 3D printers
                                                                    morgaine

                                                                    Just to whet our appetites for head position sensing a little, here's the Performance page for Renishaw's RESOLUTE™ range of absolute optical encoders,  claiming "1 nm resolution, 100 m/s maximum speed, accuracy to ±1 µm" for the linear versions.

                                                                     

                                                                    It's fair to say that 1 µm accuracy is excessive for our current needs and industrial pricing is probably excessive for our pockets, but the much simpler encoder strips and sensors in inkjet printers are available as spares at very reasonable prices (or indeed for nothing as salvage from dead machines) and are likely to do the job perfectly well.  Experimenting with these in a 3D printer setting would be interesting.

                                                                     

                                                                    Morgaine.

                                                                    1 of 1 people found this helpful
                                                                      • Re: Closed-loop control for low-cost 3D printers
                                                                        vsluiter

                                                                        ... Just keep in mind where you're measuring...  As you pointed out to me before, measuring at the motor shaft is not 'closed loop' enough for you. Would measuring the movement at the spindle be? Or would you need the movement of the printer head? That's going to pose a nice mechanical challenge aswell (mounting the sensors). The stiffness of the construction would have to be enormous to get a good measurement and control. Not to mention the speed of the control loop.

                                                                         

                                                                        Not to say that it's not possible, but this looks a bit as an 'academic' way of building measurement on measurement while loosing track of what you tried to accomplish. I'd put my money on a feed-forward model-based controller for short-term improved resolution printer. 

                                                                        1 of 1 people found this helpful
                                                                          • Re: Closed-loop control for low-cost 3D printers
                                                                            morgaine

                                                                            An error signal measured at each spindle does not contain error components from anything except that single axis of the transport, so such feedback cannot correct for anything else.  Even worse, if the encoder is on the actual motor shaft (rather than further along the transmission) then it contains no error signal at all relative to the motor assembly since the shaft is an almost rigid part of it compared to the rest of the transport which has many flexure modes.  That wouldn't be useful feedback in our context.

                                                                             

                                                                            I'm reminded of the Schneier term "security theater" as a verbal analogy.  If a system that is described as "closed loop" isn't taking feedback from its output then it's just engaging in "feedback theater", aiming for bullet points without actually correcting for the major output errors in the system.  Needless to say, feedback theater is not the goal for us.

                                                                             

                                                                            It's certainly an interesting mechanical challenge, but some candidate solutions are pretty obvious and simple.

                                                                             

                                                                            For example, camera-based solutions provide no mechanical drag at all and have a very simple structure.  The back-of-envelope numbers I gave in post #18 of this thread suggest that it's numerically viable for very small workspaces, and can be extended to cater for larger ones (but not yet ideal).

                                                                             

                                                                            Another approach which is quite appealing has a tiny camera mounted on the work head and pointing straight up through a macro lens focused on a 2D printed pattern which covers the entire top inner surface of the printer.  Again this imposes no mechanical stresses nor alignment difficulties, so it seems very experimenter-friendly.  Finding a good 2D tracking pattern would be an interesting project, and it might well be possible for absolute coordinates to be encoded within it.

                                                                             

                                                                            Mechanical position sensing is more problematic as you mentioned, but everything is hard until the moment that it's easy.   I'd probably examine optical solutions in the first instance though, at least until a good mechanical design emerges.

                                                                             

                                                                            Morgaine.

                                                                            1 of 1 people found this helpful
                                                                              • Re: Closed-loop control for low-cost 3D printers
                                                                                vsluiter



                                                                                Mechanical position sensing is more problematic as you mentioned, but everything is hard until the moment that it's easy.

                                                                                Have you ever considered a career in marketing ? I know another good one: 'where do you want to go today?'

                                                                                I'd probably examine optical solutions in the first instance though, at least until a good mechanical design emerges.

                                                                                 

                                                                                Looking forward to your prototype / proof of concept!

                                                                          • Re: Closed-loop control for low-cost 3D printers
                                                                            shahjee

                                                                            All the 3 D files are stl, obj etc files. We need to slice these files. IF we can convert these sliced files to JPEG or jpg files, we can print a 3 D image.
                                                                            ?

                                                                             

                                                                            Am I right

                                                                            • Re: Closed-loop control for low-cost 3D printers
                                                                              munchit1

                                                                              hi all, new into here, but here goes my peneth worth.

                                                                               

                                                                              reading through i see we've fell for the old complex it out of exsistance (already).

                                                                               

                                                                              regaurding the closed loop feedback, if the reader isnt at //pos 234// it continues untill it is or meets another definasion that sais //ahhh its broke// as a safety mode etc etc.. it doesnt matter what shape the 'housing is', the condision is not met unles the posision arrives at the grid co ordinates od //blah blah 57 x 23 y// etc etc. (there is a bed levaling program for steppers that measures and corrects for devience in the horazontal bed axis...thats one axis sorted only another two to acount for and interact with for an xyz self corecting 'program' / 'software issue')

                                                                               

                                                                              tool heads in cnc type applicasions are obviously subject to 'stuff bending under load' pushing a thin drill bit into too hard a surface it warps n brakes, thats a given, but its no way the reason to ditch closed loop feed back is it? the feed back works on a 30 quid printer perfectly well and with enough presision to inpliment engineering type presision..plenty enough for a plastic extrusion nozzle!  now lets look at the housing/running gear..plastic runners on plastic rails with plenty of slip/lag/ wobble, infact for want of words..chronic alignment.

                                                                                so the summery here is cl;osed loop negative feed back is not only already here, but has been in action since what? the 60's? on a comertial leval. the only complexity is feeding the inquisative mind with enough red herings as to to allow the other minds to over complicate and ultimately self distruct with a whole load of woffle and self jinx...

                                                                              it works and is simple enough to put a £30 price tag on it. i.e. thats a very very posable hi profit margin on 100 quid do it all 3D printers that actualy diliver both accuracy and precision is it not? the big money maker being in the actual pastick fillament that the now millions of customers are ripping through avidly, makeing weird shaped nonense to gather dust and fill bin capacities.(hints on enviromental issues here..sorry but it is very relavent, e.g. we all die eventualy, the qustion is do we distroy it and make sure we take every one else with us..i.e. yu kids have to live here after you've gone..)

                                                                              to further the enviroment or ethics on this subject, we need to define is this a handfull of hobby peeps, or is it the mass's buy 3 each and one for the dog..that bit matters, but already its starting to totaly digress from the original subject.

                                                                               

                                                                              so back to it.. we know the feedback works very well..we know its very cheap...we know the running gear can be..chronicly assembled up to a point.. (and yes if you push against hard the tool will bend, fffff yawn is it a variable with an integer in a program sketch? lol..bends by 0.001inch at sucha spead etc etc).

                                                                               

                                                                               

                                                                              but, heres an eye opener, camera resoluions have been mentioned (we're aways away yet on that i think..you've seen the state of the consumer dvr for cctv and the 'detect modes'..yeh theyre here but theyre hardly ermmm usefull in any way lol) but how bout think a little further out of the box, the feedback being ticker tape dependandant, why not go the hole hog and imploment the print itself being measured.(again its a soft ware problem,we have th distance sencors already, holgraghics is very old hat and been done untill the media gets bored, yet again,) but go a step back wards and we have a pc screen, it has an array of pixal..x and y type, we have a mouse that moves th curser (your nozzle in its place), the pc program that handles your grafix is inadvertantly giving away the cursers posision as it goes, and once again its only a rediversion of already 'ancient' program lines.

                                                                               

                                                                              the bottom line is every one has a peace, alas everyone is more intrested in fighting over the peaces than sharing them.

                                                                               

                                                                               

                                                                              my apinion on the later is, we as the consumer (we have the cash, they dont yet..) have a multitude of choise, buy rubbish with luvly stickers on, the rubish only acheives 40% of what it advertises(if yu lucky) and on the hole gets thrown in the bin (enviromently catastrofic..resourse run out at an alarming rate, or we all die horabbly much worse and much sooner) or chois 2 is ahhhhhh the machine that does what its suposed to, only now every one makes it better faster and lasts longer..(any one see the diference? we could be visiting the moon instead of the social servers..yarda yarda..)

                                                                               

                                                                              and again back on topic?  the screen on your pc is the bed of the printer..add x and y screens and we have a two way co ordate system that actauly self locates no matter what the build frame of printer...(and add in the flex of the tool head..thats a red herring to mizz the masses dohhhh).

                                                                               

                                                                              hey call me crazy lol..but its already out there. (now whose holding the trump card and how much will he make outer it!)

                                                                               

                                                                               

                                                                               

                                                                               

                                                                              disclosure... no peoples were hurt in this making, however some discumfort at my grammer is to be exspected, unless your dyslexic yourself in which case you probably wont notice.

                                                                              • Re: Closed-loop control for low-cost 3D printers
                                                                                munchit1

                                                                                heres the point for all the doubters.

                                                                                 

                                                                                 

                                                                                 

                                                                                 

                                                                                https://www.youtube.com/watch?v=L-_5KsAOVko

                                                                                1 of 1 people found this helpful
                                                                                • Re: Closed-loop control for low-cost 3D printers
                                                                                  wenganxiang

                                                                                  A good idea! But I think it might not be that simple to lower the cost. Close-loop construction could be more complex, and probably, people will spend more time on designing it, which may raise the cost instead.   I will try to make a slicer setting as good as possible, that is a good way so save money for me.

                                                                                  But I think , one day, the close-loop controlling printer that you describe you be produce and cheap with the development of technique . After all, human beings are lazy, the reason we invent machine is to save our time and money.

                                                                                  • Re: Closed-loop control for low-cost 3D printers
                                                                                    closedloop

                                                                                    Hi Morgaine Dinova,

                                                                                     

                                                                                    I am interested in your idea: closed - loop for 3d Printer.

                                                                                    Now i am thinking how to achieve the print quality. I agree with you that closed-loop could improve the accuracy and precision of the head movement. but i think the bottleneck is the hot-end, till now, i have not seen any 3d printer which is based on RepRap-style models could control the temperature to fuse the materials accurately. Even the position of head can be controlled very well, the print quality is still affected by the hot-end.

                                                                                    1 of 1 people found this helpful
                                                                                    • Re: Closed-loop control for low-cost 3D printers
                                                                                      munchit1

                                                                                      has this gone any further since?

                                                                                       

                                                                                      i've read a few bits here and there, and going beyond the name calling and IQ fights lol....here's how i see it.

                                                                                       

                                                                                      for 3D printing/cnc etc, your going to count clicks, be it with a wheel placed on the motor or pully, or a long strip with bars on or some version of it.  the long strip would cut out everything inbetween..pully stretch slipping etc because the ticker tape measurent is actaly at the end..

                                                                                       

                                                                                      stepper motor drivers would litterally run 'continuosly' as a dc motor would, perhaps the addage of fine steps being implimented on steppers for micro movements...just to complicate it lol.

                                                                                       

                                                                                      opto isolate any pc conections. (cuz a grand a chuck hurts) and it's all down to a software that can receive/count and correct whilste interfacing with the exsisting marlin softwares etc...e.g. an extra usb conection into the pc...lets face it, printing long strips of lines isnt really that espencive is it now...add in steps being visable verses the ticker tape count you could actualy physicaly measure and adjust the soft ware posision in real time millimeter's. e.g. ten clicks up the tape is 15.30mm...350 clicks on is 60.54mm etc etc.. i think we are actualy talking 'exactly there' then, irrelavent of belts pully ratio's alien invasions and 5k of motors.

                                                                                      (haven gone into opto isolated drivers for steppers...usb hub..a few single drivers replacable and fairly cheap, the markets definatly still there eather way.)

                                                                                      you all have a pc that your on the forums with....they all have a maths computer called ansi CC so can more than handle some empron and then some...du dahhh.. new market in the offering.(just a gues but china will fill the neache quite cheaply before any one else bothers chrgeing a leg and a kidney).

                                                                                       

                                                                                      software and 5 dollar compoinents from china....wander why it hasnt been done yet lol.

                                                                                       

                                                                                       

                                                                                      as we know, steppers, the longer they travel the more they are out...nature of the beast isnt it. (or..reset all axis every so many layers, but the missed step still occurs).

                                                                                       

                                                                                       

                                                                                       

                                                                                       

                                                                                      havent been about on the forum much, i've been on a spiritual journey, one that took me wayyy up my own behind and beyond lol and back again through all the mind binding BS lol..that and overcomplicating only to come back to the original idia that was simple....the truth is..............at what cost. the rest is hours of headache supply n demand at what price.

                                                                                       

                                                                                      have fun...

                                                                                       

                                                                                      edit, the direction detection could be done with a tine little 'arrow' on the ticker tape, the software knows where it was going...an arrow would help. then again...the clicks were counted the soft where knows where it is so correcting for direction doesnt actuly come it it??  hmmm...just a thought.(another resaon for the long tape).

                                                                                      • Re: Closed-loop control for low-cost 3D printers
                                                                                        pileofrogs

                                                                                        Hi all.  One of the most important lessons I've learned is to measure the thing you're doing, not some proxy for that thing, if at all possible.  I was trying to figure out how to apply that idea to 3d printing when I came across this thread.  This is the only place I've been able to find with folks talking about this idea.

                                                                                         

                                                                                        The holy-grail might be something that compares the actual 3d print job to a file and can adjust on the fly.  Maybe it would have a grinder tool to remove mistakes?  Maybe it could just use the hot-end to melt and slurp up some material?  Achieving this anytime soon is probably unrealistic, at least for me.

                                                                                         

                                                                                        A more reasonable goal might be to track the position of the print head.  This appears totally doable to me.  If this can be achieved, you could build a 3d printer out of cardboard and twine if you wanted. 

                                                                                         

                                                                                        I like the idea of computer vision.  Say you want to know the position of the head to 1/10th of a millimeter.  You'd  be able to watch one dimension for 120 millimeters (more or less) with a 720p camera.  You could add cameras to add build size.  You could build a periscope that takes up part of the field of view and double the resolution on that one axis (and you could go crazy with mirrors and prisms and get all kinds of resolution out of a single camera, but that's probably silly).   Anyway, the resolution problem can be defeated with a combination of more cameras, better cameras and silly tricks.

                                                                                         

                                                                                        I'm not fond of the idea of feedback only within the stepper.  This only helps you with problems that the stepper can detect and correct for.  It doesn't help reduce the cost of the materials you need for the printer.  If one of your guide rods is bent, this doesn't help you.  With a system that tracks the position of the actual head, it can compensate for cheaper design materials.  I'm also not fond of having some kind of measuring stick (graticule?) because you'd have to manufacture that thing to whatever tolerance you needed.  If that's the only thing that works, there's probably tricks that can make one of those for cheap, though.

                                                                                         

                                                                                        Other ideas that might work, include some kind of trim pot triangulation or some kind of distance measuring that's accurate to sub millimeter size.  I imagine the trim pots as a rod that connects from the print head to a stationary joystick type thing.  When the head moves, it moves the joystick.  Get 3 of those and you have 3d.  Measuring devices would work in a pretty obvious way.  You'd have to calibrate/train the printer because you couldn't trust the sensors/trim pots/printer frame to be uniform or even to be stable over time.

                                                                                         

                                                                                        Of course, that only addresses part of the loop.  You also need your printer to be able to take gcode in and tell the steppers (or whatever) to adjust while it's in the middle of a print.  I'm not sure that's something that would be easy to implement.  As it sits, the printer has to take gcode, convert it to steps and send the steps out to the motor.  If you built in feedback, the processor would have to check for errors after each step/micostep/whatever.  I'm assuming that the actual image processing (or whatever) is done on a different, beefier, processor and the printer itself only has to worry about accepting feedback and correcting the commands to the motors.  Still, that sounds like a fair amount of stuff to stick into what is probably the most inner loop of the printer's code.  Or maybe it already exists?  I should just go look at the code.

                                                                                         

                                                                                        Frankly, this sounds so doable that either I'm missing the real problem or someone has already done it.  I'm willing to sacrifice print speed for high quality from a cheap printer.

                                                                                         

                                                                                        If somehow this isn't either impossible or done already, I'm considering trying it.

                                                                                         

                                                                                        I think I'd start at the printer firmware.  Make sure it can actually do something with feedback.  If it doesn't already have that capability, that's something I could probably contribute.  Even if the computer vision isn't viable, having the firmware ready for when someone does come up with something that works, would be really useful.  I've got a marlin firmware, but the idea should be applicable pretty widely.

                                                                                         

                                                                                        After that, I could just try to get one axis going on a small build area.  That would be a proof of concept and I could refine it from there.  If I got that far, I bet smarter people than me would take off and run with it and we'd have a new generation of cheaper and better printers.

                                                                                        1 of 1 people found this helpful
                                                                                          • Re: Closed-loop control for low-cost 3D printers
                                                                                            munchit1

                                                                                            as far as i can see..

                                                                                             

                                                                                            two ticker tapes, one on the x one on the Y.

                                                                                             

                                                                                            x 234 = 10MM

                                                                                            X254 = 20MM

                                                                                            x 652 = 71.5MM.... and so on gives you an exact locasion based on the print plastik.  print a line and measure it...look at the printer software that states 356 clicks on the X axis and enter the measurement. could it get any simpler?

                                                                                             

                                                                                            wouldnt even matter if the lines on the ticker tape werent exacly accurate because you's simply measure it and assign that measurent to whatever count was on the sofware, this way if anything was amis it wouldnt matter.

                                                                                             

                                                                                            people ask why close loop a stepper? ermm 200 tiney teath all at sizes to a tolerence, the longer that motor turns the more times the counts out, only a fraction at a time like, but 2000 million times later its gunna be a millimeter or so..posably lol.

                                                                                            i've been on a google bull s***t wading search, and basicaly the motors run better with a built in closed loop afair, quiter and less watage used etc, but non the less if a belt stretch's or a pully cacks up the count at the motor is fine and away we prints in some other locasion. after all the main point wasnt the luvly sales pitch of you have no choise so buy this, the whole point is about geting the plastik down right where it should be.

                                                                                             

                                                                                            tbh stepper accuracy on a cheepo set up can be down to 1/100'th of mm on a narmal 200x210x bed size(ish),and yes they can, mine does it..or did it before the replace the barings n smoothy board(the driver went and smoothy customs n exise say 'go away' in pritty english..) but...as the time goes on they start to run out, yet ageeeeen and ageeeen...into the perpetual get the print right, blasttt it! replace a part, reset up..print a bit then reset up then print a while longer then reset and recalibrate and sooooooooo on...drives yu up the wall doesnt it.

                                                                                            he maintanence to the nozzle end in particular will always be there be it a 5 quid set up or the rebranded and finished properly 60 quid a rip off...plastik sticks and burns dunt it lol..(polish the 5 quid turds they work fine).

                                                                                             

                                                                                            the main catagries or 'traps' people fall into are things like the 'hobby of printing' entails build a machine and finaly get it running.. or...some one who wants a machine to print parts with a use, Funily enough if you want it to work boy do they add on the bucks big style, yawn. (the hobby goes are 'expected' to shell out money based on an anual estimasion of hobby exspendature..i.e. yu 'spend' is the hobby, or at least by the time the vendor desides on your behalf what you'd exspect to pay..endlesly lol.

                                                                                             

                                                                                            half the 'new' products and kickstarts with their honest to god impaired geniuos aproach (in american thats 'and god bless america with the gods honest truth) are literaly chinese already in the general market goods abroad that get renamed with a good old brittish badge....and those nasty old chinese just copied it before they could get it on the go! lol...blah blah blah...

                                                                                            basicaly the market is indeedly closed up tight, you buy this this n this then argue the toss with the trolls about it. or you go profesional and triple/quodrouple to just find out ahhh yes...BS all along wasnt it.

                                                                                             

                                                                                             

                                                                                            ................if the steps produced or should i say pulses 'counted' were readily readable the whole proces of teeth pully's cogs and equasions would be obsolete...6000 pulses moves to x 500 clicks...measure it..lol same thing over and over again, it would be far easier/simpler to aproach the whole deal from this type of angle.. the info is in the existing program some where, it has to be to generate the pulse train per steps.. and then to base it on a pully ratio equasion to get the shape from the G-code file. somewhere it comands 'X' amount of steps..DISPLAY IT..dohhh. at 50 years old its looking horably like i'll have to become a programmer, just intime to be too blind to care if the prints are straight or pritty lol. eeeeee....

                                                                                             

                                                                                             

                                                                                            45 quid per stepper motor only 'reflects' the 'hobby-ists' spending hobby. i.e. it's not the participating that counts, it's how you spend about it, and how much forum use you can dominate with your cash flow. 

                                                                                             

                                                                                             

                                                                                            helmit on..table ducked under..but hey ho i'm dead any way lol.

                                                                                             

                                                                                             

                                                                                            for 40 quid you get a picture printer scanner............with it all included, not only that its very old hat!!  so who's getting a milking?

                                                                                          • Re: Closed-loop control for low-cost 3D printers
                                                                                            vinothparama

                                                                                            Yes, I am learning many things through this thread about 3dPrinter, and I want to be a good researcher in this field,

                                                                                            I am also looking closed-loop low-cost 3D printers will be very soon. with this I give great respect to you people.


                                                                                            It is needed to consider this in two approaches, one is closed-loop 3D printers where we can get the more accurate and precise machine for 3d parts, and second. is Low-cost 3d Printers, where we can adjust with accuracy and precise at some level. but the main objective is we need development on both the approaches.


                                                                                            the idea of the positioning of nozzle head accurately is needed, before that we need to confirm with all 3 axis position systems, if we made that 200% sure without error,  then out nozzle position error can be nullified easily. tracking the nozzle head with non-contact vision system will give the better development, but how to fix it for getting all the coordinates for complex geometry and where we can keep the camera with the printer, and also whether a camera is moving condition or, stable one,  we can take video and process it.
                                                                                            as well as developing a free source algorithm with the vision system for the 3d printer is very much needed for the automatic 3d printer.


                                                                                            I am also trying to develop such an algorithm along with a more precise RepRap 3d printer setup.

                                                                                             


                                                                                            Thank you.

                                                                                            1 of 1 people found this helpful