Documente Academic
Documente Profesional
Documente Cultură
base T6 tool = stand work We can specify the kinematic conguration to switch
to like this:
This establishes a relationship between transforms
in the manipulator's workspace (see Figure 1). The move(rp, pos,
transform T6 represents the pose of the manipulator. MOV_TRAJ, TRAJ_JOINT,
MOV_TIME, 2000,
In ARCL programs, position equations are dened MOV_CONFIG, "lun",
using makeposition(). Our example program would 0);
dene the above equation:
where "lun" means \left-hand elbow-up no-twist".
pos = makeposition( There are some 20 attributes to move(); where an
base, T6, tool, EQ, stand, work, attribute is not specied, it takes a default value, or
TL, tool the value it was last set to be.
);
As in the position equation, T6 is a pre-dened trans- 2.4 Trajectory Generator and
form representing the robot manipulator, and the EQ Motion Queue
marker indicates the position of the = operator. The
TL marker indicates the frame in the equation which move() in fact queues a motion request to the trajec-
is the tool tip of the manipulator, required for tool tory generator, and returns immediately, not when
velocity specication. The returned Pos pointer is the motion is actually complete. Repeated calls to
move() will queue several motion requests.
User program task If the robot is approaching the end of a motion seg-
move() ment, the trajectory generator's segment path plan-
ner de-queues the next motion request from the mo-
tion queue, and sets up a zero-jerk transition (B1 to
B2) into the new segment (see Figure 3). This may
mean that the end-point of the original segment (B)
Target position is never reached. If the motion queue is empty, the
trajectory generator smoothly decelerates the robot
Trajectory
Generator to the target T6 .
Task
Motion request queue
ARCL Kinematic
Interface Library
gripper(rp, GRIP_CLOSE_BY, 40.0); ARCL
Application Interface
Library
Robot controllers are often equipped with binary AAI
IO systems often operating at 24VDC. ARCL pro-
AKI
vides for this using IO descriptors, type IOD. IODs
represent one or more contiguous IO bits, either input
ARCL Machine Interface
Library
or output. A similar arrangement exist for analogue AMI
input and output.
Operating System
% prog +tr
base : x:0.000 y:0.000 z:862.000 RPY r:0.000 p:-0.000 y:0.000
tool : x:0.000 y:0.000 z:170.000 RPY r:0.000 p:-0.000 y:0.000
p : x:500.000 y:600.000 z:800.000 RPY r:0.000 p:30.000 y:0.000
ami_offl: done at t=272.048
% prog +m
request PARK: t=0, traj=1, Ta=100, Tseg=300, Vt=0, Vr=0
request pos: t=0, traj=1, Ta=100, Tseg=0, Vt=10, Vr=10
request PARK: t=0, traj=1, Ta=100, Tseg=0, Vt=10, Vr=10, conf=run
exec(stdtg) PARK: t=0.00, stat=0, j Ta1=112, Ta2=112, Tseg=280, dT=56
exec(stdtg) pos: t=0.34, stat=0, j Ta1=112, Ta2=112, Tseg=0, dT=56
exec(stdtg) PARK: t= 136.19, stat=0, j Ta1=112, Ta2=112, Tseg=0, dT=56
request STOP: t=272048, traj=1, Ta=100, Tseg=300, Vt=10, Vr=10
ami_offl: done at t=272.048