验证生成的可执行程序结果是否与模型仿真结果相匹配。
配置仪表板范围块来监视信号的值力量:f (t): 1
和X
.双击仪表板范围块。在“块参数”对话框中确认:
该块连接到信号力量:f (t): 1
和X
.要将Dashboard块连接到一个信号,请在模型画布中选择该信号。在“阻塞参数”对话框中,选择信号名称。
最小值被设置为-10
.
马克斯被设置为10
.
应用更改并关闭对话框。
配置旋钮块,以便您可以使用旋钮来改变阻尼增益的值。双击旋钮块。在“块参数”对话框中确认:
块连接到参数阻尼:增益
.要将Dashboard块连接到参数,请在模型画布中选择使用该参数的块。在“块参数”对话框中选择参数名称。
最低被设置为200
.
最大被设置为600
.
蜱虫间隔被设置为One hundred.
.
应用更改并关闭对话框。
打开模型配置参数对话框。在C代码选项卡上,单击设置.
配置模型,如Simulink金宝app®以及在仿真数据检查器中生成的可执行程序日志工作区数据。点击数据导入/导出.确认模型配置了以下设置:
参数选择 | 名称设置为 |
---|---|
时间 | 吹捧 |
州 | xout |
输出 | 你 |
信号记录 | logsout |
数据存储 | dsmout |
在仿真数据检查器中记录已记录的工作区数据 |
配置模型以构建可执行程序。点击代码生成.确认参数只生成代码清除。
配置并验证用于构建可执行程序的工具链。确认参数工具链被设置为自动定位已安装的工具链
.然后,搜索并点击验证工具链按钮。验证报告指示检查是否通过。
配置参数和信号,使数据存储在内存中,并可在可执行程序运行时访问。为了在C代码中有效地实现模型,您不需要为模型中的每个参数、信号和状态分配内存。如果模型算法不需要数据来计算输出,则代码生成优化消除了该数据的存储。要为数据分配存储空间,以便在原型开发期间访问数据,需要禁用一些优化。
点击代码生成>优化.确认:
配置代码生成器以生成非有限数据(例如,南
和正
)及相关操作。点击代码生成>接口.确认参数金宝app支持:非谓语形式的数字被选中。
配置通信通道。为了让S金宝appimulink®与模型生成的可执行程序进行通信,模型必须包含对通信通道的支持。金宝app本例使用TCP/IP上的XCP作为通信通道的传输层。确认以下参数:
禁用MAT-file日志记录。将数据从MATLAB加载到仿真数据检查器中®基本工作空间。确认参数MAT-file日志清除。
应用您的配置更改,关闭模型配置参数对话框,并保存模型。
从Simulink金宝app编辑器,在模拟选项卡上,单击运行.时钟在运行按钮表示开启模拟节奏。模拟节奏减慢了模拟的速度,这样你就可以观察系统的行为。以较慢的速度可视化模拟可以更容易地理解底层系统设计,并在演示接近实时的行为时识别设计问题。
在模拟过程中仪表板范围块显示信号的行为力量:f (t): 1
和X
.
在Simuli金宝appnk编辑器中模拟选项卡上,单击数据检查.仿真数据检查器将打开,并导入来自模拟运行的数据。
展开运行(如果尚未展开)。然后,绘制数据,选择数据信号X
和力量:f (t): 1
.
将这些结果留在仿真数据检查器中。稍后,您将仿真数据与由模型生成的可执行程序生成的输出数据进行比较。
构建并运行模型可执行程序。
在Simuli金宝appnk编辑器中硬件选项卡上,单击监视和优化.金宝app仿真软件:
构建可执行程序。在构建过程中建筑
出现在Simulink编辑器窗口的左下角。金宝app当代码生成报告出现并读取文本时准备好了
,则该过程完成。
在Windows中®,代码生成器创建并将这些文件放在当前工作文件夹中:
rtwdemo_secondOrderSystem.exe
-可执行程序文件
rtwdemo_secondOrderSystem.pdb
-调试参数和信号的符号文件
在Linux中®,代码生成器在ELF可执行程序文件中创建并放置DWARF格式的调试信息,rtwdemo_secondOrderSystem
,并将该文件置于当前工作文件夹中。
将可执行程序作为单独的进程部署到开发计算机上。
将Simulink模型连接金宝app到可执行程序。
运行模型可执行程序代码。
使用仿真数据检查器将可执行程序结果与仿真结果进行比较。
在模拟数据检查器中,检查可执行程序运行的结果,2:运行rtwdemo_secondOrderSystem
.
点击比较.
选择要比较的数据运行。对于本例,从基线列表中,选择1:运行rtwdemo_secondOrderSystem
.从比较列表中,选择2:运行rtwdemo_secondOrderSystem
.
在“仿真数据检查器”的右上角,单击比较.
仿真数据检查器指示的输出X
和力量:f (t): 1
从可执行程序的代码是超出公差从模拟数据输出。来看看结果的图X
下,文件比较,选择要执行的行X
.
检查比较图力量:f (t): 1
.下文件比较,选择要执行的行力量:f (t): 1
.
通过指定一个绝对相对公差值来确定数字差异是否显著。对于本教程,设置全球Abs宽容来1 e-12
.然后,单击比较.的比较X
和力量:f (t): 1
是在公差内。
有关数值一致性验证和公差的更多信息,请参见模型与生成代码仿真结果的数值一致性.
接下来,在程序执行期间调优参数。