问题标签 [s-function]
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 - 如何使用命令行更改 s-function 数据
谁能告诉我如何使用命令行更改 s-function 参数。
我使用以下几行来获取 s-function 数据:
接下来我尝试通过访问 appdata 结构来更改输出和输入的数量。但是我如何将这个 appdata 结构写回 s-function。可能吗?或者有没有其他方法可以实现 s-function 的数据/参数/输入操作
simulink - 在 S-Builder 中的嵌入式编码器 Simulink(用于 Xilinx“Zedboard”目标 Xilinx SDK)上添加外部 C 库
我目前正在使用 Simulink Embedded Coder 方法在 Xilinx Zedboard 上实施一个项目。
现在我必须构建一个连接到数据库的块(通过 MySQL,使用 C 库)。问题是我不知道如何#include <mysql.h>
在 S-Function Builder 中指定交叉编译这个 simulink 块的路径。
algorithm - 如何在matlab m文件中使用simulink模型的变量?
我希望我的关键词能描述我的情况。基本上,我使用 simulink 块和 S 功能块在 Simulink 中使用 SMC(滑动模式控制)。现在,我想使用 DE(差分进化)算法来确定 SMC 的参数,以获得最佳结果。DE由两个m文件实现,其中一个包含目标函数的函数(DE需要这个),另一个包含DE算法的其余部分,用于运行。我所做的是,我将一个 m 文件转换为 s 函数,因为它需要 Simulink 模型中的一些变量,我的问题是,现在我想在另一个 m 文件中使用目标函数的值(DE 算法) 运行 DE 进行一些迭代。希望我很清楚。我在这里找到了一些东西,但看起来,我
matlab - mex s-function 组件只有在更改后才能重新编译吗?
在测试的第一阶段,我的代码必须在编译为 S-Function 的 Matlab Simulink 环境(2010b 32 位)中运行。编译器是 Visual Studio 2010 附带的编译器。
我目前有一个脚本可以编译我的代码,如下所示:
这些年来,文件的数量大大增加,以至于编译需要相当长的时间。
我的问题是:是否存在一种方法来检查 an*.obj
是否与其对应的不对应*.c
并仅在必要时重新编译它?
我对创建特殊脚本持谨慎态度,因为我必须逐个更改它们,我认为这是一条容易出错和不必要风险的道路。
编辑:
我目前的解决方案是获取date
文件的属性并比较它们:
我知道这不是最干净的解决方案,并且在评论中,ms建议使用nmake
文件。我从未创建过一个,也不知道如何从 Matlab 脚本中使用它。
可以做到吗?我应该按照哪些步骤来创建和使用它?
c++ - 2级c-mex函数输入返回错误值
我有一个 TLC 生成的 mexfunction,有 2 个输入和 0 个输出。输入 1 是无符号字符,输入 2 是无符号整数。
当我尝试通过以下方式获取输入值时:
为什么u2
取决于u1
?
例如:在 simulink 中输入port #1 = 2;
⇒*u1= 2;
但在simulink中输入port #2 = 1000;
⇒*u2= *u2 +(*u1*65636);
我看到这个在mexprint
..
我得到u2
的一个因素取决于第一个输入端口
我将InputPortRequiredContiguous
and设置InputPortDirectFeedThrough
为 1。
matlab - Simulink 找不到 S-Function,除非重新构建
我目前正在使用带有 Raspberry Pi 的 Matlab Simulink。我一直在使用 S-Function Builder 块来生成我与 S-Function 块一起使用的 S-Function。但是,我总是需要保留我需要在第一次启动时构建的 S-Function 构建器的副本,因为 Simulink 否则会告诉我:
“S-Function 'read_accelerometer/S-Function' 中的错误:S-Function 'sfun_read_adxl345' 不存在”
我保留了 .c 和 wrapper.c 文件,以及 mexw64 和 tlc 文件。但这没关系 - 每次重新加载模型时,我仍然必须使用 Builder 块重建 S-Function。
如何规避这个问题?
matlab - Level1 Matlab S-Function - “工作向量”
我在模型中多次使用 Matlab 1 级 S 函数,但不希望相互覆盖全局/持久变量。
解决方案可能是工作向量,但关于 1 级 S-Function 工作向量的文档很少。我在哪里可以获得 ssSetNumRWork 函数的 SimStruct S?
谢谢!
c - Error using malloc inside SFunction
I´m developing a C-MEX SFunction to integrate with simulink. The objective here is to convert an array of ascii codes do double. Before opening matlab, I implemented a test code using Visual Studio and it works just fine. (see below)
After everything was tested in VisualStudio, I copied to SFunction Builder in matlab. It do not crashes, but looks like malloc is not working as expected. The expected output is 6.3 (double), but I get only the last digit 3 (double)
Does anyone know whats happening? Any advices?
c++ - 从 cmex SFunction 调用 mex 函数
我已经mexFunction
使用 Visual Studio 2012 实现了一个复杂的,并成功地将它与 Matlab 集成。(让我们称之为mexFunctionA.mexw32
)
当我在 matlab 命令窗口中运行此命令时,我得到了预期的结果:
现在,我需要开发一个mexFunctionB
调用mexFunctionA
;mexFunctionB
很简单。
我正在尝试的CmexFunctionB.c
代码(内部)是:
这行代码没有编译。
我使用的命令行是:
因此,以下是可能的错误:
#include
方法不对。- 编译代码的命令行错误。
- 不可能做我打算做的事。
- 别的东西。
任何人都知道如何解决它?