当前位置: 首页 > news >正文

stm32 FOC 电机介绍

今年开始学习foc控制无刷电机,这几天把所学整理一下,记录一下知识内容。

前言:

为什么要学习FOC?
1.电机控制是自动化控制领域重要一环。
2.目前直流无刷电机应用越来越广泛,如无人机、机械臂、云台、仿生机器人等等。

需要什么基础?
1.C语言,指针,结构体,编程规范。
2.STM32外设使用。
3.原理图阅读。
4.芯片手册阅读。
5.数序坐标系知识

为什么要出本教程?
1.直流无刷电机应用越来越广泛,网上资料比较散落,因此想要出一篇系统性的教程,从头到尾,深入浅出,帮助初学者快速入门直流无刷电机控制。
 

1、电机的分类

1.1、直流有刷电机

        直流有刷电机(BDC)是一种内含电刷装置,可以将直流电能转换成机械能的电动机。
在允许的范围之内,只需要调整电压,即可调整它的转速,因此这类电机拥有良好的调速性
能。直流有刷电机实物图如图 3.2.1.1 所示

网上找到一张动态图片

电机系列:直流电机是如何工作的? - 知乎

1.2、直流无刷电机

        无刷电机是指无电刷和换向器(或集电环)的电机,又称无换向器电机,它由电动机主
体和驱动器组成,是一种典型的机电一体化产品。 早在十九纪, 就已经出现了无刷形式的电
机,即交流鼠笼式异步电动机, 但是, 其有着许多无法克服的缺陷, 以至于人们不断地探索
更好的电机技术。 直到上世纪中叶, 晶体管诞生了,晶体管换向电路代替了传统的电刷与换
向器结构, 这种新型无刷电机克服了第一代无刷电机的缺陷。 直流无刷电机实物图如图

https://www.zhihu.com/zvideo/1381638054105477121

直流无刷电机又分为永磁同步电机(Permanent Magnet Synchronous Motor, PMSM)和一般的BLDC电机

PMSM和BLDC的区别:

  1. 磁场分布

    • BLDC:通常具有一个方波磁场分布。这意味着其定子绕组产生的磁场是方波形式的。
    • PMSM:具有正弦波磁场分布。这是因为PMSM的转子磁铁和定子绕组的设计使得其产生的磁场更接近正弦波形式。
  2. 扭矩脉冲

    • BLDC:由于方波磁场,BLDC电机在运行时可能会产生更显著的扭矩脉冲。
    • PMSM:由于其正弦波磁场,PMSM通常能提供更平滑的扭矩输出。
  3. 控制策略

    • BLDC:经常使用比较简单的6步换相控制。
    • PMSM:更适合使用正弦波控制或矢量控制(如FOC),这可以更好地匹配其正弦波磁场特性。

PMSM的特点:

  • 高效率和性能:PMSM由于其正弦波磁场和优化的控制策略,通常能提供更高的效率和性能。
  • 精确控制:PMSM非常适合于需要精确速度和位置控制的应用,这使其在伺服系统中非常受欢迎。
  • 高转矩密度:PMSM通常具有较高的转矩密度,即在相同大小下可以提供更大的扭矩。
  • 应用广泛:PMSM被广泛应用于工业伺服系统、电动汽车、精密机械和航空航天领域。

下图更直观的知道区别:

1.3、舵机

        舵机是一种“特殊”的直流电机,其构造不仅只有电机部分,而且还自带一个控制器,
所以舵机本身就是一个闭环的控制系统(伺服系统)。 当我们给舵机发送指令信号时,它可
以将指令信号变换为输出轴的角度并保持住,即便是负载发生了变化,它也能够进行自动调
节。 舵机的实物图如图 3.2.3.1 所示:

1.4、步进电机

        步进电机是一种将电脉冲信号转变为角位移或线位移的开环控制电机,是现代数字程序
控制系统中的主要执行元件,应用极为广泛。在非超载的情况下,步进电机的转速、停止的
位置只取决于脉冲信号的频率和脉冲个数,不受负载变化的影响。步进电机的实物图如图
3.2.4.1 所示

1.4、伺服电机

        伺服电机是指在伺服系统中控制机械元件运转的电动机,它搭配上驱动器,形成一个完
