perm filename A.XGP[1,VDS]37 blob
sn#280997 filedate 1977-05-03 generic text, type T, neo UTF8
/FONT#1=BDR30/FONT#2=SIGN57/FONT#3=NGR25/FONT#4=NGR20
␈↓↓␈↓α␈↓β␈↓∧␈↓α␈↓ ∧πUNIMATION INC.␈↓ ↓H
␈↓β␈↓ εW␈↓ ↓H
␈↓ ↓H
␈↓↓␈↓ ε9VAL␈↓ ↓H
␈↓ ↓H
␈↓ αGINSTRUCTION SET FOR UNIMATION MANIPULATOR CONTROL PROGRAM ␈↓ ↓H
␈↓ ¬8Version of March 1,1977␈↓ ↓H
␈↓β␈↓ ↓H
␈↓ α_For␈α∞the␈α∞following␈α∞instructions,␈α∞commas␈α∞are␈α∞to␈α
be␈α
used␈α
to␈α
separate␈α
variables.␈α
If␈α
an␈α
argument␈α
is␈↓ ↓H
␈↓ ↓Hoptional,␈αthe␈αdefault␈αvalue␈αwill␈αbe␈αused␈αif␈αno␈αvalue␈αis␈αgiven.␈α
The␈α
names␈α
of␈α
transforms␈α
and␈α
programs␈α
can␈↓ ↓H
␈↓ ↓Hconsist␈α
of␈α
up␈α
to␈α
six␈α
characters.␈↓ ↓H
␈↓ ↓H␈↓↓␈↓ ↓H
␈↓ ∧∞MONITOR COMMANDS - DEFINING POSITIONS␈↓ ↓H
␈↓β␈↓ ↓H
␈↓ ↓HThe␈α
following␈α
commands␈α
are␈α
used␈α
for␈αdefining␈αtransforms␈αand␈αdetermining␈αthe␈αcurrent␈αposition␈αof␈αthe␈↓ ↓H
␈↓ ↓Harm.␈α
Transforms␈α
are␈α
specified␈α
in␈α
cartesian␈α
coordinates␈α
and␈α
Euler␈α
angles.␈↓ ↓H
␈↓ ↓H␈↓↓␈↓ ↓H
Command ␈↓ βP ␈↓ ∧(␈↓ πyOperation ␈↓ ↓H
␈↓β␈↓ ↓H
TRANS <trans>␈↓ β8␈↓ ∧λ␈↓ ∧XUsed␈αto␈αspecify␈αand␈αmodify␈αthe␈αvalue␈αof␈αtransform␈α<trans>.␈αThe␈α
current␈↓ ∧X
␈↓ ∧Xvalue␈α∂of␈α∂the␈α∂transform␈α∂is␈α∂printed␈α∂and␈α∂any␈α∂of␈α∂the␈α∞transform␈α∞elements␈↓ ∧X
␈↓ ∧X(x,y,z,o,a,t)␈α⊃can␈α⊃be␈α⊃modified␈α⊃by␈α⊃typing␈α⊃a␈α⊃new␈α⊃value␈α⊃after␈α⊃the␈α⊂query␈↓ ∧X
␈↓ ∧XCHANGES?.␈αValues␈αthat␈αare␈αnot␈αto␈αbe␈αchanged␈αcan␈αbe␈αomitted.␈αChanges␈↓ ∧X
␈↓ ∧Xare␈α∂continuously␈α∂asked␈α∂for␈α∂until␈α∂no␈α∂change␈α∂in␈α∞the␈α∞transform␈α∞is␈α∞made.␈↓ ∧X
␈↓ ∧XThe␈αX,Y,Z␈αspecify␈αthe␈αposition␈αof␈αa␈αpoint␈αcentrally␈αlocated␈αbetween␈αthe␈↓ ∧X
␈↓ ∧Xfinger␈α⊃tips␈α⊃in␈α⊃table␈α⊂coordinates.␈α⊂O,A,T␈α⊂specify␈α⊂the␈α⊂orientation␈α⊂of␈α⊂the␈↓ ∧X
␈↓ ∧Xhand.␈α∂With␈α∂all␈α∂three␈α∂angles␈α∂(in␈α∂degrees)␈α∂zero,␈α∂the␈α∂hand␈α∞points␈α∞in␈α∞the␈↓ ∧X
␈↓ ∧Xnegative␈α⊗Y␈α⊗direction␈α⊗with␈α⊗the␈α⊗fingers␈α⊗in␈α⊗a␈α⊗horizontal␈α⊗plane.␈α⊗The␈↓ ∧X
␈↓ ∧Xorientation␈α⊃vector␈α⊃which␈α⊃points␈α⊃from␈α⊃one␈α⊃finger␈α⊃tip␈α⊃to␈α⊃the␈α⊃other␈α⊃is␈↓ ∧X
␈↓ ∧Xaligned␈αalong␈αthe␈αX␈αaxis.␈αO␈αspecifies␈αa␈αrotation␈α
of␈α
the␈α
orientation␈α
vector␈↓ ∧X
␈↓ ∧Xabout␈α∞a␈α∞vertical␈α∞direction.␈α∞Thus␈α∞at␈α∞O=90deg,␈α∞the␈α∞hand,␈α∞still␈α∞horizontal,␈↓ ∧X
␈↓ ∧Xwould␈α∂point␈α∂along␈α∂the␈α∂positive␈α∂X␈α∂direction.␈α∂A␈α∂is␈α∂a␈α∂rotation␈α∂about␈α∞the␈↓ ∧X
␈↓ ∧Xorientation␈α∃vector.␈α∀With␈α∀A=90deg.␈α∀the␈α∀hand␈α∀always␈α∀points␈α∀straight␈↓ ∧X
␈↓ ∧Xdown.␈αT␈αis␈αa␈αfinal␈αrotation␈αabout␈αthe␈αaxis␈αof␈αthe␈αwrist␈αand␈αcorresponds␈↓ ∧X
␈↓ ∧Xto␈α
a␈α
rotation␈α
of␈α
the␈α
final␈α
(#6)␈α
joint.␈↓ ∧X
␈↓ ∧X␈↓ ↓H␈↓ α_␈↓ ↓H
HERE <trans>␈↓ β8␈↓ ∧λ␈↓ ∧XDefines␈α∞transform␈α∞<trans>␈α∞to␈α∞be␈α
current␈α
arm␈α
position.␈α
As␈α
with␈α
TRANS,␈↓ ∧X
␈↓ ∧Xpost␈α∪modification␈α∪of␈α∩the␈α∩Euler␈α∩angles␈α∩(O,A,T)␈α∩and␈α∩cartesian␈α∩position␈↓ ∧X
␈↓ ∧X(X,Y,Z)␈α
is␈α
permitted.␈↓ ∧X
␈↓ ∧X␈↓ ↓H␈↓ ↓H
TF <trans>,X,Y,Z,O,A,T␈↓ ∧λ␈↓ ∧XInitializes␈α∂the␈α∂transform␈α∂<trans>␈α∂to␈α∂the␈α∂specified␈α∂value.␈α∞All␈α∞arguments␈↓ ∧X
␈↓ ∧Xleft␈α
unspecified␈α
will␈α
be␈α
set␈α
to␈α
zero.␈α
This␈α
instruction␈αis␈αused␈αmainly␈αfor␈↓ ∧X
␈↓ ∧Xreading␈α
in␈α
transforms␈α
that␈α
have␈α
be␈α
punched␈α
on␈α
paper␈α
tape.␈↓ ∧X
␈↓ ∧X␈↓ ↓H␈↓ ↓H
WHERE␈↓ ∧XPrints␈α⊃out␈α⊂the␈α⊂current␈α⊂location␈α⊂of␈α⊂the␈α⊂arm␈α⊂in␈α⊂Euler␈α⊂and␈α⊂joint␈α⊂angles␈↓ ∧X
␈↓ ∧Xalong␈α
with␈α
the␈α
current␈α
hand␈α
opening.␈↓ ∧X
␈↓ ∧X␈↓ ↓H␈↓ ↓H
␈↓↓␈↓ ↓H
␈↓ ∧∞MONITOR COMMANDS - PROGRAM CONTROL␈↓ ↓H
␈↓ ↓H
Command ␈↓ λ∧Operation ␈↓ ↓H
␈↓β␈↓ ↓H
EXEC <PROG>,<NLOOP>,<STEP>␈↓ ∧XExecutes␈αthe␈αmotion␈αprogram␈α<PROG>,␈α
<NLOOP>␈α
number␈α
of␈α
times.␈α
A␈α
loop␈↓ ∧X
␈↓ ∧Xis␈αterminated␈αwhen␈αeither␈αa␈α
STOP␈α
instruction␈α
or␈α
the␈α
last␈α
defined␈α
step␈α
of␈↓ ∧X
␈↓ ∧Xthe␈α
program␈α
is␈α
encountered.␈α
If␈α
<nloop>␈α
is␈αomitted,␈αthe␈αprogram␈αwill␈αbe␈↓ ∧X
␈↓ ∧Xexecuted␈α∩one␈α∩time.␈α∩If␈α∩<prog>␈α∩is␈α⊃omitted,␈α⊃execution␈α⊃of␈α⊃the␈α⊃last␈α⊃user␈↓ ∧X
␈↓ ∧Xprogram␈α
EXEC'ed␈αwill␈αbe␈αre-initiated.␈αIf␈α<STEP>␈αis␈αspecified,␈αthe␈αmotion␈↓ ∧X
␈↓ ∧Xprogram␈α
begins␈α
execution␈αat␈αmotion␈αprogram␈αstep␈α<STEP>␈αfor␈αthe␈αfirst␈↓ ∧X
␈↓ ∧Xpass,␈αotherwise,␈αthe␈αprogram␈αstarts␈α
execution␈α
at␈α
step␈α
#1.␈α
All␈α
successive␈↓ ∧X
␈↓ ∧Xpasses␈α
begin␈α
at␈α
the␈α
start␈α
of␈α
the␈α
program.␈↓ ∧X
␈↓ ∧X␈↓ ↓H␈↓ ↓H
P ␈↓ ∧XProceeds␈α_motion␈α↔program␈α↔at␈α↔the␈α↔step␈α↔following␈α↔the␈α↔step␈α↔where␈↓ ∧X
␈↓ ∧Xexecution␈α
was␈α
halted␈α
due␈α
to␈α
a␈α
PAUSE␈α
instruction␈α
or␈α
runtime␈α
error.␈↓ ∧X
␈↓ ∧X␈↓ ↓H␈↓ ↓H
␈↓ ↓H
␈↓↓␈↓ ∧≠MONITOR COMMANDS - PROGRAM EDITING␈↓ ↓H
␈↓β␈↓ ↓H
␈↓ ↓H
␈↓ ↓|The following commands are used for creating and modifying user motion instruction programs.␈↓ ↓H
␈↓↓␈↓ ↓H
Command ␈↓ βP ␈↓ ∧(␈↓ πyOperation ␈↓ ↓H
␈↓β␈↓ ↓H
EDIT <prog>,<nstep>␈↓ ∧XPermits␈α∪user␈α∪to␈α∪create␈α∪or␈α∩modify␈α∩program␈α∩<prog>␈α∩starting␈α∩at␈α∩step␈↓ ∧X
␈↓ ∧X<nstep>.␈α
If␈α
no␈αstep␈αnumber␈αis␈αspecified␈αediting␈αproceeds␈αfrom␈αthe␈αstep␈↓ ∧X
␈↓ ∧Xwere␈αthe␈αlast␈αediting␈αsession␈α
was␈α
terminated.␈α
If␈α
no␈α
program␈α
is␈α
specified,␈↓ ∧X
␈↓ ∧Xthe␈α
last␈α
program␈α
edited␈α
is␈α
re-opened.␈↓ ∧X
␈↓ ∧X␈↓ ↓H␈↓ ↓H
DEFPRO <prog>␈↓ β8␈↓ ∧λ␈↓ ∧XUsed␈α∃primarily␈α∃for␈α∃reading␈α∃user␈α∃motion␈α∃programs␈α∀that␈α∀have␈α∀been␈↓ ∧X
␈↓ ∧Xdumped␈α
to␈αpaper␈αtape␈αvia␈αthe␈αPUNCHP␈αinstruction.␈αSuccessive␈αprogram␈↓ ∧X
␈↓ ∧Xsteps␈α
are␈α
read␈α
in␈α
until␈α
an␈α
empty␈α
line␈α
or␈α
illegal␈α
motion␈α
is␈α
encountered.␈↓ ∧X
␈↓ ∧X␈↓ ↓H␈↓ ↓H
␈↓ ↓H
␈↓ αFOnce having entered the EDIT program, the following edit functions may be invoked.␈↓ ↓H
␈↓ ↓H
␈↓↓ Command ␈↓ βP ␈↓ ∧(␈↓ πyOperation ␈↓ ↓H
␈↓β␈↓ ↓H
<any motion instruction> ␈↓ ∧XReplaces␈α⊃the␈α⊃motion␈α⊃instruction␈α⊃stored␈α⊂at␈α⊂the␈α⊂current␈α⊂step␈α⊂with␈α⊂the␈↓ ∧X
␈↓ ∧Xinstruction␈α
typed␈α
in.␈α
The␈α
next␈α
step␈α
is␈α
then␈α
displayed␈α
for␈α
editing.␈↓ ∧X
␈↓ ∧X␈↓ ↓H␈↓ ↓H
<cr> ␈↓ ∧XTyping␈α∀an␈α∀empty␈α∪line␈α∪(␈α∪carriage␈α∪return␈α∪)␈α∪leaves␈α∪the␈α∪current␈α∪step␈↓ ∧X
␈↓ ∧Xunaltered␈α
and␈α
displays␈α
the␈α
next␈α
instruction␈α
for␈α
editing.␈↓ ∧X
␈↓ ∧X␈↓ ↓H␈↓ ↓H
D <nstep> ␈↓ β8␈↓ ∧XDeletes␈α∂an␈α∂arbitrary␈α∂number␈α∂of␈α∂instructions␈α∂starting␈α∞with␈α∞the␈α∞current␈↓ ∧X
␈↓ ∧Xinstruction␈α∩step.␈α∩If␈α∩nstep␈α∩is␈α∩not␈α∩specified,␈α∩only␈α∩the␈α∩current␈α∩step␈α⊃is␈↓ ∧X
␈↓ ∧Xdeleted.␈↓ ∧X
␈↓ ∧X␈↓ ↓H␈↓ ↓H
E <prog>,<nstep>␈↓ β8␈↓ ∧XSwitches␈α⊃EDITing␈α⊃from␈α⊃the␈α⊂current␈α⊂program␈α⊂to␈α⊂the␈α⊂new␈α⊂user␈α⊂motion␈↓ ∧X
␈↓ ∧Xprogram␈α
<prog>␈α
starting␈αwith␈αstep␈α<nstep>.␈αAs␈αalways,␈α<nstep>␈αcan␈αbe␈↓ ∧X
␈↓ ∧Xomitted␈α
and␈α
editing␈α
will␈α
begin␈α
with␈α
the␈α
first␈α
motion␈α
instruction.␈↓ ∧X
␈↓ ∧X␈↓ ↓H␈↓ ↓H
I ␈↓ ∧XMoves␈αinstructions␈αstarting␈αat␈αthe␈αcurrent␈αstep␈αdown␈αone␈α
and␈α
inserts␈α
in␈↓ ∧X
␈↓ ∧Xits␈α∃place␈α∃any␈α∃motion␈α∃instruction␈α∀that␈α∀is␈α∀typed␈α∀in.␈α∀The␈α∀process␈α∀is␈↓ ∧X
␈↓ ∧Xrepeated␈α
until␈α
an␈α
empty␈α
line␈α
is␈α
typed.␈↓ ∧X
␈↓ ∧X␈↓ ↓H␈↓ ↓H
L ␈↓ ∧XLeaves␈α∞the␈α∞current␈α∞step␈α∞unaltered␈α∞and␈α∞displays␈α
the␈α
previous␈α
step␈α
for␈↓ ∧X
␈↓ ∧Xediting.␈↓ ∧X
␈↓ ∧X␈↓ ↓H␈↓ ↓H
P <nstep>␈↓ αh␈↓ β8␈↓ ∧XPrints␈αthe␈αnext␈α<nstep>␈αnumber␈αof␈αprogram␈αsteps␈αand␈αsets␈αthe␈αcurrent␈↓ ∧X
␈↓ ∧Xline␈α
number␈α
equal␈α
to␈α
the␈α
last␈α
line␈α
printed.␈↓ ∧X
␈↓ ∧X␈↓ ↓H␈↓ ↓H
S <nstep>␈↓ αh␈↓ β8␈↓ ∧XLeaves␈αthe␈αcurrent␈αstep␈αunaltered␈αand␈αdisplays␈αthe␈αinstruction␈αwhich␈αis␈↓ ∧X
␈↓ ∧Xat␈α
step␈α
<nstep>␈α
in␈α
the␈α
user␈α
program.␈↓ ∧X
␈↓ ∧X␈↓ ↓H␈↓ ↓H
T ␈↓ ∧XReturns␈α
to␈α
monitor␈α
program.␈↓ ∧X
␈↓ ∧X␈↓ ↓H␈↓↓␈↓ ∧1MONITOR COMMANDS - INPUT/OUTPUT␈↓ ↓H
␈↓ ↓H
␈↓β␈↓ ↓H
␈↓ αUThe following commands are used to get hard copies of programs and transforms.␈↓ ↓H
␈↓ ↓H
␈↓ ↓H
␈↓↓ Command ␈↓ βP ␈↓ ∧(␈↓ λ∧Operation ␈↓ ↓H
␈↓β␈↓ ↓H
LISTT <t1>,....,<t8>␈↓ β8␈↓ ∧XTypes␈α∃out␈α∃the␈α∃values␈α∃of␈α∀up␈α∀to␈α∀eight␈α∀differenct␈α∀transforms.␈α∀If␈α∀no␈↓ ∧X
␈↓ ∧Xtransforms␈α∂are␈α∂specified,␈α∂the␈α∞values␈α∞of␈α∞all␈α∞existing␈α∞transforms␈α∞will␈α∞be␈↓ ∧X
␈↓ ∧Xprinted.␈↓ ∧X
␈↓ ∧X␈↓ ↓H␈↓ ↓H
PUNCHT <t1>,...,<t8>␈↓ ∧λ␈↓ ∧XPractically␈α∞the␈α
same␈α
as␈α
the␈α
LISTT␈α
instruction␈α
except␈α
that␈α
no␈α
header␈α
is␈↓ ∧X
␈↓ ∧Xtyped␈α
and␈α
the␈α
transform␈α
names␈α
and␈α
values␈α
are␈α
printed␈αin␈α"TF"␈αformat.␈↓ ∧X
␈↓ ∧XAlso␈α∞a␈α∞series␈α∞of␈α∞nulls␈α∞are␈α∞printed␈α∞before␈α∞and␈α∞after␈α∞the␈α∞transforms␈α∞to␈↓ ∧X
␈↓ ∧Xprovide␈α
some␈α
leader␈α
paper␈α
tape.␈↓ ∧X
␈↓ ∧X␈↓ ↓H␈↓ ↓H
LISTP <prog>,<s1>,<s2>␈↓ ∧λ␈↓ ∧XTypes␈α⊃out␈α⊃the␈α⊃user␈α⊃motion␈α⊂program␈α⊂<prog>␈α⊂from␈α⊂step␈α⊂<s1>␈α⊂to␈α⊂step␈↓ ∧X
␈↓ ∧X<s2>.␈α∪If␈α∪the␈α∪step␈α∪numbers␈α∪are␈α∪omitted␈α∪the␈α∪entire␈α∪program␈α∩will␈α∩be␈↓ ∧X
␈↓ ∧Xprinted.␈↓ ∧X
␈↓ ∧X␈↓ ↓H␈↓ ↓H
PUNCHP <prog>,<s1>,<s2>␈↓ ∧X␈↓ ∧XSame␈α⊃as␈α⊃LISTP␈α⊃except␈α⊃that␈α⊃leading␈α⊃and␈α⊃trailing␈α⊃blank␈α⊃paper␈α⊂tape␈α⊂is␈↓ ∧X
␈↓ ∧Xpunched.␈↓ ∧X
␈↓ ∧X␈↓ ↓H␈↓ ↓H
PROGS ␈↓ ∧XPrints␈α
out␈α
the␈α
names␈α
of␈α
all␈α
defined␈α
user␈α
programs.␈↓ ∧X
␈↓ ∧X␈↓ ↓H␈↓ ↓H
␈↓ ↓H
␈↓ ↓H
␈↓↓␈↓ ∧⎇MONITOR COMMANDS - MISC.␈↓ ↓H
␈↓ ↓H
Command ␈↓ βP ␈↓ πyOperation ␈↓ ↓H
␈↓β␈↓ ↓H
CLEAR ␈↓ ∧XRe-initializes␈α⊂ARM␈α∂program␈α∂so␈α∂that␈α∂all␈α∂transforms␈α∂and␈α∂user␈α∂programs␈↓ ∧X
␈↓ ∧Xare␈α∞deleted.␈α∞This␈α∞is␈α∞a␈α∞totally␈α∞destructive␈α∞operation.␈α∞This␈α∞function␈α
first␈↓ ∧X
␈↓ ∧Xasks␈α∀"Are␈α∀you␈α∀sure␈α∀(Y,N)?"␈α∀to␈α∀verify␈α∀that␈α∀the␈α∪operation␈α∪is␈α∪to␈α∪be␈↓ ∧X
␈↓ ∧Xperformed.␈↓ ∧X
␈↓ ∧X␈↓ ↓H␈↓ ↓H
DONE ␈↓ ∧XMonitor␈α
program␈α
stops,␈α
computer␈α
exits␈α
to␈α
ODT.␈↓ ∧X
␈↓ ∧X␈↓ ↓H␈↓ ↓H
␈↓ ↓H
FREE␈↓ α_␈↓ αh␈↓ β8␈↓ ∧XTypes␈α
out␈α
percentage␈α
of␈α
free␈α
storage␈α
left.␈↓ ∧X
␈↓ ∧X␈↓ ↓H␈↓ ↓H
␈↓ ↓H
␈↓ ↓H
␈↓↓␈↓ ¬pERROR CODES␈↓ ↓H
␈↓ ↓H
Code ␈↓ πβMeaning ␈↓ ↓H
␈↓β␈↓ ↓H
1,2,3,4,5,6,7␈↓ αh␈↓ β8␈↓ ∧XNumber␈α∀of␈α∀arm␈α∀joint␈α∪out␈α∪of␈α∪tolerance␈α∪or␈α∪preventing␈α∪required␈α∪arm␈↓ ∧X
␈↓ ∧Xsolution.␈↓ ∧X
␈↓ ∧X␈↓ ↓H␈↓ ↓H
8 ␈↓ ∧XDesired␈α
position␈α
too␈α
close.␈↓ ∧X
␈↓ ∧X␈↓ ↓H␈↓ ↓H
9 ␈↓ ∧XDesired␈α
position␈α
too␈α
far␈α
out.␈↓ ∧X
␈↓ ∧X␈↓ ↓H␈↓↓␈↓ ¬+MOTION INSTRUCTIONS␈↓ ↓H
␈↓β␈↓ ↓H
␈↓ ↓HIn␈α∂the␈α∂following␈α∂motion␈α∂instructions␈α∂all␈α∂distances␈α∂are␈α∂in␈α∂inches,␈α∂time␈α∂is␈α∂in␈α∞clock␈α∞ticks␈α∞(100␈α∞ticks␈α∞per␈↓ ↓H
␈↓ ↓Hsecond),␈α
and␈α
strings␈α
can␈α
be␈α
up␈α
to␈α
one␈α
line␈α
long.␈↓ ↓H
␈↓ ↓H␈↓ ↓H
␈↓↓ Command ␈↓ βP ␈↓ πyOperation ␈↓ ↓H
␈↓β␈↓ ↓H
DRAW dX,dY,dZ␈↓ β8␈↓ ∧λ␈↓ ∧XMoves␈αthe␈αarm␈αalong␈αa␈αstraight␈αline␈αa␈αdistance␈αof␈αdX␈αin␈αthe␈αX␈αdirection,␈↓ ∧X
␈↓ ∧XdY␈α∞in␈α
the␈α
Y␈α
direction␈α
and␈α
dZ␈α
in␈α
the␈α
Z␈α
direction.␈α
Any␈α
distances␈α
omitted␈↓ ∧X
␈↓ ∧Xare␈α∩assumed␈α⊃to␈α⊃be␈α⊃zero.␈α⊃The␈α⊃arm␈α⊃configuration␈α⊃and␈α⊃orientation␈α⊃are␈↓ ∧X
␈↓ ∧Xmaintained␈α
during␈α
this␈α
motion.␈↓ ∧X
␈↓ ∧X␈↓ ↓H␈↓ ↓H
GO <trans>␈↓ β8␈↓ ∧λ␈↓ ∧XMoves␈α∞the␈α∞arm␈α∞to␈α∞the␈α∞position␈α∞and␈α∞orientation␈α∞specified␈α∞by␈α
transform␈↓ ∧X
␈↓ ∧X<trans>.␈α∪There␈α∪is␈α∪no␈α∪path␈α∪computed␈α∪for␈α∪this␈α∩motion,␈α∩the␈α∩hardware␈↓ ∧X
␈↓ ∧Xposition␈α⊃servo␈α⊃operates␈α⊃in␈α⊃slew␈α⊃mode.␈α⊂Any␈α⊂changes␈α⊂in␈α⊂configuration␈↓ ∧X
␈↓ ∧Xrequested␈α
by␈α
the␈α
user␈α
are␈α
executed␈α
during␈α
the␈α
motion.␈↓ ∧X
␈↓ ∧X␈↓ ↓H␈↓ ↓H
MOVE <trans>␈↓ β8␈↓ ∧λ␈↓ ∧XMoves␈α∞the␈α∞arm␈α∞to␈α∞the␈α∞position␈α∞and␈α∞orientation␈α∞specified␈α∞by␈α
transform␈↓ ∧X
␈↓ ∧X<trans>.␈α∃Intermediate␈α∃set␈α∃points␈α∃between␈α∃the␈α∃initial␈α∃and␈α∀final␈α∀arm␈↓ ∧X
␈↓ ∧Xposition␈αare␈αcomputed␈αby␈αinterpolating␈αthe␈αinitial␈αand␈αfinal␈αjoint␈αangles.␈↓ ∧X
␈↓ ∧XAny␈α⊃changes␈α⊃in␈α⊃configuration␈α⊃requested␈α⊃by␈α⊃the␈α⊃user␈α⊃are␈α⊃performed␈↓ ∧X
␈↓ ∧Xduring␈α
the␈α
motion.␈↓ ∧X
␈↓ ∧X␈↓ ↓H␈↓ ↓H
DEPART <distance>␈↓ ∧λ␈↓ ∧XMoves␈α⊃the␈α⊃arm␈α⊃hand␈α⊃a␈α⊃distance␈α⊃of␈α⊃<dist>␈α⊃along␈α⊃the␈α⊂current␈α⊂axis␈α⊂of␈↓ ∧X
␈↓ ∧Xrotation␈α∂of␈α∂the␈α∂last␈α∂joint.␈α∂Negative␈α∂distances␈α∂move␈α∂the␈α∂hand␈α∞forward,␈↓ ∧X
␈↓ ∧Xpositive␈α
distances␈α
move␈α
the␈α
hand␈α
back.␈↓ ∧X
␈↓ ∧X␈↓ ↓H␈↓ ↓H
APPRO <trans>,<dist>␈↓ ∧λ␈↓ ∧XMoves␈α⊂the␈α⊂hand␈α⊂to␈α⊂the␈α⊂position␈α∂and␈α∂orientation␈α∂specified␈α∂by␈α∂<trans>␈↓ ∧X
␈↓ ∧Xoffset␈α
by␈α
a␈α
distance␈α
<dist>␈α
along␈α
the␈α
axis␈α
of␈α
rotation␈α
of␈α
the␈α
last␈αjoint.␈↓ ∧X
␈↓ ∧XPositive␈α⊂distances␈α⊂move␈α⊂the␈α⊂hand␈α∂away␈α∂from␈α∂the␈α∂specified␈α∂transform␈↓ ∧X
␈↓ ∧Xposition,␈α∃negative␈α∃distances␈α∃move␈α∃the␈α∃hand␈α∃beyond␈α∃the␈α∃transform␈↓ ∧X
␈↓ ∧Xposition.␈↓ ∧X
␈↓ ∧X␈↓ ↓H␈↓ ↓H
READY ␈↓ ∧XMoves␈α∩the␈α∩arm␈α∩to␈α∩the␈α∩READY␈α∩position␈α∩above␈α∩the␈α⊃work␈α⊃space.␈α⊃This␈↓ ∧X
␈↓ ∧Xforces␈α
the␈α
arm␈α
into␈α
a␈α
standard␈α
configuration.␈↓ ∧X
␈↓ ∧X␈↓ ↓H␈↓ α_␈↓ ↓H
REST ␈↓ ∧XMoves␈α⊃the␈α⊂arm␈α⊂to␈α⊂the␈α⊂REST␈α⊂position.␈α⊂This␈α⊂leaves␈α⊂the␈α⊂arm␈α⊂in␈α⊂a␈α⊂safe␈↓ ∧X
␈↓ ∧Xposition␈α
in␈α
case␈α
power␈α
is␈α
turned␈α
off.␈α
If␈α
no␈α
special␈α
speed␈α
has␈αbeen␈αset␈↓ ∧X
␈↓ ∧Xvia␈α∞the␈α∞SPEED␈α∞command,␈α∞the␈α∞arm␈α∞will␈α∞move␈α
to␈α
rest␈α
at␈α
half␈α
the␈α
normal␈↓ ∧X
␈↓ ∧Xspeed.␈↓ ∧X
␈↓ ∧X␈↓ ↓H␈↓ ↓H
OPEN <dist>␈↓ αh␈↓ β8␈↓ ∧XChanges␈α
the␈α
hand␈α
opening␈α
to␈α
<dist>␈α
inches.␈↓ ∧X
␈↓ ∧X␈↓ ↓H␈↓ ↓H
GRASP <dist>␈↓ β8␈↓ ∧λ␈↓ ∧XCloses␈α∩the␈α∩hand␈α∩and␈α∩generates␈α∩an␈α∩error␈α∩message␈α⊃if␈α⊃the␈α⊃final␈α⊃hand␈↓ ∧X
␈↓ ∧Xopening␈α
is␈α
less␈α
than␈α
<dist>.␈↓ ∧X
␈↓ ∧X␈↓ ↓H␈↓ ↓H
DRIVE <jt>,<angle>,<time> ␈↓ ∧XOperates␈α⊂the␈α⊂single␈α⊂joint␈α⊂specified␈α⊂by␈α⊂the␈α⊂parameter␈α∂<jt>␈α∂(1-7).␈α∂The␈↓ ∧X
␈↓ ∧Xcurrent␈α⊂joint␈α⊂angle␈α⊂is␈α⊂changed␈α∂by␈α∂an␈α∂amount␈α∂<angle>.␈α∂The␈α∂change␈α∂in␈↓ ∧X
␈↓ ∧Xjoint␈α
angle␈α
must␈α
be␈α
specified␈α
in␈α
degrees.␈α
The␈α
duration␈α
<time>␈α
must␈αbe␈↓ ∧X
␈↓ ∧Xspecified␈α
in␈α
clock␈α
ticks.␈↓ ∧X
␈↓ ∧X␈↓ ↓H␈↓ ↓H
WAIT <time>␈↓ β8␈↓ ∧λ␈↓ ∧XHalts␈α
motion␈α
for␈α
<time>␈α
in␈α
seconds.␈↓ ∧X
␈↓ ∧X␈↓ ↓H␈↓ ↓H
PAUSE <message>␈↓ β8␈↓ ∧λ␈↓ ∧XTerminates␈α~execution␈α~of␈α~motion␈α~program␈α→and␈α→types␈α→a␈α→message.␈↓ ∧X
␈↓ ∧XExecution␈α
can␈α
be␈α
continued␈α
from␈α
this␈α
point␈α
by␈α
typing␈α
P.␈↓ ∧X
␈↓ ∧X␈↓ ↓H␈↓ ↓H
STOP ␈↓ ∧XSame␈α
as␈α
PAUSE␈α
except␈α
that␈α
motion␈α
cannot␈α
be␈α
continued.␈↓ ∧X
␈↓ ∧X␈↓ ↓H␈↓ ↓H
COMMNT <string>␈↓ β8␈↓ ∧λ␈↓ ∧XComment␈α
line,␈α
a␈α
no-operation␈α
at␈α
run-time.␈↓ ∧X
␈↓ ∧X␈↓ ↓H␈↓ ↓H
TYPE <message>␈↓ β8␈↓ ∧λ␈↓ ∧XTypes␈α
the␈α
string␈α
<message>␈α
on␈α
the␈α
teletype.␈↓ ∧X
␈↓ ∧X␈↓ ↓H␈↓ ↓H
RIGHTY or LEFTY␈↓ β8␈↓ ∧λ␈↓ ∧XRequests␈α∂a␈α∂change␈α∂in␈α∂arm␈α∂configuration␈α∂to␈α∂a␈α∂left␈α∞or␈α∞right␈α∞shouldered␈↓ ∧X
␈↓ ∧Xarm.␈↓ ∧X
␈↓ ∧X␈↓ ↓H␈↓ ↓H
ABOVE or BELOW␈↓ β8␈↓ ∧λ␈↓ ∧XRequests␈α
a␈α
change␈α
in␈α
arm␈α
configuration␈α
so␈α
that␈α
the␈α
approach␈α
angle␈α
of␈↓ ∧X
␈↓ ∧Xthe␈α
hand␈α
is␈α
from␈α
below␈α
or␈α
above␈α
objects.␈↓ ∧X
␈↓ ∧X␈↓ ↓H␈↓ ↓H
FLIP or NOFLIP␈↓ β8␈↓ ∧λ␈↓ ∧XChanges␈α∂the␈α∂range␈α∂of␈α∂operation␈α∂of␈α∂joint␈α∂5␈α∂to␈α∂plus␈α∂(NOFLIP)␈α∞or␈α∞minus␈↓ ∧X
␈↓ ∧X(FLIP)␈α
angles.␈↓ ∧X
␈↓ ∧X␈↓ ↓H␈↓ ↓H
SPEED <percentage>␈↓ ∧λ␈↓ ∧XRequests␈αthat␈αthe␈αnext␈αarm␈αmotion␈αbe␈αperformed␈αat␈αa␈αspeed␈αother␈αthan␈↓ ∧X
␈↓ ∧Xnormal(␈α=␈α100).␈αThe␈αpercentage␈αcan␈αrange␈αfrom␈α1␈α(␈αextremely␈αslow␈α)␈αto␈↓ ∧X
␈↓ ∧X32000␈α
(␈α
hardware␈α
slewing␈α
mode␈α
).␈↓ ∧X
␈↓ ∧X␈↓ ↓H␈↓ ↓H
COARSE ␈↓ ∧XThe␈α⊂low␈α⊂tolerance␈α⊂feature␈α⊂is␈α⊂enabled␈α∂in␈α∂the␈α∂hardware␈α∂servo␈α∂so␈α∂that␈↓ ∧X
␈↓ ∧Xlarger␈αerrors␈αin␈αthe␈αfinal␈αposition␈αof␈αthe␈αarm␈αjoints␈αwill␈αbe␈αpermitted␈αat␈↓ ∧X
␈↓ ∧Xthe␈α
end␈α
of␈α
the␈α
next␈α
motion.␈↓ ∧X
␈↓ ∧X␈↓ ↓H␈↓ ↓H
INTOFF ␈↓ ∧XTurns␈α⊂off␈α⊂the␈α∂hardware␈α∂position␈α∂error␈α∂integration␈α∂feature␈α∂during␈α∂the␈↓ ∧X
␈↓ ∧Xnext␈α
motion.␈↓ ∧X
␈↓ ∧X␈↓ ↓H␈↓ ↓H
INTON ␈↓ ∧XForces␈α⊃the␈α⊃hardware␈α⊃to␈α⊃integrate␈α⊃the␈α⊃position␈α⊂error␈α⊂throughout␈α⊂the␈↓ ∧X
␈↓ ∧Xnext␈α
motion.␈↓ ∧X
␈↓ ∧X␈↓ ↓H␈↓ ↓H
PULSE ␈↓ ∧XEnables␈αthe␈αhardware␈αhand␈αpulse␈αmode␈αduring␈αthe␈αnext␈αarm␈αmotion␈αfor␈↓ ∧X
␈↓ ∧Xapproximately␈α
100msec.␈α
This␈αmode␈αis␈αuseful␈αfor␈αfreeing␈αthe␈αhand␈αafter␈↓ ∧X
␈↓ ∧Xit␈α
has␈α
jammed␈α
open␈α
or␈α
closed.␈↓ ∧X
␈↓ ∧X␈↓ ↓H␈↓↓␈↓ ∧mSUMMARY OF INSTRUCTION SET␈↓ ↓H
Top Level Instructions␈↓ ↓H
␈↓ ↓H
␈↓β TRANS <transform>␈↓ ↓H
HERE <transform>␈↓ ↓H
TF <transform>,X,Y,Z,O,A,T␈↓ ↓H
WHERE␈↓ ↓H
EXEC <program name>,<pass count>,<starting step>␈↓ ↓H
P␈↓ ↓H
LISTT <trans #1>, .... , <trans #8>␈↓ ↓H
PUNCHT <trans #1>, .... , <trans #8>␈↓ ↓H
LISTP <program name>,<first step>,<last step>␈↓ ↓H
PUNCHP <program name>,<first step>,<last step>␈↓ ↓H
PROGS␈↓ ↓H
CLEAR␈↓ ↓H
DONE␈↓ ↓H
FREE␈↓ ↓H
DEFPRO <program name>␈↓ ↓H
EDIT <program name>,<step number>␈↓ ↓H
␈↓ ↓H
␈↓↓Edit Instructions␈↓ ↓H
␈↓ ↓H
␈↓β <any motion instruction>␈↓ ↓H
c/r␈↓ ↓H
L␈↓ ↓H
S <number of steps>␈↓ ↓H
D <number of steps>␈↓ ↓H
I␈↓ ↓H
E <program name>,<step number>␈↓ ↓H
T␈↓ ↓H
␈↓ ↓H
␈↓↓Motion Instructions␈↓ ↓H
␈↓ ↓H
␈↓β DRAW dX,dY,dZ␈↓ ↓H
GO <transform>␈↓ ↓H
MOVE <transform>␈↓ ↓H
DEPART <distance>␈↓ ↓H
APPRO <transform>,<distance>␈↓ ↓H
READY␈↓ ↓H
REST␈↓ ↓H
DRIVE <joint>,<angle>,<time>␈↓ ↓H
OPEN <distance>␈↓ ↓H
GRASP <distance>␈↓ ↓H
COMMNT <any string>␈↓ ↓H
TYPE <any string>␈↓ ↓H
WAIT <time>␈↓ ↓H
PAUSE <any string>␈↓ ↓H
STOP␈↓ ↓H
RIGHTY␈↓ ↓H
LEFTY␈↓ ↓H
ABOVE␈↓ ↓H
BELOW␈↓ ↓H
FLIP␈↓ ↓H
NOFLIP␈↓ ↓H
SPEED <percentage>␈↓ ↓H
COARSE␈↓ ↓H
INTOFF␈↓ ↓H
INTON␈↓ ↓H
PULSE␈↓ ↓H