How to send data to a block continuously, like through clock block in simulink.
5 ビュー (過去 30 日間)
古いコメントを表示
I am working on traffic simulation in Simulink. trying to show movement using coordinate system i am trying to makeup. I am facing following problem in that.
For now just consider x axis
For translation of car on x axis tried using FOR loop in embedded MATLAB function but it doesn`t give values of intermediate iterations.
When For Subsytem is used it gives out array on N size if N iterations are done.
But the desired Output should be scalar so as to feed it to VRsignal Expander(consider set to 1)
now How can i send values from that N sized array one by one by using another for loop ? n get the same problem again
well i think i m applying wrong Logic to this problem
If there is totally different and simpler way out to solve the problem of sending data continuously. i`ll appreciate the help.
2 件のコメント
Paulo Silva
2011 年 1 月 29 日
I posted an answer but wasn't working properly, I will try to find a way
採用された回答
Paulo Silva
2011 年 1 月 29 日
here's a simple way, insert a Constant block in your model, start the simulation from 0 to inf
Now in one m file put a loop with this line of code inside
set_param('MyModelName/Constant','Value',num2str(DataToModel))
Change MyModelName with the name of your model file and DataToModel with the data you want to send, here's a simple example
Make a model with the Constant connected to a Display, run it to inf
Put the next code in one m file and run it
for a=1:0.1:10
set_param('MyModelName/Constant','Value',num2str(a)) %send a to the model
pause(1) %pause for 1 second
end
Now see the value in the display changing
その他の回答 (2 件)
Kaustubha Govind
2011 年 1 月 31 日
The 'From Workspace' block is specifically designed to allow you to do this sort of thing. (If you have your data in a .mat file, you can use the 'From File' block).
Note that, Simulink needs you to provide time-stamps with your data, so it can determine what data-sample to use at the current time-step.
2 件のコメント
Kaustubha Govind
2011 年 2 月 1 日
In that case, you may find it useful to use the Selector (http://www.mathworks.com/help/toolbox/simulink/slref/selector.html) block in "Index vector (port)" mode, with the "index vector" input as a scalar value sweeping from 1 to N. The Counter Limited (http://www.mathworks.com/help/toolbox/simulink/slref/counterlimited.html) block can be used to generate that kind of sweep.
Erçin
2012 年 1 月 6 日
Is there any opposite way send data to M-File with Simulink?
1 件のコメント
Walter Roberson
2012 年 1 月 6 日
'To Workspace' block. http://www.mathworks.com/help/toolbox/simulink/slref/toworkspace.html
参考
カテゴリ
Help Center および File Exchange で General Applications についてさらに検索
Community Treasure Hunt
Find the treasures in MATLAB Central and discover how the community can help you!
Start Hunting!