APIΒΆ
Scripts start with import virtualmodelcontrol as vmc: the classes and functions of the
tutorials, and the modules vmc.sim, vmc.viz and the others below, are available from there.
The robot templates are the one exception: import them as
from virtualmodelcontrol.robots import helyx (or adapt, bimanual, turtle). The modules, from
the bottom layer up:
Core: parameters, spaces, symbolic helpers, signals, registry and units. |
|
Rotations and rigid transforms that run on numpy arrays and CasADi symbols alike. |
|
Mechanisms: coordinates and the components that act on them. |
|
Models: kinematics and actuation of robots. |
|
A robot and the virtual mechanism that controls it, as one system. |
|
Compile a virtual mechanism system into CasADi functions: the control law and its energetics. |
|
Robot dynamics assembled from the robot's own components, in the canonical residual form. |
|
Control: controllers built from compiled virtual mechanisms. |
|
Simulation and the run loop: plants, a model-based simulator, guard and recorder. |
|
Adaptation: laws that change a running controller's Params to track a goal. |
|
Estimation: the state of a running robot and quantities no sensor measures, from its model. |
|
Identification: robot parameters from measured data. |
|
Optimization of virtual mechanisms: plan the closed loop's motion and tune the Params. |
|
Hardware profiles: each robot's motors, their IDs, signs and the driver's order. |
|
Figures and animations: the lab style, drawing robots and virtual elements, saving. |
|
Robot templates: model builders and default parameters for the lab's robots. |
|
Configurations: experiments in YAML files, a robot template, its controllers and how to run them, built through the registry. |
|
Checks of the library's model contract, to call from your own model's tests. |