Autor Tema: Inversor Resonante en puente H  (Leído 4045 veces)

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

Desconectado alvaro2043

  • PIC10
  • *
  • Mensajes: 41
Inversor Resonante en puente H
« en: 10 de Julio de 2013, 11:55:19 »
Buenos dias, esto tratando de generar las señales de control para un puente H que trabajará como un inversor resonante (carga RLC).

Estoy trabajando con el PIC18F4550 y utilizando el modulo ECCP con el cual  cuenta.. ¿Como debe de funcionar estas señales de control?

Bueno he hecho alguna simulaciones y esto son los resultados.



La idea es por medio de un potenciometro variar el tiempo que dura encendido los transistores teniendo en cuenta que el tiempo de encendido no puede ser mayor a T/2 + Time dead  (donde T es 1/Fpwm y Time dead es un tiempo muerto que depende de las característica del Transistor) de igual forma por medio de otro potenciometro puedo variar la Fpwm.

El codigo desarrollado es el siguiente:

 
Código: [Seleccionar]
#include <18f4550.h>
#fuses PLL1,CPUDIV1,NOWDT,INTRC_IO,NOPUT,NOBROWNOUT
#device ADC=10
#byte ECCP1DEL=0XFB7
#use delay (clock=8000000)
#use fast_io(c)
#use fast_io(d)


    void main(){
     
     char duty;
      set_tris_c(0xFB);
      set_tris_d(0xDF);
     
     
     
    setup_adc(ADC_CLOCK_INTERNAL);
    setup_adc_ports(AN0_TO_AN1);
    set_adc_channel(0);
    setup_ccp1(CCP_PWM_HALF_BRIDGE | CCP_PWM_H_H);
    ECCP1DEL = 0X01;
    setup_timer_2(T2_DIV_BY_1,25,1);
    set_pwm1_duty(0);
   
    while(true){
   
   
    set_adc_channel(0);
    delay_us(10);
    duty=read_adc()/40;
   
       
       
    set_pwm1_duty(duty);
       }
   
   
   
    }


Y estos son los resultados. Que no son los esperados, quien me puede dar una orientación Gracias.




Desconectado tapi8

  • Colaborador
  • PIC24H
  • *****
  • Mensajes: 1506
Re: Inversor Resonante en puente H
« Respuesta #1 en: 15 de Julio de 2013, 12:28:02 »
Citar
¿Como debe de funcionar estas señales de control?

Deduzco que quieres generar una señal senodal monofasica ¿No?.

Tienes que generar un PWM (el mas tipico es 4KHz) este PWM sera la portadora, tienes que hacer conducir dos transistores en cruz, el primero sin DUTTY(sera el paso por 0), el segundo con el DUTTY al 10%, el tercero 20% y asi hasta llegar al 100% que sera la V maxima y empezar a bajar hasta llegar de nuevo a 0, entonces tienes que hacer lo mismo pero con los otrs transistores del puente H, para generar el semiciclo negativo, asi seria de 10 niveles, te lo explique asi porque era mas facil  :lol: pero en realidad deben ser siempre niveles multiplos de 3, cuantos mas niveles mejor sera la senoide que te salga

Desconectado alvaro2043

  • PIC10
  • *
  • Mensajes: 41
Re: Inversor Resonante en puente H
« Respuesta #2 en: 16 de Julio de 2013, 13:23:47 »
Gracias tapi8 por responder, si necesito generar a la salida una señal de corriente de alta frecuencia (50khz-150Khz), el objetivo de esto es para el diseño de un calentador por induccion.. Quiero hacer una pausa antes y exponer una duda que tengo. Debido a que soy muy novato programando en pic, solamente encendía y apagaba led, leer adc etc..

Actualmente ando confundido de que compilador elegir.  Ando trabajando simultáneamente con el CCS, ya he leído bastante el manual y pues no es que me vaya mal. por otra parte también ando cacharreando con el MPLABX- c18, la verdad me gusta esta interfaz, me parece que uno conoce todos los bits y registros del Micro.
He estado generando una señal PWM de 35khz con un duty cycle del 50%. En ccs no he tenido problemas pero cuando desarrollo el código en MPLABX-C18 se me genera una señal PWM pero no de la frecuencia deseada... en ambos caso trabajo con el oscilador interno. CREO YO  que el problema en MPLAX-C18 es que ando configurando mal el oscilador y me esta generando una frecuencia de 8.33Khz . Anexo los dos codigos y espero que me puedan orientar.. Gracias saludos y exitos a todos

Codigo CCS

