当前位置:首页 > 工业控制 > 电路设计项目集锦
[导读]SimpleFOC(场定向控制)库实现了一种先进的算法,可确保平稳运行和高度的扭矩,速度和位置控制。无论您是刚刚开始并寻找一种简单直观的方法来控制您的BLDC和步进电机,还是您是想要深入研究FOC算法的复杂性以优化特定应用程序和硬件的代码的高级用户,本指南都适合您。

SimpleFOC(场定向控制)库实现了一种先进的算法,可确保平稳运行和高度的扭矩,速度和位置控制。无论您是刚刚开始并寻找一种简单直观的方法来控制您的BLDC和步进电机,还是您是想要深入研究FOC算法的复杂性以优化特定应用程序和硬件的代码的高级用户,本指南都适合您。

通过利用IFX007T BLDC电机驱动器屏蔽和TLE5012B磁角传感器的功能,您将学习如何使用Arduino的SimpleFOClibrary来创建精确高效的电机控制系统。本指南将引导您完成设置和配置,确保您彻底了解如何实现最佳性能。

了解无刷直流电机和闭环控制

无刷直流电机缺乏物理电刷来换向绕组。相反,它们依赖于电子换向,其中控制器根据转子位置在电机相位之间切换功率。

开环控制(例如,基本PWM驱动)迫使电机遵循预定义的相位模式没有反馈。虽然简单,但这种方法难以应对不同的负载,缺乏扭矩精度,并且有失速的风险。

闭环控制通过连续监测转子位置并相应地调整相电流来解决这些问题。这需要两个关键组成部分:

角度传感器:测量转子位置(TLE5012B)。控制算法:动态调节电流(FOC)。

为什么是场定向控制(FOC)?

传统的控制方法如梯形换向对电机相进行独立处理,导致转矩脉动,效率低下。FOC采用了更聪明的方法:

数学转换:FOC将三相电流转换为旋转的两轴系统(d-q坐标),将扭矩产生(q轴)与磁通(d轴)解耦。

精确控制:通过直接控制扭矩和磁通组件,FOC最大限度地减少损失,减少热量,即使在低速下也能平稳运行。

硬件

1. IFX007T屏蔽叠加

IFX007T电机驱动屏蔽与英飞凌的XMC4700 Relax Kit或任何其他arduino兼容板集成。只需将IFX007T屏蔽板堆叠在XMC板的顶部。这提供了:

3x PWM输出电机相位

过电流/热保护

高达40V电机电源兼容性

注意:对于非xmc板(例如Arduino Uno),请手动连接IFX007T的PWM引脚(U/V/W)并启用引脚(EN_U/EN_V/EN_W)。

2. 连接TLE5012B角度传感器

TLE5012B的3线SPI接口简化了集成:

CS (Chip Select):连接到GPIO引脚。SCK/MISO/MOSI:连接到电路板的专用SPI引脚(见原理图)。

关键步骤:安装传感器的磁铁同心电机轴。即使是1毫米的偏差也会降低精度。

软件安装

1. 开始使用Arduino IDE和XMC板

要开始使用XMC板编程,您需要设置Arduino IDE。按照我们的分步指南开始使用XMC for Arduino文档。

开始吧!

准备好一切后,我们准备将第一个代码示例闪烁到微控制器。为了做到这一点,你必须在Arduino IDE中执行以下步骤:

1.选择合适的棋盘

一旦安装了XMC板系列,您可以从菜单中选择支持的板之一:Tools > board >英飞凌的XMC微控制器。在我们的情况下,我们必须选择XMC4700放松套件,以便选择正确的板。

SFOC和TLE5012B(磁角传感器)

TLE5012是一种通过SPI通信的磁性角度传感器。它提供了精确的角度测量,这是必不可少的电机控制应用。要将其与SimpleFOC一起使用,我们需要创建一个自定义传感器类,该类扩展SimpleFOC提供的sensor基类。

我们创建了一个自定义类stle5012sensor,它扩展了Sensor类。这个类将处理从TLE5012传感器的初始化和角度读取。

TLE5012传感器类有:

•用SPI引脚初始化传感器的构造函数。

•初始化传感器硬件的init()方法。

•一个以弧度为单位读取角度的getSensorAngle()方法。

在setup()函数中,我们通过调用TLE5012Sensor类的init()方法来初始化TLE5012传感器。这将设置SPI通信并确保传感器准备好提供数据。

在loop()函数中,我们使用sensor类提供的update()、getAngle()和getVelocity()方法连续读取传感器角度和速度。这些值被打印到Arduino的串行监视器上进行调试。

TLE5012传感器提供以度为单位的角度。我们将其转换为弧度,因为SimpleFOC使用弧度进行角度计算。换算公式为:

在初始化过程中,我们检查错误并将它们打印到串行监视器(如果有的话)。这有助于调试硬件或通信问题。

将代码上传到XMC4700并打开串行监视器(设置为115200波特)。您应该看到每100毫秒打印一次角度和速度值。这确认传感器工作正常。

通过遵循这些步骤并使用提供的代码,您可以成功地将TLE5012传感器与SimpleFOC库集成!

SFOC和IFX007T(开环控制)

•这将创建一个BLDCMotor类的实例。

