Cómo mejorar la placa atmega328p para el control de solenoides

Estoy diseñando una placa basada en el microcontrolador atmega328p para controlar algunas electroválvulas (2 electroválvulas proporcionales y 9 electroválvulas ON/OFF).

Esta es la hoja de datos de la válvula . Estos son los detalles del solenoide:

V = 12 Vcc, R = 3,7 ohmios, I = 1,80 A

Este es mi primer esquema de PCB y mi primera placa . Alimento la placa con 12V, 40Ah. Uso Eagle y nunca antes había hecho algo así, por lo que la placa tiene muchos errores. De hecho, probé mi primer prototipo y estos son los problemas:

  1. Cuando trato de controlar los solenoides proporcionales (salidas VSX, VDX), la placa falla al azar después de unos segundos y se atasca. Necesito apagar y encender la placa para que vuelva a funcionar.
  2. La hoja de datos dice que la válvula debe consumir 1,8 A cuando se alimenta a 12 V CC, pero medí 3 A cuando PWM es del 100 %. ¡Esto es muy extraño!

Para resolver el problema, utilizando las sugerencias de la comunidad , agregué estas modificaciones:

  • Se agregó un gran capacitor de 2200uF 35V en el conector de alimentación principal
  • Se agregó una tapa de filtro entre VCC (7) y GND (8) y AREF (21) y GND (22) y AVCC (20) y GND (22) en el atmega328p
  • Corté el rastro en el pin 22 y lo conecté directamente al L7805CV GND
  • Se agregó un diodo en los pines de cada válvula.

Al hacer esto, la placa puede funcionar bien durante 1 o 2 minutos, pero luego vuelve a fallar.

Ahora, voy a diseñar nuevamente mi tablero, así que me gustaría preguntarles cómo puedo corregir mis errores y mejorar mi diseño para que mi tablero funcione correctamente.

IMPORTANTE : Después de algunos experimentos, noto que si pongo en serie, entre la salida del mosfet y la válvula, una resistencia de 20R 10W, la placa funciona bien. El problema es que la resistencia se calienta en poco tiempo. La placa también funciona bien si pongo un voltímetro en serie entre la salida del mosfet y el solenoide para medir la corriente: en este caso, la placa funciona bien durante varias veces. Esto es muy extraño para mí!!

Estaba pensando en:

  • use un optoaislador (como ILD213T) para controlar los MOSFET
  • use un regulador aislado de 5V (como NME0505SC o AM1S-0505SZ) para aislar el atmega328p de la placa
  • agregando tapas de filtro en la alimentación principal y en atmega328p

¿Qué piensas sobre esto?

¿Me puede dar algunas sugerencias, por favor?

¿Cómo puedo limitar la corriente a 1,8 A cuando el PWM está al 100 %?

Sé que el diseño de la placa no es correcto, ¿cómo puedo mejorarlo?

¿Debo usar la segunda capa para trazas GND y la capa superior solo para trazas de alimentación?

¡Por favor, ayúdame!


EDITAR :

Estaba pensando en usar LM25011 con este esquema . Hice este esquema usando la calculadora TI en línea.

¿Me puede decir si este diseño podría funcionar para mi tablero? Configuré el Rsense para limitar la corriente hasta 1,8 A a 12 V CC.

