ESC brushless DC motor - Circuito de protección

757 views
Skip to first unread message

juan chirino

unread,
Mar 18, 2022, 11:29:25 AM3/18/22
to embeb...@googlegroups.com
Buenos Dias, 
estoy buscando un poco de feedback con un diseño que estoy encarando

Problema inicial:

Estamos desarrollando un driver para el motor busheles de un monopatín. Durante las pruebas detectamos que al desconectar la batería (opción que estará disponible en el producto final) y usar el monopatín de forma convencional, el motor actúa como generador. La tension inducida en los bobinados del motor se rectifica atreves de los body-diode de los mosfet del puente trifásico y se inyecta en el bus de continua. 
image.png
Esto nos quemo la fuente buck que estamos usando para alimentar el MCU. 
Posibles soluciones:
Alternativa 1:
Limitar la tensión a la entrada del conversor Buck DC-DC 
image.png
Desventajas:
- perdidas disipativas en R4(no significativo comparado al consumo del motor)
- El MCU queda energizado cuando el motor funciona en modo regenerativo. 

Alternativa 2:
Evitar el modo regenerativo bloqueando el camino de la corriente Motor-Batería
image.png
Desventajas:
- Control trapezoidal posiblemente no funcione dado que no puede recircular la corriente atreves de la batería

Alternativa 3:
Contracto mecánico entre el bus de continua y el borne de la batería. 
image.png


Por ahora nos estamos inclinando por la alternativa 3, seguramente puede existir algo mas elegante que poner un relay, estoy abierto a sugerencias.

Saludos!

Juan Chirino

C. Javier Balian

unread,
Mar 18, 2022, 1:43:50 PM3/18/22
to embeb...@googlegroups.com

Hola Juan:

¿y hacer algo así será muy choto?
Es una combinación de la estrategia 3 con la 1

Solo para aportar una idea

Saludos!!!

Javier

--
-- Recibiste este mensaje porque estás suscripto al Grupo Google Embebidos32. Para postear en este grupo, escribe un email a embeb...@googlegroups.com. Para des-suscribirte, envía un email a embebidos32...@googlegroups.com. Para más opciones, visita el sitio del grupo en https://groups.google.com/d/forum/embebidos32?hl=es
---
Has recibido este mensaje porque estás suscrito al grupo "Embebidos32" de Grupos de Google.
Para cancelar la suscripción a este grupo y dejar de recibir sus mensajes, envía un correo electrónico a embebidos32...@googlegroups.com.
Para ver esta conversación en el sitio web, visita https://groups.google.com/d/msgid/embebidos32/CAHiWDYO-NbH1091-f4ezFxn3qy%2BpHhbzvZ4h-1hXmkB8ndY99A%40mail.gmail.com.

Hellowen ..

unread,
Mar 18, 2022, 2:55:52 PM3/18/22
to embeb...@googlegroups.com
Pregunta, si pones algo que consume en el motor, ¿no se te frena la rueda? ¿no sería esto contraproducente con el uso sin batería?. Si es así la única que veo es algo del estilo de la solución 3, contacto electromécanico que desacople el motor del resto.
Salvo en pensar algo más mecánico, si el hecho de sacar la batería para usarlo en modo tradicional está pensado para hacer en un "servicio técnico oficial" y no por el usuario de manera casera se puede pensar en desacoplar el motor de la rueda. Se puede tener en cuenta en la sujeción del motor tener una posición de fijación del motor alternativa en donde no quede acoplado a la rueda.
Saludos



--
Saludos
Martin

Marcos Chaparro

unread,
Mar 18, 2022, 9:33:20 PM3/18/22
to embeb...@googlegroups.com
La tension que genera el motor solo es peligrosa si gira tan rapido que la tension es mayor a lo que soportan los mosfets y la buck.
Por ejemplo, si tus componentes son de 60V y el motor a 3000rpm genera 80Vrms, va as a quemar todo. Hay que evitar a toda costa esta situacion porque el modo de falla es dificil de manejar.
La forma de evitarlo es o limitar la velocidad del motor, usar un motor de menos Volt/rpm, o usar componentes de mayor tension. Tipicamente lo mas efectivo es usar componentes de mayor tension.

Si la velocidad del motor no es tan alta, no deberia quemarse nada. Nunca se me quemo una buck por un motor en modo generador. Quizas un DC link mas grande ayude a surfear un transitorio asi.

Otra cosa que se suele hacer si el micro esta andando es monitorear la tension del DC link. Si se acerca mucho a la tension max absoluta, cortocircuitar las fases con tus mosfets. Si haces eso tambien hay que reaccionar rapido a una sobrecorriente, porque si te zarpas cortocircuitando las fases vas a quemar mosfets tambien. 
Cortocircuitar fases te frena muy fuerte el motor y el vehiculo podría perder el control.

Tesla por ejemplo pone una carga pirotecnica en las 3 fases que al detonar desconecta el motor del inverter (<-modo de falla dificil de manejar)

Pablo A. Llanos

unread,
Mar 19, 2022, 9:59:03 AM3/19/22
to embeb...@googlegroups.com
Hola Juan,

Creo que el siguiente circuito resolverá parcialmente el problema pero me temo que puedes haber omitido otros. Por ejemplo:

