Autor Tema: ayuda con codigo para pic  (Leído 1408 veces)

0 Usuarios y 1 Visitante están viendo este tema.

Desconectado nordestenica

  • PIC16
  • ***
  • Mensajes: 215
ayuda con codigo para pic
« en: 09 de Febrero de 2005, 09:35:00 »
guenas tengo que solucionar um problema en un aparacto de aire condicionado de un amigo lo que passa es  que quando la red electrica falha que aqui suele ser casi todos los dias e puede ir de segundos a horas el aparacto se desconecta quando falha la energia de 220v de la red e luego quando viene la energuia nuevamente el aparacto no se conecta solo solo se conecta o sea queda en stand by e solo conecta quando se pulsa en el aparacto o en el mando on creando muchas vezes muchas perdidas en su trabajo


lo que queria acer era com un pic 16f84 que quando la energia falhe e luego vuelva el pic seria alimentado con sus 5v essos 5v se recogerian tanbien en una de sus patitas el pic al dectetar  la presencia de essos 5v esperaria como 1 minuto para que el aparacto quedara listo terminando esse tienpo enviaria un pulso de 5v por otra de sus patitas con una duracion de 1 o menos e activaria un rele durante esse segundo el rele tendria conectado en su  salida  el pulsador de on del aparacto simulando assi que una persona lo abia pulsado e el aparato empecaria a funcionar despues de esse inpulso de 1 segundo el pic quedaria quieto o dormido asta nueva falha de energuia

aver si me podeis dar algunas ideas del codigo porfa que ya va mucho dinero perdido durante las noches en que falha la red electrica por unos minutos ya que luego como el aparacto queda en stand by se queda toda la noche sin funcionar con los prejuicios que esso trae a mi amigo

Desconectado Tec_Claudio_Perez

  • PIC12
  • **
  • Mensajes: 62
RE: ayuda con codigo para pic
« Respuesta #1 en: 10 de Febrero de 2005, 07:49:00 »
Hola,

El código es sencillo:

#include <16F84.h>
#use delay(clock=4000000)
#fuses XT,PUT,NOWDT

#define PORTA = 5
#bit RELAY = PORTA.0                //Esta es la salida para el relay.

void main() {
   //Inicializar los puertos.
   set_tris_a(0b00000000); // Todo el puerto A salidas.
   set_tris_b(0b00000000); // Todo el puerto B salidas.

   RELAY = 0;                        // Comenzar con el relay desactivado.
   delay_ms(2000);              // Esperar 2 segundos.
   RELAY = 1;                        // Activar el relay.
   delay_ms(1000);              // durante 1 segundo.
   RELAY = 0;                        // Desactivar el relay.
   sleep();
}

El PIC16F84 debería alimentarse con los mismos 220V del aparato a controlar. Al encenderse espera que la tension esté estable durante 2 segundos, luego activa el relay durante 1 segundo y se duerme. Si se corta la energía antes de esos 2 segundos, el micro tambien se apaga por lo que hay que esperar que vuelva la energía y se mantenga durante otros 2 segundos.
Espero te sirva.

Desconectado nordestenica

  • PIC16
  • ***
  • Mensajes: 215
RE: ayuda con codigo para pic
« Respuesta #2 en: 11 de Febrero de 2005, 03:34:00 »
gracias amigo Tec_Claudio_Perez ya lo e echo con un pic 12C509 lo emos probado con una protobord conecada al aparacto emos simulado la falta de red electrica desensufando el aparacto e sienpre que lo volviamos a conectar simulando que la red electrica volvia el pic se a comportado como nos queriamos asta que falho la red electrica por unos 2 munutos e quando volvio lo esperado el pic a echo su trabajo correctamente

#if defined(__PCB__)
#include <12C509.h>
#fuses INTRC,NOWDT,NOPROTECT, NOMCLR
#use delay(clock=4000000)
#define GP0 PIN_B0


void main()
{


DELAY_mS(7000);      //quando la red electrica se conecta esperamos 7 segundos para que el aparacto quede listo

output_high(GP0);    " activamos el rele durante 1 segundos simulando que una persona esta pulsando el boton de on
delay_ms(1000);
output_low(GP0);finalizando el segundo el rele se desactiva e el pic se queda parado asta nueva falla electrica
delay_ms(2000);

}

de decir que el pic se alimenta del proprio aparacto recojemos 12v del aparacto e los reduzimos a 5v para el pic cojemos los 12v e los levamos a la etapa del rele

e usado  el 12C509 en vez del 16f84 porque para una cosa tan sensilha seria demasiado gastar un 16f84 e en consiguiente e reduzido el tamanho de la plaqueta a la mitad

creo que usare parte de tu codigo que esta mas eleborado e lo adaptare al pic 12c509

lo del sleep no me abia passado por la cabeca ya que quando el pic termine su trabajo es justo que se duerma un rato asta que sea nesserario sus servicios

gracias de ante mano


Desconectado Tec_Claudio_Perez

  • PIC12
  • **
  • Mensajes: 62
RE: ayuda con codigo para pic
« Respuesta #3 en: 19 de Febrero de 2005, 10:07:00 »
Hola,
Me alegra saber que te haya servido. Como mencionas la tarea es muy sencilla como para usar un PIC16F84. Pasa que no sabía que micros habías usado y como al F84 lo conocen todos, entonces bueno, decidí enviarte el codigo para ese micro.

Un saludo.
Cualquier consulta no dudes en escribirme.
Chau.


 

anything