Seth on Simulink
September 9th, 2009
New Stuff – Simulink R2009b
Last week the MathWorks released the R2009b family of
products. There are many new capabilities in the latest release and with this
blog post, I want to highlight a some of the features in Simulink I’m really
excited about. While you read this, start installing the latest products from
the MathWorks.com
downloads area (login and license required).
Reading the release notes is so R2007b!
Did you know that there is a presentation containing highlights
and screen shots from R2009b Simulink? If you have missed this in the
past, you can go back and check out R2008a,
R2008b
and R2009a
highlights. Try it yourself, and browse through all the cool
new features in R2009b Simulink.

Model Reference Protected Models!
Share your model functionality without sharing your model
intellectual property! Anyone with R2009b Simulink can use a protected model.
If you have a license to Real-Time Workshop, you can create a protected model.

Model Reference Variants
If you have multiple implementations of your component model,
variant objects enable you to control the implementation used. This allows you
to globally control and coordinate switching between variant implementations of
your model.

Tabs in the Mask Editor!
Now you can create tabs in your custom block masks.

Variably Sized Signals!
Special blocks and Embedded MATLAB now support dynamically
sizing signals during simulation!

The SIM command can return a single output!
The SIM command has a new single output syntax so all your results
are part of a single SimulationOutput object. This enables SIM to be called
within a PARFOR loop, thus enabling easy parallel Simulation using the Parallel
Computing Toolbox.
paramNameValStruct.SimulationMode = 'rapid';
paramNameValStruct.AbsTol = '1e-5';
paramNameValStruct.SaveState = 'on';
paramNameValStruct.StateSaveName = 'xoutNew';
paramNameValStruct.SaveOutput = 'on';
paramNameValStruct.OutputSaveName = 'youtNew';
simOut = sim('vdp',paramNameValStruct);
New Library Links Tool for fixing broken links!
After making changes to a model and disabling library links,
the Library Links tool will enable you to reestablish those links to your
library. Each change in the model can be pushed back into the library, or the
block can be restored from the original library source.

Now it’s your turn
Have you downloaded R2009b? Leave a comment here and
tell me about your favorite new features.
01:56 UTC |
Posted in Libraries, Masking, Model Reference, Simulation, What's new? |
Permalink |
You can follow any responses to this entry through the RSS 2.0 feed.
You can skip to the end and leave a response. Pinging is currently not allowed.
Leave a Reply
|
Sounds like a good update.
It has two changes that are especially relevant to my work right now, but unfortunately at this stage I won’t be able to switch versions.
First, I hear it fixes my favorite bug: 529072
That one was killing me on this project, so it’s good to hear it’ll be gone for the next one.
Second, is the IP protection feature. We’re struggling with that right now at the end of our project (I know, should have thought about it sooner!).
I’m hoping you can suggest something that I can do with 2007b. Basically I have a block within a large model that I need to protect. The block with all the IP is currently an Embedded MATLAB code block. We want to deliver the block as part of the model, but the customer must not be able to see the code (they’ll look at the raw mdl text if they have to, trust me). Can you suggest any non-invasive ways of doing that? The end result is built using rtw and is run in a “realtime”-windows environment (don’t ask! :) ).
Great blog, and thanks for any reply you can give. At the very least, the hoops I’m describing here will be an effective sales tool for 2009b. :)
Cheers
@JCA - I am glad to hear that we fixed your favorite bugs. This is one of the benefits of the six month release cycle… you don’t have to wait a long time to get bugs fixed.
In R2007b your really limited based on the requirements you have provided. The easiest way to hide IP in that release is to use RTW to Generate an S-function. This does not support inlined code generation, so you have to use an RTW target that supports calling non-inlined S-functions. Even in that situation, I have seen some users generate code, then use a C-language obfuscation tool to provided the source to be included with the final generated model. This would still be needed today as our R2009b IP protection solution is for simulation only.
@Seth, Could mask parameter entry change from popup to edit text? Take a look at Constant block’s ‘OutDataTypeStr’.
Any chance that the Simulink interface under Mac OS X will be updated to match that of the Matlab desktop? The “drag-and-drop” of blocks doesn’t work on the X11/Motif-like interface of the current v7.4 on R2009b.
@Shen-Hsiao - It is hard to know exactly what problem you are describing with such little information, but there is a known issue with Mac’s that have multiple monitors. There is a published bug report here (requires log-in). I should note that there are a couple workarounds described on the bug report, so you might want to try them. If this is the problem you have, we are working on a fix for this.