主要内容

将App Designer App添加到倒立摆模型中

这个例子展示了如何从Simulink Real-Time应用程序流信号到App Designer仪表盘应用程序。万博1manbetx该示例根据模型构建实时应用程序slrt_ex_pendulum_100Hz.仪表盘包含以下应用程序设计器组件:

  • 目标选择下拉列表-显示所有可用的目标计算机。

  • 连接/断开按钮-连接或断开下拉窗口中选择的目标计算机。

  • 加载按钮-将应用程序加载到目标计算机。

  • 启动/停止按钮-启动或停止目标计算机上的应用程序。

  • 停止时间编辑字段-显示和设置目标计算机上加载的应用程序的停止时间。

  • 状态消息框-显示目标计算机状态信息。

  • 轴-显示两个倒立摆和推车系统的动画。

  • 轴-显示信号输出的响应扰乱钟摆。

  • 轻推购物车按钮-将输入(轻推)应用到保持摆的购物车。

  • 参考位置旋钮-改变钟摆和小车系统的参考位置。

  • 参考变化模式旋钮-在钟摆和小车系统的参考位置上添加一个变化模式。

  • 振幅滑块-调整所选参考变化模式的振幅。

  • 频率滑块-修改所选参考变化模式的频率。

为了在实时应用程序和仪表面板应用程序之间传输信号和参数数据,应用程序使用仪表对象。

开放示例和加载模型

openExample(“SlrtAddAppDesignerAppToInvertedPendulumModelExample”);
load_system (fullfile (matlabroot,“工具箱”“slrealtime”“例子”“slrt_ex_pendulum_100Hz”));

启动目标计算机并构建实时应用程序

这些任务生成实时应用程序,将数据流发送到App Designer仪表盘应用程序。

  1. 启动目标计算机。

  2. 打开模型slrt_ex_pendulum_100Hz

  3. 将开发计算机与目标计算机连接。构建slrt_ex_pendulum_100Hz模型。

  4. 将实时应用程序部署到目标计算机。

在MATLAB命令窗口中,输入:

set_param (“slrt_ex_pendulum_100Hz”“RTWVerbose”“关闭”);tg = slrealtime;slbuild (“slrt_ex_pendulum_100Hz”);负载(tg、“slrt_ex_pendulum_100Hz”);
### # Created MLDATX .\slrt_ex_pendulum_100Hz. ### #创建MLDATX .\slrt_ex_pendulum_100Hz. \mldatx模型建立目标:总结构建模型重建行动的理由  ======================================================================================================= slrt_ex_pendulum_100Hz代码生成和编译代码生成信息文件不存在。建造时间:0h 0m 47.816s

运行App Designer Instrument Panel App

App Designer仪表盘应用程序slrt_ex_pendulumApp提供启动实时应用程序并与之交互的控件slrt_ex_pendulum_100Hz

1.运行应用程序。启动app Designer应用程序slrt_ex_pendulumApp.mlapp然后创建句柄应用程序,在MATLAB命令窗口中输入:

应用= slrt_ex_pendulumApp;

2.要连接到可用的目标计算机,请单击连接按钮。按钮上的文本将切换到“断开”和负载按钮将被启用。

3.要将应用程序加载到目标计算机,请单击负载按钮。在目标计算机上加载应用程序后,开始按钮,停止时间编辑字段将被启用。

4.要设置应用程序的停止时间,请在编辑字段中输入您喜欢的停止时间并点击输入按钮。

5.要开始运行应用程序,请单击开始按钮。

6.要打乱每辆车上的钟摆的平衡,点击推动按钮。您可以通过使用按钮旁边的值选择来调整轻推幅度,通过调整参考位置旋转器的值来更改参考位置,或为参考位置选择一个变化模式。

应用回调代码

仪器面板应用程序功能由回调代码提供。

仪器面板应用程序中的回调代码中的注释slrt_ex_pendulumApp.mlapp描述回调操作和编程建议。要查看回调代码,请打开slrt_ex_pendulumApp.mlapp,然后单击代码视图选项卡。在命令窗口中,输入:

编辑slrt_ex_pendulumApp

在参考模型中为信号指定块路径

要从模型中的信号中流化数据,请参见connectLine函数的setupInstrumentation(应用)函数。

updateAnimationCallback函数

对于每个AcquireGroup,该函数检查自上次调用回调以来是否有新的数据。如果有数据,该函数将更新动画对象。

基于采样率和抽取的信号被放置在获取组中,这样在一个获取组中的所有信号都有相同的时间向量。

使用获取组更新坐标轴和动画

在回调代码中,此处理可见为AcquireGroupData的信号组updateAnimationCallback函数。

关闭App和模型

仪表板app手柄应用程序提供关闭应用程序的访问。

关闭应用程序。在MATLAB命令窗口,输入:

关上(app.UIFigure)

关闭打开的模型。在命令窗口中,输入:

bdclose (“所有”);