如何消除步进电机的噪音与振动TMC

2023-05-16

步进电机的噪音来自哪里?

由于步进电机由于结构简单、控制方便、安全性高、成本低、停止时候力矩大、在低速情况下不需要减速机就可以输出很大的力矩、相比直流无刷和伺服电机,步进电机不需要复杂的控制算法也不需要编码器反馈情况下可以实现位置控制.被用在很多要求精确定位的场合,基本上在很多需要移动控制的场合都会用到步进电机如自动化控制、数字化生产如3D、医疗和光学等众多领域.

  步进电机有一个缺点就是噪音比较大,特别是在低速的时候.

震动主要来自两个方面一是步进电机的步距分辨率(步距阶跃)另一方面是来自斩波和脉宽调制(PWM)的不良模式反应.

            步距角分辨率和细分

  典型的步进电机有50个极(Poles),就是200个整步(Full Steps) ,也就是整步情况下每步1.8°角度,电机旋转一周需要360°.但是也有些步进电机的步距角更小比如整步需要800步的.起初 这些步进电机被用作整步或者半步模式下,矢量电流提供给电机线圈A(蓝色)和线圈B(红色)矩形曲线图.描述了整个一个周期360°的曲线.在图3和图4中很明显看到电机线圈在90°换相点处线圈电流要么是最大电流(full power)要么是没有电流.

一个周期内(360°)每组线圈由4个整步或者8个半步构成.

也就是50个极的步进电机需要50个电气步距来完成一周的机械旋转(360°)


在新的矢量电流从驱动器端输出之后,电机转子会根据新的位置指令移动下一个整步或者半步的位置,和脉搏反应相似 在新的位置点周围 转子会产生超调和振荡,如此一来会导致机械振动和噪音. 为了减少这些震动,等步细分的原来被提了出来,将一个整步分割成更小的部分或者微步细分,典型的细分数是2(half-stepping)、4(quarter-stepping)、8、32甚至更大的细分

电机定子线圈的电流并不是最大电流(Full current)或者就是没有电流,而是一个中间的电流值,相比于4个整步电流(4full steps)更接近于一个正弦波形状.永磁体的转子位置处在2个整步位置之间(合成磁场位置).最大的细分数是由驱动器的A/D和D/A能力决定.TRINAMIC所提供的驱动和控制器可以达到256细分(8bit)采用集成的正弦波配置表格,步进电机可以实现非常小的角度控制,图6描述了在达到新位置时候的波动


斩波和PWM模式
噪音和振动的另外一个来源是传统的斩波方式和脉宽调制(PWM)模式,由于比较粗的步距分辨率是产生振动和噪音的主要因素,我们通常忽视了斩波和PWM带来的问题.

  传统的恒定PWM斩波模式是电流控制的PWM斩波模式,该模式在快速衰减和慢速衰减之间有个固定关系,在其最大数值的时候,电流才会达到规定的目标电流,最终导致平均电流是小于预期目标电流的,如图7所示


在一个完整的电周期内,电流方向改变时 在正弦波过零处有个平稳过渡期,这个会影响在很短的过渡期内线圈里面的电流为零,也就是电机此时根本就没有力矩,这就导致了电机摆动和振动,尤其是在低速情况下.
  相比恒定的斩波模式,TRINAMIC的SpreadCycle PWM斩波模式在慢速和快速衰减器之间自动配置一个磁滞衰减功能.平均电流反应了配置的正常电流,在正弦的过零点不会出现过渡期,这就减少电流和力矩的波动,是电流波形更加接近正弦波,相比传统恒定斩波模式,SpreadCycle PWM斩波模式控制下的电机运行得要平稳、平滑很多.

这一点在电机从静止或低速到中速过程中非常重要.



