Calculation modules

CoppeliaSim offers powerful calculation functionalities, or calculation modules, that are not directly encapsulated in objects (like proximity sensors or vision sensors for instance), but that rather operate on one or several objects.

Calculation modules include:

  • the collision detection module: the module allows to track, record and visualize collisions that might occur between any collidable entity.
  • the minimum distance calculation module: the module allows to track, record and visualize minimum distances between any measurable entity.
  • the inverse kinematics calculation module: the module allows solving in a very efficient way any type of inverse or forward kinematic problem.
  • the dynamics module: the module allows dynamically simulating objects or models to achieve object interactions (e.g. collision response, object grasping, etc.)
  • Other, similar functionality, might be offered via a plugin, as was done with the path/motion planning plugin for instance.

    Some calculation module allow registering calculation objects that are user defined. Calculation objects are different from scene objects, but are indirectly linked to them by operating on them. This means that calculation objects cannot exist by themselves:

  • Collision detection objects (or collision objects) rely on collidable objects.
  • Minimum distance calculation objects (or distance objects) rely on measurable objects.
  • Inverse kinematics calculation objects (or IK groups) rely mainly on dummies and kinematic chains, where joint objects play a central role.
  • If the integrity of a given calculation object is maintained during a copy/paste operation of scene objects, then that calculation object will also automatically be copied. For example, if collision object A is defined by collidable object B and collidable object C (i.e. performs collision detection between object B and object C), and if both objects B and C are duplicated at the same time (in a same copy-paste operation), then collision object A will also be duplicated. This represents a powerful feature allowing to duplicate not only objects or models, but also all their related calculation objects (including all related scripts), so that the full functionality and behavior of an object or model can be maintained.

    Recommended topics

  • Calculation module properties dialog
  • Collision detection module
  • Minimum distance calculation module
  • Inverse kinematics calculation module
  • Dynamics module