主要内容

外部模式模拟与TCP / IP

建立和运行一个外部模式模拟使用TCP / IP或串口(rs - 232)开发的计算机之间的通信通道和选定的硬件。

  1. 创建和配置一个简单的模型。

  2. 构建、部署并启动目标可执行文件。

  3. 调优参数。

创建和配置模型

在这部分的示例中,您创建一个简单的模型,ex_extModeExample。您还创建一个文件夹ext_mode_example存储模型和生成的可执行文件。

创建文件夹和模型:

  1. 从MATLAB®命令行中,键入:

    mkdir ext_mode_example
  2. 使ext_mode_example你的工作目录:

    cd ext_mode_example
  3. 创建一个模型在仿真软件金宝app®与一个正弦波块的输入信号,两个获得在并行块,两个范围块。确保标签获得范围块如图所示。

  4. 定义和分配两个MATLAB工作空间变量,一个B:

    = 2;B = 3;
  5. 获得块和设置它的开放获得参数变量一个

  6. 开放获取块B和设置它获得参数变量B

    当目标应用程序构建和连接到仿真软件在外部模式下,您可以下载新的增益值,执行目标应用程序。金宝app要做到这一点,您可以将新值分配给工作空间变量一个B,或者编辑块参数对话框中的值。有关更多信息,请参见调整参数

  7. 模型的验证操作。开放的街区范围和运行模式。当一个= 2B = 3,出现如图所示的输出。

  8. 保存模型ex_extModeExample

构建目标可执行

设置外部所需的模型和代码生成参数模式目标应用程序。然后,生成代码并构建目标应用程序。

  1. 应用程序在仿真软件将来发布选项金宝app卡,点击运行在硬件板

  2. 运行在硬件板弹出,硬件板一个支持X金宝appilinx®Zynq®硬件板。

  3. 准备部分中,点击硬件设置。配置参数对话框打开时,显示硬件实现设置由系统确定目标文件。

  4. 解算器面板:

    1. 类型字段中,选择固定步

    2. 解算器字段中,选择离散(没有连续状态)

    3. 点击解算器的细节。在固定的大小字段中,指定0.1

    4. 点击应用

  5. 硬件实现>硬件板设置>外部模式窗格中,设置通信接口TCP / IP

  6. 点击好吧。然后保存模型。

目标应用程序运行

您现在运行ex_extModeExample目标可执行和使用仿真软件作为一个交互式运行目标应用程金宝app序的前端。可执行文件在您的工作目录中。目标应用程序运行,建立模型和目标之间的通信。金宝app

目标应用程序运行:

  1. 硬件选项卡,在硬件上运行部分中,点击监视和优化。然后:

    1. 停止时间字段中,指定,这使得该模型运行直到目标应用程序接收一个阻止消息模型金宝app

    2. 一步一步的命令,点击部署

    目标应用程序开始执行,并进入等待状态。

  2. 在模型中开放范围块。信号是不可见的范围,直到你开始执行模型。

  3. 硬件选项卡,在硬件上运行部分中,点击监视和优化。然后,在一步一步的命令,点击连接。这一行动启动仿真软件和目标应用程序之间的握手。金宝app仿真软件和金宝app目标连接时,连接按钮更改断开连接

  4. 在硬件上运行部分中,点击开始执行生成的模型代码。两个作用域模型中显示的输出增益模块A和B。

你建立了仿真软件和运行目标应用程序之间的通信。金宝app您现在可以调整块参数模型,观察参数变化的影响。金宝app

调整参数

你可以改变增益系数的获得块变量分配一个新值一个B在MATLAB工作区。当你改变块的参数值在工作区中模拟时,您必须显式地用这些变化更新框图。当你更新框图,新的值被下载到目标应用程序。

  1. 硬件选项卡,准备部分中,点击批处理模式

  2. 在命令窗口中,将新值分配给这两个变量,例如:

    一个= 0.5;B = 3.5;
  3. 硬件选项卡,准备部分中,点击更新所有参数。金宝app仿真软件更新块参数和下载新的增益值到目标应用程序。

在某些情况下,您还可以调整表情,你使用指定参数值。在模拟改变一个表达式,使用块参数对话框:

  1. 正弦波块对话框中,设置振幅0.5

  2. 点击应用好吧。金宝app仿真软件下载新的块参数值到目标应用程序。

同时断开模型从主机/目标通信和最终目标应用程序的执行,在金宝app硬件选项卡,在硬件上运行部分中,点击停止

你不能改变的样品时间在模拟正弦波块。块样品时间结构的定义模型的一部分,是生成的代码的一部分。因此,如果你想改变一块样品,你必须停止外部模式模拟,重置的样品时间块,并重建可执行文件。

块在外部参数可调谐性取决于模式模拟的方式生成的代码代表块参数。

