# PWM con PIC + MOSFET



## alejandroa76 (Ago 10, 2011)

Quiero aplicar una señal PWM que se genera en un PIC a un transistor MOSFET. Como la tensión de disparo del MOSFET es menor que la que puede dar el PIC voy a necesitar un DRIVER. La consulta es si me conviene usar un driver integrado o construir uno con algunos transistores.
El MOSFET es un IRF3205 y la señal PWM ronda en 20 KHz.
Se aceptan sugerencias....

Gracias


----------



## R-Mario (Ago 10, 2011)

Integrado, hay que aceptarlo, ahora todo esta integrado jajaja, pero como que la tension de disparo en menor que la que puede dar el pic, que no es al revez, es mayor que la que puede dar el pic, mas o menos ronda los 10V, o no!!! pues puedes usar un simple optoacoplado con transistor de salida que soporte un vce de unos 20v y con eso o un simple transistor pedorro, y a 20Khz se va escuchar un zumbido odioso, sobre todo para los perros jajajaj


----------



## alejandroa76 (Ago 11, 2011)

Gracias por tu respuesta. Tenés razón, escribí mal, la tensión de disparo del MOSFET es *mayor* que la que me puede dar el PIC... Escribí el mensaje medio dormido... ja,ja,ja.
Bueno, si no quiero torturar a los perros, para 20KHz, ¿tengo que ir si o si a un integrado?. ¿Alguna sugerencia?


----------



## seaarg (Ago 11, 2011)

Busca sobre driver totem pole (2 transistores discretos). O fijate en algun post de smps elevadora dc que ahi se implementan.


----------



## Gudino Roberto duberlin (Ago 11, 2011)

alejandroa76 dijo:


> Quiero aplicar una señal PWM que se genera en un PIC a un transistor MOSFET. Como la tensión de disparo del MOSFET es menor que la que puede dar el PIC voy a necesitar un DRIVER. La consulta es si me conviene usar un driver integrado o construir uno con algunos transistores.
> El MOSFET es un IRF3205 y la señal PWM ronda en 20 KHz.
> Se aceptan sugerencias....
> Gracias



Hola Amigo, aqui te adjunto un circuito (con Proteus), la alimentacion al mismo dependera de la tension de trabajo de GATE, del MOSFET que uses.-


----------



## alejandroa76 (Ago 11, 2011)

Gracias por las respuestas. 
Una consulta para Gudino Roberto, veo que en el circuito que adjuntas, la corriente del GATE la aporta un BC558 cuya IC_MAX es 100mA, ¿te parece que alcanza con 100mA? ¿No debería se un poco mayor a eso?.
Respecto al driver integrado, mi tensión de alimentación sería de 24V. Estuve mirando los drivers en la pagina de Microchip y me cuesta conseguir uno que soporte esos 24 o más volts de fuente (supongo que es el parámetro VDD). ¿Alguna guia o sugerencia para saber cual elegir?, ¿Alguien me recomienda alguno?.
Gracias por los aportes.


----------



## fdesergio (Ago 11, 2011)

alejandroa76 dijo:


> Gracias por las respuestas.
> Una consulta para Gudino Roberto, veo que en el circuito que adjuntas, la corriente del GATE la aporta un BC558 cuya IC_MAX es 100mA, ¿te parece que alcanza con 100mA? ¿No debería se un poco mayor a eso?.
> Respecto al driver integrado, mi tensión de alimentación sería de 24V. Estuve mirando los drivers en la pagina de Microchip y me cuesta conseguir uno que soporte esos 24 o más volts de fuente (supongo que es el parámetro VDD). ¿Alguna guia o sugerencia para saber cual elegir?, ¿Alguien me recomienda alguno?.
> Gracias por los aportes.



Usa los TRs es lo mas adecuado para tu trabajo, lo de la corriente no es relevante recuerda que los mosfet se saturan con Tension y no con CORRIENTE, teoricamente la corriente del gate es nula y solo se debe tener en cuenta la resistencia de gate para el caso de capacitancia de entrada elevada, chauuuuuuuuu


