Once in Unity, each part of the robot was assigned to a different GameObject and scale was adjusted individually
to a scale factor of 0.3. Finally the robot was constructed by embedding each GameObject in a hierarchical way
according to the hierarchical order of the DOF’s links in the real world robot.
The virtual model of the robot was programmed using built-in functions of Unity, mainly the Transform function,
which allows to store and manipulate the position, rotation and scale of the GameObject in a scene. Each
GameObject movement is done having a point of origin as a home reference, which is where the robot is initialized
when the program starts.
By programming the degree and direction of rotation of each degree of freedom of the robot, according to the
manufacturer specifications, many things are accomplished:
First, rotation angles information can be displayed to a GUI in order to assist the user when a high precision task
is required to grab an object or if user is assigned a task to configure the degrees of rotation necessary to move an
object form one place to another.
A core feature of this app version is a function programmed in Unity to measure the differential angle of each
DOF. This function is used to create the instructions program that will be downloaded to the real world robot. This
file is generated programmatically from the Unity script and it will instruct the robot which degree of freedom, angle
and direction to move. The purpose of generating a second file is to keep positions. Positions coordinates are
generated having as a reference the robot’s gripper. The positions format includes the gripper status (open or closed)
and its rotation angle