纯硬件FOC驱动BLDC

1. 硬件FOC

图 1 为采用 FOC 的方式控制 BLDC 电机的过程,经由 FOC 变换( Clark 与 Park 变换) ,将三相电流转换为空间平 行电流 ID 与空间垂直电流 IQ。经过 FOC 逆变化逆( Clark 变换与逆 Park 变换) ,将两相电流转换为三相电流用于控 制电机; 由于在 Park 变换与逆 Park 变换时需要旋转坐标与 静止坐标轴的夹角,这里的编码器信号需要同时进入 FOC 变换与 FOC 逆变换中。

硬件 FOC 芯片 TMC4671 是一个完全集成的控制器,包 含了完整的控制回路架构( 位置闭环、速度闭环、转矩闭 环) 、用于通信所需的外围接口、用于反馈( 电流、电压测量、 编码器、霍尔传感器) 的信号接口,以及一些有用的附加引 脚。作为模块化的硬件,能够负责所有关键的实时任务,将 实时的矢量控制、实时的子任务( 电流测量、位置传感器信 号处理、脉宽调制( pulse width modulation,PWM) 信号生成 与用户的应用分离出来,简化的目标任务。 TMC4671 内部由应用程序接口、寄存器库、ADC 通道、 编码器通道、FOC 转矩 PI 控制器、速度 PI 控制器、位置 P 控 制器以及 PWM 输出通道组成,其中 ADC 采集通道将原始 的 ADC 数据通过缩放映射到内部的电流控制环路,内部 FOC 转矩 PI 控制器所需的所有转换( Clark 变换、Park 变 换、逆 Clark 变换、逆 Park 变换) ,都是由纯硬件搭建。相比 于软件构成的控制系统,运算速度得到了极大的提高,使得 它可以支持最高的控制环路速度和 PWM 频率。 TMC4671 作为 SOC( 片上系统) ,大大减少了所需组件 的数量,更重要的是,它减少了 PCB 空间。与传统的电机伺 服控制( 由电机的线缆与编码器和单独的控制盒连接) 相 比,硬件矢量控制芯片高度集成,尺寸紧凑、性能高,使其能 够轻松实现电机的嵌入式控制。

2. 驱动电路设计

2.1 整体设计

采用 TMC4671 芯片为核心,所设计的直流无刷电机驱 动器结构如图 2 所示。其中,单片机、硬件 FOC 芯片与电流 传感器均采用 3. 3 V 供电,编码器使用 5 V 供电,MOSFET 驱动电路部分的供电与 MOSFET 场效应管的选择决定了驱 动电机的功率,根据应用条件不同,电压范围在 12 ~ 60 V。

单片机通过 SPI 通信的方式访问 TMC4671 芯片中的寄 存器,进行初始化编码器方向,以及设置电机极对数、PI 控 制器参数、电机运动模式等一系列参数,并配合编码器以及电流传感器进行参数的初始化,确保采集的电流信号能够 通过正确的缩放因子进入 FOC 控制回路中,使得电机能以 正确的方式进行运动。 所设计的驱动器围绕 TMC4671 进行外围电路设计,确 保芯片正常运行以及反馈信号、通信信号的采集与传输,最 终控制信号通过 MOSFET 电路对电机进行控制。

2.2 相电流采集电路

对于三相无刷电机而言,需要测量其两相电流,通过基 尔霍夫定律即可算出另一相的电流。测量相电流主要有两 种方法。一种是采用电阻与差分放大器测量的方式,放大 器如 LT1999 或 AD8418A; 另一种方式是采用电流传感器进 行测量,电流传感器使用霍尔效应或其他磁效应实现电流 的测量,如 ASC711,CSNE151 [10]。放大器测量的成本成本 相对较低,而采用电流传感器的方式,可以在较高的电压环 境下进行测量。

2.3 编码器采样电路

目前市面上的 ABN 编码器通常都是差分信号输入的 编码器,即输出信号为 A + ,A - ,B + ,B - ,Z + ,Z - ,其中 A 信 号与 B 信号为脉冲输出信号,两个信号相差 90°的相位差, 根据 A 信号超前于 B 信号还是滞后于 B 信号判断旋转方 向,Z 信号为 0 位信号,当电机旋转一圈后输出一个脉冲, 采用差分信号的方式具有良好的抗干扰性,能够传输较远 距离[11],在 ABZ 三相信号进入硬件 FOC 需要通过将差分 信号转换为单端信号,例如使用 AD8130 或 ISL32173。 编码器的参考工作电压通常为 5 V,而硬件 FOC 工作 在 3. 3 V 电压下。需要对硬件 FOC 输入引脚进行保护,图 3 为编码器信号采样电路。

原始信号通过分压电阻,并通过一个低通滤波器进行 滤波,在信号进入硬件 FOC 中前,使用二极管进行过压与 欠压保护,低通滤波器的截至频率为

2.4 MOSFET 驱动电路

三相无刷直流电机的 MOSFET 驱动电路通常采用三个 半桥驱动电路实现,每个半桥电路连接电机的一个相线,该 电路可靠性高、外围元件少,驱动能力强。图 4 为一相的半 桥驱动电路,为确保运行可靠,在靠近电源 VM 处放置滤波 电容,以防止超调与振铃,在 MOSFET 栅极增加了一个电阻 Rg,确保驱动信号的干净与可靠,在 PCB 的布局上,调整桥 的布局变得紧凑,以获得最小的环路电感。

2.5 实际电路

TMC4671 的高度集成化,配合其他集成化芯片,能够做 到尺寸足够小的伺服驱动控制电路板,采用集成芯片所设 计的驱动控制电路板,在印刷电路板( PCB) 两面分布元器 件,图 5 为所设计的电路板与橡皮擦的尺寸比较图。

3. 试验验证

使用所设计的驱动器应用于杰美康的 42JSF630AS— 1000 型号直流无刷伺服电机,设定目标转矩为 0. 5 N × M, 为验证其控制效果,在电机正常运行一段时间后施加一个 外部干扰,图 6 为电机运行过程中的实际转矩及速度的变 化波形。

由图 6 可以看出: 电机在正常运行过程中转速及转矩 波动小,运转平稳,在施加外部干扰后能够迅速进行调整, 回到设定目标值附近。

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

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈email:809451989@qq.com,一经查实,立即删除!

相关文章

喜茶新品被迫更名,内容营销专家刘鑫炜谈品牌定位敏锐度和适应性

喜茶,作为茶饮界的知名品牌,一直以其独特的创意和优质的产品受到消费者的喜爱。然而,近期喜茶推出的一款新品“小奶栀”却因其名称发音问题引发了不小的争议。 事件回顾 “小奶栀”这款新品在上市之初,以其独特的口感和创新的命名…

气膜结构的年度维护费用解析—轻空间

气膜结构作为一种新型建筑形式,广泛应用于体育场馆、仓储、展览馆等场所。由于其独特的结构特点,气膜建筑的维护工作显得尤为重要。轻空间将详细探讨气膜结构的年度维护费用构成及影响因素,帮助大家全面了解气膜建筑的运营成本。 气膜结构年度…

android studio 添加aar包

按着以前旧的导包方式栽了大跟头,后面在留老板的的博客下找到了解决办法,记录一下。 Andriod Studio 导入aar最新的方式_gradle 8 引入arr-CSDN博客 最新导包方式 1.在新建libs目录,在app/libs目录下导入aar包(其实就是拷贝过去…

揭秘品牌推广的制胜之道:步骤、流程、方法与技巧全攻略!

品牌推广是现代营销战略中的核心环节,对于提升品牌知名度、塑造品牌形象以及扩大市场份额具有举足轻重的作用。 作为一名手工酸奶品牌的创始人,目前全国复制了100多家门店,我来为大家分享品牌推广的制胜之道,包括具体步骤、流程、…

STM32的EXTI简介

一,EXTI(External Interrupt)外部中断事件控制器 什么是EXTI? 1.监测指定的GPIO口的电平信号变化,并检测到指定条件时,向内核的中断控制器NVIC发出中断申请。NVIC在裁决后,如果满足条件&#xf…

pytest-自动执行固件

目前为止,所有固件的使用都是手动指定,或者作为参数,或者使用 usefixtures。 如果我们想让固件自动执行,可以在定义时指定 autouse 参数。 下面是两个自动计时固件,一个用于统计每个函数运行时间(functio…

【自然语言处理】司法阅读理解

司法阅读理解 1 任务目标 1.1 任务说明 裁判文书中包含了丰富的案件信息,比如时间、地点、人物关系等等,通过机器智能化地阅读理解裁判文书,可以更快速、便捷地辅助法官、律师以及普通大众获取所需信息。 本次任务覆盖多种法律文书类型&am…

半个月从几十升粉到500(发红包喽)

目录 1. 背景2. 涨粉秘籍2.1 持续创作高质量内容2.1.1 保持频率2.1.2 技术文章为主2.1.3 图文并茂 2.2 积极参与社区活动2.2.1 社区分享2.2.2 发文活动 2.3 互动与建立信任2.3.1 与读者互动2.3.2 红包互动2.3.3 动态分享 2.4 标题与内容的优化2.4.1 标题吸引2.4.2 内容实用 2.5…

Anaconda 和 Python 的区别及其重要性

引言 Python 是一种广泛使用的编程语言,特别是在数据科学、机器学习和科学计算领域。随着 Python 的普及,许多开发工具和环境也应运而生,其中 Anaconda 是一个非常流行的 Python 发行版。本文将探讨 Anaconda 和 Python 的区别,A…

【面试分享】嵌入式面试题常考难点之关于单链表的增删改查

文章目录 【面试分享】嵌入式面试题常考难点之关于单链表的增删改查一、单链表结点定义二、增(Create)——插入结点1. 于链表头部插入结点(头插法)2. 于链表尾部插入结点(尾插法)3. 于链表中间插入结点3-1.…

Listary(Windows 文件搜索工具)专业版值得购买吗?

说到经典的国货软件,有一款 Win 软件是一定绕不过去的。它就是知名的本地文件搜索工具 Listary! 便捷的文件搜索窗口;快捷操作的体验;与系统更匹配的外观设计;更智能的排序和更可靠的索引。 便捷的文件搜索窗口 紧凑…

Java基础(三)——类和对象、构造方法

个人简介 👀个人主页: 前端杂货铺 ⚡开源项目: rich-vue3 (基于 Vue3 TS Pinia Element Plus Spring全家桶 MySQL) 🙋‍♂️学习方向: 主攻前端方向,正逐渐往全干发展 &#x1…

HarmonyOS Next开发学习手册——弹性布局 (Flex)

概述 弹性布局( Flex )提供更加有效的方式对容器中的子元素进行排列、对齐和分配剩余空间。常用于页面头部导航栏的均匀分布、页面框架的搭建、多行数据的排列等。 容器默认存在主轴与交叉轴,子元素默认沿主轴排列,子元素在主轴…

多见线程方法

多见线程方法 本节的类代码可以查看上一节的类代码 线程暂停 Thread.sleep(1000);//暂停1000毫秒这就有点像在时间里面学习的*sleep()*函数了 package multiThread2;public class main {public static void main(String[] args) {Animal a1 new Animal("张三",1…

PHP电商系统开发指南数据库管理

回答:数据库管理是电商系统开发的关键,涉及数据的存储、管理和检索。选择合适的数据库引擎,如mysql或 postgresql。创建数据库架构,定义数据的组织方式(如产品表、订单表)。进行数据建模,考虑实…

java笔记(30)——反射的 API 及其 使用

文章目录 反射1. 什么是反射2. 获取class字段(字节码文件对象)方式1方式2方式3应用 3. 获取构造方法和权限修饰符前期准备获取所有的公共构造方法获取所有的构造方法获取无参构造方法获取一个参数的构造方法获取一个参数的构造方法获取两个参数的构造方法…

详细介绍MySQL的索引(上)

索引 索引概述 索引(index)是帮助MySQL高效获取数据的数据结构(有序)。在数据之外,数据库系统还维护着满足特定查找算法的数据结构,这些数据结构以某种方式引用(指向数据,这样就可以在这些数据结构上实现高级查找算法,这种数据结…

Ubuntu更新源

一、sudo apt-get update命令 在Debian系中,Ubuntu是很火的一款开源系统产品。使用sudo apt-get update从我们的更新源中获取并更新系统中软件包的列表信息,sudo apt-get update作用如下: 更新软件包列表: 将本地软件包列表与远程仓库中的最…

二叉树第二期:堆的实现与应用

若对树与二叉树的相关概念,不太熟悉的同学,可移置上一期博客 链接:二叉树第一期:树与二叉树的概念-CSDN博客 本博客目标:对二叉树的顺序结构,进行深入且具体的讲解,同时学习二叉树顺序结构的应用…

[数据集][目标检测]桥梁检测数据集VOC+YOLO格式1116张1类别

数据集格式:Pascal VOC格式YOLO格式(不包含分割路径的txt文件,仅仅包含jpg图片以及对应的VOC格式xml文件和yolo格式txt文件) 图片数量(jpg文件个数):1116 标注数量(xml文件个数):1116 标注数量(txt文件个数):1116 标注…