伺服系统永磁同步电机矢量控制调速系统在线转动惯量辨识Matlab仿真
1.模型简介
模型为永磁同步电机伺服控制仿真,采用Matlab R2018a Simulink搭建。
模型内主要包含使用matlab function编写的永磁同步电机模型代码和基于遗忘最小二乘法的转动惯量在线辨识算法代码、速度环、电流环等模块,Matlab funtion编写的代码,与C语言编程较为接近,容易进行实物移植。
模型均采用离散化仿真,其效果更接近实际数字控制系统。
2.算法简介
转动惯量是转速环中一个重要的参数,转速环PI参数自整定需要准确的转动惯量,当惯量不准确时,会降低系统的性能,因此需要转动惯量辨识算法,而在实际应用中,惯量是时变的,需要实时辨识惯量并更新转速环PI参数,以保证系统性能。
本仿真中采用基于遗忘最小二乘的方法来实现转动惯量在线辨识,仿真结果如第3部分所示,能够快速准确的辨识系统的转动惯量。
算法框架基于永磁同步电机矢量控制调速系统,由速度环、电流环双环结构构成,其中,电流环采用PI控制,并具有电流环解耦功能;转速环采用抗积分饱和PI控制。
3.仿真效果
1 负载惯量比为1时,辨识结果如下图1所示。
2 负载惯量比为5时,辨识结果如下图2所示。
3 负载惯量比为5时,辨识结果如下图3所示。
4.
可提供模型内相关算法的参考文献,避免大 量阅读文献浪费时间。
伺服系统永磁同步电机矢量控制调速系统在线转动惯量辨识Matlab仿真
摘要
在永磁同步电机伺服系统中,精准的转动惯量值十分重要,能够影响系统的控制性能。本文提出了一种基于遗忘最小二乘法的在线转动惯量辨识算法,并将其应用于Matlab仿真中。仿真结果表明,该算法能够在较短时间内快速准确的辨识出系统的转动惯量,提高了系统的控制性能。文章将详细介绍永磁同步电机伺服系统的模型建立、在线转动惯量辨识算法及仿真结果。
- 模型介绍
1.1 永磁同步电机模型建立
永磁同步电机是一种典型的矢量控制调速系统。模型的建立是基于永磁同步电机的物理特性建立的。本文使用Matlab function编写了永磁同步电机模型代码,与C语言编程较为接近,容易进行实物移植。模型内还包含速度环、电流环等模块,实现了永磁同步电机的控制。
1.2 离散化仿真
为更接近实际数字控制系统,本文采用离散化仿真。离散化仿真能够对系统进行更精确的模拟,提高仿真结果的准确性。采用此方法进行仿真,可以更直观地观察到系统的响应情况,并可以更好地进行算法验证。
- 算法介绍
2.1 转动惯量在线辨识算法
在永磁同步电机伺服系统中,转动惯量是转速环中一个重要的参数,转速环PI参数自整定需要准确的转动惯量,当惯量不准确时,会降低系统的性能。因此需要转动惯量辨识算法。在实际应用中,惯量是时变的,需要实时辨识惯量并更新转速环PI参数,以保证系统性能。
本文采用基于遗忘最小二乘的方法来实现转动惯量在线辨识。遗忘最小二乘是一种在线学习方法,能够不断地更新参数,快速适应系统动态变化。该方法可以大大降低计算量,提高算法的实时性。
2.2 算法框架
永磁同步电机矢量控制调速系统由速度环、电流环双环结构构成,其中,电流环采用PI控制,并具有电流环解耦功能;转速环采用抗积分饱和PI控制。在线转动惯量辨识算法是在此基础上实现的。
算法框架如下:
Step1: 初始化
设置遗忘系数λ和滑动窗口大小k,初始化转动惯量值J,以及存储历史数据的矩阵Z和Y。
Step2: 辨识
接收输入信号u,输出信号y,计算误差e = y - J*u,更新矩阵Z和Y。
如果当前数据量小于等于k,则进行最小二乘辨识,得到新的转动惯量J_new。
如果当前数据量大于k,则使用遗忘最小二乘法进行辨识,得到新的转动惯量J_new。
Step3: 更新
根据新的转动惯量J_new更新转速环PI参数。
- 仿真结果
本文设计了三组仿真实验,分别对应负载惯量比为1、5、10的情况。实验结果如下:
当负载惯量比为1时,转动惯量辨识结果如图1所示。可以看出,辨识结果非常准确。
当负载惯量比为5时,转动惯量辨识结果如图2所示。同样可以看出,辨识结果非常准确。
当负载惯量比为10时,转动惯量辨识结果如图3所示。虽然负载惯量比更大,但是辨识结果依然非常准确。
相关代码,程序地址:http://lanzouw.top/701119957732.html