Há algum tempo, mencionei o controlador do precipitador eletrostático IF, analisei cuidadosamente o tempo de acionamento SPWM monofásico e trifásico, concluí a escrita do código SPWM no processador STM32F103 e testei os sinais e formas de onda com um osciloscópio e um analisador lógico.
O TIMER1 e TIMER2 do STM32F103 suportam saídas PWM complementares, e eu escolhi CH1, CH2, CH3 do TIMER1 para acionamento trifásico A, B, C;
A frequência do clock do processador é de 72 MHz e o tempo morto da saída PWM complementar é definido como 4us pelo código a seguir;
SPWM_PWM_TIMER->BDTR = 0x80C4.
Quando a frequência do SPWM é 10kHz e a frequência do sinal senoidal é 50Hz, o sinal SPWM de saída será passado por dois estágios de resistores de filtragem passa-baixa com resistor de 1kΩ e capacitor de 0,1uF, e posso ver um muito sinal senoidal perfeito.
Primeiro, eu queria definir automaticamente o valor do ciclo de trabalho calculado pelo SPWM para o registro CCR do TIMER através do DMA e realizar a atualização do cache DMA na interrupção de meia conclusão e na interrupção de conclusão, mas porque a frequência também pode mudar durante operação, o que levará à mudança dinâmica do número de dados no DMA, tornando a saída do sinal senoidal da saída SPWM incoerente e gerando um componente de alta frequência.
Finalmente, os valores do registro CCR trifásico são atualizados a cada ciclo do sinal PWM através da interrupção de atualização do TIMER.
Isenção de responsabilidade: Todos os recursos fornecidos são parcialmente provenientes da Internet. Se houver qualquer violação de seus direitos autorais ou outros direitos e interesses, explique os motivos detalhados e forneça prova de direitos autorais ou direitos e interesses e envie-a para o e-mail: [email protected]. Nós cuidaremos disso para você o mais rápido possível.
Copyright© 2022 湘ICP备2022001581号-3