outputting bus using 'To Workspace' block

13 ビュー (過去 30 日間)
Amardeep
Amardeep 2011 年 10 月 25 日
回答済み: Clark Williams 2016 年 3 月 11 日
Hi everyone; I am attempting to output a bus to the workspace as a variable but am having issues. I am getting the error:
Simulink cannot determine unified dimensions dor the multiplexed signal at output port 13 of 'Block/block' because one or more of the input signals is a matrix type. Specifically, Simulink unify ( [2x2], [2x2],[2x2], [2x2],[2x2], [2x2], 2). Consequently , Simulink cannot propagate dimension information from output port 13 of 'Block/block' to input port 1 of 'Block/To Workspace4'
I cannot find references to this error message on matlab central and nothing helpful on google within the first half a dozen pages. Is there any fix you might recommend.
Regards
Amardeep

採用された回答

TAB
TAB 2011 年 10 月 25 日
Simulink does not alloew a matrix signal to be feed as input to bus. One of your input comming to the bus is matrix.
You can use 'Reshape' block to conver matrix signal to a 1-D array, Column vector or Row vector. Then feed it to bus input.
Simulink Library > Math Operations > Reshape

その他の回答 (1 件)

Clark Williams
Clark Williams 2016 年 3 月 11 日
Recent versions of MATLAB do allow matrix signals in bus, but to connect them to a To Workspace or top-level Out Port you will have to make them "non-virtual" which means you need to create a Bus Definition Structure for them. Doing so will resolve the "Simulink cannot determine unified dimensions for the multiplexed signal" error message

カテゴリ

Help Center および File ExchangeBlock Libraries についてさらに検索

製品

Community Treasure Hunt

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

Start Hunting!

Translated by