Need some advice on steppers and Arduinos.

Thread Starter

GRNDPNDR

Joined Mar 1, 2012
545
I'll try and keep it short and sweet, We are working on a school project and we need two small stepper motors, the smaller the better, and some way to control them which I was thinking about using an arduino for.

Does anyone know where I can purchase small steppers, preferably 3.3v, and would it be hard to program the arduino to control it to go back and forth.

I'm thinking it would move a single step every 5 secs or so, and then when it reaches a certain point it would reverse direction.

I have an understanding of programming and have dabbled with a couple languages in the past but nothing extensive.
 

Thread Starter

GRNDPNDR

Joined Mar 1, 2012
545
What are the shields? I've seen them referred to, but I don't quite understand what they are.

I did locate some 3.3v steppers, but I gotta dig up the link again because I forgot to bookmark it apparently.
 

Sensacell

Joined Jun 19, 2012
3,453
Some thoughts on stepping motors:

Steppers come in many flavors, you need to consider many diverse factors to be successful using them, it's easy to build something that works like crap if you don't learn a bit before diving in.

Steppers are power hogs, no good for battery powered stuff.
(sometimes actually consuming LESS power when running full speed than sitting dead still!)

You need to consider the step angle, (or pulses-per-revolution) this is the inherent mechanical resolution of the motor.
High performance steppers are typically 1.8 degree per step, or 200 pulses per revolution. Cheap 'tin-can' or pancake steppers can be 18 degrees or 20 pulses per revolution. 18 degrees is a BIG CLUNKY step! Other resolutions are available.

Coil / drive configuration:
steppers have different types of coil winding configurations that are not totally interchangeable with all drive circuits.

Some motors have only 4 leads, or "bipolar configuration" - these will only work with more complex H-bridge drivers. 6 lead motors can work with simple "unipolar" drives that energize half of the winding at once.

Observe the current rating on the nameplate- increasing the current beyond will only saturate the magnetics and make the motor overheat rapidly.

Voltage ratings on the nameplate assume DC conditions- you will see some '4 volt' rated motors running on 24 volt or even 48 volt drives, these drives regulate the current to the motor via PWM.

The truth is in the name- "Stepper" - they do not turn smoothly, they jerk from one step to another which makes things tricky mechanically, steppers can have big issues with high inertia loads , which can cause them to loose synchronicity with the input drive. (stall) Newbies often fail to consider the incremental nature of the motion in mechanical design.

Steppers can hate gear trains at certain speeds- a nasty chattering mess if there is significant gear backlash. If you buy a gear head- make sure it's designed for step motor applications!

Steppers love toothed timing belts! perfect positive yet compliant power transmission- always a good choice for quiet and smooth mechanics.

Torque and speed:
Steppers produce highest torque at low speed, diminishing rapidly as speed increases due to the L/R time constant of the windings. Using a higher drive voltage can extend this torque curve at the expense of more complex drive circuitry, as you must now control the current to prevent overheating or saturating the motor under static or low speed conditions.

Drive modes:
Simplest is full step mode, each pulse moves the motor 1 step. (1.8 degrees in a 1.8 degree motor) the next is what is called 'half-step' where the drive switches between 1 and 2 coil mode alternately, doubling the resolution but creating a "weak step" every other pulse.

Micro-Stepping is the state of the art, a microstep drive divides the step into many sub-steps, reducing the step angle commensurately, a 10 step / step drive on a 1.8 degree motor now does 2000 steps per revolution! much smoother too! This is accomplished by interpolating the current in the windings such that the rotor moves between steps in small increments. Beware, these drives are not cheap.

Some drive manufacturers try to get you to fall for the marketing pitch that "more steps are always better" - like 50,000 steps per revolution! this is really 'empty' resolution and just makes generating the pulse train to run it more difficult.

The whole system is no better than the pulse train you drive it with.
You need to consider how to create smooth accelerations to get good performance, not a trivial programming task.

Acceleration profiles can be designed to avoid system resonances by accelerating quickly through the 'bad' frequencies.
 

BSomer

Joined Dec 28, 2011
434
A shield is basically a board that will plug into the arduino and has all the necessary circuitry on it to be almost a "plug and play" device. I haven't seen too many motor shields that say they can operate stepper motors. There is this one from Adafruit that can drive two stepper motors though.
 

Thread Starter

GRNDPNDR

Joined Mar 1, 2012
545
I've found a stepper/driver board for an arduino that might work
http://arduino-direct.com/sunshop/index.php?l=product_detail&p=126

I'm not entirely sure how it works with the Arduino, but after reading Sensacell's post I think I should provide more details.

We have a motor that will be driving a "Wiper" of sorts. Imagine a cylinder, about 2" in height, with a shaft in the middle running the length of the cylinder. Attached to this shaft is a flat wall or wiper blade if you will, the motor will be driving this wiper so that it SLOWLY wipes the inside walls of the cylinder.