Código: [Seleccionar]
////MODULACION POR ANCHO DE PULSO///////////
#include <18F4550.h>
#fuses CPUDIV1,PLL1,NOUSBDIV,INTRC_IO,NOFCMEN,NOPUT,NOBROWNOUT,BORV46,NOWDT,WDT16384,CCP2C1,NOPBADEN,NOLPT1OSC,NOMCLR,NOSTVREN,NOLVP,NOICPRT
#use delay (clock=8000000)


void main(){

set_tris_c(0x00);
setup_timer_2(T2_DIV_BY_4,13,1);
setup_ccp1(CCP_PWM);
set_pwm1_duty(0);

   while(true){
   
   set_pwm1_duty(28L); //Trabajando una resolucion de 10bits
   
   }



}



En MPLAB-X

Código: [Seleccionar]
#include<p18f4550.h>
#include<delays.h>
#include<pwm.h>
#include<timers.h>

/*-----------Configuracion_de_bits----------------------*/
#pragma config PLLDIV = 1 /*No prescale (4Mhz oscillator input drives PLL directly)*/
#pragma config CPUDIV = OSC1_PLL2 /*System clock postscaler seletion bits*/
#pragma config USBDIV = 1 /*USB clock*/
#pragma config FOSC = INTOSCIO_EC /*Oscillator selection bits*/
#pragma config FCMEN = OFF
#pragma config IESO = OFF
#pragma config PWRT = OFF
#pragma config BOR = OFF
#pragma config BORV = 0
#pragma config VREGEN = OFF
#pragma config WDT = OFF
#pragma config WDTPS = 16384
#pragma config MCLRE = OFF
#pragma config LPT1OSC = OFF
#pragma config PBADEN = ON
#pragma config CCP2MX = OFF
#pragma config STVREN = OFF
#pragma config LVP = OFF
#pragma config ICPRT = OFF
#pragma config XINST = OFF
#pragma config DEBUG = OFF
#pragma config CP0 = OFF,CP1 = OFF,CP2 = OFF,CP3 = OFF
#pragma config CPB = OFF
#pragma config CPD = OFF
#pragma config WRT0 = OFF,WRT1 = OFF,WRT2 = OFF,WRT3 = OFF
#pragma config WRTB = OFF
#pragma config WRTC = OFF
#pragma config WRTD = OFF
#pragma config EBTR0 = OFF
#pragma config EBTR1 = OFF,EBTR2 = OFF,EBTR3 = OFF

void main(void){

    TRISB=0X00;  /*Puerto B como salida*/
    TRISC=0X00;  /*Puerto C como salida*/
    LATB=0X00;
    LATC=0X00;
    OSCCON=0b01110110; /*Configuró el oscilador interno a 8Mhz*/
    ADCON1=0X0F; /*Todos los pines digitale*/
    OpenTimer2(TIMER_INT_OFF|T2_PS_1_4|T2_POST_1_1); /*prescales 4*/
    OpenPWM1(13);
    SetDCPWM1(0);

    while(1){
        SetDCPWM1(6);
        Delay10KTCYx(10);
    }

}

Desconectado tapi8

  • Colaborador
  • PIC24H
  • *****
  • Mensajes: 1506
Re: Inversor Resonante en puente H
« Respuesta #3 en: 18 de Julio de 2013, 12:53:51 »
Citar
Gracias tapi8 por responder, si necesito generar a la salida una señal de corriente de alta frecuencia (50khz-150Khz), el objetivo de esto es para el diseño de un calentador por induccion

Yo lo que te decia es para control de motores, en general, ¿Ese calentador de induccion tambien funciona con alterna?.

Es que la primera imagen que pones, parece que esta generando un señal senoidal.

Sobre compiladores de C no te puedo asesorar, el C es demasiado elevado para mi  :5] :D

Desconectado alvaro2043

  • PIC10
  • *
  • Mensajes: 41
Re: Inversor Resonante en puente H
« Respuesta #4 en: 19 de Julio de 2013, 01:01:46 »
Si... es un inversor normal pero la carga es resonante.. Entra una tension DC y se convierte a una AC de alta frecuencia, esta señal depende de la potenica que se necesite se hace pasar por un transformador de alta frecuencia (Ferrita) y la idea es elevar la corriente y esto se le aplica a una carga RLC en donde se aplica el principio de resonancia. La idea es llegar a la frecuencia de resonacia de la carga en donde se genera la maxima potencia, esto genera que se caliente por efecto de corriente parasitas, efecto Joul...

Es un proyecto bonito.. es esto..

Exitos a todos

Desconectado tapi8

  • Colaborador
  • PIC24H
  • *****
  • Mensajes: 1506
Re: Inversor Resonante en puente H
« Respuesta #5 en: 19 de Julio de 2013, 14:40:13 »
Citar
Entra una tension DC y se convierte a una AC de alta frecuencia