----------



## alejandroa76 (Ago 15, 2011)

Respecto al la corriente del GATE, encontré la nota de aplicación AN786 de Microchip, y rescaté que para un caso tipico, la corriente de Gate es de 2 Ampers. Les transcribo los cálculos.
In equation form:
QG = (CEI)(VGS)
and
IG = QG/t(transition)
where:
QG is the total gate charge, as defined above
CEI is the equivalent gate capacitance
VGS is the gate-to-source voltage
IG is the gate current required to turn the
MOSFET on in time period t(transition)
t(transition) is the desired transition time
For example:
Given: N-Channel MOSFET
VGS = 10V
t (transistion) = 25nsec
Find: Gate drive current, IG.
From the MOSFET manufacturer’s specifications, QG = 50nC at
VGS = 10V. Using IG = QG/t(transition):
IG = QG/t(transition) = 50 x 10-9/25 x 10-9 = 2.0A
Entiendo que mi driver debe poder proporcionar los 2 A al Gate del MOSFET. ¿Es así?
Gracias


----------



## Gudino Roberto duberlin (Ago 15, 2011)

alejandroa76 dijo:


> Gracias por las respuestas.
> Una consulta para Gudino Roberto, veo que en el circuito que adjuntas, la corriente del GATE la aporta un BC558 cuya IC_MAX es 100mA, ¿te parece que alcanza con 100mA? ¿No debería se un poco mayor a eso?.
> Respecto al driver integrado, mi tensión de alimentación sería de 24V. Estuve mirando los drivers en la pagina de Microchip y me cuesta conseguir uno que soporte esos 24 o más volts de fuente (supongo que es el parámetro VDD). ¿Alguna guia o sugerencia para saber cual elegir?, ¿Alguien me recomienda alguno?.
> Gracias por los aportes.



Hola Amigo, fdesergio responde muy acertado a tu pregunta.- 
Con respecto al driver puedes subir algun esquematico para interpretar mejor? GRacias!!!


----------



## alejandroa76 (Ago 16, 2011)

Hola:
El cálculo sale de la siguiente nota de aplicación:
http://ww1.microchip.com/downloads/en/AppNotes/00786a.pdf

Analizando el tema, observé que todo depende de los flancos del pulso (subida/bajada), si son muy abruptos tiene que cargar/descargar QC en menos tiempo, por lo que necesita más corriente. Si no son abruptos, tiene más tiempo y por ende usa una corriente menor.
El tiempo es el t (transistion) que yo usé 25nseg que es el que aparece en la AN786; pero debería haber usado el del PIC. (Que lo tengo que averiguar.... ja,ja,ja)
Saludos


----------



## Nilfred (Ago 16, 2011)

En realidad para 20 kHz no necesitas una transición de 25 ns, eso es para 20 MHz. No se que estas haciendo pero estimo que te podes conformar con mucho menos.


----------



## alejandroa76 (Ago 16, 2011)

Gracias por tu respuesta. Te cuento en que ando trabajando. Quiero cargar una batería de 12V o 24V, la carga la controla un PIC utilizando PWM. Elegí una frecuencia de trabajo de 20KHz (no sé si es mucho o no, se aceptan sugerencias). El PWM lo debería inyectar a un circuito que dispare el MOSFET IRF 3205. En estos momentos estoy renegando con el circuito de driver. Encontré algunos en internet y los adapté; pero no responden bien a los 20KHz, funcionan bien hasta 1KHz.


----------



## Gudino Roberto duberlin (Ago 16, 2011)

alejandroa76 dijo:


