Asked — Edited

Using And H-Bridge 2.5 Amp Motor Controller To Control Stepper Motors?

Ok...I am trying this again - hopefully someone can help me figure it out...

I have a few of these little stepper motors and was wondering if anyone could shed some light on compatibility with the 2.5 amp motor controller...or any other controller. Here is the data sheet;

http://www.nmbtc.com/pm-step-motors/engineering/pdf/Drive-Circuitry-and-Wiring.pdf

The motors are Pm355-048-snc9 versions - they are housed in an older polycom/sony pan/tilt camera mount. I was hoping that I might be able to use a single h-bridge to control them, but I am thinking thinking that I might need two h-bridges (if that is possible on one EZ-B board)- one for pan and one for tilt.

Please help me figure this out....I am stumped!

Thanks, Wayne


ARC Pro

Upgrade to ARC Pro

Unleash your creativity with the power of easy robot programming using Synthiam ARC Pro

PRO
Canada
#25  

Just uploaded a video example of driving a stepper motor with ARC, and ez-bv4, and a dual H-bridge.

#26  

And to make it reverse direction would you set the PWM pins as a negative speed or set the 1-4 pins the opposite sequence?

Also if you wanted the motor to move plus or minus 45 degrees and stop how would you tell the script that?

Thanks

PRO
Canada
#27  

Well I'll do you one better and attach my stepper project file for you. The project includes scripts for Fullstepping in the clockwise & counter clockwise directions and Half stepping in the clockwise & counter clockwise directions.

Stepper.EZB

The degrees in which you would like to move depends on the steps/degrees that your particular stepper moves. Hypothetically, say it's 1 step per degree, then 45 steps would be 45 degrees. Here would be an example of 45 degrees of movement:


REPEAT($y, 0, 44, 1)
  $x = 10
 Set(D1, ON)
 Set(D3, OFF)
 Set(D2, OFF)
 Set(D4, ON)
 Sleep($x)
 Set(D1, OFF)
 Set(D3, OFF)
 Set(D2, ON)
 Set(D4, ON)
 Sleep($x)
 Set(D1, OFF)
 Set(D3, ON)
 Set(D2, ON)
 Set(D4, OFF)
 Sleep($x)
 Set(D1, ON)
 Set(D3, ON)
 Set(D2, OFF)
 Set(D4, OFF)
 Sleep($x)
ENDREPEAT

So this code sample will Repeat a fullstep sequence 45 times, here are what the values in the repeat loop represent:

0 = start value 44 = end value 1 = increment by 1

If the stepper seems to be skipping steps our moving backward at times you may have to change either the code or the stepper wires to be in the proper sequence or it might be moving too fast. If speed is the issue, just increase the $x value to slow the stepper down.