AIM 4.x

AIM Statements

See Table 1. - Statement Argument Sources for details on the argument sources (placeholders preceded and followed by "--").

ANY

AIM

Used by the CASE statement to execute a default block of code.

AIM

Used to attach the robot to a runtime task.

VisionWare

WITH --vision-- {AT_FREQUENCY --constant--} {OK_SIGNAL --OUTPUT--}
Attempt to maintain the average graylevel specified in the nominal data box by adjusting the OFFSET parameter in the picture record associated with the window record.

MotionWare

{ALL --yes/no--} {SELF --yes/no--}
Initiate calibration of any uncalibrated robot(s).

AIM

--sequence--
Calls one sequence from within another sequence. When a CALL statement is encountered, the currently executing sequence (calling sequence) will suspend operation and the new sequence (called sequence) will begin. When the called sequence completes, the calling sequence will resume execution at the next statement line. Control sequence only.

AIM

--variable--OF
The CASE structure is similar to the IF...THEN...ELSE statement except that it can conditionally execute any of several different blocks of code based on the value of a variable. A CASE structure is actually built from the CASE, VALUE, ANY, and END statements.

MotionWare

--frame-- {RESULT --o_variable--} {CODE --o_variable--} STATUS --o_variable-- {NAME --string_variable--}
Checks the status of an object that is assigned to a reference frame.

AIM

CHANNEL --log channel--
Closes a channel connection from a runtime task or a control sequence.

AIM

Detach the robot from a runtime task.

AdeptGEM

Disables host communication and places the equipment in the "not communicating" state.

MotionWare

JOINT --variable-- DISTANCE --variable-- SPEED --variable-- {ACCEL --variable--} {DECEL --variable--} {NULLING --mode--}
Moves a single joint of the robot. You can specify a value for the joint, distance, and speed (with optional parameters for acceleration, deceleration, and nulling).

AIM

{IF {--uopr--} --variable-- {--opr-- --variable-- {--opr-- --variable-- {--opr-- --variable-- {--opr-- --variable-- {--opr-- --variable--}}}}}}
An ELSE statement is always used in conjunction with an IF statement. The ELSE statement specifies a block of statements to execute when the statements specified by the preceding IF statement are not executed. The ELSE statement can also specify conditions to control execution of statements within the ELSE block.

AIM

Terminates a control structure; used by CASE, IF, REPEAT, and WHILE statements.

AIM

{--constant--}
Causes a REPEAT, FOR, or WHILE loop to terminate and sequence execution to continue at the next statement following the END statement that closes the REPEAT or WHILE loop.

AIM

--o_variable-- = {--uopr--} --variable-- {--opr-- --variable--} TO {--uopr--} --variable-- {--opr-- --variable--} {STEP --constant--}
Execute a block of statements a specified number of times.

AdeptGEM

--gemitem--
Sends an alarm message to the host.

AdeptGEM

--gemitem--
Sends a collection event to the host.

MotionWare

--frame-- {1: --frame--} {2: --frame--} {3: --frame--} {4: --frame--} {5: --frame--} {6: --frame--} {7: --frame--} {8: --frame--} {WAIT --yes/no-- {WAIT_PATH --yes/no--}} {MATCH_CODE --variable--}{DISABLE --variable--} {OUTPUT --o_variable--}
Assigns objects from the queue manager to moving frames.

AIM/MotionWare

--string--
Jump to any other labeled step in a sequence. You create a step "label" by typing any 15-character label on a line displaying the --statement-- place holder.

AIM

IF {{--uopr--} --variable-- {--opr-- --variable-- {--opr-- --variable-- {--opr-- --variable-- {--opr-- --variable-- {--opr-- --variable--}}}}}}
Conditionally execute a block of statements.

MotionWare/VisionWare

OPERATION --vision-- {&--vision-- {&--vision-- {&--vision-- {& --vision-- {&--vision-- {&--vision-- _ &--vision--}}}}}} {SAVE_PREVIOUS --yes/no--} {OK_SIGNAL --o_variable--}
Evaluate of up to eight inspection records. Records are evaluated until the first inspection fails, at which time execution stops and the OK_SIGNAL is set to FALSE. If all inspections pass, then the OK_SIGNAL is set to TRUE.