"La hoja de datos dice que la válvula debe consumir 1.8A" No, no es así. Lo que realmente dice es que no debes permitir que dibuje más que eso. Los gráficos en la hoja de datos parecen indicar que la corriente requerida para la operación depende de la presión del fluido. Es posible que deba construir un regulador de corriente de corte con una resistencia de detección; consulte los circuitos del controlador del motor paso a paso para tener una idea.
Olvidé agregar estos detalles, lo siento. Estos son los datos del solenoide: V = 12Vcc R = 3.7 Ohm I = 1.80A
Además, antes de rediseñar la placa, intente quitar el regulador de 5v y sustituirlo por un suministro externo de 5v, con solo la conexión a tierra común entre el suministro lógico y el del actuador. Considere hacer las conexiones de alimentación y tierra para este suministro de prueba de 5v directamente en el ATmega o su condensador de derivación.
"Estos son los datos del solenoide: V = 12 Vcc R = 3,7 ohmios I = 1,80 A" Esos números no coinciden en el estado estable, por lo que necesitará un control activo de la corriente. Si las condiciones son predecibles, es posible que pueda hacerlo en bucle abierto con una configuración máxima de PWM muy por debajo del 100%, pero probablemente sea mejor usar un monitor actual.
Nunca escuché sobre cortar el regulador actual, busqué en Google, pero no entendí cómo diseñarlo. ¿Puedes darme algún tutorial o ejemplo, por favor?
Como dije, vea los circuitos de controlador de motor paso a paso para ver un ejemplo. Aunque no tiene un motor paso a paso, también está impulsando una bobina. Término de búsqueda "chopping stepper driver"
Hablan de fases, pero yo solo tengo un solenoide para cada salida. No sé, intenté leer sobre ellos, pero los circuitos me parecen muy complejos.
Un paso a paso tiene dos bobinas, usted tiene una, por lo que necesita una instancia de un controlador, no dos, y realmente solo necesita un lado, ya que puede conectar el otro lado al suministro positivo. Pero el requisito es muy similar. Lo que intentas hacer no es sencillo, por lo que los circuitos tampoco lo serán.
¿Debo usar algo como este controlador: DRV8825 por ejemplo?
No, lo que necesita no es un controlador de motor paso a paso de secuenciación por pasos, sino el tipo general de topología de circuito de corte que se usa en uno. Si bien no es una pieza que le gustaría usar para su proyecto, la sección "REGULACIÓN DE CORRIENTE DE CARGA" de la hoja de datos L297 explica el concepto.
¡Gracias por el consejo! He leído la sección y estoy empezando a entender lo que necesito. ¿Qué opinas de esta solución? physics.unlv.edu/~bill/PHYS483/current_lim.pdf donde R1 es el sentido actual
El circuito en su enlace es un regulador de corriente lineal , lo que significa que la diferencia entre la potencia máxima y la potencia necesaria aumentará como calor en el transistor de potencia, que básicamente se usa como un reóstato controlado electrónicamente. Se puede hacer que funcione, pero un regulador de conmutación es menos derrochador y, como resultado, funciona mucho más frío.
¿Algo como LM2679 debería ser más eficiente? Incluso si este modelo no puede limitar la corriente por debajo de 3A. Perdón por mis preguntas tontas, pero soy un principiante.
Este otro: LM25011 me parece muy interesante. Esta es la hoja de datos: ti.com/lit/ds/symlink/lm25011.pdf ¿Qué opinas al respecto? ¿Debería ser correcto?
Estaba pensando en usar LM25011 ( ti.com/lit/ds/symlink/lm25011.pdf ) con este esquema: skeetty.com/schematics-LM.jpg - Hice este esquema usando la calculadora TI en línea. ¿Me puede decir si este diseño podría funcionar para mi tablero? Configuré el Rsense para limitar la corriente hasta 1,8 A a 12 V CC.
La especificación de la válvula proporcional dice "PWM 120Hz", lo cual es muy sugerente. ¿Puede obtener recomendaciones de fabricación sobre cómo controlar este producto y llamar un día?
¿Es posible que la unidad de solenoide esté dañada hasta el punto en que la mayoría (si no siempre), la unidad crea un cortocircuito entre todos sus terminales de conexión?
Ambas válvulas tienen este problema, no creo que ambas estén rotas... además, funcionan durante varios minutos antes de que la placa se atasque.
¿Por qué indica -12V y tierra en la fuente de todos los FET que están cambiando las bobinas del solenoide?

Respuestas (4)

Los solenoides generan una EMF trasera grande y los diodos no pueden disipar esa energía rápidamente. Por lo tanto, le sugiero que agregue algunos MOV en lugar de diodos. Disipan la energía mucho mejor que los diodos. También debe verificar si su suministro de energía podría hundirse. tanta corriente de los solenoides.

Los comentarios no son para una discusión extensa; esta conversación se ha movido a chat .

Enfrenté un problema similar al usar un circuito de relé para accionar pistones. La fuerza contraelectromagnética generada debido a la actuación del pistón provocaría un cortocircuito en el circuito de control, lo que restablecería el microcontrolador.

Recomendaría agregar una función de aislamiento óptico al circuito. Los optoaisladores como ILD1, ILD2, ILD5, ILQ1, ILQ2, ILQ5 son baratos, pequeños y vienen en paquetes DIP.

  • La información de la señal, incluido el nivel de CC, puede ser transmitida por el variador mientras se mantiene un alto grado de aislamiento eléctrico entre la entrada y la salida.
  • Los ILD1, ILD2, ILD5, ILQ1, ILQ2, ILQ5 están especialmente diseñados para controlar la lógica de velocidad media y se pueden usar para eliminar los molestos problemas de bucle de tierra y ruido.
  • Estos aisladores protegerán su microcontrolador y circuito de control de la fuerza contraelectromotriz generada por la activación.
  • Estos acopladores se pueden usar para reemplazar relés y transformadores en muchas aplicaciones de interfaz digital, como la modulación CTR.
