文档

生成独立的可执行文件并与之交互使用UDP

这个例子展示了如何使用MATLAB Coder™为流统计生成独立的可执行文件,并使用在MATLAB (TM)中运行的用户界面(UI)对生成的可执行文件进行调优。

介绍

DSP System Toolbox™中的大多数算法都支持使用MATLAB C金宝appoder生成C代码。

MATLAB Coder的一个选项是生成一个独立的可执行文件,通过直接从终端或命令提示符启动可执行文件,它可以在MATLAB环境之外运行。

对于可调算法,最好在运行时使用UI与算法交互。实现这一点的一种方法是通过UDP发送/接收信息。

这个例子在运行时使用UDP在MATLAB和生成的独立可执行文件之间交换。方差、偏差和指数权重值从MATLAB发送到可执行程序。实际的随机信号连同平均值、均方根和方差估计值从独立的可执行文件发送回MATLAB进行绘图。

示例架构

该示例的架构由两个主要部分组成:

  1. streamingStatsCodegenExampleApp:一个matlab函数,可以创建用户界面(UI)以更改方差,偏置和指数加权值。此功能还绘制从独立可执行文件收到的数据。

  2. HelperStreamingStatsEXEProcessing:这是生成独立可执行文件的功能。该函数产生给定的偏置和方差的随机信号,并且计算这种信号的平均值,rms和方差估计。噪声信号以及计算的统计数据通过UDP发送用于绘制(或任何进一步处理)。随时在模拟期间,它也可以响应MATLAB UI的滑块中的更改。

生成代码和构建可执行文件

您可以使用MATLAB Coder从流统计算法代码生成可读和独立的c代码。因为使用UDP,所以生成的代码和可执行文件有额外的依赖项。这些可以在MATLAB安装的/bin目录中找到。

运行脚本HelperStreamingStatsGenerateEXE将调用MATLAB编码器自动生成c代码和一个独立的可执行程序,从算法代码存在HelperStreamingStatsEXEProcessing

运行这个例子

生成可执行文件后,运行该函数streamingStatsCodegenExampleApp启动可执行文件和设计用于与模拟交互的用户界面(UI)。UI允许您调优参数,结果立即反映在模拟中。例如,在模拟运行时为“方差”移动滑块,将影响噪声信号以及绘制的均方根和方差估计值。

UI上还有两个按钮 - “暂停模拟”按钮将保持模拟,直到再次按下它。可以通过单击“停止仿真”按钮来终止模拟。

线程

独立的可执行文件作为一个单独的进程执行。这意味着图形可以与统计计算并行运行。对于涉及图形的高性能计算来说,这是一种很有吸引力的方法。

手动调用可执行文件

而不是用系统命令要从MATLAB中启动可执行文件,可执行文件可以从终端或命令提示程序手动启动。因为此可执行文件包括UDP调用,所以DLL必须在路径上进行正确的行为。看如何在MATLAB之外运行生成的可执行文件为更多的信息。

这个话题有用吗?