> Gracias por tu respuesta. Te cuento en que ando trabajando. Quiero cargar una batería de 12V o 24V, la carga la controla un PIC utilizando PWM. Elegí una frecuencia de trabajo de 20KHz (no sé si es mucho o no, se aceptan sugerencias). El PWM lo debería inyectar a un circuito que dispare el MOSFET IRF 3205. En estos momentos estoy renegando con el circuito de driver. Encontré algunos en internet y los adapté; pero no responden bien a los 20KHz, funcionan bien hasta 1KHz.



Hola Amigo, has probado el esquematico que he subido?, con 20Khz. deberia funcionar


----------



## Nilfred (Ago 16, 2011)

La frecuencia que elegiste no solo es baja, encima está en el rango audible.
El inductor te va a salir monstruoso en el orden de los mH. Salvo que la idea sea usar núcleo de hierro.
Yo usaría entre 500 kHz y 750 kHz, MOSFET de bajo voltaje con buen balance entre Rdson y Qg que minimice las perdidas de conmutación. Claro que nunca usaría un PIC con tanto integrado de carga de batería para elegir.
Aunque todavía no vi un integrado que haga burbujear las baterías de vez en cuando. Seguramente tu implementación hará algo especial como eso.


----------



## alejandroa76 (Ago 16, 2011)

Gudino Roberto duberlin dijo:


> Hola Amigo, has probado el esquematico que he subido?, con 20Khz. deberia funcionar



Lo simulé con Proteus y la señal PWM no sale, la señal se va recortando a lo largo del circuito



Nilfred dijo:


> La frecuencia que elegiste no solo es baja, encima está en el rango audible.
> El inductor te va a salir monstruoso en el orden de los mH. Salvo que la idea sea usar núcleo de hierro.
> Yo usaría entre 500 kHz y 750 kHz, MOSFET de bajo voltaje con buen balance entre Rdson y Qg que minimice las perdidas de conmutación. Claro que nunca usaría un PIC con tanto integrado de carga de batería para elegir.
> Aunque todavía no vi un integrado que haga burbujear las baterías de vez en cuando. Seguramente tu implementación hará algo especial como eso.



Uhhh se me queman los papeles. Este es mi primer diseño, tengo muchooo que aprender.
Entiendo que el valor de la frecuencia sólo tiene relación con el tamaño de la bobina. ¿Es así?, ¿se me escapa algo?. Y, ¿que problema habría en usar nucleo de hierro? (pregunto porque no se).
¿Podrías mencionar algunos integrados de carga de baterías?, así los veo (al menos uno o dos... ja,ja).
Gracias por la paciencia.


----------



## dieber (Ago 16, 2011)

hola, tengo un circuito hecho con un l293d que lo use en un control de motores, si te sirve a ca va el cto en proteus... suerte..!!


----------



## Nilfred (Ago 16, 2011)

La frecuencia tiene relación con la eficiencia, el tamaño de bobinas y condensadores.
No hay problema en usar núcleo de hierro ¿Vas por ese camino?
UC3906, MC33341 si vas por el lado del plomo.
Es cuestión de buscar, todos los fabricantes tienen al menos 1, el tema puede ser conseguirlos en Argentina o comprarlos en el exterior.


----------



## alejandroa76 (Ago 18, 2011)

En realidad voy a usar un PIC porque tambien lo necesito para otras cosas. Voy a ver de subir la fecuencia para que no esté dentro del espectro audible; pero con el circuito de driver que consegí no puedo llegar a los 500KHz.
Para esa frecuencia supongo que tendía que caer en un integrado y elegir otro MOSFET.
No se las complicaciones de usar una bobina con núcleo de hierro o ferrite. ¿Se consiguen? o me voy a meter en un problema?????. La batería a utilizar es de GEL del tipo VRLA.


----------



## Nilfred (Ago 19, 2011)

Si existe se consigue, en la wiki tenes un listado de proveedores.
Si vas a usar un regulador cualquiera, el PIC solo tiene que interferir la red de Feedback.
Hay integrados que ya tienen el MOS incorporado.


----------



## alejandroa76 (Ago 22, 2011)

