domingo, 4 de mayo de 2014

Puente en H. (I)

Cuando hablamos de control de motores, a cualquier aficionado o profesional a la electrónica, lo primero que le viene a la cabeza es la topología en puente completo o puente en H. Con esta topología a partir de una tensión simple, es decir entre 0 y VDC, podemos aplicar a nuestra carga tensiones que van desde -VDC hasta VDC, lo cual es muy importante a la hora de poder controlar un motor, ya que su sentido de giro depende del sentido de la corriente que lo atraviesa. En este blog ya he hablado del puente en H para controlar motores, en concreto hablé de el aquí, pero en ese momento el motor que quería controlar era muy pequeño, y por eso opté por una configuración OnChip. Esto funciona perfectamente para motores de hasta 1 amperios, ya que con controladores como el L298 no tenemos que diseñar el hardware, ya que va todo implementado en el interior, tanto drivers como la etapa de pequeña potencia, pero... ¿que sucede cuando queremos más potencia?, o un problema más grande, ¿que pasa si necesitamos realizar un control con el que necesitamos controlar cada transistor por separado?, en el caso de L298 eso es imposible, ya que se controla cada semi-rama del puente con un único pin. Estos dos inconvenientes que tiene este integrado se han ido subsanando a medias con el paso del tiempo, ya que las nuevas tecnologías utilizadas en los procesos de fabricación de los transistores permiten que una etapa integrada en un IC pueda dar corrientes de hasta 12 amperios (tecnología NexFET), como el el caso del DRV8432 de Texas Instruments. Este integrado si que nos permite controlar cada semiconductor por separado, lo cual nos abre la posibilidad de utilizar todos los tipos de control que existen, pero aun así seguimos teniendo una limitación en la potencia que podemos obtener, además de la desventaja de tener todo integrado en un mismo IC, de forma que si este deja de funcionar por cualquier motivo, hay que cambiar el integrado completo. La solución a estos problemas, pasa por diseñar nuestro sistema con componentes discretos, de forma que, en primer lugar, podamos dimensionar los componentes de la forma que mejor nos convenga, y, en segundo lugar, podamos verificar el correcto funcionamiento de cada una de las partes de nuestro sistema, y en el caso de que algo falle, podamos sustituir simplemente el componente dañado, de forma que abaratamos las reparaciones. Esta opción es sin duda la mejor si queremos diseñar un prototipo.


Y eso mismo es lo que he hecho. Al mismo tiempo que diseñaba la fuente SEPIC para el MPPT, diseñé un puente completo para 4 transistores MOSFET de canal N. Como realimentaciones de la placa tenemos la tensión del bus de continua, tensión en cada uno de los terminales de salida, y corriente por cada una de las ramas del puente. Con estas medidas tenemos el sistema completamente monitorizado. Como se ve en la imagen, en la placa hay 4 condensadores que aseguraran, en la medida de lo posible, que la tensión del bus de continua sea estable. Para monitorizar las corrientes por las ramas, existen 2 resistencias de 0.1 ohmios y 1W que, a través de un amplificador operacional, nos devuelve la corriente en cada una de las ramas. Las medidas de las tensiones se obtienen a partir de divisores de tensión.


El disparo de los transistores MOSFET se hace con los drivers UCC27201 de Texas Instruments. Este driver servirá para disparar tanto la parte alta como la parte baja de una rama formada por dos transistores de canal N. El disparo de la parte baja no presenta problema, ya que el surtidor del MOSFET está llevado a masa, por lo que la tensión puerta-surtidor tiene una referencia de 0V. En el caso de la parte alta, el surtidor no está llevado a masa, sino al punto intermedio de la rama, por lo que la tensión que hay que aplicar a la puerta, la tensión puerta-surtidor debe ser la del punto medio mas la tensión de disparo, y esto se puede conseguir de varias formas, aunque la más sencilla es mediante la elevación de la tensión de puerta por medio de un circuito de bootstrap, y esto es lo que encontramos en el driver UCC27210, al cual solo hay que añadir un condensador para que funcione correctamente.
En un principio he hablado de utilizar este circuito para el control de motores, y es cierto que esta es una de las aplicaciones más comunes, pero ni de lejos la única, y es que esta topología está presente en muchos equipos de electrónica de potencia, ya sean inversores, fuentes conmutadas o rectificadores controlados, por lo que lo voy a poder utilizar bastante. Aquí tenéis una imagen en la que le he añadido un filtro LCL y mediante un DSP genero una señal senoidal de 50Hz para la implementación de un inversor.


