Design and produce something with a digital fabrication process
(incorporating computer-aided design and manufacturing) not covered
in another assignment, documenting the requirements that your
assignment meets, and including everything necessary to reproduce it.
Summary
KUKA KR6 R900 sixx
robot. It's a small scale industrial robot arm from the German manufacturer "KUKA". It can be conventionally programmed
through a touch interface called the "Teach Pendant" and using a language called "KRL, short for KUKA Robot Language".
How to reproduce it
1: Adding the extension to Inkscape
To install the extension:2: Using the extension to convert Text to KRL
Path -> Object to Path
or press Shift + Ctrl + C
to convert the text into a path. The Plugin will use this path to generate the KRL Code.
Extensions -> KUKA Tools -> Path to KRL
to start our plugin.3: User Guide to extension settings
Under most circumstances, a KUKA user first defines the TOOL and the BASE then refers to them in KRL using $TOOL, and $BASE system variables. The Tool can be defined through one of these two main procedures:
Start-up -> Calibrate -> Tool
.
$TOOL = TOOL_DATA[1]
where 1 is the saved tool number.$TOOL = {X 280, Y 0, Z -10, A 30, B 90, C 0}
where XYZ is the translational offset, and the ABC are Euler angles between the new base and the FLANGE coordinate system.For this extension, you can only choose the tool number that matches yours, but if you desire to write the values manually, you can edit the created SRC file and add your values.
Defines the relative orientation of the selected tool relative to the selected base in certain motion path.
Example: LIN {X 0, Y 0, Z 0, A 90, B 180, C 0}
This transformation can be performed by:
Note that the ABC angles are the same as Euler angles, but with a little bit different names, as the rotation about tool’s z-axis is named C in Euler’s.
Defines the velocity at which the robot's TCP is moving while moving according to the desired path. It is expressed in units of Meter Per Second.
Defines the velocity at which the robot's TCP is moving while jumping from a path to another. It is also expressed in units of Meter Per Second.
Defines the desired Base number. The idea behind this is typically similar to the Tool in section 4.1.
Defines the shift from the selected base origin along the x-axis and y-axis. It is expressed in millimeters.
Defines the desired TCP's Z-axis value when the TCP is moving according to the desired path. It is expressed in millimeters.
Defines the desired TCP's Z-axis value when the TCP is jumping from a path to another. It is expressed in millimeters.
In order to increase velocity, avoid jerky motion, and achieve continuous motion along complex paths, points for which exact positioning is not necessary can be approximated. The robot takes a shortcut as illustrated below.
The various approximation motions are:
$APO.CDIS
. If the approximate positioning is triggered by this variable, the controller leaves the individual block contour, at the earliest, when the distance from the end point falls below the value in $APO.CDIS
.
Its value is expressed in millimeters.$APO.CVEL
. This value specifies the percentage of the programmed velocity $VEL
at which the approximate positioning process is started, at the earliest, in the deceleration phase of the individual block. The component which, during the motion, reaches or comes closest to the programmed velocity value, is then evaluated in terms of translation, swivel and rotation.
Its value is expressed in integer number percentage.$APO.CORI
. In this case, the individual block contour is left, at the earliest, when the dominant orientation angle (swiveling or rotation of the longitudinal tool axis) falls below the angle distance, defined in $APO.CORI
, from the programmed approximate positioning point.
Its value is expressed in degrees.Defines the value of the selected approximation type. The greater the value of approximation, the more the path is rounded. You can get fine results by setting the its value to 0.5 for Distance type approximation.
Defines the name of the user making this path. It'll be added as a comment in the code's header.
Defines the folder at which the output file will be located.
Defines the name of the output file. It should be ended with .src
Adds a number at the end of the file name to allow multiple files with the same name to be saved in the same directory. So for instance, if the file name is output.src, it will be saved like output_0001.src
4: Running the file on the KUKA robot
Expert
user groups should be selected.