Controlling output from Simulink
1 次查看(过去 30 天)
显示 更早的评论
Hi all
My simulink is running at a fixed time step of 0.1 and i need my block to produce output at alternate time like 0,0.2,0.4,etc
Can GetTimeOfNextVarHit of lvl 1 S-function block fulfil this requirement?
If not how should i do it?
回答(3 个)
Kaustubha Govind
2011-3-8
Why not set the S-function sample time to 2*ssGetFixedStepSize(S) in mdlInitializeSampleTimes? You might also want to protect your code using ssIsVariableStepSolver to ensure that a variable-step solver isn't being used.
2 个评论
Andreas Goser
2011-3-8
Check out the menu:
Simulation -> Configuration Parameters -> Data Import/Export
In your example, you could just enter a decimation of 2. But you have also other option, see the pull-down "Output options". You can e.g. produce additional output.
Paulo Silva
2011-3-8
Try with the matlab Fcn block
out=u(1) %or out=u
It will put the value in the block input to the variable out in the matlab workspace, that way you can share data with other models, do the same thing to get data from the workspace
out %the value of out will be the output of the Fcn block
And maybe putting 0.2 on the matlab Fcn sample time will only update or get the out value each 0.2 seconds.
2 个评论
Paulo Silva
2011-3-8
the code that you put in your matlab fcn block are just like the ones you execute in the command line, same memory area.
另请参阅
类别
在 Help Center 和 File Exchange 中查找有关 Block Authoring Basics 的更多信息
Community Treasure Hunt
Find the treasures in MATLAB Central and discover how the community can help you!
Start Hunting!