例如,在获得一个块对话框,你不能改变表达式一个获得在仿真参数。相反,你必须改变变量的值一个在基本工作空间。你不能改变表达式,因为生成的代码不分配存储在内存中获得参数。相反,该代码创建一个字段一个在一个结构:

/ *参数(自动存储)* / struct P_ex_extModeExample_T_ {real_T;/ *变量:* / real_T B;/ *变量:B * / real_T SineWave_Amp;/ *表达:1 * / real_T SineWave_Bias;/ *表达式:0 * / real_T SineWave_Freq;/ *表达:1 * / real_T SineWave_Phase;/ *表达式:0 * /};

生成的代码算法使用该字段代表的代码块获得一个。在这种情况下,全球结构变量ex_extModeExample_P使用类型P_ex_extModeExample_T_:

ex_extModeExample_B。获得一个= ex_extModeExample_P.A * rtb_SineWave;

当你改变的价值一个基地的工作区,模拟下载新值一个在目标应用程序。

你可以改变的表达式正弦波块参数在仿真生成的代码创建了一个领域在全球结构ex_extModeExample_P代表每个参数的块。当你改变块对话框一个表达式,仿真首先评估新表达式。仿真然后下载结果数值对应的目标应用程序结构字段。

看到在生成的代码创建可调校准参数

控制通信缓冲区的内存分配的目标

如果您选择了代码生成>接口>静态内存分配复选框(GRT和ERT目标),代码生成器生成的代码外部模式,只使用静态内存分配(“malloc-free”代码)。选择静态内存分配使静态内存缓冲区大小参数。使用这个参数指定外部模式静态内存缓冲区的大小。默认值是1000000个字节。如果你为你的程序输入值过小,外部模式模拟问题一个内存不足错误当试图比指定分配更多的内存。在这种情况下,增加价值静态内存缓冲区大小场和重新生成代码。

决定分配多少内存,使目标(包括详细模式选择= " -DVERBOSE "使命令行)。因为它执行时,外部模式显示它试图分配的内存数量和可用内存的数量每次尝试分配。如果分配失败,您可以使用此控制台日志以确定所需的值静态内存缓冲区大小字段。

控制外部模式模拟通过外部模式控制面板

外部模式控制面板提供了集中控制的外部模式操作,包括:

外部模式控制面板对话框,打开的硬件选项卡,准备部分中,点击控制面板

连接、启动和停止

外部模式控制面板执行相同的连接/断开连接和启动/停止功能上发现的硬件在仿真软件将来发布选项金宝app卡,明白了总结图形控制外部模式模拟

单击连接按钮连接模型等待或目标应用程序运行。当你连接,按钮更改断开连接按钮。断开连接从目标环境断开您的模型,但是不停止实时代码在目标环境中运行。

单击开始实时代码目标开始运行实时代码按钮命令。而实时代码是在目标环境中运行,按钮更改停止实时代码按钮。停止实时代码目标应用程序停止执行和断开您的模型的目标环境。

目标应用程序上传信号数据主机

外部模式控制面板允许您触发和取消数据上传到主机。上传数据的目的地可以是一个范围,显示块,工作区,或另一个块或子系统中列出模块和子系统与外部兼容模式

手臂触发取消触发按钮提供手动控制的数据上传模块或子系统兼容,除了浮动范围。(对于浮动范围,使用浮动范围外部模式的控制面板)。

  • 触发数据上传模块或子系统兼容,单击手臂触发按钮。按钮更改取消触发

  • 取消数据上传,点击取消触发按钮。该按钮恢复为手臂触发

你可以上传手动或自动触发数据。配置信号和触发器进行数据上传,请参阅目标应用程序配置主机监控信号数据

外部模式兼容的街区的一个子集,包括范围、时间范围、工作空间,允许你日志上传数据到磁盘。配置数据归档,明白了配置主机信号目标应用程序数据的归档

浮动范围部分的外部模式控制面板控制时间和多长时间的数据上传到浮动块范围。当使用外部模式,浮动范围:

  • 没有出现在外部信号与触发对话框。

  • 不归档日志数据到外部模式。

  • 金宝app支持手动触发。

浮动范围部分包含以下参数:

  • 支持数据上传作为一个选项,该选项功能手臂触发按钮浮动范围。目标是断开连接时,连接时手臂触发器的选项控制是否浮动范围。目标是连接时,选择作为一个手臂或取消触发切换按钮。

    • 触发数据上传浮动范围,选择支持数据上传

    • 取消上传数据浮动范围,明确支持数据上传

  • 持续时间编辑字段,指定数量的基础概率步骤外部触发事件后日志浮动范围数据模式。默认情况下,它被设置为汽车导致外部触发信号的持续时间值设置对话框。默认时间值是1000基准利率的步骤。

参数下载到目标应用程序

批量下载外部模式控制面板上的选择启用或禁用批处理参数的变化。

默认情况下,批量下载是禁用的。如果批量下载是禁用的,当你点击好吧应用通过编辑,更改直接屏蔽参数块参数对话框发送到目标。当您执行一个更新图,更改MATLAB发送工作空间变量。