如何使步进电机实现完全的静音?
尽管高细分能解决大部分情况下的低频震动;先进的电流控制PWM斩波模式比如TRINAMIC的SpreadCycle算法,这些在硬件上的作用很大程度上减少震动和颤动,这也满足了大部分的应用,也适合高速运动.但是基于电流控制的斩波模式,还是会存在可听得见的噪音和振动,主要是由于电机线圈的不同步,检测电阻上几毫伏的调节噪音和PWM时基误差,这些噪音和振动在一些高端应用场合也是不被允许的,缓慢运行或中速运动的应用,以及任何不允许有噪音和场合.
TRINAMIC的StealthChop算法也是通过硬件来实现的,从根本上使步进电机静音,但是Stealthchop功能如何影响了步进电机?为什么电机不会出现噪音和震动?Stealthchop采用一种与基于电流反馈电压调制模式如SpeadCycle完全不同的方法.而是采用基于电压斩波模式一种新技术,该技术保证了电机的静音和平稳平滑运动.
TMC5130-一款小体积,精巧的步进电机驱动控制芯片,带有StealthChop模式.TRINAMIC改进了调制模式.为了最大限度降低电流波动对动态性能的影响,TMC5130采用基于电流反馈来控制电压调制,这允许系统自适应电机的参数和运行电压.来自直接电流控制回路算法引起的微小震荡被消除.

图10和图11显示 电压控制模式的Stealthchop 和电流控制模式的SpreadCycle


StealthChop模式下过零点的效果是非常完美的:当电流的信号从正变为负或者负变为正,不会有过渡区域而是持续性的穿过零点.因为电流的调制是根据PWM占空比来控制的.在50%的PWM占空比,电流是0,StealthChop调整PWM的占空比来调节电机电流,PWM频率是个常数,与此相反 电流控制的斩波器通过调控频率实现调节电机电流,在这里 电流的波动是比较大的,此外电流的波动会在电机的永磁体转子里产生涡流,这会导致电机的功耗损失.
这些频率变化着的PWM发出的声音是在可听范围之内的,会发出嘶嘶的声音,而且电子定子会由于磁致伸缩产生更大的噪音,进而会传递引起机械系统的震动.而StealthChop的固定斩波频率就不会有这些问题.没有斩波频率的变化 除了电机运行时候微步相序分配器的变化.

除了电机轴承钢球磨擦的声音,这是无法避免的之外,StealthChop可以驱动电机工作在极度的精音下,可以实现控制电机声音在10dB分贝以下,噪音大大低于传统的电流控制方式.我们从物理中得知 3dB分贝的减少量会将噪音程度降低一半.


对步进电机来说改变了什么?
如今步进电机还是一种十分经济的电机,已经被应用了很多年,依旧采用和原来一样的材料,一样的生产工序和装配工艺.
但是相比过去,如今步进电机被更简单的控制单元驱动,更先进的算法和更高度集成的微电子是原来的电机发挥出更大的潜能.在接近电机的驱动电路中更多的信息被获取和处理并实时在驱动电流里被处理以优化电机控制,StealthChop便是一个完美的例子它的算法和PWM斩波紧密联系,此外这些信息还可以反馈到更高的应用控制层,而传统的步进驱动方案都是单向的(脉冲/方向),所有TRINAMIC的智能步进电机驱动方案都是双向通讯,这些接口还可以监测不同状态、诊断信息.这可以增加系统的可靠性,提供系统的性能.
  StealthChop静音驱动技术非常适合3D打印、桌面型CNC、高端的CCTV、体外诊断设备、医疗检测设备等对噪音要求敏感的场合.

TRINAMIC提供带有StealthChop功能的模块,包括单轴、三轴和六轴驱控模块.

YOUKU主页http://i.youku.com/i/UMTc4OTY0NDIw?spm=a2hww.20027244.uerCenter.5!6~5!2~A



3轴闭环步进伺服驱动控制模块支持S曲线加速超静音驱动
◆电气参数: 
  ●供电电压11…28V DC或18…53V DC
  ● 最大驱动电机电流3A RMS或6.5A RMS
◆机械参数: 
  ●电路板尺寸:160mm*100mm*35mm
  ● 4个M3的安装孔
◆步进电机参数: 
  ●两相步进电机最大电流3A或者6.5A
  ● 增量编码器A/B/N(可选),差分或者单端形式(TTL+开漏)
◆接口: 
  ●每个轴都有左右限位输入
  ●8个数字量输入(兼容24V)
  ●8个数字量输出(开漏 6个100毫安 2个1安培)
  ●1个使能输入
  ●4个模拟量输入(可编程3.3V或10V输入)
  ●RS485,CANopen,USB,RS232,EtherCAT 
