Welcome! Log In Create A New Profile

Advanced

RepRap using DC Motors!

Posted by lucasmun09 
RepRap using DC Motors!
June 07, 2014 05:24PM
I know many people will come in here and say "Oh no, DC motors? Ew... They are in accurate and uncontrollable...."

Well, I am going to say a Big Fat NO to them...

As a highschool student and in really tight budget no more than $200, I was looking for a most efficient and the most economical way to build a 3D printer.

Luckily, I have acquired 3 "high" end, "no-longer-working" ink-jet printers from my school. I was highly expecting these printers to have big stepper motors in them but instead, I found some DC motors and some weird plastic strip that had a bunch of fine lines across it.

I did some research and found out that these motors were using Optical linear encoders, which gave a dull, hard to control DC motor that moves the print head to move in such precision that enabled this printer to print high as 1200dpi.

So by using the encoder and the DC motor, you can have same precise movement and even control the speed with some changes in voltage yet I have not seen anyone who made a 3D printer in this kind of configuration.

Why?

As a personal hobby I am hoping to achieve to make a 3D printer by using DC motors from the printers and try to build it.

SO.... Why this post?

As a first timer building a 3D printer, I wanted feedback from the RepRap community who have actually built or is building 3D printers right now.
I have just purchased an Arduino Mega for to control everything and also hope that if you guys can tell me if I should buy a motor shield for it or something... Thanks!


The current progress in the Printer

6/7/2010
For couple of days, I have made disassembled 2 of the 3 inkjet printers and took out the motor and I guess so called "precision rods" inside the printer. I have saved the encoders and began to experimented with the DC motor that controls that printer head. I have have used a spare computer power supply on the DC motor with 12 volts at first, and it moved really fast with high torque but seemed that it moved a bit too fast to be controlled. Then I placed 5 volts on the motor but it seems that printer head is moving much more slower but with very low torque. Any way I can solve this? Hmm... Also, I figured out the the 4 pinouts for the optical encoder. But I have no idea how it should be used or implemented with Arduino because, A) I do not have it and cool smiley I am very inexperienced with Programming Language C.
Re: RepRap using DC Motors!
June 07, 2014 05:32PM
ONCE AGAIN. I really want feedback from you guys! Tell me hints and tips! Thanks once a gain!

Edited 1 time(s). Last edit at 06/07/2014 05:32PM by lucasmun09.
Re: RepRap using DC Motors!
June 07, 2014 05:33PM
Reserved for pictures[-] Some will be uploaded later in the day.
Re: RepRap using DC Motors!
June 07, 2014 07:08PM
I can't help one bit with the encoders, but I could help with the board, firmware [again, not the DC motor portions] slicer and basic mechanics.
First time building a printer and from something the experienced have trouble with, I wish you luck. If you can get an effective printer that makes fine prints you'll be pioneering a small part of RepRap.
Also, don't expect instant replies, first lesson I learned here, it might take a few days and a few different posts to find the right way to ask things, it seems a society that doesn't like to interact with the different [as they tend to be scammers and related]


Realizer- One who realizes dreams by making them a reality either by possibility or by completion. Also creating or renewing hopes of dreams.
"keep in mind, even the best printer can not print with the best filament if the user is the problem." -Ohmarinus
Re: RepRap using DC Motors!
June 07, 2014 07:35PM
A 2D printer simply drives the motor at constant speed and then uses the encoder strip to know exactly where the print head is and print the correct dots for that position. The motor can accelerate and decelerate in the margins where speed does not matter.

That is a lot easier than synchronising two axes running at arbitrary speeds to draw a straight line at any angle with synchronised accelerations and precise end points. It can be done with high quality direct drive brush-less servomotors( better than a stepper motor) but it is a tall order for cheap geared DC motors to achieve the precision and if they have brushes they soon wear out doing the sort of mileage a 3D printer does. Each object is equivalent to hundreds of 2D pages.