如果您选择批量下载,下载按钮启用。直到你点击下载,更改参数存储在本地。当你点击下载,更改发送在一个单一的传播。

正在等待批量下载参数变化时,外部模式控制面板显示的消息参数变化等待……右边的下载按钮。这个消息仍可见到仿真软件引擎接收通知,新参数已经安装在目标系统的参数向量。金宝app

下一个图显示外部模式的控制面板批量下载选择激活和参数变化悬而未决。

目标应用程序配置主机监控信号数据

作用的触发信号数据上传

在外部模式,目标应用程序上传数据信号到主机取决于触发。触发器是一组数据上传的必须达到的条件开始。触发器可以武装的武装。

  • 武装触发时,软件检查触发条件,允许数据上传开始。

  • 如果触发没有武装,软件不检查触发条件和数据上传不能开始。

  • 触发器可以自动武装,当主机连接到目标时,或手动,通过单击手臂触发外部模式控制面板上的按钮。

当触发武装和触发条件满足,触发器触发和数据上传的开始。

当数据被收集在特定的时间内,触发事件和数据上传完成停止。触发器可以重新武装,或者保持手无寸铁的直到你点击手臂触发按钮。

目标应用程序选择信号上传和配置上传是如何引起的,看到的配置信号数据上传

配置信号数据上传

单击触发信号外部模式的按钮控制面板打开外部信号与触发对话框。

外部信号与触发对话框显示模块和子系统的列表在您的模型中,支持外部模式信号上传。金宝app信息类型的块外部模式兼容,明白了模块和子系统与外部兼容模式

在外部信号与触发对话框,您可以选择信号从目标系统和从外部收集模式。你也可以选择一个触发信号,触发上传的数据根据是否满足一定的信号条件,并定义触发条件。

默认触发选项

前面的图显示了外部触发信号的默认设置对话框。外部触发信号的默认操作对话框简化监测目标应用程序。如果您使用默认设置,您不需要preconfigure信号和触发器。你开始目标应用程序并连接模型引擎。金宝app外部模式选择兼容的街区和触发器装备。信号上传开始立即连接到目标应用程序。

触发选项的默认配置是:

  • 选择所有:在

  • :手动

  • 模式:正常

  • 持续时间:1000

  • 延迟:0

  • 当连接到目标:在

选择要上传的信号

外部模式兼容块在你的模型中出现信号的选择外部触发信号列表对话框。使用该列表来选择你想要查看信号。在选择列,一个X为每个选定的块出现。

选择所有复选框选择所有信号。默认情况下,选择所有被选中。

如果选择所有清除,您可以选择或清除个人信号使用选项。选择一个信号,点击列表条目和选择选择。明确的信号,点击列表条目和选择选择。

清除所有按钮清除所有的信号。

配置触发选项

中描述的作用的触发信号数据上传、信号数据上传取决于一个触发器。触发器定义条件必须满足上传开始。同时,触发器必须武装开始进行数据上传。当触发武装和触发条件得到满足,引发火灾和上传开始了。当数据被收集在特定的时间内,触发事件和数据上传完成停止。

控制信号何时、如何收集数据从目标系统(上传),配置如下触发选项在外部信号与触发对话框。

  • :手册信号。控制按钮或一个信号触发数据上传。

    选择手册指导使用外部模式手臂触发外部模式控制面板上的按钮触发开始上传数据。当你点击手臂触发、数据上传的开始。

    选择信号指导外部模式使用一个触发信号作为触发开始上传数据。当触发信号满足触发条件(即信号在指定的方向穿过触发电平),触发事件发生。(指定的触发条件触发信号部分。)如果触发武装外部模式监控一个触发事件的发生。当触发事件发生时,开始上传数据。

  • 模式:正常的只有一次的。控制是否触发触发器事件完成后枪支泛滥。

    正常的模式、外模式自动枪支泛滥每个触发事件后触发。下一个数据上传时开始引发火灾。

    只有一次的模式、外模式收集只有一个缓冲的数据每次你的胳膊触发器。

    更多的信息模式设置,请参阅配置主机信号目标应用程序数据的归档

  • 持续时间:指定的基准利率步骤触发事件后外部模式上传数据(默认是1000)。例如,如果持续时间设置为1000,基地(最快)模型的率是一秒:

    • 信号采样的基本利率,一秒(1.0赫兹),外部模式收集1000连续的样本在触发事件。

    • 为信号采样两秒(0.5赫兹),外部模式收集500个样本在触发事件。

  • 延迟:指定一个延迟应用到数据收集。延迟代表的时间流逝之间触发事件和数据收集的开始。表达的延迟是基准利率的步骤。它可以积极或消极的(缺省为0)。负延迟对应于前置触发器。当延迟是负的,数据从之前触发事件收集和上传。

  • 当连接到目标:选中或清除。是否一个按钮或一个信号触发数据上传(所定义的),触发器必须武装允许数据上传开始。

    如果您选择此选项,连接到目标武器触发。

    • 如果触发手册数据上传,立即开始。

    • 如果触发信号、监控的触发信号立即开始。开始上传数据时触发信号满足触发条件(如中定义触发信号部分)。

    如果你清楚当连接到目标,手动触发点击手臂触发外部模式控制面板上的按钮。

