TODOPIC

Microcontroladores PIC => * PROYECTOS * => Mensaje iniciado por: peteorito en 18 de Septiembre de 2012, 05:45:06

Título: Pulsador a larga distancia
Publicado por: peteorito en 18 de Septiembre de 2012, 05:45:06
 Hola:
 Os comento, he realizado una plaquita para unos amigos que cuando se pulsa  un pulsador pues se enciende unos led durante unos segundos. EL pulsador esta a 15 o 20 metros de la placa y durante  el trayectorio del pulsador a la placa  hay   cables de 230 voltios en princpipio funciona bien pero si por ejemplo se enchufa algun aparato a la red electrica se  induce  un pico de tension  (visto con el osiloscopio)   el cual hace que se enciendan los led.
 Os adjunto  como  esta configurado el pulsado y la entrada del pic. COmo solucion   temporal   mediante software
 
Código: C
  1. if((input(PULSA_VOLADURA))){
  2.           delay_ms(100);
  3.       if(input(PULSA_VOLADURA)){
  4.         ON(LED_VOLADURA);
  5.       .....
El  esquema electrico de como esta es
(http://fotos.subefotos.com/8b66c556fced266283b54fadbc997647o.jpg)

Probe a poner en vez de 10k  de resistencia 4k7  fallaba menos pero seguia fallando
 He pensado  en vez de ser un pull down ser un pull up, añadir un condesador paralelo a la resistencia(lo he comprobado y parece que funciona),  poner un zener o un octocoplador..
 ¿que opinais? gracias
Título: Re: Pulsador a larga distancia
Publicado por: fuente en 18 de Septiembre de 2012, 06:46:57
Como cosa fácil, prueba a utilizar lógica inversa, es decir, el pin a pullup y que el led se encianda cuando se pone a 0.
Título: Re: Pulsador a larga distancia
Publicado por: peteorito en 18 de Septiembre de 2012, 08:04:24
en vez de pull down a pull up?¿
Título: Re: Pulsador a larga distancia
Publicado por: Nocturno en 18 de Septiembre de 2012, 08:28:49
¿Es para pirotecnia?
Si tienes problemas de interferencias no me fiaría de hacerlo simplemente con un pulsador, quizás deberías pensar en enviar una trama lógica que el receptor pueda decodificar.
Título: Re: Pulsador a larga distancia
Publicado por: fuente en 18 de Septiembre de 2012, 10:29:31
Sí, las resistencias en lugar de conectar el pin del pic a gnd, que lo conecten a 5V para mantenerlo en estado alto, y el pulsador en lugar de conectar el pin a 5V que lo conecte a masa.
Tendrás que invertir el estado del pin cuando mires como está.
Esto se hace porque las interferencias es más fácil que generen pulsos positivos.
Título: Re: Pulsador a larga distancia
Publicado por: MerLiNz en 18 de Septiembre de 2012, 12:02:39
ponlo pullup como te indican y si puedes poner la resistencia de 1k mejor.
Título: Re: Pulsador a larga distancia
Publicado por: BrunoF en 18 de Septiembre de 2012, 15:40:52
Un checkeo exhaustivo sobre el pin puede ayudar a filtrar ruidos...Sin hard adicional.
La siguiente rutina solo activa el LED si se cumplen 10000 estados altos consecutivos del pin de entrada. La demora es de poco más de 100mS

Código: C
  1. uint16_t counter;
  2.  
  3.      counter = 10000;
  4.      while(input(PULSA_VOLADURA)){
  5.         delay_us(10);
  6.         if(counter) counter--; else break;
  7.      }
  8.      if(!counter) ON(LED_VOLADURA);
Título: Re: Pulsador a larga distancia
Publicado por: peteorito en 18 de Septiembre de 2012, 17:04:53
Gracias!! No es para pirotecnia  son una secuencia de unos led y al pulsarlo se enciende. El bajarle la resistencia tambien lo he barajo  no habria mucho consumo en esa resistencia?? VOy a seguir con las pruebas y os comento.  no sabia que  estando a nivel alto es mas inmune a los ruidos! Gracias!
Título: Re: Pulsador a larga distancia
Publicado por: Suky en 18 de Septiembre de 2012, 17:23:27
Entre más chica la resistencia mejor, proba con 2k y además podes armar un filtro pasa-bajos (10k, 470n)
Título: Re: Pulsador a larga distancia
Publicado por: MerLiNz en 18 de Septiembre de 2012, 20:54:25
con 1k son 5mA de consumo, vamos, casi ná, ademas el consumo solo seria al pulsar el interruptor.
Título: Re: Pulsador a larga distancia
Publicado por: peteorito en 19 de Septiembre de 2012, 05:46:08
Ok, sigo tomando nota... pensaba   que   lo recomendao era usar una resistencia grande 4k3 o 10 k  para evitar  un consumo mayor cuando la resistencia estaba entre 5 y 0 v. Porbare 1k y los condenasdores, sin son interruptores  en vez de  pulsadortambien  puedo usar 1k?
 Gracias
Título: Re: Pulsador a larga distancia
Publicado por: MerLiNz en 19 de Septiembre de 2012, 09:37:01
si, interruptores, pulsadores, lo que sea xD
Título: Re: Pulsador a larga distancia
Publicado por: jeremylf en 19 de Septiembre de 2012, 21:44:49
Lo que te pone Bruno tambien es una buena alternativa, yo lo hago asi, sin delays.. deberias hacerlo asi, tu codigo mejora en performance.
Título: Re: Pulsador a larga distancia
Publicado por: peteorito en 21 de Septiembre de 2012, 07:24:47
gracias a todos! hasta  la proxima semana no volvere a estar con la pcb asi que cuando al tenga  experimetare todo jeje  gracias