基于基于CCS与与MATLAB/Simulink联合仿真平台的构建与实现联合仿真平台的构建与实现
为了快速验证电力电子控制系统中DSP(Digital Signal Processor)控制算法,提高控制算法开发效率,提出了
CCS(Code Compose Studio)与MATLAB/Simulink联合仿真。介绍了CCS与MATLAB/Simulink联合仿真基本原
理,给出了联合仿真平台的构建方法与联合仿真实现的方法;着重给出了CCS IDE脚本文件编写关键步骤和基
于Level_2的S-Functon函数的编写关键步骤。最后以混合式固态开关为例,在Simulink环境下构建了混合式固态
开关模型,并通过联合仿真实现了混合式固态开关的功能,验证了方案的正确性。
0 引言引言
在现代电力电子控制系统的开发中,
[1]
。
1 MATLAB/Simulink与与CCS联合仿真的基本原理联合仿真的基本原理
1.1 Simulink仿真原理仿真原理
Simulink进行动态仿真,需要借助Simulink求解器来实现
[2]
。求解器分为离散求解器和连续求解器。Simulink对离散系统的
仿真核心是对离散系统差分方程的求解,且结果精确。而对连续系统进行仿真时,则通过对连续系统微分或偏微分方程进行求
解,且解为近似解,因此Simulink的连续求解器分为定步长求解器和变步长求解器。对于定步长求解器,不存在误差控制的问
题,而对于变步长求解器,仿真步长会受到绝对误差和相对误差的控制,只有求解误差满足相应误差范围,才会进行下一步仿
真
[3]
。
然而在实际系统中,很少存在单纯的离散系统或者连续系统,多为混合式系统,而连续变步长求解器可以同时满足离散系
统和连续系统的求解。连续变步长求解器先以最大步长进行求解,若该仿真区间内有离散状态更新,步长便减小到与离散状态
的更新相吻合,之后再计算积分误差以控制求解,若求解误差满足误差范围,则进行下一步仿真,否则缩小时间间隔,重复此
过程进行求解仿真。
Simulink求解器虽然是Simulink进行动态仿真的核心,但求解器计算出的系统状态和仿真步长与系统模型的直接交互也非常
重要。交互的核心是事件通知,而过零检测则用来检测系统中是否有事件发生。当系统在前一仿真步长时间内发生了过零事
件,变步长求解器就会缩小仿真步长,目的是判定事件发生的准确时间。交互原理见图1。
1.2 MATLAB/Simulink与与CCS联合仿真原理联合仿真原理
DSP在对系统进行控制时,一般以一定频率采集系统中的电量参数,运算后输出控制信号。在MATLAB/Simulink与CCS进
行联合仿真时,MATLAB可以将Simulink仿真模型中每一仿真步长的仿真电量参数通过CCSlink传递给CCS,再通过CCS传递
给DSP板,DSP板经过运算后输出控制信号通过CCS传输给Simulink作为下一仿真步长中仿真模型的控制量。如此循环直至仿
真结束
[4]
。仿真流程见图2。
评论0