1) Como comentas, cuando la batería no está conectada la EMF generada es rectificada a través de los body diode y enviada a todo el circuito.
2) Con la batería conectada, motor girando pero el driver en IDLE también tienes el mismo problema, con la diferencia que la batería oficia de carga y los efectos para el resto del circuito pueden verse atenuados. Si el motor gira rápidamente, con batería conectada o no, será un problema.
3) Sin BMS, con batería conectada, la EMF generada cargará la batería de manera descontrolada, no hay limitación de tensión, corriente, fin de carga, nada. Si vas a utilizar baterías de Iones de Litio o Polímeros, es indispensable que controles esos parámetros para no dañar la batería e impedir que se incendie.

image.png
En el circuito de la imagen anterior funciona como tu solución 3 pero sin los efectos no deseados de un contacto mecánico. Cuando la batería no está conectada no habrá conducción entre VBAT y la alimentación del puente H del motor (VMOTOR). Deberías controlar el enable con una línea del microcontrolador para evitar que, aún con la batería conectada, si haces girar rápidamente el motor la EMF generada sea enviada a la batería. Los drivers comerciales incluyen un BMS para aprovechar esta energía cargando la batería, en tu esquemático no veo un BMS así que sería prudente sólo activar Q2 cuando el driver energice el motor.

El filtro (recuadro en línea de puntos) protegerá el buck converter de la Back EMF cuando el driver esté encendido y en los tOFF de los 6 MOSFETs del puente H.

Con los componentes del esquemático, la tensión pico no debe superar los 100V, ni la corriente pico 40A. Para mayores corrientes y tensiones deberás buscar otros componentes.


Saludos cordiales,

Pablo Llanos Clariá
Embedded Linux Expert
UNITED CODERS


--

Juan Ignacio Meza

unread,
Mar 19, 2022, 1:30:01 PM3/19/22
to embeb...@googlegroups.com
Podrias usar una resistencia de frenado de forma similar a las utilizadas en variadores de frecuencia trifasicos? Saludos, voy a seguir el tema que se puso interesante.

Miguel Grassi

unread,
Mar 20, 2022, 3:52:09 PM3/20/22
to embeb...@googlegroups.com
Más allá de que logre evitar daños al circuito del driver, cualquier carga eléctrica que pongas en el motor cuando este actúa como generador, tenderá a frenarlo.  Ni hablar si cortocircuitas las bobinas del motor (modo fast-stop, como se lo suele llamar, precisamente por eso). Salvo que aproveches ese frenado regenerativo para recargar la batería mediante un BMS, parece una situación indeseable para el modo free-wheel deseado. La alternativa más simple y efectiva sería, entonces, desconectar completamente el motor. En ese caso, considerando que debes darle al usuario algún control para manejar eso, podrías pensar también en poner directamente en una llave manual que lo desconecte o hasta una llave bipolar de tres posiciones que te permita los tres modos (FastStop / FreeWheel / Normal) como en el esquema adjunto. Siendo una función ocasional, podrías poner esa llave cerca del motor (minimizando cableado de potencia)  y ahorrando el relay, driver de ese relay, pin del micro, interfaz de programa para controlarlo, etc. 

Saludos,

image.png


--
Miguel

Marcos Chaparro

unread,
Mar 20, 2022, 7:11:29 PM3/20/22
to embeb...@googlegroups.com
La electronica del motor drive consume muy poquito, los que tengo acá consumen menos de 1/2W y podrian consumir mucho menos.

Por eso si por freewheeling carga el DC link, el frenado del motor deberia ser despreciable, y agregar switches para desconectar el motor para mi es sumar complejidad y mas cosas que eventualmente van a fallar. Simplemente por diseño no deberia haber tension alta en el dc link y la fuente no deberia quemarse.

Saludos


--
-- Recibiste este mensaje porque estás suscripto al Grupo Google Embebidos32. Para postear en este grupo, escribe un email a embeb...@googlegroups.com. Para des-suscribirte, envía un email a embebidos32...@googlegroups.com. Para más opciones, visita el sitio del grupo en https://groups.google.com/d/forum/embebidos32?hl=es
---
Has recibido este mensaje porque estás suscrito al grupo "Embebidos32" de Grupos de Google.
Para cancelar la suscripción a este grupo y dejar de recibir sus mensajes, envía un correo electrónico a embebidos32...@googlegroups.com.

Pablo A. Llanos

unread,
Mar 21, 2022, 9:28:06 AM3/21/22
to embeb...@googlegroups.com
Coincido con Marcos, agregar un switch mecánico es agregar un problema o buscar algo industrial IP67 que costará más que el driver. En el esquemático que propuse, cuando la batería no está conectada el motor y la alimentación del circuito quedan desconectados permitiendo el modo FreeWhee. También permite controlar a voluntad, cuando la batería está conectada, si se carga la batería o no (simplemente colocando un 1 o un 0 en DRV_ENABLE).

image.png
Saludos,

Pablo Llanos Clariá
Embedded Linux Expert
UNITED CODERS

Juan Cecconi

unread,
Mar 21, 2022, 12:58:06 PM3/21/22
to embebidos32
Fíjate en Texas Instruments los "Ideal Diodes", tenés variantes para hacer la desconexión muy eficiente y de manera electrónica, algo similar a lo que mencionaron de manera discreta pero con algunas otras ventajas.
Saludos

Reply all
Reply to author
Forward
0 new messages