0
  • 聊天消息
  • 系统消息
  • 评论与回复
登录后你可以
  • 下载海量资料
  • 学习在线课程
  • 观看技术视频
  • 写文章/发帖/加入社区
会员中心
创作中心

完善资料让更多小伙伴认识你,还能领取20积分哦,立即完善>

3天内不再提示

基于TMC5160 StallGuard2实战案例分享

Sq0B_Excelpoint 来源:Excelpoint世健 2023-03-02 09:29 次阅读

当控制环境比较恶劣,周边可能存在大型的电机对电磁抗干扰能力影响较大时,管道闸中的阀门控制将面临一定挑战和障碍,面对这种情况,该如何明确阀门的位置和检测扭矩?本次技术型授权代理商Excelpoint世健邀请到了他们的客户——行业资深工程师阮工来分享他的实战案例。

ADI的TMC5160是一款高度紧凑的步进电机控制器驱动器IC,具有最低功耗和最高动态性能的功率级,能确保无噪音运行,结合最高效率和最佳电机扭矩。阮工运用TMC5160 StallGuard2,通过编码器来判断阀门是否已经开启或关闭,通过扭矩判断阀门是否异常不能打开和关闭。该项目输入参数如下表:

33ce84be-b813-11ed-bfe3-dac502259ad0.png

图1.输入参数

下图为阮工结合硬件原理框架设置的系统架构。

33db601c-b813-11ed-bfe3-dac502259ad0.png

图2.系统架构

电源电压输入部分

电源DC-DC选择ADI的MAX17501,MAX17502,该型号输入电压可以支持最高60V(和TMC5160最高输入电压一致)。电流分别是500mA和1A,封装一致,由于不同的外设(光电开关、编码器)需求电流不一样,用户可以根据实际需求来选择型号。

为了实现断电记忆的功能,使用超级电容来作为备份电源,超级电容芯片选择LTC3225对超级电容进行充电管理。当电源断电后超级电容还可以持续输出一段时间来维持MCU供电,MCU就可以检测输入电压来判断是否已断电来记录位置。

