Page 1 of 3

How to control the motor

PostPosted: Mon May 30, 2011 3:57 am
by aelginfluensa
Hi

I started looking into this project again, but I haven't come very far..

What I am thinking of now is how to control the motor (without Arduino). I have found a map over the pins here: http://www.interfacebus.com/PC_Floppy_Drive_PinOut.html. But how to talk to them? To make them go low, you connect them to ground?

Could you please give some advice on how to connect the pins! It is hard to see how you have done it on the videos..

Many thanks!

Re: How to control the motor

PostPosted: Mon May 30, 2011 4:49 pm
by aelginfluensa
Allright, I did some haxing on my own.. with the help of http://www.codeproject.com/KB/system/floppystepper.aspx, who only used the step motor of the floppy.

I connected pin 14 to ground (with a thin cable) to select Drive A. Then if I connected pin 20 to ground the heads moved one hack forward, and moved again when I removed the pin. If I connected pin 18 to ground the heads moved backwards instead.

Re: How to control the motor

PostPosted: Wed Sep 28, 2011 6:15 am
by Paleorama
Hi Aelginfluensa,

How far did you get with the project?

pin 14 is for connecting drive 0, that's right
pin 18 is for direction and 20 requires a pulse in (anyone knows if it can be driven by a 555 timer?)
pin 10 is for turning on the spindle motor, it needs to be on to write to the current track.

at first I thought the write enable pin (24) had to be LOW to write audio to the disk but that wasn't at all required.
in fact, I wasn't able to turn on the motor if the write enable was on.

Re: How to control the motor

PostPosted: Sat Oct 01, 2011 5:28 pm
by mcanulty
Thanks Peleorama, yes, I believe it can be driven by a 555, I eventually used an arduino to pick up the pulses and then I used them for timing and made my own pulses with the arduino digital pins. If you're using a 555, just be sure to to keep the signal voltage at 5v, you don't want to give too high a voltage to the digital inputs on the floppy drive.

Re: How to control the motor

PostPosted: Wed Oct 05, 2011 9:18 am
by Paleorama
Thanks, I'll keep that in mind. I'll soon be building 555-timers and OP-amps for in/out-put signals.
I'll post the schematics here if I get it working. Already found a nice OP-amp IC that is driven by 5V.

Do you know what frequency the arduino PWM pulse is in the default stepper-sketch that is included in the arduino app?
I couldn't find any indications anywhere and I'm not so sharp at programming. :)

Re: How to control the motor

PostPosted: Sat Oct 08, 2011 1:37 am
by mcanulty
Off-hand I don't, but I encourage you to open up the avr atmega328 data sheet and set the pwm rate to whatever you want. It seems a bit scary, but it's very simple and it's empowering to realize that you can set things the way you want them to be. I just open up a notebook and I walk through it bit by bit. 'this bit needs to be set, this bit needs to be zero, this bit needs to be...etc.' And then once that's done, I start to program it in and I see what happens.

Although, for drive signals, you might have good luck just flipping a bit, calling a delay function, and then flipping it again. For motor control pwm might be useful, but not for stepper motors, only for current driven motors. Anyway, this is probably my lack of knowledge about the stepper program speaking, if you direct me to a specific setup and pinout I can try to apply myself more specifically and see if I can be of better assistance.

Re: How to control the motor

PostPosted: Sat Oct 08, 2011 1:41 am
by mcanulty
I took a programming class once, a long time ago, when I was a freshman undergraduate, and I didn't learn a lot of useful stuff, but I remember the exams were on paper, we had to write down programs on paper. I think of that sometimes when writing in my notebook. If it compiles right on the page, it should have a good chance on the phosphor! or lcd or led or whatever it is now :)

Re: How to control the motor

PostPosted: Sat Oct 08, 2011 1:45 am
by mcanulty
If you have trouble with the op amps, let us know, user guest has enormous op amp knowledge and will probably be able to write up helpful posts with regards to that which may result in something good that can be put up on the main site as well. Working with the floppy audio project was how I learned not to be afraid of them and to gradually get a feeling for them. They're not so scary, in fact they're designed to take the scariness out of analog electronics. Op amps are our friends! :)

Re: How to control the motor

PostPosted: Wed Oct 12, 2011 5:59 pm
by kris_mcdougall
Hey guys. I really admire your work. I'm hoping to get three or four of these drives wire together and then build a patch to control them in Pd. For now, though, I'm having trouble getting the stepping motor to do it's thing.

I grounded pin 16 to get the motor to run (pin 10 didn't do anything, even with pins 10 and 14 grounded to "select A/0... I guess this Samsung drive thinks it's a 'B/1'?) Also strange, grounding it to any of the odd-numbered pins on the connector did nothing; I had to go solder a ground to the Molex connector. But the motor spins just by connecting pin 16 to ground.

Grounding pin 12 lights up the front LED for some reason, even with no diskette in the drive... this is the pin I have to ground to select drive "B/1" right? Joining pins 8 (index pulse) and 20 (step pulse) does nothing. The only way I've gotten the stepper motor to move at all is by grounding both 12 (select 1/B) and 20 (step pulse) simultaneously. This causes the stepper motor to start stepping back and forth rapidly, even once contact is broken. This doesn't stop until I either turn on the motor or eject the disk.

I'm really puzzled. Any suggestions?

Re: How to control the motor

PostPosted: Thu Oct 13, 2011 12:06 am
by mcanulty
Hey Kris! Can you post a picture or drawing of the port you're looking at? Then maybe we can start drawing in labels and connections and things like that and see if we can make sense of things.