Now when I say slowly I mean slowly thus the stepper. We either need to control a motor to move very slow, on the order of 0.5 RPM or even less, or we need a stepper that will move a single small step every 10 seconds or so.

The other requirement is that once the motor/wiper reaches a certain point it would then begin it's cycle going in the other direction until it reaches another set point and so on.

There should effectively be no torque requirement as the wiper won't be touching the cylinder wall.....we're working with tolerances of 0.0001" so our wiper should pretty much be free hanging.
 

Thread Starter

GRNDPNDR

Joined Mar 1, 2012
545
A shield is basically a board that will plug into the arduino and has all the necessary circuitry on it to be almost a "plug and play" device. I haven't seen too many motor shields that say they can operate stepper motors. There is this one from Adafruit that can drive two stepper motors though.
THAT'S EXACTLY WHAT WE NEED

We have to drive two steppers.
 

Thread Starter

GRNDPNDR

Joined Mar 1, 2012
545
here.. all you need. rolling your own drivers vs buying a shield makes for a better learning project
http://www.arduino.cc/en/Tutorial/Stepper
I've seen that and it may be an option but my knowledge of programming is minimal at best.

The idea of this project is not learning about programming and studying the electronics, we're actually being graded more on the paperwork we have to do, but we have a deadline to meet and a budget to stay within.

We need the controllers and motors because we need them, and they need to work so if worse comes to worse a coder will be hired and paid to do the software side of things, or to at least establish the base for me to tweak.
 

mcgyvr

Joined Oct 15, 2009
5,394
I've seen that and it may be an option but my knowledge of programming is minimal at best.

The idea of this project is not learning about programming and studying the electronics, we're actually being graded more on the paperwork we have to do, but we have a deadline to meet and a budget to stay within.

We need the controllers and motors because we need them, and they need to work so if worse comes to worse a coder will be hired and paid to do the software side of things, or to at least establish the base for me to tweak.
huh?? a school project and you aren't willing to read a few paragraphs and actually learn something but would actually hire a programmer.. Lazy kids..:mad:
Its all right there.. Schematic/parts to order/coding 90% complete to do exactly what you asked about.
 

Thread Starter

GRNDPNDR

Joined Mar 1, 2012
545
huh?? a school project and you aren't willing to read a few paragraphs and actually learn something but would actually hire a programmer.. Lazy kids..:mad:
Its all right there.. Schematic/parts to order/coding 90% complete to do exactly what you asked about.

it isn't that, it comes down to tight timelines and the fact that this project is mechanical in nature not so much electrical.

I intend to dabble more with the programming and do more learning on it after our project is complete.

What's wrong with the product linked that controls two motors? That is precisely what we need and also has libraries available.

Secondly, I'm not a kid, I'm a 30 year old adult male.
 

mcgyvr

Joined Oct 15, 2009
5,394
I just read school..Then "its more about the paperwork"... Then "hire a programmer"..
Sorry...no offense..
I was just talking to someone about the sad state of the education system in the US..
and I see kids/people here all the time basically asking for a project to just be handed to them so they can just turn it in and not learn a thing from it..
 

Thread Starter

GRNDPNDR

Joined Mar 1, 2012
545
I just read school..Then "its more about the paperwork"... Then "hire a programmer"..
Sorry...no offense..
I was just talking to someone about the sad state of the education system in the US..
and I see kids/people here all the time basically asking for a project to just be handed to them so they can just turn it in and not learn a thing from it..

I agree, but I'm also Canadian. When I say it's about the paperwork I mean that the project is more Project Management oriented than it is about learning the electronics or actually building the device.

At the end of the day it comes down to "does the device work?" and "was all paperwork/budget/etc filled out and completed accurately" and we aren't even required for the device to work.... I can't get into specifics about our project, but it isn't due to a **** poor education system, it's simply the nature of the project.

So, back to the project. Will this "Shield" work for our needs?
http://www.adafruit.com/products/81
I need to purchase our parts as soon as possible.
 

BSomer

Joined Dec 28, 2011
434
The shield should work fine for you. It is a kit though and needs to be soldered together, which shouldn't be too dificult. I just wanted to point this out so your not surprised when it comes in the mail. If you look on the product page there are links to a tutorial on using the shield along with some code examples.
 

Thread Starter

GRNDPNDR

Joined Mar 1, 2012
545
The shield should work fine for you. It is a kit though and needs to be soldered together, which shouldn't be too dificult. I just wanted to point this out so your not surprised when it comes in the mail. If you look on the product page there are links to a tutorial on using the shield along with some code examples.

I have seen the code examples and tutorial links, I just wanted to be sure of compatibility.

Soldering is no issue, I've done lots and part of our course was SMD soldering.

I'm going to go ahead and order this kit then I think and see how it goes.
 
Top