simulink モデルを実行できる matlab ファイルを作成しようとしています。しかし、MATLAB から simulink モデルへのデータの送信に問題があります。私が持っているモデルではImport Block
、matlab からデータのストリームを送信したいと考えています。
私の現在のmatlabのコードは.
function result = CallSimulinkModel(modelName, timeStep, inputMatix, key)
if(timeStep<=0)
error('MATLAB:CallSimulinkModel','Timestep is lower or equal with 0');
end
endTime = max(size(inputMatix))*timeStep;
result = SubCallSimulinkModel(modelName, 0:timeStep:endTime, inputMatix, key);
%OutVector.const = inConst;
end
function [result,constants] = SubCallSimulinkModel(var_model,time_var,inputMatix, K)
var_setting = simset(...
'SrcWorkspace','current'...
);
% How to feed the sim model with the data from input matrix as Inport
% 1, Inport 2, ...?
[~,~,result] = sim(var_model, time_var, var_setting);
constants = K;
end
そしてモデルは
simulink から結果を取得したり、定数 K.in1 を設定したりすることに問題はありません