整的伺服系统,就能够精准地控制速度、位置等。伺服电机具有线性度高、起动转矩大、运
行范围较广、无自转现象等显著特点,遗憾的是,就目前来说,一整套伺服系统的成本是相
对较高的。伺服电机和控制器的实物图如图 3.2.5.1 所示:

1.5、各类电机特点
电机类别特点
直流有刷电机驱动简单,成本低廉,但是噪音大, 故障较多, 寿命也相对较短。
直流无刷电机噪音低,运转流畅,高速,寿命更长,但是控制较为复杂。
舵机

自成闭环控制系统, 角度控制优秀,价格低,但是带负载的能力较弱。

步进电机结构简单,驱动方便,没有积累误差,不过因为其可能存在丢步现象,
常用于对精度要求不高的场合。
伺服电机速度、位置控制精确,可低速运行,效率高,寿命长,可以说是目前最
为可靠的一类电机。但是价格较高。
1.6、电机常用名词


        为了让大家可以更好地学习电机控制,搭建更健全的电机知识架构,下面我们先学习一
些电机常用名词:
① 转速:电机输出轴的速度,一般单位是 r/min(转每分钟),也常用 RPM 表示。
② 输出扭矩:表示了电机输出轴可以输出力的大小,单位一般为 N· m 或者 kg· cm。
③ 工作电压:电机正常工作的电压。
④ 额定电流:电机正常工作时的电流。
⑤ 堵转电流:电机负载过大,驱动力不足,发生堵转时的电流

参考文献:

正点原子的电机部分资料和网上资料

一文看懂有刷电机与无刷电机的工作原理及区别 - 知乎

FOC算法与SVPWM技术_深入浅出讲解foc算法与svpwm技术 pdf-CSDN博客

FOC基础知识:【自制FOC驱动器】深入浅出讲解FOC算法与SVPWM技术 - 知乎

SVPWM算法原理及详解_svpwm是什么意思-CSDN博客

【STM32-HAL库】一步步搭建出FOC矢量控制(附C代码)_stm32foc全代码详解-CSDN博客

相关文章:

stm32 FOC 电机介绍

今年开始学习foc控制无刷电机,这几天把所学整理一下,记录一下知识内容。 前言: 为什么要学习FOC? 1.电机控制是自动化控制领域重要一环。 2.目前直流无刷电机应用越来越广泛,如无人机、机械臂、云台、仿生机器人等等。 需要什么基础&…...

【Linux】进程通信——管道

欢迎来到Cefler的博客😁 🕌博客主页:折纸花满衣 🏠个人专栏:题目解析 🌎推荐文章:【LeetCode】winter vacation training 目录 📋进程通信的目的📋管道匿名管道pipe函数创…...

3d gaussian splatting笔记(paper部分翻译)

本文为3DGS paper的部分翻译。 基于点的𝛼混合和 NeRF 风格的体积渲染本质上共享相同的图像形成模型。 具体来说,颜色 𝐶 由沿射线的体积渲染给出: 其中密度 𝜎、透射率 𝑇 和颜色 c 的样本是沿着射线以…...

TCP 三次握手以及滑动窗口

TCP 三次握手 简介: TCP 是一种面向连接的单播协议,在发送数据前,通信双方必须在彼此间建立一条连接。所谓的 “ 连接” ,其实是客户端和服务器的内存里保存的一份关于对方的信息,如 IP 地址、端口号等。 TCP 可以…...

Vue3 Cli5按需导入ElementPlus

1、安装环境 node:16.20.0 vue:3.2.36 vue/cli:5.0.0 element-plus:2.2.25 element-plus/icons-vue:2.0.10 unplugin-auto-import:0.16.1 // 当前环境用这个包,不然会提示各种错误 unplugin-vu…...

playwright自动化项目搭建

具备功能 关键技术: pylaywright测试库pytest单元测试框架pytest-playwright插件 非关键技术: pytest-html插件pytest-rerunfailures插件seldom 测试框架 实现功能: 元素定位与操作分离失败自动截图并保存到HTML报告失败重跑可配置不同…...

mysql字符集

一、查看字符集 //查看数据库字符集 SHOW CREATE DATABASE databasename; //查看表字符集 SHOW CREATE TABLE tablename; //查看指定表全部字段字符集 show full columns from table; 二、修改字符集 将超出utf8字符集范围的字符比如𪨧插入到utf8字符集的字…...

