【永磁同步电机(PMSM)】 5. PMSM 的仿真模型

【永磁同步电机(PMSM)】 5. PMSM 的仿真模型

    • 1. 基于 Simulink 的仿真模型
      • 1.1 PMSM 的数学模型
      • 1.2 Simulink 仿真模型
      • 1.3 模块封装(mask)
      • 1.4 三相PMSM矢量控制仿真模型
    • 2. Simscape 的 PMSM 模块
      • 2.1 PMSM 模块的配置
      • 2.2 PMSM 模块的参数设置


本节讨论 在Matlab/Simulink 环境下,搭建 PMSM 仿真模型。


1. 基于 Simulink 的仿真模型

在Matlab/Simulink 环境下,搭建 PMSM 仿真模型。

1.1 PMSM 的数学模型

(1)电压方程:

{ u d = R s i d − ω e L q i q + L d d i d d t u q = R s i q + ω e L d i d + L q d i q d t + ω e ψ f \begin{cases} \begin{aligned} u_d &= R_s i_d - \omega _e L_q i_q + L_d \frac{di_d}{dt}\\ u_q &= R_s i_q + \omega _e L_d i_d + L_q \frac{di_q}{dt} + \omega _e \psi _f \\ \end{aligned} \end{cases} uduq=RsidωeLqiq+Lddtdid=Rsiq+ωeLdid+Lqdtdiq+ωeψf

式中:ud、uq为d轴、q轴电压,id、iq为d轴、q轴电流,ψd、ψq为d轴、q轴磁链,Ld、Lq为d轴、q轴电感, ω e \omega_e ωe为转子旋转电角速度, ψ f \psi _f ψf 为永磁体磁链。

于是:
{ d i d d t = 1 L d u d − 1 L d R s i d + L q L d ω e i q d i q d t = 1 L q u q − 1 L q R s i q − L d L q ω e i d − 1 L q ω e ψ f \begin{cases} \begin{aligned} \frac{di_d}{dt} &= \frac{1}{L_d} u_d - \frac{1}{L_d} R_s i_d + \frac{L_q}{L_d} \omega_e i_q\\ \frac{di_q}{dt} &= \frac{1}{L_q} u_q - \frac{1}{L_q} R_s i_q - \frac{L_d}{L_q} \omega_e i_d - \frac{1}{L_q} \omega_e \psi _f \end{aligned} \end{cases} dtdiddtdiq=Ld1udLd1Rsid+LdLqωeiq=Lq1uqLq1RsiqLqLdωeidLq1ωeψf

(2)转矩方程
电磁转矩 T e T_e Te包括磁体转矩 T m T_m Tm 和 磁阻转矩 T r T_r Tr

T e = 3 2 p n i q [ ψ f + ( L d − L q ) i d ] T_e = \frac{3}{2} p_n i_q [\psi_f +(L_d - L_q)i_d] Te=23pniq[ψf+(LdLq)id]

式中: p n p_n pn 为 电机的极对数。

对于表贴式三相PMSM 有 Lq=Ld,磁阻转矩 T r = 0 T_r=0 Tr=0,于是简化为: T e = 3 2 p n ψ f i q T_e= \frac{3}{2} p_n \psi_f i_q Te=23pnψfiq

(3)运动方程

T e − T L − B ω m = J d ω m d t T_e - T_L - B \omega _m = J \frac{d \omega _m}{dt} TeTLBωm=Jdtdωm

于是:

ω m = 1 s ( T e − T L − B ω m ) / J \omega _m = \frac{1}{s}(T_e - T_L - B \omega _m)/J ωm=s1TeTLBωm)/J

式中, ω m \omega _m ωm为电机的机械角速度(rad/s),J 为转动惯量,B 为阻尼系数,TL 为负载转矩。

{ ω m = ω e / p n N r = 30 ω m / π θ e = ∫ 0 t ω e d t \begin{cases} \begin{aligned} \omega _m &= \omega _e / p_n\\ N_r &= 30 \omega _m / \pi\\ \theta _e &= \int_{0}^{t} \omega _e dt \end{aligned} \end{cases} ωmNrθe=ωe/pn=30ωm/π=0tωedt

式中, ω m \omega _m ωm为电机的机械角速度, ω e \omega _e ωe为电角速度, N r N_r Nr 为电机的转速(r/min), θ e \theta _e θe 为电机转子的位置角。


1.2 Simulink 仿真模型

(1)计算电流 i d , i q i_d, i_q id,iq

在这里插入图片描述

(2)计算转矩 T e T_e Te

在这里插入图片描述

(3)计算角速度 ω m \omega_m ωm

在这里插入图片描述


1.3 模块封装(mask)

封装(Mask)就是将SIMULINK的子系统“包装”成一个模块,并隐藏全部的内部结构。访问该模块时只出现了一个参数设置对话框,模块中所有需要设置的参数都可通过该对话框来统一设置。

将建立的 Simulink 模型封装为模块,设置参数 Ld、Lq、Rs、Pn、flux、B 和 J,以便于调整模型参数。

在这里插入图片描述

1、选中子系统,右键“Mask”-“Create Mask”,弹出子系统封装窗口,分为图标、参数、初始化、说明等部分

2、添加参数名称、对应的提示,修改初始值等属性。如下图所示,添加Ld、Lq、Rs、Pn、flux、B 和 J 等参数。需要注意的是,参数名称需要与上面搭建的基础模型中参数名称一致。

在这里插入图片描述

最终的PI模块封装结果、对话框设置界面如下图,修改Ld、Lq、Rs、Pn、flux、B 和 J 等参数即可实现模块内部参数的调整。


1.4 三相PMSM矢量控制仿真模型

三相PMSM矢量控制仿真模型如下图所示。

设置电机参数为:d轴电感 Ld=8.5mH、q轴电感 Lq=8.5mH、定子电阻 R s = 2.875 Ω Rs=2.875 \Omega Rs=2.875Ω、极对数 Pn=4、永磁体磁链 ψ f = 0.175 W b \psi _f=0.175Wb ψf=0.175Wb、阻尼系数 B = 0.008 N . m . s B=0.008 N.m.s B=0.008N.m.s 和 转动惯量 J = 0.001 k g . m 2 J=0.001 kg.m^2 J=0.001kg.m2

在这里插入图片描述

仿真结果如下图所示。

在这里插入图片描述


2. Simscape 的 PMSM 模块

Simulink 自带的 Simscape 库提供了三相 PMSM 模块(Simscape / Electrical / Electromechanical / Permanent Magnet),可以直接把 PMSM 模块添加到 仿真模型中。

在这里插入图片描述
三相PMSM模块的设置包 Configuration(配置)和 Parameters(参数设置)。


2.1 PMSM 模块的配置

Configuration(配置)选项包括以下内容:

(1)Number of phase(相数)
Number of phase(相数)选项设置电机的相数,里面包含“3”和“5”两个选项。选择“3”时表示为三相PMSM,当选择“5”时表示五相PMSM。
当Back EMF waveform被设置成Trapezoidal方式时,或者Rotor type被设置成Salient-pole方式时,此处将不能进行功能选择。

(2)Back EMF waveform(反电动势波形)
Back EMF waveform(反电动势波形)包含Sinusoidal和Trapezoidal两个选项。
选择Sinusoidal表示PMSM为正弦波激励,选择Trapezoidal表示PMSM为梯形波激励。无论选择哪种模式,PMSM的Number of phase都不能设置成5。

(3)Rotor type(转子类型)
Rotor type(转子类型)包含Round和Salient-pole两个选项。
选择Round表示电机转子为隐极型,选择Salient-pole表示电机转子为凸极型。

(4)Mechanical input(机械输入方式)
Mechanical input(机械输入方式)包含Troque Tm、Speed和Mechanical rotational三个选项。
常用的是:Troque Tm表示负载转矩,Speed表示机械角速度。

(5)Preset model(电机类型)
Preset model(电机类型)包含No和各种功率等级的电机选项。
当选择No时,可以对电机的参数进行修改;当选择其他类型的电机时,电机参数已经确定,将不能对电机的参数进行设置。


2.2 PMSM 模块的参数设置

Parameters(参数配置)包括以下内容:

(1)Stator phase resistance Rs(ohm)(定子电阻):设置电机定子电阻的大小,单位为Ω。

(2)Inductances[Ld(H) Lq(H)](定子电感):设置电机定子电感的大小,单位为H。

(3)Machine constant(电机常量值):当Specify选择Flux linkage established by magnets(V.s)时,可以对Flux linkage(永磁体磁链)进行设置大小,单位为Wb;当Specify选择Voltage Constant时,可以对Voltage Constant进行设置大小,单位为V/krpm;当Specify选择Torque Constant时,可以对Torque Constant进行设置大小,单位为N.m。

(4)Inertia,viscous damping,pole pairs,static friction[J(kg.m^2)]:可以分别设置电机的转动惯量。阻尼系数和极对数,viscous damping通常设置为0。

(5)Initial conditions[wm(rad/s) thetam(deg) is,ib(A)](电机的初始状态):可以设置包括机械角速度、转子位置、相电流ia和ib在内的数值大小。

设置PMSM 模块参数为:d轴电感 Ld=8.5mH、q轴电感 Lq=8.5mH、定子电阻 R s = 2.875 Ω Rs=2.875 \Omega Rs=2.875Ω、极对数 Pn=4、磁链 ψ f = 0.175 W b \psi _f=0.175Wb ψf=0.175Wb、阻尼系数 B = 0.008 N . m . s B=0.008 N.m.s B=0.008N.m.s 和 转动惯量 J = 0.001 k g . m 2 J=0.001 kg.m^2 J=0.001kg.m2

在这里插入图片描述


参考文献:袁雷等,现代永磁同步电机控制原理及MATLAB仿真,北京航空航天大学出版社,2016

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

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

相关文章

系统架构设计师:软件架构的演化和维护

简简单单 Online zuozuo: 简简单单 Online zuozuo 简简单单 Online zuozuo 简简单单 Online zuozuo 简简单单 Online zuozuo :本心、输入输出、结果 简简单单 Online zuozuo : 文章目录 系统架构设计师:软件架构的演化和维护前言软件架构演化的重要性面向对象的软件架构演…

数据结构与算法学习day22-回溯算法-分割回文串、复原IP地址、子集

一、分割回文串 1.题目 131. 分割回文串 - 力扣(LeetCode) 2.思路 分割回文串可以抽象为一棵树形结构。 递归用来纵向遍历,for循环用来横向遍历,切割线(就是图中的红线)切割到字符串的结尾位置&#xf…

数据库DDL语句

目录 1. 引言 2. DDL基础知识 3. 常用DDL语句 3.1 CREATE语句 示例:创建表 3.2 ALTER语句 示例:添加列 示例:修改字段类型 3.3 DROP语句 示例:删除表 3.4 TRUNCATE语句 示例:清空表 4. DDL与DML的区别 区…

WIFI路由器的套杆天线简谈

❝本次推文简单介绍下WIFI路由器的套杆天线。 路由器天线 路由器在这个万物互联的时代,想必大家对其都不陌生。随着科技的发展,常用的路由器上的天线也越来越多,那么问题来了:天线越多,信号越好吗?路由器…

文件系统设计 - 开发文件系统 Store (上篇)

本节开始,我们将从最核心基础的文件系统进行设计实现,构建文件系统Store 一个基础的响应式Store类设计文件系统类接口小结 一个基础的响应式Store类 从Vue3 开始,Vue响应式借助Proxy重构后,整个响应式系统的应用变得非常的灵活&a…

vue2:树形控件el-tree中加载两种不同结构的数据

需求 需要在树形控件中逐级显示公司、部门以及不同部门下的项目信息。其中,公司及部门信息的结构是一致的,但是项目是另一种结构(类)。所以,树结构中需要用到两种不同结构的数据。 El-tree 主要属性 下面是一个el-…

《ChatGPT:强大的人工智能聊天机器人》

《ChatGPT:强大的人工智能聊天机器人》 一、引言 在当今科技飞速发展的时代,人工智能已经成为了各个领域的热门话题。而 ChatGPT,作为一款强大的人工智能聊天机器人,自推出以来就引起了广泛的关注和热议。它不仅能够进行自然流畅的…

浅谈Spring Cloud:认识微服务

SpringCloud就是分布式微服务架构的一站式解决方案,是微服务架构落地的多种技术的集合。 目录 微服务远程调用 Eureka注册中心 搭建Eureka Server 注册组件 服务拉取 当各种各样的服务越来越多,拆分的也越来越细,此时就会出现一个服务集…

基于mockito做单元测试

1.简介 配合断言使用(杜绝System.out)可重复执行不依赖环境不会对数据产生影响Spring的上下文环境不是必备的一般都配合mock类框架对数据库进行隔离 mock类使用场景: 要进行测试的方法存在外部依赖(DB,Redis,第三方接口),为了专注于对该方法的逻辑进行测试&#…

计算机毕业设计 社区医疗服务系统的设计与实现 Java实战项目 附源码+文档+视频讲解

博主介绍:✌从事软件开发10年之余,专注于Java技术领域、Python人工智能及数据挖掘、小程序项目开发和Android项目开发等。CSDN、掘金、华为云、InfoQ、阿里云等平台优质作者✌ 🍅文末获取源码联系🍅 👇🏻 精…

国产游戏技术能否引领全球【终稿】

国产游戏技术能否引领全球 摘要:近年来,国产游戏行业蓬勃发展,技术水平不断提升,多款作品在国际市场上崭露头角。从画面渲染到物理引擎,从AI技术到服务器架构,中国游戏开发者在各个领域都取得了显著进步。…

MySQL高阶1919-兴趣相同的朋友

题目 请写一段SQL查询获取到兴趣相同的朋友。用户 x 和 用户 y 是兴趣相同的朋友,需满足下述条件: 用户 x 和 y 是朋友,并且用户 x and y 在同一天内听过相同的歌曲,且数量大于等于三首. 结果表 无需排序 。注意:返…

常见排序(C语言版)

1.排序的概念及其应用 1.1排序的概念 排序:​ 在计算机科学与数学中,一个排序算法(英语:Sorting algorithm)是一种能将一串资料依照特定排序方式排列的算法。 稳定性:假定在待排序的记录序列中&#xff…

聚观早报 | 小米三折叠手机专利曝光;李斌谈合肥投资蔚来

聚观早报每日整理最值得关注的行业重点事件,帮助大家及时了解最新行业动态,每日读报,就读聚观365资讯简报。 整理丨Cutie 9月20日消息 小米三折叠手机专利曝光 李斌谈合肥投资蔚来 索尼PS5 Pro包装亮相 新一代Spectacles AR眼镜发布 通…

三十种编程语言庆祝【国庆节】!!!

30种编程语言来打印“国庆节快乐”: 分别为: PythonJavaScriptJavaCCC#PHPRubySwiftGoRustKotlinScalaPerlRLuaDartTypeScriptBash (Shell)F#JuliaElixirHaskellGroovyVisual Basic .NETMATLABPowerShellSQLVBA (Visual Basic for Applications)COBOL …

《AI系统:原理与架构》于华为HC大会2024正式发布

2024年9月21日,《AI系统:原理与架构》新书发布会在上海世博馆华为HC大会顺利举办。本书由华为昇腾技术专家、B站AI科普博主ZOMI酱和哈工大软件学院副院长苏统华教授联合编写,是领域内AI系统方面填补空白的重磅之作。 发布会上,《A…

Spring:项目中的统一异常处理和自定义异常

介绍异常的处理方式。在项目中,都会进行自定义异常,并且都是需要配合统一结果返回进行使用。 1.背景引入 (1)背景介绍 为什么要处理异常?如果不处理项目中的异常信息,前端访问我们后端就是显示访问失败的…

【监控】【Nginx】使用 Zabbix 监控 Nginx,并使用 InfluxDB 存储数据的详细指南

目录 1. 安装 Zabbix Server步骤 1:安装 Zabbix 服务器步骤 2:安装 InfluxDB步骤 3:启动 InfluxDB 服务步骤 4:创建 InfluxDB 数据库步骤 5:配置 Zabbix Server步骤 6:启动 Zabbix 服务 2. 安装 Zabbix Age…

JavaScript发送邮件:实现前端触发的教程?

JavaScript发送邮件的方式?怎么使用JavaScript发信? 无论是用户反馈、联系表单还是自动通知,前端触发的邮件发送功能都能极大地提升用户体验。AokSend将详细介绍如何通过JavaScript发送邮件,实现前端触发的邮件发送功能。 JavaS…

Centos7安装chrome的问题

chrome是129版本的,很新。 启动chrome的时候报错:undefined symbol: ippvalidateattributes 这个没有报libxxx.so not found。 大概就是依赖的so库版本太低了,查了下这个函数在cups 重新拉了最新的代码并编译 ./configure --with-tlsno…