Calculate the size in bytes of a bus signal

17 ビュー (過去 30 日間)
Eleni T
Eleni T 2022 年 5 月 6 日
回答済み: Gagan Agarwal 2023 年 9 月 27 日
Hello,
I have a bus signal which contains data and i would like to calculate the total size of these data in bytes. Is there a way in simulink?
Thank you
  1 件のコメント
dpb
dpb 2022 年 5 月 6 日
Write an S function if nothing else...with nothing else to go on, one would presume it's simply the numel() * data width.

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

回答 (1 件)

Gagan Agarwal
Gagan Agarwal 2023 年 9 月 27 日
Hi Eleni,
I understand that you are trying to find an approach to calculate the data size (in Bytes) of a bus signal in Simulink.
To calculate the size of a bus signal, please follow these steps:
1. Create a bus object using the “Simulink.BusElement function.
2. Retrieve the data type of each element by accessing the “DataType property of the bus object. Please refer to the attached screenshot for the output of the "Datatype" property.
3. Create an array to store the sizes of each data type. Please refer to the following documentation on numeric types for a comprehensive list of data types and their corresponding sizes: https://www.mathworks.com/help/matlab/numeric-types.html
4. Calculate the size of each element by mapping its data type to the corresponding size in bytes.
5. Store the sizes of each element in the array and sum up all the elements of the array to obtain the size of one bus signal.
For additional information regarding Simulink.BusElement”, please refer to the following documentation: -
I hope this helps!

カテゴリ

Help Center および File ExchangeSignal Import and Export についてさらに検索

製品


リリース

R2022a

Community Treasure Hunt

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

Start Hunting!

Translated by