El controlador que he utilizado para esta prueba ha sido el Launchpad C2000 de Texas Instruments, aunque se puede utilizar cualquier microcontrolador que nos permita obtener 4 señales PWM, como por ejemplo los DSPIC o los ARM Cortex. 

15 comentarios:

  1. Hola Pablo: Me gustaría enviarte un esquema SEPIC de un cargador de baterías por placa solar, para ver si me puedes ayudar con algunos componentes que no se calcular.
    Gracias. Saludos.
    Ricardo López.

    ResponderEliminar
    Respuestas
    1. Hola Ricardo, por supuesto que si puedo te ayudaré. Te recomiendo que pegues una ojeada a esta hoja de aplicación ya que explica como diseñar los componente sde una fuente SEPIC. http://www.ti.com/lit/an/snva168e/snva168e.pdf

      Un saludo!

      Eliminar
  2. Gracias Pablo por contestarme. Mis conocimientos de electrónica son muy básicos, no obstante el esquema que queria enviarte esta diseñado por una aplicación de maxim, ya que el chip que me interesa utilizar es el max669 que permite un rango de voltaje de entrada tan bajo como 1.8V, lo que permite utilizar la placa solar casi sin luz. El problema esta en que no me indica la referencia del transformador/inductor. En fin, si me dices donde o como te mando el esquema, comentamos.
    Saludos.
    Ricardo.

    ResponderEliminar
    Respuestas
    1. Hola Ricardo, eso que comentas de 1,8 voltios va a ser imposible con un panel solar, ya que el panel solar a esa tensión no puede dar corriente, y para cargar una bateria de 12 voltios necesitas elevar esa tensión 7 veces, por lo que la corriente que debe dar el panel es 7 veces la de carga, por lo que no va a funcionar a tensiones menores de unos 8 o 9 voltios. He estado mirando algunas hojas del integrado ese y si bien es cierto que utiliza un trafo, no es necesario, ya que con 2 bobinas independientes es suficiente, y el valor de esas bobinas va a depender del rizado de corriente que quieras a la salida, cuanto menos rizado necesites más grandes deberán ser las bobinas. El rizado tamben depende de la frecuencia de conmutación, a mayor frecuencia el rizado disminuye. He visto que el integrado ese funciona hasta 500kHz, por lo que el rizado que vas a tener a la salida va a ser pequeño, así que poniendo las bobinas de un valor de 100u o 220u será suficiente. Me puedes poner el enlace a esa hoja de aplicación en concreto? Gracias por pasarte!

      Un saludo.

      Eliminar
  3. Saludos Pablo, te escribo para consultarte algo referente al servidor web con el 18lf4685 y la ENC28j60... es en cuanto al oscilador del ENC28j60.... por lo que leí en el datasheet necesita 25 Mhz.. en el montaje que tu propones usaste un cristal de 25Mhz para el ENC20j60? o si usaste otro velocidad, me me podrias indicar por favor de que velocidad es?. En los diagramas no encontre por ningun lado referencia a ese cristal salvo la referencia Q2. Muchas gracias de antemano.

    ResponderEliminar
  4. Hola Pablo: La pagina del max669 es: http://www.maximintegrated.com/datasheet/index.mvp/id/1901 si abres el Download Data Sheet, figura 6 pero sustituyendo el max668 por el max 669. La simulación la puedes hacer en http://www.maximintegrated.com/ee_sim/ pero tienes que registrarte. Yo la simulación la hice con: Application Circuit SEPIC, Vin, min 1.8 V, Vin, max 24 V, Input Ripple, max 0.02 V, Vout 14 V, Output Ripple, max 0.01 V, Iout 1 A, Ripple/Total I 0.15, Oscillator Frequency 300 kHz, Optimization Efficiency, Capacitor Type Ceramic.
    Ya me contaras, yo creo que según el fabricante, este circuito si es capaz de con un voltaje de entrada de 1.8V proveniente de la placa elevar el voltaje de salida a 14V para cargar la bateria.
    Saludos.
    Ricardo

    ResponderEliminar
    Respuestas
    1. Hola Ricardo!, bueno viendo el esquema lo primero que veo es que para obtener 5 voltios de salida, la entrada debe estar entre 3V y 25V, por lo que en el peor de los casos habrá que aumentar la salida 1,6 veces, eso es algo aceptable. Otra cosa diferente es que el circuito integrado pueda funcionar con 1,8 voltios, pero te tienes que fijar en la tensión de entrada. Luego, en el caso de que tu le pongas 3 voltios y quieras sacar 14 voltios deberías multiplicar esa tensión por 4,6 , por lo que la corriente de entrada debería ser 4,6 veces la de salida, y por muy baja que sea la corriente de carga, una placa solar que está dando 1,8 voltios no puede dar corriente, en el momento le pongas una carga la tensión bajará a cero. De todas formas puedes hacer la prueba, si ya tienes el panel, conéctalo a una carga variable, un potenciometro o una fuente BUCK, empiezas con una carga de 0 amperios y la tensión será la máxima, conforme vayas aumentando la carga la tensión bajará y la corriente irá subiendo hasta situarse en el PMP. A partir de ahí, la corriente empezará a bajar tambien, y si llegas a 1,8 voltios veras que la corriente que puede dar el panel es muy muy baja. Haz la prueba si puedes y me cuentas.
      Espero haberte aclarado algo... Puedes mirar está imagen de un panel de 80W y escalarlo al tuyo http://solarpower-mart.com/yahoo_site_admin/assets/images/mppt_chart_2.31805755_std.JPG.

      Un saludo!

      Eliminar
  5. Hola Pablo

    Me ha parecido muy interesante tu puente h y queria fabricarme uno.

    me surgen un par de dudas

    1 las conexiones fbv02, fbv01 y fbdcbus que son y donde van conectados si quiero usar un arduino?

    2 los dos agnd es masa no?

    3 los sens si los pongo fijos a 5v siempre estaria funcionando no?

    y por ultimo los x1-1 y 2 donde van?

    un cordial saludo y estupendo blog

    ResponderEliminar
    Respuestas
    1. Hola! pues las señales que llevan fb delante se refiere a señales de medida o FeedBack, por tanto VO1 y VO2 son las tensiones de salida de cada una de las ramas del puente, y fbDCBUS es la tensión del bus de continua. Las señales AGND efectivamente son masa, y las señales ISENS son las corrientes de cada rama, que se miden a través de la resistencia de 0.1 ohmios. X1 es el conector porr donde introdcimos la señal de continua. Las señales para controlar el puente son las que llamo PWM1, PWM2, PWM3 y PWM4. Hay que tener en cuenta que para que funcione, la señales de los transistores de la parte alta, PWM1 y PWM3 deben estar conmutando! ya que con una señal fija no se activarian.
      En la próxima entrada pondré un programa básico para mover un motor.
      Un saludo y gracias por pasarte!!

      Eliminar
  6. Hola,

    Yo tambien intento hacer una etapa de potencia, pero para un motor brushless de una fotocopiadora.

    Estaria bien que abarcaras el tema de "bootstrap" (utilizar un condensador para aumentar el voltage en la puerta del mosfet), con lo que se pueden usar nmos en la parte alta del puente sin necesidad de chips tipo "gate driver".

    Estaria muy bien poder calcular el tamanio del condensador en base a la frequencia fianl requerida.

    Saludos,

    ResponderEliminar
    Respuestas
    1. Hola!,
      Bueno pues para un motor brushless solo necesitas otra rama más, el control seria el mismo. Lo del bootstrap, como veo que es un tema que interesa a mucha gente, por lo menos para mi lo es, lo explicaré junto al diseño de un programa básico. En cuanto al tamaño del condensador, cuando lo calculas, calculas un mínimo, de ahí para arriba funcionará bien. En este diseño los he puesto de 1uF, que son algo grandes pero era lo que tenia más a mano. Para un calculo exacto puedes visitar esta página http://www.silabs.com/support/Pages/bootstrap-calculator.aspx
      Un saludo!!

      Eliminar
    2. Hola,

      Gracias por la pronta respuesta!.

      Esa pagina la he visto, pero entiendo que es mas bien para "gate drivers" de esta gente.

      Yo me referia mas bien al disenio de un bridge con componentes discretos (parte alta y baja). Ya luego uno multiplica el disenio por dos para un h-bridge, o por tres para controlar tres fases.

      Yo personalmente estoy hecho un lio con los mosfet tipo N (nmos) en la parte alta de un puente.

      He visto una "application note" de microchip diciendo que los mosfet necesitan hasta 2 amperios en la puerta (ellos ponen las formulas para poder calcularlo), y sin embargo muchos circuitos en internet usan 2n3906 (~800mA Icmax) para conmutarla.

      Segun yo lo entiendo, los mosfets hay que abrirlos y cerrarlos "a lo bruto", lo mas rapidamente posible y con la corriente que necesiten para el mayor amperaje que conmuten, de forma que un osciloscopio muestre una onda cuadrada en el maximo rango de frecuencia posible. Asi se calientan menos, y por lo tanto ocasionan menos perdidas por disipacion termica.

      Tambien se que para usarlos en la parte alta de un puente, o bein se usa una fuente de alimentacion aislada, o se usan condesadores a partir de la propia fuente de alimentacion a conmutar, ya que en este ultimo caso se necesita que la puerta este 10 voltios por encima de esta.

      LLevo meses buscando informacion que yo pueda entender al respecto pero estoy un poco estancado con el tema, y como ni se la frecuencia a usar realmente, ni puedo tampoco probarla porque no tengo osciloscopio, pues hay ando, dando tumbos! jeje.

      En fin, ire siguiendo tu blog por si hablas del tema.

      Saludos, y gracias.

      Eliminar
    3. Hola!, pues la página que te pasé valdría para cualquier tipo de driver y de mosfet, es indiferente que sean de silica o no. El problema de los mosfet de canal N en la parte superior es que la tensión de la que tu dispones está referenciada a masa, y no al surtidor, por eso es necesario en la puerta Vsource+Vgate.
      Respecto a la corriente de puerta, es cierto que hay mosfets que pueden requerir hasta 2, o incluso 20 amperios, pero no en todos los casos por supuesto. Tienes que pensar que la puerta de un mosfet es un condensador que hay que cargar lo más rapido posible, y luego descargar lo más rápido posible. De esa velocidad dependerá tu frecuencia de conmutación. pero no solo dependerá de eso, tambien depende de la potencia que puedas disipar, ya que a mayor velocidad, mayores perdidas por conmutación, y mayor potencia disipada, por lo que siempre debemos conmutar a la menor velocidad como sea posible para tu aplicación. Esto ultimo pasa también en los procesadores, que cuando más rápidos son, mas se calientan, de ahi la limitación de velocidad en los procesadores, y la necesidad de utilizar mas núcleos con las mismas velocidades.
      Escribiré sobre esto. Un saludo y muchas gracias por pasarte.

      Eliminar
    4. Hola! Gracias a ti.

      Hoy me puse a darle la lata a google un rato cambiando patrones de busqueda y di con esto:

      https://www.youtube.com/watch?v=4XXB_7kJwbI

      Son cuatro partes, esa es la primera. El tio es un poco pesado hablando, y solo he visto las cuatro partes por encima, pero tiene pinta de ayudar a poner todo lo que uno a visto en orden para hacer un controlador. Lo unico que no se adentra en el tema del bootstrap, usa gate drivers.

      Con respecto a este post, se me olvido decirte que lo del filtro de salida en tu circuito pinta muy interesante tambien, lo que es saber identificar y bloquear frequencias no deseadas. Pero no he mirado tu blog a fondo todavia, igual es algo que ya has tratado.

      Miro a ver que hay que hacer para subscribirse y en estos dias lo mirare.

      Saludos, y gracias.

      Eliminar
    5. Hola!,
      He visto algunas partes del vídeo y está bien pero como conceptos teóricos, como tu dice no aborda en profundidad el tema de hardware.
      Respecto al filtro, el que utilizo no es más que un filtro LCL del cual puede encontrar mucha información en internet.
      Un saludo!!

      Eliminar