永磁同步电机恒压频比(V/F)开环控制系统Matlab/Simulink仿真分析及代码生成到工程实现
创始人
2024-03-14 18:23:05

文章目录

  • 前言
  • 一、 恒压频比(V/F)控制原理
  • 二、永磁同步电机恒压频比开环控制系统Matlab/Simulink仿真分析
    • 2.1.仿真电路分析
      • 2.1.1.恒压频比控制算法
      • 2.1.2.输出处理
      • 2.1.3.主电路
    • 2.2.仿真结果分析
      • 2.2.1.设定目标转速为1200r/min
      • 2.2.1.设定目标转速为变化值
  • 三、永磁同步电机恒压频比开环控制系统代码生成及工程实现
    • 3.1.功能需求
    • 3.2.硬件设计
    • 3.3.软件设计
      • 3.3.1.STM32CubeMX底层配置
      • 3.3.2.应用层与底层的接口开发
      • 3.3.3.Matlab/Simulink恒压频比控制算法代码生成
      • 3.3.4.应用层与底层的代码集成
    • 3.4.仿真验证
  • 总结


前言

本章节采用恒压频比的开环控制方法驱动永磁同步电机的转动,首先分析恒压频比的控制原理,然后在Matlab/Simulink中进行永磁同步电机恒压频比开环控制系统的仿真分析,最后将Simulink中的恒压频比控制算法生成代码加载到实际工程中进行工程实现。


一、 恒压频比(V/F)控制原理

在这里插入图片描述

二、永磁同步电机恒压频比开环控制系统Matlab/Simulink仿真分析

永磁同步电机恒压频比控制方法与异步电机恒压频比控制方法相似,也是控制电机输入电压与频率同时变化,从而使气隙磁通保持恒定。该控制方法没有电机电流、电压、位置等物理量的反馈,动态性能较差,在给定目标转速发生变化或者负载突变的情况下容易产生失步和震荡的问题,但该控制方法胜在简单,多适用于对转速精度要求不高的场合。
永磁同步电机恒压频比开环控制系统Matlab/Simulink仿真框图如下:
在这里插入图片描述

2.1.仿真电路分析

2.1.1.恒压频比控制算法

在这里插入图片描述
恒压频比控制算法:永磁同步电机转速与频率的换算关系如下所示:
在这里插入图片描述
首先,将设定的电机目标转速通过上式换算为频率,由于该开环控制系统没有自动限制启动电流的作用,因此加入了一个斜坡函数使频率有一个平缓的变化过程。例如仿真中设定的目标转速为1200r/min,换算为频率的过程如下图所示:
在这里插入图片描述
然后,由恒压频比V/F控制算法特性(下图所示),使输入电压与频率同步变化,从而保持气隙磁通恒定。低频时Us和Eg都较小,定子电阻和漏感压降所占分量比较显著,不能再忽略,此时人为的把定子电压抬高一些,近似的补偿定子阻抗压降,如下图b线所示:
在这里插入图片描述
由上图可知输入电压与频率的关系为(带低频补偿的b线,已知(0,U0)(f1N,UsN)):
在这里插入图片描述
将频率通过上式换算为电压,由电机额定转速计算出额定频率f1N(永磁同步电机转速与频率的关系)。永磁同步电机的恒压频比控制为基频以下调速,系统最高频率不能超过额定频率f1N,例如仿真中所选永磁同步电机的额定转速为12540r/min,计算出额定频率f1N为1463Hz,为系统最高设定频率。
目标转速为1200r/min,将转速换算为频率,再由频率的变化得到输入电压的变化,如下图所示:
在这里插入图片描述
此处作了一个归一化处理,将电压的变化除以电机额定电压,使输出电压的范围落在[0,1]区间内。
在这里插入图片描述
将频率转换为相角,如下图所示:
在这里插入图片描述
此时已获得输入电压的幅值U与相角wt,再通过下式将幅值与相角的电压表示转化为两相坐标系下的电压表示:
在这里插入图片描述
在这里插入图片描述
接着采用反Clark变换,得到最终输入到电机的三相电压:
在这里插入图片描述

2.1.2.输出处理

在这里插入图片描述
对恒压频比控制算法的输出电压做处理,使其落在[0,1]的范围内:
在这里插入图片描述

2.1.3.主电路

在这里插入图片描述
**
在这里插入图片描述
此处为了偷懒,没有再搭建三相逆变电路,采用Average-Value Inverter模块直接生成三相正弦电压送入永磁同步电机进行控制,永磁同步电机采用BR2804-1700电机,参数如下:
在这里插入图片描述
在这里插入图片描述
目标转速1200r/min时,生成的送入电机的三相电压如下图所示:
在这里插入图片描述

