0
  • 聊天消息
  • 系統(tǒng)消息
  • 評論與回復(fù)
登錄后你可以
  • 下載海量資料
  • 學(xué)習(xí)在線課程
  • 觀看技術(shù)視頻
  • 寫文章/發(fā)帖/加入社區(qū)
會員中心
創(chuàng)作中心

完善資料讓更多小伙伴認(rèn)識你,還能領(lǐng)取20積分哦,立即完善>

3天內(nèi)不再提示

STM32G474逐波限流保護(hù)的實(shí)現(xiàn)

STM32單片機(jī) ? 來源:STM32單片機(jī) ? 作者:STM32單片機(jī) ? 2022-05-06 09:56 ? 次閱讀

前言

電源設(shè)計中經(jīng)常會使用逐波限流保護(hù)來保證電流不超過限定的最大值,若在短時內(nèi)多次觸發(fā)逐波限流保護(hù)則強(qiáng)制封鎖 PWM 輸出,讓系統(tǒng)進(jìn)入故障保護(hù)狀態(tài),在這個過程中需要對逐波限流觸發(fā)次數(shù)進(jìn)行計數(shù),以此來判斷是否進(jìn)入故障保護(hù),本文針對該功能,基于 STM32G474 高精度定時器,介紹如何實(shí)現(xiàn)逐波限流保護(hù)以及保護(hù)次數(shù)計數(shù)。

逐波限流原理介紹

所謂逐波限流指在電源工作過程中,對電感電流或是功率管導(dǎo)通電流進(jìn)行實(shí)時監(jiān)測,一旦超出設(shè)定范圍,則在該 PWM 周期內(nèi)立即關(guān)閉相關(guān)的 PWM 驅(qū)動,直到下個 PWM 周期再自動使能PWM 驅(qū)動,若電流信號一直超限,則一直封鎖 PWM,直到電流恢復(fù)正常的下一個新的 PWM 周期后,才能重新使能 PWM 輸出。工作過程示意圖如下圖所示,OCP 表示過流保護(hù),高電平表示電流超限。

dacfd13e-ccd5-11ec-bce3-dac502259ad0.png

STM32G474 逐波限流保護(hù)的實(shí)現(xiàn)

STM32G474 的高精度定時器除了能產(chǎn)生高精度的 PWM 波外,還包含了外部事件管理器,能對多達(dá) 10 個外部事件進(jìn)行處理??梢栽O(shè)置外部事件的觸發(fā)源、觸發(fā)方式(沿觸發(fā)或是電平觸發(fā))、相應(yīng)方式(同步或是異步)以及事件的濾波方式。外部事件的一個最重要的作用就是用來對輸出的PWM 進(jìn)行控制,觸發(fā) PWM 的 Set 與 Reset 動作。

dadf0b40-ccd5-11ec-bce3-dac502259ad0.png

在觸發(fā)源的選擇上,每個外部事件可以從 4 個源中進(jìn)行選擇:

? 外部 pin 腳輸入

?內(nèi)部比較器輸出

? 其他定時器觸發(fā)信號(如 TIM1/2/3_TRGO)

? ADC 看門狗事件(ADCx_ADC1/2/3)

對應(yīng)逐波限流功能,可以選擇外部 pin 腳輸入或是內(nèi)部比較器輸出,推薦的方式為內(nèi)部比較器輸出。外部電流采樣信號直接輸入到片上比較器(COMPx_INP),比較器的輸出結(jié)果作為外部事件觸發(fā)源。

daee7c9c-ccd5-11ec-bce3-dac502259ad0.png

基于以上的介紹,利用 CubeMx 工具進(jìn)行相應(yīng)的配置來說明整個功能的實(shí)現(xiàn)過程,以高精度定時器中的 Timer A 為例,主要介紹外部事件與逐波限流保護(hù)的配置,其他的配置不再贅述。外部事件的配置如下,觸發(fā)源為內(nèi)部比較器 2 的輸出,高電平有效。

db0d1c42-ccd5-11ec-bce3-dac502259ad0.png

為了使用內(nèi)部比較器,必須對內(nèi)部對應(yīng)的比較器進(jìn)行配置,一般選擇 DAC 的輸出作為比較器的參考,所以還需要對 DAC 進(jìn)行配置。比較器的配置如下,設(shè)置回差,減少比較器輸出抖動。

db2e04f2-ccd5-11ec-bce3-dac502259ad0.png

DAC 的配置如下(如果選擇 VREFINT 或是COMPx_INM 則無需配置 DAC):

db3e9196-ccd5-11ec-bce3-dac502259ad0.png

PWM 輸出的配置如下,PWM 的 Reset 除了比較事件外,添加外部事件源。

db5c7dc8-ccd5-11ec-bce3-dac502259ad0.png

基于以上的配置,在生成的工程代碼中添加必要的外設(shè)啟動函數(shù)即可,如下:

