suministro de corriente del microcontrolador - minimización de ruido

Estoy construyendo un cuadricóptero basado en Arduino. Ya construí un prototipo parcialmente funcional y ahora estoy preparando la segunda versión, que probablemente será la definitiva.

En lugar de toda la placa Arduino (UNO) (en realidad es un cuadricóptero bastante pequeño y la placa es demasiado grande para él), voy a usar solo el microcontrolador ATMEGA328. Lo configuré en una placa de prueba siguiendo este tutorial en el sitio de Arduino y funciona bien... si no uso mis 4 motores simultáneamente (pero, por supuesto, para ejecutar un cuadricóptero necesito que trabajen juntos).

Mi cuadricóptero funciona con una batería LiPo de una sola celda (3,7 V; 600 mAh; 2,22 Wh): una batería única para los 4 motores cepillados, el microcontrolador y algunos sensores. Si conecto el ATmega328 directamente a la batería, al igual que los motores, a veces falla y se reinicia, por ejemplo, debido a algunos picos de corriente, demasiado grandes para la batería, cuando los motores arrancan.


Entonces mi pregunta es: ¿puedo configurar un circuito "estable", con el menor ruido posible, para ejecutar el Arduino y los sensores en primer lugar sin riesgo de falla en caso de picos de corriente en el circuito del motor, y en segundo lugar para obtener los mejores resultados de ADC, etc.? ¿Cómo puedo hacer eso?

Use un regulador de CC a CC para proporcionar un voltaje constante al Arduino y use el filtrado de energía adecuado.

Respuestas (2)

no es un problema de ruido, es un problema de desacoplamiento de la fuente de alimentación y un problema general con motores como este. También debe intentar hacer un 'arranque suave' en los rotores o iniciar cada rotor individualmente (inícielos en algún tipo de modo inactivo, y luego todos pueden aumentar juntos).

El circuito de suministro de energía del microcontrolador debe salir de la batería lipo en paralelo con el suministro del rotor y el uso de un inductor en serie y capacitores de tamaño razonable en cada tamaño (100uf-1000uf).

Además, si está ejecutando su Atmega328 a 16Mhz, tendrá problemas técnicos con un voltaje VCC tan bajo. asegúrese de ejecutarlo a una frecuencia de reloj más baja u obtenga un convertidor de impulso de lipo de 1 celda a 5 V (que, por cierto, ayudará mucho con el desacoplamiento, al mismo tiempo) para ejecutar el microcontrolador y cualquier sensor.

Debe desacoplar aún más el AVCC del ATMEGA328 (voltaje de suministro analógico) mediante el uso de una perla de ferrita u otro inductor pequeño en serie desde el VCC al AVCC con condensadores de valor pequeño apropiados dispersos por todas partes. VREF puede ser la referencia de banda prohibida interna, o puede conectar VREF a AVCC y seleccionar usar VREF externo para el ADC.

¡Gracias por su útil respuesta! ¿Podría decirme qué
lo siento, envié mi comentario antes de terminarlo. ¿Podría decirme qué valor de condensador debo usar para el desacoplamiento avcc?
@noearchimede, lea este documento AVR042: consideraciones de diseño de hardware, páginas 4 y 5, y este AVR040: consideraciones de diseño de EMC, páginas 9, 10 y 11. No mencionan ningún número excepto 100nf. Use un inductor de serie pequeña + una tapa de 100 nF para desacoplar el voltaje de la batería a VCC. luego, después de esto, de VCC a AVCC + AREF haga otro inductor en serie + tapa de 100nF. AREF debería tener un límite adicional de 100nf como se sugiere en la nota de la aplicación.

Deberá aislar el microcontrolador de los motores. Esto se puede hacer fácilmente con una batería separada en un terreno común, lo que parece que no está ansioso por hacer, o con un diodo y un condensador suficientemente grande en el lado del microcontrolador. Querrá un capacitor pequeño para ruido de línea pequeño y uno más grande para cubrir interrupciones breves de picos de batería.

Tenga en cuenta que un diodo reducirá ligeramente el voltaje entre la batería y el microcontrolador, por lo que deberá tenerlo en cuenta al seleccionar la capacitancia necesaria. Un diodo schottky ayudará a minimizar la caída.