Anticipate Industry Problems With Energid's Actin® Simulation Software

Actin® software provides simple, yet powerful simulation of complex robots.

Actin® — MTVR

The Problem:

Setting up and then testing your company’s robotics system can be time-consuming and expensive.

The Solution:

Anticipate. The world’s most powerful and feature-rich commercial robotics control software – the Actin® robotics control toolkit – also runs in simulated, virtual environments.

But why devote any of your organization’s valuable resources and time to running a robotics simulation? Simple: Simulating and virtually optimizing your solution first will save you time, manpower and money.

The Actin® Simulation toolkit is not only valuable for efficiently designing and optimally implementing robots, it’s also very valuable as a training tool for managers and supervisors as well as a visualization and marketing tool for your sales force.

In all, Actin® Simulation provides power and perspective to create the trimmest and smartest robotics solution, customized for your needs.


Features of Actin® Simulation

  • CAD integration
    Whatever CAD system your team is using – so long as it can output in standard CAD formats – Actin® Simulation will run seamlessly with it.
  • Kinematic and dynamic simulation
    If there’s an unanticipated obstacle in your solution, Actin® Simulation will enable you to root it out before it can become a costly, real-world headache: Actin® Simulation runs forward and inverse kinematics calculations in real-time over more than one-hundred degrees of freedom (DOF). It also runs full Newton-Euler rigid body dynamics calculations — using both composite rigid body inertia (CRBI) and articulated rigid body inertia (ARBI) algorithms.
  • Rendering
    For all its number-crunching power, Actin® Simulation also generates equally powerful visualizations. See your solution from the perspective of any manipulator in the system, or any combination of manipulators, using a simple and easy to use interface. The resulting videos enable more intuitive debugging and smarter placement of cameras for teleoperating your system in the real world.
  • Cameras and sensors
    The Actin® Simulation Toolkit also simulates virtual cameras, stereo vision systems, range sensors, LIDAR and other assets. So your team will be prepared beforehand to provide any parameters these real-world sensor systems might need – including focal length, position/orientation, pixel resolution, and sensor noise.
  • The Power of XML
    The entire Actin® Simulation toolkit can be customized for your particular operation and environment, using XML and XML-configurable C++ objects. All the raw power and mathematical tools your tech team expects — such as quaternions, Euler angles, Rodrigues parameters, and direction cosine matrices — comes optimized for performance.
  • Fully networked
    Actin® Simulation is fully compatible with remote supervision and teleoperation and can run with front-end and back-end components on different computers. The tools you need for a fully networked simulation environment — TCP/IP and UDP/IP sockets, networking stream classes for XML data — come ready for use.




  • CAD integration
    Actin® simulation tools can load a model from a CAD format and automatically create a control system so you can interactively experiment with the simulated robot or execute parametric or randomized studies.



  • Kinematic simulation
    Actin’s powerful constraint solving ability can be used for kinematic simulations that calculate the forward and inverse kinematics of high degree of freedom (over 100 DOF) robotic systems in real time. Actin® can simulate the coordination between multiple robots of any type or manufacturer as well as attachments to other simulated robots, tooling, and objects, ideal for simulating tool changing systems and manipulating objects and grasping.


  • Dynamic Simulation
    Actin® provides an accurate dynamic simulation capability. This includes full and accurate Newton-Euler rigid body dynamics on all articulated links and impact dynamics between obstacles. Dynamics are calculated for nontraditional joint types as well. Both the Composite Rigid Body Inertia (CRBI) algorithm and the Articulated Body Inertia (ARBI) algorithm are implemented. The CRBI algorithm is an Order(n3) method, which is efficient for mechanisms with few—less than 15 or so—degrees of freedom (DOF), while the ARBI algorithm is an Order(n) method, efficient for high-DOF mechanisms.
  • Rendering
    Actin® provides cross-platform rendering and visualization capability. Any manipulator can be viewed through an easy-to-use interface that pops up a window with an animation. Any number of manipulators can be shown in the visualization. The specular properties of polygons can be set, polygons can be bit mapped, and any number of lights can be configured, which can generate accurate shadows. Any number of simulated cameras can be created. These tools provide capability for intuitive debugging and for creating human-machine interfaces for remote supervision and teleoperation.

Epson Camera Energid box

  • Cameras and sensors
    Actin® supports the simulation of various sensors, including cameras, stereo vision systems, range sensors, and LIDAR. It also includes algorithms for analyzing captured images and using the results as information to feed back to the simulation for control. The toolkit includes camera calibration algorithms that allow for the automatic calculation of camera parameters, such as focal length and position/orientation. These tools provide capability for making vision-based robotic control systems.




  • XML
    Components of Actin® simulations are configurable using XML, and you can easily connect your code with components from the Actin® toolkit to build XML-configurable C++ objects. In addition to reading and writing themselves in XML, all XML-configurable objects can write their own validating schemas. So if you use the Actin® toolkit to build your system, you will also be designing an XML language that can be used with other commercial software products. The toolkit includes a number of tools for easy and efficient mathematical and geometric calculation. These include three-dimensional vector math and matrix routines such as transformations. Conversion utilities for three-dimensional quantities are included. Orientations can be accessed and mutated from quaternions, Euler angles, Rodrigues parameters, angle-axis, direction cosine matrices, and so forth. These are all optimized for performance. With the Actin® toolkit, you do not have to re-implement these basic functions.
  • Network
    The toolkit includes C++ classes for network communications. Sockets are implemented both for TCP/IP and UDP/IP communications. A networking stream class is implemented to allow the transmission of XML data from one network location to another. This allows front-end and backend components to be implemented on different computers for remote supervision and teleoperation.