db70dbd8-ccd5-11ec-bce3-dac502259ad0.png

通過示波器查看波形,黃色表示輸出 PWM 驅(qū)動;綠色內(nèi)部比較器輸出信號,輸出為高時表示限流保護(hù),觸發(fā)封波,輸出為低則 PWM 可正常輸出。

db903f0a-ccd5-11ec-bce3-dac502259ad0.png

逐波限流觸發(fā)次數(shù)計數(shù)的實(shí)現(xiàn)

很多應(yīng)用中不但需要實(shí)現(xiàn)逐波限流,還需要對某段時間內(nèi)觸發(fā)逐波限流的次數(shù)進(jìn)行計數(shù),以此來判斷系統(tǒng)是否出現(xiàn)短路或是過載,然后決定系統(tǒng)是否進(jìn)入永久保護(hù)狀態(tài),除非軟件再次使能輸出。

在高精度定時器中,外部事件不但可以用來觸發(fā) PWM 動作,它還可以被定時器內(nèi)部的捕獲單元捕獲,所以可以通過讀取捕獲標(biāo)志位來判定外部事件是否發(fā)生并進(jìn)行計數(shù);另外如本文采用了內(nèi)部比較器的輸出作為外部事件的觸發(fā)源,可以通過直接讀取比較器的比較中斷標(biāo)識或是輸出狀態(tài)的方式來判定外部事件是否發(fā)生并進(jìn)行計數(shù)。

下面以讀取捕獲標(biāo)識為例說明如何實(shí)現(xiàn)該功能,該方法更加通用。在 CubeMx 中配置高精度定時器的 Capture 功能,如下:

dba5b1a0-ccd5-11ec-bce3-dac502259ad0.png

在軟件中添加如下的代碼,假如判斷周期為 1 秒,本文給出偽代碼的形式,具體代碼需根據(jù)實(shí)際的應(yīng)用進(jìn)行修改。

dbb9f1b0-ccd5-11ec-bce3-dac502259ad0.png

小結(jié)

本文對逐波限流的原理進(jìn)行了簡單介紹,給出了如何利用 STM32G474 系列 MCU 的高精度定時器中的相關(guān)功能實(shí)現(xiàn)逐波限流以及逐波限流計數(shù)的方案。

審核編輯 :李倩

聲明:本文內(nèi)容及配圖由入駐作者撰寫或者入駐合作網(wǎng)站授權(quán)轉(zhuǎn)載。文章觀點(diǎn)僅代表作者本人,不代表電子發(fā)燒友網(wǎng)立場。文章及其配圖僅供工程師學(xué)習(xí)之用,如有內(nèi)容侵權(quán)或者其他違規(guī)問題,請聯(lián)系本站處理。 舉報投訴
  • mcu
    mcu
    +關(guān)注

    關(guān)注

    146

    文章

    16667

    瀏覽量

    347782
  • PWM
    PWM
    +關(guān)注

    關(guān)注

    114

    文章

    5058

    瀏覽量

    212193
  • 定時器
    +關(guān)注

    關(guān)注

    23

    文章

    3218

    瀏覽量

    113679

原文標(biāo)題:工程師筆記|逐波限流保護(hù)實(shí)現(xiàn)方案

文章出處:【微信號:STM32_STM8_MCU,微信公眾號:STM32單片機(jī)】歡迎添加關(guān)注!文章轉(zhuǎn)載請注明出處。

