Support MES Model & Refactor® (MoRe)

What is MoRe?

MES Model & Refactor® (MoRe) is a productivity tool that makes modeling with MATLAB Simulink® faster, easier and less error-prone. MoRe supports users by simplifying and accelerating model editing and reducing monotonous work steps. The tool facilitates the modeling process as a whole, in particular the refactoring of models.

What's New?

Highlights in MES Model & Refactor® (MoRe) v.1.3

More actions for port blocks and signal lines
New actions "Arrange Port Blocks" and "Convert Goto/Froms to Lines" are available.

Improved handling of signal line parameters on "Add Cross-Hierarchy Signal" action

 

MoRe v.1.2

Highlights in MES Model & Refactor® (MoRe) v.1.2

Extended TargetLink support
Route cross-hierarchy signals into and out of TargetLink subsystems. Automatic guideline-compliant use of TargetLink port blocks. Ability to also move TargetLink simulation blocks within the subsystem hierarchy.

MoRe v.1.1

Highlights in MES Model & Refactor® (MoRe) v.1.1

Advances in usability and runtime
Dialog alignments are optimized to reduce obstruction of views. Reduced runtime of typical actions.

Improved drawing of branched signal lines

 

System Requirements

The following system requirements must be in place to use MES MoRe:

  • Windows (XP, Vista, Windows 7+8+10 - 32 and 64-bit versions)
  • MATLAB® R2012b ... R2019b
  • Simulink

