electronics forum

Rules | Recent posts | topic RSS | Search | Register  | Log in

Hard Disk Motor Controlling


Post new topic  Reply to topic    EDAboard.com Forum Index -> Microcontrollers -> Hard Disk Motor Controlling
Author Message
rajudp



Joined: 27 May 2006
Posts: 238
Helped: 10
Location: India


Post31 Jan 2007 11:54   

hard disk motor


Please anybody give information about hard disk motors. it is having 3 pins and showing same resistance between them

with regards

raju
Back to top
RollingEEE



Joined: 25 Mar 2006
Posts: 208
Helped: 4
Location: Bangladesh


Post31 Jan 2007 13:28   

harddisk motor


Hey, I have one of them too.
I just tried to apply 9V between 2 terminals while keeping the 3rd terminal open. The motor rotated few degrees. By choosing seperate pairs of wire serially and applyingvoltage across them you can rotate the motor. Alternatively, you can use a microcontroller, and an optocoupler to drive the motor.
Back to top
rajudp



Joined: 27 May 2006
Posts: 238
Helped: 10
Location: India


Post02 Feb 2007 20:04   

hard disc motor


yes you are right . but how to control it. and how the pins are used for proper operation
thanks and regards
raju
Back to top
kender



Joined: 19 Jun 2005
Posts: 1231
Helped: 88
Location: Stanford, SF Bay Peninsula, California, Earth, Solar System, Milky Way


Post02 Feb 2007 21:11   

change hard disk motor


I'm almost certain that your disk has a brushless DC (BLDC) motor. Since it has only 3 leads, I think, it's a sensorless BLDC. I've never worked with such motors, but if you google "BLDC" or "sensorless BLDC", you'll get a tonn of app notes with schematics, algorithms and code.
Back to top
Google
AdSense
Google Adsense




Post02 Feb 2007 21:11   

Ads




Back to top
E-design



Joined: 01 Jun 2002
Posts: 947
Helped: 68


Post03 Feb 2007 1:22   

how to use a harddisk motor


I think if you generate a 3 phase switching supply it should run. Never tried it myself.
Back to top
RollingEEE



Joined: 25 Mar 2006
Posts: 208
Helped: 4
Location: Bangladesh


Post03 Feb 2007 7:48   

how to run a 3 wire hard disk motor


I used this code for my AT89S52 microcontroller. Please remember to use an optocoupler to isolate the microcontroller pins from any direct electric contact with the motors, and also use a current amplifier to avoid toasting your optocoupler.



#include "reg52x2.h"

/*

* FUNCTION_PURPOSE: This file set up timer 0 in mode 2

* with a software gate.



duty = (256-RL_OFF)/[512-(RL_ON+RL_OFF)]

*/



#define fCrystal 20000 /* in kilohertz */
#define fPWM 1 /* rotation speed in RPS */
#define Instr_Per_Cycle 12
#define Duty 100 /*percent*/

#define RL_ON_C (256 - Duty * fCrystal / fPWM / Instr_Per_Cycle)
#define RL_OFF_C (512 - RL_ON_C - fCrystal / fPWM / Instr_Per_Cycle)

unsigned char RL_ON = RL_ON_C, RL_OFF = RL_OFF_C;

bit flag = 0;
unsigned char stat = 1;

unsigned int count = 0;



void main(void)

{

TMOD &= 0xF0; /* Timer 0 mode 0 with software gate */

TMOD |= 0x02; /* GATE0=0; C/T0#=0; M10=1; M00=0; */

TH0 = RL_ON; /* init values */

TL0 = RL_ON;

ET0=1; /* enable timer0 interrupt */

EA=1; /* enable interrupts */

TR0=1; /* timer0 run */

P2_0 = 0; /* Initialize P2.0 */

while(1); /* endless */

}





void it_timer0(void) interrupt 1 /* interrupt address is 0x000b */

{

TF0 = 0; /* reset interrupt flag*/

if (flag == 1)

{
TH0 = RL_OFF;
if (stat == 0)
{
P2_0 = 1;
P2_1 = 0;
P2_2 = 0;
stat = 1;
}
else if (stat == 1)
{
P2_0 = 0;
P2_1 = 1;
P2_2 = 0;
stat = 2;

}

else if (stat == 2)
{
P2_0 = 0;
P2_1 = 0;
P2_2 = 1;
stat = 0;

}
}

if (flag == 0)

{

TH0 = RL_ON;

}

count++;

if (count == 1000)

{

if (P1_0 == 0) RL_ON++;

if (RL_ON >240) RL_ON = 240; // Upper limit

if (P1_1 == 0) RL_ON--;

if (RL_ON < 16) RL_ON = 16; // Lower Limit

RL_OFF = 512 - RL_ON;

count = 0;

}

flag = ~flag;



}

Added after 7 minutes:

I forgot to mention:

Pin P2.0 P2.1 P2.2 should be connected to motor's 3 wires. If your motor does not rotate, try different combinations of motor wires and pins

Added after 8 minutes:

And in case you forgot, there is a 'helped me' button to press if you have found this information helpful.
Back to top
faraz101



Joined: 07 Mar 2007
Posts: 97
Helped: 2


Post18 Mar 2007 6:44   

running a three phase hard disk motor


READ MICROCHIP REFERENCE DOCUMENT "AN857" ABOUT CONTROLLING BLDC MOTOR.THEY HAVE VERY NICE EXPALINATION ABOUT THAT
Back to top
Arabic versionBulgarian versionCatalan versionCzech versionDanish versionGerman versionGreek versionEnglish versionSpanish versionFinnish versionFrench versionHindi versionCroatian versionIndonesian versionItalian versionHebrew versionJapanese versionKorean versionLithuanian versionLatvian versionDutch versionNorwegian versionPolish versionPortuguese versionRomanian versionRussian versionSlovak versionSlovenian versionSerbian versionSwedish versionTagalog versionUkrainian versionVietnamese versionChinese version
Post new topic  Reply to topic    EDAboard.com Forum Index -> Microcontrollers -> Hard Disk Motor Controlling
Page 1 of 1 All times are GMT + 1 Hour
Similar topics:
hard disk (1)
Share a Hard disk.... (10)
xbox hard disk (1)
SATA hard disk (12)
hard disk prepearing (1)
Hide Hard disk (2)
Hard disk on usb port (17)
cadstar 4.5 (hard disk number) (1)
where is small hard disk? (7)
Direct writing on Hard disk (5)


Abuse || Administrator || Moderators || Support us || sitemap
topic RSS