A Pattern to Serialize a Simulink Bus.

15 visualizaciones (últimos 30 días)
Petri
Petri el 10 de Oct. de 2012
Respondida: Fabiano Silva el 1 de Ag. de 2016
Hi there,
I have the mother of Simulink busses. It contains other nested busses and just to make stuff interessting some arrays of busses. Ultimately I would like to send the buss over a UDP link.
My question is, "Is the a generic pattern to convert busses to a character stream?" Would I would not like is to change some blocks every time I change the bus definition or use S-functions or a MATLAB-function block.
For extra browny points the edianess of the data being streamed should be considered.
Thanx Petri

Respuestas (2)

Kaustubha Govind
Kaustubha Govind el 10 de Oct. de 2012
This may not work for you since you seem to have a non-virtual bus, but I just wanted to throw it out there. If you could convert your nonvirtual bus to a virtual bus, you might be able to utilize the Bus To Vector block. (Note: You mentioned using arrays of buses - these cannot be virtual AFAIK)
  2 comentarios
Petri
Petri el 10 de Oct. de 2012
Hi Kaustubha,
Your right, my bus is non-virtual. I have tried something in that direction.
I use a Signal Conversion block to convert non-virtual to virtual, then that is connected to a Bus To Vector. Here all matrices have to converted to vectors otherwise signal sizes can not be propigated. However I can't seems to get around the issues that IBus to Vector block input port cannot accept mixed data types. I've we can resolve that then I have a solution.
Thanx Petri
Kaustubha Govind
Kaustubha Govind el 10 de Oct. de 2012
Petri: Perhaps you should use Data Type Conversion blocks to convert your bus elements to be all of the same type? There is no concept of a Simulink vector/matrix having mixed types (like cell-arrays in MATLAB).

Iniciar sesión para comentar.


Fabiano Silva
Fabiano Silva el 1 de Ag. de 2016
Hi Petri, I had a similar problem and couldn't find a way to serialize a Simulink non-virtual bus. My solution was extract the signals from the bus with a Bus Selector and then use a Byte Pack block to serialize them. I think it's not the better way to serialize the information in the bus, but it's working well.

Categorías

Más información sobre Interactive Model Editing en Help Center y File Exchange.

Etiquetas

Productos

Community Treasure Hunt

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

Start Hunting!

Translated by