Cinta Transportadora + Arduino

Embed Size (px)

Citation preview

  • 8/10/2019 Cinta Transportadora + Arduino

    1/16

    Fecha:

    Mircoles 26 de Noviembre de 2014

    Introduccin

    Cintas transportadoras con detector de metal

    En un mercado competitivo es necesario ofrecer productos homogneos, de calidad y sin contaminantes a los

    clientes. Los sistemas de cinta transportadora con deteccin de metales ofrecen soluciones de inspeccin flexibles

    que se adaptan a una amplia gama de aplicaciones alimentarias y no alimentarias para todo tipo de cargas de

    trabajo, ya sean elevadas o bajas.

    Las bobinas de deteccin de metales rectangulares o cuadradas pueden integrarse con sistemas de cinta

    transportadora estndares o a medida con el fin de automatizar por completo los procesos de inspeccin de

    productos.

    Los sistemas se pueden disear y componer de modo que se adapten a los requisitos especficos de los procesos

    estos pueden variar desde sencillos sistemas de parada en caso de deteccin hasta sistemas completamente

    automticos de deteccin y rechazo, que usan una amplia gama de dispositivos de eliminacin.

  • 8/10/2019 Cinta Transportadora + Arduino

    2/16

    Los detectores de metales con cinta transportadora ofrecen soluciones flexibles que pueden funcionar en casi todos

    los entornos de trabajo. As que, independientemente de si el producto es hmedo, seco, refrigerado, congelado,

    suelto o envasado, los flexibles sistemas de cinta transportadora con deteccin de metales podrn ofrecer una

    respuesta a los retos de inspeccin alimentaria.

    Aunque la instalacin de un sistema de deteccin de metales puede reducir el riesgo, las posibilidades de que uncontaminante metlico llegue al consumidor final siguen siendo demasiadas en algunos casos. Las investigaciones

    apuntan a fallos de procedimientos y sistemas ms que a fallos relativos al detector de metales como la causa

    principal; sin embargo, la mejora de la diligencia debida aumenta el nivel de control y gestin del sistema de

    inspeccin, lo que garantiza que el circuito proporcione una deteccin de metales de alto rendimiento y un mayor

    nivel de funcionalidad a prueba de fallos.

    Variedad de sistemas de rechazo automtico

    Los sistemas de deteccin de metales con cinta transportadora se pueden configurar con una gama de sistemas de

    rechazo dinmicos totalmente automatizados. En el caso de los productos envasados, los sistemas de rechazo

    incluyen un sistema de sincronizacin por fotodetector para garantizar que siempre se rechazar el paquete

    adecuado. Estos sistemas tambin se pueden complementar con una amplia variedad de dispositivos de advertencia

    contenedores de recogida de productos de rechazo e innovadores sistemas a prueba de fallos opcionales para

    respaldar la conformidad.

    Mdulo Bluetooth HC-06

    El bluetooth es un estndar de comunicacin inalmbrica que permite la transmisin de datos a travs de

    radiofrecuencia en la banda de 2,4 GHz. Existen muchos mdulos Bluetooth para usarlos en nuestros proyectos de

    electrnica, pero los ms utilizados son los mdulos de JY-MCU, ya que son muy econmicos y fciles de encontrar

    en el mercado. Son mdulos pequeos y con un consumo muy bajo que nos permitirn agregar funcionalidades

    Bluetooth a nuestro Arduino. Estos mdulos contienen el chip con una placa de desarrollo con los pines necesarios

    para la comunicacin serie.

  • 8/10/2019 Cinta Transportadora + Arduino

    3/16

    Sin lugar a dudas la comunicacin va bluetooth ha logrado posicionarse como una de las favoritas para los usuarios

    de dispositivos mviles, sustituyendo a la anterior comunicacin Infrarroja (IR), y es que permite enlazar a los

    dispositivos de una forma inalmbrica y sin necesidad de estar relativamente cerca el uno del otro. Por esta razn es

    que distintas compaas se han empeado en facilitar cada vez ms el acercar este tipo de tecnologa para incluirla

    en nuestra vida diaria, tanto que ahora es posible encontrar mdulos bluetooth de bajo coste mismos que son

    totalmente configurables y de fcil implantacin en nuestros proyectos de electrnica.

    CONEXIN HC-06 Y ARDUINO

    Arduino uno R3

    Arduino es una plataforma de hardware libre, basada en una placa con un microcontrolador y un entorno de

    desarrollo, diseada para facilitar el uso de la electrnica en proyectos multidisciplinares.

    El hardware consiste en una placa con un microcontrolador Atmel AVR y puertos de entrada/salida. Los

    microcontroladores ms usados son el Atmega168, Atmega328, Atmega1280, ATmega8 por su sencillez y bajo coste

    que permiten el desarrollo de mltiples diseos. Por otro lado el software consiste en un entorno de desarrollo que

    implementa el lenguaje de programacin Processing/Wiring y el cargador de arranque que es ejecutado en la placa.

  • 8/10/2019 Cinta Transportadora + Arduino

    4/16

    Cdigo de Arduino

    #include

    unsigned long frec = 0UL;

    int LedAl = 2;

    int LedFe = 3;

    int FotoTrans = 4;

    int Motor = 6;

    int cntAl = 0;

    int error1 = 8;

    int error2 = 9;

    int cntFe = 0;

    int habilitar = 0;

    int velocidad = 0;

    int flag = 0;

    //**************************************************************//

    void setup() {

    Serial.begin(9600);

    pinMode(FotoTrans, INPUT_PULLUP);

    pinMode(LedAl, OUTPUT);

    pinMode(error1, OUTPUT);

  • 8/10/2019 Cinta Transportadora + Arduino

    5/16

    pinMode(error2, OUTPUT);

    pinMode(LedFe, OUTPUT);

    pinMode(Motor, OUTPUT);

    FreqCounter::f_comp = 81;

    FreqCounter::start(100);

    while (FreqCounter::f_ready == 0)

    frec = FreqCounter::f_freq;

    Serial.print("Frecuencia: ");

    Serial.println(frec);

    analogWrite(Motor, velocidad);

    }

    //**************************************************************//

    void loop() {

    if(velocidad != 0) {

    digitalWrite(error1, LOW);digitalWrite(error2, LOW);

    while(digitalRead(FotoTrans)) {

    FreqCounter::f_comp=81;

    FreqCounter::start(100);

    while (FreqCounter::f_ready == 0)

    frec=FreqCounter::f_freq;

    digitalWrite(LedFe, LOW);

    digitalWrite(LedAl, LOW);digitalWrite(error1, LOW);

    digitalWrite(error2, LOW);

    analogWrite(Motor, 55);

    flag++;

    if(velocidad == 55 || velocidad == 90) {

    if(flag > 24) {

    analogWrite(Motor, 0);

    velocidad = 0;

    flag = 0;

    digitalWrite(LedFe, LOW);digitalWrite(LedAl, LOW);

    digitalWrite(error1, HIGH);

    digitalWrite(error2, HIGH);

    frec = 0;

    break;

    }

    }

    else if(velocidad == 110 || velocidad == 130 || velocidad == 160) {

    if(flag > 15) {

  • 8/10/2019 Cinta Transportadora + Arduino

    6/16

    analogWrite(Motor, 0);

    velocidad = 0;

    flag = 0;

    digitalWrite(LedFe, LOW);

    digitalWrite(LedAl, LOW);

    digitalWrite(error1, HIGH);

    digitalWrite(error2, HIGH);

    frec = 0;

    break;

    }

    }

    else {

    if(flag > 10) {

    analogWrite(Motor, 0);

    velocidad = 0;

    flag = 0;

    digitalWrite(LedFe, LOW);

    digitalWrite(LedAl, LOW);

    digitalWrite(error1, HIGH);digitalWrite(error2, HIGH);

    frec = 0;

    break;

    }

    }

    flag++;

    habilitar = 1;

    }

    }

    if(habilitar) {

    analogWrite(Motor, velocidad);

    Serial.print("\n");

    Serial.print("Frecuencia: ");

    Serial.println(frec);

    flag = 0;

    if(frec == 0) {

    digitalWrite(LedFe, LOW);

    digitalWrite(LedAl, LOW);

    Serial.print("\n");

    Serial.println("\tERROR!!!");}

    else if(frec >= 119200 || frec

  • 8/10/2019 Cinta Transportadora + Arduino

    7/16

    Serial.println(cntFe);

    }

    else if(frec < 119200) {

    digitalWrite(LedFe, LOW);

    digitalWrite(LedAl, HIGH);

    digitalWrite(error1, LOW);

    digitalWrite(error2, LOW);

    cntAl++;

    Serial.print("\n");

    Serial.print("Aluminio: ");

    Serial.println(cntAl);

    }

    habilitar = 0;

    }

    if(Serial.available() > 0) {

    char comando = Serial.read();

    if(comando == '0') {

    analogWrite(Motor, 0);

    velocidad = 0;

    digitalWrite(LedFe, LOW);

    digitalWrite(LedAl, LOW);

    }

    else if(comando == '1') {

    analogWrite(Motor, 55);

    velocidad = 55;

    }else if(comando == '2') {

    analogWrite(Motor, 90);

    velocidad = 90;

    }

    else if(comando == '3') {

    analogWrite(Motor, 110);

    velocidad = 110;

    }

    else if(comando == '4') {

    analogWrite(Motor, 130);

    velocidad = 130;}

    else if(comando == '5') {

    analogWrite(Motor, 160);

    velocidad = 160;

    }

    else if(comando == '6') {

    analogWrite(Motor, 180);

    velocidad = 180;

    }

  • 8/10/2019 Cinta Transportadora + Arduino

    8/16

    else if(comando == '7') {

    analogWrite(Motor, 200);

    velocidad = 200;

    }

    else if(comando == '8') {

    analogWrite(Motor, 220);

    velocidad = 230;

    }

    else if(comando == '9') {

    analogWrite(Motor, 255);

    velocidad = 255;

    }

    else if(comando == 'r' || comando == 'R') {

    cntFe = 0;

    cntAl = 0;

    Serial.print("\n");

    Serial.print("\tREINICIAR");

    Serial.print("\n");

    Serial.print("\n");Serial.print("Aluminio: ");

    Serial.print(cntAl);

    Serial.print("\tHierro: ");

    Serial.println(cntFe);

    }

    else if(comando == 'C' || comando == 'c') {

    Serial.print("\n");

    Serial.print("\tCUENTA");

    Serial.print("\n");

    Serial.print("\n");Serial.print("Aluminio: ");

    Serial.print(cntAl);

    Serial.print("\tHierro: ");

    Serial.println(cntFe);

    }

    }

    }

    //************************************************************//

    Circuito para controlar la velocidad del motor

  • 8/10/2019 Cinta Transportadora + Arduino

    9/16

  • 8/10/2019 Cinta Transportadora + Arduino

    10/16

  • 8/10/2019 Cinta Transportadora + Arduino

    11/16

    Circuito Oscilador

  • 8/10/2019 Cinta Transportadora + Arduino

    12/16

  • 8/10/2019 Cinta Transportadora + Arduino

    13/16

  • 8/10/2019 Cinta Transportadora + Arduino

    14/16

    Aplicacin Android Utlizada

  • 8/10/2019 Cinta Transportadora + Arduino

    15/16

    Muestra la cuenta y frecucencia

  • 8/10/2019 Cinta Transportadora + Arduino

    16/16

    Muestra la cuenta actual

    Resetea la cuenta