Una consulta importante con respecto al driver, ¿que pasa si el terminar SOURCE del MOSFET no está conectado a tierra?. La mayoría de los drivers discretos son para el source a tierra. En otra parte de mi circuito pensaba usar otro MOSFET como una simple llave en serie (tipo ON-OFF para 30 Ampers). Pero si lo conecto en serie, es evidente que el source no va a masa. ¿Hay alguna solución para esto o tengo que caer en los drivers integrados del estilo IR2112?.
Gracias


----------



## Gudino Roberto duberlin (Ago 22, 2011)

alejandroa76 dijo:


> Una consulta importante con respecto al driver, ¿que pasa si el terminar SOURCE del MOSFET no está conectado a tierra?. La mayoría de los drivers discretos son para el source a tierra. En otra parte de mi circuito pensaba usar otro MOSFET como una simple llave en serie (tipo ON-OFF para 30 Ampers). Pero si lo conecto en serie, es evidente que el source no va a masa. ¿Hay alguna solución para esto o tengo que caer en los drivers integrados del estilo IR2112?.
> Gracias



Amigo para que un MOSFET conduzca en necesitas escalar o alcanzar el umbral Vgs. no importa si el SURTIDOR se encuentra a masa o no. Cuida que la tension Vgs. no sea excesiva ni tampoco inversa.-


----------



## Nilfred (Ago 22, 2011)

Si no va a oscilar entre on y off por mucho tiempo, no queda otra mas que un P-MOS.

Bueno, si hay otra: 2 N-MOS en paralelo alternándose a baja frecuencia, 1-10 Hz.


----------



## alejandroa76 (Ago 24, 2011)

Hola, sigo renegando un poco con el tema del driver para el MOSFET del PWM. Adjunto un esquema de lo que quiero hacer (espero que salga bien)





Estoy medio perdido, si alguno puede orientarme un poco se lo agradezco.
Saludos

Bueno, ahora si lo adjunto.


----------



## Nilfred (Ago 25, 2011)

Me gusta tu MOSFET porque tiene dibujado el diodo parásito 
Mucho mas no sale de ese esquema: Fijate que si Vcc es el devanado secundario de un transformador, la batería se descarga por el diodo parásito a la bobina y de ahí a masa ¿Cuantos Ω puede tener una bobina? menos de 1


----------



## alejandroa76 (Ago 25, 2011)

Explico un poco más, lo que quiero hacer es cargar una batería con la corriente/tensión que me entrega un panel solar. El tema es que la tensión/corriente del panel solar varía (en función del sol, etc). Por eso uso el MOSFET con PWM, para "llevar" la tendión del panel a los valores admisibles por la batería variando el ciclo de trabajo. Demás esta decir que la tensión del panel es superior a la de la batería.
Mi idea es insertar el MOSFET para que actue como una llave, en serie con la carga (en mi caso la batería). ¿Esta bien el razonamiento? o me voy a estrelllar contra la pared.....
Y nuevamente el tema del driver....


----------



## fdesergio (Ago 25, 2011)

Porque conectar el positivo, podes para hacerlo mas sencillo dejar fijo el + y conmutar el -, asi sera mas facil la cuestion del disparo del mosfet, chauuuuuu


----------



## Nilfred (Ago 25, 2011)

alejandroa76 dijo:


> quiero cargar una batería con la corriente/tensión que me entrega un panel solar. El tema es que la tensión/corriente del panel solar varía (en función del sol, etc).


¿Batería de cuantos Ah? ¿Panel de cuantos W? 
La tensión del panel solar varía en función de la temperatura superficial.
La corriente del panel solar en el codo de máxima potencia varía según el ángulo en que le pegue el sol, si esta nublado o si es de noche.


alejandroa76 dijo:


> uso el MOSFET con PWM, para "llevar" la tendión del panel a los valores admisibles por la batería variando el ciclo de trabajo.