当模拟外部模式,每个率模型在目标系统上创建一个缓冲区。缓冲区中的每个条目是大得足以容纳所有必需的数据率为一个时间步的每一个信号(时间+数据+外部模式指标识别信号)。循环缓冲区中的条目的数量是由外部触发方式持续时间参数(ExtModeTrigDuration)。分配的内存缓冲的目标信号成正比持续时间和信号上传。的持续时间还提供了一个指示的数量基本利率步骤与外部触发事件后日志数据模式。

持续时间值指定数量的相邻点的数据收集每个缓冲区的数据。你应该输入一个持续时间价值等于连续采样点的数量,你需要收集而不是依靠一系列的缓冲区是连续的。如果你输入一个值小于采样点的总数,你可能会失去在传输时间采样点值从数据缓冲区到MATLAB工作区。仿真软件金宝app的软件维护的连续性只有在一个缓冲区。之间的缓冲区,因为传输时间,一些样品可以省略。

持续时间值会影响限制数据点的价值范围到工作空间块。采样点的数量MATLAB的街区保存工作空间是两个值中较小的一个。设置采样点的数量块保存,清晰限制数据点。然后,用持续时间指定数量的抽样点保存。

选择触发信号

你可以指定一个信号作为触发信号。选择一个触发信号,从菜单的触发选项部分中,选择信号。此操作支持的参数触发信号部分。然后,选择一个信号信号的选择列表中,并单击触发信号按钮。

当您选择一个信号触发,aT出现在触发列的信号的选择列表。在接下来的图,一个范围信号被触发。B范围也是选择查看,显示的吗X选择列。

选择触发信号后,您可以使用触发信号部分定义触发条件和设置触发信号港口元素参数。

设置触发条件

使用触发信号部分的外部信号与触发对话框来设置触发条件和属性。触发信号参数是只有当触发参数启用被设置为信号触发选项部分。

默认情况下,任何元素的第一个输入端口指定触发块会导致引发火灾(端口1,任何元素)。你可以修改这个行为通过调整港口元素中的值触发信号部分。的港口接受一个数字或关键字去年。的元素接受一个数字或关键字任何去年

触发信号部分,你也定义一个触发事件发生的条件。

  • 方向:不断上升的,下降,或要么。旅行的方向信号必须穿过阈值。默认值是不断上升的

  • 水平:一个值指示阈值信号必须在指定的方向交叉引发火灾。默认情况下,水平是0。

  • 不接近:只适用于正常的模式。表达了在基准利率的步骤中,不接近之间的时间是一个触发事件的终止和重新武装的触发器。

修改信号和连接时触发选项

配置信号数据上传后,并连接仿真软件运行的目标可执行文件,您可以修改没有断开从目标信号和触发选项。金宝app

如果触发武装(例如,如果触发选项当连接到目标被选中,这是默认的),外部信号与触发对话框不能修改。修改信号,触发选项:

  1. 外部模式打开控制面板。

  2. 点击取消触发。上传数据的触发和显示停止。

  3. 打开外部信号与触发对话框,修改所需的信号,触发选项。例如,在信号的选择部分,您可以启用或禁用一个范围,和触发选项部分,改变触发模式例如,正常的只有一次的

  4. 点击手臂触发。触发和显示上传数据的简历,你的修改。

配置主机信号目标应用程序数据的归档

在外部模式中,您可以使用仿真软件范围和工作区块归档数据到磁盘。金宝app

了解归档工作特性,考虑当没有启用归档数据的处理。有两种情况下,只有一次的模式和正常模式。

  • 在一次性模式中,在触发事件发生时,每个选定的块将其数据写入工作区,年底将一个模拟世界中。如果另一个只有一次的触发,现有的工作空间数据覆盖。

  • 在正常模式下,外部模式自动枪支泛滥每个触发事件后触发。因此,你可以把一系列一次性正常模式。每个只有一次的在本系列中,除了最后,被称为一个中间结果。因为触发器可以在任何时候火,中间结果写入工作区可能导致不可预知的覆盖工作空间变量。出于这个原因,默认行为是只写最后的结果只有一次的工作区。中间结果被丢弃。如果你知道触发器之间存在足够的时间检查的中间结果,你可以通过选择覆盖默认行为中间结果写入工作区选择。这个选项不保护工作区随后触发被覆盖的数据。

