Configurable Robot Control Framework
Our new robot controller development framework can be configured for use on a wide range of platforms including real-time operating systems. The framework’s modular design and XML configuration allows system developers to embed Actin’s advanced kinematic control capabilities into existing robotic systems with minimal programming and to more easily develop a completely new system from proof of concept through commercial deployment.
Simultaneous Position and Velocity Control
Motion constraints of the same manipulator can now be run in different control modes, such as position control or velocity control. This is particularly useful for bifurcating manipulators, where one branch runs in position control mode to reach a target position, while the other runs in velocity control mode to reach a target velocity.
Jerk limiting allows point, frame, and joint motion to be specified with limits on the third time derivative of position. The time derivative in position is velocity, that of velocity is acceleration, and the time velocity of acceleration is jerk. With jerk limiting, the velocity profile is trapezoidal with rounded corners.
Limiting jerk is useful for preventing vibration in a robot because vibrational modes are stimulated less on path start, path stop, and velocity transitions. In Actin, jerk limiting can be turned on and off and the limits set within the individual constraints used for motion control.
Actin System Control Viewer Application
This new Actin application provides a view into the system control configuration, including the control threads, processes, data store, and multiple manipulators. Each manipulator has control tasks and a configured finite state machine. This application simplifies the display of the configuration information in a visual format that is easier to understand than reading the underlying XML files.
Custom Motion Scripts
Actin includes a variety of built-in motion scripts that allow robots to accomplish a wide range of tasks. The addition of custom motion scripts allows users to be able to create their own motion scripts that are customized for their specific needs. Users can also register these custom motion scripts within their applications and use them together with the built-in ones to accomplish even more. With custom motion scripts, the possibilities are endless.
Users can now specify objects in the simulation as static. These static objects (which must be fixed-base without any movable joints) can then be handled more efficiently by the collision detection and simulation systems. For simulations with many non-moving objects, this can provide a significant reduction in system performance, particularly when utilizing active collision avoidance. Objects can be dynamically switched between static and non-static while the simulation is running.
Motion Script Introspection
EcMotionScriptObject now defines a pure virtual token method. Subclasses return their own token. This allows SDK users to get the specific type of an EcMotionScriptObject child. This allows user code to provide operators with detailed feedback of during the operation of a motion script.
Improved Adherence of State Machines to Industry Standards
The order of state machine action execution has been changed to match the SCXML standard. Upon transition, the current state's onExit actions are called, then the transition actions, which are followed by the target state's onEntry actions.
More Robust State Machine Operation
State machine transitions are now validated at configuration time to ensure that target state IDs match existing states. This ensures that configuration errors are caught at startup and not during runtime.
Over the course of this release we have resolved a large number of issues. We are including an overview of the highest profile issues that have been fixed for Actin 5.1.
Over the course of this release we have resolved a large number of issues. Read the resolved issue list to review the highest profile issues that we have closed.