少し前に、IF 電気集塵機コントローラーについて触れましたが、単相と三相の SPWM 駆動時間を注意深く分析し、STM32F103 プロセッサーでの SPWM コードの書き込みを完了し、オシロスコープで信号と波形をテストしました。ロジックアナライザー。
STM32F103 の TIMER1 と TIMER2 は相補 PWM 出力をサポートしており、TIMER1 の CH1、CH2、CH3 を A、B、C の三相駆動に選択しました。
プロセッサのクロック周波数は 72MHz で、相補 PWM 出力のデッドタイムは次のコードによって 4us に設定されます;
SPWM_PWM_TIMER->BDTR = 0x80C4.
半周期の正弦波データテーブルが生成され、正弦波信号の周波数とPWMの周波数の値に基づいて、正弦波信号の周期を分割する必要がある間隔が計算され、各正弦波信号データの平均値が計算され、最大正弦波データと PWM 信号の最大デューティ サイクル値に基づいて各間隔のデューティ サイクル値が計算されます。
SPWM の周波数が 10kHz、正弦波信号の周波数が 50Hz の場合、出力 SPWM 信号は、1kΩ 抵抗 0.1uF コンデンサを備えた 2 段のローパス フィルタリング抵抗器を通過します。完全な正弦信号。
当初はSPWMで計算したデューティサイクル値をDMA経由でTIMERのCCRレジスタに自動設定し、半完了割り込みと完了割り込みでのDMAキャッシュの更新を実現したかったのですが、途中で周波数も変化する可能性があるため、これにより、DMA のデータ数が動的に変化し、SPWM 出力の正弦波信号の出力がインコヒーレントになり、高周波成分が発生します。
最後に、TIMER の更新割り込みにより、三相 CCR レジスタの値が PWM 信号の周期ごとに更新されます。
免責事項: 提供されるすべてのリソースの一部はインターネットからのものです。お客様の著作権またはその他の権利および利益の侵害がある場合は、詳細な理由を説明し、著作権または権利および利益の証拠を提出して、電子メール [email protected] に送信してください。 できるだけ早く対応させていただきます。
Copyright© 2022 湘ICP备2022001581号-3