收藏 人收藏

    評論

    相關(guān)推薦

    stm32g474 qspi不進(jìn)dma中斷是怎么回事?

    stm32g474 qspi 不進(jìn)dma中斷
    發(fā)表于 09-13 07:10

    stm32g474的開發(fā)板很燙的原因?

    stm32g474的開發(fā)板很燙
    發(fā)表于 07-24 06:59

    基于STM32G474的電機(jī)控制,如何在sdk上配置使用spwm?

    基于STM32G474的電機(jī)控制,如何在sdk上配置使用spwm
    發(fā)表于 05-30 06:28

    STM32G474的HRTIM和高級定時器除了定時精度上有區(qū)別外,還有其它什么區(qū)別?

    STM32G474的HRTIM和高級定時器除了定時精度上有區(qū)別外,還有其它什么區(qū)別?什么情況下只能用HRTIM定時器,而用不了高級定時器?有沒有哪位大神講一下?。?!
    發(fā)表于 05-28 08:15

    STM32G474如何實(shí)現(xiàn)帶同步整流管的BUCK電路?

    STM32G474 如何實(shí)現(xiàn)帶同步整流管的BUCK電路
    發(fā)表于 05-22 07:53

    為什么STM32G474的hrtim里,timerA在使用死區(qū)模式后,設(shè)置TA1的輸出后無法設(shè)置TA2的置位源和復(fù)位源?

    為什么STM32G474的hrtim里,timerA在使用死區(qū)模式后,設(shè)置TA1的輸出后無法設(shè)置TA2的置位源和復(fù)位源,而timerB在使用死區(qū)模式后無法設(shè)置Tb2的置位源但可以設(shè)置復(fù)位源?
    發(fā)表于 05-22 06:23

    STM32G474除以0會進(jìn)錯誤中斷,為什么?

    我的編譯環(huán)境為STM32CubeIDE,芯片為STM32G474,我發(fā)現(xiàn)程序中如果有除以0的操作時,會跑到錯誤中斷中。請問能不能通過設(shè)置,可以讓程序不要跑進(jìn)錯誤中斷,直接等于當(dāng)前變量類型的最大值
    發(fā)表于 04-01 06:32

    STM32G4如何利用ADC-DMA對全橋電路實(shí)現(xiàn)閉環(huán)控制?

    開始接觸STM32G474,用于對一個全橋電路實(shí)現(xiàn)閉環(huán)控制,里面包括PI控制,準(zhǔn)PR控制,和一個相位環(huán);在學(xué)習(xí)完輸出pwm和ADC-DMA兩個模塊后無法將兩者整合在一起,對于后續(xù)步驟更加沒有思路
    發(fā)表于 03-22 06:40

    Stm32G474 DMA傳輸全部完畢后,需要產(chǎn)生中斷并調(diào)運(yùn)回調(diào)函數(shù)完成相關(guān)操作,如何處理?

    Stm32G474,DMA傳輸全部完畢后,需要產(chǎn)生中斷并調(diào)運(yùn)回調(diào)函數(shù)完成相關(guān)操作。請問我如何處理?沒有看到常規(guī)的回調(diào)函數(shù)(例如這樣的HAL_TIM_PeriodElapsedHalfCpltCallback)
    發(fā)表于 03-15 08:26

    關(guān)于STM32G474 ADC多通道數(shù)據(jù)采集遇到的問題求解

    STM32G474 ADC時鐘:168MHz/4=42MHz 分辨率 12bit 單端輸入 ADC1 采集6通道數(shù)據(jù) 采樣時間6.5cycle 單端1.65V【0~-10mV左右跳動】 ADC2
    發(fā)表于 03-14 08:11

    STM32G474的DAC4無輸出怎么解決?

    STM32G474 的DAC4采用定時器4觸發(fā)dma,OUT1連接到比較器5,測試下來 DAC4沒輸出,是配置哪里有問題嗎 定時器4的配置: DAC4: 比較器5: DAC4的DMA: normal 改circular 改過不行memory 勾上也試過 不行。 配置哪里有問題嗎
    發(fā)表于 03-08 07:08

    實(shí)戰(zhàn)經(jīng)驗(yàn) | STM32G474 中 Triggered-half 模式的實(shí)現(xiàn)

    關(guān)鍵詞:Triggered-half,Interleave 目錄預(yù)覽 1、引言 2、Triggered-half 模式介紹 3、應(yīng)用實(shí)例 4、小結(jié) 01 引言 STM32 G474 中包含了針對
    的頭像 發(fā)表于 12-11 18:15 ?1303次閱讀
    實(shí)戰(zhàn)經(jīng)驗(yàn) | <b class='flag-5'>STM32G474</b> 中 Triggered-half 模式的<b class='flag-5'>實(shí)現(xiàn)</b>

    基于ST STM32G474的500W全橋移相零電壓切換直流-直流轉(zhuǎn)換器數(shù)字電源方案

    基于ST STM32G474的500W全橋移相零電壓切換直流-直流轉(zhuǎn)換器數(shù)字電源方案
    的頭像 發(fā)表于 10-27 09:47 ?2173次閱讀
    基于ST <b class='flag-5'>STM32G474</b>的500W全橋移相零電壓切換直流-直流轉(zhuǎn)換器數(shù)字電源方案

    STM32G474 限流保護(hù)實(shí)現(xiàn)

    STM32G474 限流保護(hù)實(shí)現(xiàn)
    的頭像 發(fā)表于 10-26 18:16 ?2282次閱讀
    <b class='flag-5'>STM32G474</b> <b class='flag-5'>逐</b><b class='flag-5'>波</b><b class='flag-5'>限流</b><b class='flag-5'>保護(hù)</b>的<b class='flag-5'>實(shí)現(xiàn)</b>

    STM32 HRTIM Burst輸出模式應(yīng)用演示

    有人使用STM32G474芯片的片上高精度定時器HRTIM,他想使用其輸出功能的Burst Mode。但不知如何使用,想找找參考例程。我這里就使用STM32G474芯片做下應(yīng)用演示。
    的頭像 發(fā)表于 10-13 09:07 ?3818次閱讀
    <b class='flag-5'>STM32</b> HRTIM Burst輸出模式應(yīng)用演示