Professional Documents
Culture Documents
Introduction
The present exercise involves experimentation with a 3D cartesian robot. It consist of two
prismatic joints allowing it to move in x and y directions and one more prismatic joint
made using a nut and screw arrangement that moves the end affector in the z-direction.
A schematic diagram of the robot is presented in the next section.
The robot is controlled using an arduino micro-controller running the ’grbl’ software.
It is a popular, light-weight g-code parser. The software architechture is briefly described
in a later section.
In the current exercise, the robot was moved through a variety of paths on a plane
and the error between the commanded path and the executed path was measured.
1
Figure 1: Schematic Diagram of the Cartesian Robot
Grbl is for three axis machines. Rotation axes have not yet been implemented in the
code. The G-code interpreter implements a subset of the NIST rs274/ngc standard and
is tested with the output of a number of CAM-tools with no issues. Linear, circular and
helical motion are all fully supported. Currently supported G-codes (as of v0.9i) are -
5. G38.2: Probing
9. G4: Dwell
2
14. G28.1, G30.1: Set Pre-Defined Position
16. G54, G55, G56, G57, G58, G59: Work Coordinate Systems
grbl has comprehensive acceleration management, planning the motions several steps
ahead thus allowing it to move the affector in a jerk-free way.
The code structure is modular in nature. Processing starts from ’main.c’. Here the
system variables are initialized and primary systems resetted. The main loop is then
started.
’grbl.h’ contains the list of all ’include’ commands for incorporating the different mod-
ules.
The ’defaults.h’ file serves as a central default settings selector for different machine
types, from DIY CNC mills to CNC conversions of off-the-shelf machines.
The many other files like eeprom.h, coolant control.h etc contain function definitions
for the myriad of functionalities provided by grbl.
3
⇒ 3.75 deg rotation of bolt −→ 0.018229 mm verticalmovement of scriber
Hence,
1 step −→ 0.018229 mm vertical movement of scriber
1 mm vertical movement of scriber −→ 54.85 steps
Hence, the step per mm of the stepper motor was determined as 54.85.
Precision Checking
Figure 2 shows the path traced by the robot based on the provided commands. Table 1
shows the variation in the actual path traced from the commanded path. The G-codes
executed are listed in the table.
4
Table 1: Error calculation