Variables in workspace are not updated in Simulink when using Matlab function

2 ビュー (過去 30 日間)
Ramon Ramon
Ramon Ramon 2020 年 6 月 6 日
回答済み: Navya Seelam 2020 年 6 月 9 日
So, basically I create a system that produce an output array of repeating square pulse (eg. 111000111000) that I put into the Matlab workspace using a "To Workspace" block as shown in the figure
In the matlab function, I want to create a shifted version of the array to calculate the repeating pattern.So i create a script:
function fest = fcn(phasediff)
phasediffX = [phasediff(end),phasediff(1:end-1)]
for v=1:length(phasediff)
phasediffX = [phasediffX(end),phasediffX(1:end-1)]
if phasediffX==phasediff
break
else
end
end
fest = v
after running the script with Run Model, the only variable that was read in the workspace was the phasediff from the simulink.
How do I integrate these new variables (phasediffX & v) in the function, so i can get a proper output?

回答 (1 件)

Navya Seelam
Navya Seelam 2020 年 6 月 9 日
Since you have used a single To Workspace block, only single variable phasediff is transferred to MATLAB workspace. In case you are trying to export more variables, use as many To Workspace blocks as required.

カテゴリ

Help Center および File ExchangeSources についてさらに検索

Community Treasure Hunt

Find the treasures in MATLAB Central and discover how the community can help you!

Start Hunting!

Translated by