自定义博客皮肤VIP专享

*博客头图:

格式为PNG、JPG,宽度*高度大于1920*100像素,不超过2MB,主视觉建议放在右侧,请参照线上博客头图

请上传大于1920*100像素的图片!

博客底图:

图片格式为PNG、JPG,不超过1MB,可上下左右平铺至整个背景

栏目图:

图片格式为PNG、JPG,图片宽度*高度为300*38像素,不超过0.5MB

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

-+
  • 博客(184)
  • 资源 (6)
  • 收藏
  • 关注

原创 但我们仍要坚持我们的热爱,不是吗?

2024-03-18 23:29:39 519 2

原创 新的小伙伴加入,开始系统更新分享了

在我们的共事中,我也发现了他对电控领域相关的知识与技术有着深层次的热爱,对所有的细微的知识难点与技术要点都有着近乎个人追求的执着,结合他扎实的基础,在我遇到困难时,其他人都没办法让我理解时,他往往能“深入浅出”把深层次的原理用非常易于理解的表达为我解惑。我相信大家应该深有体会,只有深入理解并掌握了其中的理论基础,才能把一个技术问题讲得非常透彻明白且通俗易懂。因此,我相信,有了他的加入,后续一定能够将更加透彻的讲明白我们的技术问题,并将能够进行更具深度的、更加广阔的知识分享。希望大家保持关注,多多支持。

2023-09-21 12:29:42 708 2

原创 永磁同步电机矢量控制到无速度传感器控制学习教程(PMSM)(一)

一个阶段的学习结束了,整理了之前的过程中的学习成果,已经过了工作的年纪,在这里稍微出一下自己做的一套永磁同步电机的教程,从基础的矢量控制,到应用性较强的MTPA、弱磁控制等,最后深入到无速度传感器的控制,搜集了三种无速度的方法,足够大家从基础到深入整个过程的学习。第一部分:从双闭环矢量到无速度传感器控制教程总的来说,仿真的分为两类,第一类,id=0矢量控制,基于矢量控制的MTPA,.....................

2020-07-12 00:40:51 74025 312

原创 永磁同步电机矢量控制(十)——PMSM最优效率(最小损耗)控制策略

↵1 电机损耗是如何产生的永磁同步电机的损耗包括机械损耗、铜损和铁损等。其中机械损耗随转速和工况的不同不断改变,是不可控的。此处仅考虑可控部分的电气损耗,包括铁损和铜损。下图为dq坐标系下考虑铁损和考虑铜损的永磁同步电机的等效电路图。 电机的损耗分析都是基于上图进行的。图中除了基本的物理量,Rc 为铁损电阻,iod 和 ioq 为气息电流分量,icd 和 icq 为铁损电流分量。我觉得这里在分析损耗之前,有必要讲解一下,图中几个交流电压源是如何来的,其实看起来是很熟悉的,我...

2020-05-19 10:40:22 22941 13

原创 永磁同步电机矢量控制(九)——三闭环位置控制系统

注:1:此为永磁同步控制系列文章之一,应大家的要求,关于永磁同步矢量控制的系列文章已经在主页置顶,大家可以直接去主页里面查阅,希望能给大家带来帮助,谢谢。2:矢量控制的六篇文章后。弱磁、MTPA、位置控制系列讲解已经补充,也放在主页了,请大家查阅。1 什么是三闭环控制系统?在双闭环(速度环和电流环)控制的基础上,在转速外环外再加一个位置外环,这个位置外环的主要作用是使得电机准确的跟随位...

2019-05-17 10:04:16 35546 27

原创 永磁同步电机矢量控制(八)——弱磁控制(超前角弱磁)

1 弱磁扩速理论 PMSM弱磁的思想来源于他励直流电动机的调磁控制。我们熟知,当他励直流电动机的端电压达到最大值之后,无法再用调压调速来提高转速,只有通过降低电动机的励磁电流,从而降低励磁磁通,实现在保证电压平衡的条件下,电机速度提升到额定转速以上。 永磁同步电机的励磁磁通是由永磁体提供的,这个磁通是恒定不变的。这个时候如果我们想降低磁通强度,就只能通过增大定子电流的去磁分量来削弱气隙......

2019-05-17 09:55:54 72055 19

原创 永磁同步电机矢量控制(七)——基于id=0的矢量控制的动态解耦策略

注:1:此为永磁同步控制系列文章之一,应大家的要求,关于永磁同步矢量控制的系列文章已经在主页置顶,大家可以直接去主页里面查阅,希望能给大家带来帮助,谢谢。2:矢量控制的六篇文章后。弱磁、MTPA、位置控制系列讲解已经补充,也放在主页了,请大家查阅。1 永磁同步电机在dq坐标系上的数学模型(为什么要解耦)(参考论文在文章最下面)将三相静止坐标系下的PMSM的数学模型经过CLARK .........