2.2.仿真结果分析

2.2.1.设定目标转速为1200r/min

目标转速与实际转速:
在这里插入图片描述
**
**
在这里插入图片描述
电机定子电流:
在这里插入图片描述
**
**
在这里插入图片描述
电机转子位置:
在这里插入图片描述

2.2.1.设定目标转速为变化值

目标转速设定:
在这里插入图片描述
目标转速与实际转速:
在这里插入图片描述
电机定子电流:
在这里插入图片描述
电机转子位置:
在这里插入图片描述
Id和Iq电流值:
在这里插入图片描述
电磁转矩:
在这里插入图片描述

三、永磁同步电机恒压频比开环控制系统代码生成及工程实现

3.1.功能需求

实现永磁同步电机的恒压频比控制,可通过按键调节永磁同步电机的转速。

3.2.硬件设计

在这里插入图片描述
控制板:STM32F302R8
驱动板:X-NUCLEO-IHM07M1
永磁同步电机:BR2804-1700
控制板与驱动板的详细信息请阅读:
直流有刷电机驱动基于STM32F302R8+X-NUCLEO-IHM07M1(一)
在这里插入图片描述

3.3.软件设计

3.3.1.STM32CubeMX底层配置

1、RCC设置外接HSE(Crystal/Ceramic Resonator),时钟设置为72MHz
2、PC10、PC11、PC12设置为推挽输出、无上下拉电阻、高速,初始化状态设为0;PB13设置为推挽输出,下拉电阻、高速,初始化状态为0;PC13设置为输入,无上下拉电阻。
3、设置TIM1时钟源为内部时钟,TIM1_CH1(PA8)设置为PWM输出,TIM1_CH2(PA9)设置为PWM输出,TIM1_CH3(PA10)设置为PWM输出;TIM1预分频值设置为3-1,计数模式选为中央计数模式1,ARR设计为1200-1(1/(1/(72000000/3))*1200=20KHz),内部时钟无分频;使能TIM1更新中断,中断优先级设置为(1,0)
4、USART2设置为异步,115200波特率,8位数据位,无奇偶校验位,1位停止位
5、Project Manager->工程名+IDE配置,Code Generator配置,生成工程代码
在这里插入图片描述
**
**
在这里插入图片描述
**
**
在这里插入图片描述
**
**
在这里插入图片描述

3.3.2.应用层与底层的接口开发

在这里插入图片描述
Speed_Ref用于设定目标转速;Duty[3]用于接收恒压频比控制算法生成的三相电压,该三相电压作为调制波,TIM1计数器(中央计数模式)作为载波,频率20KHz与Simulink仿真设计一致。调制波与载波进行调制生成PWM,控制三相逆变电路的驱动输出,此处采用SPWM控制方法进行控制;Vmin用于设定恒压频比控制算法中的补偿电压值U0。
有关PWM控制技术请阅读:
PWM控制技术+Simulink仿真详解

3.3.3.Matlab/Simulink恒压频比控制算法代码生成

在这里插入图片描述
具体代码生成步骤及设计,请阅读:
直流有刷电机开环调速基于STM32F302R8+X-NUCLEO-IHM07M1(三)
在这里插入图片描述
在这里插入图片描述

3.3.4.应用层与底层的代码集成

具体代码集成步骤,请阅读:
直流有刷电机开环调速基于STM32F302R8+X-NUCLEO-IHM07M1(三)
在主函数中调用:PMSM_VF_initialize()初始化函数。

int main(void)
{/* USER CODE BEGIN 1 */uint8_t count=0;/* USER CODE END 1 *//* MCU Configuration--------------------------------------------------------*//* Reset of all peripherals, Initializes the Flash interface and the Systick. */HAL_Init();/* USER CODE BEGIN Init *//* USER CODE END Init *//* Configure the system clock */SystemClock_Config();/* USER CODE BEGIN SysInit *//* USER CODE END SysInit *//* Initialize all configured peripherals */MX_GPIO_Init();MX_TIM1_Init();MX_USART2_UART_Init();/* USER CODE BEGIN 2 */PMSM_VF_initialize();  //Simulink初始化函数/* USER CODE END 2 *//* Infinite loop *//* USER CODE BEGIN WHILE */while (1){/* USER CODE END WHILE *//* USER CODE BEGIN 3 */if(Key_Scany(KEY_GPIO_Port,KEY_Pin)==1){HAL_GPIO_WritePin(GPIOC, EN1_Pin|EN2_Pin|EN3_Pin, GPIO_PIN_SET);  //使能三相桥臂HAL_TIM_PWM_Start(&htim1,TIM_CHANNEL_1);   //使能三路PWMHAL_TIM_PWM_Start(&htim1,TIM_CHANNEL_2);HAL_TIM_PWM_Start(&htim1,TIM_CHANNEL_3);__HAL_TIM_ENABLE_IT(&htim1,TIM_IT_UPDATE);  //使能TIM1更新中断__HAL_TIM_CLEAR_FLAG(&htim1,TIM_IT_UPDATE);Speed_Ref+=500;  //设定转速,每按一次按键转速增加500if(Speed_Ref>=12000)Speed_Ref=12000;}HAL_Delay(1);count++;if(count%50==0){count=0;HAL_GPIO_TogglePin(LED_GPIO_Port, LED_Pin);  //程序运行指示灯,50ms闪烁周期}}/* USER CODE END 3 */
}