Actin’s ability to simplify difficult robotic control problems makes it the premiere choice for current and next generation robotics applications. As robotic mechanisms becomes more complex, so too must the software that controls them. Yet Actin® allows this complexity to be hidden from the developer by a simple object oriented interface. Some applications for Actin® are the following.

Actin’s robotic simulation tools have been used to simulate a number of different robotic systems, both mobile and fixed including many that were ultimately controlled using Actin®.

  • Design validation
    Use Actin® to simulate robots as part of the design process. By using the Actin® simulation tools, users can simulate the behavior of a system before ever manufacturing a prototype. Actin® can be used for workspace evaluation, reachability studies, reasoning for manipulation and grasping.


robonaut mugshot

Actin® can also be used for dynamically simulating rigid body dynamics and calculating the frictional and contact forces/torques on the bodies in the simulation. Actin® supports collisions between bounding volumes made from any number of primitive shapes such as spheres, lozenges, cubes, and more. Also supported is full mesh-mesh collision. This capability can be applied to dynamically simulate robot arms for payload and collision analysis. Actin® can simulate joint actuators such as servos and motors, and take into account parameters including inertia, friction, gear ratio, torque, and gear backlash in order to test how a system will perform and how it will react to varying loads and conditions. Actin® dynamic simulation can also be used to model robotic rovers to evaluate performance on different terrains.


A user can also interface with their own human machine interfaces to drive the simulation in order to evaluate them without hardware to control.

  • Evaluate existing hardware
    Actin® can also be used to simulate and evaluate existing hardware to determine workspace and reachability, as well as what kind of performance can be achieved. Configure the simulation to match the specifications provided by the manufacturer. For example, given a set of joint velocity limits, Actin® can determine the maximum end effector velocity.
  • Evaluate Vision Systems
    Use Action to simulate complex vision systems and evaluate their design before ever buying a camera. Input the relevant properties to the simulated cameras, and visualize what the real hardware will see. Test your camera layout for desired visibility of your system.
  • Parametric and Monte Carlo Studies
    Actin® provides capability for parametric and Monte Carlo studies. A parametric takes discrete steps through changes in initial state or system parameters and tabulate simulation results. The design of the parametric study includes 1) representation changes to the initial state and system, and 2) a representation of the results of the simulation runs. A parametric study will allow the user to easily change in fixed increments initial configurations, control parameters, surface properties, weights, lengths, end effectors, motor torques, and actuator effectiveness, and then tabulate the results of those changes. Results include measures of sensor saturation, visibility, speed, mobility, balance, end effector placement, and manipulation. A Monte Carlo study is performed by selecting random initial values for the system and state parameters. In addition, noise is input to sensor and actuator models. The noise models for the sensors and actuators is built into the classes that define them. The initial conditions for the system state are selected based on a set of probability density functions, as are the selected values for a time sequence of desired end-effector positions. In Actin®, Monte Carlo studies can be used to perform parameter-optimization analysis to determine the best design values.


Energid Technologies’ Actin® approach is multifaceted, with algorithmic, language, and software-implementation components. The core velocity framework is based on a number of unique, patented methods for iterative linearization and solution of the equations of motion. It is implemented using a tree structure. This tree structure exists in the C++ code and is defined using XML.

  • Simulation Structure
    The manipulator structure is described through a dichotomy: system and state. The system remains the same, time step to time step, while the state changes. The system is decomposed into any number of manipulators, each of which is represented through any number of links in a tree structure. Each link in the tree describing a manipulator holds the following information: 1) kinematic data, 2) mass properties, 3) actuation parameters, 4) physical extent, 5) surface properties, and 6) bounding volumes. The state is decomposed into a velocity and a position state, manipulator by manipulator. Separating system and state allows easy logging, check pointing, and storage of the dynamic information.There are many possible types of end effector constraints to associate with a link. Most end effectors are rigidly attached to some link on the manipulator, and they can be attached in any way. Point end effectors, for example, can be attached with any offset, and frame end effectors can be attached with any offset and rotation. Some end-effectors are not attached to a specific link—examples include center-of-mass constraint and spatial momentum constraint.

End-effector types are listed below:

  • axisRotateEndEffector
  • centerOfMassEndEffector
  • coordinatedJointEndEffector
  • frameEndEffector
  • freeSpinInZEndEffector
  • linearConstraintEndEffector
  • lookAtEndEffector
  • orientationEndEffector
  • planarEndEffector
  • pointDistanceEndEffector
  • pointEndEffector
  • projectedCenterOfMassEndEffector

For more information read our white paper.