2019-05-17 09:54:57 57320 24

原创 永磁同步电机矢量控制(五)——波形记录及其分析

由于后面的MTPA和弱磁都准备在矢量控制的基础下进行,在此记录下矢量控制的其他波形,供日后参考。1 id=0的矢量控制1.1 转速+转速环输出波形+电流环iq输出波形1.2 电流环iq输出+电流环id输出+iqid反馈1.3 转速+转矩波形..................

2019-05-17 09:52:26 24854 47

原创 永磁同步电机矢量控制(三)——电流环转速环 PI 参数整定

3 PI控制器参数整定3.1从PMSM电机的数学模型出发。 dq 轴 电压方程: dq 轴 轴磁链方程: dq 轴 转矩方程: dq 轴 运动方程: 分析上述方程,如果我们能够控制 id=0 那么电压方程就可简化为: 转矩方程为: 运动方程为: 以上式中:ψf 是永磁体...............

2019-05-17 09:52:02 140316 301

原创 永磁同步电机矢量控制(六)——MTPA最大转矩电流比控制

1 永磁同步电机MTPA的控制原理1.1 MTPA控制方式与id=0控制方式的区别当电机采用id=0的控制策略,但是这种控制方法忽略和磁阻转矩的作用。这个从转矩方程最容易看出来,转矩分为永磁转矩Tr和磁阻转矩Tm,而id=0只剩下Tr。这会导致电流的利用率不高,系统的效率降低。所以id=0的控制比较适用于隐极式电机(Ld=Lq),而对于凸极式电机并不最优,所以需要重新考虑控制策略。1.2...

2019-05-17 09:51:47 113985 108

原创 永磁同步电机矢量控制(四)——simulink仿真搭建

由于是初学,对于simulink很多地方不熟悉,在此记下整个仿真搭建的选择元件的细节。 1 电机模型的选择及参数设置 永磁同步电机的英文缩写为PMSM,全称 Permanent Magnet Synchronous Machine。在 library 内搜索 Permanent 即可找到它。 Number of phase 电机相数 Back ..................

2019-05-17 09:51:37 130447 864

原创 永磁同步电机矢量控制(二)——控制原理与坐标变换推导