VisionWare

The syntax and operation of INSPECT_LIST is identical to INSPECT except that all specified inspection records are evaluated regardless of whether any inspection fails.

AIM

{WAIT_FOR --input--} OUTPUT --output-- {PULSE --constant--}
Set the specified digital output signal will be set to the specified state.

AIM

--output-- {--output-- {...}}
Set up to 12 digital signals.

AIM

variable_1 {variable_2 {variable_3 {... variable_12}}}
Set up to 12 digital signals specified by Variables database records.

AIM

PROTOCOL --protocol-- IO_DEVICE {--s_uopr--}--string_var--{--s_opr-- --string_var-- {--s_opr-- --string_var-- {--s_opr-- --string_var--}}} MODE --I/O_mode STREAM --o_variable-- {STATUS --o_variable--}
Opens an I/O device for subsequent I/O operations. The statement waits until the open operation is complete before returning a completion status code.
STREAM --variable-- {STATUS --o_variable--}
Closes the I/O device or file associated with an I/O stream and frees any associated system resources. If multiple AIM tasks have opened this stream, the stream is not closed until the last task closes the stream. The last task waits until the close operation is complete before returning a completion status code.

AIM

STREAM --variable-- {RECORD_NUMBER --variable--} {TIMEOUT--variable--} DATA --o_variable-- {, --o_variable-- {,--o_variable-- {, --o_variable-- {,--o_variable-- {,--o_variable-- {, --o_variable-- {,--o_variable-- {,--o_variable-- {, --o_variable--}}}}}}}}} {STATUS --o_variable--}
Reads data from an I/O stream while waiting for the specified time-out.

AIM

STREAM --variable-- {RECORD_NUMBER --variable--} DATA --variable-- {, --variable-- {, --variable-- {, --variable-- {, --variable-- {, --variable-- {, --variable-- {, --variable-- {, --variable-- {, --variable--}}}}}}}}} {STATUS --o_variable--}
Writes data to an I/O stream.

AdeptGEM

--gemvariable-- = COMM_STATUS
Sends an S1F13 message. If the equipment and host are online and communicating, gemvariable receives the value 0 (success); otherwise, it receives a standard AIM error code.

AIM

MODULE module
Loads a resource module and all its components. Control sequence only.

PCB

FRAME --frame1-- {DEFAULT --frame2--} {APPROACH --path--} LOCATE --vision-- {AT --loc1-- {--loc2-- {--loc3-- {--loc4--}}}}{DEPART --path--} {USING --tool--} {OK_SIGNAL --variable--}
Determines the reference frame for an entire assembly based on one to four fiducial marks.

MotionWare

1:--variable-- of --frame-- {2:--variable-- of --frame-- {3:--variable-- of --frame-- {4:--variable-- of --frame--}}} {MATCH_CODE --variable--} WAIT --yes/no--} {INDEX --yes/no-- {TIMEOUT --variable--} {IGNORE --yes/no--}} {OUTPUT --o_variable--}{WAITING --o_variable--}
Checks that a minimum number of different objects are present in the conveyor queue and ready for acquisition.

AIM

--variable-- {TEXT --string--} {0: --constant--} {1: --constant--} {2: --constant--} {3: --constant--} {4: --constant--} {5: --constant--} {6: --constant--} {RESPONSE --o_variable--}
Displays a message on the operator control panel.

MotionWare

{{APPROACH --path--} FROM --location--} {ALONG --path--} TO --location-- {DEPART --path--} {USING --tool--} {{ALONG --path--} REJECT --location-- {RETURN--path--}} {WAIT_AT --location--} {OK_SIGNAL --o_variable--}
Executes the basic robot tasks of MotionWare.

MotionWare

WRT --segment-- {DX --variable--}{DY --variable--} {DZ --variable--} {RX -- variable--} {RY --variable--} {RZ --variable--} {SPEED --variable--} {ACCEL --variable--} {DECEL --variable--} {NULLING --mode--}
Moves a robot relative to a defined location. You can specify a value for the distance in the tool X, Y, or Z planes (DX, DY, or DZ) or a value for rotation (RX, RY, or RZ).

AIM

