BLDC 循序渐进:多轴速度和位置控制

我们讨论了实现快速准确位置控制的难点。在这篇博客中,我们将逐步向您展示如何在台式路由器上实现最佳的双轴速度和位置控制(图1)。


图1. 15“x15”台式路由器

在不到20个小时的时间里,路由器正在绘制正方形,三角形和圆形。  


图2.台式路由器创建运动配置文件的时间表

观看已完成项目的视频。

步骤1 - 将伺服电机连接到X和Y平台
如果您正在进行多轴应用,则需要设计自己的电路板。我们使用两个德州仪器TI)评估套件进行了初步步骤。  

材料清单:
  • 2个三相BLDC和PMSM电机套件(DRV8301-69M-KIT)60V,60A)
  • 2带编码器的低压伺服电机(LVSERVOMTR)

我们使用InstaSPIN-MOTION位置计划组件来创建和执行X轴和Y轴的状态转换。使用两个评估套件时,位置计划通过GPIO进行通信,这会引入少量延迟。当您设计自己的电路板时,您仍将运行两个计划组件,但它们将通过变量而不是GPIO进行通信,这将产生更精确的启动。此外,您还可以通过单个TI C2000™Piccolo™TMS320F28069M微控制器控制两个轴,这可以节省大量成本。

第2步 - 确定每个轴的系统惯量
惯性包括与电机轴刚性连接的任何东西。它包括直接与电机一起移动的任何东西。对于CNC路由器,X轴具有与Y轴不同且独立的惯性。  

我们使用InstaSPIN-MOTION™速度识别组件来识别惯性。我们设置每个阶段,使其具有整个正向运动范围,因为惯性识别总是使电机正向旋转。然后,我们使用了InstaSPIN-MOTION MotorWare ™Lab 12a软件(2014年6月发布),该软件确定了惯性和摩擦力。惯量值是InstaSPIN-MOTION位置控制器的输入,它使用它来提供适当的扭矩以使应用程序移动。

这是X轴惯性识别过程的快速视频。它移动得很快,所以要仔细观察!

第3步 - 调整控制器
使用称为带宽的单个增益同时调整速度和位置。每个轴都是独立调整的。调整过程简单直接。使用MotorWare Lab 13a软件,我们调整带宽,注入干扰并评估位置保持。重复该过程,直到轴在系统受到干扰时在0速下表现出良好的保持位置。我们将初始带宽设置为10 rad / s,然后手动注入干扰。手臂在此设置下轻松移动。随着我们增加带宽,移动轴变得更加困难。在40 rad / s时,路由器工作台的X轴确实保持了良好的位置。
 
这是一个调整过程的视频。

第4步 - 优化加速和加速度
然后我们开始优化加速度和加加速度(加加速度是加速度的变化率)。梯形曲线用于优化加速度,因为该曲线忽略了加速度。当加速度缓慢增加时,命令每个轴来回移动。最佳加速发生在电机未达到指令值之前。

一旦我们找到最佳加速度,我们就会使用具有连续加速度的st曲线优化加加速度。调整后果使路由器表现出平稳的启动和停止,具有非常高的可靠性。

第5步 - 创建方形运动轮廓
让路由器绘制正方形非常容易 - 一次只有一个轴移动。为每个轴创建了位置计划。在我们的配置中,X轴是主轴。X轴平面表示Y轴开始移动。Y轴计划在移动完成时发出信号。

  X轴位置计划:
  1. 信号GO到Y.
  2. 过渡国家
  3. 等待从Y完成
  4. 信号GO到Y.
  Y轴位置计划:
  1. 等待来自X的GO
  2. 过渡国家
  3. 信号DONE到X.
  4. 等待来自X的GO
图3.创建方形运动轮廓

第6步 - 创建三角形运动轮廓
绘制三角形更加困难。必须协调X和Y轴以绘制倾斜侧面。需要进行一些计算以生成每个轴的运动计划,使用以下等式:
Vel = d position_step / t 

Vel =速度
d =距离
t =时间
每个轴都需要同时完成移动,因此:
x = t y
行程距离(d position_step)是已知的。通过固定X轴的速度,这给了我们一个已知的时间(t x),从那里我们能够计算出Y轴的速度(Vel y)。


图4.创建三角形运动轮廓

步骤7 - 创建圆形运动轮廓
圆形运动轮廓是三种形状中最复杂的。我们在这个上作了一点欺骗。实际形状是32边多边形。它近似于一个圆,但计算量较小。我们使用Matlab计算X和Y轴位置。从那里,我们使用三角形运动轮廓中使用的相同程序来确保每个X和Y运动同时结束。


图5.创建圆形运动轮廓

我们用于执行此演示的代码可供您自行下载和播放。   在这里获取副本。我迫不及待想看看你可以用这个工具做出什么样的创作。

