SparkFun Forums 

Where electronics enthusiasts find answers.

Have questions about a SparkFun product or board? This is the place to be.
By emf
#85881
That's great news. A few questions:

Are the motor wires soldered to the ED or are they just sort of wedged in the holes? I can't tell from your picture how the breadboard is being used.

How fast are you turning the motor? Steppers produce more torque at low speeds, so it's good to get it working at slow speeds first, then slowly crank up the speed to see when it starts skipping steps.

Is the Y-axis pretty easy to turn by hand?

Do you have the current on the ED set to the max? There's a pot near where the motor wires connect that you can turn with a small screwdriver to adjust the current.

You can connect two ATX supplies together to get 24 volts, but it's a bit dodgy -- you have to disconnect the ground on one of the supplies, which could allow its case to shock you if some of the components inside fail. Higher voltage will improve its performance at high speeds, but shouldn't make much of a difference at low speeds. See how far you can get with 12V first..
By edward.ford
#85906
This is embarrassing: I was just using the breadboard as something to set the ED on.... Yes, the wires are just wedged in there. Do you think soldering these things in place would make a difference? I'm wondering if I should get some of those things you solder through the holes that are like standoffs. Then I could plug the ED into the breadboard? What are those called? They would be like the opposite of what's on the Arduino.

The Y-axis moves pretty freely, I can turn it with two fingers quite easily.

Good question about speed? I used the code I found on danthompsonsblog.blgospot.com. But, I was so wrapped up in the fact that it just worked that I didn't really bother to look through it. I'll take a look back through the code and see if I can change the speed. Do I want it to run faster or slower?

As the program was running (or attempting to run) the axis back and forth, I was adjusting the pot. It seemed that the further to the right I turned it, the "smoother" the stalling would sound and the quieter the motor sounded.

EDIT: Did some research and it looks like those things are called male headers! Right?


EDIT #2: I posted a video on my page that shows the Y-axis moving and has pretty good sound if you'd rather see it than try to figure out my ramblings :)
http://www.edslifedaily.com/mill.html
Last edited by edward.ford on Wed Nov 25, 2009 7:05 am, edited 1 time in total.
By emf
#85911
I don't know if a lousy connection is the cause or not. Try to ensure the wires are in good contact with the holes in the board by just pressing on them with your fingers while the motor is running and see if it makes the stalling go away. If you're pretty sure that they're well connected, that's good enough for now. Just put that on the list of things to fix soon... You can solder in the 0.1" male pin headers for easy breadboarding, or solder on some sort of connector on so you can connect directly to the motor without going through a breadboard. If you have old scrap computer hardware lying around, you might find some pin headers that you can desolder.

Friction doesn't sound like the culprit. With the smaller motors I'm used to, when they're running at slow speeds you can pinch the motor shaft as hard as you can with two fingers and maybe you'll be able to cause it to stall.

Get the motor working at slow speeds first. Torque drops off as the speed increases, so it's possible you're just trying to run it too fast. In that case, higher voltage or rewiring it to the bipolar parallel configuration should help. Stepper motors also need to be gradually accelerated to high speeds because of the rotor's inertia... you can't just start at 500RPM and expect it to work. Every motor is different, but 60RPM is probably a safe speed to try to get everything working with before you start cranking it up.
By EmbeddedMan
#85921
From listening to your video, I'm convinced that the problem is that the motor does not have enough torque. It is very likely that you are running it too fast. Cut the speed in half, and my guess is that your problems will go away.

Also, you will need to implement speed profiling (i.e. accel/decel) in order to get the most speed out of your system.

Also, as your motor is running try playing with the pot. It won't do any harm. (Your motors are way overkill for what the ED can deliver even at max current.) You may find a spot on the current adjust pot where things work even at the higher speed.

Also, definitely get a good quality 24 Volt power supply. You'll significantly increase the torque that the motors can produce at a given speed. But watch the temps on the EDs - you'll want a fan on them.

*Brian
User avatar
By phalanx
#85930
EmbeddedMan wrote:From listening to your video, I'm convinced that the problem is that the motor does not have enough torque. It is very likely that you are running it too fast. Cut the speed in half, and my guess is that your problems will go away.

Also, you will need to implement speed profiling (i.e. accel/decel) in order to get the most speed out of your system.
I agree completely. From what I can gather from the video, you are at least turning your motor at 4 turns per second (maybe faster) with no acceleration being used. This works out to about 80,000 steps per second with 1/8 steps giving you plenty of room to make adjustments. Even a simple linear acceleration curve where you increase your step/sec count by 160 every millisecond for half a second will greatly improve the performance of the motor. If you have the processing power to do finer increments or exponential curves, the motor will run even better and the odds of missing steps are greatly reduced.

