Comments (6)
The FaultTriggering library itself is free to use, and the implementation of the faults itself is tool independant. The only thing in the library which is currently depending on the Modelmanagement toolbox is the Fault finding algorithm.
We are working on an implementation which relies on FMI 2.0 instead of Modelmanagement to make the generation of the fault wrapper tool independant.
Since there is no standardized way using the Modelica language to search through the model tree, I have made an implementation using the Modelmanagement library, as this used to be the only way to search through the model tree using Dymola, the tool I use in daily practice.
The implementation of the faults using the blocks of the library can be done in any tool, only the search algorithm has to be rewritten:
This search algorithm has only 1 function which depend on this library: "FaultTriggering.Utilities.Internal.getAllModelComponents". Furthermore the functions "FaultTriggering.Utilities.Internal.getVariableValues" and "FaultTriggering.Utilities.Internal.getParameterValues" and "FaultTriggering.Utilities.Internal.getVariableMode" use a dymola specific function to get to the default values.
It should not be too much work to upgrade this to FMI 2.0, as FMI 2.0 has the possibility to output an XML file which can be read. This XML file has the complete model structure as well as the default values, which can be directly used.
Unfortunately, I am currently low on time to do this properly making sure no bugs are there, but I hope to get this done in the close future.
from faulttriggering.
The dependency on ModelManagement is removed. However, as far as I know there is no standardized method for generating FMU's and reading them. Unfortunately therefore still a dependency on Dymola exist.
If a generalized standard is generated, this dependency can be avoided.
from faulttriggering.
The dependency on ModelManagement is removed.
This holds for the FMI branch only, right?
from faulttriggering.
I used this comment as an input to finally update all other branches. Therefore, this hold now true for all branches!
On the other hand: I have no clue on how compatible the library is with tools other than Dymola due to the heavy use of scripting to be able to generate a complete library. Unfortunately there exists no standard here.
from faulttriggering.
Scripting is not supported for any other tool as far as I know. However the library can be used also by users of other tools without the scripting functionality.
As the dependancy of ModelManagement is now gone, I will close this issue.
from faulttriggering.
FYI: ModelManagement is free of license since Dymola 2017 FD01.
from faulttriggering.
Related Issues (19)
- RealVariableFault_level2.png is missing HOT 1
- Missing example MotorExample.Driveline HOT 1
- array faults lead to corrupt wrapper package generation HOT 1
- Automatic bus generation gets problems when 2 submodels have the same name HOT 3
- Link fault model to FaultTriggerController HOT 1
- Add checkbox to replace excisting files HOT 1
- Redeclared replaceables are not parsed HOT 1
- Error for createFaultPackage: "Failed to open or read ~FMUOutput\modelDescription.xml" HOT 3
- Dymola 2016 is not compatible with current FaultTriggering HOT 1
- Link to AdvancedNoise library HOT 1
- HTML Tidy HOT 1
- Issue when only a single fault is identified in the model HOT 1
- Several minor issues with latest release version HOT 5
- Development branch HOT 2
- Disabled FaultTriggering.Utilities.Records.Parameter_Faults.booleanFaults HOT 2
- Non-standard Dialog annotations
- Invalid links
- Inconsistent automatic inner faultTrigger / Unable to CreatePackage from PreExisting Actuator model HOT 3
Recommend Projects
-
React
A declarative, efficient, and flexible JavaScript library for building user interfaces.
-
Vue.js
🖖 Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.
-
Typescript
TypeScript is a superset of JavaScript that compiles to clean JavaScript output.
-
TensorFlow
An Open Source Machine Learning Framework for Everyone
-
Django
The Web framework for perfectionists with deadlines.
-
Laravel
A PHP framework for web artisans
-
D3
Bring data to life with SVG, Canvas and HTML. 📊📈🎉
-
Recommend Topics
-
javascript
JavaScript (JS) is a lightweight interpreted programming language with first-class functions.
-
web
Some thing interesting about web. New door for the world.
-
server
A server is a program made to process requests and deliver data to clients.
-
Machine learning
Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.
-
Visualization
Some thing interesting about visualization, use data art
-
Game
Some thing interesting about game, make everyone happy.
Recommend Org
-
Facebook
We are working to build community through open source technology. NB: members must have two-factor auth.
-
Microsoft
Open source projects and samples from Microsoft.
-
Google
Google ❤️ Open Source for everyone.
-
Alibaba
Alibaba Open Source for everyone
-
D3
Data-Driven Documents codes.
-
Tencent
China tencent open source team.
from faulttriggering.