让PIL仿真更接近实际的Simscope
2023-07-14 来源:autoMBD
ps :scape是中强大的物理库,它可以搭建力学、电学、磁场、流体等多种物理场景,以物理量的方式进行,可用于、、汽车的仿真。
如果已经在仓库中模型的读者应该能发现,最新的模型对FOC核心和算法状态机分别都进行了L测试。仓库中最新的模型如下图所示:
仓库中最新的FOC模型 - From autoMBD
分别介绍一下上图中这些模型的作用:
- FOC_Ctrl_CodeModel .slx
集成式MBD开发中,用于生成模型代码,包括状态机和FOC核心算法使用的即为该模型。 - FOC_Ctrl_MBD .slx
所“建”即所得的最新模型,除了算法状态机和FOC核心算法,还包括底层驱动、外设初始化和中断管理等,该模型对所讲的模型进行了更新和优化。 - FOC_PIL_Algth_model .slx & FOC_PIL_Algth_top .slx
对FOC核心算法进行PIL测试的model模型和top模型。 - FOC_PIL_Stath_model .slx & FOC_PIL_StateMch_top .slx
对控制状态机进行PIL测试的model模型和top模型。 - FOC__CoreAlgoithm .slx
FOC核心算法,为Subsystem模型。 - FOC_Sub_StateMch .slx
电机控制状态机模型,为Subsystem模型,且包含了FOC核心算法。
需要注意的是, 原来的MIL (Model In the Loop) 模型被移除了 ,该模型可以用PIL测试的top模型代替,只需要将Model Reference的仿真模式修改为Normal即可,如下图所示:
PIL和MIL的切换 - From autoMBD
两个PIL测试的目的是不一样的:
- FOC核心算法PIL测试
测试FOC算法是否能正常运行,控制性能是否满足要求,控制参数是否合理,以及开展不同工况的测试。 - 电机控制状态机PIL测试
测试状态切换是否正确,电机控制的功能和逻辑是否正确,验证FOC核心算法的调度是否正常,是电机控制的完整测试。
对这两个模型分开测试是有必要的,在不同的阶段不同的工作,同时也将算法和功能进行了隔离。
分别打开FOC核心算法模型和电机控制状态机模型的PIL top 模型,可以做一个对比:
FOC算法的PIL top模型 - From autoMBD
电机控制状态机的PIL top模型 - From autoMBD
可以发现,两个测试的电机模型是不一样的: 前者使用的是连续、理想的和电机模型;而后者使用的是Simcope模型搭建的逆变器和电机模型。 这就是本次补充的重点, 使用Simscape模型可以更加贴近实际情况进行PIL测试 。
那么更加贴近实际情况具体体现在哪里呢?我总结有以下三点:
1. 根据实际电路,搭建实现逆变器模型
Simcope逆变器 - From autoMBD
2. 实际,搭建实现采样电路,采样的布置见上图
Simscape 运放和C采样电路 - From autoMBD
3. 根据外设FTM的,搭建中心对齐PWM发生器
中心对齐PWM发生器(A相) - From autoMBD
上述三点的实现,均根据实际的电路设计(即DEVKIT驱动板原理图)和芯片外设(FTM,FlexTimer Module)的工作原理进行搭建的,保证了最大限度的和实际情况一致,可以提高PIL的参考价值:此时的PIL除了底层驱动以外,其他所有的部分,包括状态机、FOC算法和电路硬件,都进行了验证和测试。
Tips :DEVKIT驱动板PCB原理图和S32K3手册均能在autoMBD的资源库中找到,私信回复关键词“ 资源 ”即可收到链接信息。
使用Simscape搭建电路的模型,这样做是有意义的。在以前的文章中提到过,我追求的是尽可能减小****MBD的模型和代码之间的沟壑 ,Simscape至少能实现一部分。
把格局再打开一下,如果利用第三方软件与Simulink进行联合仿真,仿真环境会进一步逼近实际情况。
这种联合仿真有着广泛的实际案例,很多开发车道线保持、自适应巡航算法的,首先会在的虚拟环境中搭建汽车模型和道路模型(甚至还可以包括行人、路灯),然后通过Simulink联合仿真来验证算法。还有其他诸如机器人、无人机等场景。
这些实际场景中, 只需要搭建好算法和状态机,都能能实现PIL测试,从而同时或分别验证软件逻辑、功能、算法和电路硬件 。
上述的验证过程,如果 把复杂的受控对象放在实时机中运算 ,而不是在电脑中,这个过程就变成了HIL(Hardware In the Loop)。PIL和HIL相比,就是缺少了实时性。
虽然PIL不是实时运算,但实时性的验证可以通过PIL的软件运算耗时来评估,这一点在PIL是可以实现的。这样就可以最大限度的降低成本(通常实时仿真机价格几万到几十万不等),同时提高验证的可信度,最大限度挖掘PIL的作用。
还需要提的一点是,为了保证PWM的分辨率,算法状态机的PIL测试,其步长设置为:
Ts_simscape = 1/40000000