Clear Filters
Clear Filters

simulink mask text cannot access matlab workspace

4 views (last 30 days)
Hi, in mask editor's Icon & Ports, I tried using the text drawing command to display a string that is in my workspace. Simulink is giving me an error for that. What am I doing wrong? Amish

Accepted Answer

Sebastian Castro
Sebastian Castro on 1 Mar 2016
Masks, by design, have their own separate workspace so there is no conflict between internal variables to a block and anything you do outside of that. So, you cannot directly read from the MATLAB base workspace.
The first question I would ask myself is: Why does that text need to exist in the base workspace? This can affect the robustness of your mask display code because anyone (or anything) could overwrite or delete that text and break your block. Please consider avoiding the base workspace for that reason.
If you're doing something where several blocks need to "share" this variable, then the base workspace becomes more of a viable option to temporarily store a variable. If so, you can use the evalin function to pick an expression from the base workspace and use it in your mask's "Initialization" tab.
revString = evalin('base','revString')
Once you do that, you have a variable called revString also in the mask, which pulls from whatever the expression revString evaluated to in the base workspace.
- Sebastian

More Answers (0)

Categories

Find more on Author Block Masks in Help Center and File Exchange

Community Treasure Hunt

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

Start Hunting!