◆性能: 
   ●高效能,低发热
   ●集成各种保护功能
   ●可在运动过程中实时改变目标位置,速度,加速度等参数
   ●实时运动轨迹生成,直线加速或S曲线加速
   ●每轴可以同步运动或者单独运动,可编程控制
   ●最大细分数256细分
   ●可通过外部编码器实现大位置闭环,避免丢步
◆软件:
   ●自带编程软件
   ●支持CANopen,EtherCAT总线控制

   ●支持二次开发


                                                                           -Post by TMC中国 扣扣:2472266802



本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)

如何消除步进电机的噪音与振动TMC 的相关文章

  • TTL 485 232 全双工 半双工 单工---精简总结

    全双工 xff1a 双向2车道 半双工 xff1a 双向1车道 单工 xff1a 单向车道 1 从单片机软件编程角度来说 xff0c RS232 RS485都是转换为TTL电平方式与单片机通信 xff08 CAN收发器把差分信号转化为TTL
  • STM32F4-ADC-常规通道-转换模式配置-总结

    STM32F4 ADC常规通道转换的模式配置 模式选择 此寄存器定义 xff1a 是否自动循环 这两个寄存器定义 xff1a Scan mode xff08 是否轮询序列 xff09 和Discontinuous mode xff08 是否
  • 单片机 裸机 架构

    以前是 while xff08 1 xff09 43 软件定时器 43 中断标志 的框架 xff0c 现在的项目我想尝试一下新的框架 xff0c 简单来说是 主状态机 43 大量子状态机 43 软件定时器 的方式 xff0c 这其中状态机和
  • USART---串口发送数据

    xfeff xfeff while USART1 gt SR amp 0X40 61 61 0 等待发送结束 解析 xff1a USART1 gt SR xff1a 串口 状态 寄存器 USART1 gt SR amp 0X40 即串口状态
  • STM32---串口初始化

    u8 USART RX BUF USART REC LEN 接收缓冲 最大USART REC LEN个字节 bit15 xff0c 接收完成标志 bit14 xff0c 接收到0x0d bit13 0 xff0c 接收到的有效字节数目 u1
  • stm32---RS485初始化

    u8 RS485 RX BUF 64 接收缓冲 最大64个字节 u8 RS485 RX CNT 61 0 接收到的数据长度 函数 xff1a RS485 Init 功能 xff1a 串口初始化配置 参数 xff1a Baud 波特率 备注
  • 定时器0,中断,控制LED闪烁(1s亮,1s灭)---2018-11-07

    include lt reg52 h gt include lt stdio h gt define uchar unsigned char define uint unsigned int sbit LED 61 P2 2 void ti
  • AM2322温湿度传感器(地址0XB8)---I2C总结(I2C_ModBus协议)

  • 数码管---共阳---共阴---段选码---位选码---总结

    共阴极 xff1a 位选为低电平 xff08 即0 xff09 选中数码管 各段选为高电平 xff08 即1接 43 5V时 xff09 选中各数码段 0 f 共阴数码管段选 表 xff0c 无小数点 xff1a unsigned char
  • ubuntu怎样通过终端打开firefox?

    1 直接输入firefox 按回车 2 首先打开火狐浏览器 xff0c 鼠标移到屏幕最顶端 xff0c 出现菜单栏 工具栏 xff0d xff0d 附加组件选项 如下图所示 也可以在火狐浏览器界面 使用快捷键 shift 43 Ctrl 4
  • 重新认识 IP地址

    目录 一 什么是网段划分 二 如何分配子网中的IP xff1f 三 IP地址的分类 1 早期划分方式 1 早期分类方式 2 早期分类的局限性 2 CIDR划分 xff08 子网掩码划分 xff09 1 基本思路 2 实现方式 四 IP地址的
  • Linux服务器下抓包工具tcpdump分析

    概述 说到抓包分析 xff0c 最简单的办法莫过于在客户端直接安装一个Wireshark或者Fiddler了 xff0c 但是有时候由于接口调用无法在客户端抓包 xff0c 只能在服务器上抓包 xff0c 这种情况下怎么办呢 xff1f 本
  • MATLAB 常用转义字符

    MATLAB常用转义字符收录如下 Single quotation mark nbsp Percent character nbsp Backslash nbsp a Alarm nbsp b Backspace nbsp f Form f
  • 利用MATLAB解决人工神经网络模拟预测问题研究

    利用MATLAB解决人工神经网络模拟预测问题研究 nbsp nbsp nbsp nbsp nbsp nbsp nbsp nbsp 人工神经网络根据模仿人脑的工作原理抽象出来的一种算法 人工神经网络 artigicial neutral ne
  • Visual Studio 2008学习过程(之一)起步

    以前 xff0c 在使用MATLAB开发一些软件 xff0c 虽然它的数值计算方面的功能很强大 xff0c 但是界面不是很好看 xff0c 很难做出来漂亮的软件 xff0c 所以萌生了用VS和MATLAB联合编程的想法 这样可以使软件更加强
  • 如何用servlet写网页访问量计数器?

    如何用servlet写网页访问量计数器 xff1f 1 原料 l MyEclipse l Tomcat l html 2 步骤 1 新建工程 项目栏鼠标右键 New Web Project xff0c 这里我起名为 xff1a myexm4
  • 提示:请安装TCP/IP协议.error=10106。解决方案

    有朋友使用电脑的时候会出现如下错误 xff0c 如何解决该问题是本文写作的目的 提示错误 xff1a 图 1 解决 方案 xff1a 1 删除两个注册表选项 xff1b 按下windows键 43 R键 xff0c 输入regedit xf
  • 防止头文件被重复包含

    前言 为了避免同一个文件被include多次 xff0c C C 43 43 中有两种方式 xff0c 一种是 ifndef方式 xff0c 一种是 pragma once方式 方式一 xff1a ifndef SOMEFILE H 或写为
  • 有趣的网站分享——pornhub风格生成器

    寄语 要说logo设计 xff0c pornhub的logo设计让人印象深刻 xff0c 黑底白字 xff0c 配上一小撮橙色 xff0c 给人极强的冲击力 这不 xff0c 有一个有意思的程序员弄了一个网站 xff0c 专门生成pornh
  • 大小端存储问题

    1 什么是数据的高低位 数据的高位在左 xff0c 低位在右 2 什么是内存的高低位 2 什么是大端存储 小端存储 简单记就是 xff1a 小端 xff1a 低低 xff08 数据低位在内存低位 xff09 大端 xff1a 高低 xff0

