/articulations-robot-demo

Primary LanguageC#Apache License 2.0Apache-2.0

Unity Robotics Demos

The recent integration of Nvidia's PhysX 4 into Unity has dramatically improved the quality of robotics simulation that is possible in Unity.

  • The new articulation joint system (available in 2020.1) is much better suited to building things like robot arms than the older joint types available in Unity. It uses Featherstone's algorithm and a reduced coordinate representation to gaurantee no unwanted stretch in the joints. In practice, this means that we can now chain many joints in a row and still achieve stable and precise movement.

  • The new Temporal Gauss Seidel (TGS) solver also supports more accurate simulation.

Installation

Unity 2020.10b1 or later is needed for the new joint system.

Install Unity

If you do not have Unity 2020.1.0b1 or later, add the latest 2020.1 beta release through Unity Hub. This demo has been last tested on Unity 2020.1.0b5.

Clone the Articulations Robot Demo Repo

Clone this repository:

git clone https://github.com/Unity-Technologies/articulations-robot-demo.git

Then, open the ArmRobot project in Unity.

UR3 Robot Arm

This is a simulation of the Universal Robotics UR3e robot. You can steer it by directly rotating all six joints of the arm. You can also rotate the end effector, and open and close the pincher.

Open Scenes > ArticulationRobot, and press play.

Manual Controls

You can move the robot around manually using the following keyboard commands:

A/D - rotate base joint
S/W - rotate shoulder joint
Q/E - rotate elbow joint
O/P - rotate wrist1
K/L - rotate wrist2
N/M - rotate wrist3
V/B - rotate hand
X - close pincher
Z - open pincher

All manual control is handled through the scripts on the ManualInput object. To disable manual input, just uncheck this object in the Hierarchy window.

You can learn more about how this robot was built with articulations by following our guide here.

Robotiq Hand-E Gripper

This simulation focuses on picking up objects with the Robotiq Hand-E Gripper.

Open Scenes > GripperScene, and press play. Try to pick up the cube and drop it!

Manual Controls

Use the following keyboard commands:

G - down
H - up
X - close pinhcer
Z - open pincher

Survey

Your opinion matters a great deal to us. Only by hearing your thoughts can we continue to make Unity a better simulator for robotics. Please take a few minutes to let us know about it.

Fill out the survey

License

Apache License 2.0