从 Simulink 模型创建并运行实时应用程序
本教程从一个非实时 Simulink® 阻尼振荡器模型 slrt_ex_osc_nrt 开始。
打开非实时模型
要打开模型,请在 MATLAB® 命令行窗口中输入:
model_nrt = 'slrt_ex_osc_nrt';
open_system(model_nrt);

要完成本教程,您必须已经掌握创建、配置和仿真此类模型的相关知识。在完成教程的过程中,您将把 slrt_ex_osc_nrt 模型转换为 Simulink Real-Time™ 模型,该模型经过配置可构建为实时应用程序。随后,您在目标计算机上构建、下载并执行实时应用程序。
最终模型命名为 slrt_ex_osc_rt。要打开模型,请在 MATLAB 命令行窗口中输入:
model_rt = 'slrt_ex_osc_rt';
open_system(model_rt);

将 Simulink 模型转换为实时应用程序
添加模块并设置配置参数,以将 Simulink 模型作为实时应用程序运行。
要在 Simulink Real-Time 环境下将 Simulink 模型作为实时应用程序运行,需添加并配置实时 File Log 模块,同时设置代码生成和目标执行的配置参数。
添加 Simulink Real-Time File Log 模块
Simulink Real-Time 支持一个实时 File Log 模块。本教程使用 File Log 模块,该模块在仿真运行后将信号数据记录至仿真数据检查器中进行显示。
在 MATLAB 命令行窗口中,输入
slrt_ex_osc_nrt。MATLAB 加载振荡器模型并显示 Simulink 模块图。在 Simulink 编辑器中,从应用程序选项卡中,点击 Simulink Real-Time。
在实时选项卡的准备部分,点击库浏览器。
在左侧窗格中,浏览至节点 Simulink Real-Time 并双击它。
从 I/O 模块类别列表中,点击节点日志记录。
点击并拖动 File Log 模块到 Simulink 模块图中。Simulink 在模型中添加一个新的实时 File Log 模块。
将多路复用器输出连接至 File Log 模块输入端。
在仿真选项卡中,从保存按钮处,点击另存为。输入文件名。例如,输入
slrt_ex_osc_ucf,然后点击 OK。要打开未配置的模型slrt_ex_osc_ucf,请在 MATLAB 命令行窗口中输入:
model_ucf = 'slrt_ex_osc_ucf';
open_system(model_ucf);

设置 File Log 模块参数
File Log 模块参数定义对记录信号的抽取处理。仿真运行结束后,您通过此模块记录的信号可在仿真数据检查器中查看。在本教程中,请配置一个 File Log 模块。
在 MATLAB 命令行窗口中,输入
slrt_ex_osc_ucf。MATLAB 加载振荡器模型并显示 Simulink 模块图。双击 File Log 模块。
在十进制化文本框中,输入 1。该值表示数据在每个采样间隔内被采集。
点击“确定”,然后在仿真选项卡中点击保存。
设置配置参数
示例模型 slrt_ex_osc_ucf 是一个阻尼振荡器的非实时模型。您可在“配置参数”对话框中输入仿真和实时运行参数。这些参数为 Simulink Coder™ 提供了如何从 Simulink 模型构建实时应用程序的信息。
打开 Simulink 模型并启动目标计算机后,即可输入仿真参数。
在 MATLAB 命令行窗口中,输入
slrt_ex_osc_ucf。在 Simulink 编辑器中,从应用程序选项卡中,点击 Simulink Real-Time。
在实时选项卡中,点击硬件设置。
在“配置参数”对话框中,点击求解器节点。
在求解器选择部分,从类型列表中选择
Fixed-step。从求解器列表中选择一个求解器。例如,选择通用型
solver ode4 (Runge-Kutta)。在求解器详细信息下,于固定步长(基本采样时间)框中输入实时应用的采样时间。例如,输入 0.00025 秒(250 微秒)。创建实时应用程序后,您可以更改此值。若发现某个数值导致目标计算机的 CPU 负载过高,请尝试使用更大的固定步长值,例如 0.0002 秒。模型模块的采样时间只能是固定步长的倍数。若在固定步长中输入
'auto',则基本采样时间将根据模型模块的采样时间进行计算。点击 OK。
在应用程序选项卡中,选择 Simulink Real-Time。此选项用于配置系统目标文件及其他模型设置,适用于 Simulink Real-Time。
在仿真选项卡中,从保存按钮处,点击另存为。
输入文件名。例如,输入
slrt_ex_osc_rt。
启动目标计算机并显示状态监视器
在目标计算机上启动实时操作系统并显示状态监视器。
启动目标计算机将加载实时操作系统。目标计算机等待从开发计算机下载并启动 Simulink Real-Time 软件的实时应用程序,或启动先前下载的实时应用程序。
使用 Simulink Real-Time Explorer 配置好 Simulink Real-Time 产品后,即可启动目标计算机,并将开发计算机连接至目标计算机。在构建实时应用程序之前,请启动目标计算机。构建过程完成后,您将实时应用程序下载到目标计算机。
目标计算机上的状态监视器应用程序显示实时应用程序的状态以及其他目标计算机状态信息。目标计算机显示器支持多会话。您可以选择显示状态监视器(默认,会话 1)或显示目标计算机命令行界面(会话 2)。要显示目标计算机状态监视器:
启动目标计算机。
目标计算机显示会话 1(默认)和目标计算机状态监视器。
要从开发计算机查看状态监视器,可使用 PuTTY 打开 SSH 客户端,并在目标计算机上启动状态监视器应用程序 /usr/target/bin/statusmonitor。
有关详细信息,请参阅目标计算机状态监控器。
关闭模型
bdclose(model_nrt); bdclose(model_rt); bdclose(model_ucf);