How to access logged data from Simulink.S​imulationO​utput object by name (instead of {index})?

18 ビュー (過去 30 日間)
Sofie Brammer
Sofie Brammer 2023 年 6 月 22 日
編集済み: Haroon Zafar 2023 年 12 月 5 日
Hello,
I know when I log multiple signals from a Simulink simulation and stored the Simulink.SimulationOutput object in the variable "out", I can select a specific signal by writing
elements = out.logsout{1}.Values;
But is there also a way of using the name of the signal instead of the index? (I use Matlab 2022b.)
Then it would not be necessary to first check which index was assigned to which variable.
Just to clarify, when I open the logsout of the Simulink.SimulationOutput instance, in the highlighted column are the names I mean:
Thanks in advance for all helpful answers!

回答 (2 件)

Nitya Patel
Nitya Patel 2023 年 6 月 22 日
You can use the find method to do so, here is the documentation for the same: Simulink.SimulationOutput.find.
  1 件のコメント
Sofie Brammer
Sofie Brammer 2023 年 6 月 22 日
Thank you vrey much for your help! :)
But are you sure? Because in the documentation of the find method it still says
and the name given to the find method isthen "a level higher", so the 'logsout' and not the specific signal name... or what would I need to write to get a specific signal?

サインインしてコメントする。


Haroon Zafar
Haroon Zafar 2023 年 12 月 5 日
編集済み: Haroon Zafar 2023 年 12 月 5 日
Use get method.
headind_dev_data= get(out(1,1).logsout,"heading_dev")

カテゴリ

Help Center および File ExchangePrepare Model Inputs and Outputs についてさらに検索

Community Treasure Hunt

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

Start Hunting!

Translated by