查看: 1209|回复: 0

步进电机驱动芯片TMC260使用经验

[复制链接]

该用户从未签到

发表于 2019-8-21 10:22:52 | 显示全部楼层 |阅读模式
分享到:
需要使用步进电机的驱动芯片,几经比较,选用了德国的TMC260,非常好用,工作起来稳健。芯片有两个完整的H桥,所以可用来控制两个直流电机或者一个二相四线步进电机。

具体参数查看datasheet,大致写一些关键参数:可提供的尖峰电流高达2A,最大可256细分,电源电压可以高达40v,非常小的体积(QFP-44封装,10mm乘10mm)

电路原理图如下,亲测好用:

1.jpg

每一路的电流输出,由四个引脚并联完成,减小发热。

输入电源电压9-39V,内置电压调节器,可以转成5V输出,这个可以连到VCC_IO 使用,此处悬空。

VCC_IO引脚可以外接3.3V或者5V的电平,这个关系到每一个IO数字高电平的基准,连接3.3V,则过来的数字信号3.3V识别为高电平。

SRA和SRB连接的感应电阻大小,关系到电机输入电流大小的调节。

该芯片有两种控制接口,SPI接口和STEP/DIR接口,

前者是通过SPI写入信息、读取状态信息,芯片完全由SPI控制;

后者是通过SPI写入配置寄存器信息,然后通过STEP和DIR引脚的协同控制,step输入脉冲,dir控制正反方向,完成电机转动。

基本代码

使用的是STM32F4的MCU,这款单片机自带硬件SPI,完成初始化,读写一个字节的函数的编写。

再初始化TMC260芯片,主要是对SPI相关的五个寄存器写入初始值,具体每个寄存器功能见datasheet代码如下:

2.jpg

这里的数据发送函数tmc260_spi_xfer代码如下:

3.jpg

需要注意:

①TMC260的SPI接受的数据为20bit,先发高位,所以MCU发送的数据应该为三个字节,共24bit,其中多余的高4位无效。

②TMC260的配置命令,必须选通芯片以后写入,写完以后必须再关闭选通,方能有效。切记切记,本人调试时候没有关闭选通,电机一直不转,反复阅读datasheet才找到这个要求,改完立马正常使用。

实际使用:

芯片带的coolStep省电功能还没具体去研究,具体转动精度后面做完实验再更新。

目前使用过程中,电流放在半值左右,芯片温度正常,力矩也比较大,旋转硬度合适。

若选择全值输出电流,芯片温度瞬间飞涨,极度烫手,数据手册说会超过100度,所以要小心。



回复

使用道具 举报

您需要登录后才可以回帖 注册/登录

本版积分规则

关闭

站长推荐上一条 /2 下一条



手机版|小黑屋|与非网

GMT+8, 2024-4-19 17:22 , Processed in 0.127034 second(s), 17 queries , MemCache On.

ICP经营许可证 苏B2-20140176  苏ICP备14012660号-2   苏州灵动帧格网络科技有限公司 版权所有.

苏公网安备 32059002001037号

Powered by Discuz! X3.4

Copyright © 2001-2020, Tencent Cloud.