TMC5160步进电机驱动芯片

TMC5160步进电机驱动芯片

  • 特点和优势
  • 静止态自动降电流
  • stealthChop2 & spreadCycle 驱动
    • stealthChop2 & spreadCycle 驱动
    • 1.7 stallGuard2 – 机械负载传感
    • 1.8 coolStep –负载自适应电流控制
    • 1.9 dcStep –负载相关速度控制
    • 1.10 编码器接口
  • TMC5160工作模式
    • 模式 1:全功能运动控制和驱动器
    • 模式 2:脉冲和方向驱动器
    • 模式 3:简单的步进和方向驱动器
  • TMC5160中文芯片手册PDF-带书签

特点和优势

以下是该芯片的核心内容:

高达 20A 线圈电流的两相步进电机(外部 MOSFETs )
支持 sixPoint™的运动控制器
支持microPlyer™微步插值功能的的步进/方向接口
电压范围 8…60V 直流
SPI 和单线 UART 编码器接口和 2个参考开关输入
256 微步
stealthChop2™斩波模式,安静平滑的运行
电机中速运行的共振衰减
spreadCycle™ 高动态电机控制斩波器
dcStep™ 负载相关关速度控制
stallGuard2™ 高精度的无传感器负载检测
coolStep™ 电流控制,能量能减少 75%
被动制动和空转模式
全面保护和诊断

TMC 5160实现了TRINAMIC产品独有的高级功能。这些特征在许多步进电机应用有效的提高了精度、能效、可靠性、平滑性和能耗。

stealthChop2™ 无噪声、高精度斩波算法,用于电机的静止和运动状态下的静音控制。stealthChop2在stealthChop 的基础上,加快了电机运动加减速特性,降低的所需的电流最小值。(spreadCycle的加强版静音模式)

spreadCycle™ 高精度斩波算法,用于高动态电机运动和产生绝对干净的电流波。低噪音、低共振和低振动斩波器。(正常模式)

dcStep™ 负载相关速度控制。电机尽可能快地移动,不失步

stallGuard2™ 无传感器堵转检测和机械负载测量。

coolStep™ 根据负载自适应电流,可将能耗降低 75 %。

microPlyer™ 细分内插器,用于从全步开始,以较低分辨率步长输入获得全 256 微步的平滑度(平滑模式)

除了这些性能增强之外,TRINAMIC电机驱动器还提供了检测和防止短路输出、输出开路、过热和欠压情况的保障措施,以增强安全性和故障恢复。

静止态自动降电流

自动电流减少大大降低了应用功耗和冷却需求。通过寄存器设置修改静态电流、延迟时间和衰减。
自动飞轮和被动制动是静止的一种选择。被动制动将电机静止功耗降低到零,同时仍然提供有效的阻尼和制动!斜坡发生器和 STEP / DIR 两个操作模式都支持一种更快检测静止的配置。

stealthChop2 & spreadCycle 驱动

stealthChop 基于电压斩波器的原理。除了电机机械滚轮轴承产生的噪音,它特别保证了电机在静止和慢动作时绝对安静。不同于其他电压模式斩波器, stealthChop2 不需要任何配置。通电后,它会在第一次运动中自动学习最佳设置,并进一步优化后续运动中的设置。初始的归零过程足以使系统完成stealthChop 最佳配置。也可以选择,通过接口预先配置初始学习参数。stealthChop2 通过对电机速度的变化立即做出反应,允许高的电机动态。

在这里插入图片描述

stealthChop2 & spreadCycle 驱动

stealthChop 基于电压斩波器的原理。除了电机机械滚轮轴承产生的噪音,它特别保证了电机在静止和慢动作时绝对安静。不同于其他电压模式斩波器, stealthChop2 不需要任何配置。通电后,它会在第一次运动中自动学习最佳设置,并进一步优化后续运动中的设置。初始的归零过程足以使系统完成stealthChop 最佳配置。也可以选择,通过接口预先配置初始学习参数。stealthChop2 通过对电机速度的变化立即做出反应,允许高的电机动态。