Update to the Latest Version

  • If you added a call to init_MoRe to your startup.m and used a folder with version postfix (e.g. x:\project\matlab\MES_MoRe_1_2), then please update the call to the folder of the new installation (e.g. run('C:\Program Files\MES_MoRe_1_3\MoRe\init_MoRe');
  • If you installed the old version to a folder with version postfix (e.g. x:\project\matlab\MES_MoRe_1_2), you can keep that directory as a backup.
  • If you installed without version postfix, you could rename the old installation directory to one with version postfix as a backup.
  • Then proceed according to the installation instructions given below (including license configuration).

Installation

  • Extract the MES MoRe zip file (e.g. MES_MoRe_1_3.zip) into a target folder with write access. Suggestions:
    • C:\Program Files\MES_MoRe
    • %MATLAB_ROOT%\toolbox\MES_MoRe_1_3
    • %MATLAB_ROOT%\toolbox\MES_MoRe
    • x:\project\matlab\MES_MoRe_1_3
    Please keep all the subdirectories.
  • For permament installation (recommended):
    • Add a call to the MoRe\init_MoRe.m script from the target folder to your MATLAB startup.m file. Example call: run('C:\Program Files\MES_MoRe\MoRe\init_MoRe');
      Please make sure that there is no call to init_MoRe of an old installation left!
      If you are not sure whether you have any startup.m file yet, type which startup.m in MATLAB command line.
      If result is not empty, add the call from above to this file.
      If result is empty, create a new startup.m file in your userpath. Type userpath in MATLAB command line to get your userpath. Add the call from above to the newly created file (type also doc startup in MATLAB command line for help).
    • Restart MATLAB. There should be an MES MoRe menu entry in Simulink now.
  • For temporary usage (not recommended):
    • Call init_MoRe from the MoRe subfolder of the target folder in the MATLAB command line. This might throw warnings like 'Objects of XXX class exist - not clearing java', if other tools are holding locked references to java objects. In that case, please follow the instructions for permanent installation above.
  • (Optional) Some actions from the 'Analyze' submenu require Graphviz to be installed:
    • Download and install Graphviz from http://www.graphviz.org/
    • Add the folder containing the dot.exe of Graphviz to the PATH environment variable of Windows (e.g. C:\Program Files (x86)\Graphviz 2.28\bin).

Quick start

Starting MoRe

  • After installation, "MES MoRe" is available as a separate entry in the Simulink menu and context menu. It does not need to be started manually.

Starting an Analysis

  • Open a demo model by typing “fuelsys” in the MATLAB command prompt
  • Select the two subsystems on the root level of the fuelsys model
  • Click “MES MoRe” in the Simulink menu and then select "Merge Subsystems"
  • To undo the action, select "Undo" from the “MES MoRe” menu

Suggestions

If you have any suggestions to help us improve MES Model & Refactor, please do not hesitate to contact us:
Email: more@model-engineers.com

MoRe Videos

 

User Guide

MXRAY User Guide

The MES User Guide presents clear instructions on how to work with MES Model & Refactor® (MoRe). It provides users with information about getting started and working with MoRe.
Click on “MES MoRe”->”Help”->”Documentation” to find a description of all actions available in MoRe (see image).

Release Notes - MoRe v.1.3 (April 2020)

Improved TargetLink Support

  • All actions that create inport and outport blocks: Instead of normal inport and outport blocks, TargetLink inport and outport blocks are now created if necessary, according to the Modeling Guidelines for dSPACE TargetLink (version 4.0.3, paragraph 4.3). If TargetLink inport or outport blocks are added to a TargetLink subsystem, the actions properly update the TargetLink simulation frame containing the TargetLink subsystem (i.e. the two intermediate technical subsystems above the TargetLink subsystem).
  • Add Cross-Hierarchy Signal: Signals can now also be routed into or out of TargetLink subsystems. This action also properly updates the TargetLink simulation frame containing the TargetLink subsystem.
  • All actions that move blocks into or out of subsystems (e.g. Move Blocks Up/Down, Create Subsystem, Break Subsystem, ...): TargetLink simulation frame blocks can now also be moved. Previously, when undoing an action, this caused an error.

Added New Action "Arrange Port Blocks"

  • Inport and/or outport blocks present in the subsystem can be automatically arranged now.
  • The action can be applied either to all port blocks of the subsystem or only to the selected port blocks.

Added New Action "Convert Goto/Froms to Lines"

  • Goto/From connections can now be converted to corresponding signal lines.
  • The action can convert either all Goto/From connections of the current subsytem or only the selected connections.
  • The action can also convert connections where the Goto/From blocks are located in different subsystems or model parts (scoped or global tag visibility).

Improved "Add Cross-Hierarchy Signal" Action

  • The signal line parameters from the MoRe.ini configuration file are now only applied to the lines that the action actually creates. Previously, the parameters were also applied to open lines that the action only reroutes to a destination port and to lines to which the action only adds a new branch. For example, if the SignalPropagation parameter is set to 'on' in the MoRe.ini file and the action is started on an open signal line, this parameter is not set for this line, because the line is just rerouted by the action.
  • If an open signal line branch is selected as source for the action, this selected branch is now used as starting point for the cross-hierarchy signal. Previously, a new branch was created in addition to the selected branch and this new branch was used as starting point.
  • If the action reroutes an existing open signal line, all line parameters (such as font and font size) are now preserved.

Other Improvements

  • All actions that add or redraw lines: The newly created lines are now routed with Matlab's "smart" autorouting option in Matlab® versions R2017b and above. This improved routing prevents lines from overlapping, among other things.
  • Merge Bus Selectors: The action now preserves the order of the merged output signals, i.e. the signals of the topmost bus selector are selected first and in the original signal order, followed by the signals of the second topmost bus selector in the original signal order and so on. Previously, the output signals were lexicographically sorted, which often led to crossing signal lines.
  • All actions that create inport/outport blocks: The position of newly created port blocks now also depends on the length of a signal name / propagated signal name. This ensures that there is sufficient space to display the signal name between the port block and the destination/source block.
  • Insert Subsystem Outport Above/Below: This action can now also be applied if the selected outgoing line is branched. Any of the line segments can be selected in order to do so.
  • MoRe can now safely be used in parallel with older slRefactor versions of the tool, as all functions present in both tools have been renamed to avoid shadowing.

Bug Fixes

  • Fixed bug that caused an error when opening the MoRe menu when two subsystems were selected along with other non-subsystem blocks.
  • All "Partition" Actions (Move Blocks Up/Down, Split Subsystem, Merge Subsystems, Create/Break Subsystem): Fixed bug that, when moving blocks in a library, caused the action to convert those blocks into linked blocks with an unresolved reference to the origin of the block.
  • All "Partition" Actions (Move Blocks Up/Down, Split Subsystem, Merge Subsystems, Create/Break Subsystem): Fixed bug that, when moving a bus selector block, caused the signal labels of the block's outgoing signal lines to be hidden after the action.
  • All "Partition" Actions (Move Blocks Up/Down, Split Subsystem, Merge Subsystems, Create/Break Subsystem): Fixed bug that, when moving blocks, caused the block outports to lose their 'DataLoggingName' parameter.
  • Move Interface: Fixed bug that, for port names with line breaks, created additional selectable lines in the Move Interface dialog for each line in the port name. The bug may have caused an error when moving the ports in the dialog and may have led to an unexpected port order after applying the action.
  • Create InMap: Fixed bug that caused an error when trying to apply the action to a subsystem where one or more input signals are not bus signals.