背景介绍
永磁同步电机(PMSM)相较传统电机如感应电机来说,具有转换效率高,功率密度大、控制更为简单的特点,越来越受到市场的青睐,被广泛应用于轨道交通、新能源汽车、风电等领域。为此Speedgoat公司开发了基于PMSM的电机控制demo,此demo依托于
matlab和Speedgoat,可以帮助用户以MBD(Model-Based-Design,基于模型开发)的方式快速的开发、部署和实时运行电机控制算法。
特别在高校教学、科研应用中,此demo可以帮助学生或者科研人员快速掌握Simulink Real-
time/Speedgoat 开发流程,并且可以通过模型来深刻理解永磁同步电机开环、闭环控制算法。通过图形化上位机界面实时形象的调整控制算法参数,观测控制结果,加深对电机控制以及实时
仿真系统的认识。
整个系统包含:上位机+Speedgoat实时仿真平台+永磁同步电机demo。上位机可以供用户在Simulink中开发控制算法模型,后期调试和监测上位机界面也在Simulink环境中。Speedgoat实时仿真平台包含两部分:实时计算CPU和IO板卡。实时计算CPU用来实时计算电机控制算法,IO板卡用来处理IO信号如:电机三相电流信号,反馈电机位置的增量式编码器信号、逆变器直流母线电压信号以及逆变器三相PWM信号。永磁同步电机demo包含以下几个部分:永磁同步电机、三相全桥逆变器、增量式编码器以及IO信号调理
电路。
Demo平台包含完善的硬件和软件包(控制算法),用户特别是高校用户,可以直接在此平台上实时运行和测试基于Simulink的永磁电机控制算法。Speedgoat提供开发好的模型供学生和老师在此平台上以开环或者闭环模式来控制电机运转,通过观测控制结果,加深对电机控制算法的理解和认识。同时此平台也支持用户自定义开发和测试自己的电机控制算法。
PMSM demo平台介绍
硬件部分
一个完整的PMSM demo套件包含以下硬件部分:
该demo平台正视图如下:
为了方便用户观测电机的旋转,在电机轴上安装了电机飞轮来显示电机的运转。电机的运转需要功率信号的驱动,Speedgoat实时仿真平台输出的信号为PWM信号没有驱动能力,所以需要在电机和仿真平台之间添加功率放大单元也就是逆变器(TIDRV8312)。除了功率驱动之外,平台中还集成了信号调理电路用来做电压调理和数字隔离、保护等。
上图为demo平台侧视图,永磁电机后端加装增量式编码器来测量电机角度。
此demo平台关键参数如下表所示:
软件部分
一个完整的PMSM demo套件包含以下软件部分:
Speedgoat提供的电机控制算法为永磁电机控制中最为经典的基于转子磁链定向的矢量控制算法。控制算法模型如下图所示:
算法模型可以分割为上图中的三部分:IO接口部分,此部分主要实现的功能是调用IO板卡上的对应IO通道实现PWM信号输出、三相电流信号采集和增量式编码器信号的采集和解析功能。
控制算法部分,此部分为核心的电机控制算法,可以根据用户的需要配置为如下图所示功能。分为五中不同的模式:
Disabled模式:不对电机进行任何控制。
CalibrateEncoder模式:用来标定增量式编码器的初始绝对位置。
OpenLoop模式:即不通过反馈直接通过设定电压来控制电机运转。
Currentcontrol模式:电流内环控制模式,通过设定给定电流来控制电机运转,此为单闭环控制模式。
VelocityControl速度控制模式:通过设定速度给定通过速度外环和电流内环控制电机运转,此为双闭环控制模式。
通过上述不同的控制模式,可以训练和教学不同的学习内容,循序渐进逐步掌握电机控制理论。
上位机界面用来在实时运行过程中的在线调参和信号观测功能,此界面在模型定型之后可以作为最终的调节界面,在此之前推荐用户使用Simulinkreal-time explorer来做上位机调参和观测界面。
Speedgoat实时仿真平台
PMSM demo平台可以配合多种Speedgoat快速原型平台实现永磁电机的闭环控制。根据高校教学和科研应用的特点即:IO数量要求不是非常多,但IO种类要求较多,上海熠速推荐配置的实时仿真平台为Speedgoat全新的Baseline紧凑型快速原型系统
Baseline实时仿真机是Speedgoat针对快速原型验证开发的新型实时系统,运行Simulink Real-Time实时操作系统,搭载Intel高性能处理器,可以高速高精度实时运行控制算法模型。该仿真机的相关参数如下:
除此以外,该设备内部还可以安装不同的IO板卡,集成常见的一些IO功能,如:模拟量IO,数字量IO,各种位置传感器接口,PWM波接口等。同时系统还搭配相应线束和IO接插端子方便外部接线。在PMSM demo 控制应用中,Baseline中安装的IO板卡是IO397
FPGA板卡。IO397 FPGA板卡是Speedgoat的一款可编程FPGA板卡,此板卡即可以通过Simulink中的HDL Coder工具箱自定义FPGA模型开发,也可以通过Speedgoat配置好的位流文件将FPGA的IO功能固化。考虑到高校应用中主要是进行算法验证和理论教学,所以这里IO397板卡的IO功能被固化为PMSM控制所需接口功能,上海熠速会提供相关的位流配置文件。
IO397 FPGA 板卡:
此板卡的相关规格参数为:
IO397在上述硬件资源前提下,可以通过位流文件配置出PWM生成、三相电流和母线电压采集,增量式编码器接口或者其他类型位置传感器接口功能等。通过这些接口功能,实现永磁电机的控制。
除IO397之外,Baseline还支持许多其他类型的IO板卡,根据用户的具体需求可以做相应的配置。
PMSM demo使用
如第一张图所示,将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_IndexLED灯来判别。找到0位置之后,电机停转,LED灯变绿,同时Mode显示控件显示值为1;
将Test type调整为Manual模式。Manual模式下,控制指令由操作者手动给定;
将Control Type值设置为3表示进入电机控制算法闭环模式(转速外环+电流内环);
电机开始旋转,转速为Speed Command指定转速,此为初始转速;
调节Speed Command调节电机转速,观测MotorSpeed RPM 仪表控件观测电机转速;
停转电机时可以通过电机Enable Inverter按钮或者Test type来切换。
小结
基于Speedgoat实时仿真平台的PMSM控制demo,从硬件平台到软件模型都给用户提供了完整的解决方案。用户使用此平台可以快速验证和测试电机控制算法,相比较传统实验平台来说有以下特点:
基于Simulink环境,采用基于模型的开发方式,算法开发速度相较于传统C代码开发方式大大提高;
小型化的PMSM平台相比于大功率的电机驱动平台占地小,更加安全可靠,更适合于学生教学;
控制算法模型可以设置为不同的工作模式,适用于不同阶段的教学内容,由点及面一步步有逻辑有层次的完成教学内容,增强教学效果;
Speedgoat实时仿真平台性能强大,功能通用,不单单可以用来控制电机也可以用来做其他应用下的教学和开发。强大的计算能力也可以保证在Simulink环境下开发不同复杂程度的控制算法实现永磁同步电机的实时控制;
上位机界面友好,用户可以在上位机界面中实时观测模型中任何环节的信号波形和数值,也可以实时调整任何参数;
使用简单,学习成本低。用户只需掌握基本的Simulink的使用方法即可,无需手写代码和硬件开发。
原作者:上海熠速 Speedgoat实时仿真系统