PROXECTO DE ESTAMPADORA ELECTRONEUMÁTICA CON ARDUINO.

foto proxectoInforme do proxecto de 4º ESO realizado no curso 2013-14. «Estampadora automática con Arduino». O traballo consistía en programar con Arduino unha secuencia de tres cilindros neumáticos que simularan unha estampadora. Un cilindro alimentador, unha estampa e un cilindro extractor.

Para realizar o control con Arduino dun cilindro electoneumático utilizamos unha placa de relés RELAY SHIELD V2.1. Non se pode realizar o control directamente con Arduino xa que a tensión de traballo das electroválvulas é de 24 V e a tensión de traballo de Arduino é de 5 V. Ademais as correntes coas que traballa a controladora son moi pequenas (40 mA), non teríamos potencia suficiente para accionar as electroválvulas, nin sequera para accionar directamente os relés dos que dispoñemos na aula de tecnoloxía.

 CATACTERÍSTICAS DA PLACA DE RELÉS. RELAY SHIELD V 2.1

Podemos acceder as características da placa na wiki que ten o fabricante seguinte ligazón

DATOS ÚTILES PARA O NOSO PROXECTO

Relays-Shield-PCB-Explained-real

esquema-relé

Conexións das terminais dos relés.

  • COM–Común (polo)
  • NC– Pin normalmente pechado (low)
  • NO–Pin normalmente aberto (high)

As bobinas dos relés contrólanse cos pins dixitais do 4 ao 7

  • D7–relé 1
  • D6–relé 2
  • D5–relé 3
  • D4–relé 4

CICLO DA ESTAMPADORA.

A–cilindro alimentador-mordaza
B–cilindro estampa
C–cilindro extractor
Ciclo A+B+(B-A-)C+C-

Para simplificar a automatización do circuíto realizamos a secuencia con tempos de espera en lugar de traballar con finais de carreira. A automatización con tempos é o que nos permite facer a controladora Arduino. Para o correcto funcionamento do cilindro alimentador no desprazamento das pezas facemos unha regulación de velocidade deste actuador no avance e no retroceso.

CIRCUÍTOS ELECTRONEUMÁTICO E DE CONTROL

circuito-neumaticoPROGRMA DE ARDUINO

int controlB1=7;
int controlB2=6;
int controlB3=5;
int controlB4=4;

void setup(){
pinMode(controlB1,OUTPUT);
pinMode(controlB2,OUTPUT);
pinMode(controlB3,OUTPUT);
pinMode(controlB4,OUTPUT);
}
void loop(){
digitalWrite(controlB2, LOW); //Eliminamos o accionamento das 4/2 pola esquerda para non ter sinais permanentes
delay(500);
digitalWrite(controlB1,HIGH); //Comeza o ciclo A+ (alimentación-mordaza)
delay(1000); //Esperamos 1 seg para a saída completa de A
digitalWrite(controlB3,HIGH); //Sae o cilindro B+ (estampación)
delay(1000);
digitalWrite(controlB1,LOW); // Eliminamos sinal en B1
digitalWrite(controlB3,LOW); // Eliminamos sinal en B3
digitalWrite(controlB2,HIGH); // Excitamos o relé 2 da placa (R2) retroceden os cilindros A- B-
delay(1000); //Damos tempo a que se produza o retroceso de A e B
digitalWrite(controlB4,HIGH); //Sae o cilindro C+ para extraer a peza
delay (1000); //Damos tempo a extracción da peza
digitalWrite(controlB4,LOW); //Retrocede o cilindro C-
delay(1000); //Esperamos para comezar de novo o ciclo.
}

 VÍDEO DO FUNCIONAMENTO DO CIRCUÍTO.

Etiquetado con: , , , ,

Deja un comentario

Tu dirección de correo electrónico no será publicada. Los campos obligatorios están marcados con *

*

*