MCU供电以MAX8891,MAX8891低压差(LDO线性稳压器设计用于提供高达150mA的连续输出电流,可以满足MCU、通信接口芯片的供电电流。

步进电机驱动部

步进电机驱动部分,阮工使用了TMC5160。TMC5160的电压范围为8-60V;支持编码器接口和2个参考开关输入;支持StallGuard2高精度的无传感器负载检测,可用于阀门故障检测;外置MOS管,最大支持电流20A。实际应用时,选择60V40A的mos,可以满足最大5A的需求。

通信部分

阮工在CAN接口使用了MAX3051,该型号支持最大1M的速率。RS485接口使用了MAX3060,该型号±15kV ESD保护、失效保护、20Mbps,输入电压是3.3V。接口芯片供电都是3.3V,可以直接与MCU链接。并且这两个型号体积小,可以很好地优化PCB尺寸。用户可以根据项目实际的需求来选择通信接口。

位置反馈

大部分编码器使用的是差分信号,这里以MAX14980作为信号转换,将差分信号转换为单端信号,链接TMC5160和MCU的编码器接口。

程序调试

由于该案例需要通过力矩来判断阀门的故障和极限位置作为原点,需要使用StallGuard2的功能。下面介绍StallGuard2的相关寄存器及配置过程:

关键寄存器:

*IHOLD_IRUN 0X10:电流寄存器-设置合适的电流,设置电流大小直接影响电机的负载能力。设定电流改变后sgt值也需要调节。

342e6514-b813-11ed-bfe3-dac502259ad0.png

图3.IHOLD_IRUN 电流寄存器表 *VMAX 0X27 最高速度,使用StallGuard2的最佳工作速度范围在10-300PRM,不同的电机速度有所区别。

34370070-b813-11ed-bfe3-dac502259ad0.png

图4.VMAX最高速度寄存器表

*SW_MODE 0X34: sg_stop 10bit- 1:启用STALLGUARD 2功能。

343e4880-b813-11ed-bfe3-dac502259ad0.png

图5.sg_stop寄存器表

*COOLCONF 0x6D: 16bit-22bit StallGuard2 阈值,该值用于设置灵敏度;24bit-标准/滤波模式。

3462e60e-b813-11ed-bfe3-dac502259ad0.png

图6.COOLCONF 寄存器表

*TCOOLTHRS 0X14:使能CoolStep和StallGuard2功能的下限速度,到达此值电机停止并保持。

347b0446-b813-11ed-bfe3-dac502259ad0.png

图7.TCOOLTHRS 寄存器表

*DRV_STATUS 0X6F: StallGuard2值和驱动错误标志0-9bit SG_RESULT(负载值) 用于监测电机所剩的扭力。

34a7b78e-b813-11ed-bfe3-dac502259ad0.png

图8.SG_RESULT 寄存器表 配置过程通过程序代码来说明,如下:

步骤1:

spi_writeRegister(SW_MODE,0x0600);--使能StallGuard2

spi_writeRegister(IHOLD_IRUN,value);--设置电机的额定电流

spi_writeRegister(VMAX,MAX_Speed_);--设置最高速度

spi_writeRegister(COOLCONF,0);--设置StallGuard2灵敏度

spi_writeRegister(TCOOLTHRS,

setTCOOLTHRS );--设定停止阈值,此值可以根据不同的阀门状态来设定,如归零或开启/关闭

spi_writeRegister(RAMPMODE,

VELOCITY_MODE_POS);--启用速度模式

步骤2:

spi_readRegister(DRV_STATUS);--50ms定时读取SG_RESULT(负载值)

步骤3:

StallGuard2值SG_RESULT受电机特性及特定应用的负载和速度影响。因此, 针对特定电机类型和运行条件调整Stallguard2阈值SGT的最简单方法是在实际应用中进行交互式调整。

接下来调整StallGuard2的SGT的初始步骤。

1. 以适用的正常运行速度运行电机,并监控SG_RESULT 。

2. 缓慢增加电机的机械负载。如果电机在SG_RESULT达到0之前停止,则减小SGT。如果SG_RESULT在电机停止之前达到0,则增大SGT。0是SGT初始值。SGT是有符号的,可正可负。

3. 将TCOOLTHRS设置为高于TSTEP的值,并启用sg_stop使能堵转停止功能。确保电机在停机时安全停止。如果电机在堵转发生前停止,增加SGT。通过禁用sg_stop或读并写入RAMP_STAT寄存器(写+清除功能)重新启动电机。

4. 在电机增加负载堵转前,SG_RESULT最佳范围大约在0和10之间,且在没有负载的情况下SG_RESULT增加100或更多时。在大多数情况下,SGT应在某个运动速度或速度范围调整。确保设置在一定范围内(例如所需速度的80%至120 %)以及极端电机条件下(最低和最高适用温度)工作可靠。

允许自动调整 SGT 的可选步骤

SGT设置背后的基本思想是补偿电机内部电阻损耗的对StallGuard2影响。在静止和非常低的速度下,由于机械功率为零或接近零,电阻损耗是电机能量平衡的主要因素。这样可以将SGT设置为接近零速度的最佳值。该算法特别适用于在应用中调整SGT,以获得与环境条件、电机杂散等无关的最佳结果。

1. 以小于10 RPM(即每秒几个至几十个全步的低速运行电机,并获得目标运行电流和电源电压。)在此速度范围内,SG_RESUL对电机负载的依赖性不大,因为电机不会产生显著的反电势。因此,机械负载对结果影响不大。

2. 打开sfilt滤波器。将SGT从0逐渐增加到SG_RESULT开始增加。当SGT值较高时,SG_RESUL将上升到最大值,继续增大SGT则SG_RESULT会溢出到0。现在,SGT值被设置成最大敏感。当看到SG_RESULT以较高的速度增加时,则检测到堵转。

该参数设置下堵转检测的上限速度由速度确定,在该速度下,电机反电势接近电源电压,速度继续增大电机电流开始下降。
当电机堵转时,SG_RESULT变为0,可配置斜坡发生器 SW_MODE中的sg_stop 使能在堵转事件时停止电机。将TCOOLTHRS设置为与较低的速度阈值相匹配,在该阈值下,StallGuard2 结果最佳,完成有效的sg_stop。

ADI的TMC5160 StallGuard2的功能非常广泛,TMC5160 CoolStep负载自适应电流控制,也是基于StallGuard2的负载检测来控制电流输出电流大小,实现低功耗,节约能源,降低芯片温度。在某些应用中可以通过力矩来诊断设备的健康状况和设备归零的功能,还可以节省编码器及光电开关,有效的节约生产成本。其授权代理商Excelpoint世健为客户提供技术支持和指导,提高设备提高效率,助力实现精确运动。

审核编辑:汤梓红

声明:本文内容及配图由入驻作者撰写或者入驻合作网站授权转载。文章观点仅代表作者本人,不代表电子发烧友网立场。文章及其配图仅供工程师学习之用,如有内容侵权或者其他违规问题,请联系本站处理。 举报投诉
  • 驱动器
    +关注

    关注

    52

    文章

    8071

    浏览量

    145716
  • adi
    adi
    +关注

    关注

    144

    文章

    45808

    浏览量

    247897
  • 编码器
    +关注

    关注

    45

    文章

    3562

    浏览量

    133912
  • 步进电机
    +关注

    关注

    150

    文章

    3086

    浏览量

    147243
  • tmc5160
    +关注

    关注

    3

    文章

    15

    浏览量

    4881

原文标题:【有奖问答】基于TMC5160 StallGuard2实战案例分享

文章出处:【微信号:Excelpoint_CN,微信公众号:Excelpoint_CN】欢迎添加关注!文章转载请注明出处。

收藏 人收藏

    评论

    相关推荐

    TMC5160 步进电机驱动控制芯片trinamic

    。而且TMC5160还支持ABN编码器输入。产品特性• 2相步进电机高达 20A 线圈电流(外扩MOSFETs)• 运动控制器,具有sixPoint™ 斜坡,运行平稳• 步进/方向接口具有微步插补
    发表于 03-28 10:56

    如何利用STM32实现TMC5160的转动?

    在前几天讲了关于TMC5160的简单转动,那是只是独立模式,不需要SPI通信,配置几个引脚和方波就可以了。如果想了解模式三可以看我之前写文章,代码也在里面了文章链接:https
    发表于 07-06 07:30

    求一种基于STM32实现TMC5160简单转动的方案

    TMC5160芯片的特点是什么?TMC5160芯片有哪些优势?求一种基于STM32实现TMC5160简单转动的方案
    发表于 07-06 06:56

    如何去实现TMC5160步进电机的简单转动呢

    TMC5160步进电机有哪几种模式呢?如何去实现TMC5160步进电机的简单转动呢?
    发表于 12-20 07:48

    怎样去使用TMC5160TMC2160呢

    TMC5160的工作模式有哪几种呢?TMC5160的功能模块有哪些?怎样去使用TMC5160TMC2160呢?
    发表于 12-21 07:00

    如何利用STM32实现TMC5160步进电机简单转动?

    TMC5160具有哪几种工作模式?如何利用STM32实现TMC5160步进电机简单转动?
    发表于 02-28 09:07

    电机驱控芯片:TMC5160介绍与使用

    驱 动 电 机 。 TMC5160 支 持 TRINAMICs 独 有 的 StallGuard2, CoolStep, DcStep, SpreadCycle 和 StealthChop 功能
    发表于 09-02 10:52

    使用STM32简单控制TMC5160驱动步进电机

    还是位置模式,电机的运行过程会按照下图来进行。2、当SD_MODE接高电平,SPI_MODE拉高,TMC5160工作在模式2(SPI+S/D)。在该模式下,用户通过SPI接口来设置TMC516
    发表于 09-03 19:02

    如何使用TMC5160步进电机驱动芯片开发笔记-1

    TMC5160 内。不需要软件来控制电机,只需提供目标位置。SD_ MODE 接地使能此模式模式 2 :脉冲和方向驱动器像 TMC 4361 这样的外部高性能 S-ramp 运动控制器或 CPU 产生与系统内其他
    发表于 02-04 17:59

    TMC5160中文数据手册

    TMC5160中文数据手册免费下载。
    发表于 05-24 09:18 96次下载

    基于TMC5160 StallGuard2实战案例分享

    健邀请到了他们的客户——行业资深工程师阮工来分享他的实战案例。 ADI的TMC5160是一款高度紧凑的步进电机控制器和驱动器IC,具有最低功耗和最高动态性能的功率级,能确保无噪音运行,结合最高效率和最佳电机扭矩。阮工运用TMC5160
    发表于 03-01 15:58 636次阅读
    基于<b class='flag-5'>TMC5160</b> <b class='flag-5'>StallGuard2</b><b class='flag-5'>实战</b>案例分享

    电机驱动TMC5160详解

    、高扭矩电机驱动。 两相双极性步进电机的高电压通用控制器/驱动器。 stealthChop™控制电机安静运行。 外加 MOSFET实现高达 20A 的电机线圈电流控制。 TMC5160TMC2160 可以 PIN 对 PIN 替换,
    发表于 03-16 14:07 15次下载
    电机驱动<b class='flag-5'>TMC5160</b>详解

    步进驱动方案-TMC5160TMC2160的使用 

    一、TMC5160TMC2160可以PIN对PIN替换,TMC5160自己带有梯形曲线加速功能,这是它与TMC2160唯一的区别。因此下面都以TM
    的头像 发表于 06-07 17:29 2175次阅读
    步进驱动方案-<b class='flag-5'>TMC5160</b>和<b class='flag-5'>TMC</b>2160的使用 

    基于TMC5160 StallGuard2实战案例分享

    健邀请到了他们的客户——行业资深工程师阮工来分享他的实战案例。ADI的TMC5160是一款高度紧凑的步进电机控制器和驱动器IC,具有最低功耗和最高动态性能的功率级
    的头像 发表于 03-06 11:34 1011次阅读
    基于<b class='flag-5'>TMC5160</b> <b class='flag-5'>StallGuard2</b><b class='flag-5'>实战</b>案例分享

    基于TMC5160 StallGuard2实战案例分享

    当控制环境比较恶劣,周边可能存在大型的电机对电磁抗干扰能力影响较大时,管道闸中的阀门控制将面临一定挑战和障碍,面对这种情况,该如何明确阀门的位置和检测扭矩?本次技术型授权代理商Excelpoint世健邀请到了他们的客户——行业资深工程师阮工来分享他的实战案例。
    的头像 发表于 07-12 15:48 479次阅读
    基于<b class='flag-5'>TMC5160</b> <b class='flag-5'>StallGuard2</b><b class='flag-5'>实战</b>案例分享