A programming system for a robot comprises a portable programming terminal
(6) having a series of jog keys (14) for controlling the motions of the
robot, a key (18) for selecting one among a plurality of possible
co-ordinate system for the jog keys (14) and a key (21) for storing the
position reached by a predefined point of a tool supported by the robot,
as a result of a motion thereof. The terminal (6) comprises additional
control keys (40, 41), able to be operated manually instead of the jog
keys (14), to cause, independently from the co-ordinate system selected
with the selection key (18), a Cartesian and/or angular displacement of
the predefined point of the tool relative to a reference point that may
be varied at will, which corresponds to the position of the operator who
uses the terminal (6).