电子说
在电子工程师的日常工作中,步进电机驱动芯片的选择至关重要。今天要给大家详细介绍的TMC2262,是一款功能强大的智能步进电机驱动芯片,它能够带来高效、低噪且精准的电机控制体验。下面我们将从其概述、工作原理、关键特性、应用场景以及配置与使用等方面进行深入探讨。
文件下载:tmc2262.pdf
TMC2262是一款小型化、智能化且高功率的单轴步进电机驱动IC,具备步进与方向接口、SPI接口以及广泛的诊断能力。其高集成度、高能效和小尺寸的特点,使其非常适合用于Nema 17、Nema 23甚至Nema 24步进电机,能够实现小型化、可扩展且经济高效的电机驱动解决方案。
TMC2262提供了两种重要的控制模式:StealthChop+和SpreadCycle。
StealthChop+是一种电压控制的电机斩波原理,它将高精度的无传感器负载测量、共振抑制和卓越的能源效率融为一体,能够实现最佳的位置精度和超静音的电机运行。在电机低速和静止时表现出色,能有效减少噪音和振动。
而在高速应用中,当电机进入弱磁范围时,SpreadCycle则是StealthChop+的替代方案。它是一种先进的逐周期斩波模式,能够在广泛的速度和负载范围内提供平稳的运行和良好的共振抑制效果。
StallGuard2和StallGuard+为电机负载提供了精确的测量。StallGuard2与SpreadCycle斩波器结合使用,而StallGuard+则与StealthChop+结合,采用不同的原理来实现无传感器的负载检测。这些功能不仅可以用于失速检测,还能用于其他负载低于失速点的应用场景,如CoolStep和CoolStep+的负载自适应电流减少功能。
CoolStep和CoolStep+能够根据电机的负载情况自动调整电流,使电机以最佳电流运行。它们利用StallGuard2或StallGuard+的负载测量信息,将电机电流调整到实际负载所需的最小值,从而实现节能并保持组件凉爽,显著提高电机效率。
在使用TMC2262之前,需要进行一些初始配置,如配置PLL、设置电机电流范围、启用StealthChop+等。具体的配置步骤可以参考数据手册中的快速配置指南,例如:
# 初始化PLL
Write(PLL, 0x05FF) # 配置为16MHz外部时钟;设置提交标志
Wait(1) # 等待1ms
Write(PLL, 0x65FE) # 重新写入,提交标志置0并清除错误标志
Read(PLL) # 读取PLL寄存器以轮询错误标志
# 最相关的配置
Write(CHOPCONF, 0x00410255) # MRES=0, TPDFD=4, TBL=3, CHM=0, DISFDCC=0, FD3=0; HEND_OFFSET=4, HSTRT_TFD210=5, TOFF=5
Write(DRV_CONF, 0x0000003f) # 全电流范围(4A), CURRENT_RANGE=3, CURRENT_RANGE_SCALE=3, SLOPE_CONTROL=3
Write(IHOLD_IRUN, 0x00077f01) # IRUN=127(=50%), IHOLD=1, IHOLDDELAY=7
Write(TCOOLTHRS, 1048575) # 设置开启CoolStep(+)和StallGuard(+)的较低阈值速度
# 启用StealthChop+示例
# 设置电机电流
Configure(DRVCONF, IRUN) # 配置电机电流设置,匹配电机的额定电流
Set(IHOLD, desired_value) # 设置静止扭矩所需的IHOLD值
# 设置电机线圈电感
Write(COIL_INDUCT, coil_inductance_value) # 输入从电机数据表中获取的线圈电感值
# 启用StealthChop+
Set(GCONF.en_stealthchop)
# 选择速度阈值
Select(TCOOLTHRS, appropriate_value) # 选择CoolStep+的较低速度阈值
# 选择节能因子
Program(COOL_CUR_DIV, value) # 编程电流减少因子
# 启用驱动器
Set(CHOPCONF.TOFF, 3) # 启用电机
# 初始运动以测量线圈电阻
Move(motor, conditions) # 以特定条件转动电机,使驱动器测量电机线圈电阻
# 使电机进入CoolStep速度范围
Accelerate(motor, speed) # 加速电机至特定速度,切换到CoolStep+操作# 配置StallGuard+示例
# 设置电机电感
Write(COIL_INDUCT, motor_inductance)
# 进行线圈电阻的自动测量
Enable(automatic_resistance_measurement)
# 确定负载储备值
Determine(load_reserve_values)
# 设置失速阈值
Set(SGP_THRS, threshold_value)# 配置CoolStep+示例
# 基本电机设置
Configure(StallGuard+) # 配置StallGuard+
# 负载储备设置
Determine(load_reserve_values) # 根据指南确定负载储备值
# 选择节能因子
Set(COOL_CUR_DIV, value) # 控制较低的电流值
# 确定较低速度阈值
Determine(TCOOLTHRS, velocity) # 确定StallGuard+给出稳定值的较低速度
# 确定CoolStep PI调节器设置
Set(COOLSTEP_P, value) # 初始快速响应负载变化
Set(COOLSTEP_I, value) # 快速响应电机负载增加
# 确定电流减少速度
Increase(COOL_PI_DOWN_LIMIT, rate) # 加速电流减少速度
# 确定电流上升速度
Set(COOL_PI_OFF_SPEED, value) # 设定电流上升速度TMC2262作为一款智能步进电机驱动芯片,凭借其丰富的功能和出色的性能,在多个领域都有广泛的应用前景。然而,在实际应用中,我们也需要根据具体的需求和场景,仔细调整和优化各项参数,以充分发挥其优势。例如,在不同的电机负载和速度要求下,如何合理配置StealthChop+、StallGuard+和CoolStep+等功能,是我们需要进一步思考和实践的问题。希望通过本文的介绍,能够帮助大家更好地了解和使用TMC2262,为我们的电子设计工作带来更多的便利和可能性。
你在使用TMC2262的过程中有遇到过哪些挑战?你是如何解决这些问题的呢?欢迎在评论区分享你的经验和见解。
全部0条评论
快来发表一下你的评论吧 !