Filter löschen
Filter löschen

Get array size in Simulink

208 Ansichten (letzte 30 Tage)
Thomas LE DIOURON
Thomas LE DIOURON am 18 Okt. 2012
Kommentiert: Shankar Santhosh am 26 Feb. 2021
Hello,
I would like in Simulink have a block with an array as parameter. This array could have various size. In this code, I want to extract a specific element.
I tried to do this with a selector block to select the desired element and a size "Matlab function" to avoid an out of bounds conflicts.
However, the selector block needs to specify the input port size (wich is not always the same). Moreover, for example, for an array [10 12 17 20], how to extract the 4 from the 1x4 result of the size command?
Any idea?
  1 Kommentar
Azzi Abdelmalek
Azzi Abdelmalek am 18 Okt. 2012
Bearbeitet: Azzi Abdelmalek am 18 Okt. 2012
Can you specify where your array is coming from. Is it an output of another block or it's just an input to other blocks. Is your array size changing during simulation?

Melden Sie sich an, um zu kommentieren.

Akzeptierte Antwort

Sachin Ganjare
Sachin Ganjare am 18 Okt. 2012
You can use 'Width' block from simulink library.
Hope it helps
  1 Kommentar
Shankar Santhosh
Shankar Santhosh am 26 Feb. 2021
Is there any alternate method to find the size than using 'width' block?
Because I have a requirement to create the model in Targetlink and not all Simulink blocksets are supported(especially this width block).

Melden Sie sich an, um zu kommentieren.

Weitere Antworten (2)

Thomas LE DIOURON
Thomas LE DIOURON am 18 Okt. 2012
Thanks for this answer. With the help of this block and the "select rows" block, I have all that needed.

javad sh
javad sh am 22 Apr. 2015
I also used this method and found it useful\
I am reading from a serial port and i needed to know the length of massage that i am reading
now the problem that i have is this block will overflow if it become more than 255 what can we do when we have more than 255 byte to analysis
thank you for reply
fazareh
  1 Kommentar
Ali Bars Gunduz
Ali Bars Gunduz am 12 Okt. 2018
You can use demux block to divide your array into 255 element arrays and compute each arrays lengths

Melden Sie sich an, um zu kommentieren.

Kategorien

Mehr zu Simulink Environment Customization finden Sie in Help Center und File Exchange

Tags

Produkte

Community Treasure Hunt

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

Start Hunting!

Translated by