{{APPROACH path} FROM variable} {ALONG path} TO variable {DEPART path} {USING tool} {{ALONG path} REJECT variable {RETURN path} {WAIT_AT --variable--} {OK_SIGNAL--o_variable--}
Executes the basic robot tasks of ACS.

AIM

{--constant--}
The NEXT_LOOP statement is similar to the EXIT_LOOP statement. However, execution of the looping block is not canceled completely: Only the current iteration of the loop is canceled.

VisionWare

OCR_OUTPUT FROM --vision-- {& --vision-- {& --vision-- {& --vision-- {& --vision-- {& --vision-- {& --vision-- {& --vision--}}}}}}}
Outputs the results from an OCR Field record.

AIM

--task-- {AFTER --event--}
Performs the same operations as the Immediate, Operation, Action, Statement, and Cycle check boxes on the control panels. Control sequence only.

MotionWare/VisionWare

FOR --vision-- {SINGLE_PICTURE --vision-- {SAVE_PREVIOUS --yes/no--}} {OK_SIGNAL --o_variable--}
Takes the pictures required for a vision operation and (if specified) moves the robot to a picture-taking location.

MotionWare

{FROM --ppoint--} TO --ppoint--
Move to locations defined in the Precision Point database.

MotionWare

--on/off-- DRY_RUN --on/off--
turn the robot power on and off and to set the DRY_RUN parameter.

MotionWare

PREALIGNER COMMAND --variable-- DEVICE --variable-- TIMEOUT --variable--) (RESPONSE --o_variable--)
Sends a command to the prealigner unit through the serial connection.

MotionWare

MATCH CODE --string_var-- {SELECT --yes/no--} {START --yes/no--} {STOP --yes/no--} {STATUS--variable--}
Select and executes a process remotely from a runtime AIM task.

MotionWare

--frame-- {DEFAULT--frame--} {APPROACH--path--} LOCATE--vision-- {AT--location-- {--location-- {--location-- {--location--}}}} {DEPART--path} {USING--tool--} {OK_SIGNAL --o_variable--}
Uses vision to determine the precise value of the reference frame associated with an entire assembly (the assembly database reference frame). Locates 1 to 4 fiducial marks on the assembly and uses them to correct the nominal value of the reference frame.

MotionWare

{APPROACH --path--} REFINE --vision-- {AND --vision--} {WAIT --yes/no--} {SAVE_TOOL --tool--} {{ALONG --path--} MOVE_TO --location-- {MOVE_ONCE --yes/no--} {DEPART --path--}{USING --tool--}} {OK_SIGNAL --o_variable--}
Uses vision to create or refine a tool offset. Moves the robot gripper in front of an upward facing camera, takes a picture, and calculates a vision reference frame for the gripped part. The difference between the part reference frame center and the true gripper center is taken into account when the part is placed.

MotionWare

--frame-- {SET_CODE --variable--} {IGNORE--yes/no--} {NEW--yes/no--}
Releases moving frames assigned by the GET_FRAME statement.

AIM

{--uopr--} --variable-- {--opr-- --variable-- {--opr-- --variable-- {--opr-- --variable-- {--opr-- --variable-- {--opr-- --variable--}}}}}
Repeat a block of statements a given number of times. The arguments to REPEAT allow you to evaluate a complex expression when deciding how many times to repeat a block of statements.

MotionWare

--location-- {SET_SIGNALS --yes/no--} {CLEAR_SIGNALS --yes/no--}
Resets the pallet digital signals. The --location-- argument specifies which location record should have its pallet signals reset.

MotionWare

--conveyor-- {WAIT --yes/no--} {SET_CODE --variable--} {IGNORE --yes/no--}
Attempt to resume a conveyor that is in a wait state. If the conveyor is not in a wait state, this statement does nothing.

AIM

--task-- {RESPONSE --response--}
Restarts a task that has been paused with a PAUSE_TASK. It is equivalent to clicking the Proceed and Retry buttons on the control panels. Control sequence only.

MotionWare

REQUIRED_HEIGHT --constant-- {SPEED --constant--} {ACCEL --constant--} {DECEL --constant--}
Moves the Z-axis of the robot to a specified height. You have the option to specify the speed, acceleration, and deceleration for the move.

