ZHCSN22 April 2020 DRV8434S
PRODUCTION DATA
步進電機的繞組電流、反電動勢和電機的機械扭矩負載之間有著獨特的關系,如圖 7-21所示。對于給定的繞組電流,當電機負載接近電機的扭矩能力時,反電動勢將與繞組電流同相。通過檢測電機電流的上升和下降電流象限之間的反電動勢相移,DRV8434S 可檢測電機過載失速情況或線路末端運動。
圖 7-21 通過監控電機反電動勢進行失速檢測失速檢測算法僅在器件被編程為在智能調優紋波控制衰減模式下運行時才有效。EN_STL 位必須為“1”才能啟用失速檢測。此外,如果存在任何故障條件(UVLO、OCP、OL、OTSD 等),將禁用失速檢測。
算法可通過監控 PWM 關斷時間來比較上升和下降象限之間的反電動勢,并生成一個由 12 位寄存器 TRQ_COUNT 表示的值。進行比較時,TRQ_COUNT 值實際上與電機電流、環境溫度和電源電壓無關。該算法支持全步進操作模式。
對于輕載電機,TRQ_COUNT 將為非零值。當電機接近失速狀態時,TRQ_COUNT 將接近零并可用于檢測失速狀態。如果任何時候 TRQ_COUNT 降至低于失速閾值(由 12 位 STALL_TH 寄存器表示),器件將檢測失速情況,并且 STALL、STL 和 FAULT 位在 SPI 寄存器中被鎖存為高電平。要指明 nFAULT 引腳上的失速檢測故障,STL_REP 位必須為“1”。如果 STL_REP 位為“1”,當檢測到失速時,nFAULT 引腳將被驅動為低電平。
在失速情況下,電機軸不會旋轉。當失速條件消失并且電機速度從零升至其目標速度時,電機會呈斜坡趨勢增加到目標轉速。當通過 CLR_FLT 位或 nSLEEP 復位脈沖發出清除故障命令后,nFAULT 將被釋放并且故障寄存器將被清除。
TRQ_COUNT 的計算結果是正在旋轉的電機的最近四個電半周期的平均扭矩計數。計算值將在接下來的 100ns 內在器件 CTRL8 和 CTRL9 寄存器中更新。在下次更新之前,寄存器將保持不變。之后,每個電半周期會更新一次。
電機線圈阻抗較高可能會導致 TRQ_COUNT 低。TRQ_SCALE 位允許按比例調高 TRQ_COUNT 值,以便于進一步處理。如果最初計算的 TRQ_COUNT 值小于 500,并且 TRQ_SCALE 位為“1”,則 TRQ_COUNT 將乘以 8。如果 TRQ_SCALE 位為“0”,TRQ_COUNT 會保留算法最初計算的值。
失速閾值可以通過兩種方式設置 – 用戶可以寫入 STALL_TH 位,或者讓算法使用失速學習過程自行了解失速閾值。將 STL_LRN 位設置為“1”即會開始失速學習過程。故意使電機短暫失速以便讓算法學習理想的失速閾值。成功學習結束時,會用學習到的失速閾值更新 STALL_TH 寄存器。STL_LRN_OK 位會在成功學習后變為高電平。
在一種速度下獲得的失速閾值可能不能充分適合其他速度。建議每當電機轉速顯著變化時,均重新獲得失速閾值。