在TIM1更新中断函数中调用:PMSM_VF_step(Speed_Ref, Duty)函数,实现恒压频比控制算法。

/* USER CODE BEGIN 1 */
void HAL_TIM_PeriodElapsedCallback(TIM_HandleTypeDef *htim)
{//Simulink函数 20KHz V/F控制PMSM_VF_step(Speed_Ref, Duty);  //每调用此函数相当于在Simulink中执行了一次模型运算for(int i=0;i<3;i++){Duty[i]=(1-Duty[i])*htim1.Init.Period;}TIM1->CCR1=Duty[0];  //设置占空比,进行SPWM控制TIM1->CCR2=Duty[1];TIM1->CCR3=Duty[2];}
/* USER CODE END 1 */

3.4.仿真验证

编译下载到开发板观察实验现象

恒压频比开环控制系统Simulink仿真及工程实现


高清视频文件太大了,传个模糊的凑活了,哈哈哈哈哈哈哈哈哈哈哈哈哈!!!


总结

本章节采用恒压频比的开环控制方法驱动永磁同步电机的转动,分析了恒压频比的控制原理,然后在Matlab/Simulink中进行了永磁同步电机恒压频比开环控制系统的仿真分析,最后将Simulink中的恒压频比控制算法生成代码加载到实际工程中进行了工程实现,为后续章节的分析奠定基础。

相关内容

热门资讯

埃菲尔铁塔在哪 中国仿建埃菲尔... 2019年4月26日,广西南宁市,街头惊现一座巨型山寨版埃菲尔铁塔,高约20米,白色塔身,造型逼真,...
北京的名胜古迹 北京最著名的景... 北京从元代开始,逐渐走上帝国首都的道路,先是成为大辽朝五大首都之一的南京城,随着金灭辽,金代从海陵王...
苗族的传统节日 贵州苗族节日有... 【岜沙苗族芦笙节】岜沙,苗语叫“分送”,距从江县城7.5公里,是世界上最崇拜树木并以树为神的枪手部落...
长白山自助游攻略 吉林长白山游... 昨天介绍了西坡的景点详细请看链接:一个人的旅行,据说能看到长白山天池全凭运气,您的运气如何?今日介绍...
应用未安装解决办法 平板应用未... ---IT小技术,每天Get一个小技能!一、前言描述苹果IPad2居然不能安装怎么办?与此IPad不...
世界上最漂亮的人 世界上最漂亮... 此前在某网上,选出了全球265万颜值姣好的女性。从这些数量庞大的女性群体中,人们投票选出了心目中最美...
脚上的穴位图 脚面经络图对应的... 人体穴位作用图解大全更清晰直观的标注了各个人体穴位的作用,包括头部穴位图、胸部穴位图、背部穴位图、胳...
猫咪吃了塑料袋怎么办 猫咪误食... 你知道吗?塑料袋放久了会长猫哦!要说猫咪对塑料袋的喜爱程度完完全全可以媲美纸箱家里只要一有塑料袋的响...
demo什么意思 demo版本... 618快到了,各位的小金库大概也在准备开闸放水了吧。没有小金库的,也该向老婆撒娇卖萌服个软了,一切只...
埃菲尔铁塔在哪 中国仿建埃菲尔... 2019年4月26日,广西南宁市,街头惊现一座巨型山寨版埃菲尔铁塔,高约20米,白色塔身,造型逼真,...
北京的名胜古迹 北京最著名的景... 北京从元代开始,逐渐走上帝国首都的道路,先是成为大辽朝五大首都之一的南京城,随着金灭辽,金代从海陵王...
苗族的传统节日 贵州苗族节日有... 【岜沙苗族芦笙节】岜沙,苗语叫“分送”,距从江县城7.5公里,是世界上最崇拜树木并以树为神的枪手部落...
长白山自助游攻略 吉林长白山游... 昨天介绍了西坡的景点详细请看链接:一个人的旅行,据说能看到长白山天池全凭运气,您的运气如何?今日介绍...