Driving a stepper motor with LB1656m

Status
Not open for further replies.

Wingmax

New Member
Hi every one, has anyone tried to drive a stepper motor from a old 5.25" floppy disk drive? The reason why I chose this was because it has a stepper motor already wired up to the driver IC, which is LB1656M. Trouble is the data sheet for the IC from Sanyo hasn't got enough information. All I got is the timing diagram. I can only make the IC to drive the motor continuously or not rotating at all. I can't stop the motor once it's in motion, and I can't make it move to the number of steps I want. Has anyone tried this IC before? Please help.
 

Hi,
Can you post a diagram showing how you have connected and how you are driving the LB?
 
Driving stepper motor with LB1656M

Hi Eric,
Thanks for replying. Please refer to attached pdf file for diagram for LB1656m.
The whole assembly is from an old 5.25" floppy disk drive. The motor, PCB with driver IC etc. I disconnected it's micro controller and connect a PIC16f84 in it.
I connected RB1 (from PIC) to D1, RB2 to D2 and RB3 to PS. The rest of wiring was untouched.
With reference to the timing chart, the programming code I wrote was:

RB3 = 0;
RB1 = 1;
RB2 = 0; delayMs(2); //Delay 2 mS

RB1 = 1;
RB2 = 1; delayMS(2);

RB1 = 0;
RB2 = 1; delayMs(2);

//Up to this point, I can hear the motor tries to spin and I
//can feel the shaft is vibrating, but nothing happens. If I continue

RB1 = 0;
RB2 = 0;

//Now the motor will continuously spinning. I can't stop it.


The delay time has to be more than 1 mS otherwise motor just won't turn.

Thanks for listening and please advise what I did wrong.

 

Attachments

  • LB1656M.pdf
    53.2 KB · Views: 840
I would suggest throwing the controller chip away, and use four transistors to drive it - it's simple then to do what you want with it!.
 
Last edited:
hi,
I have looked thru the datasheet, from the simple description of the PORT signals I can see that you appear to be sending 2millsec signals in quadrature.

The data sheet says they should be 10KHz, but you say the motor will not run if you send faster than 2mSec.

I would use a scope and make sure that the drive signals are in quadrature and are of the form you are expecting.

Are you sure the old FDD is OK and not an earlier scrapped drive.

There are so many better ways to drive the motor,eg: H Bridge with possibly PWM from your PIC.
 
ericgibbs said:
There are so many better ways to drive the motor,eg: H Bridge with possibly PWM from your PIC.

You don't need an H-Bridge for a uni-polar stepper, like I mentioned above you just need four transistors. Here's a board I built for my tutorials (haven't got round to writing it yet though!), I used it to feed old 5.25 inch floppy steppers.
 
Nigel Goodwin said:
You don't need an H-Bridge for a uni-polar stepper, like I mentioned above you just need four transistors. Here's a board I built for my tutorials (haven't got round to writing it yet though!), I used it to feed old 5.25 inch floppy steppers.

hi Nigel,
Thank you for the info, but I know, I am just trying convince the OP, as you are, there are better ways to get the job done..

I have got 1 or 2 old drives lying around, but I dont have much use for them, I don't do robots, thats where I see most of the members are using the old motors..I think?

I will look at your motor tutorial and perhaps write a driver, just for interest.
 
ericgibbs said:
I will look at your motor tutorial and perhaps write a driver, just for interest.

There isn't a motor tutorial, I did the board, but never got round to writing the tutorial - the code I wrote towards it though used timer interrupts and two tables (one for forwards, one for reverse) to generate the steps. You simply set the direction and number of steps in registers, and the interrupt routine did the rest. It also implemented full or half stepping (using four tables).
 
hi,
Looked at the motor circuit drawing, as you say its just 4 transistors, very basic, BUT it gets the job done!

The program is straight forward, if I do knock up a program to suit, would you prefer the table/interrupt approach? ...... to keep it line with the rest of the tutorials.
 
ericgibbs said:
hi,
Looked at the motor circuit drawing, as you say its just 4 transistors, very basic, BUT it gets the job done!

It's all that's needed, driving steppers is really VERY easy

The program is straight forward, if I do knock up a program to suit, would you prefer the table/interrupt approach? ...... to keep it line with the rest of the tutorials.

My plans for the tutorial was to start with a simple 'MOVLW, MOVWF, Call Delay' program loop, with each MOVLW being a different step. Next I was going to move to a program loop and table for the steps, then an interrupt driven table method.
 
Stepper motor driver

Nigel Goodwin said:
You don't need an H-Bridge for a uni-polar stepper, like I mentioned above you just need four transistors. Here's a board I built for my tutorials (haven't got round to writing it yet though!), I used it to feed old 5.25 inch floppy steppers.


Hi Nigel,
Thanks for the suggestion. I've seen your motor driver circuit. It is very simple and effective. . The reason I used that old board was because everything is there. the motor, deck, PCB etc, but without enough information would make it 3 times harder. I will try your method. But with a known controller it's just as easy. At lease all the suppresion diodes are in place, and quite often you only need 3 control line to drive the motor, backward, forward, positions, speed.

Thanks for the advice anyway.

Regards,
 
stepper motor driver

Hi Eric,
thanks for the suggestion.
I think I might forget this LB1656m and try Nigel's suggestion and a different controller, e.g L293D. This is a inexpensive IC and very easy to use.

Regards,

 
stepper motor driver

Thanks Nigel for the circuit. It's very simple and effective. But with a known controller it should be just as easy. All the suppression diodes are there already, and quite often you only need about 3 control lines to drive the motor.

 
Status
Not open for further replies.
Cookies are required to use this site. You must accept them to continue using the site. Learn more…