Early Reprap designs used a geared DC motor for the extruder. I used a shaft encoder and feedback to improve the accuracy, but being highly geared to get the torque and resolution (so the motors ends up spinning at 1000's of RPM) it could not start and stop as crisply as a stepper motor. Reprap switched to stepper motors on all axes and quality improved dramatically.


[www.hydraraptor.blogspot.com]
Re: RepRap using DC Motors!
June 07, 2014 09:21PM
Thanks for even the idea of helping what I am trying to do here! It is still very encouraging that someone out there is willing to help me! I know I will have a lot of questions in the future but I really don't have some right now.
Re: RepRap using DC Motors!
June 07, 2014 09:27PM
Yes I am very aware that the DC can't have that simple precision and the acceleration simultaneously between the X and the Y motors. But then, my light bulb in my head with an idea... PWM? I mean I notice that motors go slower and faster depending on the Voltages when the amps are the same. By using this concept, shouldn't I be able to reach the acceleration and deceleration by using pulse with modulation? Sadly, I can't really experiment with this due to not having an oscilloscope because, wow, the are really expensive..... Any ways, despite the limitations, will this inability to control the motors smoothly affect so much that printing new printer parts is impossible?

Also, I thought that by using encoders, deceleration and acceleration would not matter because the motor will stop when the destination within the encoder is reached...
Re: RepRap using DC Motors!
June 07, 2014 10:37PM
I do applaud the notion, but isit worth the effort? I am not going to tell you not to try, power to ya bud, but why? Stepper motors can be had at very reasonable price. I would look at cutting corners in other area. Even if it succeeds, you mention building parts for another, you will need steppers for that. I did build mine on the cheap, old printers and scanners. I was able to get the rods, motors ans various other parts.
You will also need to write your own control firmware to work with those encoder strips. And with you being new to 3d printing that in itself is a huge task, and would be for a seasoned 3d'er with coding experience.

I would buy the motors, before almost anything else on the printer. Almost everything else you can find an alternative.
Like I said not putting down the idea, just my 2 cents.
Re: RepRap using DC Motors!
June 08, 2014 02:06AM
It may be wise to start with a smaller project, using a few DC motors and an Arduino Mega and programming it with the "processing" language to see if you can achieve the required precision for this type of project. There are tutorials on using DC motors with Arduino.
Re: RepRap using DC Motors!
June 08, 2014 07:15AM
Teacup firmware has disconnected step pulses (dda_step()) from acceleration calculations (dda_clock()) already, so the task would be to collect positional data from the encoder strip and calculate appropriate motor voltage / PWM values according to the position.

I don't think that's simple, either, but if you don't try, you'll never find out how well it works.


Generation 7 Electronics Teacup Firmware RepRap DIY
     
Re: RepRap using DC Motors!
June 08, 2014 01:57PM
Well, too late now I guess grinning smiley The whole project itself is aimed towards so that the 3D printer is created without using a stepper motor. The thing is, I making really challenging and hard projects to push myself so that I can learn from what I do and the mistakes from what I have done. True buying stepper motors and just going with that may be the simplest way out there but, what if there is an alternative way creating a 3D printer without using them? Majority of the inkjet printer that I know out there right now uses encoder and a dc motor to accurately place down the tiny droplet of ink on the paper. By using this precision, I am trying to achieve a goal that may benefit the RepRap community in the future because.... you know, not everyone has the budget to buy or even build a 3D printer.
Re: RepRap using DC Motors!
June 08, 2014 02:04PM
Quote
drmaestro
It may be wise to start with a smaller project, using a few DC motors and an Arduino Mega and programming it with the "processing" language to see if you can achieve the required precision for this type of project. There are tutorials on using DC motors with Arduino.

Yes I am very aware of the other tutorials out there using DC motors but this is different... It has encoders that I guess it "ticks" as the sensor passes by each very fine line within the encoder strip. With some other things behind of this little thing, I could even measure distance from the 0 like a number line by how it functions. I was hoping this will help me reduce costs by buying other little components like micro switches and etc, because I believe that I can basically achieve everything with the encoder and it's strip. Also, how will just practicing with DC motors help me when I have to use it coherantly with an optical encoder? Its not that I do not get the concept but how I will incorporate it with the controlling the movement of the DC motor. Well, thanks for the tip anyways! grinning smiley

'
Re: RepRap using DC Motors!
June 08, 2014 02:52PM
Quote
Traumflug
Teacup firmware has disconnected step pulses (dda_step()) from acceleration calculations (dda_clock()) already, so the task would be to collect positional data from the encoder strip and calculate appropriate motor voltage / PWM values according to the position.

I don't think that's simple, either, but if you don't try, you'll never find out how well it works.

Yes, that is the same mindset that I have right now.. I will never know if it will work or not with out ever trying grinning smiley

To be honest, I have not really focused on the firmware and the coding part of the 3D printer so I hope that you can explain it to me a bit more in depth in the future!
Re: RepRap using DC Motors!
June 09, 2014 07:46AM
As drmaestro suggests,I would recommend breaking this problem down to separate parts. It sounds like you already know that getting accurate, repeatable linear motion is going to be a problem. I think I would want to solve that problem before investing in the other portions of the project with less risk.

Perhaps start by building a 2-axis plotter? It would be much less effort to build a small rig that would move a pen or marker over a sheet of paper and write some simple code to draw some simple shapes. This would allow you to experiment with your motors and encoders and see what issues their might be for your design.
Re: RepRap using DC Motors!
June 09, 2014 07:46PM
I'm a total newbie to mechanics and electronics, but I think this idea has merit. Because if it works it would allow not only for less precision motors, but also for less precision mechanics, and cheaper costs. Backlash and other effects could be eliminated because you are measuring the precision not at the motor, but closer to the actuator, or the actual platform. For example a spectra line belt might wander on a pulley (or has this been solved?) and it wouldn't matter because the linear encoder catches that. Belt tension and vibration might not matter that much. For some projects like the Lisa Simpson, a high lead screw is needed (e.g. lead of 25mm or 1") which are expensive so people are thinking about a threadless lead screw (wheels on a smooth rod). Unfortunately threadless lead screws aren't very repeatable, but with a linear encoder it would work. Check out this thread about threadless leadscrews.

As a project, I would try a simple single linear guide rail, reading the optical encoder and adjusting the PWM with an arduino board, and then measuring the results with a "DRO". I don't have any experience with any of this this either though, but afaik the heater outputs of the usual printer boards output PWM so that might work to control acceleration of your dc motor.

Good luck!
Re: RepRap using DC Motors!
June 09, 2014 08:13PM
Quote
mappler
As drmaestro suggests,I would recommend breaking this problem down to separate parts. It sounds like you already know that getting accurate, repeatable linear motion is going to be a problem. I think I would want to solve that problem before investing in the other portions of the project with less risk.

Perhaps start by building a 2-axis plotter? It would be much less effort to build a small rig that would move a pen or marker over a sheet of paper and write some simple code to draw some simple shapes. This would allow you to experiment with your motors and encoders and see what issues their might be for your design.

Thanks for this great tip! I wonder why I have not think of this!

Getting repeatable linear motion is also a problem but what worries me the most is that it will be very jerky when the motor decides to stop at a specific coordinate. I am hoping someone will help me code on reducing the speed by using PWM as it seems like the best bet for me right now. Nevertheless, I guess I am off to work on 2D pen printer grinning smiley

P.S, I still need a Z axis right? Cause I would need to lift the pen or the writing utensil some how!
Re: RepRap using DC Motors!
June 09, 2014 08:17PM
Quote
Dejay
I'm a total newbie to mechanics and electronics, but I think this idea has merit. Because if it works it would allow not only for less precision motors, but also for less precision mechanics, and cheaper costs. Backlash and other effects could be eliminated because you are measuring the precision not at the motor, but closer to the actuator, or the actual platform. For example a spectra line belt might wander on a pulley (or has this been solved?) and it wouldn't matter because the linear encoder catches that. Belt tension and vibration might not matter that much. For some projects like the Lisa Simpson, a high lead screw is needed (e.g. lead of 25mm or 1") which are expensive so people are thinking about a threadless lead screw (wheels on a smooth rod). Unfortunately threadless lead screws aren't very repeatable, but with a linear encoder it would work. Check out this thread about threadless leadscrews.

As a project, I would try a simple single linear guide rail, reading the optical encoder and adjusting the PWM with an arduino board, and then measuring the results with a "DRO". I don't have any experience with any of this this either though, but afaik the heater outputs of the usual printer boards output PWM so that might work to control acceleration of your dc motor.

Good luck!

Yes! Finally someone with the same mindset that I have! Just saying, using the linear encoder will just basically combine microswitches for telling 3D printer that it is at the end and even maybe easier to plot the 3D "diagrams?" to the printer because the motors will move within a so called "the number line" by the direction within the linear encoder.

Also, what is "DRO"? I heard of it but it is not ringing a bell for me. Thanks for your feedback!
Re: RepRap using DC Motors!
June 09, 2014 08:28PM
Quote
lucasmun09
Also, what is "DRO"? I heard of it but it is not ringing a bell for me. Thanks for your feedback!

I don't know exactly lol! I assume it is a brand name for a large digital caliper. You can see it in the pictures that cozmicray made of his test rig. Basically to read the error manually when move the threadless lead screw nut back and forth.

I assume that the maximum acceleration that a specific system can take to safely move and stop at a specific position might could be actually autocalibrating / measured by the firmware. If you knew the firmware code inside and out, it probably would be very easy to add this to the basic motor movement function.
Re: RepRap using DC Motors!
June 09, 2014 09:32PM
Quote
Dejay
Quote
lucasmun09
Also, what is "DRO"? I heard of it but it is not ringing a bell for me. Thanks for your feedback!

I don't know exactly lol! I assume it is a brand name for a large digital caliper. You can see it in the pictures that cozmicray made of his test rig. Basically to read the error manually when move the threadless lead screw nut back and forth.

I assume that the maximum acceleration that a specific system can take to safely move and stop at a specific position might could be actually autocalibrating / measured by the firmware. If you knew the firmware code inside and out, it probably would be very easy to add this to the basic motor movement function.

Oh lol, so its just like calling a tissue kleenex because it is so widly used. grinning smiley

Well sadly, I don't know the firmware code inside out so sad smiley
Re: RepRap using DC Motors!
June 09, 2014 09:50PM
Quote
lucasmun09
P.S, I still need a Z axis right? Cause I would need to lift the pen or the writing utensil some how!

You can "cheat" on the Z-Axis initially and either a) don't support lifting the pen or b) make lifting and dropping a "binary" up or down condition.

-Matt
Re: RepRap using DC Motors!
June 09, 2014 10:29PM
Quote
mappler
Quote
lucasmun09
P.S, I still need a Z axis right? Cause I would need to lift the pen or the writing utensil some how!

You can "cheat" on the Z-Axis initially and either a) don't support lifting the pen or b) make lifting and dropping a "binary" up or down condition.

-Matt

Ah thanks for the new insight!
Re: RepRap using DC Motors!
June 10, 2014 04:15AM
Quote
lucasmun09
To be honest, I have not really focused on the firmware and the coding part

You should. Building a printer with DC motors is the trivial part. Developing electronics and software to get it running is the meat. And no, I won't do this for you. :-)


Generation 7 Electronics Teacup Firmware RepRap DIY
     
Re: RepRap using DC Motors!
June 10, 2014 12:22PM
Quote
Traumflug
Quote
lucasmun09
To be honest, I have not really focused on the firmware and the coding part

You should. Building a printer with DC motors is the trivial part. Developing electronics and software to get it running is the meat. And no, I won't do this for you. :-)

Gee, thanks xD well you know where I can get documentation about what you mentioned? Thanks!
Re: RepRap using DC Motors!
June 10, 2014 04:02PM
Quote
lucasmun09
you know where I can get documentation about what you mentioned? Thanks!


[learn.adafruit.com]
Doesn't look to complicated. Read read read smiling smiley There are lots of tutorials since arduino is an education project.
I would look for an arduino due KIT with some starter electronic stuff. You can play around even if you can't solder.
You'll learn programming and tweaking in no time.

You'll also find examples if you google for "arduino linear encoder" [www.google.com]
Re: RepRap using DC Motors!
June 11, 2014 11:14AM
just to let you know, it has already been done!

these guys are crowdfunding a low-cost printer now (got early bird :-)!), which is using DC motors and optical encoders.
[www.indiegogo.com]

