Go Down

Topic: Componentes para controlar Selenoide (Read 3369 times) previous topic - next topic

LuisGal

Buenas, necesito saber que componentes usar para controlar un solenoide de 220v y si se puede usar para controlar gas.
PD: son 2 solenoides uno para la salida de controlar vapor y otro para controlar la entrada de gas, utilizo ARDUINO UNO.

surbyte

LuisGal, debo 1ro advertirte que sea el país en el que vivas, si trabajas con gas y vapor un Arduino no está certificado para esa tarea.

Son atmósferas peligrosas y se debe hacer con mucho cuidado.

Luego de advertirte puedo consultarte acerca del solenoide al que refieres? Se trata de una válvula solenoid supongo?
Si es asi, entonces puedes accionarla de dos modos
1. Relé
2. Relé de estado sólido.

En ambos casos debes saber que consumo tiene el solenido a 220VAC y que los contactos del Relé o del SSR (State Solid Rele) pueden manejar.

Desde ya respecto a

Quote
si se puede usar para controlar gas.
Una electro-válvula de gas y otra para las características de vapor que requieres si pueden usarse.

Dudo que tu dispositivo sea aprovado a menos que hagas las pruebas pertinentes.

LuisGal

tengo un selenoide de 220V AC
un modulo relay de 2 canales

lo pude controlar con un selenoide de 12vDC mas el modulo relay  y un condensador 10uf 16V pero aun no se si esta bien de esta forma o no.
lo que quiero es controlarlo con tiempo que el selenoide abra por 10m, luego que cierrepor 30m y luego que habra por otros 10m.
quisiera saber la forma como conectar la valvula selenoide el cual no malogre mi arduino
gracias.
PD: disculpa por responder tan tarde  :(

surbyte

Si vas a usar el RELE no hay nada que destruya tu Arduino. Solo recuerda que estos RELEs trabajan al revés.
Cuando le envias un LOW se activan y cuando le envias un HIGH se desactivan.
Prueba accionar la válvula a ver si no genera ningun problema en el Arduino.

LuisGal

gracias. si,  lo eh probado con un selenoide de 12vDC con lcd, el problema es que cuando queria que cierre el selenoide a los 30 segundos y abriera al minuto 1 en un temporizador en el momento en que cerraba la pantalla de lcd se distorsionaba los caracteres cambiandolos por otros.
este es el codigo que use para el selenoide de 12vDC. por eso no se si ocurrira lo mismo con  el selenoide de 220VAC como es mayor voltaje pienso que puedo malograr mi arduino.
Code: [Select]
#include <LiquidCrystal.h>
LiquidCrystal lcd(7, 8, 9, 10, 11, 12);
int valvula=6;
void setup()
   {
       lcd.clear();
       lcd.begin(16, 2);         
       lcd.print("Botando Aire Frio"); 
      pinMode(valvula,OUTPUT);
   }

void loop()
   {
       lcd.setCursor(6, 1);    //  linea 1, posicion 6
       String s = reloj() ;
       lcd.print(s) ;
       ControlValvula();
   }
void ControlValvula()
{
    String t=reloj();
    if(t.equals("0:30"))
    {
      digitalWrite(valvula,Low);
      }else if(t.equals("1:00")){
        digitalWrite(valvula,High);
        lcd.clear();
        lcd.begin(16,2);
        lcd.print("Valvula cerrada");
        }
  }
 
String reloj()
   {
       int n = millis() / 1000 ;       
       int segundos = n % 60  ;
       int minutos =  (n / 60)% 60 ;

       String S = String(minutos) + ":" + String(segundos);
       return (S);
   }

surbyte

Mi amigo, dices que era un válvula de AC y ahora sales con una de DC

Quote
tengo un selenoide de 220V AC
Si controlas una válvula de DC debes poner un diodo en antiparalelo o sea cátodo a positivo y ánodo a negativo de la válvula.
Con una válvula de AC pueden ocurrir otros problemas que veremos si ocurren.

LuisGal

me refiero a que probe un selenoide de 12VDC y tuve ese problema con el lcd, pero vi que recalentaba bastante el selenoide asi que me consegui uno de 220VAC y yo lo que queria saber es que si conecto el de 220 igual como conecte el de 12V o tengo que agregar otro componente, perdon si no me di a enteder

surbyte

Si todo lo estas comandando con el RELE, o sea, si con los contactos del RELE estas accionando sea la VALVULA DC con su respectiva fuente de 12VDC o luego la valvula AC con las conexiones correspondientes, no hay que cambiar nada.
El contacto del rele es un switch de modo que da igual el resto del circuito que tengas.

Ahora si estas en DC hay que usar un diodo siempre.
Si estas en AC no puedes usar un diodo porque se quemaría. Pero hay otras cosas para usar o consideraciones.
Prueba la válvula AC con el comando del rele y nos cuentas como se comporta el arduino.

LuisGal

ok gracias por tu respuesta, lo conecte al relay me funciono, lo probe con el codigo para que abra y cierre por minutos y lo que note es que empieza abierto, con un sonido fuerte como una abeja, el primer minuto cierra, el segundo minuto vuelve abrir pero no suena fuerte como el primer minuto y ya no tiene el zumbido de abeja pasa 30 segundo y el sonido incrementa. el codigo que use es este
Code: [Select]
#include <LiquidCrystal.h>
LiquidCrystal lcd(7, 8, 9, 10, 11, 12);
int valvula=6;
void setup()
   {
       lcd.clear();
       lcd.begin(16, 2);         
       lcd.print("Botando Aire Frio"); 
       pinMode(valvula,OUTPUT);
     
   }

void loop()
   {
       lcd.setCursor(6, 1);    //  linea 1, posicion 6
       String s = reloj() ;
       lcd.print(s) ;
     
   }

 
String reloj()
   {
       int n = millis() / 1000 ;       
       int segundos = n % 60  ;
       int minutos =  (n / 60)% 60 ;
      switch(minutos){
      case 0:
        digitalWrite(valvula,LOW);
       break;
       case 1:
        digitalWrite(valvula,HIGH);
        break;
        case 2:
        digitalWrite(valvula,LOW);
        break;
      }
       String S = String(minutos) + ":" + String(segundos)+"  ";
       return (S);

   }

surbyte

El comportamiento de la válvula alimentada directamente es el mismo si lo alimentas con AC?

LuisGal

no es el mismo, lo probe directamente y abria normal la valvula

surbyte

#11
Mar 25, 2017, 05:02 pm Last Edit: Mar 25, 2017, 05:05 pm by surbyte
Entonces no entiendo que haces con el rele para activar ?

Por favor has un esquema a mano alzada con las conexiones. Le tomas una foto, la subes usando la etiqueta y vemos que esta pasando.

Haz un código simple sin esa rutina que conviertes millis() en min/seg. Solo usa
Code: [Select]
delay(60*1000); para cada minuto a transcurrir.

Go Up