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

2019-8-16 20:55 7322 21 8 分类: MCU/ 嵌入式 文集: 调试经验
项目需要使用步进电机的驱动芯片,几经比较,选用了德国的TMC260,非常好用,工作起来稳健。芯片有两个完整的H桥,所以可用来控制两个直流电机或者一个二相四线步进电机。
具体参数查看datasheet,大致写一些关键参数:可提供的尖峰电流高达2A,最大可256细分,电源电压可以高达40v,非常小的体积(QFP-44封装,10mm乘10mm)
电路原理图如下,亲测好用:

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

输入电源电压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代码如下:

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

需要注意:

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

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

实际使用:

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

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

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




作者: 狂野的牛哥, 来源:面包板社区

链接: https://mbb.eet-china.com/blog/uid-me-3867932.html

版权声明:本文为博主原创,未经本人允许,禁止转载!

PARTNER CONTENT

文章评论3条评论)

登录后参与讨论

狂野的牛哥 2019-9-8 17:19

测量无处不在: 这个方便啊,但散热设计需要非常小心吧?
开全电流会很烫,实测一直用半电流,几乎不会升温

测量无处不在 2019-9-3 09:23

这个方便啊,但散热设计需要非常小心吧?

cheyj520_869759732 2019-9-3 09:12

感谢分享
相关推荐阅读
狂野的牛哥 2020-06-12 10:24
DC是怎样综合RTL级设计的?
学习书籍《数字IC设计-方法、技巧与实践》笔记对于软件DC(Design Compiler)而言,综合=翻译+优化+映射。翻译:是将RTL级描述转换成DC常用的布尔表达,优化是根据设计目标优化电路结构...
狂野的牛哥 2019-10-29 11:08
秋招整理
签订三方结束秋招已经快一周了,想着回忆整理一下自己的秋招经历,留作纪念,也希望能帮助需要的人。坐标hf,目的城市hf或者wh,所以找工作的重点其实还是放在wh,hf和长三角区域,诸如北京,珠三角以及其...
狂野的牛哥 2019-07-25 10:53
时序约束之偏移(OFFSET)约束
笔记本上整理记载了时序约束中的偏移约束,上传图片保存,以备日后查阅使用。...
狂野的牛哥 2019-06-20 16:34
ZYNQ学习笔记之First Project
做了第一个Project该工程功能:PS内部定时器开启定时,PL端GPIO连接按键和LED,通过按键按下产生从PL到PS的中断,中断服务程序是控制LED灯做流水灯闪烁,间隔时间为来自于定时器的1s。同...
狂野的牛哥 2019-06-20 15:30
ZYNQ学习笔记之时钟相关
通常模式下,锁相环PLL是启动的,PS-CLK提供时钟信号,经过三路PLL,分别是:ARM PLL,产生时钟用于CPU和互联;IO PLL,产生时钟用于IO外围设备;DDR PLL,产生时钟用于DDR...
EE直播间
更多
我要评论
3
21
关闭 站长推荐上一条 /3 下一条