Go Down

Topic: Stepper motor help for automation mill (Read 3153 times) previous topic - next topic

jazzygerard

Hello everybody,

I have some questions regarding stepper motors, drives, programming etc...

I'm not new to the world of Arduino but i'm a total noob if it comes to stepper motors.

So what I want to do? As a hobbyist in motorcycle engineering I bought a small milling machine and
want to give it an automatic feed on the X-alignment (later on the y and z as well).

I'm not yet interested in any code (so far) but to give you an idea of what i want to achieve I will tell you guys what my program's suppose to do. Maybe it can be a help for you to answer my question.

So,
I have 1 pot meter to control the motors speed.
a push button to spin the motor to left as long as I push the button.   
a second push button to spin the motor right as long I push the button.
2 limit switches to stop the motor when i,m not paying any attention...

I already choose and bought a stepper motor a bipolar Nema23 with holding torque of 3.1Nm.
this is the data sheet: http://cnc4you.co.uk/resources/60BYGH301B.PDF

First of all I have a problem with reading this datasheet...
Let say i want to use it in parallel. Does it mean it use a current 4.2A and i have to supply 2.73V ? I don't know which supply voltage(s) I can take.

then, what is he difference between series and parallel? The torque stays the same with less current. sou wouldn't it be obvious to use it in series?

then the driver....
I read a lot about stepper motor drivers such as: dual H-bridge with LN298, easy driver, easy big driver, Arduino motor shield... I think the easy driver offers the best features for my application. but the problem is that it only can handle currents till 2A.
in fact I can't find any drive which can handle this currents... I can use the foreseen motor driver for this stepper but that would make things too easy, expensive and no input from myself. What you guys recommend keeping my aim in mind?

I know this are a lot of noob questions but I looked up a lot of theory about stepper motors but these things I just can't find!

Please only hints and solutions for this type motor.

Thanks in advance

Jazzy G 

Chagrin

Let say i want to use it in parallel. Does it mean it use a current 4.2A and i have to supply 2.73V ? I don't know which supply voltage(s) I can take.

If you supply it with 2.73V it will take 4.2A because the coils have a resistance of .65 ohms (Ohm's law!). In practice this is almost never done and usually the motor is driven at higher voltages, commonly up to ~40V, with a driver that limits the current to the motor ("chopping" drive). The advantage of a higher voltage is faster response from the stepper and higher peak speeds.


then, what is he difference between series and parallel? The torque stays the same with less current. sou wouldn't it be obvious to use it in series?

Less inductance when wired in parallel thus the motor can reach higher speeds for a given drive voltage. Also, the torque listed is the holding torque; when the motor is spinning the torque drops off rapidly with higher speeds. A lower inductance motor or higher drive voltage helps you keep torque at higher speeds.

...the problem is that it only can handle currents till 2A. in fact I can't find any drive which can handle this currents...

Try eBay for a "TB6600" driver which is capable of up to 5A. ~$30. The current should be settable either by dip switches or an onboard pot.

nilton61

#2
Nov 30, 2013, 09:10 am Last Edit: Nov 30, 2013, 09:52 pm by nilton61 Reason: 1
Stepper motor in serious applications should be driven by a microstepping chopping regulator with as high suppy voltage as possible for the following reasons:


  • Stepper motor torque depends on current, As switching frequency increases inductive reactance in the motor coils increases, decreasing the current thus lowering the torque. A chopping controller controls the current directly, applying what ever voltage is necessary. Higher supply voltage equals higher speed. the current should be set to the motors maximum  

  • Stepper motors suffer from vibration an resonance due to the step switching. Microstepping decreases those problems


jazzygerard

Thanks chagrnin and nilton61 for your fast and detailed answers I'm already a lot further!


If you supply it with 2.73V it will take 4.2A because the coils have a resistance of .65 ohms (Ohm's law!). In practice this is almost never done and usually the motor is driven at higher voltages, commonly up to ~40V, with a driver that limits the current to the motor ("chopping" drive). The advantage of a higher voltage is faster response from the stepper and higher peak speeds.


Ok, I will try to find a power supply that handle these voltage and currents. is it normal that the data sheet of this stepper doesnt give any maximum ratings?

This guy will do the trick for 2 steppers I assume? maybe even 3 if they are not running at the same time?
http://www.ebay.com/itm/141088177560


Less inductance when wired in parallel thus the motor can reach higher speeds for a given drive voltage. Also, the torque listed is the holding torque; when the motor is spinning the torque drops off rapidly with higher speeds. A lower inductance motor or higher drive voltage helps you keep torque at higher speeds.


So in my case it will be the best to use it in parallel!


Try eBay for a "TB6600" driver which is capable of up to 5A. ~$30. The current should be settable either by dip switches or an onboard pot.


I found this guy.
http://www.ebay.co.uk/itm/New-type-CNC-Router-Lathe-1-Axis-TB6600HG-Stepping-Motor-Driver-Board-TB1H-5A-/131043268135?pt=UK_BOI_Industrial_Automation_Control_ET&hash=item1e82c99627

Can someone with any experience with this kind of projects tell me how moving of the steppers is done through an Arduino?
for example moving it let say... 10mm or something...

@nilton61
So basically I just need the right driver (TB6600 - type) and the right powser supply to get things running correctly?

Looking forward to the replies!

Best regards

Jazzy G

nilton61

Quote
@nilton61
So basically I just need the right driver (TB6600 - type) and the right powser supply to get things running correctly?


Both look fine to me, Good price as well.

mrbi11

You probably have an answer by now, but if not...

Generally steppers just move a step when "told". The common thing is 2 control pins, step and direction.
Set the direction forward/backward then pulse step and the controller makes it take one step.
I expect there are aurduino libraries for it, but if not you can look at github/repetier/firmware for sample C code

MarkT

How fast do you want to spin the motor?  If slow then connect it in series
and the TB6600 won't get nearly so hot (you'll need a big heatsink to
run it in parallel at 4A).

Normally a motor that big is driven by an industrial stepper drive module, its
not really a single-chip problem.

The power supply voltage to the chopper drive will set the maximum speed, note,
and parallel connection is needed for maximum speed as the winding impedance
is minimized.

Series connection allows lower current but you'll get lower top speed, should this
matter.

The AccelStepper library is probably useful to look at in the first instance, you'll
need to ramp-up and ramp-down that motor to avoid mis-steps...
[ I will NOT respond to personal messages, I WILL delete them, use the forum please ]

Robin2

#7
Aug 03, 2014, 09:43 am Last Edit: Aug 03, 2014, 09:45 am by Robin2 Reason: 1
If you intend to drive two or three motors it would probably be more economical to buy a single stepper driver board that can control all three - in essence three of the things you linked to on a single board. You should probably look for a 3-axis driver board.

In relation to selecting a power supply you should take into account that stepper motors draw full current even when they are not moving. That's how they hold position.

...R
Two or three hours spent thinking and reading documentation solves most programming problems.

Chagrin


Robin2


FYI this is a necrothread.


Well spotted, thanks.

(in contrast to the abuse I got elsewhere for making a similar  remark)

...R
Two or three hours spent thinking and reading documentation solves most programming problems.

Go Up