ZHCSN95A August 2022 – December 2022 DRV8452
PRODUCTION DATA
在步進電機系統中,電源提供的總功率將用于滿足負載的扭矩要求,并會導致功率損耗,例如電機繞組電阻和驅動器導通電阻引起的電阻損耗。這是由Equation11 表示:
其中 τ 是負載扭矩,ω 是電機轉速。
根據Equation11,我們可以觀察到,當負載轉矩增加時,電源提供的功率也會增加。自動轉矩算法通過監控電源提供的功率來獲取有關負載轉矩的信息。恒定損耗由 ATQ_LRN 參數表示,ATQ_CNT 參數表示支持負載轉矩所需的功率。
對于任何給定電機,ATQ_LRN 與線圈電流成正比。這可通過Equation12 表示:
其中 IM 是電機電流,VVM 是驅動器的電源電壓,k 是常數。Equation12 給出了 ATQ_LRN 與電機電流之間的線性關系。自動扭矩學習例程在空載時的任意兩個電流下學習 ATQ_LRN 值,然后使用此關系在任何其他電流下內插 ATQ_LRN 值。
ATQ_CNT 參數表示支持負載轉矩的已提供功率的分量。此關系可以用Equation13 表示。
其中 k1 是給定工作條件下的常數,IFS 是步進驅動器的滿量程電流(正弦電流波形峰值)。
Equation13 定義了自動扭矩算法的基本工作原理。ATQ_CNT 參數可用于根據在步進電機上施加的負載扭矩來執行電機線圈電流調節。
圖 7-24 展示了 (ATQ_LRN + ATQ_CNT),對于額定電流為 2.8A 的混合雙極 NEMA 24 步進電機,在 2.5A 滿量程電流下作為負載扭矩的函數進行測量。ATQ_LRN 不隨負載轉矩變化,而 ATQ_CNT 隨負載轉矩線性變化。
啟用自動扭矩算法后,必須運行學習例程來估計 ATQ_LRN 參數。
學習例程使用Equation12 中所述的 ATQ_LRN 與電機電流之間的線性關系。用戶必須選擇執行學習的兩個電流值,在電機上施加空載扭矩。這兩個電流值由 ATQ_LRN_MIN_CURRENT 和 ATQ_LRN_STEP 寄存器編程。
初始電流電平 = ATQ_LRN_MIN_CURRENT x 8
最終電流水平 = 初始電流水平 + ATQ_LRN_STEP
這兩個電流下的 ATQ_LRN 值保存在 ATQ_LRN_CONST1 和 ATQ_LRN_CONST2 寄存器中。這兩個寄存器用于為應用工作范圍內的所有其他電流內插 ATQ_LRN 值。
表 7-23 列出了與自動扭矩學習例程相關的寄存器。
|
寄存器名稱 |
說明 |
|---|---|
ATQ_LRN_MIN_CURRENT[4:0] | 表示自動扭矩學習例程的初始電流電平。 |
ATQ_LRN_STEP[1:0] | 表示初始電流電平的增量。它支持四種選項:
示例:如果 ATQ_LRN_STEP = 10b 且 ATQ_LRN_MIN_CURRENT = 11000b,則:
|
ATQ_LRN_CYCLE_SELECT[1:0] | 學習例程使電流跳轉到下一個電平之后,保持一個電流電平的正弦半個周期數量。它支持四種選項:
|
LRN_START | 向該位寫入 1b 將啟用自動扭矩學習例程。學習完成后,該位自動變為 0b。 |
LRN_DONE | 學習完成后,該位變為 1b。 |
ATQ_LRN_CONST1[10:0] | 指示初始學習電流電平時的 ATQ_LRN 參數。 |
ATQ_LRN_CONST2[10:0] | 指示最終學習電流電平時的 ATQ_LRN 參數。 |
VM_SCALE | 當該位為 1b 時,自動轉矩算法根據電源電壓變化自動調整 ATQ_UL、ATQ_LL 和 ATQ_LRN 參數。 |
在設置學習例程參數時,需要考慮以下幾點:
建議選擇介于最大工作電流的 30% 至 50% 之間的初始電流電平。
最終電流水平不得超過 255,并且可以在最大工作電流的 80% 和 100% 之間選擇。
電流波形失真(由于高速或低電源電壓)會導致 ATQ_LRN 參數讀取不正確。應從觀察到波形失真的電流中選擇學習電流電平。
ATQ_LRN_CYCLE_SELECT 的值較低,可加快學習速度。但是,在易受噪聲影響的系統中,較高的 ATQ_LRN_CYCLE_SELECT 會導致更穩定的 ATQ_LRN 參數值。
當電機達到穩態速度時,應進行學習。
如果電機發生更改或電機速度變化 ±10%,則應重新學習。
為了進行簡單總結,應該應用以下命令序列來啟用自動學習:
將 1b 寫入 ATQ_EN
空載運行電機
對 ATQ_LRN_MIN_CURRENT 進行編程
對 ATQ_LRN_STEP 進行編程
對 ATQ_LRN_CYCLE_SELECT 進行編程
將 1b 寫入 ATQ_LRN_START
該算法會以初始電流電平運行電機并保持 ATQ_LRN_CYCLE_SELECT 個電氣半個周期
接著,該算法會以最終電流電平運行電機并保持 ATQ_LRN_CYCLE_SELECT 個電氣半個周期
學習完成后,
ATQ_LRN_START 位會自動清零至 0b
ATQ_LRN_DONE 位變為 1b
ATQ_LRN_CONST1 和 ATQ_LRN_CONST2 會填充在各自的寄存器中
電機電流達到 ATQ_TRQ_MAX
從原型設計測試了解 ATQ_LRN_CONST1 和 ATQ_LRN_CONST2 后,即可用于大規模生產,而無需再次調用學習例程。大規模生產中應使用以下命令序列:
VREF 設置為與原型測試學習期間相同的值
對 ATQ_LRN_MIN_CURRENT 進行編程
對 ATQ_LRN_STEP 進行編程
對 ATQ_LRN_CONST1 進行編程
對 ATQ_LRN_CONST2 進行編程
將 1b 寫入 ATQ_EN
圖 7-25 顯示了自動扭矩學習例程的綜合流程圖。
圖 7-26 自動扭矩學習圖 7-26 展示了初始電流 (IFS1) 為 740mA 且最終電流 (IFS2) 為 2.2A 時的自動學習過程。ATQ_LEARN_CYCLE_SELECT 對應于 32 個半個周期。