Las cosas por su nombre, eso se llama fuente "buck". Te falta un capacitor a la entrada donde se guarda la potencia que no usas cuando tu MOS esta abierto, un inductor y un diodo para cerrar el circuito entre el inductor y la batería con el MOS abierto.

Si además vas a controlar que la tensión del panel no decaiga, se llama "MPPT" por "Maximum Power Point Tracking". Lamento informarte que no estas inventando nada nuevo 


alejandroa76 dijo:


> Demás esta decir que la tensión del panel es superior a la de la batería.


¿Siempre? ¿De noche hay sol? No importa se soluciona con 1 diodo.


alejandroa76 dijo:


> Mi idea es insertar el MOSFET para que actue como una llave, en serie con la carga (en mi caso la batería). ¿Esta bien el razonamiento? o me voy a estrelllar contra la pared.....
> Y nuevamente el tema del driver....


:cabezon: 
Usa el buscador, poné primero "buck" y luego "MPPT" lee un poquito de todo, bajate este datasheet donde usan un simple sensor de temperatura para mantener el tracking.
AN1211 de Microchip
SM72441 de National

Me voy a comer, a la vuelta pongo los links...


----------



## cristian_elect (Ago 25, 2011)

Yo ya llevo tiempo con panel y batería en pequeña potencia un panel de 10W y una batería de 12V 7Amp/h, según la hoja de datos del panel da como máximo 22V sin carga y una corriente máxima de 0.7A desde casi 0V hasta los 14V con carga. 
El punto de máxima potencia del panel es a 17V y da 0.62Amp con esto quiero decir si pones una batería de 6V el panel se baja a 6V y a 0.7Amp solo seria un circuito de protección de sobrecarga. 
El panel es de silicio monocristalino y también para policristalino funciona igual, también probé los amorfos y funciona casi igual.
Si fuera el caso de un panel de mucha potencia y una batería chica entonces se necesitaría el circuito de regulación de corriente yo ise uno con un attiny85 en configuración step-down con un mosfet canal P con una bobina de 220uH y capacitor 470uf a una frecuencia PWM 50% 33KHz la corriente lo censa a través de una resistencia de bajo valor. 
El attiny85 llega a una frecuencia PWM 50% hasta 500KHz ya con eso seria una bobina de 20uH lo malo que tendría poner un driver para el Mosfet para que conmute rápido.


----------



## alejandroa76 (Ago 29, 2011)

fdesergio dijo:


> Porque conectar el positivo, podes para hacerlo mas sencillo dejar fijo el + y conmutar el -, asi sera mas facil la cuestion del disparo del mosfet, chauuuuuu



OK; pero de todas formas el terminal SOURCE no me queda a masa. Por lo que veo, el DRAIN me queda al negativo de la batería (y masa) y el SOURCE al negativo del panel solar. Adjunto el esquema.



Nilfred dijo:


> Las cosas por su nombre, eso se llama fuente "buck". Te falta un capacitor a la entrada donde se guarda la potencia que no usas cuando tu MOS esta abierto, un inductor y un diodo para cerrar el circuito entre el inductor y la batería con el MOS abierto.


Consulta, supongamos que la tensión del panel sea de 15v y mi batería sea de 12v. ¿Es necesario hacer el circuito Buck? ¿No podría tener una llave ON/OFF (MOSFET) y llegar con la misma PWM a la batería?
Por lo que vengo leyendo, el tema complejo del buck es la bobina y no querría sumar más dificultades al circuito... bastante ya tengo con el driver del MOSFET .... ja,ja,ja 



cristian_elect dijo:


> Si fuera el caso de un panel de mucha potencia y una batería chica entonces se necesitaría el circuito de regulación de corriente yo ise uno con un attiny85 en configuración step-down con un mosfet canal P con una bobina de 220uH y capacitor 470uf a una frecuencia PWM 50% 33KHz la corriente lo censa a través de una resistencia de bajo valor.
> El attiny85 llega a una frecuencia PWM 50% hasta 500KHz ya con eso seria una bobina de 20uH lo malo que tendría poner un driver para el Mosfet para que conmute rápido.