用户喜欢...

BLDC 通过数字进行磁场控制

电机就在我们身边,是许多系统设计的重要组成部分。磁场定向控制(FOC)是一种用于电机控制的高性能技术,对各种应用越来越具有吸引力。因此,开发人员对FOC有基本的了解是值得的。 让...


如何经济高效地过渡到您的应用的BLDC无刷直流电机

半导体集成的各种选择为基于同步电机的分布式智能小型驱动解决方案开辟了越来越多的应用。这些包括无刷直流电机(BLDC),永磁同步电机(PMSM)和步进电机。由于它们的技术优势和提高的...


无传感器控制的逆变器驱动用于BLDC电机

Z源逆变器(ZSI)是一种DC-AC转换器,可以作为单级执行降压和升压功能。 ZSI的独特尝试是直通状态,通过该状态可以在同一时刻打开同一相脚的两个开关。 因此,不需要死区时间,并且输出失...


当低压BLDC电机驱动电器子系统时会发生什么

将讨论利用低压(通常24V)电机驱动电器子系统的备选解决方案。...


在医疗设备中使用高速无传感器的BLDC电机控制

在医疗设备中使用高速无传感器的BLDC电机控制...


Diodes 公司的三相半桥闸极驱动器简化 BLDC 与 PMSM 的马达驱动

Diodes 公司推出了DGD2136,这是一款完全整合的三相闸极驱动器 IC 芯片,用来在半桥配置中驱动 N 信道 MOSFET 或 IGBT。浮...


AS5047D 楼宇自动化、机器人和 BLDC 电机控制的高分辨率位置传感器

来自ams的 AS5047D 是一款高分辨率旋转位置传感器,适用于在全 360 度范围内进行快速绝对角度测量。这款全新位置传感器配备了延迟几乎为零的革命性集成动态角度误差补偿 (DAEC) 功能,为设计...


[原创] ST STSPIN32F0A三相BLDC马达驱动方案

ST公司的STSPIN32F0A是SIP三相BLDC马达驱动器,嵌入了三个可驱动功率MOSFET的半桥栅极驱动器,驱动电流600mA,时钟频率高达...


采用 STM32 MCU 的 SSTSPIN32F0 高级 BLDC 控制器

产品亮点 STSPIN32F0 电机控制系统 STSPIN32F0 电机控制系统 STMicroelectronics 推出其采用 STM32 MCU 的 SSTSPIN32F0 高级 BLDC 控制器 STMicroelectronics的 STSPIN32F0 是一种电机控制系统级封装器件,既有基于控制...


[原创] TI DRV10983-Q1汽车12V 24V三相无传感器BLDC马达驱动方案

TI公司的DRV10983-Q1是集成了功率MOSFET的12V/24V汽车三相无传感器BLDC马达驱动器,连续驱动电流高达2A.满足汽车规范AEC-Q1...


[原创] TI DRV8323三相BLDC马达1kW功率级参考设计TIDA-00774

TI公司的DRV832x系列是带三个电流分流放大器的6-60V三相智能栅极驱动器.器件集成了三个独立的半桥栅极驱动器,电荷泵...


基板技术的进步推动,业界开发针对汽车BLDC应用而优化的电源模块

众所周知,人们日益关注环境状况及碳排放对全球生态系统的影响。此外,新兴经济体对石油的需求增加,意味着石油储量的消耗加速(根据国际能源署报道,目前每年石油的付运量是350亿桶...


DRV10983 三相无传感器 BLDC 电机驱动器产品介绍和数据表

DRV10983 是一款具有集成功率金属氧化物半导体场效应晶体管 (MOSFET) 的三相无传感器电机驱动器,可提供高达 2A 的持续驱动电流。 该器件专门针对成本敏感型、低噪声/低外部元件数应用而设计...


Diodes 公司 50V MOSFET 闸极驱动ICs 可满足电池供电 BLDC 马达的驱动需求

Diodes 公司推出的 DGD0506 和 DGD0507 高频闸极驱动 ICs,专门设计用于驱动半桥组态下的两部外接 N 沟道 MOSFET。50V 的额定值可满足各种马达驱动需求,特别是无刷直流 (BLDC) 马达,这类马达越来越...


Silabs C8051F850 BLDC马达参考设计方案

Silabs公司的C8051F85x/86x系列产品是全集成的混合信号系统级(SoC)MCU,集成了上电重置,电压监视器,看门狗定时器和时钟振...


Freescale KEA128 32位MCU CAN和马达控制方案

Freescale公司的Kinetis EA系列MCU是基于ARM的可升级低功耗的32位MCU,采用高达48MHz ARM Cortex-M0+内核,具有单周期32位X32位的乘...