AIM

Causes the current sequence to stop executing as if the end of the sequence had been reached and all cycles had been completed. If this sequence was initiated by a CALL statement, the sequence that executed the CALL statement resumes execution at the statement following the CALL. If the CALL statement was executed from the main sequence, the runtime task returns to idle state.

AdeptGEM

--gemvariable-- = MOTION_OK
Verifies that the current state of the equipment is compatible with host control of robot motion. Control sequence only.

AIM

--task-- {MODULE --module--} {SEQUENCE --string--}
Performs the same function as the Select button on the Task Control Panel. A sequence is assigned to a task for execution. Control sequence only.

AIM

--database-- RECORD --string_var--
Makes the specified record to current record for the specified database.

AIM

CHANNEL --log channel-- {OPTIONAL --yes/no--} {MODE --log mode--} {SAVE_CURRENT --yes/no--} {1: --variable--} {2: --variable--}...{8: --variable--}
Sends up to eight data values to a channel to be logged.

AdeptGEM

--gemvariable--
Sends a text message to the host.

AIM

CHANNEL --log channel-- {OPTIONAL --yes/no--} {USE_VAR_NAME --yes/no--} {1: --variable--} {2: --variable--} ... {8: --variable--}
Sends data containing the labels for each field to a log channel from a runtime sequence.

AIM

--o_variable-- = {--uopr--} --variable-- {--opr-- --variable-- {--opr-- --variable-- {--opr-- --variable-- {--opr-- --variable-- {--opr-- --variable--}}}}}
Assigns a new value to a numeric variable.

MotionWare

--frame-- EQUAL_TO {FRAME --frame--} {INVERSE --frame--} {FRAME --frame--} {VISION_FRAME --vision-- {SAVE_PREVIOUS --yes/no--}} {OK_SIGNAL --o_variable--}
Transforms the various frame values used in AIM.

AIM

--variable--
Allows an executing sequence to behave as if one of the operator response buttons had been pressed.

AIM/MotionWare

--o_variable-- = {--s_uopr--} --variable-- {--s_opr-- --variable-- {--s_opr-- --variable-- {--s_opr-- --variable--{--s_opr-- --variable-- {--s_opr-- --variable--}}}}}
Assigns a new value to a string variable.

AdeptGEM

--gemitem--
Sets the current state of a state model.

MotionWare

{--tool--}
Sets a new robot tool transformation. This tool will be in effect either until another SET_TOOL statement is executed or a MOVE statement with a USING clause is executed.

MotionWare

--frame-- EQUAL_TO VISION_FRAME --vision-- {SAVE_PREVIOUS --yes/no--} {OK_SIGNAL --o_variable--} REPEAT_STATUS --o_variable--
This statement provides a multiple-object pick solution for arm-mounted cameras.

AIM

--log channel-- {CONNECT TO --string_var--} {FIELDS_(1-8) --constant--} {STATUS --o_variable--} {TIMEOUT --variable--} {OPTIONAL --yes/no--}
Connects a log channel to either a file or a serial line from a runtime or control sequence. If a file that already exists, the existing file will be deleted automatically.

AIM

--task--
Begins execution of a task. Control sequence only.

MotionWare

{AFTER_MOTION --yes/no--}
Stops the current robot motion.

AIM

--task-- {AFTER --event--}
Stops the specified task. Control sequence only.

PCB

{APPROACH path} PART part {ALONG path} TO assembly {DEPART path} {USING tool} {REJECT path}
Transfers a part from a feeder to an assembly location.

PCB

{APPROACH --path--} PART --part-- {{APPROACH --path--} {REFINE --vision-- {AND --vision--}} {REJECT --path--}} {ALONG --path--} {LOCATE --vision--} TO --board-- {DEPART --path--} {USING --tool--} {REJECT --path--} {OK_SIGNAL --variable--}
Transfers a part from a feeder to an assembly location using vision refinement.

AIM

MODULE --module--
Removes a loaded module from memory. Control sequence only.

AIM

--variable-- {, --variable-- {, --variable-- ... }}}}}}}}}:
Used by the CASE statement to define which block of statements is executed when a specific value is passed to the statement.

AIM

--time--