当前位置:网站首页>逆变器simulink模型——处理器在环测试(PIL)
逆变器simulink模型——处理器在环测试(PIL)
2022-07-02 06:34:00 【Quikk】
文章目录
逆变器simulink模型——处理器在环测试(PIL)
1 处理器在环测试基本思想
1.1 仿真模型基本介绍
正常电力电子系统仿真过程中,结构主要分为主电路+控制电路;而控制电路一般分为采集电路与控制核心。
以逆变器控制系统为例:
直流侧电压源,三相逆变单元,滤波器,负载属于主电路部分;
将220V电压等级转换为控制单元ADC可以采集的0-3.3V低压的调理电路称为采集电路;
将0-3.3V脉冲PWM信号转换为IGBT驱动信号(0-24V)的驱动电路;
控制核心一般由片上系统构成,如STM32、2833X等基础运算核心;
下面再介绍一下仿真基本原理,不论是控制电路还是主电路在simulink中都是通过数值的方式进行数值计算得到的。而实际系统中:主电路为真实电路,控制电路一般为10k,50k等固定采用频率的控制单元。为了实现该情况的仿真,需要将主电路的计算步长尽量降低,以达到仿真连续系统的目的,而控制系统必须要保持正常的采样频率。举个粒子:若取Slover步长为10e-7;则外部主电路以10e-7的步长进行计算一次;而控制单元为10e-4(10k);则需要1000个外部步长对内部单元计算一次。
1.2 处理器在环测试概念
实际仿真过程中,大量控制器与外部主电路都在PC端的CPU上进行运算。但实际情况是微处理器主频往往远低于电脑CPU,其输出结果可能与真实情况有差异。而搭建实际主电路往往需要大量时间,因此可以构建**处理器在环(PIL)**的测试方案对底层MCU运算情况进行分析。
处理器在环测试,是将主电路运算在CPU上执行,控制电路运算将在底层MCU上执行。基本流程为:
PIL启动后,MCU接收由PC传送来的各类数据;
MCU根据数据进行运算得到PWM输出信号并通过串口传送给PC端;
PC端接收到PWM信号后,将其作用于住主电路,主电路状态发生改变,继续重复第(1)步
下面将对此方案具体实现进行实际介绍;
2 处理器在环测试流程
2.1 测试模型介绍
测试模型使用离网逆变器控制模型;模型链接:模型链接
正常离网状态下输出电压波形如图所示,0.1s合上负荷供电开关;0.8s进行功率阶跃;
2.2 基本结构介绍
PIL系统构成需要保障系统连接:1)底层硬件下载口与matlab保持连接 2)底层硬件串口与matlab保持连接;构建下图所示硬件平台
2.3 模型设置
模型设置之前需要配置好MCU代码生成环境,具体步骤见: 环境搭建
1)创建处理器在环模型
注:一定要确认COM9,波特率,等信息,保障通信畅通,防止在环测试失败。
2.4 在环测试模块生成
将控制模块封装成子系统,后生成PIL模块;这时需要将 slover步长 和 Powergui的步长也设置为10e-4;并设置初始通信状态,在命令行中输入以下代码并执行,一定要注意串口信息与设备管理内的信息对应上;
setpref('MathWorks_Embedded_IDE_Link_PIL_Preferences','COMPort','COM9');
setpref('MathWorks_Embedded_IDE_Link_PIL_Preferences','BaudRate',115200);
setpref('MathWorks_Embedded_IDE_Link_PIL_Preferences','enableserial',true);
弹出对话框点 build即可(需要注意,MCU里面只能运行Single类型变量,需要将控制模块中的变量都改为single类型):
弹出生成的PIL模型,将模型复制到原来的文件中。
2.5 模型测试
进入SIL/PIL manager
修改仿真步长为10e-6;
设置PIL参数:
点击run Verification
3 测试结果
测试完毕之后得到上图结果,结果分为一个软件仿真出结果,一个PIL在环测试结果。此时可以对比两者差异。 compare栏下还可以对比两者差异。
硬件:dsp28335
PC:simulink r2019b
使用串口SCIA进行通信
仿真模型,有需自取:PIL在环模型
上述过程有效实现了PIL测试,具体步骤一般如图,需要注意的是生成PIL测试模块一定要修改模型步长(改为控制器执行步长)。测试时,一定要改回原来步长。
边栏推荐
猜你喜欢
Learn combinelatest through a practical example
数构(C语言--代码有注释)——第二章、线性表(更新版)
Chrome user script manager tempermonkey monkey
微服务实战|熔断器Hystrix初体验
Enterprise level SaaS CRM implementation
Mysql默认事务隔离级别及行锁
Microservice practice | teach you to develop load balancing components hand in hand
How to install PHP in CentOS
攻防世界-Web进阶区-unserialize3
View the port of the application published by was
随机推荐
From concept to method, the statistical learning method -- Chapter 3, k-nearest neighbor method
记录下对游戏主机配置的个人理解与心得
Number structure (C language) -- Chapter 4, compressed storage of matrices (Part 2)
Chrome浏览器插件-Fatkun安装和介绍
Demand delineation executive summary
Micro service practice | introduction and practice of zuul, a micro service gateway
Attributes of classfile
Read 30 minutes before going to bed every day_ day4_ Files
Discussion on improving development quality and reducing test bug rate
Solutions to Chinese garbled code in CMD window
MySQL multi column in operation
Pdf document of distributed service architecture: principle + Design + practice, (collect and see again)
定时线程池实现请求合并
C语言之分草莓
一篇详解带你再次重现《统计学习方法》——第二章、感知机模型
Troubleshooting and handling of an online problem caused by redis zadd
图像识别-数据采集
破茧|一文说透什么是真正的云原生
Chrome browser plug-in fatkun installation and introduction
长篇总结(代码有注释)数构(C语言)——第四章、串(上)