ZHCSJO5D April 2020 – April 2021 DRV8889-Q1
PRODUCTION DATA
步進(jìn)電機(jī)的繞組電流、反電動(dòng)勢和電機(jī)的機(jī)械扭矩負(fù)載之間有著獨(dú)特的關(guān)系,如圖 7-21 所示。當(dāng)電機(jī)負(fù)載接近電機(jī)在給定的繞組電流下的扭矩能力時(shí),反電動(dòng)勢將與繞組電流同相移動(dòng)。通過檢測電機(jī)電流的上升和下降電流象限之間的反電動(dòng)勢相移,該器件可檢測到電機(jī)過載失速情況或線路末端運(yùn)動(dòng)。
圖 7-21 通過監(jiān)控電機(jī)反電動(dòng)勢進(jìn)行失速檢測失速檢測算法僅在器件被編程為在智能調(diào)優(yōu)紋波控制衰減模式下運(yùn)行時(shí)才有效。CTRL5 寄存器中的 EN_STL 位必須為“1”才能啟用失速檢測。該算法可通過監(jiān)控 PWM 關(guān)斷時(shí)間來比較上升和下降象限之間的反電動(dòng)勢,并生成一個(gè)由 8 位寄存器 TRQ_COUNT 表示的值。進(jìn)行比較時(shí),TRQ_COUNT 值實(shí)際上與電機(jī)電流、電機(jī)繞組電阻、環(huán)境溫度和電源電壓無關(guān)。該算法支持全步進(jìn)操作模式。
對于輕載電機(jī),TRQ_COUNT 將為非零值。當(dāng)電機(jī)接近失速狀態(tài)時(shí),TRQ_COUNT 將接近零并可用于檢測失速狀態(tài)。如果任何時(shí)候 TRQ_COUNT 降至低于失速閾值(由 8 位 STALL_TH 寄存器表示),器件將檢測到失速情況,并且 STALL、STL 和 FAULT 位在 SPI 寄存器中被鎖存為高電平。要指明 nFAULT 引腳上的失速檢測故障,CTRL5 寄存器中的 STL_REP 位必須為“1”。如果 STL_REP 位為“1”,當(dāng)檢測到失速時(shí),nFAULT 引腳將被驅(qū)動(dòng)為低電平。在失速狀態(tài)下,電機(jī)軸不會旋轉(zhuǎn)。當(dāng)失速狀態(tài)消失后,電機(jī)又開始旋轉(zhuǎn)。當(dāng)已通過 CLR_FLT 位或 nSLEEP 復(fù)位脈沖發(fā)出清除故障命令后,nFAULT 線路將被釋放并且故障寄存器將被清除。
系統(tǒng)會根據(jù)最近的四個(gè)電氣半個(gè)周期計(jì)算 TRQ_CNT 的平均值。一旦計(jì)算出來,其在 100ns 內(nèi)在 SPI 寄存器中更新。最近的 TRQ_CNT 更新之后,它會將值保留在 SPI 寄存器中,用于下一個(gè)電氣半個(gè)周期,此后,TRQ_CNT 將更新為新值。電氣半個(gè)周期的持續(xù)時(shí)間取決于微步進(jìn)和步進(jìn)頻率。最多時(shí),需要兩個(gè)電氣循環(huán)來檢測失速。
失速閾值可以通過兩種方式設(shè)置 – 用戶可以寫入 STALL_TH 位,或者讓算法通過失速學(xué)習(xí)過程自行了解失速閾值。失速學(xué)習(xí)過程要求 CTRL5 寄存器中的 STL_LRN 位為“1”,并且電機(jī)會刻意失速一段時(shí)間,以使算法學(xué)習(xí)理想的失速閾值。該過程需要 16 個(gè)電周期,并且在成功學(xué)習(xí)結(jié)束時(shí),會使用適當(dāng)?shù)氖匍撝滴粊砑虞d STALL_TH 寄存器。此外,STL_LRN_OK 位在成功學(xué)習(xí)結(jié)束后會變?yōu)楦唠娖健=ㄗh用戶使用失速學(xué)習(xí)過程設(shè)置失速閾值,以進(jìn)行正確檢測失速檢測。一種速度下的失速閾值可能不適用于另一種速度 - 因此,建議在電機(jī)速度發(fā)生變化時(shí)重新了解失速閾值。