Elasticsearch:聊天机器人、人工智能和人力资源:电信公司和企业组织的成功组合

作者:来自 Elastic Jrgen Obermann, Piotr Kobziakowski 让我们来谈谈大型企业人力资源领域中一些很酷且改变游戏规则的东西:生成式 AI 和 Elastic Stack 的绝佳组合。 现在,想象一下大型电信公司的典型人力资源部门 — 他们正在处理一百万件…...

[AIGC大数据基础] Flink: 大数据流处理的未来

Flink 是一个分布式流处理引擎,它被广泛应用于大数据领域,具有高效、可扩展和容错的特性。它是由 Apache 软件基金会开发和维护的开源项目,并且在业界中受到了广泛认可和使用。 文章目录 什么是 FlinkFlink 的特点真正的流处理高性能和低延迟…...

数据结构之线性表(一般的线性表)

前言 接下来就开始正式进入数据结构环节了,我们先从线性表开始。 线性表 线性表(linear list)也叫线性存储结构,即数据元素的逻辑结构为线性的数据表,它是数据结构中最简单和最常用的一种存储结构,专门存…...

uniapp安卓android离线打包本地打包整理

离线打包准备 下载Android studio 1.准备资源hbuilder 2.准备离线SDK 最新android平台SDK下载最新android平台SDK下载 3.离线打包key申请 4.直接导入HBuilder-Integrate-AS工程,直接运行simpleDemo项目即可 5.安装java 1.8 jdk-8u151-windows-x64 6.遇到这个报错报错Caus…...

vmware安装centos8-stream

VMware与CentOS8-stream的配置教程【2022-9-5】_centos stream 8-CSDN博客 启动进入后配置网络,/etc/sysconfig/network-scripts/网卡 vmware上的centos8没有网络_主机时wifi上网,centos 8 安装后无法连接网络 解决办法-CSDN博客 centos8配置网络_centos8网络配置…...

使用HttpServletRequestWrapper解决web项目request数据流无法重复读取的问题

在做web项目开发时,我们有时候需要做一些前置的拦截判断处理,比如非法参数校验,防攻击拦截,统一日志处理等,而请求参数如果是form表单提交还好处理;对于json这种输入流的数据就会有问题,统一处理…...

从CNN ,LSTM 到Transformer的综述

前情提要:文本大量参照了以下的博客,本文创作的初衷是为了分享博主自己的学习和理解。对于刚开始接触NLP的同学来说,可以结合唐宇迪老师的B站视频【【NLP精华版教程】强推!不愧是的最完整的NLP教程和学习路线图从原理构成开始学&a…...

Git学习笔记:1 基础命令详解

文章目录 Git基础命令详解: Git基础命令详解: git commit 用法:git commit -m "commit message"功能:将暂存区(stage)中的所有更改提交到本地仓库的当前分支,同时提供一个简短的提交信…...

【服务器】安装宝塔面板

目录 🌺【前言】 🌼【前提】连接服务器 🌷方式一 使用工具登录服务器如Xshell 🌷方式二 阿里云直接连接 🌼 1. 安装宝塔 🌷获取安装脚本 方式一 使用下面提供的脚本安装 方式二 使用官网提供的脚本…...

开源模型应用落地-业务优化篇(一)

一、前言 通过参与“开源模型应用落地-业务整合系列篇”的学习,我们已经成功建立了基本的业务流程。然而,这只是迈出了万里长征的第一步。现在我们要对整个项目进行优化,以提高效率。我们计划利用线程池来加快处理速度,使用redis来实现排队需求,以及通过多级环境来减轻负载…...

【遥感专题系列】影像信息提取之——基于专家知识的决策树分类

可以将多源数据用于影像分类当中,这就是专家知识的决策树分类器,本专题以ENVI中Decision Tree为例来叙述这一分类器。 本专题包括以下内容: 专家知识分类器概述知识(规则)定义ENVI中Decision Tree的使用 概述 基于知…...

lqb日志08