如果您使用一个模型范围块归金宝app档数据到磁盘,打开参数对话框和选择的选项范围日志数据工作区。这些原因所需的选项是:

  • 数据首先从数据缓冲区范围转移到MATLAB工作区,被写入MAT-file之前。

  • 变量名中输入的参数对话框是一样的一个范围的MATLAB工作区和MAT-file。使数据能够得救使一个变量命名的变量名参数保存到MAT-file。

请注意

如果你不选择范围块选项日志数据工作区,数据记录的mat文件创建,但它们都是空的。

使数据归档对话框支持:金宝app

  • 文件夹的笔记

  • 文件记录

  • 自动数据归档

在外部模式控制面板,点击数据归档按钮打开对话框支持数据归档。如果您的模型是连接到目标环境,断开它当你配置数据归档。使其他控件的对话框中,选择启用归档

这些支持的操作使数据归档对话框。金宝app

文件夹的笔记

添加注释的一组相关数据文件在一个文件夹,在支持数据归档对话框中,单击编辑目录请注意。MATLAB编辑器打开。评论,你想保存到一个文件在此窗口中指定的文件夹中。默认情况下,言论是保存到文件夹最后写入的数据归档。

文件记录

为单个数据文件添加注释,使数据归档对话框中,点击编辑文件请注意。一个文件finder窗口,默认情况下设置为你写的最后一个文件。选择一个MAT-file打开一个编辑窗口。在这个窗口,添加或编辑评论,你想要保存你的个人MAT-file。

自动数据归档

配置自动写的日志结果到磁盘,可选地包括中间结果,使用启用归档它允许选择和控制。对话框提供了以下相关的控制:

  • 目录:指定的文件夹保存数据。如果您选择增加目录时引发的武装、外部模式附加后缀。

  • 文件:指定的名称保存数据的文件。如果您选择增量文件后只有一次的、外部模式附加后缀。

  • 增加目录时引发的武装:每次你点击手臂触发外部模式使用不同的文件夹按钮,写日志文件。例如,文件夹命名为增量dirname1,dirname2,等等。

  • 增量文件后只有一次的:新数据缓冲区保存在增量文件:filename1,filename2,等等。文件自动递增发生在正常模式。

  • 附加文件后缀变量名:每当外部模式增量文件名称,每个文件包含变量具有相同的名称。选择附加文件后缀变量名结果在每个文件包含独特的变量名。例如,外部模式保存变量命名xdata在增量文件(file_1,file_2等等)xdata_1,xdata_2,等等。这种方法支持mat文件加载到金宝app工作区和比较变量在MATLAB命令提示符。没有独特的名称,每个实例的xdata在MATLAB将覆盖前一个工作区。

  • 中间结果写入工作区:如果你想要的金宝app仿真软件编码器™软件将中间结果写入工作区,选择这个选项。

总结图形控制外部模式模拟

你可以控制一个XCP外部模式模拟通过:

  • 硬件在仿真软件将来发布选项金宝app卡。来显示硬件选项卡,从应用程序在仿真软件将来发布选项金宝app卡,点击在定制的硬件上运行

  • 外部模式控制面板。打开这个对话框,在模型编辑器金宝app硬件选项卡,准备部分中,点击。然后下信号监测与跟踪,点击控制面板

这个表给硬件标签的功能,您可以使用它们来控制外部模式模拟。

外部模式操作 硬件选项卡 外部模式控制面板按钮
将您的模型连接到等待或目标应用程序运行 在硬件上运行>
连接
按钮
连接
开始实时代码在目标环境中运行 开始按钮 开始实时代码
断开你的模型与目标环境(不停止运行的实时代码) 在硬件上运行>
断开连接
按钮
断开连接
目标应用程序停止执行和断开您的模型与目标环境 停止按钮 停止实时代码

模块和子系统与外部兼容模式

兼容的块

在外部模式中,您可以使用以下类型的块来接收和查看信号从目标应用程序上传:

  • 浮动范围和范围

  • 频谱分析仪和时间范围块从DSP系统工具箱™产品

  • 显示模块

  • 工作区块

  • 用户编写的功能块

    外部模式的方法是内置函数API。这种方法允许用户编写的模块来支持外部模式。金宝app看到matlabroot/金宝app模型/ include /simstruc.h

  • XY图

你可以指定某些子系统信号浏览子系统和使用它们来接收和查看信号从目标应用程序上传。看到查看信号子系统为更多的信息。

你选择外部模式兼容模块和子系统,手臂触发器,通过使用外部信号与触发对话框。默认情况下,这些块选择模型中,手动触发将武装当连接到目标应用程序。

查看信号子系统

查看信号子系统是一个原子子系统,封装处理和浏览从目标系统接收到的信号。查看信号子系统只运行在主机上,并在目标系统不生成代码。查看信号子系统运行在正常、加速器、快速加速器,和外部模拟模式。

请注意