Description:
"For a number of reasons, most notably reliability and sound level, we've chosen to use DC servo motors for the MOD-t. This requires a little more engineering on our part, but we believe it'll lead to the best user experience in the end."

here's also a closer look at the prototype:
[hackaday.com]

so yes, it's possible!
Re: RepRap using DC Motors!
June 11, 2014 12:03PM
That's how they move the bed, thanks for the article. That's actually pure genius, never would have thought of that, but for something like that it's perfect. Kinda blows my mind how perfectly genius that is.


Realizer- One who realizes dreams by making them a reality either by possibility or by completion. Also creating or renewing hopes of dreams.
"keep in mind, even the best printer can not print with the best filament if the user is the problem." -Ohmarinus
Re: RepRap using DC Motors!
June 11, 2014 04:16PM
Unfortunately the New Matter MOD-t isn't open source though.
For the t-mod kind of setup they could basically use an optical mouse to read movement. Like here (http://joshuavasquez.com/docs/jVasquez/Projects/dualMouseOdometry.html)
vn
Re: RepRap using DC Motors!
June 11, 2014 05:06PM
There are several similar threads on RepRap forum. People tried this many times before. However, I haven't seen any real success even though recently there have been several crowdfunding 3D printer projects deploying DC motors -- e.g Rappy, Micro, MOD-t and upcoming ServoStock. The truth is that, with existing technology, it is not possible for dc motor driven 3D printer to have the same performance (e.g. accuracy and speed) as those using stepper at the same price point. The beauty of simplicity and effectiveness inherited by the stepper motor is often taken for granted until people try to replace it with DC motor;-)
Re: RepRap using DC Motors!
June 11, 2014 05:22PM
Except that this post isn't about buying a printer at the same price point and choosing DC motors. It's about using what he has for free and building a repstrap.
Pretty sure he didn't make his concern competing with price point or even function of accuracy and speed, as I read it he made it very clear his intention was to make a printer with what he got, namely DC motors.


Realizer- One who realizes dreams by making them a reality either by possibility or by completion. Also creating or renewing hopes of dreams.
"keep in mind, even the best printer can not print with the best filament if the user is the problem." -Ohmarinus
Re: RepRap using DC Motors!
June 11, 2014 10:32PM
Quote
vn
There are several similar threads on RepRap forum. People tried this many times before. However, I haven't seen any real success even though recently there have been several crowdfunding 3D printer projects deploying DC motors -- e.g Rappy, Micro, MOD-t and upcoming ServoStock. The truth is that, with existing technology, it is not possible for dc motor driven 3D printer to have the same performance (e.g. accuracy and speed) as those using stepper at the same price point. The beauty of simplicity and effectiveness inherited by the stepper motor is often taken for granted until people try to replace it with DC motor;-)

Yes but tell me, how many of those printers are open source? These people are trying to make money off of technology. I really don't have anything against that but how will this help other people? Either I achieve the goal or not, I am doing this RepStrap for the pure purpose of introducing an idea that DC motors can be used on a 3D printer and soforth.

Also, if you are saying DC motors and linear encoders are inaccurate, you need to open up an inkjet printer.... These printers run at speeds where there is no acceleration or deceleration is present yet they can pinpoint and drop a droplet of ink in such manner that they can print up to 1200dots per inch. It seems to me that you forgot I mentioned what linear encoders are and that I was planning to use it with them.
Sorry, only registered users may post in this forum.

Click here to login