问题标签 [simulink]
For questions regarding programming in ECMAScript (JavaScript/JS) and its various dialects/implementations (excluding ActionScript). Note JavaScript is NOT the same as Java! Please include all relevant tags on your question; e.g., [node.js], [jquery], [json], [reactjs], [angular], [ember.js], [vue.js], [typescript], [svelte], etc.
matlab - 无法在 Simulink 的 Matlab 函数中输出多维矩阵
例如,我有创建矩阵 2x2 的函数:[1 2; 3 4] 我有这么简单的功能:
在 Matlab 窗口中,我看到了正确的结果:
但在 Simulink 中,我总是得到 [1;2;3;4]。我的错误在哪里?
PS我忘记删除函数的参数x,因为在实际函数中我根据参数x制作矩阵。但它在我们的示例中不起作用
matlab - 在 Simulink 中枚举模块的输入和输出
如何在 Simulink 中有问题地枚举模块的输入和输出句柄?到目前为止,我已经尝试使用以下内容,其中 'sfunc' 已设置为块句柄:
它返回一个二维数组,其大小等于指定端口的数量。但是当我运行以下命令时(使用 'inports' 或 'outports')
它指出数组必须是向量。我会以正确的方式解决这个问题吗?如果是这样,我如何将数组转换为向量?本质上,我要做的是获取连接到块的线的句柄,以便稍后在用新块替换当前块后将它们链接起来。对此的任何帮助将不胜感激。
matlab - Simulink:如何在嵌入式 matlab 函数中使用工作区中的对象实例?
在这种情况下,我的基础工作区中有一个神经网络 (NN) 实例,我希望在 Simulink 仿真中使用该实例。我将 NN 的使用包装在嵌入式 Matlab 函数中,其中输入参数应由网络使用。
原则上我希望做这样的事情:
net
目标是从基础工作区(这是 class 的一个实例)中获取对象network
。
这是我过去evalin
从工作区读取变量的问题:
这不会编译,因为 simulink 似乎认为 net 是一个数组并且net(...)
是数组下标(实际错误消息:不支持下标到 mxArray 中)。
在我看来,Simulink 需要对用于编译嵌入式 matlab 函数的任何对象进行完整定义,对吗?甚至有解决方案吗?我可以使用Simulink.Signal
某种方式包装 NN 并将其作为参数添加到功能块吗?
编辑
我也尝试使用从文件load
加载序列化net
对象。那也没有用。似乎与编译器认为s
是mxArray
.
解决方案
我终于屈服并选择了 matlab 功能块,它看起来像上面的任何示例。
matlab - 在 simulink 中使用 get_param 返回一个数组
我有一个名为 mxsf 的 S-Function。当我运行以下命令时:
我当然得到了返回的句柄,但它以 [88.0012] 而不是 88.0012 的形式返回。我有一个用于与 matlab/Simulink 接口的内部 .NET 库,并且我们有一个函数应该在 Simulink 中获取变量的双精度值,但如果双精度值在括号之间,它将不起作用。如何让 get_param 返回句柄而不将其粘贴在数组中?还值得注意的是,这并不总是发生(有时 get_param 会在不将其放入数组的情况下获得句柄,但我不知道如何强制执行此操作)。对此的任何帮助将不胜感激。
time - 如何在 Simulink 中及时更改变量?
我有一些处理(轮对的移动)。轮对有质量,它是可变的,它在init.m
文件中声明(例如M=1;
)
现在我希望在这个过程中轮对的质量每 2 秒更换一次。如何将新的质量值从 Simulink 保存到 M 变量?
command-line - 如何从命令行从 Simulink 模型生成 ASAP2 (*.a2l)?
我正在使用 Matlab,需要使用 Real-Time Workshop 工具包从命令行获取从 Simulink 模型导出的 ASAP2 (a2l) 文件,以便它可以作为批处理操作的一部分运行。
我知道该过程可以通过遵循通过 GUI 从模型生成 ASAP2 文件的标准过程来实现,但是在这种情况下这对我没有用,因为它需要用户与 GUI 交互。
我已经在 Google 和 Mathworks 论坛上搜索了这个问题的答案,但一无所获;那么有人知道从 Windows CLI 生成 a2l 文件的命令吗?
谢谢你的尽心帮助。
matlab - 使用 Xilinx 模块集在 Simulink 中进行 DBPSK 解调
我正在尝试使用 Simulink 和 Xilinx 模块组构建 DBPSK 解调器。我像这样计算连续样本的相位差:
所以,现在我需要根据相位差是 0 还是 pi 将这些相位差映射到符号 0 或 1。
我不确定如何在 Simulink(Xilinx)中进行相位到符号映射。顺便说一句,这是 Matlab 版本:
请让我知道,如果我的方法是正确的,以及如何进一步
boolean - 如何将布尔值输入到 Simulink C s 函数
我可以通过将布尔数据定义为 int32 将布尔数据输入到 C s 函数中(参见下面的代码)。如何输入 SS_BOOLEAN 或 SS_UINT8 类型的布尔数据?我在 Simulink 模型和 s-function 中明确指定了信号数据类型,但是当我将数据定义为 boolean 或 uint8 时,我得到了奇怪的数字,而不是 1 或 0。
更新(2011 年 5 月 20 日):我尝试了MikeT 提出的解决方案,但无济于事。作为输出,我期待 [10 20 30] 但得到 [1 2 3]。下面是 Simulink 模型、命令窗口的输出和 s-function 代码:
simulink - 在simulink中关闭网格捕捉
在 Simulink 中有没有办法禁用网格捕捉?如果是这样,它是如何以编程方式完成的?我似乎在他们的文档中找不到有关禁用此功能的任何内容。
matlab - Xilinx Simulink 中的信号正弦波
我正在实现一个 DQPSK 调制器和解调器。我想在 Simulink 中计算 exp(1j*Phase)。
我怎样才能实现这样的模型?
这是模型中计算相位的部分:
顺便说一下,模型中的 ROM3 块存储值:0、pi/2、pi、3*pi/2(星座点)