首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >如何调用M文件到Simulink模型?

如何调用M文件到Simulink模型?
EN

Stack Overflow用户
提问于 2018-12-18 13:44:52
回答 1查看 1K关注 0票数 0

我从这个link得到了一个脚本,它在MATLAB中正确运行。然而,当我创建一个Simulink模型时,它正常运行,但是我可以从m文件中获取数据。

MATLAB脚本:

代码语言:javascript
复制
function data = Loadcell()
    eml.extrinsic('arduino','addon','read_HX711')
    a = arduino('COM5','Mega2560','libraries','ExampleAddon/HX711');
    while 1
        LoadCell = addon(a, 'ExampleAddon/HX711',{'D2','D3'});
    data = read_HX711(LoadCell)
    end
end

Simulink函数

代码语言:javascript
复制
function data = Loadcell()
    coder.extrinsic('Loadcell');
    Loadcell = zeros('double');
    data = zeros('double');
    data = Loadcell
end

我使用Arduino在外部模式下运行Simulink,并且我无法从该代码中获取数据。如何使用MATLAB脚本在Simulink块模型中使用它并获取数据?

EN

回答 1

Stack Overflow用户

发布于 2018-12-18 15:55:31

很可能有几个问题

  1. 在Simulink中将嵌入的MATLAB函数命名为MATLAB函数。(你怎么会期望Simulink知道它应该调用哪个函数呢?MATLAB函数,还是重新输入嵌入的MATLAB函数?)
  2. Loadcell定义为extrinsic函数,然后(重新)将其定义为双0.0,然后尝试将其作为函数执行。

我怀疑你想要这样的东西,

代码语言:javascript
复制
function data = Loadcell_Wrapper()
    coder.extrinsic('Loadcell');
    data = zeros(1,1,'double');
    data = Loadcell()
end

(而且,这不是你问题的一部分,但是MATLAB代码中不存在无限循环吗?)

票数 1
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/53834409

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档