什么是MXAM?

MES Model Examiner® (MXAM)通过使用通用的和定制的检查规范提供快速和可靠的Simulink®、Stateflow®、Embedded Coder®、TargetLink®、 ASCET®、Enterprise Architect® 模型规范以及Excel数据的验证检查。
新版本有哪些功能亮点?
MES Model Examiner® (MXAM) v.9.2 功能亮点
识别重复的Stateflow代码
重复的代码容易出错、难以维护且效率低下。新的检查mes_slsf_3800将对您的Stateflow图表进行筛查,查找相同或相似的代码片段。
改进对AUTOSAR层的处理
一个新的全局参数可忽略AUTOSAR Runnable上方的模型层,以便集中处理人工建模的部分。
增强模型元素链接的稳健性
如果对模型进行了小改动,例如修复操作或调整了模型结构,则其他分析结果项与模型元素的链接仍然保持有效。这简化了在模型修复和重新加载报告方面的重复工作。
MES Model Examiner® (MXAM) v.9.1 功能亮点
静态分析前进行模型自动验证
为了确保您的模型和设置已经准备好进行静态分析,MXAM现在会自动预验证Simulink®模型。
对模型变体的集成支持
MXAM进一步支持Variant模块的使用。通过全局参数配置分析的范围,可以包括仅活动变体或所有变体。该参数适用于所有检查。
扩展支持对选定查找结果的辅助安全修复和自动安全修复
MAB 5.0规范的额外检查
改进对AUTOSAR用例的支持
MES Model Examiner® (MXAM) v.9.0 功能亮点
对查找结果的辅助和自动安全修复
MXAM通过新的修复功能简化建模工作。该功能提供一个新的对话框,该对话框可显示模型部分的详细信息,对每个查找结果的修复动作建议和具体理由,帮助用户更好地控制模型修复。
符合Stateflow建模最佳实践的新MES检查
增加了对MAB规范的覆盖
重要支持信息
MES Model Examiner® (MXAM)许可证更新
MES Model Examiner已经发布了新版本,需进行许可证更新。更新适用于所有持有有效支持和维护合同的客户。MES支持团队将在未来几天内联系相关客户,提供MXAM 9.0许可证更新文件。更新的许可证将与旧版本保持兼容。
如您使用的许可证服务器FlexNet Publisher低于11.19版本, 须更新升级补丁
最新的MXAM版本中更新的许可证模块需要将FNP许可证服务器更新到11.19.1或更高版本。您可以在此页面中找到下载链接。
MES Model Examiner® (MXAM) v.8.2 功能亮点
通用MXRAY模型度量指标检查
通过新的检查matlab_mxray_generic_0001,您可以评估任意数字模型指标。只需为想要评估的指标设置一个数值上限,每一个指标超过此上限值的结构元素都会在查找结果中列出。
CI许可证签出排队
MXAM现在支持用户在请求CI许可证签出时没有可用许可证的情况下排队处理许可证请求。可以配置排队时长超时。此功能需要MXAM_CI_EXEC许可证。
新增覆盖MAB规范(版本5.0)的检查可用
数个新检查覆盖了Simulink和Stateflow中优秀建模风格和配置的众多最佳实践。
MES Model Examiner® (MXAM) v.8.1 功能亮点
自动返回未使用的许可证
当一个打开的MXAM应用程序实例在6小时内未被使用,则签出的许可证将自动返回到许可证服务器,以允许其他用户获取此MXAM许可证。空闲的MXAM将被封锁,直到用户决定使用新获得的许可证继续工作。
支持Linux作为操作系统运行MXAM(BETA)
适用于TargetLink 5.0、5.1 和5.2版本的新规范文档
六个新规范文档侧重于优化Targetlink代码生成和MISRA C的合规性。
MES Model Examiner® (MXAM) v.8.0 功能亮点
扩展报告明细
在链接不可导航的情况下(如:Excel或PDF报表),通过使用带有链接的脚注,改进了对包含引用其他元素的查找结果信息的显示。
报告明细整合了不同的报告格式,在html和PDF报告中增加了架构指标表,在Excel报告中添加了参数配置的详细信息。
新增建模规范
添加了新的规范,重点关注隐式数据类型转换、Integrator模块饱和度和Statflow中布局的设置。
安装
手工安装
- 安装程序:执行安装文件(.exe文件)并按照安装说明进行MXAM的安装。
- 安装启动过程的等待时间取决于客户端计算机的安全设置。
- 安装到写保护目录中:右键以管理员身份执行安装。
- Zip压缩文档:解压文档到任何目录中。
自动“无头”安装
- 在计算机上运行一次MXAM安装,并将完成面板中的自动安装数据保存到auto-install.xml。
使用此数据,您将能够在另一台类似的计算机上运行相同的安装。 - 设置auto-install.xml文件
- 运行自动安装: >>[installer-name].exe [ABSOLUTE-PATH/auto-install.xml]
许可证配置
了解更多关于MES质量工具许可证配置、一般许可证问题和MES许可证模式以及如何更改您的MAC-ID。
升级到最新版本
- 假如您已将MXAM文件夹添加到MATLAB路径上,请从路径中删除所有相关文件夹。
- 假如您已把旧版安装在具有版本后缀的文件夹中(例如:x:\project\matlab\mxam_x_x),您可以将此目录作为备份。
- 假如您安装时没有设置版本后缀,则可以将旧版的安装目录更名为包含版本后缀的文件夹,并将其作为备份文件夹。
将MXAM 1版本升级到当前版本的MXAM
可根据要求提供用于迁移客户特定检查集和检查的迁移工具包。
请联系 sales@model-engineers.com.
系统要求
使用MXAM须符合以下系统要求:
- Windows Vista, Windows 7, Windows 8, Windows 10 (64位版本)或
- Linux(64位版本),使用Ubuntu 20.04.1 Desktop进行测试。
- 您的系统上需要安装Java 8到15中的版本。经过测试可以与MXAM一起使用的版本是“ AdoptOpenJDK 8”
- 满足规范检查软件(MXAM)和 MATLAB®/Simulink®/Stateflow®及 TargetLink®等应用的系统要求:
- MATLAB® 版本查看下面的表格
- TargetLink® (基本套件) 版本查看下面的表格
- 应用规范检查软件(MXAM)和ASCET:ASCET6.1版本和6.7版本的系统要求
- 应用规范检查软件(MXAM)和EXCEL2003及以上版本的系统要求
规范检查软件(MXAM)版本与MATLAB和TargetLink版本的兼容性
MXAM 版本 | MATLAB 版本 | TargetLink 版本 |
9.2版本 | R2015b - R2022b | TL 4.1 - TL 2022-b |
9.1版本 | R2015b - R2022b | TL 4.1 - TL 2022-b |
9.0版本 | R2015b - R2022b | TL 4.1 - TL 2022-b |
8.2版本 | R2015b - R2022a | TL 4.1 - TL 5.2 |
8.1版本 | R2015b - R2021b | TL 4.1 - TL 5.2 |
8.0版本 | R2015b - R2021b | TL 4.1 - TL 5.2 |
7.3版本 | R2013b - R2021b | TL 3.5 - TL 5.2 |
7.2版本 | R2013b - R2020b | TL 3.5 - TL 5.1 |
7.1版本 | R2013b - R2020b | TL 3.5 - TL 5.1 |
7.0版本 | R2013b - R2020b | TL 3.5 - TL 5.1 |
6.5版本 | R2011b - R2020b | TL 3.3 - TL 5.0 |
6.4版本 | R2011b - R2019b | TL 3.3 - TL 5.0 |
6.3版本 | R2011b - R2019b | TL 3.3 - TL 5.0 |
6.2版本 | R2011b - R2019b | TL 3.3 - TL 5.0 |
6.1 版本 | R2011b - R2019a | TL 3.3 - TL 4.4 |
6.0版本 | R2011b - R2019a | TL 3.3 - TL 4.4 |
5.3 版本 | R2011b - R2018b | TL 3.3 - TL 4.4 |
5.2 版本 | R2011b - R2018b | TL 3.3 - TL 4.3 |
5.1 版本 | R2011b - R2018b | TL 3.3 - TL 4.3 |
5.0 版本 | R2011b - R2018a | TL 3.3 - TL 4.3 |
4.7 版本 | R2009b - R2017b | TL 3.2 - TL 4.3 |
4.6 版本 | R2009b - R2017b | TL 3.2 - TL 4.2 |
4.5 版本 | R2009b - R2017a | TL 3.2 - TL 4.2 |
4.4 版本 | R2009b - R2017a | TL 3.2 - TL 4.2 |
4.3 版本 | R2009b - R2016b | TL 3.2 - TL 4.2 |
4.2 版本 | R2009b - R2016b | TL 3.2 - TL 4.2 |
4.1 版本 | R2007b - R2016b | TL 2.2 - TL 4.1 |
4.0 版本 | R2007b - R2016a | TL 2.2 - TL 4.1 |
3.9 版本 | R2007b - R2015b | TL 2.2 - TL 4.1 |
快速启动
启动MXAM
- 对于MATLAB平台:打开MATLAB,浏览到MXAM安装目录然后运行>>mxam
- 对于其它平台:使用快捷方式启动MXAM或者浏览到MXAM安装目录中并运行mxam.exe
启动分析
对于MATLAB平台:
- 在MATLAB中打开一个模型。
- 在MXAM里点击 "Analyze"
- 在检查目标对话框内选择模型
- 点击 "Finish"
对于ASCET:
- 在MXAM里点击 "Analyze"
- 假如还没打开过在检查目标对话框,请点击"打开 ASCET"
- 点击“Refresh”可从从数据库获取模型。
- 按点 "Finish"
对于其它平台:
- 在项目视图里的“Artifact”选项中点击“Add…”以添加一个新的检查目标。
- 选择工件并点击"Finish"
- 点击"Analyze"
规范
- 转到“Project Guidelines”视图,以了解在分析过程中将检查了哪些规范。
- 想要查看所有可用的规范,请转到“Library Browser”视图并选择“Guidelines”视图。
建议
假如您有任何建议帮助我们改善MES Model Examiner® 请随时与我们联系:
电子邮件: mxam@model-engineers.com
用户说明书