查看信号子系统是不活跃如果放在一个银或公益诉讼组件,如顶级模特在硅或公益诉讼模式,模型块在硅或公益诉讼模式,或银或公益诉讼。然而,银或公益诉讼组件可以满足信号浏览子系统运行在一个受支持的模式。金宝app

查看信号子系统是有用的在你想过程或状态的情况下信号之前查看或记录,但是你不想在目标系统上执行这些任务。通过使用一个信号浏览子系统,可以在目标系统上生成更小、更高效的代码。

像其他外部模式兼容模块,信号显示在浏览子系统外部信号与触发对话框。

声明一个子系统信号浏览子系统:

  1. 在块参数对话框中,选择治疗作为原子单元选择。

    有关原子子系统的更多信息,请参阅生成子系统的代码作为单独的函数和文件(金宝app仿真软件编码器)

  2. SimViewingDevice属性,可以使用set_param命令:

    set_param (“blockname”、“SimViewingDevice”,“上”)

    “blockname”子系统的名称。

  3. 确保子系统符合下列要求:

    • 它必须是一个纯沉块。也就是说,它不能包含外港块或数据存储块。它可以包含转到只有相应的块块中包含的子系统的边界。

    • 它不能有连续的状态。

下面的模型,sink_examp,包含一个原子子系统,theSink

子系统theSink增益和偏移量适用于它的输入信号,并将其展示在块范围。

如果theSink被声明为一个信号浏览子系统,生成的目标应用程序仅包括正弦波的代码块。如果theSink外部触发信号的选择和武装对话框中,目标应用程序上传正弦波信号theSink在模拟。然后您可以修改的参数块内theSink并观察上传信号。

如果theSink没有声明为一个信号浏览子系统,其增益常数,和块作为子系统的代码在目标系统上运行。正弦波信号将上传模型引擎被这些块处理后,并查看金宝appsink_examp / theSink / Scope2。处理要求在目标系统上增加了额外的信号处理,以及从主机下载块参数的变化。

金宝app支持块数据归档

在外部模式中,您可以使用以下类型的块来归档数据到磁盘:

  • 范围块

  • 工作区块

配置数据归档使用启用数据归档对话框,所述配置主机信号目标应用程序数据的归档

使用外部模式以编程方式

您可以运行外部模式模拟从MATLAB命令行或在脚本编程。使用get_paramset_param命令来检索和设置模型仿真命令行参数的值,例如SimulationModeSimulationCommand和外部模式命令行参数,如ExtModeCommandExtModeTrigType

下面的模型仿真命令假设仿真软件模型是开放的,并且你加载一个目标应用程序的模型将连接使用外部模式。金宝app

  1. 改变模型的模型外部模式金宝app:

    set_param (gcs、“SimulationMode”,“外部”)
  2. 打开模型连接到目标应用程序加载:

    set_param (gcs、“SimulationCommand”,“连接”)
  3. 开始运行目标应用程序:

    set_param (gcs,‘SimulationCommand’,‘开始’)
  4. 目标应用程序停止运行:

    set_param (gcs、“SimulationCommand”,“停止”)
  5. 断开目标应用程序的模型:

    set_param (gcs,‘SimulationCommand’,‘断开’)

调整工作空间参数,改变它的值在命令提示符。如果参数是一个工作区金宝appSimulink.Parameter对象,分配的新值价值财产。

myVariable = 5.23;myParamObj。价值= 5.23;

下载工作区参数在外部模式下,您更新模型图。下面的模型仿真命令启动模型更新:

set_param (gcs、“SimulationCommand”,“更新”)

触发或取消上传数据范围、使用ExtModeCommandarmFloatingcancelFloating,或armWiredcancelWired。例如,触发,然后取消上传数据连接(浮选尾矿)范围:

set_param (gcs ExtModeCommand, armWired) set_param (gcs,‘ExtModeCommand’,‘cancelWired’)

下表列出了外部模式中,您可以使用命令行参数get_paramset_param命令。表提供了简要的描述,有效值(粗体突出违约),和一个映射到外部模式对话框的等价物。外部模式参数是等价的接口窗格中选择配置参数对话框,看看模型配置参数:代码生成界面(金宝app仿真软件编码器)

外部模式命令行参数

参数和值 对话框相同 描述
ExtModeAddSuffixToVar
,
使数据归档:附加文件后缀变量名复选框 增加变量名称为每个增加文件名。
ExtModeArchiveDirName
特征向量
使数据归档:目录文本字段 数据保存在指定的文件夹中。
ExtModeArchiveFileName
特征向量
使数据归档:文件文本字段 数据保存在指定的文件中。
ExtModeArchiveMode
特征向量- - - - - -,汽车,手册
使数据归档:启用归档复选框

激活自动数据归档功能。

指定手册、运行set_param (gcs、“ExtModeArchiveMode”,“手册”)

注意,如果指定汽车,ExtModeAutoIncOneShot被设置为

