我想使用Simulink运行模拟,我想使用来自txt文件的数据。我尝试使用
x_ref_n0 = importdata('x_n_ref0.txt');
但是,我收到一条错误消息:
The function 'importdata' is not supported for standalone code generation.
我该怎么做才能解决这个问题?
答案 0 :(得分:1)
您是否尝试在MATLAB功能块中使用importdata?您应该在MATLAB工作区中导入数据,然后使用“From Workspace”或“Signal From Workspace”块将数据置于simulink中。如果数据太大而无法将其带入工作空间,则应使用fopen一次读取几行文件,然后使用textscan解析数据。您可以通过多种不同方式调用这些函数。 stackoverflow问题How can I call an m file in Simulink and put it to a block in my model?有很多答案可以从Simulink调用MATLAB代码。
如果您正在从MATLAB功能块中读取一个时间步长中使用的一个文件中的所有数据,那么您应该将importdata声明为extrinsic,这将允许您调用不支持代码生成的MATLAB函数。使用extrinsic将不支持使用实时研讨会生成代码。模拟应该工作正常。请参阅http://www.mathworks.com/help/fixedpoint/ref/coder.extrinsic.html
中的外在文档