DC Motor solo funciona con el programador

1

He diseñado un circuito de microcontrolador para activar un motor de CC que utiliza señales de un chip ATmega234P a través de un puente H L239DNE. El problema que tengo es que el motor funciona más lento de lo normal mientras ejecuta el código PWM. Tan pronto como conecto un programador MKII al ISP, el motor funciona correctamente. Adjunto están mis esquemas de circuito y el código que estoy ejecutando. Cualquier ayuda sería muy apreciada!

Código ( source ):

/*
 * DCM_PWM.c
 *
 * Created: 14/09/2018 6:31:42 PM
 * Author : s4354441
 */ 

#define F_CPU 1000000UL
#include <avr/io.h>
#include <util/delay.h>

void setup_timer0 (void)
{
  DDRB = (1<<DDB3) | (1<<DDB4); // set the PWM pin to output.
  TCCR0A = (1<<COM0A1) | (1<<COM0A0) | (1<<COM0B1) | (1<<COM0B0) | (0<WGM01) | (1<<WGM00); // toggle OC0A on compare match
  TCCR0B = (0<<WGM02) | (0<<CS02)| (0<<CS01) | (1<<CS00); //select PWM, Phase Correct
  OCR0A = 0; // set output compare value
  OCR0B = 0; // set output compare value
}

void PWM_func (void)
{
  for (int i=0; i<255; i++) {
    OCR0A = i;
    _delay_ms(25);
  }

  for (int i=255; i>0; i--) {
    OCR0A = i;
    _delay_ms(10);
  }

  for (int i=0; i<255; i++) {
    OCR0B = i;
    _delay_ms(5);
  }

  for (int i=255; i>0; i--) {
    OCR0B = i;
    _delay_ms(25);
  }

  for (int i=0; i<255; i++) {
    OCR0A = i;
    _delay_ms(10);
  }
}


int main (void)
{   
  setup_timer0();
  PWM_func();
}

PCB Schematic 1 :

PCB Schematic 2 :

    
pregunta rsdanam

1 respuesta

2

No se ejecutaría en absoluto con el esquema como se muestra ,. Por lo tanto, L1C2 debe invertirse en el esquema.

Pero los servomotores demandan una gran corriente solo durante los cambios de comando de posición, (que en este caso pueden ser > > 100mA), por lo que el regulador L05 de baja potencia posiblemente esté sufriendo una sobrecarga, mientras que el voltaje cae para limitar la corriente. p>

Asegúrese de medir el voltaje y asegúrese de que este no sea el problema. Los valores de LC no son ideales como punto de interrupción del filtro de paso bajo y es más esencial filtrar y cuidar con tierra analógica que no comparte la corriente del motor.

En resumen, no pretendía hacer un juego de palabras, sin revisar su código, parece que tiene problemas con la fuente de alimentación y no hay informes de las especificaciones actuales de sobretensión.

Pruebe una PSU de PC hasta que aprenda a especificar y elegir un mejor suministro.

    
respondido por el Tony EE rocketscientist

Lea otras preguntas en las etiquetas