ExtModeArmWhenConnect
,
外部触发信号:当连接到目标复选框 手臂触发器一旦金宝app仿真软件编码器软件连接到目标。
ExtModeAutoIncOneShot
,
使数据归档:增量文件后只有一次的复选框 增量文件中保存新数据缓冲区。
ExtModeAutoUpdateStatusClock(微软®窗户®平台只)
,
不可用 不断上传和显示目标窗口状态栏时间模型。
ExtModeBatchMode
,
外部模式控制面板:批量下载复选框 启用或禁用下载参数以批处理模式。
ExtModeChangesPending
,
不可用 ExtModeBatchMode启用,表明参数是否保留在队列参数下载到目标。
ExtModeCommand
特征向量- - - - - -armFloating,armWired,cancelFloating,cancelWired
  • armFloatingcancelFloating相当于外部模式控制面板复选框选择结算浮动范围>支持数据上传

  • armWiredcancelWired相当于外部模式控制面板按钮手臂触发取消触发

目标应用程序发出一个外部模式命令。
ExtModeConnected
,
外部模式控制面板:连接/断开连接按钮 显示的状态与目标应用程序的连接。
ExtModeEnableFloating
,
外部模式控制面板:支持数据上传复选框 启用或禁用触发器的武装并取消当建立连接与浮动范围。
ExtModeIncDirWhenArm
,
使数据归档:增加目录时引发的武装复选框 每次写日志文件增量文件夹触发器装备。
ExtModeLogAll
,
外部触发信号:选择所有复选框 上传可用信号从目标主机。
ExtModeParamChangesPending
,
不可用 金宝app仿真软件编码器软件是连接到目标ExtModeBatchMode启用,表明参数是否保留在队列参数下载到目标。更有效的比ExtModeChangesPending,因为它检查连接到目标。
ExtModeSkipDownloadWhenConnect
,
不可用 没有下载参数连接到目标应用程序。
ExtModeTrigDelay
整数(0)
外部触发信号:延迟文本字段 指定的时间(表示在基准利率的步骤),过后一个触发器之间发生和数据收集的开始。
ExtModeTrigDirection
特征向量- - - - - -不断上升的,下降,要么
外部触发信号:方向菜单 指定的方向信号必须旅行穿过阈值。
ExtModeTrigDuration
整数(1000年)
外部触发信号:持续时间文本字段 指定的基准利率步骤外部模式是日志数据后触发的事件。
ExtModeTrigDurationFloating
特征向量- - - - - -整数(汽车)
外部模式控制面板:持续时间文本字段 为浮动范围指定持续时间。如果汽车指定的值ExtModeTrigDuration使用。
ExtModeTrigElement
特征向量- - - - - -整数,任何,去年
外部触发信号:元素文本字段 指定的元素的输入端口指定触发块可以导致引发火灾。
ExtModeTrigHoldOff
整数(0)
外部触发信号:不接近文本字段 指定基准利率之间的步骤终止和触发事件时触发重新武装。
ExtModeTrigLevel
整数(0)
外部触发信号:水平文本字段 指定阈值触发信号必须交叉火触发器。
ExtModeTrigMode
特征向量- - - - - -正常的,一次通过
外部触发信号:模式菜单 指定每个触发器事件触发后自动重新武装,还是只有一个缓冲的数据收集每次触发装备。
ExtModeTrigPort
特征向量- - - - - -整数(1),去年
外部触发信号:港口文本字段 指定的输入端口指定触发块元素可以导致引发火灾。
ExtModeTrigType
特征向量- - - - - -手册,信号
外部触发信号:菜单 指定是否开始记录数据时触发武装或者指定触发信号满足触发条件。
ExtModeUploadStatus
特征向量- - - - - -不活跃的,武装,上传
不可用 返回的状态外部模式上传机制——不活跃,武装,或者上传。
ExtModeWriteAllDataToWs
,
使数据归档:中间结果写入工作区复选框 中间结果写入工作区。

动画Stateflow图表在外部模式

如果你有Stateflow®在外部模式,您可以激活一个图表。在外部模式下,你可以在图表动画状态,并查看测试点的信号在一个浮动的范围或查看器的信号。

动画状态在外部模拟模式

动画状态图中外部模式:

  1. 加载图你想动画到目标机器。

  2. 在配置参数对话框中,选择外部模式复选框。

  3. 外部模式控制面板对话框打开。

  4. 点击触发信号

  5. 在外部信号与触发对话框中,设置这些参数。

    : 选择:
    信号的选择窗格 图你想动画
    触发选项窗格 当连接到目标复选框
    触发选项窗格 正常的从下拉菜单模式
  6. 构建模型来生成一个可执行文件。

  7. 目标应用程序部署。

  8. 动态仿真模块连接金宝app到目标应用程序。

  9. 开始执行生成的模型代码。图强调状态时执行。

查看测试点数据在浮动范围和信号观众

模拟图在外部模式时,您可以指定图表数据局部范围的测试点和测试点数据视图在浮动范围和信号观众。

