meus motores possuem 6 fios, 2 comuns(vcc) e 4 passos.
O meu software faz o motor girar para ambos os sentidos dependendo do botão escolhido, fiz isso usando uma rotina em assembly RR(rotate right) e RL(rotate left).
Voce ligou o ULN2004 em 4 saídas do microcontrolador e está usando acionando o motor em "Phase Drive", não é?
E a rotação está ocorrendo nos dois sentidos?
O problema está na velocidade pois não estou conseguindo girar o motor em velocidades menores que 250ms. Quando eu coloco 200ms ele fica travado. O que posso fazer? O suporte da Akiyama me passo um manual usando relés para acionamento, será que dá certo?
Dependendo da forma como ligou os enrolamentos do motor, o torque pode ter sido reduzido, teria como enviar um esquema elétrico de seu circuito... voce talvez tenha ligado diodos em anti-paralelo com os enrolamentos. Isso reduz o torque em velocidades maiores.
Além disso, quando a velocidade aumenta, o torque do motor tende a diminuir. Por isso, o ideal seria acionar o motor usando um circuito do tipo chopper, a placa CNC3AX, que o Fábio sugeriu. Ou então aumentar a tensão e colocar resistores em série com os enrolamentos, o chopper é mais caro, mas permite um desempenho muito superior.
Para escolhar a melhor opção, voce deve determinar ou estimar qual a velocidade e o torque que voce precisa alcançar com seu circuito.