TODOPIC
FORO TÉCNICO => Foro Técnico => Mensaje iniciado por: karpic en 16 de Abril de 2009, 15:45:43
-
Estoy utilizanto este codigo para excitar la puerta de un triac BT137, la excito con una resistencia de 470 omios.
Alguien me podria decir por que no logro que el triac conduzca.
#INT_EXT
void externa()
{
output_low(PIN_C4);
delay_ms(2);
output_high(PIN_C4);
if (flag==0){
flag=1;
ext_int_edge(H_TO_L); // Cambio la detección del flanco, para que la proxima sea de bajada
}
else {
flag=0;
ext_int_edge(L_TO_H); // La próxima interrupción será de subida
}
-
a ver... quieres que a cada interrupcion int_ext el triac conduzca? has mirado el datashell para ver que voltage y corriente necesitas en la patilla gate para que empiece qa conducir?
-
Tal ves es tu circuito deberias colocar el esquema para ver que puede ser. :o
-
Hola.
Ese triac conduce dandole 25mA al Gate durante 20uS -si entendi bien el datasheet-. Lo que veo mal es tu funcion para generar el disparo, ya que demoras 2mS en la funcion de interrupcion para deteccion del cruce por cero, normalmente se usa la #int_EXT para detectar el cambio de flanco y asignar el tiempo de la demora, pero la cuenta de ese tiempo se hace con un Timer.
Saludos
-
Hola.
Ese triac conduce dándole 25mA al Gate durante 20uS -si entendi bien el datasheet-. Lo que veo mal es tu funcion para generar el disparo, ya que demoras 2mS en la funcion de interrupcion para deteccion del cruce por cero, normalmente se usa la #int_EXT para detectar el cambio de flanco y asignar el tiempo de la demora, pero la cuenta de ese tiempo se hace con un Timer.
Saludos
Si, en principio lo tenia asi como dices, con el timer0, pero como no me funcionaba y estaba ya loco de probar cosas vi que alguien en el foro proponía esta solución rápida para comprobar la interrupcion externa y ver si el triac conduce.
-
Y cual es el codigo de la funcion de retardo del Timer?
-
Y cual es el codigo de la funcion de retardo del Timer?
#include <16F876.h>
#use delay(clock=4000000)
#fuses XT,NOWDT,NOPUT,NOLVP,NOBROWNOUT,NOCPD,NOWRT,NODEBUG
//************ variables dimmer ****************************
int flag=0;
//**************************************************************
// Interrupción del TIMER0
#INT_timer0
void tempo()
{
output_high(PIN_C4);
}
// Interrupción Externa, provocada por el paso por 0V de la señal de entrada
#INT_EXT
void externa()
{
if (flag==0){
//output_high(PIN_B1);
flag=1;
ext_int_edge(H_TO_L); // Cambio la detección del flanco, para que la proxima sea de bajada
}
else {
//output_low(PIN_B1);
flag=0;
ext_int_edge(L_TO_H); // La próxima interrupción será de subida
}
eable_interrupts(INT_timer0);
set_timer0(200);
output_low(PIN_C4);
}
//*********************************************************************************************************************
setup_timer_0(RTCC_INTERNAL | RTCC_DIV_64); // Programacion timer0
ENABLE_INTERRUPTS(GLOBAL);
ENABLE_INTERRUPTS(INT_RTCC); // Habilita interrupcion timer0.
ENABLE_INTERRUPTS(INT_EXT);
//*********************************************************************************************************************
ext_int_edge(L_TO_H);
while(true)
{}
-
Ha probado si la interrupcion por cero te funciona? porque sino detecta nada en la entrada la interrupcion no te va a funcionar, te aconsejo que busque en el Foro de nuestros amigo Nocturno, alli hizo el un Dimmer y los principio son los mismos que tu usa. aqui se hablo muchos de este temas http://www.todopic.com.ar/foros/index.php?topic=19120.0
Saludos
-
Ha probado si la interrupcion por cero te funciona? porque sino detecta nada en la entrada la interrupcion no te va a funcionar, te aconsejo que busque en el Foro de nuestros amigo Nocturno, alli hizo el un Dimmer y los principio son los mismos que tu usa. aqui se hablo muchos de este temas http://www.todopic.com.ar/foros/index.php?topic=19120.0
Saludos
Ya e visto todos los post que tu dices, creo que la interrupcion si funciona, he puesto un led en la salida y se aprecia un pequeño parpadeo, el cual deja de verse si desconecto la detección por cero.
-
pues mira bien si tiene conectados el Triac, osea T1 y T2, si le mete corriente invertida no se te va a disparar el Triac, ya me gustaria ver el esquema si es posible, debe tambien tener muchos cuidado con la insolaciones y evitarle Ruido al Pic.
Saludo
-
pues mira bien si tiene conectados el Triac, osea T1 y T2, si le mete corriente invertida no se te va a disparar el Triac, ya me gustaria ver el esquema si es posible, debe tambien tener muchos cuidado con la insolaciones y evitarle Ruido al Pic.
Saludo
Basicamente es este
(http://www.solytec.es/Capture.jpg)
-
viendo el esquema no se por donde tu mide la corriente para ver si es triac conduce, porque tendria que medir de masa al T1 del triac y es aqui donde puede tener el problema como te decia ante T1 y T2 cuidado al cambiar la entrada donde se la mete, ya que si es contrario el triac no te va a conmutar, ahora lo que no sabemos aqui que corriente te entrega el Transformador? donde tu mide la corriente? aunque tu dice que es un esquema basico a mi me quedan dudas de como lo monta ya que sin condensadores de desacoplo va a tener problema, mejor que te busque un esquema clasico de como conmutar un Triac asi te daran cuenta su funciones.
Saludos
-
viendo el esquema no se por donde tu mide la corriente para ver si es triac conduce, porque tendria que medir de masa al T1 del triac y es aqui donde puede tener el problema como te decia ante T1 y T2 cuidado al cambiar la entrada donde se la mete, ya que si es contrario el triac no te va a conmutar, ahora lo que no sabemos aqui que corriente te entrega el Transformador? donde tu mide la corriente? aunque tu dice que es un esquema basico a mi me quedan dudas de como lo monta ya que sin condensadores de desacoplo va a tener problema, mejor que te busque un esquema clasico de como conmutar un Triac asi te daran cuenta su funciones.
Saludos
Gracias stk500, pero no entiendo lo que quieres decirme.
-
lo que te quiero decir es donde mide tu? como conecta T1 y T2 ? porque veo que le pone la carga por T1 y debe ir a T2, intenta cambiar la posiciones de entradas de T1 y T2 a ver que te sale. aqui te pongo una aplicacion de como es http://www.nxp.com/acrobat_download/applicationnotes/APPCHP6.pdf
Saludo
-
holas :mrgreen:
lo que te recomiendo es:
- ve si a la salida de RC4 tienes los 5V para activar el triac
- para evitar que e pic sufra algun daño (que es lo mas probable)
debes separar (aislar) la parte de control (digital) con la arte de potencia (analogica)
para ello te recomiendo que uses el optoacoplador MOC3041
http://www.datasheetcatalog.org/datasheet/fairchild/MOC3041-M.pdf
ve la figura 13 de la pagina 5
salu_2 a todos
-
holas :mrgreen:
lo que te recomiendo es:
- ve si a la salida de RC4 tienes los 5V para activar el triac
- para evitar que e pic sufra algun daño (que es lo mas probable)
debes separar (aislar) la parte de control (digital) con la arte de potencia (analogica)
para ello te recomiendo que uses el optoacoplador MOC3041
http://www.datasheetcatalog.org/datasheet/fairchild/MOC3041-M.pdf
ve la figura 13 de la pagina 5
salu_2 a todos
Gracias a los dos.
En la salida si hay cinco voltios, en un principio lo tenia con el opto pero como no funcionaba se lo quite fijando me en el esquema del minidimmer de nocturno.
-
pz que rraro que no te funcione :?
yo lo utilise y funciona a la perfeccion
salu_2
por sierto este MOC (http://www.datasheetcatalog.org/datasheet/fairchild/MOC3041-M.pdf)
es para carga AC
para DC se utiliza el 4N25
-
Hola.
Usa un optotriac como el MOC3011. Es lo mejor.
Mejora el codigo de la interrupcion del Timer, se supone que ahi se lleva la cuenta del tiempo del control de fase. Para encender el TRIAC solo se necesita un pulso de unos 100uS -y eso exagerando-.
-
Hola colega karpic
Una pregunta, en tus ensayos el Triac tiene carga inductiva o resistiva. Si es inductiva cuando la tensión cruza por cero el Triac aun no se ha desconectado, lo hace cuando la corriente que circula por el se hace menor de la corriente de mantenimiento. O sea, que transcurre un tiempo después de que la tensión cruza por cero hasta que el Triac se desconecta. Es entonces que tiene que aparecer el pulso de disparo. No se si este es tu problema pero pudiera ser si tienes carga inductiva
Saludos desde La Habana
:-/
-
Hola colega karpic
Una pregunta, en tus ensayos el Triac tiene carga inductiva o resistiva. Si es inductiva cuando la tensión cruza por cero el Triac aun no se ha desconectado, lo hace cuando la corriente que circula por el se hace menor de la corriente de mantenimiento. O sea, que transcurre un tiempo después de que la tensión cruza por cero hasta que el Triac se desconecta. Es entonces que tiene que aparecer el pulso de disparo. No se si este es tu problema pero pudiera ser si tienes carga inductiva
Saludos desde La Habana
:-/
Tiene carga resistiva.
He estado haciendo pruebas y creo que el problema lo tengo en la detección del paso por cero, he dejado solo la interrupcion externa con un delay para hacer parpadear un led, resulta que lo estoy probando en una protoboard y con solo pinchar un cable en la pata de la int ya me detecta la interrupcion, he probado dos maneras de detectar el paso por cero, una es con un transistor como en el esquema de arriba y otro con una resistencia de 1M conectada a 220v, he observado que el led parpadea 6 ó 7 veces seguidas a la misma intensidad y la siguiente mas fuerte, así sucesivamente. No se que puede estar pasando.
-
Hola.
Mira esto para el cruce por cero:
(http://img217.imageshack.us/img217/8316/zerocrossms7.png)
El Label AC_ZC viene de un transformador de 0v-9v
Y esto para la etapa de disparo del TRIAC:
(http://img300.imageshack.us/img300/6956/triacgate.png)
Saludos