The modelling and analysis of multibody systems can be fully achieved in the C programming language. It allows to prototype a model in a efficiency computation time by leveraging using compiled language and at the same time is compatible with simulink. The C modules for Robotran are called MBSysC.
MBSysC Modules
The MBsysC modules allow to perform different dynamic and kinematic computation on the multibody system. These modules operate on the data structures MbsData.
The following modules are available :
- Model loading : Loading of the model data from the xml description file (.mbs) to C structure.
- Direct dynamics : Time integration of the system direct dynamics.
- Inverse dynamics : Computation of the system inverse dynamics.
- Equilibrium : Computation of the system equilibrium.
- Modal analysis : Computation of the system eigenmodes.
- Direct Kinematics : Computation of the direct kinematics of a kinematic chain.
- Inverse kinematics : Computation of loop kinematics and of the system inverse kinematics (for constrained multibody Systems only).
- Coordinate partitioning : Partitionning of the generalized coordinates into independent and dependent variables (for constrained multibody Systems only).
MBSysC utilities
Some utilities are defined in the source code for example to simplify matrix computation or defining some trajectories:
- Trajectories : Defines basic trajectory function (cosine, ramp...) and tools to combine them (add, multiply...).
- Matrices : Some tools for matrix operations.
- Miscellaneous : Other utility functions that do not belong to any other categories.
Data Structures
MBsysC is based on one data structure (MbsData) that contains information about :
- the model description
- the calculations to perform
Each module returns its results in a specific structure denoted Mbs<ModuleName>.
Error numbers
The explanation of the error number that are raised by MBsysC is in the header file :