- android - 多次调用 OnPrimaryClipChangedListener
- android - 无法更新 RecyclerView 中的 TextView 字段
- android.database.CursorIndexOutOfBoundsException : Index 0 requested, 光标大小为 0
- android - 使用 AppCompat 时,我们是否需要明确指定其 UI 组件(Spinner、EditText)颜色
我有一个 Simulink 模型,目前正在从脚本(即不是函数)运行。该脚本将变量值写入 MATLAB 工作区,运行模型仿真(使用这些值),然后模型将其他值写入工作区。如果我尝试将脚本转换为一个函数(即通过将 function [output] = runSim()
放在文件的顶部)然后 Simulink 提示它不知道变量,大概因为它们不在 MATLAB 工作区中,而是在函数范围内。
除了将它们粘贴到工作区之外,是否有一种优雅的方法来为 Simulink 模型提供输入并从 Simulink 模型中获取输出?
最佳答案
这并不明显,但您可以从 sim()
命令和调用函数的工作区输入/输出数据。我以前做过,并且在工作中有一个例子,但要到星期一才能到那里进行验证。但是,请尝试列出的解决方案 on Mathworks's site :
Solution:
When using variable mask parameters in Simulink, the base workspace is the default source workspace of Simulink. However, by using the SIMSET command, this workspace can be changed. SIM is then used with this options structure created by SIMSET. The following is an example on how to do this.
options = simset('SrcWorkspace','current');
sim('modelname',[],options)
...虽然显然由于与并行计算工具箱不兼容,这在 R2009b 中被弃用了 >:( 看起来正确的解决方案是使用 assignin()
将变量显式推送到模拟的模型工作区(不同于基础工作区)。
http://www.mathworks.com/matlabcentral/newsreader/view_thread/292544
You have 2 options:
- For releases before R2009b, look at the SIMSET documentation. It allows you to set the "SrcWorkspace" property to "current" to use the data from your function.
http://www.mathworks.com/support/solutions/en/data/1-1BWDA/?solution=1-1BWDA
- In newer releases, this option is deprecated because it is not compliant with the Parallel Computing Toolbox and PARFOR. What I recommend is:
http://www.mathworks.com/support/solutions/en/data/1-ASPEIV/?solution=1-ASPEIV
关于matlab - 如何在不将输入放入工作区的情况下向 Simulink 模型提供输入,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/5279199/
Simulink 库和模型引用之间的区别是什么(如果有的话)。在不同情况下使用它们中的任何一个都有优势吗? 最佳答案 库和模型引用的主要目的是一样的:方便simulink模型的重用。当您使用库时,si
我已经为我正在尝试构建的原型(prototype)构建了一个 simulink 模型。我想通过将信号数据应用于 simulink 模型来测试该模型,并且我使用(来自工作区) block 将数据输入到模
我的问题 我有一个 SIMULINK 模型,它有一个反馈循环(又名代数循环),会导致模拟错误。我最初的解算器配置是带有 Dormand-Prince 的固定步长(阶数 5)。我还尝试了阶数 3 的固定
我正在尝试从 M 文件控制 simulink。我想在 M 文件中做的是为 simulink 模型提供一些输入,运行 simulink 模型,在 0.6 秒更改一个输入值,然后使用新输入继续运行 sim
我正在尝试确定为我的工作购买这两个中的哪一个。我用过 SIMULINK 但不是 LabVIEW。有没有人用过两者并想提供一些细节?我的调查标准是用户友好性、库和模板功能的可用性、实时探测设施、COTS
我希望能够双击 .slx 文件并在 Simulink 中打开它。如果 MATLAB 已经打开,我希望它不要打开 MATLAB 的第二个实例。 挑战包括: 无法找到 .exe 来关联 .slx 文件 谷
我有很多由 simulink coder 自动生成的 .c 文件。分析这些文件以了解 simulink 模型非常耗时,据我所知,没有将 c 代码转换为 simulink 模型的反向工具。 那么有没有可
我需要通过 BB 硬件内的 simulink 编译一个返回 .avi 视频信号的 block ,如“来自多媒体文件”simulink block 。 我尝试使用“来自多媒体文件” block 编译 S
如下图所示,我想在示波器上看到整流器的输出,但无法将其连接到示波器,因为该连接中出现红色虚线 最佳答案 要在物理建模世界和标准 Simulink 世界之间进行转换,您需要使用 PS-Simulink
问题 我有一个相当大的液压气动系统模型,由大约 20-25 个不同的子系统组成。然后,每个子系统都由数字逻辑、边沿延迟 block 和外部输出端口(实际输出)的网关组成。此外,一些小型构建 block
我在运行 simulink 的 block 回调时遇到了很多麻烦,而且文档严重不足且杂乱无章。看来我误解了 Simulink 如何编译模型的多个要点,但由于 StackOverflow 不喜欢多部分问
我们正在 dsPIC 上开发电机 Controller 。我们打算使用 Simulink 对电机控制算法进行建模,并使用 Real Time Embedded Workshop 将 Simulink
我想以编程方式调整一些 Simulink 参数,即指定外部输入和初始状态。 Mathworks 关于 Data Import/Export 的帮助文档展示了如何以视觉和编程方式执行此操作。显然对于外部
我在 Simulink 中模拟轴系统,我必须在其中找到质量的位移。由于轴和滑轮,我不确定如何在 Simulink 中建模。我正在查看文档,我看到的最接近轴的是车轮和轴 block 。但是轴是通过一个类
我如何在 simulink 中定义一个 block ,它在定义的频率范围内具有统一(或至少尽可能统一)的频率内容? 最佳答案 使用正弦波 block ,并输入一个频率值向量,这将为您提供一个正弦波向量
为了模拟某些流程,我在获取自建模块的预定义工作顺序时遇到问题。 我如何确定,例如,A block 必须在 B block 和 C block 开始工作之前完成? 问题是,有些 block 会在其他 b
我的问题特定于 SIMULINK、Model and Code Generation Advisor 和 Embedded Coder 我在更大的模型(即集成系统)中使用了引用模型,我的引用模型具有相
真的有两个问题,但我想让它更具描述性: 我正在实现一个涉及复向量矩阵乘法的调制器: 举个例子: cck_encoding_table(1,:)= [ 1j 1 1j -1 1j 1 -1j
我正在尝试在 SIMULINK 中实现一个脉冲发生器,它需要知道前 2 个输入值,即我需要知道输入信号的前 2 个状态值。另外,我需要知道之前的输出值。 我的伪代码是: IF !input AND
我有一个 simulink 模型,其中包含我想要观察的范围输出。但是,我希望停止时显示在先前模拟中的数据能够连续显示在示波器窗口中,或者保存到某个文件中。有什么简单的方法可以实现这一目标吗?提前致谢。
我是一名优秀的程序员,十分优秀!