Arduino + Step MOTOR + DRIVER = max rpm and torque

Hi,
I'm working on a project to modify the motor of a cine projector S8/16mm with a stepper motor to be able to control with Arduino...

For the moment I've here this motor :
LINK : http://www.slidesandballscrews.com/pdf/steppermotors/SY42STH47-1206A.pdf
and I'm using this driver
LINK : http://focus.ti.com/lit/ds/symlink/sn754410.pdf

The motor is powered with a 5V regulated circuit...

The idea is to be able to upload the max RPM of the motor with out loosing the torque and not use gears to accelerate...
The RPM that i need for the projector is : 1440RPM or 24 images for second...

So, maybe this is not the right motor, but someone have an idea on how can i work for this...
For the moment I'm using this sketch that i'v found on the WEB and that work really well but i can go at faster 60rpm
I've look on the web and there is nothing on how modify a cine projector with step motor, so maybe this can be a really good work to share with the community...

CODE :
/* Motor paso a paso de Copal


  • Programa para manejar un motor paso a paso unipolar extraido de una
  • unidad de disquette de 5'25. De acuerdo a la documentación que
  • he encontrado, este: "[...] motor paso a paso fabricado por
  • Copal Electronics, con 1,8 grados por paso y 96 ohmios por cada
  • vuelta (de la bobina), con una etapa central conectada a diferentes
  • cables [...]"
  • [Jones on A Worked Stepping Motor Example]
  • Es un motor paso a paso unipolar con cinco cables:
    • rojo: conector de alimentación, lo tengo a 5V y funciona bien
    • naranja y negro: bobina 1
    • marrón y amarillo: bobina 2
  • (cleft) 2005 DojoDave for K3
  • http://www.0j0.org | http://arduino.berlios.de
  • @author: David Cuartielles
  • @date: 20 Oct. 2005
    */
    int motorPin1 = 5; // PIN-es del Motor
    int motorPin2 = 10;
    int motorPin3 = 6;
    int motorPin4 = 11;
    int delayTime = 2; // Delay que determina la velocidad de giro
    int stepmotor = 0;
    void setup() {
    pinMode(motorPin1, OUTPUT); // Configuración de los PIN-es como salida digital
    pinMode(motorPin2, OUTPUT);
    pinMode(motorPin3, OUTPUT);
    pinMode(motorPin4, OUTPUT);
    }
    void loop() {
    for (int stepmotor = 0; stepmotor < 50; stepmotor++)
    {
    digitalWrite(motorPin1, HIGH); // Los pines se activan en secuencia
    digitalWrite(motorPin2, LOW);
    digitalWrite(motorPin3, LOW);
    digitalWrite(motorPin4, LOW);
    delay(delayTime);
    digitalWrite(motorPin1, LOW);
    digitalWrite(motorPin2, HIGH);
    digitalWrite(motorPin3, LOW);
    digitalWrite(motorPin4, LOW);
    delay(delayTime);
    digitalWrite(motorPin1, LOW);
    digitalWrite(motorPin2, LOW);
    digitalWrite(motorPin3, HIGH);
    digitalWrite(motorPin4, LOW);
    delay(delayTime);
    digitalWrite(motorPin1, LOW);
    digitalWrite(motorPin2, LOW);
    digitalWrite(motorPin3, LOW);
    digitalWrite(motorPin4, HIGH);
    delay(delayTime);
    Serial.println(stepmotor, DEC);
    }
    }

You most likely can't reach that speed from a 5V supply - there will be too much back-EMF from the motor. The 754410 can go up to a 36V supply which ought to be plenty but you will need to measure and limit current using PWM drive. There are many chips that have such abilities built in (they do their own PWM to limit current) - if the load to the motor is steady and low you can probably get away with driving it at a lower current but you will need to manage acceleration and deceleration via step pulses to get to a high speed, the motor can't respond instantly.

Ok... thanks a lot for your answer....

just, did you have a link for the PWM chip that i can buy ??

And the other things that i don't understand for the moment is :
With this new chip, i have to work with PWM output with arduino or i can just use the same sketch ?

Thanks but i'm starting with electronics....
And, i hope to be able to share soon this project...

Best

Hi, can i use this board tu run this motor and have the 1440 rpm that i need without loosing enough torque ??

LINK : Page Not Found - Creatron Inc

thanks

KinoLab

The L297/L298 combination does this, think its in several available controllers. I've used the L6208 - bit more complex, can have current programmed by an analog voltage per phase to implement arbitrary microstepping. The L6228 is a lower current cheaper L6208. There are plenty more, try searching on digikey or similar supplier's site.

Hi, thanks for your answer,
En reality now the first problem is to found the adapt motor like this maybe : LINK : 24Y - High Torque Stepper Motor

I think that when i found a motor that can respect the 1440 RPM with a Max Torque of 1.4kg/cm ( this is the torque that i need...),
I can start to look for a driver...

So I'm just looking to found the right motor for the moment and I'm loosing in the world of step motor...

best

KinoLab