spreadCycle是周期斩波模式。它在很宽的速度和负载范围内提供平稳的操作和良好的共振阻尼。
spreadCycle方案自动集成和调节快衰减周期,以保证平滑过零性能。
stealthChop2 优势: - 显著改善了低成本电机微步性能

  • 电机运行平稳安静
  • 绝对没有待机噪音
  • 降低机械共振产生改善的扭矩

1.7 stallGuard2 – 机械负载传感

stallguard 2提供了对电机负载的精确测量。它可以用于堵转检测,也可以用于低于使电机失步的负载下的其他用途,例如coolStep负载自适应调节电流。这提供了更多关于驱动器的信息,允许诸如无传感器归零和驱动器机械诊断之类的功能。

1.8 coolStep –负载自适应电流控制

coolstep 以最佳电流驱动电机。它根据 stallguard2 负载测量信息将电机电流调整到实际负载所需的最小量。节约了能源,降低了芯片的温度。好处是:

  • 能效能效功耗降低高达 75 %
  • 电机产生较少热量 提高了机械精度
  • 较少或没有散热 提高了可靠性
  • 使用较小的电机 减少所需的转矩→成本较低的电机完成这项工作

1.9 dcStep –负载相关速度控制

dcStep 能让电机在其负载极限和速度极限附近运行,而不失步。如果电机上的机械负载增加到堵转负载点,电机会自动降低速度,这样它仍然可以驱动负载。有了这个功能,马达将不会堵转。除了在较低速度下增加扭矩之外,动态惯性将允许电机通过减速克服机械过载。dcStep 直接与斜坡发生器集成,因此即使电机速度因机械负载增加而需要降低,也能达到目标位置。dcStep 可以在没有任何失步的情况下达到 10 倍或更大的动态范围。通过优化高负载情况下的运动速度,该功能进一步提高了整体系统效率。

dcStep 优势: - 电机在过载情况下不会失步

  • 应用程序可以运行的更快
  • 自动实现最高的加速度
  • 在速度极限下实现最高的能效
  • 全步驱动达到最高电机扭矩
  • 便宜的马达便能满足应用

1.10 编码器接口

TMC5160 为外部增量编码器提供编码器接口。编码器不仅用于失步的判断,还可实现运动控制器的归零功能(替代参考开关)。可编程预分频器设置编码器分辨率以适应电机分辨率。内部包含一 32 位编码器计数器。

TMC5160工作模式

TMC5160 通过两个引脚来控制它的工作模式:SD_MODE 和 SPI_MODE。

模式 1:全功能运动控制和驱动器

所有步进电机逻辑完全在 TMC5160 内。不需要软件来控制电机 ------ 只需提供目标位置。SD_MODE 接地使能此模式(SD_MODE=0,SPI_MODE=1)。在该模式下,用户通过 SPI 接口来设置 TMC5160 的寄存器配置参数,TMC5160 使用自己的梯形曲线发生器来控制步进电机转动。

用户需要设置:开始运动速度VSTART、第一段折线末速度V1、最大速度VMAX、停止速度VSTOP、第一段折线的加速度A1、第二段折线加速度AMAX、第四段折线的减速度DMAX、第五段折线的减速度D1。

把上面的参数设置好,再设置工作模式:速度模式或位置模式。最后再设置目标位置。

如果是速度模式运行,不需要设置目标位置,电机就会开始转动。如果是位置模式,则需要设置目标位置,且目标位置与电机当前位置值不同电机才会转动。下图中的红线是电机的实际速度,不管是速度模式还是位置模式,电机的运行过程会按照下图来进行。

模式 2:脉冲和方向驱动器

像 TMC4361 这样的外部高性能 S-ramp 运动控制器或 CPU 产生与系统内其他部件(如电机) 同步的脉冲和方向信号。TMC5160 控制电流和运动模式,并反馈电机状态。 microPlyer 自动平滑运动。SD_MODE 接高电平使能此模式(SD_MODE=1,SPI_MODE=1)。在该模式下,用户通过 SPI 接口来配置 TMC5160 的寄存器。TMC5160 的功能和 DRV8825 类似,外界通过脉冲和方向引脚来控制步进电机运动。

模式 3:简单的步进和方向驱动器

