你可以在相量模式下运行你的模型来加速模拟。在Simscape中,相量模式被称为频率-时间方程公式。总的来说,该公式比传统的时间公式使用更大的时间步长,可以实现对交流模型的精确仿真。
使用频率-时间方程公式来加速你的模拟:
您的模拟包含具有共同基频的周期性交流信号
您感兴趣的是缓慢移动的交流相关量,如振幅或相位,和直流输出信号
要度量运行模拟所需的时间,请打开模型ee_sm_control并创建一个模型回调。
mdl = load_system (“ee_sm_control”);open_system (mdl);set_param (mdl“StartFcn”,”抽搐,“);set_param (mdl“StopFcn”,“尖= toc;”);
双击Solver Configuration块并应用以下配置:
启用本地求解器通过检查使用本地解算器复选框
设置样品时间
参数1 e - 3
设置方程公式
参数时间
您也可以运行此代码来配置块。
黑色= find_system (mdl,“MaskType”,解算器配置的);set_param(黑色,“UseLocalSolver”,“上”);set_param(黑色,“LocalSolverSampleTime”,“1 e - 3”);set_param(黑色,“EquationFormulation”,“NE_TIME_EF”);
模拟模型并保存运行时和日志变量。
sim (get_param (mdl,“名字”));tsim_time =圆(尖,2);simlog_ee_sm_control_time = simlog_ee_sm_control;
双击Solver Configuration块并应用以下配置:
启用本地求解器通过检查使用本地解算器
复选框
设置样品时间
参数1)依照
设置方程公式
参数频率和时间
您也可以运行此代码来配置块。
黑色= find_system (mdl,“名字”,解算器配置的);set_param(黑色,“UseLocalSolver”,“上”);set_param(黑色,“LocalSolverSampleTime”,“1飞行”);set_param(黑色,“EquationFormulation”,“NE_FREQUENCY_TIME_EF”);
模拟模型并保存运行时和日志变量。
sim (get_param (mdl,“名字”));tsim_phasor =圆(尖,2);simlog_ee_sm_control_phasor = simlog_ee_sm_control;
在时间和频率时间模拟中绘制磁场电压和转子速度。对于每个模拟模式,在每50个数据点显示标记。
[hTime, hPhasor] = setup_figure (simlog_ee_sm_control_time simlog_ee_sm_control_phasor,“直流”);传奇([hTime, hPhasor], {[的时间(t = 'num2str (tsim_time),' s) ']、[“相量(t = 'num2str (tsim_phasor),' s) ']});
尽管使用了10倍大的时间步长,但相量模拟再现了与基于时间的模拟几乎相同的结果。在图例中还显示了每个模拟模式的测量模拟时间。这个性能指标在不同的机器上是不同的,但是频率时间模拟应该比时间模拟快大约两倍。注意,在频率时间的情况下,每一步所需的实际时间要高一些,但总时间减少了。
画出一个-同步电机在一段时间内的相电压1
来1.1秒
.由于频率-时间公式中的时间步长较大,交流量的分辨率太小,无法分辨出正弦波。可用的点采样不足,但仍然准确。
[hTime, hPhasor] = setup_figure (simlog_ee_sm_control_time simlog_ee_sm_control_phasor,“交流”);传奇([hTime, hPhasor], {[的时间(t = 'num2str (tsim_time),' s) ']、[“相量(t = 'num2str (tsim_phasor),' s) ']});
一般来说,使用频率-时间公式来加速模拟,当感兴趣的输出是直流或缓慢移动的交流量。您可以使用周期传感器来测量交流信号在时间和频率时间公式中的缓慢移动特性,如振幅和相位。有关更多信息,请参见PS谐波估计器(幅值、相位)块。
有时在时间和频率时间产生的交流信号之间会有小的相位偏移。这种差异是由于随着时间的推移,信号频率略有不同的累积积分误差造成的。