-Bill
By edward.ford
#85952
So, I have a couple of things on my to do list for the holiday weekend regarding this project:
- Order a 24v DC power supply (does anyone have a vendor suggestion for this?) I found one at Digi-key for about $25, think that will work?
- Obtain male headers to mount ED to breadboard.
- Test out this arduino code http://www.arduino.cc/cgi-bin/yabb2/YaB ... 31909180/1


I'd also like to get your thoughts on running the step/dir pins from a parallel port instead of the arduino. If that were possible, I suppose that three $15 EDs could very well be used as a full fledged 3 axis controller? I understand there are several 3 axis controllers on the market, but I've never seen one for $45.

Here's another attempt at a schematic for what I'm thinking.

Image

- There's obviously a ton of information regarding parallel ports on the web, but I couldn't find out how much voltage is available through the PP?
- I suppose that the step/dir pins on the ED require +5vDC?

For now I'm going to keep plugging away with the Arduino in order to get things smoothed out and running in a predictable manner.

Thanks again for all your help. For all of you in the states: Happy Thanksgiving!
By EmbeddedMan
#85967
A couple of quick answers to your questions. Theoretically the parallel port will work fine with EasyDrivers. The EasyDriver can run at 5V, or, with one solder blob, you can make it run at 3.3V. You will need to measure the output of your parallel port to see what voltage you need to use. Make sure they match.

Also, don't expect the EasyDrivers to fully drive the motors you've got. You could probably pump 2A or more through those motors at 50V or more, and you'd get tons of speed and torque out of them. The EDs are really meant for much smaller motors. They will work fine, and drive the motors you have, but just at a much reduced torque and speed from what the motors are capable of. Just letting you know. ;-)

*Brian
By edward.ford
#85982
Well, it was the speed at which I was running my motors and the fact that I wasn't ramping up or down that was making them stall. Here's a video of the same setup running perfectly with a simple ramp up / ramp down curve*.

http://www.youtube.com/watch?v=0WSgnEOx7fQ

@embeddedman: Thank you for the quick points. I'm not too worried about "maximum performance". My main goal is "steady and consistent"! And I think the EDs will do a great job of that. Also, I'll check my PPT and see what sort of voltage it's spitting out. I'm guessing I can find the info on switching the ED to 3.3v on the datasheet or something?


*I found the "S-curve" program here: http://www.arduino.cc/cgi-bin/yabb2/YaB ... 31909180/1
User avatar
By phalanx
#85995
I just looked up the part number of the 24V supply that you put in your schematic and at 40W, it is too small to run your three motors at the same time. I would seriously consider getting a larger supply which will prove more usefull for other projects as well.

The 150W AWSP150-24 can be had for $61 from Digikey or you can get it for $50 from Future Electronics. Its a little overkill for your current needs but would allow you to scale up the motors in the future if need be.

-Bill
By edward.ford
#86662
@phalanx: Thanks for the heads up on the PS! I ended up ordering the one you suggested. Both the new PS and the 2 additional EasyDrivers showed up to my house on Saturday!

The idea is to mount all 3 of the easy drivers onto a prototyping board, add a barrell connector for the power and a DB25 connector. Also, I soldered headers onto the EDs to make them easier to mount, and what a difference that made!

My one question: How does the proto board work?
- I see there is solder on one side and nothing on the other, which way do I put the components through? I'm assuming the solder would be on the "bottom" side?
- How do I "short" two points together? Do I cut a wire to length and solder it into the two points or is there an easy way to make something like a trace? I tried making a trace and the solder just sucks its way to one hole or the other, but wont bridge two holes....

Also, I realize this is now completely off topic of the original post, but you guys have been so helpful that I'm hoping you can see me through to the end now :) If not, please advise where to post.
User avatar
By phalanx
#86691
Helping is what this forum is all about and I wouldn't consider this off topic here. We really don't have a prototyping 101 forum for questions like this.

You can use your proto board from either side. Traditionally the solder side is on the bottom but you won't hurt anything by turning it over and soldering from the top.

To link 2 points together, you need a short jumper wire. I tend to use the leads off of a resistor or capacitor that have previously been trimmed to make small jumps. If they are longer or are jumping over other circuits that need to be electrically isolated from the jumper, then I will use wire with insulation.

-Bill
By edward.ford
#91153
I know it's been a while since I last posted on this thread, but I wanted to stop back by and say thanks again for everyone's help!

The power supply that was suggested (150W vs 40w) was perfect. It's working great for this project and I can definitely see it working great for a few more I have planned.

Also, although I'm by no means a proto-board master, I did have an "aha!" moment after reading the suggestion regarding jumper wires. I think it was the visual of a jumper that made the purpose of the board make sense to me. Prior to that I was trying to create something like a "trace" out of solder.... clearly that was never going to work :)

Although my project isn't 100% complete, it's a lot further along than it would have been without everyone's help. So thanks again!

If you want to take a look at the board in it's current form, there's a picture in a recent blog post here http://www.edslifedaily.com
User avatar
By phalanx
#91166
I'm glad to see it all coming together!

-Bill