构造函数参数为:

极对:电机中的极对数(这里为4)。

R:电机的相电阻,以欧姆为单位(这里为0.73欧姆)。

•这些线定义了用于电机相位(U, V, W)和使能引脚(EN_U, EN_V, EN_W)的引脚。

•创建了一个BLDCDriver3PWM实例,它使用三个PWM信号控制电机。

•Target_position是一个浮点变量,以弧度为单位保存电机的目标位置。Commander用于串行通信,允许通过串行命令设置目标位置,电压限制和速度限制等参数。

•设置函数初始化引脚、串行通信和电机驱动器。

•设置电源电压(driver.voltage_power_supply)为12V,限制驱动电压为6V。

•电机的电压限制设置为3V,速度限制为5 rad/s。

•运动控制类型设置为angle_openloop,这意味着电机将在开环控制中运行,其中角度控制无反馈。

•Commander配置为允许串行命令设置目标角度,电压限制和速度限制。

•回路功能使用开环控制将电机连续移动到target_position。

•command.run()允许通过串行命令实时调整电机参数。

SFOC和IFX007T(闭环控制)

TLE5012传感器向电机控制器提供实时角度反馈。闭环控制:电机利用传感器反馈精确达到目标角度。串行命令:您可以使用串行监视器通过发送T命令,然后以弧度为单位发送所需的角度来设置目标角度。

这些引脚用于与TLE5012传感器进行SPI通信。

TLE5012Sensor对象用SPI引脚初始化。

BLDCMotor对象表示电机,BLDCDriver3PWM对象使用PWM信号控制电机。

target_angle变量存储所需的电机位置。Commander类允许通过串行监视器设置目标角度

setup()函数初始化电机、传感器和驱动器,并配置控制参数。

loop()函数持续运行FOC算法,并根据目标角度更新电机位置。

总结

通过结合XMC4700, IFX007T的强大驱动和TLE5012B的精密传感,您创建了一个非常强大的电机控制系统。简单的FOC抽象了复杂的数学,让您专注于应用程序逻辑,无论您是构建CNC机器,机械臂还是自主无人机。

本文编译自hackster.io

本站声明: 本文章由作者或相关机构授权发布,目的在于传递更多信息,并不代表本站赞同其观点,本站亦不保证或承诺内容真实性等。需要转载请联系该专栏作者,如若文章内容侵犯您的权益,请及时联系本站删除。
换一批
延伸阅读

LED驱动电源的输入包括高压工频交流(即市电)、低压直流、高压直流、低压高频交流(如电子变压器的输出)等。

关键字: 驱动电源

在工业自动化蓬勃发展的当下,工业电机作为核心动力设备,其驱动电源的性能直接关系到整个系统的稳定性和可靠性。其中,反电动势抑制与过流保护是驱动电源设计中至关重要的两个环节,集成化方案的设计成为提升电机驱动性能的关键。

关键字: 工业电机 驱动电源

LED 驱动电源作为 LED 照明系统的 “心脏”,其稳定性直接决定了整个照明设备的使用寿命。然而,在实际应用中,LED 驱动电源易损坏的问题却十分常见,不仅增加了维护成本,还影响了用户体验。要解决这一问题,需从设计、生...

关键字: 驱动电源 照明系统 散热

根据LED驱动电源的公式,电感内电流波动大小和电感值成反比,输出纹波和输出电容值成反比。所以加大电感值和输出电容值可以减小纹波。

关键字: LED 设计 驱动电源

电动汽车(EV)作为新能源汽车的重要代表,正逐渐成为全球汽车产业的重要发展方向。电动汽车的核心技术之一是电机驱动控制系统,而绝缘栅双极型晶体管(IGBT)作为电机驱动系统中的关键元件,其性能直接影响到电动汽车的动力性能和...

关键字: 电动汽车 新能源 驱动电源

在现代城市建设中,街道及停车场照明作为基础设施的重要组成部分,其质量和效率直接关系到城市的公共安全、居民生活质量和能源利用效率。随着科技的进步,高亮度白光发光二极管(LED)因其独特的优势逐渐取代传统光源,成为大功率区域...

关键字: 发光二极管 驱动电源 LED

LED通用照明设计工程师会遇到许多挑战,如功率密度、功率因数校正(PFC)、空间受限和可靠性等。

关键字: LED 驱动电源 功率因数校正

在LED照明技术日益普及的今天,LED驱动电源的电磁干扰(EMI)问题成为了一个不可忽视的挑战。电磁干扰不仅会影响LED灯具的正常工作,还可能对周围电子设备造成不利影响,甚至引发系统故障。因此,采取有效的硬件措施来解决L...

关键字: LED照明技术 电磁干扰 驱动电源

开关电源具有效率高的特性,而且开关电源的变压器体积比串联稳压型电源的要小得多,电源电路比较整洁,整机重量也有所下降,所以,现在的LED驱动电源

关键字: LED 驱动电源 开关电源

LED驱动电源是把电源供应转换为特定的电压电流以驱动LED发光的电压转换器,通常情况下:LED驱动电源的输入包括高压工频交流(即市电)、低压直流、高压直流、低压高频交流(如电子变压器的输出)等。

关键字: LED 隧道灯 驱动电源
关闭