随机推荐

  • 【A星算法的优化方案】

    当地图很大的时候 xff0c 或者使用A星算法的寻路频率很高的时候 xff0c 普通的A星算法就会消耗大量的CPU性能急剧下降 xff0c 普通的A星性能还是不过关 接下来我们讲讲A星寻路在遇到性能瓶颈时的优化方案 一 长距离导航 当距离很
  • Java工具类:String与DateTime类型的相互转换

    1 String 转 DateTime 在转换之前需要引入 hutool 依赖 String datestr 61 34 2022 5 19 34 DateTime datetime 61 DateUtil parse datestr 2
  • Iterator迭代器的一般用法

    Iterator迭代器的一般用法 迭代器 xff08 Iterator xff09 迭代器是一种设计模式 xff0c 它是一个对象 xff0c 它可以遍历并选择序列中的对象 xff0c 而开发人员不需要了解该序列的底层结构 迭代器通常被称为
  • socket编程---fgets和fputs函数使用理解

    这一节是继续上一节socket05的讨论 xff0c 来探讨在使用socket进行通信中遇到的一些函数使用理解误区 1 fgets的使用注意点 在写socket通信 xff08 代码见上一篇中 xff0c 只是将sendbuf和recvbu
  • Tarjan算法详细讲解

    Tarjan算法讲解的博客网上找到三篇比较好的 现在都转载了 个人只研究了第一篇 正如博主所说 讲的标比较详细 清晰 剩下两篇也可以看一下 卿学姐视频讲解 https www bilibili com video av7330663 以下内
  • 中文乱码在线恢复网站

    乱码恢复
  • GCC自带的一些builtin内建函数

    title GCC自带的一些builtin内建函数 date 2021 02 27 18 57 00 description 一些GCC自带的内建 bulitin 函数的接口及实现 一 GCC内建函数 最近在刷 leetcode 的时候遇到
  • Shell脚本实用小技巧-教你屏蔽执行命令的所有显示信息,包含错误信息

    前言 xff1a 在Linux中 xff0c 有个 dev null的东西 xff0c 人们一般称之为黑洞 xff0c 大概的意思就是东西就像黑洞一样 xff0c 任何东西丢进去都会消失 xff0c 那么下面就开始进行一些小案例去认识一下这
  • MPU6050应用详解

    MPU6050应用详解 最近项目上要用到 MPU6050 陀螺仪 xff0c 以前没有接触过它 虽然在网上很容易就可以找到了需要的代码 实现了一部分功能 但是却还是对陀螺仪的工作原理不太了解 xff0c 它的代码也需要分析一下 xff0c
  • protobuf详解

    1 protobuf 简介 protobuf protocol buffer 是谷歌内部的混合语言数据标准 通过将结构化的数据进行序列化 串行化 xff0c 用于通讯协议 数据存储等领域和语言无关 平台无关 可扩展的序列化结构数据格式 我们
  • 白泽知识讲堂 | printf漏洞介绍

    引子 Hello各位小伙伴们 xff0c 白泽又和大家见面了 大家还记得自己写的第一个C语言程序吗 xff1f 那是我们和代码爱情的起点 xff0c 一眼万年 没错 xff0c 就是那个耳熟能详的Hello World 1 include
  • Linux生成core文件相关配置,core文件调试示例

    1 生成core文件系统配置 使用ulimit c命令可以查看当前系统对于core文件的配置 xff0c 0表示不生成core文件 xff1b 不为0的数字a表示限制core文件大小不超过a xff0c 单位是k xff1b unlimit
  • Ubuntu 手动配置DNS

    使用ping命令测试百度域名时发现 xff0c 无法解析这个域名 xff0c 说明当前系统上没有配置DNS服务器 配置DNS服务器的方式主要有以下两种 xff1a 目录 1 修改DNS配置文件 etc resolv conf 2 修改网卡配
  • STM32启动文件详解

    启动文件使用的 ARM 汇编指令汇总 启动程序源码注释 点此下载 1 Stack 栈 Stack Size EQU 0x00000400 AREA STACK NOINIT READWRITE ALIGN 61 3 Stack Mem SP
  • Motorola_MSB_LSB

    声明 xff1a 如果涉及侵权 xff0c 请联系本人删除侵权内容 声明 xff1a 本文由本人以以往工作经验为依据 xff0c 总结而得 xff0c 如果错误 xff0c 欢迎指正 xff0c 便于后人参考 xff0c 少走弯路 如果图片
  • 虚拟机怎么安装vmware tools

    这篇文章主要为大家详细介绍了VMware Workstation12安装Ubuntu和VMware Tools教程 具有一定的参考价值 xff0c 感兴趣的小伙伴们可以参考一下 之前我通过百度经验上的过程来安装Ubuntu16 xff0c
  • MySQL数据库改名的三种方法

    MySQL数据库改名的三种方法 前不久去面试 xff0c 被问到Innodb引擎的表如何改数据库名 xff0c 当时我也只回答了MyISAM改如何操作 xff0c 被一些细节问题打败 xff0c 真是操蛋 如果表示MyISAM那么可以直接去
  • C语言详解 FILE文件操作

    1 需要了解的概念 需要理解的知识点包括 xff1a 数据流 缓冲区 文件类型 文件存取方式 1 1 数据流 xff1a 指程序与数据的交互是以流的形式进行的 进行C语言文件的存取时 xff0c 都会先进行 打开文件 操作 xff0c 这个
  • wifi提速技巧:十大方法瞬间提升wifi速度

    手机wifi速度慢真是很让人苦恼 xff0c 有什么有效的wifi提速方法吗 当然有啦 绿茶小编今天就为大家带来了提升wifi速度的十大方法 xff0c 能激活wifi表现 xff0c 提升无线网络哦 xff0c 快来看看吧 十大方法瞬间提
  • 如何消除步进电机的噪音与振动TMC

    步进电机的噪音来自哪里 由于步进电机由于结构简单 控制方便 安全性高 成本低 停止时候力矩大 在低速情况下不需要减速机就可以输出很大的力矩 相比直流无刷和伺服电机 步进电机不需要复杂的控制算法也不需要编码器反馈情况下可以实现位置控制 被用在