Simulink vector to scalar stream

I have a fixed-step (1ms) project. I have a block outputting a 7680x1 vector every 1ms. This output feeds a subsytem that does not accept vector input. Only scalar. So its giving a compile error. What can I do?

Answers (1)

Ameer Hamza
Ameer Hamza on 21 Apr 2020
See from workspace block: https://www.mathworks.com/help/releases/R2020a/simulink/slref/fromworkspace.html. Create a matrix with two columns in the MATLAB workspace. The first column is the time value, spaces by 0.001 seconds, and the second column is data. This block will read the data, one value at a time.

5 Comments

Thanks. Is it possible to increase the sampling rate of the vector input to the subsystem. say to 1us instead of 1ms?
Do you want to resample the signal? Currently, you have 7680 samples, do you want to create 7680000 samples with 1us sampling period?
I'm feeding 7680 samples into a subsystem every 1ms. The subsystem does not accept vector inputs. It can only take single values at a time. So I'd like to somehow serialize and feed these 7680 samples into the subsystem. Also I dont want to feed one sample every 1ms. I'd like to feed at a faster rate.
The "from workspace" block serialize the vector to give one value at each time interval. You can change the first column of the input matrix to specify whatever time-sample you want.
bitec bit
bitec bit on 29 Apr 2021
Edited: bitec bit on 29 Apr 2021
hello Ameer!
i have a question here (i am facing this problem), what if the block which doesnt accept the vector is going to be a switch?
Thanks!

Sign in to comment.

Products

Asked:

on 21 Apr 2020

Edited:

on 29 Apr 2021

Community Treasure Hunt

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

Start Hunting!