Control de motor HDD de disco duro con Arduino

Hola amigos estoy intentando controlar un motor hdd de tres hilos con Arduino Nano y por el momento si consigo mover el motor pero el control queda aun lejos.

Solo uso el Nano sin controlador ESC según leo se necesitan 3 ciclos desfasados 120º cosa que no se representar en código.

Por el momento el motor de HDD anda un poco con este SKETCH:

int MotorPin1 = 3; 
int MotorPin2 = 5;
int MotorPin3 = 6;

void setup() 
{
   pinMode(MotorPin1, OUTPUT);     
   pinMode(MotorPin2, OUTPUT);
   pinMode(MotorPin3, OUTPUT);

}

void loop() {
   digitalWrite(MotorPin1, HIGH);  
   delay(64);     
   digitalWrite(MotorPin1, LOW); 
   delay(0);     

   digitalWrite(MotorPin2, HIGH);  
   delay(64);     
   digitalWrite(MotorPin2, LOW); 
   delay(0); 

   digitalWrite(MotorPin3, HIGH); 
   delay(64);    
   digitalWrite(MotorPin3, LOW); 
   delay(0); 
}

Alguien sabe como controlar este tipo de motores? o representar un ciclo de 3 fases desfasadas 120º cualquier ayuda sera bienvenida!

Un saludo a todos.

las fases estan correctamente desplazadas 120º

con los delays que has puesto giraria a 312 rpm si no he calculado mal aprox

si ves que no va bien, es posible que no estés excitando las bobinas en el orden correcto, prueba a intercambiar dos de las conexiones entre si.

Vale voy a probar y comento a ver que tal va. Muchas gracias.

Edito:

Nada he cambiado los cables 100 veces y nada todo igual.

Alguien a reciclado alguna vez un motor de estos? Que me eche un cable por favor.

Muchas gracias.

nada estoy pensando que lo de intercambiar los cables vale para motores pap pero para un brushless de tres hilos no, solo conseguimos que gire en un sentido u otro

pon mucho mas retraso (1 segundo) y comprueba la tensión en las salidas con el motor conectado, y luego sin el motor a ver que puede pasar

[vídeo en funcionamiento ](http://Control de Motor HDD: Control de Motor HDD - YouTube)

Aquí la prueba de como gira he subido un video para que puedas verlo bien, Yo creo que él problema es la poca potencia de salida de los pines de Arduino intentaré conectarlo a la fuente atx y manejarlo desde Arduino seguiremos probando cosas porque este tema tiene mucha demanda estos motores los usan en robótica y aeromodelismo eso sí con un controlador ESC que en eBay cuesta más o menos 6 €. Pero si me lo puedo ahorrar mejor.

En cuanto tenga noticias lo subiré. Un saludo.

Bueno a ver que tal esta pagina (Howto) Walz a Hard Drive Spindle Motor

Esta con circuito pero no tiene código. Solo debes generar una frecuencia que sirva de clock al 74LS164 que genera los pulsos defasados.

Y esto esta mucho mejor usando AccelStepper librería de arduino y controlando tu motor

De acá obtienes mejor información sobre AccelStepper

Me gusta la segunda AccelStepper con el Pololu A4988.

Con el primer enlace... no se tengo dudas he leido todo el post y hasta el mismo dice que no es la mejor manera de manejar un motor brushless.

Voy a probar con pololu a ver que tal porque lo he visto por ebay a 1.35€

Muchas gracias Surbyte como siempre muy acertado : ) eres un crack!!

He encontrado algo interesante probare un poco cuando llegue a casa qu eestoy en el curro.

MANUAL MOTOR HDD EN INGLES CON CODIGO