TMC5160 根据步进和方向信号控制电机。microPlyer自动平滑运动,配置由硬件引脚完成。 静止保持电流控制由TMC 5160完成。可选的反馈信号作为错误检测和同步标志的输出。 SPI_MODE 接地,SD_MODE 接高电平使能此模式(SD_MODE=1,SPI_MODE=0)。在该模式下,SPI 接口失能,TMC5160 的工作状态由 CFG 引脚配置。TMC5160 可以完全独立工作,不需要接 CPU。

标准电路图连接
在这里插入图片描述

TMC5160中文芯片手册PDF-带书签

https://download.csdn.net/download/hxkrrzq/11217181

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:/a/685005.html

如若内容造成侵权/违法违规/事实不符,请联系我们进行投诉反馈qq邮箱809451989@qq.com,一经查实,立即删除!

相关文章

【Pytorch】深入Pytorch模型的训练、log、可视化

文章目录 模型训练的模板综合案例-Pytorch 官网demo优化记录日志解析日志增加tensorboard数据记录保存训练曲线模型参数可视化增加wandb数据记录模型训练的模板 综合案例-Pytorch 官网demo pytorch 官网tutorial-quickstart https://blog.csdn.net/weixin_39107270/article/de…

Day30 登录界面设计

​ 本章节,实现了登录界面窗口设计 一.准备登录界面图片素材(透明背景图片) 把准备好的图片放在 Images 文件夹下面,格式分别是 .png和 .icoico 图片,右键属性,生成操作选 内容 png 图片,右键属性,生成操作选 资源 选中 login.png图片鼠标右键,选择属性。生成的操作选…

[学习笔记]知乎文章-PyTorch的Transformer

参考资料: PyTorch的Transformer register_buffer的作用是:登记成员变量,它会自动成为模型中的参数,随着模型移动(gpu/cpu)而移动,但是不会随着梯度进行更新。 参考资料:【Torch API…

Vue3-Vite-ts 前端生成拓扑图vis,复制即用

完整代码&#xff0c;复制即可用&#xff0c;样式自调 试过 jointjs dagre-d3 vis&#xff0c;好用一点&#xff0c;可添加同层的双向箭头 方法1&#xff1a;Vis.js npm install vis-network <template><div id"mynetwork" class"myChart" :st…

C++11:列表初始化 初始化列表initializer_list

前言 2003年C标准委员会曾经提交了一份技术勘误表&#xff08;简称TC1&#xff09;&#xff0c;使得C03这个名字取代了C98成为了C11前最新的C标准名称。不过由于C03主要是对C98标准中的漏洞进行修复&#xff0c;语言的核心部分则没有改动&#xff0c;因此人们习惯性的把两个标准…

HiveQL性能调优-概览

一、铺垫 1、HiveQL 在执行时会转化为各种计算引擎的能够运行的算子&#xff0c;这里以mr引擎为切入点&#xff0c;要想让HiveQL 的效率更高&#xff0c;就要理解HiveQL 是如何转化为MapReduce任务的 2、hive是基于hadoop的&#xff0c;分布式引擎采用mr、spark、tze&#x…

游戏《酒店业领袖》

为快餐连锁店麦当劳&#xff0c;我们创建了一款名为“好客领袖”的游戏。麦当劳的员工可以在网站上注册&#xff0c;并测试自己是否扮演酒店领导的角色&#xff0c;在餐厅可能出现的各种情况下快速做出决定。奖品等待着那些在比赛中表现最好的人。 对于该项目&#xff0c;我们&…

反转链表的三种方法--面试必考(图例超详细解析,小白一看就会!!!)

目录 一、前言 二、题目描述 三、解题方法 ⭐ 头插法 --- 创建新的链表 ⭐ 迭代法 --- 三指针 ⭐ 递归法 四、总结与提炼 五、共勉 一、前言 反转链表这道题&#xff0c;可以说是--链表专题--&#xff0c;最经典的一道题&#xff0c;也是在面试中频率最高的一道题目&…

在编程Python的时候发生ModuleNotFoundError: No module named distutils报错怎么办

1.先查看Python版本 首先我们先去打开终端就是先widr再输入cmd 然后进去在输入Python -V要注意大小写 我的版本是3.9.7版本但是我使用的PyCharm 是 2021.1.1 x64版本没有办法主动去识别因为这个版太低了你的Python版本很高所以无法识别 2.解决方法 只需要把你的Python现版…