查看测试点数据在模拟外部模式:

  1. 打开模型浏览器,对于每一个您想要查看的数据,按照以下步骤:

    1. 在中间内容窗格中,选择感兴趣的国家或本地数据。

    2. 在正确的对话框窗格中,选择日志记录选项卡并选择测试点复选框。

  2. 从一个浮动的范围或信号查看器,单击信号选择按钮:

    信号选择器对话框打开。

  3. 在信号选择器模型层次结构窗格中,选择图表。

  4. 在信号选择器列表内容菜单中,选择测试点/记录信号然后选择你想要查看的信号。

  5. 模拟模型在外部模式中描述动画状态在外部模拟模式

    范围或查看器显示的值测试点的信号作为模拟运行。

有关更多信息,请参见快速加速器的作用域和观众的行为模式(金宝app模型)

TCP / IP和串行外部模式的局限性

功能 细节
更改参数

一般来说,你不能改变一个参数,如果这样做会导致模型的结构的变化。例如,你不能改变

  • 的状态数、输入或输出的一块

  • 样品时间和样本的数量乘以

  • 连续系统的集成算法

  • 模型的名称或一个街区

如果你把这些变化的框图,然后你用新生成的代码必须重建计划。

你可以改变参数传递函数和状态空间表示块具体的方法:

  • (分子和分母多项式的参数)转移Fcn(连续和离散)和离散滤波器块可以更改(只要不改变的状态数)。

  • 零条目状态方程和零极点(包括连续和离散)块的指定或计算参数(A, B, C, D矩阵得到zero-pole整数变换)外部模拟开始无法改变一次。

  • 整数块,如果指定的矩阵规范化实现可控的,那么所有更改A, B, C, D矩阵保存这个实现和矩阵的尺寸是允许的。

如果模型框图不金宝app匹配外部程序,Simulink建立一个错误说明校验和不匹配。校验和考虑上面的模型,而不是引用的模型。使用更新后的重建目标应用程序框图。

上传数据

上传的数据值定点或枚举类型不支持工作区参数。金宝app

显示在模拟信号值

图形显示在模型中描述(信号值显示信号值在模型图(金宝app模型)不支持)。金宝app例如,您不能使用数据显示在模拟菜单选择悬停时显示值标签,当点击切换值标签,显示值的选定的端口

可调结构参数

不支持上传或下载的可调结构参数。金宝app

纯整数代码

支持纯整数代码。金宝app

如果你不指定- tffinalTime在执行命令,目标应用程序运行生成的模型代码无限期,忽略StopTime

如果您指定- tffinalTime在执行命令:

  • finalTime值代表基准利率钟表的滴答声,而不是秒。

  • 的最大价值finalTime在蜱虫,MAX_int32_T

  • 当16位或32位的计数器溢出,仿真时间范围块返回零。

归档数据

归档数据到磁盘,支持范围和工作空间块。金宝app然而,其他不支持范围进行数据归档。金宝app例如,您不能使用浮动范围块或观众和发电机管理器查看器对象归档数据。

作用域引用模型

在模型层次结构,如果顶部模型模拟外部模式和参考模型模拟在正常或加速器模式,范围在参考模型中不显示。

然而,如果顶级模特改变模拟在正常模式下,不同范围的行为被引用的模型之间的正常和加速器模式。作用域引用模型模拟在正常模式显示,范围在引用模型模拟在加速器模式不显示。

仿真开始时间

不支持非零仿真开始时间。金宝app在配置参数对话框中,解算器窗格中,离开开始时间设置为默认值0.0

File-scoped数据

File-scoped数据不支持,例如,数据项的应金宝app用内置的自定义存储类,FileScope。File-scoped数据没有外部访问。

信号使用自定义存储类

上传的信号不支持自定义存储类(CSC)。金宝app

使用printf语句

给目标应用程序在目标硬件错误和信息消息显示,您可以使用printf调用。对于一些目标硬件的使用printf语句可以增加外部模式二进制文件的大小。禁用printf电话,指定预处理器宏定义EXTMODE_DISABLEPRINTF为你的目标应用程序的编译器。

命令行参数

您可以使用命令行参数为目标应用程序运行。这些限制适用:

  • 解析命令行参数的要求sscanf函数,它增加了一些目标硬件的程序大小。

  • 一些目标应用程序不接受命令行参数。

如果你的目标硬件不支持命令行参数的解析,说明预处理器宏定义金宝appEXTMODE_DISABLE_ARGS_PROCESSING = 1为你的目标应用程序的编译器。

更换- w选项,您可以使用此命令来指定目标应用程序进入和保持在等待状态,直到收到连接信息模型:金宝app

set_param (modelName,“OnTargetWaitForStart”,“上”);
构建过程提供所需的选项(-DON_TARGET_WAIT_FOR_START = 1编译器。

行代码生成

生成的代码行格式不受支持。金宝app

相关的话题