Generate Simulink model from script
    98 views (last 30 days)
  
       Show older comments
    
Is there a way to generate an SLX model from a Matlab script? I have a custom Simulink library and the models I want to automatically generate vary in their design and I'm trying to figure out the easiest way to script their generation. I already have a script that generates text code for an MDL format model and it works fairly well but now I'm looking to update to the SLX format and have an easier codebase for users to both develop and understand. My text generation is rather difficult because it pieces text together and is hardcoded for a specific Simulink release format. Thanks!
0 Comments
Answers (2)
  tran
 on 31 Jan 2018
        
      Edited: tran
 on 31 Jan 2018
  
      Yes, there is.
You can generate a model with matlab code (both function and script) follow links:
[1]. https://blogs.mathworks.com/simulink/2010/01/21/building-models-with-matlab-code/
[2]. https://www.mathworks.com/help/simulink/ug/approach-modeling-programmatically.html
You can use the body instead. The result will be a simulink model. That just my idea and I never try before.
  Marco Gavelli
 on 13 Aug 2018
        
      Edited: Marco Gavelli
 on 13 Aug 2018
  
      You could also give the Matsim library a try (disclaimer: I'm the developer). Matsim is a wrapper around the standard Simulink API to add:
- Automatic layout (no need to specify block positions!)
- Intuitive interface (you can "add", "subtract", "multiply", ... simulink blocks)
- Compatible with any release from R2011b onwards
- No problem saving the model to MDL or SLX
Quick sample:

4 Comments
  Nur Elida Mohamad Zahari
 on 20 Jun 2024
				hi. i have problem tu install the Matsim. it is not running properly. it there any new version of matsim?because i cant find it. thanks
See Also
Categories
				Find more on Simulink Coder 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!