¿Es posible controlar un servomotor con un optoacoplador?
-1 Marcus, por supuesto que puede con un controlador dedicado y una fuente de alimentación aislada

Antes de volver a hacer el diseño de PCB, dedique más tiempo a analizar todos los problemas para:

  • Defina mejor el problema, luego describa la solución con una especificación (muy importante)
    • Como la causa raíz de los problemas de disipación de calor.
    • Problemas de rendimiento del control de flujo PWM frente a la presión
      • hay una diferencia en la impedancia de la fuente usando SPST vs SPDT PWM
      • SPST es un interruptor BJT de drenaje abierto o colector con un diodo de abrazadera
      • contra
      • Acción SPDT de un controlador complementario donde la fuente Z siempre está baja, excepto durante el transitorio o cruce con tiempo muerto durante el cual hay un transitorio para V = L * di / dt

Después de haber diseñado cientos de placas en mi carrera, sé que es posible hacer lo que está intentando diseñar una placa de circuito impreso antes de comprender todos los problemas, y APRENDERÁ del proceso que hay mejores formas. Estas formas requieren muchas pruebas y análisis de alcance utilizando todos los principios que le han enseñado.

Este es mi simple consejo sobre probar partes del circuito hasta que cumplan con todos sus criterios; por ejemplo, aumento de calor, rendimiento, EMI, costo y tiempo, luego intente medir este rendimiento en términos de una especificación que luego puede probar y verificar (o instruir a otra persona para que haga lo mismo)

  • Cuando tiene buenas especificaciones (que cumplen con las expectativas del cliente o de usted mismo)

    • y aprobarlos, con sus propias pruebas de validación de diseño (DVT) o comparar con la hoja de datos
    • terminas con un diseño de ejemplo perfecto
    • buena suerte y recuerda estos principios.
  • compare su forma de onda de solenoide lineal bajo presión de carga y vea si hay margen de mejora.

  • Para hacer esto correctamente, necesita un osciloscopio, un suministro de laboratorio variable y un buen par de cables blindados y una selección de perlas de ferrita para pares simples y de alambre.ingrese la descripción de la imagen aquí

Recuerda esto: la solución es mucho más fácil después de que comprendas todos los problemas buscándolos.

si no está de acuerdo, explique por qué

No creo que necesites ningún regulador de corriente especial. Al menos no para empezar.

Me preocupa que haya escrito -12V y Gnd juntos conectados a todas las fuentes FET que están cambiando las bobinas del solenoide.

Obtenga un multímetro y mida la resistencia de CC del circuito abierto de las bobinas del solenoide. Luego agregue una resistencia en serie a la bobina para limitar la corriente a 1.8A con 12V.

Preste mucha atención a las condiciones de potencia máxima, así como a la potencia media. Esto le dirá qué tipo de fuente de alimentación necesita.

Sospecho que su fuente de alimentación no cumple con sus requisitos de potencia máxima. Editar: OP está usando una batería de automóvil que tiene mucha potencia en este caso.

Diséñelo con un poco de margen con respecto al control PWM para que nunca tenga que ir al 100 % (digamos, 95 % de trabajo máximo)

El suministro de 12 V para los solenoides se puede separar de la fuente de alimentación del controlador.

Espero que esto ayude.

¡Gracias por su ayuda! La fuente de alimentacion es una bateria AGM de 12v y 200Ah.. es muy grande.. crees que no es suficiente para alimentar los solenoides?
¡Oh, lo siento, no me di cuenta de que estabas usando una batería de automóvil! Eso es suficiente, aunque el voltaje del terminal será ligeramente superior a 12 V, más como 12,7 V-13 V cuando esté completamente cargado.
@MarcusBarnet, ¿tienes un multímetro? ¿Y por favor dime que -12V es un error en tu esquema?
Sí y -12v es obviamente un error en el diseño... -12v está conectado a tierra... lo siento...
El fabricante del solenoide me dijo que es normal que la válvula drene 3A cuando está fría. Por encima de los 30 grados, las válvulas drenan alrededor de 2A. Dijo que si no limito la corriente a 2A, tendré diferentes comportamientos entre el sistema frío y caliente. Cuando la válvula está fría, el motor oleodinámico girará más rápido ya que el solenoide drena más corriente... pero creo que esto no es un problema para mí...