Chrono::R3D
Introduction to the main features


An extensive toolset of simulation features, which allow you to set up realistic animations of your physical systems.


In Chrono::R3D, mechanical systems are basically made of rigid bodies (the parts), each body can contain markers (auxiliary geometric references), and links can be entered to constraint the relative movements of markers.

There is no need to identify skeletons or kinematical chains, like in other software, so you wont ever worry about closed-loops chains: you just create constraints between separate bodies.

You can delete, create, load, save, cut and paste all these objects, even while the simulation is running. Complex mechanisms can be arranged into parts and subparts, with hierarchical organization of parts.

Thank to the Realsoft3D 'model-view' concept, the modifications of constraints, forces and objects are instantly displayed in the 3D views, and the simulation can be modified interactively, with a 'man in the loop' approach.
Animation: creation of mechanisms An example of how the user can set up an articulated mechanism ant test its kinematics, using interactive Chrono::R3D tools.
Examples of constraints Some examples of constraints which are available in Chrono::R3D There is a wide set of constraints: revolute, ball joint, rack-pin, cylindrical, prismatic, gears, Oldham, hook, screws, parallelism, perpendicularity, distance, point on a spline, point on a plane, Birfield joint, welding, forced trajectory, and much others.

Constraints have advanced non-linear settings to simulate non-linear behaviours (link limits, non-linear damping and stiffness, impulsive restitution, internal forces, rheonomic forces, etc.)

Each link has a mnemonic 3d picture and a custom wireframe representation.

If needed, motion can be imposed to constrained links (ex: to build actuators, imposing the relative motion of two bodies. You can use X-Y-Z-Angle motion functions, with user friendly GUI for functions such as imposed speed, ramp, sine wave, motion capture, polynomial function, hand-drawn curve, sigma ramp, formula, etc.)

Link internal forces can be added (for each degree of freedom, the user can set a force, a spring and a damper. These parameters can be nonlinear in space and in time. For example, a prismatic link can have a nonlinear spring along the Z axis to simulate a Mac-Pherson suspension in a car simulation, where the spring becomes very stiff when the end of the guide is reached, and so on..).

