问题描述
目前用户在进行MWORKS.Syslab与MWORKS.Sysblock的双向融合时,对如何使用MWORKS.Sysblock模块处理MWORKS.Syslab数据问题存在疑问。同时部分用户存在M函数封装需求,会被告知可以通过Julia函数等效替换M函数,但是替换完之后,不清楚如何通过Sysblock库中的模块封装Julia函数。本篇内容将介绍上述问题的解决办法,说明MWORKS.Sysblock模块封装MWORKS.Syslab中的Julia函数、同时介绍MWORKS.Sysblock如何向MWORKS.Syslab传输数据。
环境搭建操作流程
1、启动MWORKS.Syslab,配置MWORKS.Sysplorer软件所在的路径。
MWORKS.Syslab与MWORKS.Sysplorer分属不同软件,首先启动MWORKS.Syslab,在MWORKS.Syslab界面中的“首选项”处配置MWORKS.Sysplorer软件路径,并通过MWORKS.Syslb软件启动MWORKS.Sysolorer。

2、点击MWORKS.Syslab软件界面中的"Sysplorer"按钮,此时软件会自动启动配置文件路径下的MWORKS.Sysplorer软件。

在Sysblock中封装Syslab中的juliaFunction
保证Syslab与Sysblock环境互通的搭建
1、在MWORKS.Sysplorer软件中新建Sysblock模型,在模型库中找到JuliaFunction模块,双击该模块即可跳转至Syslab界面进行Juliafunction封装,JuliaFunction模块可以用于封装Julia函数,该模块能自动识别所封装的Julia函数中的输入输出变量并自动形成端口。
Julia函数的存在,对标与Simulink中的MATLAB函数,因此用户在处理等效Simulink中的M函数封装机制时,可以考虑使用Juliafunction模块。

2、juliaFunction模块的说明如下:
双击Sysblock中的juliafunction模块,界面会自动跳转至Syslab中的Function编辑界面。名称前缀为“Sysblock模型名称”+“.”,用户可以在juliaFunction编辑器中自行编辑函数。常规情况下函数参数会被识别为输入端口,函数返回值会被识别为输出端口,更多细节juliaFunction的知识需要通过juliaFunction相关的文档了解,此处不做过多赘述。

通过上述方法可以将Syslab的函数封装至Sysblock中。
在Sysblock中发送数据至Syslab
保证Syslab与Sysblock环境互通的搭建
1、在Sysblock模型库中找到toworkspace模块,将想要传输的数据接口链接至toworkspace。
可以设置通过toworkspace模块传输后的数据名称,采样步长等相关信息,确认无误后进行模型仿真既可。

2、当模型成功仿真后,在Syslab软件的Julia工作区中可以观测到通过toworkspace模块传输的数据。每一个数据分别对应其时间戳处的数据值,该时间戳可能为用户手动设置的采样步长,也可能是设置"-1"时从其它位置继承的采样步长。

通过上述方法可以将Sysblock中的数据传输至Syslab的julia工作区中。