-
实时仿真用户案例
Crank-嵌入式GUI设计和开发用户案例
021-64886750
-
实时目标机
Simulink模型库
Demo套件
info@yisuworld.com
Speedgoat PMSM 电机控制demo
背景介绍
永磁同步电机(PMSM)相较一般的传统电机如感应电机来说,具有转换效率更高,功率密度更大并且由于其特殊的结构,控制起来也更为简单的特点越来越受到市场的青睐,被广泛应用于轨道交通、新能源汽车、风电等领域。为此Speedgoat公司开发了基于PMSM的电机控制demo,此demo依托于Mathworks和Speedgoat,可以帮助用户以MBD(Model-Based-Design)基于模型的开发方式快速的开发、部署和实时运行电机控制算法。
特别在高校教学、科研应用中,此demo可以帮助学生或者相关科研人员很快的掌握Mathworks Simulink Real-Time开发流程,并且可以通过模型来深刻理解永磁同步电机开环、闭环控制算法。通过图形化上位机界面实时形象的调整控制算法参数,观测控制结果,加深对电机控制以及实时仿真系统的认识。
完整的PMSM Demo控制平台结构如下图1所示:
图1 PMSM电机控制demo
整个系统包含:上位机+Speedgoat实时仿真平台+永磁同步电机demo。上位机可以供用户在Simulink中开发控制算法模型,后期的调试和监测上位机界面也在Simulink环境中。Speedgoat实时仿真平台包含两部分:实时计算CPU和IO板卡。实时计算CPU用来实时计算电机控制算法,IO板卡用来处理IO信号如:电机三相电流信号,反馈电机位置的增量式编码器信号、逆变器直流母线电压信号以及逆变器三相PWM信号。永磁同步电机demo包含以下几个部分:永磁同步电机(无刷直流电机)、三相全桥逆变器、增量式编码器以及IO信号调理电路。
demo平台包含完善的硬件和软件包(控制算法),用户特别是高校用户,可以直接在此平台上实时运行和测试基于Simulink的永磁电机控制算法。Speedgoat提供开发好的模型供学生和老师在此平台上以开环或者闭环模式来控制电机运转,通过观测不同的控制结构,加深对电机控制算法的理解和认识。同时此平台也支持用户自定义开发和测试自己的电机控制算法。
PMSM demo平台介绍
PMSM demo硬件
一个完整的PMSM demo套件包含以下硬件部分:
硬件组件 |
描述 |
PMSM demo安装套件 |
包含: 基于TI DRV8312的中压电机驱动板 增量式编码器 永磁电机(无刷直流电机) 飞轮转盘 AC/DC适配器(供电) |
2根M12 17-Pin线束 |
用来连接PMSM demo与Speedgoat IO397 IO模块 |
AC供电线 |
用来给PMSM demo供电 |
图2 PMSM demo
下图3为demo平台的正视图:
图3 demo平台正视图
为了方便用户观测电机的旋转,在电机轴上安装了一个电机飞轮来显示电机的运转。电机的运转需要功率信号的驱动,Speedgoat实时仿真平台输出的信号为PWM信号没有驱动能力,所以需要在电机和仿真平台之间添加功率放大单元也就是逆变器(TI DRV8312)。除了功率驱动之外,平台中还集成了信号调理电路用来做电压调理和数字隔离、保护等。
图4 demo平台侧视图
如上图4所示为demo平台测试图,永磁电机后端加装增量式编码器来测量电机角度。此demo平台关键参数如下表所示:
参数 |
数值 |
|
增量式编码器 |
线数 |
2000 |
倍频系数 |
4 |
|
三相逆变器 |
直流母线 |
24V |
母线最大电流 |
2A |
|
永磁电机 |
额定电压 |
24V |
额定转速 |
4000RPM |
|
最大电流 |
11A |
|
极对数 |
4 |
|
定子电阻 |
0.85565Ω |
|
直轴漏感 |
0.001215H |
|
交轴漏感 |
0.001215H |
|
转子磁链 |
0.0065Wb |
|
转动惯量 |
3.878e-6 Kg*m^2 |
PMSM demo软件
一个完整的PMSM demo套件包含以下软件部分:
软件组件 |
描述 |
Speedgoat IO驱动接口库 |
Speedgoat IO板卡通道调用接口模块库 |
PMSM demo控制算法模型 |
包含: 基于Simulink的电机控制算法模型 IO397 FPGA板卡位流文件 Datasheets 说明文档 |
用户自备软件 |
Matlab/Simulink Matlab 2017a或以上 Simulink 2017a或以上 Matlab coder 2017a或以上 Simulink coder 2017a或以上 Simulink Real-Time 2017a或以上 |
矢量控制算法
Speedgoat提供的电机控制算法为永磁电机控制中最为经典的基于转子磁链定向的矢量控制算法。控制算法模型如下图所示:
图5 控制算法模型
如上图所示,模型可以分割为上图中的三部分:IO接口部分,此部分主要实现的功能是通过配置IO接口驱动来调用IO板卡上的对应IO通道实现PWM信号输出、三相电流信号采集和增量式编码器信号的采集和解析功能。
控制算法部分,此部分为核心的电机控制算法部分,可以根据用户的需要配置为如下图6中所示功能。分为五中不同的模式:Disbaled模式,不对电机进行任何控制。Calibrate Encoder模式用来标定增量式编码器的初始绝对位置。Open Loop模式即不通过反馈直接通过设定电压来控制电机运转。Current control模式电流内环控制模式,通过设定给定电流来控制电机运转,此为单闭环控制模式。Velocity Control速度控制模式,通过设定速度给定通过速度外环和电流内环控制电机运转,此为双闭环控制模式。通过上述不同的控制模式,可以训练和教学不同的学习内容,循序渐进逐步掌握电机控制理论。
上位机界面用来在实时运行过程中的在线调参和信号观测功能,此界面在模型定型之后可以作为最终的调节界面,在此之前推荐用户使用Simulink real-time explorer来做上位机调参和观测界面。
图6 电机控制算法结构框图
Speedgoat实时仿真平台
PMSM demo平台可以配合多种Speedgoat快速原型平台实现永磁电机的闭环控制。根据高校教学和科研应用的特点即:IO数量要求不是非常多,但IO种类要求较多,上海熠速推荐配置的实时仿真平台为Speedgoat全新的Baseline紧凑型快速原型系统:
图7 Baseline实时仿真机
Baseline实时仿真机是Speedgoat针对快速原型验证开发的新型实时系统,运行MathWorks Simulink Real-Time实时操作系统,搭载Intel高性能处理器,可以高速高精度实时运行控制算法模型。
配置 |
规格 |
CPU |
Intel Celeron 2 GHz 4 cores |
实时操作系统 |
Simulink Real-Time™ |
MATLAB版本支持 |
R2016A及以后版本 |
内存 |
4GB DDR3 RAM |
存储空间 |
32GB SSD |
视频接口 |
1 x DisplayPort. 支持分辨率: 1280x1024 |
USB接口(摄像头或键盘) |
1x USB 3.0 和2x USB 2.0 前面板 |
上位机接口Ethernet |
1个 |
千兆网口 |
2个,用于real-time UDP, EtherCAT Master, XCP Master, TCP/IP, and PTP 1588 |
串行接口 |
2 x RS232(最高支持120 kb/s)前面板 |
IO板卡安装插槽 |
4 x mPCIe |
机箱外壳 |
铝合金外壳,散热片和先进的被动散热 |
供电 |
9-36V,包含交流适配电源 |
运行温度 |
0-60 degC |
湿度范围 |
10-90%, 无冷凝 |
质量 |
约2.56 kg |
体积 |
250×190×190mm |
除此以外,该设备内部还可以安装不同的IO板卡,集成常见的一些IO功能,如:模拟量IO,数字量IO,各种位置传感器接口,PWM波接口等。同时系统还搭配相应线束和IO接插端子方便外部接线。在PMSM demo控制应用中,Baseline中安装的IO板卡是IO397 FPGA 板卡。IO397 FPGA板卡是Speedgoat的一款高性能可编程FPGA板卡,此板卡即可以通过Simulink的FPGA开发工具包HDL Coder来进行自定义的FPGA模型开发,也可以通过Speedgoat配置好的位流文件将FPGA的IO功能固化。考虑到高校应用中主要是进行算法的验证和理论的教学,所以这里的IO397板卡的IO功能被固化为PMSM控制所需接口功能,上海熠速会提供相关的位流配置文件。
IO397 FPGA 板卡:
图8 IO397 FPGA 板卡
此板卡的相关规格参数为:
参数 |
规格 |
板卡形式 |
PCIe Mini |
接插件 |
数字通道:17 针 M12公头 模拟通道:17针 M12母头 |
运行温度 |
-40 to 85°C |
湿度 |
5 to 95%无冷凝 |
模拟输入通道 |
4路 16bit ADC 200ksps,可同步采样 |
模拟输出通道 |
4路 16bit DAC,软件可配置范围 |
数字通道 |
14路ESD保护的数字通道,可配置为输入或输出 |
IO397在上述硬件资源的前提下,可以通过位流文件配置出PWM采集、三相电流和母线电压采集,增量式编码器接口或者其他类型位置传感器接口功能等。通过这些接口功能,实现永磁电机的控制。
除了IO397之外,Baseline还支持许多其他类型的IO板卡,根据用户的具体需求可以做相应的配置。
基于上述IO通道类型和系统配置,该平台还可以实现的教学和科研内容包括:
- 对视频流数据的处理算法验证;
- 对其他各类控制算法的实时验证;
- 串口通讯的教学与具体实现;
- 熟悉FPGA建模、编程,理解FPGA与CPU的区别于联系,加深对数字电路知识的理解;
- 以太网通讯的教学与实现
- 其他前沿性研究的实时验证
使用
如图1所示,将Baseline与PMSM demo连接好之后上电待机。在Simulink中打开PMSM电机控制模型focVelocityEncoderTestBench.slx,如果是首次使用,先将模型进行编译并下载。下载之后有两种上位机操作方式:External mode和Simulink real-time explorer,推荐使用Simulink real-time explorer,demo软件部分包含一个已设计好的panel,通过此panel可以非常形象快速的实现电机控制。同时,用户也可以对此panel进行自定义设计。下面以Simulink real-time explorer为例:
- 在MATLAB的command window中输入‘slrtexplr’或者直接在Simulink模型中通过Tools: Simulink Real-Time打开Simulink Real-Time explorer;
- 在Simulink Real-Time Explorer中连接实时目标机,加载应用。应用加载完成之后加载调试Panel: PMSM_demo_InstrumentPanel.slrtip,运行panel;
- 运行程序,程序运行之后算法进入编码器初始化位置校准模式,运行程序后点击会短暂旋转寻找0位置,可以通过Panel中的0_Position_Index LED灯来判别。找到0位置之后,电机停转,LED灯变绿,同时Mode显示控件显示值为1;
- 将Test type调整为Manual模式,Manual模式下,控制指令由操作者手动给定;
- 将Control Type值设置为3表示进入电机控制算法闭环模式(转速外环+电流内环);
- 电机开始旋转,转速为Speed Command指定转速,此为初始转速;
- 调节Speed Command调节电机转速,观测Motor Speed RPM 仪表控件观测电机转速;
- 停转电机时可以通过电机Enable Inverter按钮或者Test tye来切换。
对应的Panel控件如下图所示:
图9 控制Panel
小结
基于Speedgoat实时仿真平台的PMSM电机控制demo,从硬件平台到软件模型都给用户提供了完整的解决方案。用户使用此平台可以快速验证和测试电机控制算法,相比较传统实验平台来说有以下特点:
- 基于Simulink 环境,采用基于模型的开发方式,算法开发速度相较于传统C代码开发方式大大提高;
- 小型化的PMSM平台相比于大功率的电机驱动平台占地小,更加安全可靠,更适合于学生教学;
- 控制算法模型可以设置为不同的工作模式,适用于不同阶段的教学内容,由点及面一步步有逻辑有层次的完成教学内容,增强教学效果;
- Speedgoat实时仿真平台性能强大,功能通用,不单单可以用来控制电机也可以用来做其他应用下的教学和开发。强大的计算能力也可以保证在Simulink环境下开发不同复杂程度的控制算法实现永磁同步电机的实时控制;
- 上位机界面友好,用户可以在上位机界面中实时观测模型中任何环节的信号波形和数值,也可以实时调整任何参数;
- 使用简单,学习成本低。用户只需掌握基本的Simulink的使用方法即可,无需手写代码和硬件开发。
-
电力电子(含控制器和被控对象模型)
凭借多年在电力电子行业累积的经验和能力,我们为用户提供控制器模型和被控对象模型,包括标准库以及定制化服务。¥ 0.00立即购买
-
轨道交通(含控制器和被控对象模型)
凭借多年在轨道交通行业累积的经验和能力,我们为用户提供控制器模型和被控对象模型,包括标准库以及定制化服务。¥ 0.00立即购买
-
信号调理系统
在HIL测试中,硬件在环设备起到模拟被测ECU被控对象的作用。需要根据ECU的PIN脚信息,模拟相应信号。这类设备的核心为实时系统,实时系统会提供相应IO通道,处理信号的产生和采集。但这类IO通道一般为标准规格,比如数字通道为TTL规格,模拟通道只是测电压等;这与被测ECU所需的信号规格有较大差异,故需要一套信号调理系统,负责两者之间信号的转接。¥ 0.00立即购买
-
电机控制Demo套件
使用Simulink和Speedgoat转动无刷直流电机。¥ 0.00立即购买
实时目标机
实时仿真应用场景
学习与支持
关于我们
关注Speedgoat微信公众号
实时仿真解决方案
I/O接口模块
通讯协议模块
FPGA技术
被控部件仿真
Simulink模型库
Demo套件
Speedgoat实时仿真与测试
Crank嵌入式GUI设计与开发