The user can also impose link limits (upper-lower limits for all the degrees of freedom of the link. This feature is useful for building mechanisms such as linear guides with end stops, or elbows with angular limits in ragdolls or crash test dummies.

There are many specialized links to build engines, linear actuators, brakes etc. For example, the user can set torque-speed diagrams for engine constraints.

Here are some of the specialized links:
:: Special link objects to make gears (internal, external, conical)
:: Spring-damper systems, with non-linear properties
:: Brakes and clutches, with stick-slip effects, etc.
:: Motors, with reducers, efficiency, etc.
:: Linear actuators and pneumatic actuators with valves.
Examples of properties Example of object properties: here the user can modify the settings of a 'motor' constraint.
Ch-Function editor Generic non-linear functions (ex: motion laws, time-dependant forces, etc.) can be easily modified with the 'ChFunction editor' interface. Motor actuators can be easily added, with imposed speed or imposed rotation or imposed torque. The user can modify the torque-speed curves or apply specific motion laws.

A reducer can be applied, with specific transmission ratio and efficiency. The motor can learn the motion, when switched off.

There are also linear actuators, with user imposed motion or force. The actuator can ‘learn’ the motion, when switched off.

Pneumatic linear actuators. The user can set pressure, valve opening, stroke length, diameter, etc. Effects caused by air compression and outlet conductance are taken into account.
Rigid bodies have many settings, for example: mass, inertia (diagonal and mixed), position, alignment (different rotational coordinates can be used to enter data or to output simulation results, for example Eulero angles, Eulero paramenters/quaternions, Cardano angles, etc.), speed, angular speed, acceleration, etc.

Rigid bodies can perform collision detection, hence the properties of static/dynamic friction and restitution coefficient. Artificial clamping can be imposed on the maximum angular speed and linear speed, to improve numerical stability in real-time simulations.
Examples of gears Chrono::R3D can simulate complex gears
Examples of pneumatic cylinder Chrono::R3D can simulate pneumatic actuators. Here the user is modifying the properties of a cylinder. Collision detection uses fast and modern algorithms to perform simulations of hundreds of colliding objects in real-time.

The simulation engine of Chrono::R3D handles automatically the switching between a colliding contact which becomes a sliding or resting contact, and viceversa.

Markers (i.e. auxiliary coordinates into bodies) have many settings. Among these, the most important is the ability of imposed motion of marker about body (with X-Y-Z-Angle motion functions, using user-friendly functions such as imposed speed, ramp, sine wave, sequence of sub-functions, javascript functions or formulas, etc.)
Forces and torques can be applied everywhere, even time- and position-varying. Also spring-dampers systems can be applied. Positional and force actuators can be placed where you need them.

By using ChFunctions and their graphical editor, it is easy to set up non-linear forces (for example to have a force which smoothly vanishes as the time passes)

The ChFunctions components are modular user functions which can be easily modified thorough intuitive graphical interfaces. Such ChFunctions are extensively used in all the Chrono::R3D software. There is a wide choiche of basic functions, which can be easily sequenced, differentiated, mixed, nested, etc.
Examples of pneumatic cylinder One of the most exciting applications if Chrono::R3D, vehicle simulation. On fast computers, the user can steer and brake in real time, like in a videogame.
Simulate robot jog-control Chrono::R3D offers drag-and-drop sliders and buttons, which you can use to build custom 'panels' to interact with mechanism variables and Javascript control programs. Here, the off-line control panel of a robot is tested. Virtual prototyping is easy with Chrono::R3D: the animations can be recorded, reviewed, fine tuned, modified by key-framing, saved as VRML for WEB publishing or team-work, rendered on videotapes for presentations with true photorealistic quality (i.e. true raytraced animations with the power of Realsoft3D multithreaded rendering engine, exploiting advanced features like volumetric materials, programmable shaders, complex optical effects, etc. All available in the same environment).

Note that all the variables of Chrono::R3D can be recorded into graphs as the simulation proceeds. Graphs can be edited, fine-tuned, filtered and printed if necessary, or exported into ASCII or Matlab tabbed files.
Chrono::R3D offers many simulation tools, for example:
:: Inverse Kinematics. The IK can be run as an animation, or it can be performed interactively by the user (for example the user turns a wheel with the mouse in the 3d view and a mechanism gets the movement).
:: System assembly. Redundant or misplaced links are automatically removed.
::Non-linear static analysis.
:: Full multibody dynamical simulation.
Compute working volume The EXTREME version of Chrono::R3D has additional features, such as a genetic optimizator, graph plotting, etc.
Demo anim Demo anim Demo animations. Most variables of Chrono::R3D objects can be accessed and read or modified via Javascript OOP scripting. Scripting can be executed in a shell or introduced with programs.

A special object controls can be used to build mechanisms with embedded scripts, to be executed at each simulation step. This allow the design of automated devices, AI machines, etc.

The ‘controls’ object can be used also to assign a graphical user interface, a panel, to a device. The user can move sliders on this panel during the simulation, in order to control some variables (ex. drive a car in realtime simulations)

A special Javascript object can be used to simulate PID digital controllers for the design of mechatronic devices with feedback circuits (ex: the control circuitry of a missile or an airplane).
Other features :

Optimization tool which can be used to find automatically the best design for your mechanisms. It uses Javascript functions, but an easy graphical interface is provided. (only for EXTREME version).

Optimization engine based on applied genetic evolutionary theory, for global finding. Optimization engine based on gradient search engine, for local refinement.

Record variables into x-y functions. These can be saved in Chrono::R3D .chf format, or in ASCII streams, or in .eps plots, or in Matlab format.

Plot trajectories of whatever point of moving parts.

Plot x-y diagrams onto curved surfaces.

Draw 3D vectors, to show instant speed of points, or to show reactions in constrsaints, etc.

Record whatever Javascript variable, or plot formulae which use variables.

Advanced tool for cam design. It can draw the shape of internal/external cams, with whatever type of follower (flat, wheel, etc.)

Tool to build a dummy (a multibody model of a man), given weight, height, etc.

Tool which computes the working volume of a device (ex. a robot prototype) and its stiffness, or similar properties.

Javascript functions for advanced math operations. Functions and matrices can be plotted, either in 2d or in 3d.

'Readme' object, which can be used to insert HTML comments into your projects and objects. Useful when sharing projects with other people.

Etc...
Demo anim Demo animation.
Copyright DeltaKnowledge

Software
:: Chrono::R3D
:: Chrono::Engine
:: Revolution4D
:: Phenomena

3D artwork
:: Gallery

Consulting
:: Design
:: Research
:: Training

Other
:: Home
:: Links
:: News
:: Books
:: Shop
:: Contacts
Partners
Realsoft OY
Other

News
25 March 2008
Email addresses changed.

2 May 2007
Chrono::R3D plugin released!

1 May 2007
Revolution4D plugin released! (for free!)