Seth on Simulink

November 18th, 2009

Back-Seat Driver: Simulink Tips for Efficient Model Navigation

Does this ever happen to you? You are sitting in a meeting looking up at the projected image of your coworker’s computer desktop.  They are navigating through {a web page, a Simulink model, or computer settings}.  You can see a faster, better, more efficient way to complete the task.  You as the observer have two options:  1) politely bite your lip or 2) become the back-seat driver and scream out corrective commands like “up, up, up... to the right, right, left... click the thing...open... control-k...arg!”

This happens to me some times... especially with Simulink models.  I want to share with you two Simulink tips that I wish everyone knew.

Tip: Navigating your model – window reuse, and escape.

I spend much of my day looking at models I did not build.  Finding your way around large models can be slow due to the many layers of subsystems between the top of the model and the leaf component you are working on.  There are two parts to this tip.

Part one is setting window reuse.  Make sure the model is set for window reuse.  I rarely need to look at two different systems at the same time, so my preference is to set Simulink to reuse the windows as I navigate the diagram.  A close alternative is to use mixed.

Simulink Preferences control window reuse.

Part two is using the escape key.  Diving down through layers of a model is as easy as double clicking on a subsystem.  What do you do when you want to go back up a level?  While you can reach for the arrows on the toolbar to go back, or up a level, I use the escape key.  Escape will bring you to the level above the current level.  This even works if you have opened a reference model, Stateflow chart, Embedded MATLAB function blocks and block dialogs!

Annimation showing the easy navigation accross many levels of model hierarchy.

What do you know?

What accelerators do you use to work more efficiently?  What do you yell when back-seat driving? Leave a comment here and tell me about it.

4 Responses to “Back-Seat Driver: Simulink Tips for Efficient Model Navigation”

  1. XaL replied on :

    Hi,

    thanks for the tips. As someone wrote in http://blogs.mathworks.com/seth/2009/03/13/new-%C2%A0release-%E2%80%93-simulink-r2009a/ the Linux version does not even have a Model Browser, which is ever more annoying than clicking on this toolbar on Windows :-)
    Is the “major architectural upgrade” needed to bring this toolbar under Linux on its way?

    Thank you

  2. Han Geerligs replied on :

    Hi Seth,

    Once again I’d like to point out that my biggest accelerator is using mouse and keyboard in conjunction. for example: using the shift key and scroll in order to pan horizontally.

    And once again I’d like to add my suggestion: please implement the control-scroll option: zooming in and out, as in most office suites. Now ctrl-scroll is the same as shift-scroll, and hence doesn’t add anything.
    I wonder what is the status of this enhancement request?

    Warm regards, Han

  3. Guy replied on :

    @Han, you probably already know, but I think it is good to share with everyone.

    To zoom in use the key ‘r’. If you have nothing selected it will zoom toward the middle. If you select a block it will zoom, putting the focus on this block. Very useful to navigate a model whith many blocks on the same level.

    For other zooming feature:
    r - zoom in
    f - Fit the selection to screen
    space - Fit the system to screen
    v - zoom out
    1 - zoom 100%

    I always have problems finding the complete list of Simulink shortcut. Here is the list:

    http://www.mathworks.com/access/helpdesk/help/toolbox/simulink/ug/f2-82531.html#bqgwups

    Another one which I like is CTRL+U to look under masked subsystems.

    Guy

  4. Han Geerligs replied on :

    Hello Guy,

    thanks for the clarificaton and link.

    However in the documentation I am missing the behaviour of combined (scroll)mouse and keyboard action (e.g. shift-scroll). Also the shortcut for look under masked subsystems (CTRL-U) is missing.

    -Han

Leave a Reply

Wrap code fragments inside <pre> tags, like this:

<pre class="code">
a = magic(3);
sum(a)
</pre>

If you have a "<" character in your code, either follow it with a space or replace it with "&lt;" (including the semicolon).


Seth Popinchalk is an Application Engineer for The MathWorks. He writes here about Simulink and other MathWorks tools used in Model-Based Design.
  • Guy: @Shahin - The Simulink Control Design toolbox offers functionalities similar to the one provided by the new PID...
  • Shahin Moghimi: Hi, I have the R2008a version, and am wondering if there is such an automatic tool in my version as...
  • ponmani: Respected sir, i am working simulink for the past 6 months. i am trying to place my control algorithm...
  • Seth: @Aleksandar - If you build a Simulink model into an executable using Real-Time Workshop, you will only be able...
  • Aleksandar: Seth, thank you very much! I have additional question. Is it possible to alter Simulink model built into...
  • Seth: I am not sure of your implementation of the D flip flop, and I am not sure how it is causing an algebraic loop...
  • esayas: nice work !
  • Seth: @Checker - Due to the high volume of reservation requests our career fair team had to pre-screen profiles based...
  • Checker: I filled it out couple of days back and got an emial saying that the no. of people they can handle is...
  • Seth: @Jonathan - in the case of the Buffer block, you can not use the result calculated in one part of the model to...

These postings are the author's and don't necessarily represent the opinions of The MathWorks.