This forum uses cookies
This forum makes use of cookies to store your login information if you are registered, and your last visit if you are not. Cookies are small text documents stored on your computer; the cookies set by this forum can only be used on this website and pose no security risk. Cookies on this forum also track the specific topics you have read and when you last read them. Please confirm whether you accept or reject these cookies being set.

A cookie will be stored in your browser regardless of choice to prevent you being asked this question again. You will be able to change your cookie settings at any time using the link in the footer.

  • 0 voto(s) - 0 Media
  • 1
  • 2
  • 3
  • 4
  • 5
Consulta error en manejo reles
#1
Hola tengo un problema en el control de dos reles por arduino desarrollo el funcionamiento deseado
1 al pisar el primer pedal "avanceIN" tiene un sensor magnetico activa una fresadora "corteCanto" 3 segundos despues activa un rodillo "avanceOUT"
2 AL Pisar un segundo pedal "tijeraIN" desactiva la fresadora "corteCanto" y el rodilEL PROBLEMA lo "avanceOUT"
3 Hay un interruptor para que en posicion off mantenga desactivada la fresadora "corteCanto" aunque se pise el pedal "avanceIN" Y mantenga activado siempre "avanceOUT". y en posicion on permita el funcionamiento de los pasos 1 y 2.
El problema es que en posicion off se activa y desactiva la fresadora " corteCanto" mientra se pisa el primer pedal.
añado comentarios al codigo para que se vea mejor.
cualquier ayuda de mejora del codigo es bienvenida.
gracias


Código:
const int avanceIN = A5; //entrada sensor magnetico pedal avance
const int tijeraIn = A1; // entrada sensor optico corte tijera
const int avanceOUT = 9; //salida activacion rele rodillo cola
const int corteCanto = 12; //salida activacion rele fresadora aspiracion

const int paroMarcha= 11; //interruptor paro y encendido Para dejar HIGH rodillo cola y LOW la fresadora.
int optoValor;
int magnetValor;
int control;
int enciende;
int apaga =0;

void setup() {
 
    pinMode(avanceIN,INPUT);
    pinMode(avanceOUT,OUTPUT);
    pinMode(tijeraIn, INPUT);
    pinMode(cortecanto,OUTPUT);
    pinMode(paroMarcha,INPUT);
    digitalWrite(corteCanto,LOW);
    digitalWrite(avanceOUT,LOW); 
   
}

void loop(){
   
      control=digitalRead(paroMarcha);
     
  if (control==LOW){
        digitalWrite(avanceOUT,HIGH);
        digitalWrite(corteCanto, LOW);
      enciende=1; // mantener en off fresadora y permitir activacion y desactivacion de rodillo
  }

  else if (enciende!=apaga ){
        digitalWrite(avanceOUT,LOW);
        digitalWrite(corteCanto, LOW);
        enciende=0; // permitir activacion y desactivacion de rodillo y fresadora
    }
    optoValor=analogRead(tijeraIn);//lectura sensor optico

  if (optoValor >800){
      digitalWrite(corteCanto, LOW);
      digitalWrite(avanceOUT,LOW);
      delay(1000);
  }   
      magnetValor=digitalRead(avanceIN);
     
  if (magnetValor==LOW && enciende==0){
      digitalWrite(cortecanto,HIGH); //activacion fresadora
      delay(3000);
      digitalWrite(avanceOUT,HIGH); //acivacion rodillo
  }
     
}
  Responder
#2
Buenos días.

Para poder ayudarte necesito saber varias cosas:

¿Qué placa usas? Arduino Uno, Mega 2560 ??, para que al compilar no me dé problemas de placa.

Has generado la constante

Código:
const int corteCanto = 12; //salida activacion rele fresadora aspiracion

Pero luego, a lo largo del programa la llamas de todo menos así

Código:
pinMode(cortecanto,OUTPUT);

Error muy frecuente entre "novatos", yo también lo tenía en su momento, e incluso ahora también lo tengo, menos, pero lo tengo.

Por lo que el programa me da errores de compilación, arregla esto lo primero y comprueba que el programa conforme lo tienes, compila, y luego seguimos.

Pero si la maquina funciona, es porque le has cargado el programa, por lo tanto, sube el programa conforme lo has cargado al Arduino.

Por lo que he podido leer, en la explicación de lo que quieres que haga el programa, expones uno de los pasos

Cita:El problema es que en posición off se activa y desactiva la fresadora " corteCanto" mientras se pisa el primer pedal.

Que luego no lo veo la orden en el programa, por lo tanto no lo va a hacer nunca, El programa no va ha hacer nunca nada que tu no le hallas escrito, no es "adivino"

Un saludo.
  Responder


Posibles temas similares…
Tema Autor Respuestas Vistas Último mensaje
  ayuda y consulta CARLOSASSET 1 67 21-03-2023, 11:50 PM
Último mensaje: asesorplaza1
  CONSULTA Secuenciador manual con 3 reles y un pulsador lambda4 6 1,410 15-10-2020, 02:15 PM
Último mensaje: lambda4
  consulta baterias 18650 y arduino homer32 3 1,839 08-12-2019, 02:51 PM
Último mensaje: bertonic
  CONSULTA consulta conexion interruptores entre arduino y reles polarode 3 2,036 10-02-2018, 11:23 AM
Último mensaje: drow
  Consulta Arduino MKR ZERO. hansugrove 1 1,401 10-01-2018, 05:22 PM
Último mensaje: BricoGeek