MWORKS 2024b现已正式发布!上一版本自发布以来便受到广泛关注,用户遍及航天、航空、车辆、能源等各大产业及全国超过200所高校。在取得一系列应用成果的同时,也在吸纳海量用户反馈。MWORKS 2024b的重磅升级包括以下几个方面:
1.两大基础环境功能全面提升
- Syslab在代码调试、数据绘图与交互、编程体验等方面有大幅改进。M兼容工具新增201个常用M函数,达到1461个,在M代码编辑、调试运行、结果查看、变量编辑等工作流上支持更加完整。
- Sysplorer在保持物理建模功能领先的同时,持续完善多范式统一建模环境,加强Sysblock框图与状态机建模功能,在物理与框图混合建模仿真、框图模块端口推导、定点机制、数据管理以及模型调试方面有大幅改进。
2.多目标代码生成工作流更加完善
- Sysplorer代码生成工具支持面向半物理实时系统以及嵌入式平台生成产品级代码,适配多实时机平台,优化代码膨胀率,缩减目标文件体积,解决手动集成困难、生成代码冗余等问题。
- Syslab代码生成工具以其全球首创的Julia静态代码生成技术,支持将Julia编译为可执行文件、动态库或C++项目,形成了从算法开发调试、数据分析与可视化到代码生成的完整功能支持。
3.全新推出两个工具箱
- 图像处理工具箱,为数字图像处理、分析、可视化和算法开发提供了一套全面的标准算法,可广泛应用于各行各业,如摄影、医学、机器人和遥感。
- Sysplorer定点工具箱,用于整定及优化模型定点配置,预测溢出及精度损失,缩短模型定点化过程。
4.MWORKS系列工具箱和模型库全面升级
- Syslab中7个工具箱大幅更新:图形、基础数学、符号数学、统计、信号处理、通信、控制系统。12个工具箱小幅更新:基础函数、曲线拟合、优化、全局优化、DSP系统、小波、雷达、相控阵、系统辨识、鲁棒控制、深度学习、强化学习。
- Sysplorer系列模型库大量细节优化,推出Modelica标准库同元增强版,解决用户模型在不同版本标准库之间的兼容性问题;
一、Syslab 基础环境重要更新
Syslab采用新一代高性能计算语言Julia作为主语言,同时兼容Python、C/C++、M等多语言,同元针对Julia面向科学计算进行了大量工程化改进,包括启动运行、编译调试、代码生成以及自主的信号、通信、控制工具箱等,使得Syslab成为具有后发优势的新一代科学计算环境。
Syslab具备完备的交互式编程环境,提供文件管理、代码编辑、代码调试、命令行窗口、工作空间、数据可视化等功能,为科研人员提供高性能的科学计算仿真环境。Syslab 2024b较上一版本在代码调试、数据绘图与图形交互、编程体验等方面有大幅改进。
(一)Syslab基础环境
1.调试功能改进:调试的显示、执行效率、报错、包的调试与函数跳转等方面均有大幅改进
- 全方位优化调试信息显示,默认隐藏变量列表的次要信息并支持按需配置,调试过程中变量信息悬停显示更直观,尤其是数组显示;
- 支持for循环代码过程退出调试,以便随时终止大规模循环的调试运行;
- 根据断点设置情况,自动切换执行模式,未设置断点的函数库均采用编译模式执行,大幅提升调试效率;
- 其他多处调试易用性细节改进:如代码中有语法错误时调试能够及时报错,修复动态打断点不生效,解决单步调试异常跳过代码行,修复调试变参函数时调试控制台显示变参未定义等问题。
2.绘图功能大幅改进
- 支持常用绘图的撤销/重做功能,包括plot、stairs、loglog、semilogx、semilogy、fplot、line等7个常用绘图;
- 支持跨图窗、跨坐标轴的曲线复制/粘贴,以便数据比对与分析;
- 其他多处绘图易用性细节改进,如支持二维曲线的单独显示/隐藏、三维曲面增加数据提示、提供drawnow函数支持在代码运行过程中更新绘图等;
- 新增21个绘图函数,达到239个;重点优化了67个高频绘图函数,首次运行效率提升30%以上。
3.编程易用性改进
- 支持在包环境中的函数定义跳转;
- 支持双击编辑器Tab页最大化,增加单列编辑器布局;
- 统一全局搜索框,支持搜索框中统一搜索Syslab的功能菜单和帮助文档。
(二)Syslab代码生成工具
Julia语言既有动态语言的易用性,也有接近C语言的高性能,但在多目标平台代码生成方面一直缺乏成熟方案。同元推出的Syslab代码生成工具,采用全球首创的Julia静态代码生成技术,支持将Julia代码生成可执行文件、动态库或C++源码,具有编译速度快、目标文件体积小、跨平台易部署等特点。本次更新发布的Syslab代码生成工具提供以下功能:
- 支持将Julia代码生成可执行文件、动态库和C++源码项目,生成产物不依赖Syslab环境。
- 支持 x86_64架构的win10/win11/win7、x86_64架构的linux、arm64架构的linux,暂不支持32位操作系统。
- 支持同元函数库如数学、信号处理等部分函数代码生成,共计252个函数。
(三)M语言兼容工具
无需安装MATLAB,支持M代码文件直接在 Syslab上运行。相比Syslab 2024a版本,M语言兼容工具全新提供M工作区和M变量编辑器,解决用户只能在命令行窗口查看变量数据的痛点。优化调试功能,调试体验更加流畅。新增201个常用M函数,共计达到1461个,覆盖基础、数学、图形、控制系统、信号处理、通信等领域,这些函数均在实际产业中得以充分验证。新版M兼容工具在代码编辑、调试运行、结果查看、变量编辑等工作流上支持更加完整。
二、Sysplorer 基础环境重要更新
Sysplorer是面向多领域工业产品的系统建模与仿真验证环境,完全支持多领域统一建模规范Modelica,支持物理建模、框图建模和状态机建模等多种建模范式,提供嵌入代码生成功能,支持设计、仿真、验证到部署的完整流程。较上一版本,Sysplorer 2024b优化了物理建模环境的求解器和建模易用性,进一步完善了Sysblock框图和状态机建模机制,并优化了物理模型与框图模型的混合建模体验。
(一)物理建模
Sysplorer物理建模是基于Modelica的多领域统一建模环境,具备业界领先的自主可控求解核,内置机械、液压、气动、电池、电机、车辆等高保真专业模型库。本次更新包含大量功能细节优化,包括支持变量跨层级调用,改善复杂非线性方程初值定义问题,支持模型状态保存,模型跨层级移动时自动修改引用点,删除组件后保留连线等。这些改进解决产业中非线性模型仿真问题定位,提高了仿真速率,让模型搭建更高效率,仿真结果查看更方便。
1.求解器改进
- 新增内联隐式欧拉与隐式梯形积分方法,对连续系统模型进行离散化处理,避免仿真过程中执行数值积分。适用于大规模刚性系统模型仿真,尤其在电力电子系统如复杂微电网、电机驱动以及高频变换器等仿真场景具有明显速度优势。
- 新增模型状态保存功能,将用户调试好的模型自动转换为Modelica语义下行为确定的模型,使模型行为不依赖平台内部算法策略,保证了模型跨版本、跨平台下的求解结果一致性。
1)模型状态保存前,不确定模型
2)模型状态保存后,Modelica语义下的确定模型
- 新增同伦初始化功能,支持基于homotopy操作符的同伦变换,可以使用homotopy操作符更灵活的为非线性方程给定复杂时变初始条件,改善复杂非线性方程初值定义困难的建模问题。
1)不启用模型初始功能, 模型求解失败
2)启用模型初始化功能,模型求解成功
2.建模仿真功能优化
- 优化模型浏览器的搜索功能,统一全局搜索框,支持搜索框中统一搜索Sysplorer的功能菜单和帮助文档;
3.外部接口
- Python API升级,支持对模型参数、组件信息、模型信息、连接信息以及仿真求解等操作;支持基于脚本的自动化测试和验证
- 支持导入源代码形式FMU,结合半物理接口工具箱可以生成其他平台的FMU
4.同元基础库Modelica4.0.0.TY.1
- 全新推出同元基础库Modelica4.0.0.TY.1,该库是Modelica标准库的同元增强版,解决用户模型在不同版本标准库之间的不兼容问题;
- 适配软件平台“模型库切换-升级模型”功能,可通过该功能将Modelica标准库的依赖关系直接升级为依赖同元基础库Modelica4.0.0.TY.1;
- 模型库内置模块增强,新增FFT和逻辑模型,扩充基础模型应用范围;FFT模型实现频率和相位信号输出功能,逻辑模型实现整型信号输入功能;
- 模型软件一体化改进,新增DataStoreMemory模型并结合界面交互改进,让变量跨层级调用更便捷。优化标准库中传递函数显示,可以在图形视图直接查看传递函数。
(二)Sysblock框图和状态机建模
Sysblock 框图和状态机建模环境支持离散控制系统以及复杂的状态机系统的建模仿真。框图内置数学运算、查表、子系统、使能子系统、函数调用子系统、逻辑比较、位运算、信号源等100+常用组件,适用于各类算法、控制系统、信号传输等多领域建模仿真。结合SEC(Sysplorer Embedded Coder)工具箱,Sysblock模型可生成高效高质量的嵌入式C代码,并且支持模型和代码的双向追溯。在Sysplorer环境中可将Sysblock控制器模型与被控对象模型集成,并进行混合仿真。Sysblock跟Sysplorer处于同一交互界面,构成统一的多范式建模环境。
Sysblock 本次更新优化了物理与框图混合建模仿真体验,完善框图模块端口推导以及定点建模机制,新增数据管理功能以及增强模型调试功能,增强状态机图函数及时延函数功能,新增8个内置模块并改进了多个模块功能。
1.框图建模机制进一步完善
- 优化数据类型推导功能,适配全模块全场景推导,提升建模效率
- 新增斜率偏置表示方法,拓展多模块定点计算能力,优化定点建模体验
- 定点模型生成代码可减少芯片RAM占用,优化代码开销调度,降低芯片成本
类型推导
2.框图建模功能升级
- 支持基于数据流的模型调试,能够基于图形化界面快速定位异常位置,提高调试效率
- 修复全局变量和局部变量机制问题,配合子系统模块,简化建模拓扑结构,提升模型可读性。
- 曲线坐标轴支持显示枚举类型,解决了枚举变量可读性差,结果展示不直观的问题
- 数据字典新增总线、枚举和定点类型配置,解决了数据字典中特殊数据类型无法编辑的问题
- 新增Fcn模块进行表达式建模,支持将多个模块折叠成单个更高效的模块,实现生成代码行数大幅缩减
- 新增了Terminator、MultiportSwitch、ComparetoConstant、ComparetoZero、BusToVector、Selector、ForEach Subsystem、Fcn 等模块,进一步丰富了模块库
3.新增模型数据管理机制
- 整合总线编辑器及枚举编辑器功能,提供统一编辑界面,解决了参数修改反复切换窗口的问题
- 支持同窗口显示所有参数名称、数值信息、数据类型及维度信息,参数修改一目了然
- 支持在物理建模环境中直接修改Sysblock组件的参数,提高混合仿真调试效率
4.状态机建模功能升级
- 状态机新增after函数支持,可设置延迟指定时间或步长后执行动作,简化延迟功能搭建过程,时序控制模型搭建更高效
- 状态机新增图函数功能,支持基于图形化界面构造选择、环路、决策三类构型
- 支持在状态或子图中调用图形函数,提高复杂逻辑切换搭建效率
- 状态机支持注释功能,优化注释代码和运算指令的显示效果
5.外部接口
- Python API覆盖框图建模和仿真,支撑Sysblock建模仿真的自动化
- 支持Sysblock模型和混合模型导出FMU 2.0 Co-Simulation
三、工具箱与模型库重要更新
(一)全新推出图像处理工具箱
全新推出的图像处理工具箱,为数字图像处理、分析、可视化和算法开发提供了一套全面的标准算法。工具箱支持的功能包括但不限于:图像的读写和格式转换,图像数据可视化,几何变换和图像配准,图像形态学运算,图像滤波和增强,图像分割和分析,图像特征检测等。
应用示例:工业铝型板材缺陷检测
在铝型材的实际生产过程中,由于各方面因素的影响,铝型材表面会产生裂纹、起皮、划伤等瑕疵,这些瑕疵会严重影响铝型材的质量。为保证产品质量,需要人工进行肉眼目测。然而,铝型材的表面自身会含有纹路,与瑕疵的区分度不高。传统人工检查费时费力,很难及时准确的判断出表面瑕疵。
通过合理设计图像处理算法,可以自动完成质检任务,减少漏检发生率,提高出厂产品质量。该示例是一个对铝型材表面漆面完整度的一个检测效果展示。
对读取到的原始铝型材图像,进行灰度化,以进一步进行图像处理、分析:
对灰度图像,进行图像对比度调整,形态学运算, 阈值分割, 形态学开运算等一系列处理后,得到图像的二值分割结果,及漆面缺失的分析结果。
(二)全新推出Sysplorer定点工具箱
定点工具箱提供自动和交互式定点转换器,用于将Sysblock模型中浮点类型自动转换为定点类型或优化已有定点类型,同时提供丰富的数据统计、类型信息及结果对比,帮助用户配置优化模型定点类型。
- 支持多种容差组合设置;
- 提供信号类型详情、仿真柱状分布图及数据统计表提供仿真结果对比及误差对比曲线图;
- 支持定点类型自动推荐、手动修改及溢出提示;
- 支持自动迭代寻找最优定点格式解配置。
(三)CAD工具箱更新
提供智能易用的三维交互式多体建模环境,采用引导式工作流,帮助用户快速完成关节和驱动设计,并能一键生成已自动完成连线和布局的Modelica模型,大幅缩短机械多体系统的建模时间,支撑多体动力学与包括控制、液压、电气等在内的多领域统一建模。
- 支持关节设计:固定副、转动副等常见运动副的添加、删除和属性编辑
- 支持驱动设计:转动驱动和平移驱动的添加、删除和属性编辑
- 多体元素设计支持闪电模式和标准模式
- 新增平面环处理工具
- 新增零件材料批量修改功能
- 模型浏览器新增按类型筛选节点和按名称搜索节点的功能
- 支持设计操作的undo/redo
- 支持随时保存工程文件
- 支持自动完成布局连线,生成Modelica多体模型
- 支持自动识别平面环并生成切割铰
(四)模型降阶及融合仿真工具更新
提供系统数据导入的图表显示,帮助用户更好的根据数据特征选择试验集与验证集。同时新增微分、积分、数据平移、数据缩放、均值平滑、符号函数等特征项增加,帮助用户更好的建立高准确性的降阶模型。
提供场数据导入的三维显示,支持几何树分区域降阶,帮助用户对多场耦合的场仿真结果拆解,从而搭建用户所需的场降阶模型。
(五)Syslab科学计算工具箱系列更新
图形、基础数学、符号数学、统计、信号处理、通信、控制系统等7个工具箱大幅更新,基础函数、曲线拟合、优化、全局优化、DSP系统、小波、雷达、相控阵、系统辨识、鲁棒控制、深度学习、强化学习等12个工具箱有小幅更新。
(六)同元软控产品模型库系列改进
同元商业模型库目前涵盖机械、液压气动、电气、流体和热专业共22个产品,车辆行业7个产品,总计29个。此次平台升级全面提升了29个模型库的易用性,并根据市场需求进行了模型的新增和优化:多体系统模型库新增2个约束模型,并优化修复了6个现有模型;接触模型库新增3个点接触模型和2个面接触模型;液压元件模型库新增了1个模型,升级1个模型功能。
- 接触模型库:新增2个简化的平面点接触模型,3个点接触模型;新增面接触模型的类型,增加矩形面和矩形面接触模型和矩形面和圆面接触模型;新增平衡球模型、平面多物体碰撞和车轮滚动3个新的典型案例;
- 液压元件模型库:新增考虑倒角与间隙的带孔洞滑阀芯,提供阀芯倒角和间隙设置功能,为更细粒度结构参数设置提供支撑;优化带孔洞滑阀芯,新增孔洞形状选择功能,为不同孔洞形状选择的场景应用提供支撑;
- 多体系统模型库:新增平行约束和垂直约束2个约束模型;
- 所有产品模型库适配同元基础库,模型库文档全面更新。
官网&产品体验地址
官网:https://www.tongyuan.cc/download全新的MWORKS 2024b现已开放下载,欢迎新老用户踊跃下载、积极试用。
科技践于行,创新无止境。MWORKS持续迭代,强势进化,为世界提供科学计算与系统建模仿真平台的中国选项。
未来,我们仍将秉承“融入工业创新,共创先进软件”的发展理念,紧抓时代技术发展趋势,围绕行业应用需求,在工程实践中反复迭代,不断锤炼MWORKS,打造开放的装备数字化计算仿真底座,积极促进软件产业生态完善,持续推动中国工业软件全面发展与创新突破!