Yo el sistema que conozco para generar AC a partir de DC es ese que te explico arriba, en el caso de los motores los bobinados ayudan a generar los niveles de la señal AC, supongo que si va a un trafo, el primario de este hara la misma funcion.

Para generar frecuencias tan altas de AC, tendras que trabajar con frecuencias muy altas de portadora, supongo. En motores llegan 4KHz de portadora (es la que traen por defecto los variadores industriales) porque la frec resultante esta en torno a 150Hz o 200Hz, se le puede dar mas pero siempre son Hz no KHZ. Aunque en motores suelen ser de 9 o 12 niveles como minimo, veo que la tuya es solo 3 niveles ¿no? ¿es suficiente una señal asi, casi trapezoidal?.

Bueno en el video parece que calienta de la hostia, debe ser suficiente.  :D

Citar
Es un proyecto bonito

Si, si lo es, te seguire y si puedo ayudarte en algo lo hare, en el tema de programacion en C seguro que alguien por aqui te echara una mano.

Desconectado tapi8

  • Colaborador
  • PIC24H
  • *****
  • Mensajes: 1506
Re: Inversor Resonante en puente H
« Respuesta #6 en: 19 de Julio de 2013, 16:13:06 »
Me estoy dando cuenta que tu no generas ondas senoidales, sino simplemete pulsos cuadrados, bueno asi es mas facil, si asi te vale, no te comas mas el coco ¿No?.

Desconectado alex.frisse

  • PIC10
  • *
  • Mensajes: 1
Re: Inversor Resonante en puente H
« Respuesta #7 en: 22 de Octubre de 2014, 16:06:04 »
Hola, que tal soy nuevo en este foro de hecho hoy me registre, ya que tantas veces lo he consultado y pero nunca he participado, espero y pueda ayudar en mucho y retroalimentarme de los genios de acá.
Yo soy Ing. Electrónico con especialización en sistemas de potencia, automatización y robotica industrial, no soy experto pero en lo que pueda ayudar en lo aprendido por el paso en la carrera y la experiencia laboral, pues de algo les servirá (eso espero).

en cuanto a este tema de calentamiento por inducción, actualmente estoy trabajando en algo similar (pero a baja temperatura, 200 °C para ser exacto), es una aplicación muy especifica y dirán por que para tan poca temperatura utilizo inducción, esto esta directamente relacionado con el consumo de energía. Actualmente los equipos se encuentran funcionando por medio de resistencias eléctricas lo cual hace muy deficiente el sistema y se consume mucha energía, por tal motivo decidimos cambiar el sistema a un sistema de inducción en el cual haciendo un estudio de consumo energético observamos que el consumo se reducía hasta un 77%. Hice una búsqueda y me encontré con unos circuitos que te pueden ser de mucha utilidad.

El primero es el LM5046 con el cual podemos controlar un inversor por medio de la técnica PHASE SHIFT y ademas se puede generar una conmutación suave (ZVS=zero voltage switching) lo cual hará que el inversor entre automáticamente en resonancia. Este mismo puede llegar a altas frecuencias de conmutacion, la única limitación es que soporta solamente 100 VCC (alimentación del inversor, ya que se encuentra ligado a la alimentación del circuito de control).

El segundo es el UCC28950 hace lo mismo que el anterior, con la ventaja de manejar un voltaje de alimentación en el inversor mas elevado (el que sea, 500 - hasta infinito... jeje) esto debido a que este voltaje no se encuentra ligado al control. ademas de un ZVS, en este también se puede integrar un ZCS (zero current switching), que es otro tipo de conmutación suave

En ambos casos se tienen protecciones tanto de voltaje y corriente para estar montanteando la potencia en la carga y algunas otras funciones interesantes y primordiales como: aumentar o disminuir la frecuencia de conmutación y el ciclo de trabajo de cada rama del puente H o inversor, lo mejor de todo es que en estos puedes cerrar el lazo de control con un solo IC y sin programar nada.

espero que te sirva de ayuda, checa la hoja de datos de estos circuitos. No olvides que el valor del capacitor en este tipo de sistemas es muy importante, ya que la inductancia de la bobina con la capacitancia del capacitor al momento de entrar en resonancia, se anulan por ser se sentido o signo distinto (XL + y XC -, esto sale de los números complejos y las impedancias de L y C) y en este momento se entrega la máxima potencia a la carga teniendo como única carga a la resistencia del material y que por efecto Joule se comienza a calentar.

Mas adelante comenzare a programar un pic para realizar lo mismo que quieres hacer tu, espero y en ese entonces aun ser de ayuda y poder compartir lo que tengo hasta el momento.



 

anything