用户指导
MES说明书为您提供清楚和详细的说明如何应用MES Model Examiner® (MXAM)。它为用户提供所有关于启动和运用MXAM的信息。
在菜单里按点 “Help > Help Contents”您以便可以参看说明书(如图)。
MXAM演示视频
在本视频中,我们将演示如何将MXAM项目设置为mxmp文件。您将学习如何创建和配置MXAM项目以及如何保存和加载项目。建议您在观看此视频前了解MXAM工作流程的基本知识,此视频侧重于MXAM工作流程的第一步。
在本视频中,我们将展示如何阅读报告并演示如何使用报告以使您的模型合规。您需要具备有关MXAM工作流程的基本知识以便更好理解此视频。
MES模赛思网络研讨会系列
查看所有即将举行的网络研讨会。研讨会不收取任何费用,我们提供中文与英文研讨会。
发行说明 - v.9.2 (2023年7月)
工具框架
提高了模型元素链接的稳健性
- 更新了从MXAM到模型的链接操作,并带来了若干好处。 现在,在查找结果或工件导航中打开模型元素的功能变得更加稳健,操作动作也得到了扩展,以支持更多的元素。 如果对模型进行了微小的改动,例如:修复操作或调整模型结构,与模型元素的其他链接仍然有效。 此外,打开报告时的“继续工作”模式也得到了改进。
- 注意:如果注释对应的元素是一个名称里含有换行符的Simulink信号线,则注释将被取消映射。
mxm报告的压缩
- 现在在导出和保存报告的对话框中都有压缩mxmr报告的选项。 这显著减少了大型报告的文件大小。 默认状态下,压缩是被激活的,并可在项目配置设置中为每一个项目进行配置。 对压缩报告和未压缩报告的处理方式是相同的。
改进
- 出于安全原因更新至Apache Commons Text 1.10.0(问题:CVE-2022-42889)。(#11020)
- 准备与Java >=16位的兼容, 这有关更新至XStream 1.4.20版和类加载。
- 在报告导出方面,对报告名称中的%PROJECT%、%MODEL%和%SYSTEM%的token(标文)替换进行了调整。如果其中一个替换值太长,它将被缩短到适当的长度。这样可防止报告名称超过操作系统在保存或导出时可处理的长度。(#10761)
- 现在可通过一个简洁的错误对话框报告在工件选择过程中出现的问题。(#10905)
- 在启动MATLAB和MXAM之间的连接前将RMI主机名称设置为本地机器。(#10148)
错误修复
- 修复了在狭窄的时间范围内跨越不同时区创建注释的问题。这些注释可能以意想不到的顺序显示。该错误修复适用于从MXAM 9.2.0版起创建的注释。(#11103)
- 修复了详细视图中水平滚动条的问题。(#10050)
- 修复了一个问题,该问题会在点击忽略的查找结果时导致错误。(#11222)
- 现在可以以其默认值正确处理MATLAB适配器中的新参数。(#11100)
- 在MXAM HTML报告的“Execution Environment(执行环境)”章节中,工具名称已被正确地添加到版本和修订信息中。(#11005)
- 修复了一个Linux发行版的执行问题。该程序现在默认设置为可执行。(#11027)
- 修复了连续调用mxam.m时出现的一个问题。(#11152)
- 现在会报告在调用许可证管理器时出现的问题。
- 修复了MXAM 9.1的一个问题,当在MATLAB路径中发现mxam_hookGlobalParameters时会导致检查中止。(#11224)
规范、检查和文档
对AUTOSAR模型的集成支持
- 分析的范围可通过一个全局参数“Global.AnalyzeOnlyAutosarRunnableSubsystems”配置为仅包括被定义为AUTOSAR Runnables(可运行实体)的子系统。此参数适用于所有的检查。(#10788)
识别重复的Stateflow代码
- 使用规范mes_slsf_3800禁止在Stateflow中重复代码段。
扩展了对检查结果的辅助和自动安全修复
- 新的修复功能已添加到以下主题的检查中:
- 颜色设置:mcheck_misra_slsf_023_a、mes_mes_color_001
- Stateflow状态标签布局:mcheck_jc_0501
- 条件子系统布局:mcheck_db_0146
新的覆盖MAB规范(版本5.0)的检查可用
- 使用规范jc_0655禁止在Stateflow的转换条件中对逻辑常量进行比较。(#10477)
- 使用规范na_0031确保为枚举明确定义默认值。.
- 使用规范jc_0630确保正确使用多端口开关模块,以防止意外行为。
对信号命名要求检查的补充和改进
- 使用检查mcheck_mes_slsf_1107和规范jc_0009确保在没有信号名称或信号是可重复使用的子系统的输出时,属性"SignalPropagation"(如果可用)的设置为 "off"。(#11140)
- 使用检查mcheck_mes_slsf_1102 和规范jc_0008验证指定的信号已在信号源处命名,且未重命名。(#11140)
- 使用检查mcheck_mes_slsf_1105和规范misra_slsf_026_c和jc_0281确保启用和触发端口与其输入信号具有相同的名称。
- 规范jm_0010:新的检查mcheck_jm_0010取代mcheck_jm_0010_a和mcheck_jm_0010_b
- 建议使用mcheck_db_0123_b而不是mcheck_jm_0010_b。
- mcheck_jm_0010替换了mcheck_jm_0010_a,并对检查参数做了一些明显的更改:
- 删除了检查参数jm_0010_a.IgnoreSimulinkPorts。
- 删除了检查参数MAAB.jm_0010_a.LabelSignalLinesConnectingReusableSubsystem,以遵守规范并与其他命名检查保持行为一致。
- 删除了检查参数MAAB.jm_0010_a.CheckEmptySignalNames,因为它现在由本检查和mes_slsf_1103涵盖。
- 检查参数MAAB.jm_0010_a.AllowedPrefixOrSuffixForInport和MAAB.jm_0010_a.AllowedPrefixOrSuffixForOutport已被合并为一个检查参数MES.portNaming.PrefixSuffix。
- 检查参数MAAB.jm_0010_a.CaseSensitivePrefixOrSuffix已被删除。
- 规范misra_slsf_026_c 的变更:
- 检查现在只分析输入和输出模块。
- 删除了检查参数MISRA.misra_slsf_026_c.IgnoreSimulinkPorts。
- 删除了检查参数MISRA.misra_slsf_026_c.LabelSignalLinesConnectingReusableSubsystem,以遵守规范并与其他命名检查保持行为一致。
- 删除了检查参数MISRA.misra_slsf_026_c.CheckEmptySignalNames,因为它现在由本检查和mes_slsf_1103涵盖。
- 删除了检查参数MISRA.misra_slsf_026_c.IgnoreTriggerEnablePorts,因为触发和启用功能已被mcheck_mes_slsf_1105涵盖。
改进
- 检查sdt_sc004_c现在会计算typecast常量的调整范围,并计算由此产生的任何溢出/下溢行为和精度损失。
- mcheck_na_0002:该检查现在支持多链路,以改进在Simulink中的查找导航功能。(#10953)
- mes_sltl_002_b、jc_0481、mcheck_sf_001、mcheck_db_0110:改进了检查的运行时间。(#10960、#10956、#10959)
- 检查mcheck_db_0146现在新增了用于自定义ForEach端口位置的参数:MAAB.db_0146.ForEach.Range和MAAB.db_0146.ForEach.Region。
- 更新了检查na_0020,以提高性能和可用性。
更改
- 将规范db_0140、na_0008和na_0009的第01版设置为“obsolete(过时)”。
- 从检查db_0140版本1中删除了基于检查的修复操作,因为版本2已经支持新的基于查找的修复操作。
错误修复
- 指标“Unused Inputs(未使用的输入)”和相应的检查matlab_mxray_1306现在支持已选用“OutputAsBus”选项的BusSelector模块。(#9786)
- 修复了一个问题,即:mcheck_sdt_sc004_c不会忽略"Single(单精度浮点)"数据类型的模块,也不会对具有浮点输出和检查参数.IgnoreRangeOfFloatOutput设置为true的模块发出警告。(#10961)
- 修复了一个问题,即:mcheck_misra_slsf_027_fgi会对MATLAB函数内部的Demux模块生成无效的失败查找结果。(#10942)
- 修复了一个问题,即:mcheck_na_0002会对TargetLink模型中的mux模块报告一个无效的失败查找结果。当将其用作预期布尔型输入的模块的source(数据源)时,这将影响只具有布尔型sources(数据源)的模块。(#10953)
- 修复了一个问题,即:mes_mes_cgtl_4302会对没有输出的图形函数语句报告一个无效的失败查找结果。(#10996)
- 修复了mcheck_misra_slsf_006_a和mcheck_misra_slsf_006_b通过输入端口分析标定参数的问题。(#10996)
- 在某些情况下, MXAM以短格式(short-format)精度评估模块和掩码参数。此问题已修复,保留了最多小数点后15位的长格式(long-format)精度。(#11006)
- 修复了一个问题,即:基于MXRAY的检查(matlab_mxray_130*)直接在Simulink的引用子系统上执行时,会出现 "未经处理的模块图类型!"的错误消息并中止。(#10957)
- 在极少数情况下,包含指向另一个模型的路径的掩码参数可能会导致MXAM打开该模型。这种情况已不再发生。(#10979)