永磁同步电机控制原理 矢量控制框图如下图所示: 矢量控制的原理是在永磁同步电机上设法模拟直流电动机的转矩控制规律,经过坐标变换,使其电流矢量分解为产生磁通的电流分量和产生转矩的电流分量,两个分量互相垂直,相互独立。这样就可以对它们进行单独调节,与直流电动机的双闭环控制系统类似。(双闭环控制系统在陈伯时电力拖动控制书的2.4章节有详细的介绍,有需要的可以回顾一下。大三学的现在基...............

2019-05-17 09:51:30 114504 149

原创 永磁同步电机矢量控制(一)——数学模型

导师研究的课题是永磁同步电机的控制,首先给我安排的任务就是将其矢量控制系统仿真搭建出来。本文记录矢量控制系统学习过程。因为是初学我的理解可能不够,其中每个内容的出处都会在文章内标注出来,大家可以参考原文原著。 1、永磁同步电机的数学模型 (参考于解小刚、陈进采用Id=0永磁同步电机矢量控制文章) 永磁同步电机是一个非线性系统,具有多变量、强耦合的特点。我们对其分析的时候有以下假设:..................

2019-05-17 09:51:21 118865 167

原创 最近准备回归一下,有问题欢迎咨询。

前段时间遇到了一些比较严峻的挑战,处在较为过热的状态,最近想停一下,冷静一下。回到博客来沉淀一下,欢迎有问题私信沟通,前面的消息太多了没有办法再一一回顾了,后面有新的我会仔细看。

2024-04-21 15:30:36 115

原创 怎么把workspace的数据导入到simulink进行FFT分析?

首先我们看simulink的FFT分析界面,(前置步骤:导入powergui模块,双击powergui模块,Tool选项卡,选择FFT Analysis。示波器选择将数据保存,并且按需求命名。怎么把数据导入到simulink在这篇博客已经阐述了,那么如何把数据导入到simulink还能进行FFT分析呢?基波频率为50Hz,谐波分量为2倍频和4倍频,FFT分析结果如下所示;

2024-01-12 17:32:46 815

原创 怎么把workspace的数据导入到simulink查看波形?

设置simulink中from workspace 模块的采样时间与示波器的采样时间,与matlab代码对应,以上示例均为0.001;先创建脚本,运行脚本,然后建立simulink仿真,运行仿真,查看仿真波形。比如有一个10000个点的数据,如下图所示,这是两个正弦信号叠加产生,此时没有时间维度信号。但是由于是从示波器导出的,我们知道示波器的采样频率,此时是10k。此时数据是依照time生成的,假如我们只有一个数据,从示波器导出的,并没有时间这个数组,又该怎么导入到simulink呢?

2024-01-12 16:57:00 848

原创 fmincon函数求解非线性超越方程的学习记录

最近的算法中用到了fmincon函数,寻找多变量非线性方程最小值的函数;因此学习一下;fmincon函数的基础语法如下所示:fmincon函数是为了求解下列方程的最小值;b 和 beq 是向量,A 和 Aeq 是矩阵,c(x) 和 ceq(x) 是返回向量的函数,f(x) 是返回标量的函数。f(x)、c(x) 和 ceq(x) 可以是非线性函数。x、lb 和 ub 可以作为向量或矩阵传递;

2024-01-06 02:06:03 1126

原创 simulink代码生成(十)——eQEP模块

因此根据超前与滞后的关系可以确定电机的转向。实际工作时,在固定的 T 时间内对光电编码器的脉冲计数在第一个光电编码器上升沿定时器开始定时,同时开始记录光电编码器和时钟脉冲数,定时器定时 T 时间到,对光电编码器的脉冲停止计数,而在下一个光电编码器的上升沿到来时,时钟脉冲才停止记录。M 法又称之为测频法,其测速原理是在规定的检测时间 T 内,对光电编码器输出的脉冲信号计数的测速方法,例如光电编码器是N线的则每旋转一周可以有4N个脉冲,因为两路脉冲的上升沿与下降沿正好是编码器信号4倍频。我们有个问题需要探究,

2024-01-04 00:17:17 1561

原创 simulink代码生成(九)—— 串口显示数据(纸飞机联合调试)

纸飞机里面的协议是固定的,必须按照协议配置;

2024-01-02 13:01:42 872

原创 simulink代码生成(八)——应用串口输入的16进制数

数据类型一般用来标明数据的系列参数,包含有精度、动态范围、性能和存储的资源。上面讨论的均为串口传入一个一维数据,假如串口传入多个数值,这个时候该怎么处理呢?设置输入数据的维数,更改其维数;进行一个简单的实验:将串口所得数据传入如下模块,并用一个固定的参数在CCS中观测,SCI显示发送的数据;发送0x08 0x08,观测串口数据与CCS中观测数据;发送0x08 0xA3,观测串口数据与CCS中观测数据;发送0x08,观测串口数据与CCS中观测数据;发送0xA3,观测串口数据与CCS中观测数据;

2024-01-02 00:58:59 675

原创 simulink代码生成(七)——不同模块之间共同应用

以进行串口+ADC+PWM综合应用过程为例进行分析,通过串口控制PWM的占空比;并且将ADC采样值输出值串口发送模块;在代码生成过程中,不同的中断会触发不同的算法模块,但是不同算法模块之间假如采样时间不一致,则代码生成将会失败;实验结果:可以看到串口的数值反映到CMPA中了;为了保持两个模块之间的一致性;假如不进行速率的匹配就会报错;

2024-01-01 23:12:23 488

原创 simulink代码生成(六)——中断向量模块的配置

假如系统中存在多个中断,需要合理的配置中断的优先级与中断向量表;在代码生成中,要与中断向量表对应;由于外设中断源有58个,而中断线只有12根,这就需要F28335的外设中断扩展模块PIE来进行分配。DSP的外设中断扩展模块结构图如下图所示,F28335的中断采用的3级中断机制,第一级是CPU中断、第二级为PIE级中断、第三级为外设级中断。

2024-01-01 22:44:12 1065

原创 simulink代码生成(五)——ePWM模块初级应用

前面分别讲到了SCI及ADC的配置及使用,现在梳理一下ePWM的配置和使用;先打一些基础的DSP28335的基础知识;

2024-01-01 22:26:36 1716

原创 simulink代码生成(四)——SCI模块:接收模块

SCIB的接收中断的CPU中断号为9,PIE级中断为3;关闭串口调试助手,再次运行,还是报错,该问题还未解决;代码生成,先看看发送一个简单的1,查看是否完成功能;然后尝试是否可以自收自发;

2024-01-01 21:27:02 845

原创 simulink代码生成(四)——SCI模块:发送模块(串口通信)

(1)SCI module 选择串口模块(2)Additional packge header ,数据包开头字母,位于发送的数据包开头的数据,它不是正在传输的数据的一部分,并指示数据的开始。这个默认设置即可;(3)Additional package terminator ,数据包结尾字母,与开头同理;(4)Enable transmit FIFO interrupt ,是否是能FIFO终端。

2023-12-25 20:37:46 786

原创 simulink代码生成(三)——自定义变量名称

其中关键的还是对信号新的全局定义,此时由于输入是一个恒值所以能够通过 rtp.f_ref_Value识别一下,但是假如模块的输入是另一个模块的输出时,而我们正好就要对这个输入信号进行观测的时候,就需要一个全局变量且自定义名称的量来方便我们在CCS中观测和调试。如下所示,可以看到输入的 f 被定义为固定变量名称 f_ref。事实上,这些固定功能的代码模块,即使其中的变量名与物理意义不对应,它的影响并不大。在simulink代码生成的学习过程中,遇到了一个卡壳的问题:如何在生成的代码中定义一个可控变量?

2023-12-25 12:46:13 861

原创 simulink代码生成(二)——ADC采样模块

这一节梳理如何使用C2000库中的ADC模块,从而实现采样;先预留几个问题,逐步进行解决。(1)在simulink中C2000的ADC采样模块设置是怎么样的?各个选项卡代表什么?(2)ADC采样是如何被启动的?(3)ADC采样回来的值是什么值?是浮点数还是12位AD代表的4096?

2023-12-24 16:34:12 2841

原创 simulink代码生成(一)——环境搭建

然后搜索C2000,安装嵌入式硬件支持包;(目前还不知道破解版的怎么操作,目前我用的是正版的这样,完全破解的可能操作一致)TI control SUITE 、TIC2000Ware、TI F28044 Headers都没有安装,我们依次在TI官网下载安装;安装完成之后的效果,后面持续点击next即可(测试有效性时需要是succeed)选择支持的芯片种类;还是在附加功能中搜索;点击matlab附加功能,依次于TI官网下载安装;

2023-12-21 13:44:16 1489 1

原创 搜集怎么绘制三维曲线和曲面?

这里需要注重meshgrid算法的用法。尝试绘制自己的函数 Z = x^2 + y^2。(2)plot3 内的三个参数必须维度一直。(1)3-D绘图的函数为 plot3。代码后增加colormap();代码后增加colormap();附:meshgrid的用法。

2023-12-11 22:24:57 523

原创 关于粒子群算法的一些简单尝试

1、定义初始随机位置;2、定义初始随机速度;

2023-12-11 17:11:26 923

原创 永磁同步电机反电动势系数怎么算?磁链强度怎么算?转矩系数怎么算?

Voltage constant(VL-L / krpm) 反电动势系数 = 1000 * 1.732 * Np * pi * pihf / 30。拿到一个永磁同步电机,其极对数 Np = 4 ,给你磁链强度 phif 就可以换算出反电动势系数和转矩系数;只要给到其中一个都可以互相解算出来。实际上在simulink中,永磁体磁链强度/反电动势系数/转矩系数这三个是放一起的,这是因为他们都可互相算出来。在进行永磁同步电机simulink仿真时,一个关键参数就是永磁体磁链强度,

2023-12-09 15:50:08 2687 1

原创 深入电机控制基础知识(1)- 磁共能与电磁转矩

打开任意一本电机学的教材,翻到电机基本概念的说明的位置,总能看到一句描述电机本质的话:电机是一种机电能量转化的装置。机电能量转化,很生动形象的说明电机的工作原理。对于电动机而言,吸收电能,释放机械能,对于发电机而言,吸收机械能,转化为电能。在这个过程中,电机会产生电磁转矩。那么大家有没有想过,为什么叫电磁转矩?电磁转矩又是怎么产生的呢?下面我就会从能量守恒的角度,推导一下电磁转矩产生的过程。

2023-09-25 01:33:42 920

原创 三电阻采样的劣势分析

以MOS为例,当驱动芯片为STM32F405时,死区时间为 2us,开通关断延迟 1us,ADC转换时间3us,全部合在一起是6us。假如一个控制系统的载波频率是10k,此时一个载波周期为 100us,若必须保持8us的采样窗口,则最大占空比只有 100 - 8 / 100 = 92%,从而导致电压利用率低。做个仿真试一下,如下图所示,三电阻采样的实际相电流是IA,IrA为采样电阻电流,最下面一排波形为PWM。死区时间一般为1-5us,T开通关断延迟约为1-2us,芯片转换延迟时间约为3-6us,

2023-07-01 16:31:01 2103 3

原创 撸一遍STM32最小系统板

采样的MCU型号为STM32F405RGT6,目前这款芯片价格便宜性能好。设计一个控制板。

2023-06-26 01:38:53 6968 3

原创 整体撸一遍PMSM的滑模观测器(SMO)公式+模型+代码

该文章中包含其他滑模观测器更为详细部分的讲解链接。在进入代码学习之前,可以先对这个部分进行阅读与学习。本篇文章意图记录模观测器代码学习和调试过程。在此先仅考虑表贴式(隐极)电机,即Ld = Lq。

2023-06-18 12:53:51 11169 41

原创 永磁同步直线电机学习笔记——什么是直线电机?

永磁同步直线电机(Permanent Magnet Linear Synchronous Motor,简称PMLSM)是一种电动机,它通过将永磁体和线圈组合在一起,将电能转化为机械运动。与传统的旋转电机不同,PMLSM是一种直线运动电机,适用于需要直线运动的应用。PMLSM的主要组成部分包括固定部分和移动部分。固定部分通常由永磁体组成,它们产生稳定的磁场。移动部分包括线圈,通常由导线绕制而成,可以根据所需的运动来激励和控制电流。PMLSM的工作原理基于磁场互作用和电磁感应定律。

2023-06-18 12:50:10 3762

原创 阶段性的一些思考

由于前两年的变动,博客上的事务都被延置了,最近也是希望能够拾掇回来,多做一些有意义的事情,分享一些知识,也分享一些唠叨,更多的是想找到自己的一个主业之外的寄托,回归到以前写博客的本心,那段时间真是无比快乐的。慢慢逐渐懂得很多大佬为什么能够孜孜不倦的去做分享写文章,其实更多的是内源性的快乐,他们喜爱自己做的事物,真实追寻自己的内心,我也希望能达到那个状态。阶段性思考一下自己的行动,去年一年进行的一些努力,现在进入了一条非常崭新的赛道,非常有幸能够有进一步提高自己的机会,但是也带来了非常多的挑战。

2023-06-06 14:47:32 526

原创 STM32杂乱笔记

杂乱记录一下

2023-06-03 13:09:33 989

原创 搭建stm32电机控制代码框架(四)——单路PWM生成

STM32中单路PWM的生成一般是基于某一个通用定时器,本次小实验选取TIM2通用定时器,选择PA5作为PWM端口输出。(2)配置时钟树,如下图所示,TIM2的时钟总线挂在ABP1上,此时时钟源为72M。

2023-05-30 16:34:44 969

原创 搭建stm32电机控制代码框架(五)——Stm32CubeMx配置PWM

此时ABP2的时钟频率为72MHz,要想获得10kHz的PWM,则定时器的周期值TPRD = 72M/2/10k = 3600,配置TIM1参数如下图所示,配置123通道均为PMW generation,然后时钟选择为内部时钟。采样配置完成后,进行PWM的配置。PWM的生成依赖于STM32的TIM1定时器,其功能完备如下图所示,电机控制中主要应用其PWM生成功能。那么开始CubeMx的配置,依据stm32f405数据手册中地址总线部分内容,TIM1是挂在ABP2时钟上的,那么先要配置ABP2的时钟。

2023-05-30 15:46:08 2386 2

异步电机双闭环适量控制的记录学习

异步电机双闭环

2022-03-03

永磁同步电机双闭环调速系统PI参数计算exe程序

本资源文件是一个关于永磁同步电机的PI参数计算程序,输入基本的电机参数就可以直接计算出电流环和转速换的PI参数,省去大部分的PI参数试凑时间。

2019-03-16

电机双闭环控制最全动态解耦论文

电机双闭环控制最全动态解耦论文,是我看过讲动态解耦最详细的文章,完全能够解决电机控制中dq轴电流耦合的问题。

2019-03-16

SVPWM原理及算法详解

非常详细的讲解了SVPWM的工作原理,以及SVPWM的仿真实现,和算法实现。非常推荐。

2019-01-09

DSP TMS320F28335例程全

包含所有的基础DSP的28335基础例程,CCS的版本是5.5版本的,如果用法上由问题,可以在博客留言。

2018-10-12

永磁同步电机弱磁控制相关论文

这个是我在学习永磁同步电机弱磁控制过程中所用到的论文,里面包含双电流调节器的超前角控制,单电流调节器的弱磁控制。对搭建仿真用处较大。

2018-10-02

空空如也

TA创建的收藏夹 TA关注的收藏夹

TA关注的人

提示
确定要删除当前文章?
取消 删除