矩阵链相乘(动态规划法)

问题分析 矩阵链相乘问题是一个经典的动态规划问题。给定一系列矩阵&#xff0c;目标是找到一种最优的乘法顺序&#xff0c;使得所有矩阵相乘所需的标量乘法次数最少。矩阵链相乘问题的关键在于利用动态规划来避免重复计算子问题。 算法设计 定义子问题&#xff1a;设 &…

作业6.6

练习1:用预处理指令#define声明一个常数&#xff0c;用于表明1年有多少秒?(不需要考虑润年) #define SECONDS_PER_YEAR (365 * 24 * 60 * 60) 练习2:如何判断一个数是unsigned格式 如果一个数是unsigned类型的&#xff0c;那么它总是大于等于0。因此&#xff0c;可以通过判断一…

Kruskal算法求最小生成树

#include <stdio.h> #include <stdlib.h> #include <string.h> #include <assert.h> #define MAX 100 #define NO INT_MAX//NO表示没有边&#xff0c;相当于INFtypedef struct Graph {int arcnum;int vexnum;char vextex[MAX][20];int martrix[MAX][MA…

使用node将页面转为pdf?(puppeteer实现)

本文章适合win系统下实验&#xff08;linux&#xff0c;mac可能会出现些莫名其妙的bug我也不会解决&#xff09; 具体过程 首先了解什么时无头浏览器启动无头浏览器打开指定的url页面设置导出pdf格式开始转化完整基础代码 首先了解什么时无头浏览器 没有界面的浏览器下载pupp…

SLC Flash SD芯片:高性能存储的优选

SLC Flash SD芯片是一种采用单阶存储单元&#xff08;SingleLevel Cell&#xff0c;SLC&#xff09;技术的Secure Digital&#xff08;SD&#xff09;存储卡。SLC技术以其快速的传输速度、低功耗和较长的存储单元寿命而闻名。 MK米客方德 SLC Flash的优势 1. 快速的传输速度&a…

如何确定一段文字的语言?(语种识别模型推荐)

个人用下来&#xff0c;感觉fasttext很好用&#xff0c;相对比较准确。 https://pypi.org/project/fasttext-langdetect/

太阳能语音警示杆在户外的应用及其作用

一、太阳能语音警示杆的主要应用领域 交通管理&#xff1a;在城市道路、乡村公路、高速公路等交通要道&#xff0c;太阳能语音警示杆可以用于提醒驾驶员注意前方路况、减速慢行或者避让施工区域。例如&#xff0c;在临时施工路段&#xff0c;警示杆可以播放“前方施工&#xf…

Qt——升级系列(Level Two):Hello Qt 程序实现、项目文件解析、Qt 编程注意事项

Hello Qt 程序实现 使用“按钮”实现 纯代码方式实现&#xff1a; // Widget构造函数的实现 Widget::Widget(QWidget *parent): QWidget(parent) // 使用父类构造函数初始化QWidget&#xff0c;传入父窗口指针, ui(new Ui::Widget) // 创建Ui::Widget类的实例&#xff0c;并…

Qt图标字体文件中提取字体保存为图片

本文借用别人写的一个IconHelper来做说明。 1. 加载一个字体文件 QScopedPointer<IconHelper> iconHelper(new IconHelper(":/fa-regular-400.ttf", "Font Awesome 6 Pro Regular"));构造函数 IconHelper::IconHelper(const QString &fontFile…

大模型产品层出不穷,如何慧眼识珠?

先预祝亲爱的读者们“端午安康“ 大模型百花齐放&#xff0c;选择难上加难 面对眼前层出不穷的大模型产品&#xff0c;许多人会不禁感到困惑&#xff1a;哪个才是真正适合自己的爆款大模型?在中国本土 alone&#xff0c;就有百来个大模型产品&#xff0c;简直是五花八门&…

C语言指针介绍其二

指针运算 指针-整数 指针-整数有一个常见的作用&#xff1a;用指针打印数组的内容 int main() {int arr[10];int* p arr;for (int i 0; i < 10; i){arr[i] i;}for (size_t i 0; i < 10; i){printf("%d ", *(p i));} } 这里我们可以探索到许多方法&…