Soy bastante novato en este tema; pero por lo que vengo leyendo es dificil conseguir los MOSFET de canal P. Por eso estoy tratando de hacerlo con canal N. Para el diver leí sobre el IR2112 pero este en general se usa para manejar puente H para motores DC. Yo únicamente necesitaría la salida High Side. Hice una simulación de ello, basé mi circuito en este:




Y le borre: Q2, Q3, Q4 y la circuitería aparejada. Le agregué una R de carga de 10K; pero.... no me funciona ni siquiera a 1KHz... la tensión de la carga varía entre +15v y +5V. ¡Por que no llega a 0v?


----------



## Nilfred (Ago 29, 2011)

Correcto, ahora te entiendo: Lo que querés hacer se llama "series shunt" es uno de los circuitos mas simples (leasé: estúpido) para cargar una batería con un panel solar.

Básicamente conectas el panel y la batería en paralelo, la corriente del panel se mantiene intacta y la tensión del panel se adapta automáticamente. Como la tensión del panel no es la de MPP, ni hay incremento de corriente, no es ni buck ni MPPT, mas bien una porquería...

Mejor es el "paralel shunt" o solo "shunt" a secas, lo que hace es cortocircuitar el panel, en vez de abrir el circuito cuando la batería está cargada.

Perdí el interés en el tema, no hace falta un microprocesador para hacer un shunt, mirá esto y sigan sin mí.


----------



## cristian_elect (Ago 29, 2011)

Hola alejandro veo que te falta en eso de control de los mosfet. 
Primero PWM para cargar bateria funciona bien con configuracion step-down. Si fuera directo no seria indispensable alta frecuencia con una carga pulsante de 60Hz al % dependiendo de la corriente. 
Los circuitos de control de carga una vez que carga la bateria pasan a estado de flotacion.
Con cargador step-down puedes obtener mas corriende de la que entra asi que las baterias de menor voltaje se pueder cargar mas rapido si se requiere.


----------



## alejandroa76 (Ago 29, 2011)

Nilfred dijo:


> Correcto, ahora te entiendo: Lo que querés hacer se llama "series shunt" es uno de los circuitos mas simples (leasé: estúpido) para cargar una batería con un panel solar.
> 
> Básicamente conectas el panel y la batería en paralelo, la corriente del panel se mantiene intacta y la tensión del panel se adapta automáticamente. Como la tensión del panel no es la de MPP, ni hay incremento de corriente, no es ni buck ni MPPT, mas bien una porquería...
> 
> Mejor es el "paralel shunt" o solo "shunt" a secas, lo que hace es cortocircuitar el panel, en vez de abrir el circuito cuando la batería está cargada.



No, no, no... No quiero hacer eso.
A ver si se entiende:
Ver paralelo.jpg - Esto es un Shunt (en paralelo con el panel) y no es lo que quiero hacer.
Ver serie.jpg - Esto es regulación en serie (en serie con el panel) y es lo que pretendo hacer yo. Por eso el MOSFET en serie y el problema de que el SOURCE no está a masa, lo que dificulta el tema del driver.
Mas adelante voy a encarar el tema del MPPT.



> Perdí el interés en el tema, no hace falta un microprocesador para hacer un shunt, mirá esto y sigan sin mí.


Nooo, no nos dejes solos ja,ja,ja, tus aportes son útiles....



cristian_elect dijo:


> Primero PWM para cargar bateria funciona bien con configuracion step-down. Si fuera directo no seria indispensable alta frecuencia con una carga pulsante de 60Hz al % dependiendo de la corriente.


Supongamos que en una primer etapa opto por cargarlo directo a 60Hz, ¿como disparo el MOSFET canal N?. Fijate que adjunté un esquema Driver.jpg unos mensajes más arriba.
Gracias


----------

