domingo, 14 de febrero de 2016

Arrancador suave Arduino (Softstarter)



Introducción:
Hoy en día los motores eléctricos son ampliamente empleados en la industria, para accionar puertas eléctricas, eslabones de un robot, bandas transportadoras, entre otras muchas aplicaciones. El arranque de un motor es crítico, ya que los motores eléctricos demandan una cantidad elevada de ésta durante el arranque. Se presentarán tres diferentes formas de arrancar un motor eléctrico y se mostrarán los resultados programando éstos arranques en una tarjeta Arduino Leonardo.

Paso 1:
Durante el arranque de motores eléctricos, la corriente que demanda el motor puede llegar hasta 7 veces la corriente nominal, la corriente de operación normal. Se requiere una corriente muy alta en el arranque ya que se pretende vencer la inercia. Cuando un motor eléctrico está parado (en reposo) y comienza a girar, los componentes mecánicos requieren de un “esfuerzo extra” para empezar a girar, lo que se traduce en una corriente alta al inicio.

Se han desarrollado diferentes estrategias para evitar los altos valores de corriente en el arranque. Las siguientes gráficas muestran 3 formas diferentes de arrancar un motor eléctrico y el comportamiento de la corriente y el par. Los 3 métodos de arranque son: directo, estrella-triángulo y arranque suave.

Gráficas del comportamiento de tres tipos de arranques (Siemens)
Paso 2:
En este proyecto se probarán los tres tipos de arranque arriba mencionados. Hoy en día, existen en la industria componentes especializados para generar un arranque suave, el cual es la mejor opción para arrancar un motor eléctrico.

La solución que se propone aquí, consiste en emular un arranque suave. Esto significa más líneas de código en el programa, sin embargo se ahorrará ya que no será necesario un arrancador. Se incrementa el software y se reduce el hardware.

Arrancador industrial (Siemens)

Para simular un arranque suave se empleará el módulo PWM de Arduino. Los valores admisibles varían de 0 a 255. La siguiente tabla muestra los valores asignados para los 3 tipos de arranque, mientras que la gráfica representa los valores de la tabla, donde 255 es el equivalente a 5 Volts y 0 equivale a 0 Volts.

Valores asignados para los tres tipos de arranques

 
Representación gráfica de los 3 arranques

Paso 3:
Se empleará una tarjeta Arduino Leonardo para el proyecto. La función analogWrite, permite modular el ancho de pulso del la salida del pin (PWM), por lo que el voltaje de salida se puede modificar entre 0 a 5 Volts. Para un arranque estrella-triángulo se arranca con un 58% del valor nominal (2.9 Volts). Parra el arranque suave se inicia con un 45.1% (2.3 Volts). Aquí se muestra el código para cada uno de los tipos de arranques controlándolo con el puerto serial.

/****** Arrancador suave (Soft starter) ***** //
 * Escrito: AMS
 * 
 */

int Informacion_Serial;
int Voltaje_Motor=3;                  // Puerto de salida

void setup() {
  pinMode(Voltaje_Motor, OUTPUT);     // Configuración del puerto
  Serial.begin(9600);
  Serial.println("0==> Parar, 1==> Directo, 2==> Estrella-delta, 3==> Arranque suave");
}                                     // 

void loop() {
    
    if(Serial.available()>0) {
      Informacion_Serial=Serial.read();

      switch(Informacion_Serial) {

        case '0':
          Serial.println("Paro"); 
          analogWrite(Voltaje_Motor, 0);      // Apagar      
          break;
              
        case '1':
          Serial.println("Arranque");        
          analogWrite(Voltaje_Motor, 255);    // Arranque directo

          break;

        case '2':
          Serial.println("Arranque Estrella-triangulo");        
          analogWrite(Voltaje_Motor, 148);    // Arranque Estrella
            delay(700);                      // triángulo (58%)
          analogWrite(Voltaje_Motor, 255);
          break;
   
        case '3':
          Serial.println("Arranque suave");
          analogWrite(Voltaje_Motor, 115);    // Arrancador suave
            delay(700);                      // (45.1 %)
          analogWrite(Voltaje_Motor, 145);
            delay(700);
          analogWrite(Voltaje_Motor, 175);
            delay(700);
          analogWrite(Voltaje_Motor, 205);
            delay(700);
          analogWrite(Voltaje_Motor, 235);
            delay(700);   
          analogWrite(Voltaje_Motor, 235);
            delay(700);  
          break;   
        }
    }
}

La comunicación con el Arduino se realizará mediante el puerto serie, así es como se asignarán las instrucciones.

Circuito para los 3 tipos de arranques

En el siguiente video se puede apreciar los tres tipos de arranques.



6 comentarios:

  1. Y que circuito fue? que transistor utilizaste?

    ResponderBorrar
  2. Estimado si quisiera arrancar un motor de 150kw en forma directa, como seria?? que debo utilizar contactor?? gracias

    ResponderBorrar
    Respuestas
    1. de 150kw es muy grande, claro que puedes arrancarlo con un contactor, pero te demandará demasiada corriente. Lo usual es arrancarlo en un arreglo de contactores estrella-delta o con un arrancador a tensión reducida.

      Borrar
  3. Se podría adaptar para una bomba de 2cv de potencia?
    Qué cambios serían necesarios?
    Gracias

    ResponderBorrar
  4. hola como haria para controlar por pulsadores el simulador de 3 tipos de arranques estoy aun aprendiendo

    ResponderBorrar
  5. cual es el codigo del transistor pleaseeeee

    ResponderBorrar