Simulink/TEAMS DesignerModel Converter and Verifier
Jay Meyer – Andrew Morse – Brandon Singleton – William SalgueroUniversity of Connecticut, School of Electrical & Computer Engineering
Objective•Convert Simulink model to TEAMS Designer model and verify accuracy of transformation
Purpose•Previously no efficient way to convert between softwares
•Remodeling systems in both softwares takes time
Available Tools•XSL/XSLT/XPATH•Java•JAXB
Project Overview
XSL, XSLT & XPATH
• University of Connecticut, School of Engineering• Dr. Shengli Zhou - Academic Advisor• Clancy Emanuel - Company Sponsor• Dr. Somnath Deb - QSI President
Project Flow
References
Acknowledgements
Testing Process
JAXB for Java
"3M TEKK Professional Chemical Splash Goggle." Amazon.com. N.p., Web.
"Ansell Hycar Apron." Cole-Parmer. N.p., Web.
"Butyl Gloves by North Safety." Construction Gear. Web.
Oxygen XML & Saxon
Simulink Model
XML
Transforming Document
XSLT
✔Converter/Transformer
Java
Extension Functions
Verifier
Java
TEAMS Model
XML
XML Model Transformation
● (XSL) - XML Stylesheet Language○ Used to convert XML documents from
one format to another● (XSLT) - XSL Transform
○ Specifies source, destination, & all included stylesheets
● (XPATH) - XML Path Language○ Uses Path expressions to navigate
XML documents
Model Transformation•Both softwares utilize XML files for model storage
○ Different hierarchy structures•XML file hierarchies can be transformed using XSL•XSL Stylesheet handles the conversion•Stylesheet contains instructions
○ Where data can be found in source○ How to utilize/restructure pertinent information○ Structure of output XML hierarchy○ Integrate Java functions & data types
XSL Structure•Main Stylesheet & supporting documents
○ Main ties all supporting documents together○ Specific stylesheet for major modeling components○ Java Functions
■ XSL is non mutable■ Custom data type is necessary to pass
information between template layers
XML Model Conversion XML Model VerificationContent Validation•Models can be yuge
○ Hundreds of modules & many layers per module○ Inefficient to visually compare models of this size
•Analyze XML hierarchies without XSL○ Avoid bias comparison○ Utilized JAXB for Java
•Output only relevant model information in user friendly format
•Takes 2 XML files (TEAMS & Simulink format) and compares relevant data
○ Modules, Ports, Links etc.•Checks for consistency and returns overall success/failure
● Java Architecture for XML Binding
• W3Schools - www.w3schools.com• Saxonica - www.saxonica.com• Oxygen XML Editor - www.oxygenxml.com• Team 1702 - ecesd.engr.uconn.edu/ecesd1702
● (Oxygen XML) - Debugging Environment○ Eases creation and editing of large XSLT
projects○ Real-time transformations
● (Saxonica) - Production Environment○ XSL Transforms run through Java○ More integrated options for Java
functions in XSLT○ Allows scripted transformations
● Started simple, incrementally increased complexity● 7 total iterations, each covering a major piece of the
modeling process
Simulink Test Model 1TEAMS Test Model 1
Simulink Test Model 7TEAMS Test Model 7
Simulink Model saved in XML format Simulink XML Model Transformed into TEAMS Designer XML
TEAMS Designer XML Packaged into .TMSX file format
New TMSX File gets verified against original Simulink XML file
After successful verification, new TEAMS Designer Model is ready for use
Complete 5 Step Process for Successful Model Transformation
and Verification
Automated Transformation Advantages (Saxonica)● More efficient & professional● Combines transformation and
repackaging steps● Outputs any errors & exceptions to user
through CMD● Options to run Verbose and add more user
defined functions● Portable and Secure
Oxygen XML Environment
Successful Model in TEAMS Designer
Source Model in Simulink