\input manualMacros.tex
\manBegin
\manPageInfo{RCI Reference Manual}{}{}
\manTitle{free}{1}
\manSection{NAME}
{\tt \manName{free}}
-- RCI program to free links in the robot.
\manSection{USAGE}
\cverbatim
free [<robotName>] [-sim[=<simaddr>]] [-on]
@endcverbatim
\manSection{DESCRIPTION}
Interactive program used to free (and lock) robot joints. This is
mainly used to put robots into some calibration or reference position
when they are not calibrated (like putting the PUMA 260 back into
its nest). When a robot is calibrated, there are usually easier ways
of moving it around (like the {\TT zerograv} program).

\manSection{ARGUMENTS}
\manItem{{\tt robotName} --}
Optional robot name. If absent, the name is obtained from the system file
{\filefont \$RCCL/conf/defaultRobot}.
\manItem{{\tt -sim} --}
Causes the program to be run in simulator mode, in which it will attempt to 
connect to a robot simulator program (see {\tt robotsim}) instead of 
connecting to a real robot.
\manItem{}
If unqualified, the {\tt -sim} option causes the program to seek a simulator
running on the same machine under the same user name. A different simulator
can be specified by adding an address string {\tt <simaddr>},
as in {\tt -sim=<simaddr>}. For the format of this
address string, see {\tt simAddress(5)}.

\manItem{{\tt -on} --}
Leave the robot arm power on after the program has exited.

\manSection{OPERATION}
The program is interactive. Commands are entered using the
{\it C-tree matcher}, an automatic command completion utility.
Full documentation on the C-tree matcher is given in the file
{\filefont doc/CtreeMatch.doc}.

The commands available are:
\manItem{{\tt free} --}
Free one or all the joints
\manItem{{\tt lock} --}
Lock (or `unfree') one or all the joints
\manItem{{\tt show} --}
Show the current robot encoder values. If the robot is calibrated,
also show angle values.
\manItem{{\tt quit} --}
Exit the program.
\manSection{CAVEATS}
Be careful when freeing the large joints; they are likely to fall under their
own weight.

The program right now assumes that joints 2 and 3 deserve care (as they
do for the PUMA robots), so the user asked for confirmation whenever either
of these joints is freed. The singling out of these joints might not
make sense on another robot.
\manEnd
\end
