ZHCSRF9A December 2022 – October 2023 DRV8461
PRODUCTION DATA
在步进电机系统中,电源提供的总功率将用于满足负载的扭矩要求,并会导致功率损耗,例如电机绕组电阻和驱动器导通电阻引起的电阻损耗。这是由方程式 11 表示:
其中 τ 是负载扭矩,ω 是电机转速。
根据方程式 11,我们可以观察到,当负载转矩增加时,电源提供的功率也会增加。自动转矩算法通过监控电源提供的功率来获取有关负载转矩的信息。恒定损耗由 ATQ_LRN 参数表示,ATQ_CNT 参数表示支持负载转矩所需的功率。
对于任何给定电机,ATQ_LRN 与线圈电流成正比。这可通过方程式 12 表示:
其中 IM 是电机电流,VVM 是驱动器的电源电压,k 是常数。方程式 12 给出了 ATQ_LRN 与电机电流之间的线性关系。自动扭矩学习例程在空载时的任意两个电流下学习 ATQ_LRN 值,然后使用此关系在任何其他电流下内插 ATQ_LRN 值。
ATQ_CNT 参数表示支持负载转矩的已提供功率的分量。此关系可以用方程式 13 表示。
其中 k1 是给定工作条件下的常数,IFS 是步进驱动器的满量程电流(正弦电流波形峰值)。
方程式 13 定义了自动扭矩算法的基本工作原理。ATQ_CNT 参数可用于根据在步进电机上施加的负载扭矩来执行电机线圈电流调节。
图 7-24 展示了 (ATQ_LRN + ATQ_CNT),对于额定电流为 2.8A 的混合双极 NEMA 24 步进电机,在 2.5A 满量程电流下作为负载扭矩的函数进行测量。ATQ_LRN 不随负载转矩变化,而 ATQ_CNT 随负载转矩线性变化。
启用自动扭矩算法后,必须运行学习例程来估计 ATQ_LRN 参数。
学习例程使用方程式 12 中所述的 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-24 列出了与自动扭矩学习例程相关的寄存器。
寄存器名称 | 说明 |
---|---|
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 展示了初始电流 (IFS1) 为 740mA 且最终电流 (IFS2) 为 2.2A 时的自动学习过程。ATQ_LEARN_CYCLE_SELECT 对应于 32 个半个周期。