"Se um trabalhador quiser fazer bem o seu trabalho, ele deve primeiro afiar suas ferramentas." - Confúcio, "Os Analectos de Confúcio. Lu Linggong"
Primeira página > Programação > Implemente o inversor SPWM ase/ase para controlador de precipitador eletrostático usando STMMCU

Implemente o inversor SPWM ase/ase para controlador de precipitador eletrostático usando STMMCU

Publicado em 2024-11-08
Navegar:967

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.

Uma tabela de dados senoidais de meio ciclo é gerada e, com base na frequência do sinal senoidal e no valor da frequência do PWM, são calculados os intervalos em que o período do sinal senoidal precisa ser dividido, o o valor médio de cada dado do sinal senoidal é calculado, e o valor do ciclo de trabalho de cada intervalo é calculado com base nos dados senoidais máximos e nos valores máximos do ciclo de trabalho do sinal PWM;

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.

Implement the SPWM ase/ase inverter for electrostatic precipitator controller using STMMCU

Implement the SPWM ase/ase inverter for electrostatic precipitator controller using STMMCU

Implement the SPWM ase/ase inverter for electrostatic precipitator controller using STMMCU

Implement the SPWM ase/ase inverter for electrostatic precipitator controller using STMMCU

Implement the SPWM ase/ase inverter for electrostatic precipitator controller using STMMCU

Declaração de lançamento Este artigo foi reproduzido em: https://dev.to/zhangzhuyue/implement-the-spwm-3phase1phase-inverter-for-electrostatic-precipitator-controller-using-stm32103-mcu-129b Se houver alguma violação, entre em contato com study_golang @163.com excluir
Tutorial mais recente Mais>

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