一只小蒟蒻备考蓝桥杯的日志 文章目录 笔记坐标相遇判断工作调度问题(抽象时间轴绘制) 刷题心得小结 笔记 坐标相遇判断 我是小懒虫,碰了一下运气,开了个“恰当”的数(7000)如果,7000次还不能…...

SAP EXCEL上传如何实现指定读取某一个sheet页(ALSM_EXCEL_TO_INTERNAL_TABLE)

如何读取指定的EXCEL sheet 页签,比如要读取下图中第二个输出sheet页签 具体实现方法如下: 拷贝标准的函数ALSM_EXCEL_TO_INTERNAL_TABLE封装成一个自定义函数ZCALSM_EXCEL_TO_INTERNAL_TABLE 在自定义函数导入参数页签新增一个参数SHEET_NAME 在源代码…...

深入剖析AI大模型:大模型时代的 Prompt 工程全解析

今天聊的内容,我认为是AI开发里面非常重要的内容。它在AI开发里无处不在,当你对 AI 助手说 "用李白的风格写一首关于人工智能的诗",或者让翻译模型 "将这段合同翻译成商务日语" 时,输入的这句话就是 Prompt。…...

Golang 面试经典题:map 的 key 可以是什么类型?哪些不可以?

Golang 面试经典题:map 的 key 可以是什么类型?哪些不可以? 在 Golang 的面试中,map 类型的使用是一个常见的考点,其中对 key 类型的合法性 是一道常被提及的基础却很容易被忽视的问题。本文将带你深入理解 Golang 中…...

苍穹外卖--缓存菜品

1.问题说明 用户端小程序展示的菜品数据都是通过查询数据库获得,如果用户端访问量比较大,数据库访问压力随之增大 2.实现思路 通过Redis来缓存菜品数据,减少数据库查询操作。 缓存逻辑分析: ①每个分类下的菜品保持一份缓存数据…...

【2025年】解决Burpsuite抓不到https包的问题

环境:windows11 burpsuite:2025.5 在抓取https网站时,burpsuite抓取不到https数据包,只显示: 解决该问题只需如下三个步骤: 1、浏览器中访问 http://burp 2、下载 CA certificate 证书 3、在设置--隐私与安全--…...

12.找到字符串中所有字母异位词

🧠 题目解析 题目描述: 给定两个字符串 s 和 p,找出 s 中所有 p 的字母异位词的起始索引。 返回的答案以数组形式表示。 字母异位词定义: 若两个字符串包含的字符种类和出现次数完全相同,顺序无所谓,则互为…...

微信小程序云开发平台MySQL的连接方式

注:微信小程序云开发平台指的是腾讯云开发 先给结论:微信小程序云开发平台的MySQL,无法通过获取数据库连接信息的方式进行连接,连接只能通过云开发的SDK连接,具体要参考官方文档: 为什么? 因为…...

Java入门学习详细版(一)

大家好,Java 学习是一个系统学习的过程,核心原则就是“理论 实践 坚持”,并且需循序渐进,不可过于着急,本篇文章推出的这份详细入门学习资料将带大家从零基础开始,逐步掌握 Java 的核心概念和编程技能。 …...

Swagger和OpenApi的前世今生

Swagger与OpenAPI的关系演进是API标准化进程中的重要篇章,二者共同塑造了现代RESTful API的开发范式。 本期就扒一扒其技术演进的关键节点与核心逻辑: 🔄 一、起源与初创期:Swagger的诞生(2010-2014) 核心…...

【碎碎念】宝可梦 Mesh GO : 基于MESH网络的口袋妖怪 宝可梦GO游戏自组网系统

目录 游戏说明《宝可梦 Mesh GO》 —— 局域宝可梦探索Pokmon GO 类游戏核心理念应用场景Mesh 特性 宝可梦玩法融合设计游戏构想要素1. 地图探索(基于物理空间 广播范围)2. 野生宝可梦生成与广播3. 对战系统4. 道具与通信5. 延伸玩法 安全性设计 技术选…...

GC1808高性能24位立体声音频ADC芯片解析

1. 芯片概述 GC1808是一款24位立体声音频模数转换器(ADC),支持8kHz~96kHz采样率,集成Δ-Σ调制器、数字抗混叠滤波器和高通滤波器,适用于高保真音频采集场景。 2. 核心特性 高精度:24位分辨率&#xff0c…...