Instructions for Adept Utility Programs

Add to my manuals
315 Pages

advertisement

Instructions for Adept Utility Programs | Manualzz

Instructions for Adept Utility Programs

This is a PDF/print version of the Instructions for Adept Utility Programs online documentation. A Table of Contents is provided so that you can locate the desired topics.

Because the Instructions for Adept Utility Programs was designed for online viewing, there may be slight formatting anomalies in the PDF/print version. Additionally, links to external documents will not work in the PDF file.

For optimal viewing and navigation, please use the HTML version of this document, which can be accessed from the Adept Document Library.

NOTE: Please see the V+ Release Notes, which are included with your V+ software, for a description of any recent changes.

Instructions for Adept Utility Programs

1

Copyright Notice

The information contained herein is the property of Adept Technology, Inc., and shall not be reproduced in whole or in part without prior written approval of Adept Technology, Inc. The information herein is subject to change without notice and should not be construed as a commitment by Adept Technology, Inc. The documentation is periodically reviewed and revised.

Adept Technology, Inc., assumes no responsibility for any errors or omissions in the documentation. Critical evaluation of the documentation by the user is welcomed. Your comments assist us in preparation of future documentation. Please submit your comments to: [email protected]

.

Copyright © 1994 - 2010 by Adept Technology, Inc.

Adept, the Adept logo, the Adept Technology logo, AdeptVision, AIM, Blox, Bloxview, FireBlox, Fireview,

Meta Controls, MetaControls, Metawire, Soft Machines, and Visual Machines are registered trademarks of

Adept Technology, Inc.

Brain on Board is a registered trademark of Adept Technology, Inc. in Germany.

Adept ACE, ACE PackXpert, Adept 1060 / 1060+, Adept 1850 / 1850 XP, Adept 540 Adept 560, Adept Any-

Feeder, Adept Award, Adept C40, Adept C60, Adept CC, Adept Cobra 350, Adept Cobra 350 CR/ESD, Adept

Cobra 550, Adept 550 CleanRoom, Adept Cobra 600, Adept Cobra 800, Adept Cobra i600, Adept Cobra i800, Adept Cobra PLC Server, Adept Cobra PLC800, Adept Cobra s600, Adept Cobra s800, Adept Cobra

 s800 Inverted, Adept Cobra Smart600, Adept Cobra Smart800, Adept DeskTop, Adept FFE, Adept Flex-

Feeder 250, Adept IC, Adept iSight, Adept Impulse Feeder, Adept LineVision, Adept MB-10 ServoKit, Adept

MC, Adept MotionBlox-10, Adept MotionBlox-40L, Adept MotionBlox-40R, Adept MV Adept MV-10, Adept

MV-19, Adept MV4, Adept MV-5, Adept MV-8, Adept OC, Adept Python, Adept Quattro s650, Adept Quattro s650H, Adept Quattro s650HS, Adept sDIO, Adept SmartAmp, Adept SmartAxis, Adept SmartController

CS, Adept SmartController CX, Adept SmartModule, Adept SmartMotion, Adept SmartServo, Adept Smart-

Vision EX, Adept sMI6, Adept sSight, Adept Viper s650, Adept Viper s850, Adept Viper s1300, Adept Viper s1700, AdeptCartesian, AdeptCast, AdeptForce, AdeptFTP, AdeptGEM, AdeptModules, AdeptMotion, Adept-

Motion Servo, AdeptMotion VME, AdeptNet, AdeptNFS, AdeptOne, AdeptOne-MV, AdeptOne-XL, AdeptRAPID, AdeptSight, AdeptSix, AdeptSix 300, AdeptSix 300 CL, AdeptSix 300 CR, AdeptSix 600,

AdeptTCP/IP, AdeptThree, AdeptThree-MV, AdeptThree-XL, AdeptTwo, AdeptVision, AVI AdeptVision, AGS

AdeptVision GV, AdeptVision I, AdeptVision II, AdeptVision VME, AdeptVision VXL, AdeptVision XGS, Adept-

Vision XGS II, AdeptWindows, AdeptWindows Controller, AdeptWindows DDE, AdeptWindows Offline

Editor, AdeptWindows PC, AIM Command Server, AIM Dispense, AIM PCB, AIM VisionWare, A-Series, Flex-

FeedWare, HyperDrive, IO Blox, IO Blox 88, MicroV+, MotionBlox, MotionWare, ObjectFinder, ObjectFinder

2000, PackOne, PalletWare, sAVI, S-Series, UltraOne, V, V+ and VisionTeach are trademarks of Adept Technology, Inc.

Any trademarks from other companies used in this publication are the property of those respective companies.

Created in the United States of America

Instructions for Adept Utility Programs

3

Table Of Contents

Introduction to the Adept Utility Programs

Overview

Danger, Warning, Caution, and Note

Conventions

Listing of Utility Programs

Types of Program Files on the V+ Software CD-ROMs

How Can I Get Help?

Adept Utility Program Descriptions

Overview of the Utility Descriptions

ABS_ENC

ADV_CAL

ADV_USER

BELT_CAL

CFG_COBR

CONFIG_C

DC_SETUP

DISKCOPY

DUTY_CYC

EDITICON

FAULTLOG

FORMAT

FTP_CLNT

FTP_SRVR

LOADAREA

LOADBELT

LOADICON

LOADTCH

PROFILER

RSC_RSTR

SAFE_UTL

SFUTIL

SLMOTION

SM_CAL

Instructions for Adept Utility Programs

5

17

94

106

112

114

121

129

132

133

18

19

26

28

29

38

41

134

138

141

144

146

152

163

171

176

180

7

10

11

9

9

15

16

SPEC

SQUEEZE

TOUCHCAL

VPROTECT

XMODEM

Common Procedures

Introduction

Configuring an RIO Device in V+

Installing the Adept Utility Programs

Loading and Executing Adept Utility Programs

Complete System Backup

System Restore

Upgrading Your V+ System

285

286

287

290

292

294

300

306

181

275

277

280

283

Instructions for Adept Utility Programs

6

Introduction to the Adept Utility Programs

Introduction to the Adept Utility Programs

Overview

Notes, Cautions, and Warnings

Conventions

Typographic Conventions

Keyboard Conventions

Selecting, Choosing, and Pressing Items

Listing of Utility Programs

Types of Program Files on the V+ CD-ROM

ASCII Files

Binary Files

Read-Only Files

How Can I Get Help

Instructions for Adept Utility Programs

7

Overview

Overview

This manual describes the utility programs available in the UTIL (utility) directory on the CD-

ROM for V+ version 17.0 and later, and on the controller CompactFlash drive (D:). For each utility, the following information is provided: l l l l

A list of the equipment and conditions required to use the program

A detailed description of the procedure for using the program

Explanations of program requests for input from the user

Any special considerations that apply to the program

NOTE: The programs described in this manual have been tested by Adept Technology to verify that they perform their intended functions. However, Adept Technology assumes no responsibility for any errors or omissions in the programs or in this support documentation, nor for the results of any modification of the programs by you.

Danger, Warning, Caution, and Note

There are six levels of special notation, which may be used in this manual. In descending order of importance, they are:

DANGER: This indicates an imminently hazardous electrical situation which, if not avoided, will result in death or serious injury.

DANGER: This indicates an imminently hazardous situation which, if not avoided, will result in death or serious injury.

WARNING: This indicates a potentially hazardous electrical situation which, if not avoided, could result in injury or major damage to the equipment.

WARNING: This indicates a potentially hazardous situation which, if not avoided, could result in injury or major damage to the equipment.

Instructions for Adept Utility Programs

9

Conventions

CAUTION: This indicates a situation which, if not avoided, could result in damage to the equipment.

NOTE: This provides supplementary information, emphasizes a point or procedure, or gives a tip for easier operation.

Conventions

Typographic Conventions

The following typographic conventions are used throughout this manual:

This Represents

ALL CAP-

ITALS

V+ file names, directory names, commands, keywords, and attributes; also acronyms.

A physical key or button that you must press, such as the Y, N, ENTER, and

CTRL keys.

monospace Monitor displays and code examples.

bold

bold/regular

Bold type is used for subroutine names, variable names, and program names, such as a.diskcopy. Bold type also is used for window items that you choose and window items that do not have initial capital letters in all principal words.

In typing or entering instructions, anything that you must type exactly as it appears. For example, if you are asked to type execute 1 a.diskcopy, you type all the bold characters exactly as they are printed. What you type is shown in lowercase letters unless it must be typed in uppercase letters to work properly. You may always substitute a currently valid shortcut form when typing a V+ command. In order for the V+ system to process your typing, you must conclude your entry by pressing the ENTER or RETURN key.

Place holders, in formal syntax definitions, for information that you provide.

You must replace such a place holder, written in bold weight, but need not replace an optional one, which is written in regular weight.

Indicates new terms and other emphasized words.

italics

Initial Capitals

The name of an object such as a window, screen, menu, dialog box, or dialog

Instructions for Adept Utility Programs

10

Listing of Utility Programs

This Represents box component. Examples are the Display menu and the Task Profiler window.

"Quotation marks"

Menu items, prompts, or any literal text that is being referenced.

Keyboard Conventions

Key combinations appear in the following format:

Notation Meaning

KEY1+KEY2 A plus sign (+) between keys means that you must press and hold down

KEY1, then press KEY2. For example, "Press CTRL+Z" means that you press CTRL and hold it down while you press Z.

Selecting, Choosing, and Pressing Items

In a context using windows, the terms select, choose, and press have different and specific meanings. Selecting an item usually means marking or highlighting it, as in picking a radio button. Selecting alone does not initiate an action.

Choosing an item carries out an action. For example, choosing a menu item may open a window or carry out a command. You can also initiate an action by choosing a command button

(a push button or a standard button). You often must select an item before you can choose it.

Often you can use a combination of keyboard and mouse techniques for selecting and choosing.

Pressing refers to physical buttons or keys. For example, you press the save key or press the

ENTER key. By contrast, you select or choose a window button.

Listing of Utility Programs

The following table provides the file name, description, application, utility type, and file type for the Utility Programs. In the File Type column, B = Binary, A = ASCII, and R = Read-Only.

See

Types of Program Files on the V+ software CD-ROM

for a description of file types.

Instructions for Adept Utility Programs

11

Listing of Utility Programs

File Name

ABS_ENC.V2

ADV_CAL.V2

ADVSERVO.LIB

ADV_USER.V2

BELT_CAL.V2

CFG_COBR.V2

CONFIG_C.V2

DC_SETUP.V2

DISKCOPY.V2

Utility Programs

Description of Contents

Option/Application

AdeptVicron robot Absolute encoder utility for the AdeptVicron robot

Calibrates stand-alone and robot-mounted cameras

AdeptVision

Utility Type

Robot Configuration

Vision

Robot/Motion

Library

Library of subroutines that allow robot control outside the normal V+ command set. See the

Advanced Servo Library

Reference Guide for details.

all Adept Controllers

Callable routines for using calibration data from

ADV_CAL

Calibrates moving belts

AdeptVision

Modifies calibration data for Adept Cobra 600/800 robots all Adept Controllers

Adept Cobra

600/800 robots

Configures controllerbased system features

Adept Controllers

Setup and calibration utility for Adept Smart-

Modules, Python Modules, and MotionBlox systems; configuration and calibration utility for Smart-

Servo systems

Adept SmartServo

Copies diskettes, V+ systems, and manipulates all Adept Controllers

Vision

Robot/Motion

Robot Configuration

Controller

Configuration

Robot Configuration

General

File

Type

B

B

B

A

R

B

B

B

B

Instructions for Adept Utility Programs

12

Listing of Utility Programs

File Name

DUTY_CYC.V2

EDITICON.V2

FAULTLOG.V2

FORMAT.V2

FTP_CLNT.V2

FTP_SRVR.V2

LOADAREA.V2

LOADBELT.V2

LOADICON.V2

LOADTCH.V2

Description of Contents disk files

Monitors the robot dutycycle values

Icon editing utility

Option/Application

AdeptThree-XL robot

All Adept controllers with a graphical user interface

Adept SmartServo Reads, stores, and clears the fault log file on a

SmartServo system

(1394-based servo products)

Formats the hard disk or

CompactFlash card

(which erases the entire contents) all Adept Controllers

Utility for AdeptFTP client functions

AdeptFTP

Client/Server

Utility for AdeptFTP server functions

AdeptFTP

Client/Server

AdeptVision Callable routine for loading stored area vision calibration

Callable routine for loading stored belt calibration data all Adept Controllers

Callable routine for loading graphics icons into memory

Callable routine for loading stored touchscreen

All Adept controllers with a graphical user interface

System controller with touchscreen

Utility Type

Robot/Motion B

General

Robot

Diagnostic

General

Network

Network

Vision

Robot/Motion A

General

General

B

B

B

B

B

A

A

A

File

Type

Instructions for Adept Utility Programs

13

Listing of Utility Programs

File Name

Description of Contents calibration

Monitors CPU usage

Option/Application

PROFILER.V2

RSC_RSTR.V2

SAFE_UTL.V2

SFUTIL.V2

SLMOTION.V2

SM_CAL.V2

Emulates MOVES while avoiding robot singularities

Performs the one-time factory calibration for

SmartModules and

Python Modules that use absolute encoders

SMARTLINK.LIB

Subroutine library of lowlevel routines used to access the 1394 network

SPEC.V2

Configures and tunes

AdeptMotion VME and

SmartMotion systems

SPECSUB.LIB

SQUEEZE.V2

Maintenance utility for robot RSC

Tests and commissions

CAT3 hardware

Works with data for

MOVEF/MOVESF instructions

All Adept controllers with a graphical user interface all Adept robots that have an RSC all Adept robots that have CAT3 hardware all Adept Controllers,

AdeptOne or Adept-

Three robot

Adept Viper robot

Adept SmartServo

Adept SmartServo all Adept Controllers

Subroutine library of lowlevel routines used in several utility programs all Adept Controllers

Removes comments and whitespace from program all Adept Controllers

Utility Type

General

Robot Configuration

Robot Configuration

B

B

Robot/Motion B

Robot/Motion B

Robot

Calibration

Servo Configuration

Library

Robot Configuration

Robot/Motion

Library

General

B

B

B

B

B

B

File

Type

Instructions for Adept Utility Programs

14

Types of Program Files on the V+ Software CD-ROMs

File Name

SRVUTIL.LIB

TOUCHCAL.V2

VPROTECT.V2

XMODEM.V2

Description of Contents files to reduce memory requirement

Option/Application

Subroutine library of lowlevel routines that are used by various servo utility programs

Adept SmartServo

Calibrates a touchscreen System controller with touchscreen all Adept Controllers Adds access protection to disk files and the programs contained in the files

Transfers files using the

XMODEM protocol all Adept Controllers

Utility Type

Servo Configuration

Library

General

General

General

File

Type

B

B

B

R

SPECDATA Subdirectory

This is a separate subdirectory that contains configuration files for AdeptModules and Adept

SmartModules devices. These files are used when performing the initial configuration of a

Modules system with the SPEC utility "AdeptModules quick setup" feature.

Types of Program Files on the V+ Software CD-ROMs

All the utilities in the UTIL (utility) folder on the V+ software CD-ROMs may be loaded with the V+ LOAD command, and executed with the EXECUTE command (except ADV_USER,

LOADAREA, LOADBELT, and LOADICON). This section describes some limitations on copying and editing the utilities.

ASCII Files

You may FCOPY, LOAD, and STORE these unprotected ASCII files. They typically contain V+ programs that are intended to be called from your own application program.

When you STORE your program, a copy of any of these routines present in memory and

CALLed by your program is automatically stored with your program. Do not edit these programs, as you may inadvertently change their functionality. If you use the STOREM command to store your program, the Adept programs must first be added to your program module (by using the MODULE command).

Instructions for Adept Utility Programs

15

How Can I Get Help?

Binary Files

In addition to ASCII program files, binary program files can be loaded and executed by V+.

You can freely FCOPY and LOAD these secured files, and you can EXECUTE the programs they contain. You cannot, however, edit the programs they contain, list them with the FLIST or

LISTP commands, or store them to a new file.

Read-Only Files

You can FCOPY, FLIST, and LOAD these read-only text files, and you can EXECUTE the programs they contain. You can also view these programs with the LISTP command and the SEE editor. You cannot, however, edit or store these programs. When the FDIRECTORY command is used to list the file directory, these files are marked with an R in the on-screen file list.

How Can I Get Help?

For details on getting assistance with your Adept software or hardware, you can access the following information sources on the Adept corporate website: l

For Contact information: http://www.adept.com/contact/americas l

For Product Support information: http://www.adept.com/support/service-and-support/main l

For user discussions, support, and programming examples: http://www.adept.com/forum/ l

For further information about Adept Technology, Inc.: http://www.adept.com

Instructions for Adept Utility Programs

16

Adept Utility Program Descriptions

Adept Utility Program Descriptions

LOADBELT

LOADICON

LOADTCH

PROFILER

RSC_RSTR

SAFE_UTL

SFUTIL

SLMOTION

SM_CAL

SPEC

SQUEEZE

TOUCHCAL

VPROTECT

XMODEM

Overview of the Utility Descriptions

ABS_ENC

ADV_CAL

ADV_USER

BELT_CAL

CFG_COBR

CONFIG_C

DC_SETUP

DISKCOPY

DUTY_CYC

EDITICON

FAULTLOG

FORMAT

FTP_CLNT

FTP_SRVR

LOADAREA

Instructions for Adept Utility Programs

17

Overview of the Utility Descriptions

Overview of the Utility Descriptions

The utilities are presented in alphabetical order, with the description for each utility starting on a new page.

To load and execute an Adept Utility program refer to the

Loading and Executing Adept Utility

Programs

.

The description of each utility contains the following sections, as applicable:

File Name

Name of the disk file that contains the program.

Program Name

Name of the program that is

EXECUTEd to begin the utility.

1

File

Type

B

Description

A short description of the utility.

1

or CALLed if the program is incorporated into your application code.

Overview

Major functions and overview of the utility.

Requirements

The equipment and conditions required to use the utility.

Usage Considerations

Additional information and how to include the utility in a V+ program.

Menu Structure

Descriptions of the utility menu items and the prompts displayed during use of the program.

Program Operation

Description of the use and operation of the Utility.

Related Utilities

Additional utilities that are frequently used in conjunction with this utility or that have related functions are listed here.

Instructions for Adept Utility Programs

18

ABS_ENC

ABS_ENC

File Name

ABS_ENC.V2

Program Name a.abs_enc

B

File

Type

Description

Absolute encoder utility.

Overview

The ABS_ENC utility program clears the absolute encoder of the AdeptVicron robot and clears encoder over-speed error bits that could be inadvertently set during transport. Clearing the absolute encoder: l

Clears the five error bits: l

Battery alarm l

Averspeed l

Overflow l

System down l

Quadrature; found in the absolute encoder serial data stream l

Resets the absolute encoder multi-turn counter to 0 only for the axis that is being cleared.

NOTE: Resetting the multi-turn counter to 0 can change the calibration of the robot, if the encoder is not reset at the correct limit of joint travel. This utility will not move the robot to the correct position, but rather prompts the user to manually move the joint of the encoder being cleared to the correct joint limit. If the absolute encoder is cleared in the wrong location, the reported robot location will differ by an increment of a number of full motor rotations. If this occurs, this utility can be re-executed to correct the situation.

Requirements

To run the ABS_ENC program: l l

You must be connected to an AdeptVicron robot.

You must have V+ version 14.1A or later installed on your system.

Before the ABS_ENC program can be used: l l

The robot must be calibrated with the factory defaults.

The robot must not have been disassembled, which includes replacing motors, encoders, belts, or drive mechanisms.

Instructions for Adept Utility Programs

19

ABS_ENC

Usage Considerations

The ABS_ENC program defines many real-valued and string variables with the prefix ae. and ts. that must not be modified by you or other programmers.

NOTE: If used correctly (i.e., according to the instructions listed below), this utility does not change the calibration of the robot. This assumes that the robot was correctly calibrated at the factory, that the drive mechanism has not been disassembled or altered, and that the motor or encoder have not been removed or disassembled.

Menu Structure

To access the ABS_ENC main menu, follow the

Loading and Executing Adept Utility Programs

procedure. Once ABS_ENC is initialized, the

ABS_ENC Main Utility Menu

is displayed.

ABS_ENC Main Utility Menu

A brief description of each menu item is provided in the table below.

Menu Description

Exit to System Monitor Exit to V+ dot prompt.

Clear Theta Axis (Jt 1) absolute encoder

Clears the Theta Axis error bit

Clear Z Axis(Jt 2) absolute encoder

Clear R Axis (Jt 3) absolute encoder

Clears the Z Axis error bit

Clears the R Axis error bit

Instructions for Adept Utility Programs

20

ABS_ENC

Change robot number

Change access between multiple Adept robots

Clear Axis absolute encoder

This menu item allows you to clear the absolute encoder for the selected axis. (Axis selection is specified by the selected menu item.) Follow the program directions to position the joint(s) for clearing the absolute encoder. Depending on the axis selected the utility program could prompt you to install, and later remove, the R axis shipping fixture on the robot. This aids in both properly positioning the robot and in moving the robot joints to the proper position, before clearing the absolute encoder.

NOTE: The procedure for clearing the Theta Axis absolute encoder for an AdeptVicron

300S robot is explained below. Clearing the absolute encoder of the Z or R axis is similar.

Instructions for Adept Utility Programs

21

ABS_ENC

Clearing Procedure of Jt Absolute Encoder

To clear the Theta Axis follow the following procedure:

1. From the main menu select option 1.

2. When prompted, Install the R Axis fixture onto the R axis arm and press ENTER.

3. Move the Theta Axis to the zero hardstop moving the arm in a clockwise movement

Instructions for Adept Utility Programs

22

ABS_ENC and press ENTER.

4. When prompted, remove the R Axis fixture from the R axis arm and press ENTER.

5. Move the R Axis to the zero hardstop, moving it away from the robot controller interface panel and press ENTER.

The program provides one last chance to change your mind before clearing the absolute encoder by displaying the following prompt:

Are you ready to clear the Theta Axis (Jt 1) Absolute Encoder (Y/N)?

6. Enter Y at the prompt to clear the absolute encoder.

The program performs a check of the multi-turn counter to verify that the joint is at the correct end of travel, before clearing the absolute encoder. If the multi-turn counter is not zero then the following warning message will appear:

WARNING: The multi-turn counter for the Theta Axis (Jt 1) is:

'8185'. The expected value is 0. This means that the joint is not at the correct hardstop or the absolute encoder has been previously cleared at the incorrect position. Either situation can be corrected by clearing the joint at the correct hardstop.

Enter Y to clear the absolute encoder, or enter N to Exit to the Main

Menu.

Clearing the encoder takes approximately 5 seconds. When the encoder is successfully cleared the computer displays the message "Absolute Encoder Successfully cleared". If the encoder is not cleared an error message will be displayed.

Instructions for Adept Utility Programs

23

ABS_ENC

"Multi-turn counter is not zero" Warning

Change robot number

The Change robot number menu item allows you to access other robots or mechanisms in the system for a multi-robot system. The currently selected robot is displayed below the program banner.

To use the Change robot number option follow the following steps:

Instructions for Adept Utility Programs

24

ABS_ENC

1. Select the option from the menu and press ENTER.

If the system has two robots, the utility will select the other robot.

2. If the system has more than two robots, then the utility will prompt you to select a robot number.

Enter the desired robot number and press ENTER.

NOTE: The main menu selections may change based on the robot selected.

If you attempt to select a non-AdeptVicron robot, the following message is displayed:

Robot #2 does not have Panasonic absolute encoders. This utility only works with

AdeptVicron Robots. Verify that the selected robot is an AdeptVicron Robot. The current robot is robot #1.

Instructions for Adept Utility Programs

25

ADV_CAL

ADV_CAL

File Name

ADV_CAL.V2

Program Name a.adv_cal

B

File

Type

Description

Camera calibration utility

Overview

Perform camera calibration.

In most vision applications, the cameras must first be calibrated. The principal results of camera calibrations are: l

A millimeter-to-pixel ratio that allows the vision system to use distances in real-world millimeters l

Camera-to-robot calibrations that allow robots to acquire parts l

A transformation that accounts for perspective distortion caused by a camera imaging element that is not parallel to the image surface

Usage Considerations

The disk file ADV_CAL.V2 is a protected file. Programs in that file cannot be displayed, edited, or stored from memory to a disk. Also, the file cannot be copied from one disk to another with the FCOPY command. The disk-copy utility program, DISKCOPY.V2 available in the UTIL (utility) folder on the V+ CD-ROM, can be used to make a backup copy of the entire distribution disk. That program can also be used to copy the file ADV_CAL.V2 from the distribution disk to the optional hard disk.

The steps below describe the overall procedure for executing the Advanced Camera Calibration program (ADV_CAL.V2).

1. If data from the optional High-Accuracy Positioning System (HPS) is to be used, use the program hps.load to load the data for at least one HPS mapping for the robot into memory. Mappings must be numbered consecutively starting with 1.

2. Load the calibration program into system memory and execute the program (refer to

Loading and Executing Adept Utility Programs

).

NOTE: If a calibrated robot is not connected to the system or DRY.RUN is not enabled, the program aborts immediately. If ARM POWER is not enabled or DRY.RUN is enabled, the system warns you that camera-to-robot calibration cannot be performed and asks you if you want to proceed.

Instructions for Adept Utility Programs

26

ADV_CAL

You are now asked to select a virtual and physical camera. All calibration options are performed on this virtual/physical camera pair. One of the program menu selections lets you change the selected physical or virtual camera.

When a physical and a virtual camera have been selected, a menu of program options is displayed. Select the desired option and follow the prompts displayed on the monitor.

Make sure to use the "LOAD/STORE calibration data from/to disk" option to store the calibration data that you want to use later.

3. See

Loading and Executing Adept Utility Programs

to delete the ADV_CAL utility from system memory after the calibration is complete.

NOTE: This deletes the camera-to-robot calibration data from memory unless the variables are referenced by some other program in memory that is not being deleted.

To restore the calibration data from the disk, you can do one of the following: l

Use the "LOAD/STORE calibration data from/to disk" menu option in the ADV_CAL.V2

program.

l

Create an application program that calls the subroutine load.area( ).

This subroutine is contained in the file LOADAREA.V2 in the UTIL (utilities) folder. See the

LOADAREA

utility description for details.

Related Utilities

LOADAREA

Instructions for Adept Utility Programs

27

ADV_USER

ADV_USER

File Name

ADV_USER.V2

Program Name a.adv_user

A

File

Type

Description

Routines for use with ADV_

CAL and for using calibration data

Overview

Routine to use camera calibration data.

This file contains utility programs that can be used by application programs to obtain object location information from the AdeptVision system, and to modify that information.

See the AdeptVision User's Guide for details on the programs in this disk file.

Usage Considerations

The file ADV_USER.V2 is a public file located in the UTIL (utility) folder on the V+ CD-ROM.

ADV_USER.V2 contains utility programs that can be used by application programs that access the AdeptVision system. Load and execute the ADV_USER.V2 program into system memory (refer to

Loading and Executing Adept Utility Programs

).

The following subroutines are included in the ADV_USER.V2 file.

l

ac.refine.vloc( ) is a subroutine that, if present while the calibration program is running, automatically refines the location of the vision objects using a VFIND.ARC

instruction. This routine should be used only when the calibration object is supposed to be a perfect circle. The name ac.refine.vloc( ) must be retained, since it is the key for automatic use by the calibration program.

l

adv.cam.user( ) is a subroutine that can be called from an application program to take a picture with a camera and return the location (in robot coordinates) of an object located in the vision window. It works for Adept-supported SCARA, XY, XYZ, and

XYZ-Theta configurations.

l

adv.tr.point( ) is a subroutine that is called by adv.cam.user( ). It is used to transform a point using a 3 x 3 camera calibration matrix. See the program header for details.

Related Utilities

ADV_CAL

Instructions for Adept Utility Programs

28

BELT_CAL

BELT_CAL

File Name

BELT_CAL.V2

Program Name a.belt_cal

R

File

Type

Description

Conveyor tracking calibration utility

Overview

Determine the calibration data required to have the robot track a moving conveyor belt.

Test the calibration data by having the robot track a point on the conveyor.

Various data items are required to have the robot track a moving conveyor belt. These include the following: l

The relationship between belt position and encoder output l

A description of where the belt is located in the robot reference frame and the direction in which the belt moves l

A definition of the limits of the robot working range along the belt

The belt calibration program can be used to define all these parameters and to store the data in a disk file for subsequent use by application programs.

Once all of the data items are defined, the performance of the robot/conveyor/encoder system can be tested.

Requirements

The following items are needed for use of this program: l

Adept robot system with the conveyor tracking feature l

V+ system with the conveyor tracking feature l

Manual control pendant l

Conveyor-tracking encoder l

Cable from encoder to the robot controller l

Calibration disk l

Calibration pointer l

Conveyor belt that can be stopped and started (provided by the customer)

Instructions for Adept Utility Programs

29

BELT_CAL

NOTE: The portion of the belt to be used by the robot must be straight and flat, but not necessarily level or parallel to any robot axis.

The following conditions must exist before the program can be used: l

The encoder must be mounted on the conveyor so that its drive disk rolls on the belt or so that the shaft of the encoder is connected to the belt drive train without backlash.

l

The calibration pointer must be mounted on the robot tool flange.

l

The V+ system must be loaded.

l

The robot must be calibrated, and COMP mode must be selected on the manual control pendant.

l

The conveyor belt must be securely installed so that it cannot move relative to the robot.

Load the conveyor tracking calibration program into system memory and execute the program (refer to

Loading and Executing Adept Utility Programs

).

NOTE: If your system is configured for more than one belt encoder, enter the number of the encoder channel you want to work with. The channels are numbered 1 though 6. If your system controls more than one robot, enter the number of the robot you want to work with.

Follow the prompts provided by the program during the various procedures. At the end of the calibration procedure you are able to store the calibration information in a disk file for later use.

To restore the calibration data from the disk, your application program should CALL the subroutine load.belt contained in the utility file LOADBELT.V2.

Usage Considerations

The calibration program defines several real-valued and location variables that use bc. and

belt. as prefixes. These variables must not be modified by you or by other programs.

NOTE: All these variables are deleted from memory when a DELETE command is used to delete the program from memory.

The DISKCOPY utility program (in DISKCOPY.V2) can be used to make a backup copy of the

V+ system files. That program can also be used to copy the file BELT_CAL.V2 from the V+

CD-ROM to the Compact Flash or an optional hard disk.

See the V+ Language User's Guide for additional details on programming conveyor belt applications.

Instructions for Adept Utility Programs

30

BELT_CAL

If you are using AIM MotionWare for belt tracking operations, the belt calibration utility built into MotionWare can be used to create, store, and load calibration data. That utility is equivalent to the BELT_CAL program.

Menu Structure

Menu

Perform complete calibration sequence

Load calibration data from the disk

Store calibration data onto the disk

Display belt encoder output

Set encoder scale factor

Description

Initiates processing of all the steps for defining the conveyor calibration data.

Loads belt calibration data from a previously created data file.

Stores the current belt calibration data in a disk file.

Define belt reference frame

Display the position and speed of the conveyor.

Defines how far the belt moves between each count output by the belt encoder.

Describes the direction in which the belt moves and the orientation of the surface of the belt.

Define belt working window

Initialize the belt variable(s) with current data

Defines how far upstream and downstream the robot can reach on the conveyor.

Incorporates the calibration data determined by the above steps into system memory.

Test belt calibration

Select belt to work with

Tests the robot in tracking a point on the conveyor belt.

Changes the number of the belt encoder channel.

Select robot to work with Changes the number of the robot you want to work with.

The conveyor tracking calibration program displays a menu of selections. The following paragraphs describe the menu items and provide additional information to help you decide how to respond to prompts from the program. After you respond to a prompt, the program displays instructions on the monitor or terminal.

NOTE: If you want to exit the program at any prompt, press CTRL+Z.

Instructions for Adept Utility Programs

31

BELT_CAL

Perform complete calibration sequence

This menu selection initiates processing of all the steps for defining the conveyor calibration data.

If you want to define only a portion of the calibration data (for example, because something in the setup has changed), do not make this selection. Select only the appropriate menu choice(s).

During the calibration procedure the program asks you to move the robot pointer to several locations on the conveyor. To see a description of the locations and a diagram indicating proper positions, respond to the following prompt:

Do you want to see an explanatory diagram (Y/N)?

See the descriptions that follow for more information on individual steps of the calibration procedure.

Load calibration data from the disk

This selection loads belt calibration data from a previously created data file.

You are asked for the disk unit on which the calibration data file is stored. Then you are asked to specify the subdirectory in which the file is located. If the correct subdirectory path is shown as the default, press the ENTER key.

The program displays the names of all the files currently in the selected subdirectory that appear to be belt calibration data files. This data is normally stored in a disk file named

BELTnnn.DAT, where nnn is a user-specified data set number.

After you enter the desired data set number, the data is read from the disk and is used to reinitialize the conveyor tracking system.

NOTE: See "

Select belt to work with

" for information on the variables defined by the program for use during conveyor tracking.

Store calibration data onto the disk

This selection allows you to store the current belt calibration data in a disk file for later use.

After the file is created, the data can be read from disk by this program or by an application program that contains the subroutine load.belt (provided in the file LOADBELT.V2 in the Utility directory on the V+ CD-ROM).

NOTE:See the

LOADBELT

description for information on how your application programs can read calibration data from disk files.

Instructions for Adept Utility Programs

32

BELT_CAL

You are asked for the name of the disk device on which you want the data stored. You are then asked to specify the subdirectory in which the file is to be located. If the correct subdirectory is shown as the default, you can simply press the ENTER key.

The program displays the names of any files currently in the selected subdirectory that appear to be belt calibration data files. The data is normally stored in a disk file named

BELTnnn.DAT, where nnn is a user-specified data set number.

After you enter the data set number that you want to use, the data file is created. The name of the new data file is BELTnnn.DAT, where nnn is the data set number you entered.

Display belt encoder output

Choose this selection to have the program display the position and speed of the conveyor as indicated by the output from the belt encoder. This is useful to verify that the encoder is functioning correctly.

Set encoder scale factor

The encoder scale factor defines how far the belt moves between each count output by the belt encoder. This menu selection initiates the steps required to determine that scale factor.

If you know the value of the scale factor, you can enter it directly to the program. Otherwise, you can use the robot to measure the belt motion between two positions.

NOTE: When positioning the calibration pointer over the calibration disk, keep the robot end-effector flange from rotating relative to the workspace. Otherwise, any eccentricity of the calibration pointer results in errors in the measurements between recorded positions.

The procedure for using the robot to determine the encoder scale factor involves recording a robot location on the stationary belt and its corresponding encoder reading. Then the belt is moved so that the point on the belt moves to the opposite extreme of the robot's reach. A new robot location and encoder reading are recorded. The difference between the two robot locations determines how far the belt moved, and the difference between the two encoder readings is the number of encoder counts output during that belt motion.

The Adept calibration pointer and disk are designed to simplify this procedure. The calibration program asks you to perform the following steps:

1. Place the disk on the belt as far upstream as the robot can reach, on the side of the belt nearest the robot. (It's a good idea to tape the disk to the belt so it can't slip when the belt is started and stopped.)

2. Center the robot pointer on the disk.

3. Press ENTER to indicate that the pointer is in place.

4. Back the pointer away and run the belt until the disk moves near the other extreme of the working range of the robot.

Instructions for Adept Utility Programs

33

BELT_CAL

NOTE: Be careful that the disk does not slip on the belt when the belt is started and stopped.

5. Without moving the disk, center the pointer on the disk a second time.

6. Press the ENTER key again to indicate that the pointer is in place.

Define belt reference frame

The belt reference frame describes the direction in which the belt moves and the orientation of the surface of the belt.

Four robot locations on the conveyor must be recorded to define the belt reference frame.

The two locations used to determine the encoder scale factor are used when the complete calibration procedure is performed. Otherwise, all four locations must be recorded.

For each location requested by the program, position the calibration disk on the belt and center the robot pointer on the disk. Note these considerations when following the instructions from the calibration program:

1. The calibration disk must not move across the belt while the upstream and downstream locations are being recorded.

2. The upstream, downstream, and across-the-belt locations must all be recorded at the same height above the surface of the belt.

3. The center-of-the-belt location can be anywhere in the vicinity of the center of the robot working range on the belt.

4. Care should be taken to keep the robot end-effector flange from rotating relative to the belt. Otherwise, any eccentricity of the calibration pointer results in errors in the measurements between recorded positions.

When the nominal belt transformation is computed, it can have a pitch component that is upside down with an absolute value greater than 90 degrees. As a result, you have the option of rotating the transformation 180 degrees about the X axis. The following prompt is displayed:

The nominal location has a non-standard pitch (i.e., greater than 90 degrees).

Rotate the transformation 180 degrees about the X (belt) axis (Y/N)?

NOTE: In most cases, you should have this rotation done. However, you should not do it if your application program expects the orientation that was determined with a previous version of the belt calibration program.

See the V+ Language User's Guide for additional details on programming conveyor belt applications.

If you are using AIM MotionWare for belt tracking operations, the belt calibration utility built into MotionWare can be used to create, store, and load calibration data.

Instructions for Adept Utility Programs

34

BELT_CAL

Define belt working window

The system must be told how far upstream and downstream the robot can reach. That is done by defining a robot location at each end of the desired working window. These locations are used to define imaginary planes perpendicular to the belt, and thus only their positions along the belt are used by the program.

NOTE: The upstream and downstream locations should be defined such that the robot is able to reach all belt locations within the working window.

Initialize the belt variable(s) with current data

This menu item causes the system to incorporate the calibration data determined by the steps above. As a result, the belt variable %b[i] is defined, where i is the number of the belt encoder being used.

NOTE: See "

Select belt to work with

" for information on the variables defined by the program for use during conveyor tracking. In particular, the robot must be able to reach all the locations on the far side of the belt with no joint moving to a "stretched-out" position.

Test belt calibration

To test the belt calibration you can have the robot track a point on the belt. Place a calibration disk on the belt and position the calibration pointer slightly above the disk.

As the robot is tracking the belt, you can stop and start the belt, change its speed, and reverse its direction of motion. You can stop the belt tracking by pressing ENTER on the keyboard, or DONE on the manual control pendant. The robot automatically stops tracking the belt if it moves close to an end of the defined working window along the belt.

You should verify that the robot accurately tracks the disk. That is, it should remain centered over the disk as the disk moves down the belt. Inaccurate tracking indicates the belt calibration procedure should be repeated.

If the robot correctly follows the path of the disk, but gains on it or lags behind, only the encoder scale factor must be recalibrated. If the robot moves across the belt as it tracks the disk, you should repeat the procedure that defines the belt reference frame.

Do you want to save the calibration data on the disk (Y/N)?

After completing the calibration procedure the calibration data can be stored in a disk file for use later by entering Y to the prompt shown above. The steps that follow are identical to those for the main-menu selection "Store calibration data onto the disk", which is described above.

Instructions for Adept Utility Programs

35

BELT_CAL

Select belt to work with

Use this menu item to change the number of the belt encoder channel you want to work with. The number of the channel currently selected is displayed above the main menu.

Select robot to work with

If your V+ system controls more than one robot, use this menu item to change the number of the robot you want to work with. The number of the robot currently selected is displayed above the main menu.

If there is no robot connected to your system or the robot has not been calibrated, there is a

3-second time-out and an error message is displayed.

Programming Considerations

When tracking the conveyor belt(s), the program defines the global variables listed below.

Your application program can access these variables, or it can define other, equivalent variables by calling the routine contained in the file LOADBELT.V2 in the Utility directory on the

V+ CD-ROM (or in the UTIL directory).

Variable

Name

%b[i]

Variable Type Description

Belt Belt variables, which define the motion of the conveyor belts (i = 1 to 6) belt.cal[i] belt.nom[i] belt.sf[i]

Real-value TRUE/FALSE indications of whether or not belts have been calibrated (i = 1 to 6)

Transformation Nominal belt transformations, which define the position, orientation, and direction of conveyor belts (i = 1 to 6)

Real-value Scale factors for belt travel per belt encoder count (i = 1 to 6) belt.win1[i] Transformation Locations defining one end of windows on the respective conveyor belts (i = 1 to 6) belt.win2[i] Transformation Locations defining other end of belt windows on the conveyor belts (i = 1 to 6)

Related Utilities

LOADAREA

Instructions for Adept Utility Programs

36

LOADBELT

SPEC

BELT_CAL

Instructions for Adept Utility Programs

37

CFG_COBR

CFG_COBR

File Name

CFG_COBR.V2

Program Name a.cfg_cobr

B

File

Type

Description

Utility used to modify the calibration configuration and park position of Adept Cobra robots.

Overview

Utility for modifying the calibration configuration and park position of Adept Cobra robots

(other than factory-set defaults).

The calibration configuration includes the calibration sensor target locations and the order of calibration of joint 1 and joint 2 of the robot. The utility stores the updated parameters to the

Robot Signature Card (RSC).

This utility does not store or retrieve the original or factory default RSC parameters. Adept recommends using the RSC_RSTR utility to save the original RSC data to disk, prior to executing the CFG_COBR utility.

WARNING: During the target adjustment operation robot high power is cycled off and on. Do not turn off power to the Adept controller.

Turning off controller power results in loss of robot calibration and requires restoring the robot to its original calibration configuration.

Requirements

The following items are needed for use of this program: l

Adept robot system with an Adept Cobra robot l

Manual control pendant

The following conditions must exist before the program can be used: l

The robot must be securely installed so it cannot move.

l

The V+ system must be loaded.

l

The robot must be calibrated with the factory defaults, and COMP mode must be selected on the manual control pendant.

Follow the prompts provided by the program during the various procedures. At the end of the calibration procedure you are able to store the calibration information in a disk file for later use.

Instructions for Adept Utility Programs

38

CFG_COBR

Usage Considerations

The system on which CFG_COBR.V2 is being run must have calibration code for the appropriate boot version available, preferably on the system's CompactFlash (D drive). If the system was booted from floppy disk, issue "calibrate 1" Monitor command before removing the floppy (boot) disk. Then load and execute CFG_COBR.V2 program. Otherwise, CFG_COBR.V2

may HALT with *Software incompatible* Code 0.

Menu Structure

Menu

Change J1 sensor target location

Change J2 sensor target location

Change part position after calibration

Teach park position

Change J1, J2 calibration order (currently J2, J1)

Description

Calibrates the robot to a new J1 target sensor location.

Calibrates the robot to a new J2 target sensor location.

Changes the park position of the robot after performing robot calibration.

Teaches the park position under robot power.

Changes the order that J1 and J2 calibrate.

NOTE: If you want to exit the program at any prompt, press CTRL+Z.

Change J1 sensor target location

This selection initiates calibration of the Joint 1 calibration target sensor after moving the target senor on the inner link.

During the calibration procedure the program moves joint 1 to the + (CCW) or - (CW) hard stops as a reference.

After the hard stop sensor is found, the robot returns to the start position. Follow the directions on the screen to modify the target sensor as desired.

Once the new target location of the sensor is found you are asked to update the RSC card, recalibrate the robot, and then move the arm to a straight out position.

Instructions for Adept Utility Programs

39

CFG_COBR

Change J2 sensor target location

This selection initiates calibration of the Joint 2 calibration target sensor after moving the target sensor on the inner link.

During the calibration procedure the program moves joint 2 to the + (CCW) or - (CW) hard stops as a reference.

After the hard stop sensor is found, the robot returns to the start position. Follow the directions on the screen to modify the target sensor as desired.

Once the new target location of the sensor is found you are asked to update the RSC card, recalibrate the robot, and then move the arm to a straight out position.

Change park position after calibration

This selection allows you to create and store in system memory a new robot location for a park position.

Teach park location

Move the arm position for the robot to the desired park location. Recalibrate the robot to verify the new park location.

Change J1, J2 calibration order (currently J2, J1)

This selection allows you to have the system change joint 1, joint 2 calibration order. The joint that calibrates first is listed at the main menu selection. This selection reverses that order. You are asked to recalibrate to verify the change.

Related Utilities

CONFIG_C

RSC_RSTR

SAFE_UTL

SFUTIL

SPEC

Instructions for Adept Utility Programs

40

CONFIG_C

CONFIG_C

File Name

CONFIG_C.V2

Program Name a.config_c

B

File

Type

Description

Controller configuration utility

The CONFIG_C utility provides access to the following functions: l

V+ System Installation

The installation option installs a new V+ system, configuring it to match the system being replaced.

l

Display and edit system configuration

The V+ system includes configuration data stored in a special system file. The CON-

FIG_C utility lets you edit this file. Each time the controller is restarted, the system reads the statements in the configuration file and sets the appropriate defaults.

l

Display and modify device modules for robots

The Robots and Device Modules options allow you to change the kinematic devicecontrol modules included in the V+ system and the robots that are controlled by the system.

l

Display and initialize the NVRAM contents

The NVRAM section displays and initializes the NVRAM, which is read each time the controller is powered up. The NVRAM need only be initialized if it has become corrupted, or if the device has failed and been replaced. Currently, CONFIG_C cannot be used to initialize the (pseudo) NVRAM for the SmartController.

l

Display information about the devices connected to the DeviceNet

The Adept Utility program CONFIG_C supports configuring the DeviceNet and mapping the DeviceNet hardware to the appropriate V+ signal numbers.

For a description of these functions and specific information on each CONFIG_C menu option, please refer to

Menu Structure

for further details.

NOTE: Changes to the system configuration do not take effect until the V+ system is loaded from the modified system file.

Requirements

The following items are needed to run CONFIG_C. All of these (except as indicated) were supplied with your Adept system:

Instructions for Adept Utility Programs

41

CONFIG_C l

Adept SmartController, using V+ version 16.0 or later l

V+ CD-ROM containing the utility files CONFIG_C.V2, DISKCOPY.V2, and SPEC-

SUB.LIB (or copies of the files on the Compact Flash).

Before you can run CONFIG_C: l

The V+ system must be loaded.

l

If you are using a robot system, the robot must be calibrated and COMP mode must be selected on the manual control pendant.

or

The DRY.RUN system switch must be enabled.

or

The program can be executed in a program task other than #0.

Usage Considerations l

System configuration changes do not take effect until the V+ system is loaded from the modified system file. Thus, after making all the desired changes to the configuration, turn off power to the controller and reboot the system from the modified system file.

l

Adept recommends making a backup copy of the modified V+ system. The

DISKCOPY

utility can be used for that purpose.

l

If the V+ configuration file contains statements for hardware or options that are not installed in the system, the extra statements are ignored and can be left in the configuration file. For example, the configuration file may contain statements for four analog input boards although the system may have only two boards installed.

l

Not all items in the configuration file can be changed. Items that cannot be changed by the configuration utility are noted as such when they are displayed.

l

The configuration program defines many real-valued and string variables with cf., dc.,

it., iu., ld., and sp. as prefixes. These variables must not be modified by you or by other programs. (All the variables are deleted from memory when the program exits normally. All the variables are deleted when a DELETE command is used to delete the program from memory, as described earlier.) l

If the DISKCOPY utility is not already in memory when the V+ installation menu item is first selected, the CONFIG_C program automatically loads DISKCOPY into memory.

If you later attempt to load DISKCOPY while CONFIG_C (and DISKCOPY) is still in memory, you will see many *Program already exists* errors, which can be ignored.

l

The system must be booted from a local disk (A, B, C, or D) in order to access the following CONFIG_C program menu items:

V+ System Configuration Data Robots and Device Modules

Instructions for Adept Utility Programs

42

CONFIG_C

If you attempt to access the above menu items after booting from the network, the following message is displayed:

** Cannot access data ** l

The CONFIG_C.V2 file is a protected binary file. Thus, the programs in the file cannot be displayed, edited, or stored from memory to disk. The file can be copied with the

FCOPY monitor command or the DISKCOPY utility program.

Instructions for Adept Utility Programs

43

CONFIG_C

Menu Structure

Menu

EXIT to system monitor

Installation

Description

Exits the CONFIG_C utility and returns to the system monitor.

The options under this menu item are used when upgrading a V+ system.

SAVE current ROBOT DATA

INSTALL a NEW V+ SYSTEM

Copies the new V+ system to the desired output disk drive and then duplicates the system configuration from the old V+ system on the new V+ system disk.

APPLY saved ROBOT DATA

Saves configuration data files for the robots and external encoders that the current V+ system is configured to control.

V+ System Configuration Data

Applies the saved robot and encoder data from the old V+ system to the new V+ system disk.

Accesses the configuration data on a V+ system disk

DISPLAY system CON-

FIGURATION

EDIT system CON-

FIGURATION

Change HEADER configuration

Change VPLUS configuration

Displays the configuration data on a specified V+ system disk.

Allows editing of the following system configuration settings.

The statements in this section cannot be changed.

Specifies which processors run a copy of the V+ interpreter.

Change ANALOG_INPUT configuration

Changes the input voltage configuration of Analog

I/O board. board numbers are determined by the analog board address switches, not by physical order in the backplane.

Change ANALOG_OUT-

PUT configuration

The left-hand side of each statement specifies

Instructions for Adept Utility Programs

44

CONFIG_C

Menu

Change DIGITAL_INPUT configuration

Sets up the digital input signal numbers. They should be set to match the input channel (1001,

1002, 1003, 1004 or NONE) that will be used.

Change DIGITAL_OUT-

PUT configuration

Sets up the digital output signal numbers. They should be set to match the output channel that will be used.

Change DEVICENET configuration

For additional information about the Adept Device-

Net environment and details on hardware configuration, see the Adept SmartController User's

Guide .

Change NETWORK configuration

Provides configuration information for the Adept-

Net option.

Change ROBOT configuration

Description

BOARD and a number, and PORT and a number.

Analog I/O board numbers are determined by the analog board address switches, not by physical order in the backplane

Change SERIAL configuration

Change SERVO_

BOARDS configuration

Change SYSTEM configuration

Change TASKS configuration

Specifies the following: l l l kinematic module associated with each robot latch parameters for belts and robots settings for 1394 digital input signals used as I/O signals for each robot

Specifies the communications protocols and parameters for various serial data communications hardware and software.

Associates servo interface boards (EJI, MI3, MI6, or

VFI) with processor boards.

Specifies various characteristics of the V+ system.

Allows changing of the default TASKS configuration. Operation of the V+ system can be

Instructions for Adept Utility Programs

45

CONFIG_C

Menu Description adversely affected by incorrect settings of task priorities.

Change VISION configuration

Associates a vision system with a processor and sets the vision memory allocation and the virtual frame buffer size.

EXPORT configuration DATA

Copies the systems configuration data to a regular disk file or network file.

IMPORT configuration DATA

This operation reads V+ system configuration data from a disk file and writes the data to a V+ system disk.

Robots and Device Modules

See the Device Module documentation for more information on device modules.

LIST current CON-

FIGURATION of system file

LIST device modules in a device-module FILE

REPLACE device modules in system file

APPEND device modules to system file

SELECT device modules for robots

Controller NVRAM

DISPLAY NVRAM contents

INITIALIZE the NVRAM

Reads and displays current configuration of your system.

Lists device modules that are present in the device module file for the current system.

Replaces system file device modules by reading device modules from a disk file.

Reads device modules from a disk file and append them to a system file device module.

Associates a device module with a selected robot.

This option allows setup of the system NVRAM within the controller.

Displays model, serial number, network IP address, and a list of installed options.

Initializes the NVRAM on the AWC processor. Done only when a replacement NVRAM has been installed on the processor.

Instructions for Adept Utility Programs

46

CONFIG_C

Menu

SET IP address in the

NVRAM

SET "SWITCHES" in the

NVRAM

Scan the DeviceNet

SCAN the DeviceNet for nodes

Description

Set the IP address of the Adept controller (the controller's address on the local area network).

Defines the V+ configuration settings in software rather than using hardware DIP switches. This is done without removing the AWC board.

Configures DeviceNet and map the DeviceNet hardware to the appropriate V+ signal numbers.

Determines what is recorded for each DeviceNet component you want to access with the Adept Controller.

Related Utilities

Config_C, V+ Installation

Config_C, System Configuration Data

Config_C, Robots and Device Modules

Instructions for Adept Utility Programs

47

CONFIG_C, Installation

File Name

CONFIG_C.V2

Program Name a.config_c

B

File

Type

Description

Controller configuration utility

The options under this menu item are used when upgrading a V+ system. The purpose of these operations is to carry forward all the custom configuration information from the old system to the new system. See

Upgrading Your V+ System

for details on installing a new V+ system.

SAVE current ROBOT DATA

NOTE: This menu item followed by an asterisk(*) indicates that the operation cannot be performed because of an incompatibility between the edition of CONFIG_C being used and the current V+ system. Use the edition of CONFIG_C that was supplied with your old

V+ system.

This option creates configuration data files for the robots and external encoders that the current V+ system is configured to control. These data files can be stored on any disk, and can be used later to restore robot and encoder configuration data to the V+ system.

You are asked which disk drive should receive the data files. If an optional floppy drive is indicated, you are asked to insert a diskette. All the data files are created automatically. Each file name is displayed for reference. For example, if an error occurs, the file name should help you to understand the problem. If the files were written to a diskette, you are advised to write-protect and label the diskette.

CAUTION: Any existing files with the same names are overwritten without warning!

INSTALL a NEW V+ SYSTEM

This option copies the new V+ system to the desired output disk drive and then duplicates the system configuration from the old V+ system on the new V+ system disk.

CONFIG_C automates most of the installation process. As noted above, however, the robot and encoder configuration data must have been saved in disk files before the installation process is initiated. After completing this installation step, you must complete the installation process by selecting step #3 (APPLY saved ROBOT DATA).

The entire installation process can take up to 45 minutes. Most of that time is spent making backup copies of your old and new V+ systems; you can stop the process at any time while

Instructions for Adept Utility Programs

48

making these copies. However, after the process of configuring your new V+ system has begun, do not interrupt the installation process. The system informs you when the uninterruptible portion of the process has been reached, and you can stop at that point.

NOTE: Use the edition of CONFIG_C that you received with the new V+ system.

Make sure you clearly identify the diskettes used during the installation process. There is no way for the program to tell if you have inserted the wrong diskette in response to a request. Carefully read the program messages before you respond to each prompt.

During installation, answer the program questions about the system disks.

In various situations, the program recommends that you make a backup copy of the old and/or new V+ systems. If you agree, DISKCOPY is invoked to make the copy. You should be familiar with the use of the DISKCOPY program to copy a V+ system and to copy a diskette image.

NOTE: In most situations Adept strongly recommends that you make a backup, and you are asked a second time if you want to make the backup.

After the appropriate backup disks are made, the program asks you to put one or the other of the system disks in the floppy drive so that configuration information can be read and confirmation can be made that needed files are present on the new system disk.

Next, the actual installation process begins, and it should not be interrupted. The following steps are performed:

1. The new system is copied to the specified output drive.

2. The appropriate device modules are installed in the V+ system file on the output disk.

NOTE: If the installer cannot find the necessary device-module file(s), you are asked for the disk to be accessed.

3. The configuration information from the old system is written to the output disk.

NOTE: No check is made to ensure that the robot selections defined in the configuration data match the device modules that are present on the disk. That is, if the old system is incorrectly configured, the new system is also.

Finally, you are told what steps must be performed to load the robot data from the disk files created in step #1 of the three-step installation process.

Instructions for Adept Utility Programs

49

APPLY saved ROBOT DATA

CAUTION: For Cobra s600 or s800 systems (purchased before 2005), when using a customized SPEC file, you must manually re-enter any customized

SPEC data when upgrading the V+ operating system software.

Details...

This option applies the saved robot and encoder data from the old V+ system to the new V+ system disk.

The system must have been booted from the disk created with step #2 above.

1. After the purpose of the menu item is displayed, you are given an opportunity to cancel the menu selection.

2. Next, the robot and external encoder configuration of the current system is displayed, and you are given another chance to cancel the process.

3. You are asked which disk drive contains the configuration data files. If an optional floppy drive is indicated, you are asked to insert the diskette. The program looks for the configuration data files on the specified disk in the subdirectory \CONFIG_C\ with the names that were displayed during step #1.

4. After confirming that the required files are present, you are given one more chance to cancel the process. (If any required file is not found, its file specification is displayed, and the process cannot be continued.)

5. If you agree to continue, all the data files are read automatically. Each file name is displayed for reference. For example, if an error occurs, the file name should help you to understand the problem.

NOTE: As the files are read, several lines of output may be displayed. You are advised by the program to use CTRL+S/CTRL+Q to control the output. Some of those lines may appear to be error messages. (Refer to the documentation for the

SPEC utility in the Adept SmartMotion Developer's Guide for an explanation of the messages displayed while a configuration data file is being read.) In general, such messages result from changes that have been made to the V+ system or the CON-

FIG_C program and do not indicate a real problem.

6. After all the data files are read, you are asked if that data should be written to a V+ system disk. If so, you are told that the system disk must be the one from which the current V+ system was booted. If you indicate that the data should not be written to a

V+ system disk, the ramifications are explained and you are asked to confirm your choice.

Related Utilities

CFG_COBR

Instructions for Adept Utility Programs

50

DC_SETUP

SPEC

Instructions for Adept Utility Programs

51

CONFIG_C, V+ System Configuration Data

File Name Program Name

File

Type

CONFIG_C.V2

a.config_c

B

Description

Controller configuration utility

This topic accesses the configuration data on a V+ system disk, not the configuration data currently in system memory.

NOTE: The target V+ system should be compatible with the edition of CONFIG_C being used.

DISPLAY system CONFIGURATION

This option displays the configuration data on a specified V+ system disk.

EDIT system CONFIGURATION

NOTE: The configuration editor does not check to see whether your changes are consistent with system requirements. If the V+ system fails to boot after the configuration has been changed, you must boot from a different V+ system disk and then use CONFIG_

C to correct the configuration data problem(s) on the inoperable system disk.

After you select this option, the system asks for the drive that holds the operating system you want to change. After a drive is specified and the configuration data is read from the disk, the following submenu is displayed:

Instructions for Adept Utility Programs

52

Configuration Editor

Choosing a specific section allows you to edit the statements for that part of the system. The statements are displayed as equations. The left-hand side of the equation specifies the item that you are configuring. The right-hand side specifies the attributes that the item can have and the value each attribute is given at system startup. The general form of each statement is:

ITEM # = "/ATTRIBUTE value /ATTRIBUTE value.../ATTRIBUTE value"

However, not all items have a number (#). Also, some items have only a value associated with them and not a list of attributes.

When you select a section, you are shown all the current statements in the section. You are then presented with each statement and given the opportunity to change that statement.

You can delete statements or add new statements to the configuration file. In general, the sequence of steps for editing configuration statements is:

1. Select a section from the edit system configuration submenu.

2. The program displays all the statements in the selected section.

3. The program displays statements one at a time, and asks if you want to edit each one.

You have three options: l

If you enter N, the next statement is displayed. If this is the last statement in a section, the program asks if you want to add a new statement.

l

If you enter Y, the program asks if you want to delete the statement.

l

If you respond Y to the delete prompt, the statement is removed from the configuration data.

l

If you respond N to the delete prompt, the first attribute in the statement is displayed along with its current value and its possible values (or range of values).

To leave the value unchanged, press ENTER. To change a value, enter the desired value and press ENTER.

After you press ENTER, the next attribute and its values are displayed.

After all attributes have been presented for editing, the revised statement is displayed and you can reedit if necessary.

l

If you select Q (or complete editing the last statement in a section), the program asks if you want to add a new statement to the configuration data. If you respond Y, a new statement is started and you can specify the appropriate attribute values. If you respond N, the editing submenu is redisplayed.

CAUTION: You must save the modified configuration data on the system disk if you want the changes to be retained.

Instructions for Adept Utility Programs

53

The options for the edit system configuration submenu are described below.

NOTE: There are often configuration statements for options that are not present in the controller. Such statements are ignored by V+ and do not need to be deleted.

Change HEADER configuration

The statement in this section cannot be changed.

Change VPLUS configuration

This section specifies which processors run a copy of the V+ interpreter. If an auxiliary processor is running only a servo or vision task, removing the V+ interpreter from that processor saves RAM.

NOTE: The V+ Extensions license is required to run V+ on more than one

CPU.

The left-hand side of each statement specifies PROCESSOR and a number. Processor numbers are determined by the processor board address switches, not by their physical order in the backplane. See the Adept SmartController User's

Guide for details.

The right-hand side of the statement specifies the V+ system number to assign to the processor. The V+ system number and the processor number must be the same. To remove the V+ interpreter from a processor, delete the statement for that processor.

Change ANALOG_INPUT configuration

The left-hand side of each statement specifies BOARD and a number. Analog

I/O board numbers are determined by the analog board address switches, not by physical order in the backplane. See the Adept SmartController User's Guide for details.

The analog input channels have two attributes, /TYPE and /MODE. The possible values for /TYPE are BIPOLAR and UNIPOLAR. If any of the ± voltage ranges

(±5 V, ±10 V, etc.) are selected in the hardware setup, the software setup must specify BIPOLAR I/O. If a positive-only voltage range is hardware selected, the software setup must specify UNIPOLAR I/O. For input channels, all the channels on a board must have the same type selection.

The possible values for /MODE are single-ended and differential. Single-ended input uses the returned value of each input channel. Differential input uses the difference between returned values on pairs of input channels. The software setup must match the hardware setup.

Instructions for Adept Utility Programs

54

Change ANALOG_OUTPUT configuration

The left-hand side of each statement specifies BOARD and a number, and PORT and a number. Analog I/O board numbers are determined by the analog board address switches, not by physical order in the backplane. Contact Adept Applications for details. On each board, there are four analog channels, numbered 1 to 4. See AIO.OUT

for details on addressing the individual channels.

The analog output channels have one attribute, /TYPE. The possible values for

/TYPE are BIPOLAR and UNIPOLAR. If any of the ± voltage ranges (±5 V, ±10 V, etc.) are selected in the hardware setup, the software setup must specify BIPO-

LAR I/O. If a positive-only voltage range is hardware selected, the software setup must specify UNIPOLAR I/O. For output channels, BIPOLAR or UNIPOLAR can be selected for each channel independent of the selections for the other channels.

Change DIGITAL_INPUT configuration

The digital input configuration can contain 3 types of statements, POS_LATCH,

VIS_TRIGGER, and SIGNAL.

POS_LATCH and VIS_TRIGGER statements

The POS_LATCH and VIS_TRIGGER statements define the V+ input signals that will be associated with latch/trigger number 1 or 2. These statements can have the following attribute:

/SIGNAL n where 'n' is a standard V+ input signal number for the first signal in a byte. It must be set to match the input channel (1001, 1002, 1003, 1004, or NONE) that will be used.

For POS_LATCH statements, the position latch number specified must match the latch number specified with the ROBOT menu option (see

Change ROBOT configuration

). For additional details, see Position Latch and Vision Trigger . See

LATCH for details on reading latched encoder positions.

For VIS_TRIGGER statements, the hardware setup of the EVI module must match the vision trigger number specified. See the V.IO.WAIT

keyword for details on using the vision trigger.

SIGNAL statement

SIGNAL statements associate eight external 1394-based hardware signals with eight V+ input signals. The number on the left-hand side of the statement identifies the first V+ signal in the group. It must be 1001, 1009, ..., 1505 -- that is,

1001 plus Nx8, where N is 0, 1, 2, ..., 63. The /INPUT BLOCK, /INPUT BYTE, and

Instructions for Adept Utility Programs

55

IO_OPTIONAL attributes are specified on the right-hand side of the /SIGNAL statement: l

/INPUT BLOCK n: n is the 1394 input block ID to be used for the input signals specified by /SIGNAL. n may range from 1 to 31.

l

/INPUT BYTE m: m is the byte offset within the input block. It can have the following values (the default is zero):

Byte Bits

2

3

0

1

0 - 7

8 - 15

16 - 23

24 - 31 l

/IO_OPTIONAL YES/NO: If this is set to YES, no error is generated if the input block is not found on the 1394 network. If this is set to NO, an error is generated and robot power cannot be enabled if the input block is not found. The default is NO.

Change DIGITAL_OUTPUT configuration

SIGNAL statements in this section associate external 1394-based hardware signals with V+ output signals. Each statement associates eight hardware signals with eight V+ output signals. The number on the left-hand side of the statement identifies the first V+ output signal in the group. It must be 1, 9, ..., 505

-- that is, 1 plus Nx8, where N is 0, 1, 2, ..., 63. The /INPUT BLOCK, /INPUT

BYTE, and IO_OPTIONAL attributes are specified on the right-hand side of the

/SIGNAL statement to identify the hardware signals to be accessed.

l

/OUTPUT BLOCK n: n is the 1394 output block ID to be used for the output signals specified by /SIGNAL. n may range from 0 to 31.

l

/OUTPUT BYTE m: m is the byte offset within the output block. It can have the following values (the default is zero):

Byte

0

Bits

0 - 7

Instructions for Adept Utility Programs

56

2

3

Byte

1

Bits

8 - 15

16 - 23

24 - 31 l

/IO_OPTIONAL YES/NO: If this is set to YES, no error is generated if the output block is not found on the 1394 network. If this is set to NO, an error is generated and robot power cannot be enabled if the output block is not found. The default is NO.

Change DEVICENET configuration

The statements in this section provide configuration for digital I/O signals that are connected via the DeviceNet bus. Refer to

DeviceNet Statements in V+ Configuration Data

for information about these statements. Before changing the configuration, use the

Scan the DeviceNet for nodes

function to gather information required for the configuration.

NOTE:

 - For an overview of the Adept DeviceNet implementation, see Adept

DeviceNet .

 - For details on DeviceNet network status, use the DEVICENET monitor command.

Change NETWORK configuration

The statements in this section provide configuration information for the Adept-

Net option. Refer to the AdeptNet User's Guide for information about these statements.

Change ROBOT configuration

This section specifies which kinematic module is associated with each robot and the parameters for position latches for each robot and/or belt encoder. The position latch functionality available is determined by the V+ version installed on your system (see Latching Functionality ). To prevent V+ from wasting time processing latch events, do not add /POS_LATCH clauses unless you need to process latch information. Also, do not connect fast digital inputs to noisy or unstable sensors that continually generate latch events.

Instructions for Adept Utility Programs

57

NOTE: The main-menu item "Robots and Device Modules" provides a more convenient method for configuring the robot kinematic-module selection.

However, that menu item does not provide access to the statement clauses related to output signals or position latching.

The left-hand side of each statement specifies ROBOT and a robot number. The

ROBOT statement has the following attributes: l

/MODULE: The value of /MODULE depends on the kinematic modules installed in your system and robot types connected to the controller.

See the Adept SmartMotion Developer's Guide for details on selecting and specifying motion devices.

l

/OUTPUT_BLOCK n: n is the 1394 output block ID to be used for the

3001 - 3008 output signals for this robot. n may range from 1 to 31.

l

/OUTPUT_BYTE m: m is the byte offset within the output block and can have the following values:

1

2

Byte

0

Bits

0 - 7

8 - 15

16 - 23

3 24 - 31 l

/IO_OPTIONAL YES/NO: If this is set to YES, no error is generated if the input block is not found on the 1394 network. If this is set to NO, an error is generated and robot power cannot be enabled if the input block is not found. The default is NO.

l

/POS_LATCH

n

:

In V+ 15.1 or later, the /POS_LATCH clause accepts multiple arguments which allows the system to recognize latch events from more than one source. For all systems (AWC-II and SmartController), latching can occur on the rising edge (positive) of the fast digital input transition from high to low (positive edge). On SmartController CX systems, latching can also occur on the falling (negative) edge of the fast digital input.

Instructions for Adept Utility Programs

58

Multiple latch events from the same or different inputs may be buffered internally by V+ by adding the /LATCH_BUFFER clause to the ROBOT or

BELT statement. For details, see

/LATCH_BUFFER

below. The source of a latch event can be determined by the return value from the LATCHED function.

For additional details, see Position Latch and Vision Trigger .

NOTE: If you have an AWC-I controller, the /POS_LATCH clause is specified in the SERVO_BOARDS section instead of the ROBOT section. With AWC-II and SmartController systems, the /POS_LATCH clause is ignored if it is specified on the BOARD statements.

Latching Robot and Belt Channels

If you are using V+ 14.0 or later, you can latch either an entire robot or any belt channels independently. The robot axes and belt channels can be distributed among any combination of VME boards or 1394 axes as shown in the following example:

.ROBOT

ROBOT 1="/MODULE -1 /POS_LATCH 1"

BELT 1 = "/POS_LATCH 1"

BELT 2 = "/POS_LATCH 1"

BELT 3 = "/POS_LATCH 1"

Instructions for Adept Utility Programs

59

/POS_LATCH Parameter Definition

V+ version

15.0

Arg n

Description

= 0 Latch is disabled

= 1 VME encoder latch signal 1 latches all axes for the robot

= 2 VME encoder latch signal 2 latches all axes for the robot

=None CONFIG_C automatically suppresses the /POS_LATCH clause and /LATCH_

BUFFER clause

15.1 or later n

= 0

= 1

= 2

=

1001

=

1002

=

1003

Latch is disabled

VME encoder latch signal 1 latches all axes for the robot

VME encoder latch signal 2 latches all axes for the robot

Latch positive edge on fast digital input

1001

Latch positive edge on fast digital input

1002

Latch positive edge on fast digital input

1003 (available on

SmartController CS systems only with V+ version 16.0 and later)

Instructions for Adept Utility Programs

60

V+ version Arg Description

=

1004

=

N1001

Latch positive edge on fast digital input

1004 (available on

SmartController CS systems only with V+ version 16.0 and later)

Latch negative transition of fast input

1001 (available on

SmartController CS systems only with V+ version 16.0 and later)

=

N1002

Latch negative transition of fast input

1002 (available on

SmartController CS systems only with V+ version 16.0 and later)

=

N1003

Latch negative transition of fast input

1003 (available on

SmartController CS systems only with V+ version 16.0 and later)

=

N1004

Latch negative transition of fast input

1004 (available on

SmartController CS systems only with V+ version 16.0 and later)

Instructions for Adept Utility Programs

61

V+ version Arg Description

NOTE: If no signal is specified for the /POS_LATCH clause, this clause is not included in the ROBOT or BELT statement.

Configuration Restrictions for POS_LATCH Clauses

Because of hardware restrictions, some POS_LATCH configurations must not be specified. The combinations shown in the following table are not allowed and will generate the error *Invalid software configuration* at system startup. This error disables all latching for all inputs, but other than that the V+ system is totally functional.

Invalid POS_LATCH Configurations

If the .ROBOT or .DI-

GITAL_INPUT section of

CONFIG_C contains...

then, the .ROBOT or .DI-

GITAL_INPUT sections MUST

NOT contain the clause...

/POS_LATCH 1 (clause) or

POS_LATCH 1 (statement)

/POS_LATCH 2(clause) or

POS_LATCH 2 (statement)

VIS_TRIGGER 1

/POS_LATCH 1001 or

/POS_LATCH N1001

POS_LATCH 1002 or

/POS_LATCH N1002

VIS_TRIGGER 2

POS_LATCH 1003 or or

/POS_LATCH N1003

POS_LATCH 1004 or

/POS_LATCH N1004 l

/LATCH_BUFFER n:

Instructions for Adept Utility Programs

62

NOTE: This clause is available only with V+ version 15.1 or later.

The /LATCH_BUFFER clause provides improved response time for latch triggering. With unbuffered latching, a single latch source can be retriggered about every 8 milliseconds. If the /LATCH_BUFFER clause is specified with n > 1, a single latch can be triggered every 1 millisecond on an

AWC-based controller and possibly every 200 microseconds on a Smart-

Controller.

The value n specified for /LATCH_BUFFER indicates the number of latch events that are buffered for this robot or belt. For example, to configure belt 1 to be latched by a positive transition on signal 1002, and both positive and negative transitions on signal 1003, and buffer up to 16 latch events, use the statement:

BELT 1 = "/POS_LATCH 1002 1003 N1003 /LATCH_BUFFER 16"

The value range for n is 1 to 200. The value specified determines the number of events that will be saved before the user program calls the

LATCHED () function. If more than n events occur before LATCHED() is called, the latest events are not recorded. Calling LATCHED() removes an event from the buffer and allows an additional event to be recognized.

If n=1, then the /LATCH_BUFFER clause is not included in the ROBOT or

BELT statement.

For additional information on latch buffering, see Position Latch and

Vision Trigger .

Change SERIAL configuration

This section specifies the communications protocols and parameters for various serial data communications hardware and software.

The left-hand side of each statement specifies either GLOBAL_PORT (for the global serial lines available on the SIO board or SmartController CX) or LOCAL_

PORT (for the local serial lines available on the processor or SmartController).

The global serial lines can be accessed by all processors. The local serial lines can be accessed only by the processor they are attached to. Each GLOBAL_PORT has a number that refers to the serial port number (port #4 is the FP/MCP connection). Each LOCAL_PORT has a number that corresponds to the processor number, and a number that refers to the serial port number on the processor.

The processor number is determined by an address switch on the processor board (see the Adept SmartController User's Guide ).

GLOBAL_PORTs and LOCAL_PORTs have the following attributes: /DRIVER,

/SPEED, /BYTE_LENGTH, /PARITY, /STOP_BITS, /FLOW, /FLUSH, /DTR, /MU-

LTIDROP, and /BUFFER_SIZE. See Serial and Disk I/O Basics for general details

Instructions for Adept Utility Programs

63

on serial I/O. See the documentation on any serial devices you may be using for details on the correct settings. Most serial I/O settings can also be changed at runtime with the FSET monitor command or program instruction.

CAUTION:For each of the following pairs of serial ports on the SIO module or SmartController CX, the baud rate 19200 cannot be used for one of the ports if baud rate 7200 or

38400 is used for the other port in the pair:

GLOBAL_PORT 1 and GLOBAL_PORT 4

GLOBAL_PORT 2 and GLOBAL_PORT 3

Change SERVO_BOARDS configuration

NOTE: The SERVO BOARDS configuration section only applies to Adept MV

Controller-based systems.

This selection associates servo interface boards (EJI, MI3, MI6, or VFI) with processor boards. In multiprocessor systems, you may elect to run the servo task for a given servo board on any of the processor boards in the system.

The left-hand side specifies BOARD and a number. The servo interface board numbers are determined by the board address switches, not by physical order in the backplane. See the Adept MV Controller User's Guide  for more details.

The BOARD statement can have two attributes: /PROCESSOR and /POS_

LATCH. The /PROCESSOR attribute specifies the processor that runs the servo task for this servo board. The value of /PROCESSOR is a list of processor numbers. The system looks through the list and associates the servo board with the first installed processor that is in the list. For example, if the attribute

"/PROCESSOR 3|2|1" is specified, the servo board is associated with processor

3 if it is installed, processor 2 if processor 3 is not installed, or processor 1 if processors 3 and 2 are not installed.

The /POS_LATCH attribute specifies which (if any) high-speed backplane signals each servo board uses for latching robot and encoder positions. The back-

plane Position Latch signals can be triggered from either the CIP (configured

with the DIGITAL_INPUT menu option; see

Change DIGITAL_INPUT configuration

) or from a vision (EVI) board (configured using the V.STROBE system switch or the ADV_CAL.V2 utility program).

NOTE: For AWC-II and SmartControllers, the /POS_LATCH attributes are specified in the ROBOT configuration section. Therefore, the system will ignore any /POS_LATCH clauses in the SERVO_BOARDS section.

Instructions for Adept Utility Programs

64

Change SYSTEM configuration

This section specifies various characteristics of the V+ system.

CONTROLLER_ID ID string to allow a host to connect to the V+ controller. The ID string can be up to 16 characters in length and must be enclosed in quotes (example: "id_ string")

The default value is null. If the CONTROLLER_ID is null, any host can connect to the V+ controller. If a value is specified, the host must supply a matching ID or its connection requests are ignored.

NOTE: CONFIG_C version 16.0 edit A (or later) is needed to access this statement in the configuration data.

DEFAULT_DISK Sets the default disk for the V+ operating system.

Specify any valid device, unit, and directory path specification. The default disk can be changed at runtime with the DEFAULT monitor command.

DEFAULT_SPEED Sets the default monitor speed for motion. Specify any integer value from 1 to 100. The default speed can be changed with the SPEED monitor command or program instruction.

WARNING: Before setting the default, be sure that your mechanism can safely and reliably move at the specified speed.

GRAPHICS Statement that specifies the following attributes for graphics management:

/MAX_

WINDOWS be open at one time

 /MAX_ specifies the maximum number of icons

ICONS

/DOUBLE_

CLICK the maximum number of windows that can with different names that can be loaded.

specifies the time interval (in milliseconds) for detecting double clicks (as opposed to two single clicks). Two clicks separated by less than this interval are processed as a double click.

Instructions for Adept Utility Programs

65

NOTE: The GRAPHICS attributes /MAX_ICONS and

/DOUBLE_CLICK apply only to graphics displayed by a VGB. Those attributes do not apply when the

AdeptWindows option is being used to display graphics.

PASSIVE_ESTOP Controls the operation of the CIP Passive ESTOP Output signal. The Passive ESTOP Output contacts in the

CIP normally are closed (i.e., the output signal is on) when motor High Power is on. This statement can have one of the following arguments:

POWER_TIME-

OUT

IGNORE_ If this parameter is specified, the Passive

ENABLE ESTOP Output signal does not follow the state of the MCP enable switch during man-

TRACK_

ENABLE ual mode. That is, although motor High

Power is off when the MCP enable switch is released, the Passive ESTOP Output signal stays on as if High Power were on. This is the default behavior.

If this parameter is specified, the CIP Passive

ESTOP Output signal is turned off whenever the MCP enable switch is released, even during manual mode.

Determines how long V+ waits, when enabling robot power, for you to press the Robot Power button on the

CIP after the Robot Power light starts blinking. The default setting is 10 seconds.

If the value is 0, the V+ system does not wait for the

Robot Power button to be pressed. This feature does not apply to Python modules, SmartModules, or MB-

10 systems.

WARNING: This feature requires that proper safety systems are provided to ensure the safety of the operators and equipment.

SERVO_RATE Specifies the servo rate for VME-based servo boards.

The value can be either 1 KHz or 500 Hz. This value must match the servo software, kinematic module,

Instructions for Adept Utility Programs

66

STARTUP_MES-

SAGE

TRAJ_RATE and hardware configuration. Do not change this value unless directed to do so by Adept or the system integrator.

NOTE: This parameter has no effect on servo boards that are not VME-based. The SERVO RATE for SmartServo-based products cannot be changed by the user. The rates for the products are listed below:

SmartAmp = 1 kHz sMI6 = 8 kHz

FireBlox = 1 kHz

Specifies a custom message that displays at system startup and whenever the ID command is issued. It is displayed as the first line of the ID information. The default is no message and the maximum length is 80 characters.

Specifies the V+ trajectory rate that determines the rate at which V+ sends position set points to the servos. The rate specified applies to all the robots/axes controlled by the system. Therefore, it is not possible to increase the rate for one robot and use a slower rate for another robot connected to the same controller.

The parameter can have the values 62.5 Hz, 125 Hz,

250 Hz, or 500 Hz. If there are any 1394-based axes controlled by the system, do not use the 500 Hz setting.

CAUTION: Do not change this value unless directed to do so by Adept or the system integrator.

Change TASKS configuration

V+ is a multitasking system in which user tasks compete with system tasks for use of the processor. User and system tasks run on a prioritized basis in one or more of 16 one-millisecond time slices within each 16-millisecond major cycle.

Refer to Scheduling of Program Execution Tasks for details on task scheduling.

Instructions for Adept Utility Programs

67

CAUTION: Operation of the V+ system can be adversely affected by incorrect settings of task priorities. Change the default configuration only if you have a good understanding of V+ task scheduling.

The left-hand side of each statement specifies USER and a user task number, and PROCESSOR and a processor number. Processor numbers are determined by the processor board address switches, not by physical order in the backplane. See the Adept MV Controller User's Guide for more information.

NOTE: Standard V+ allows 7 user tasks. Systems with the V+ Extensions license are allowed 28 tasks.

The attribute for USER x PROCESSOR y is a sequence of 16 integers that specifies the user task priority in each of the 1-ms time slices. The possible values are:

-1

0

1 - 64

1 - 31

32 - 62

63

64

Do not run in this slice even if no other task is ready to run.

Do not run in this slice unless no other task from this slice is ready to run.

Run in this slice according to the specified priority. Higher priority tasks may lock out lower ones. Priorities are broken into the following ranges:

Normal user task priorities.

Used by V+ device drivers and system tasks.

Used by the trajectory generator. Do not use 63 unless you have very short task execution times. Use of this priority may cause jerks in robot trajectories.

Used by the servo. Do not use 64 unless you have very short task execution times. Use of this priority may cause jerks in robot trajectories.

The program asks you for a priority for each time slice.

The priorities of the system tasks cannot be changed.

Instructions for Adept Utility Programs

68

After the task priorities have been modified (and the V+ system has been rebooted), the PROFILER utility can be used to examine the effects of the changes.

Change VISION configuration

This section associates a vision system with a processor and sets the vision memory allocation and the virtual frame buffer size.

The left-hand side specifies PROCESSOR and a list of one or more processor numbers. The system looks through the list and associates the vision system with the first installed processor that is in the list. For example, if "PROCESSOR

3|2|1" is specified, the vision system executes on processor 3 if it is installed, processor 2 if processor 3 is not installed, or processor 1 if processors 3 and 2 are not installed.

The attributes for the vision PROCESSOR statement are: l

/ID specifies which vision system should be associated with the indicated processor (can have the value 1 or 2).

NOTE: If there is a statement with /ID 2, it must appear before the statement with /ID 1.

l

/FRAME_SIZE specifies the size of the virtual frame buffers that the physical frame store is divided into (see Vision Tools: Defining a Tool Area-of-

Interest (AOI) .

l

/TOTAL_KB specifies the total kilobytes of system memory that should be reserved for vision processes. It needs to include all the allocations listed below, 512 KB for the vision system, and memory for fonts, prototypes, and miscellaneous requirements (start with at least 200 KB for these items).

l

/AOI_KB specifies the memory allocation for area-of-interest definitions

(see the description of VDEF.AOI

.).

l

/BLOB_KB specifies the memory allocation for blobs (bounded regions).

l

/BOUND_KB specifies the memory allocation for performing boundary analysis (see boundary analysis ).

l

/LUT_KB specifies the memory allocation for vision look-up tables (see the description of VDEF.LUT

).

l

/OBJECT_KB specifies the memory allocation for object data structures.

l

/RUN_LENGTH_KB specifies the memory allocation for run-length encoding (see Prototype Recognition Algorithms for AdeptVision EVI ).

Instructions for Adept Utility Programs

69

l

/UNMATCHED_KB specifies the memory allocation for unmatched objects.

l

/VTRANS_KB specifies the memory allocation for vision transformations

(see the description of VDEF.TRANS

for details).

l

/NUM_FRAMES specifies the number of physical frame buffers (PFBs) for the AdeptVision AVI system. If NUM_FRAMES is not specified, the number of PFBs would default to 2. If the specified number of PFBs is below 2, it will be ignored and the vision system will still have 2 PFBs.

Also, if the specified number is more than 5, only 5 PFBs will be allocated by the vision system. This ensures that there is enough space in memory for ObjectFinder models, plans, and runtime use.

See Using DEVICE With Vision for additional details on setting vision memory allocation.

EXPORT configuration DATA

This menu item allows you to copy the system configuration data to a regular disk file or network file.

IMPORT configuration DATA

This operation reads V+ system configuration data from a disk file and writes the data to a

V+ system disk.

Related Utilities

CFG_COBR

DC_SETUP

SPEC

Instructions for Adept Utility Programs

70

CONFIG_C, Robots and Device Modules

File Name Program Name

File

Type

CONFIG_C.V2

a.config_c

B

Description

Controller configuration utility

CONFIG_C allows you to list or copy device modules to make them available for use. You will need one device module for each mechanism. Groups of one or more device modules are stored in disk files, and must be copied as a group.

Procedure for Copying Device Modules to a System File

shows a graphical interpretation of the CONFIG_C program. In this example, we assume the user wants three robots, two using device module A (for example, a viper robot module) and one using device module B (for example, a SCARA robot module). Using the replace or append operations, Module A is copied twice to the boot disk, and module B is copied once. The robot selection procedure allows the desired modules to be selected and any undesired ones to be ignored.

Procedure for Copying Device Modules to a System File

For each type of device module, Adept has developed a document describing the information that is required by the device module. This document is necessary for the configuration procedure, since it tells the user how to answer some questions posed by the SPEC program for that particular module. For more information on the setup of robot and device modules, see the Device Module documentation .

CAUTION: Before loading a device module to your Adept SmartMotion system, make sure that you have created a backup copy of the V+ system. For details, see DISKCOPY in the Instructions for Adept Utility Programs documentation.

Instructions for Adept Utility Programs

71

NOTE: This program modifies a system disk. Do NOT make these changes to the original system disk sent by Adept. Instead, make changes to a working copy of the system disk that you have transferred to the hard drive or to a duplicate floppy made using Adept’s

DISKCOPY Utility.

Robots and Device Modules Menu

NOTE: If you want to exit the program at any prompt, enter CTRL+Z (that is, hold down the CTRL key and press Z).

Choose this item when you are ready to exit the menu and return to the main menu.

LIST current CONFIGURATION of system file

Select this item to see a display of the device modules in your system file and how they are matched to robots.

Example System Disk Configuration

shows a typical display.

Instructions for Adept Utility Programs

72

Example System Disk Configuration

The module name, such as “Linear-Module Robot Control Module,” is extracted from the device module. When you first transfer a device module to your system file, it will have the default module name such as those shown. Later, you can change these names with the

“Edit start-up message” menu selection in the SPEC program. The module name for each selected device module is displayed whenever the system is booted up, as shown in

Multirobot Initialization Messages

.

Instructions for Adept Utility Programs

73

Multi-robot System Initialization Messages

The preceding module list indicates that there are various Adept robot modules on this particular system disk. The two modules currently allocated to robots are module #42 and module #32, which are assigned, respectively, to robot #1 and robot #2.

The module numbers, which are part of the “Robot (number): (model#)-(serial#)...(module#)” display in the initialization messages, as shown in the above figure, are listed in the documentation you receive with your device modules.

LIST device modules in a device-module FILE

Instructions for Adept Utility Programs

74

Device Modules in Device-module File

In order to determine whether a device module file contains a device module you want transferred to your system disk, you may want a list of the contents of that file. This menu selection allows you to see such a list, which looks like the module list shown above.

Instructions for Adept Utility Programs

75

NOTE: All the device-module files in the specified directory are listed on the screen, and any of those device-module files can be loaded into the V+ system. However, before they can be used, some device modules require that the Kinematic Modules software license be installed, and others require the Enhanced Kinematic Modules software license. For more information on a device module, refer to the Robot Device Modules documentation.

REPLACE device modules in system file

To delete any device modules from your system file, you must use this selection to delete ALL of them. It then allows you to replace the deleted ones with device modules taken from your device-module disk file(s). The following figure shows a typical terminal session in which the existing device modules are replaced with the contents of an X/Y/Z/Theta module file.

Instructions for Adept Utility Programs

76

Example Device Module REPLACE Procedure

APPEND device modules to system file

Select this menu item to add more device modules to your system file. If you already have a robot (such as an Adept robot) installed in your system, you should normally use the Append option instead of Replace.

Instructions for Adept Utility Programs

77

Example Append Device Modules Screen

SELECT device modules for robots

Choose this menu item to change which device module corresponds to each of the available robots. Any module in the system file can be assigned to any robot. If you have copied the external encoder device module to the system file, that module will be enabled automatically if you have the V+ Extensions software license installed.

If a mechanism already has an associated device module, you will be prompted to retain the selection (Y) or change it (N) as illustrated in the following figure.

Example Select Device Modules Screen

Controller NVRAM

Controller NVRAM

The description of these menu items follows:

Instructions for Adept Utility Programs

78

DISPLAY NVRAM contents

The controller model, serial number, network IP address, and list of installed options are stored in a special section of nonvolatile RAM (NVRAM). This option displays the contents of the NVRAM.

INITIALIZE the NVRAM

This option initializes the NVRAM on the AWC processor. This must be done only when a replacement NVRAM has been installed on the processor. (The program does not permit an initialized NVRAM to be modified.)

CAUTION: When initializing the NVRAM, you are asked to enter the serial number of the controller. The serial number cannot be changed after it is written to the NVRAM. If the wrong serial number is stored, none of the license passwords for the controller are accepted.

SET IP address in the NVRAM

The IP address of the Adept controller (the controller's address on the local area network) is stored in the NVRAM on the AWC board. The CONFIG_C utility is used to change the IP address.

To change the IP address:

1. Select "Set IP ADDRESS in the NVRAM" from the controller NVRAM menu.

The current IP address is displayed. If there is no address stored in the NVRAM, the default address for this AWC module is shown.

The default IP address is based on the serial number of the AWC board. Thus it is possible to use the default address for a network that consists of multiple Adept controllers and a PC (or other server). See the AdeptNet User's Guide for more information on the default IP address.

2. Enter the desired IP address (in the format displayed), or just press ENTER to retain the setting displayed.

3. After you have set the IP address, you must set the IP subnet mask. If you use the

AWC controller on a LAN and you do not know the proper IP subnet mask, ask your network system administrator. For further information see the AdeptWindows User's

Guide and the AdeptNet User's Guide .

4. After you have entered new values, the program asks whether you want them stored in NVRAM. Type to have the new values stored in the NVRAM. You must reboot the controller for the changes to take effect.

Instructions for Adept Utility Programs

79

SET "SWITCHES" in the NVRAM

In contrast to other Adept VME processor boards and the SIO board, the AWC allows you to define V+ configuration settings in software rather than using hardware DIP switches. Since the hardware DIP switches on the AWC are on the board and not the card edge/front panel, this facility allows you to change these settings without removing the AWC board. See the

Adept MV Controller User's Guide  for information about the hardware DIP switches.

NOTE: The Software switch settings are active only when all the hardware DIP switches on the AWC board are in the ON position, or all are in the OFF position. If this is not the case, V+ uses the user interface and autoboot settings selected by the hardware DIP switch settings on the AWC module.

To make changes to the Software switches, start the CONFIG_C utility, select the menu option "Controller NVRAM", and then select the Set "SWITCHES" in the NVRAM item from the submenu.

Switch Setting Display Example

displays the switch setting for the system.

Switch Setting Display Example

User Interface

AWC Board User Interfaces

describes the various AWC board user interfaces and corresponding NVRAM switch settings.

NOTE: The hardware DIP switches on the AWC board or SmartController can be used to override these settings of the software switches.

Instructions for Adept Utility Programs

80

Interface Type

AWC Board User Interfaces

NVRAM Switch Notes

ASCII-based

(Wyse terminal or emulation software)

1 If you do not have a VGB board in the system, you can select option 1 or option 2 to direct the V+ monitor to an

ASCII terminal.

2

VGB board

AdeptWindows PC

Serial Interface

1

3

If you have a VGB board in the system, you must select option 2 to direct the V+ monitor to an ASCII terminal.

If you have a VGB module in your controller, select option

1. A monitor and keyboard must be connected to the

VGB board. See the VGB board chapter in the Adept MV Controller User's Guide  for further information.

If you want to use the Adept-

Windows PC interface via a serial line, you must select it with either the hardware DIP switch or the software switches. To select a serial

AdeptWindows PC interface with the software switches, select option 3.

Instructions for Adept Utility Programs

81

Interface Type NVRAM Switch

AdeptWindows PC

Ethernet Interface

4

Notes

If you want to use the Adept-

Windows PC interface with an

Ethernet connection and a user-defined IP address, select option 4. See

SET IP address in the NVRAM

for details.1, 2, 3

5 If you want to use the Adept-

Windows PC interface with an

Ethernet connection and the

Adept default IP address, select option 5. See

SET IP address in the NVRAM

for details.1, 3

Notes:

1. The IP address of the Adept controller must be correctly set, and you must access that same address from the PC. See the Adept-

Windows User's Guide for a full description of the required setup on the PC.

2. The default IP address is always used if no user-defined address has been set, or if the controller NVRAM is found to have invalid contents.

3. To ensure safe and reliable operation of the Ethernet connection,

Adept strongly recommends that shielded Ethernet cables and hubs be used to connect the AWC board to an Ethernet network.

V+ Auto-Start

Use this setting to select whether the V+ system automatically loads a file named AUTO.V2 and execute a command program named AUTO during the process of loading and initializing V+. Select option 1 to disable this feature, or option 2 to enable the feature. See the V+ Operating System User's Guide for details on auto-start programs.

Boot Sequence

Use this option to select the sequence of drive letters that is accessed when locating an operating system to load into memory. If option 1 is selected, the

Instructions for Adept Utility Programs

82

boot procedure first looks to drive A for an operating system, then drive B, then drive C, and, finally, drive D. If option 2 is selected, the search sequence is changed to drive B, then A, then D, then C.

NOTE: The two search sequences are effectively the same if there is no SIO board installed in the Adept controller.

Auto-Boot

Normally, the controller is configured to automatically boot V+ when power to the controller is turned ON (that is, auto-boot is normally enabled). Occasionally, you may want to manually specify the disk device from which to load

V+. You can disable auto-boot for such purposes.

NOTE: Autoboot is automatically disabled if all of the hardware DIP switches on the (main) AWC board are set to a combination other than OFF. Thus, for example, setting all of the hardware switches to ON causes autoboot to be disabled, while all the other software switches are still used.

DDT Serial I/O on Auxiliary CPU

This option is used only for special diagnostic purposes and is normally disabled.

When DDT serial I/O is enabled, DDT start-up messages are output to the

TERM serial ports of any auxiliary processors in the controller, and DDT commands can be input via those ports.

CAUTION: The controller can appear to function normally if this setting is enabled. However, the start-up messages that are output to the TERM ports can have an unexpected effect on any equipment that is connected to those ports.

For further information about the functionality of the various switch settings see the Adept MV Controller User's Guide  .

Scan the DeviceNet

The AWC board and the SmartController incorporate DeviceNet scanner functionality. The

Scan the DeviceNet menu item allows you to configure the MAC ID for DeviceNet communications and select the baud rate that will be used to communicate with all devices on the network.

NOTE: The DeviceNet scan will fail if the .DEVICENET section of the system configuration file does not already contain a LOCAL statement (e.g. LOCAL = "/MACID 0 /BAUD 125K").

Instructions for Adept Utility Programs

83

You should verify that this statement exists before attempting to run the scanner utility.

For details, see

DeviceNet Statements in V+ Configuration Data .

After this configuration is completed, the program scans the DeviceNet to find the information recorded for each DeviceNet component. This information is used to map the digital inputs and outputs on the DeviceNet bus to V+ input signals.

NOTE: To complete the mapping, see

Change DEVICENET Configuration

.

Please follow the instructions below to use the Scan the DeviceNet function.

SCAN the DeviceNet for nodes

1. Load and execute the CONFIG_C program.

2. Select "Scan the DeviceNet" from the main menu, and then select "Scan the Device-

Net for nodes" from the submenu.

CAUTION:No other execution task should be started while this program is running.

3. The program asks you for the Local MAC ID (Media Access Control Identifier) to use for the Adept controller. It can be a value from 0 to 63. The default value is 0. You can enter -1 to cancel the scanning process.

NOTE: For details, see

DeviceNet Statements in V+ Configuration Data

.

To avoid a network conflict, select a MAC ID that is different from those for all the connected modes. If you have more than one Adept AWC controller connected to the

DeviceNet, you must specify a unique MAC ID in the system configuration data for each Adept controller.

4. Next, you are asked to select the baud rate to be used for DeviceNet communications.

The baud rate to use depends on the capabilities and configuration of the hardware installed on the DeviceNet and on the length of the trunk lines. All the devices on the network must be configured for the same baud rate. (See the DeviceNet standard and the documentation for your DeviceNet nodes for further information.)

After you enter a selection for the baud rate, the program stops the V+ DeviceNet scanner, resets and restarts it, and begins scanning the DeviceNet for nodes. You see information similar to that shown in

Example DeviceNet Scanning Results

, although the details depend on the hardware connected to your DeviceNet.

Instructions for Adept Utility Programs

84

NOTE: You may need to use CTRL+S to stop the output temporarily, so the information does not scroll off the screen before you can read it. Use CTRL+Q to resume the output.

Example DeviceNet Scanning Results

The example shown in

Example DeviceNet Scanning Results

displays the information acquired by the scanner from two WAGO I/O SYSTEM 750-306 blocks, connected as slaves to the DeviceNet. These I/O blocks can be populated with a variety of digital I/O bus modules.

DeviceNet Scanner Results

shows the information you must record for each Device-

Net component that you want to access with the Adept Controller.

Interpretation of

DeviceNet Scanning Results

describes the items listed in

DeviceNet Scanner Results

, as well as the other information that is reported for each component.

Instructions for Adept Utility Programs

85

MAC

ID

1

2

2

Input

Size

1

1

DeviceNet Scanner Results

Output

Size

Vendor

ID

Device

Type

40 12

2 40 12

Product

Code

306

306

Status

0

0

Device

Type

Product

Code

Product

Name

Major

Revision

Minor

Revision

Serial

Numbers

Interpretation of DeviceNet Scanning Results

Keyword Result Interpretation

MAC ID 1

Input

Size

Output

Size

2

1

Vendor ID 40

User has configured the first node with MAC ID 1 (for example with DIP switch settings).

During operation of the DeviceNet, the WAGO I/O block supplies this number of data bytes to the V+ system.

During operation of the DeviceNet, the WAGO I/O block expects this number of data bytes from the V+ system.

WAGO DeviceNet vendor identification number.

12

306

Device type number of the WAGO I/O System 750-306 block.

Identification that WAGO chose for the I/O System 750-

306 block.

The product name supplied by the WAGO I/O System. (This information is not used by the V+ system.)

A product version ID supplied by the WAGO I/O System.

(This information is not used by the V+ system.)

A product version ID supplied by the WAGO I/O System.

(This information is not used by the V+ system.)

Product ID information supplied by the WAGO I/O System.

(This information is not used by the V+ system.)

Instructions for Adept Utility Programs

86

Keyword Result

Status 0

Interpretation

Status information of the coupler.

5. Make a copy of the worksheet found at the end of this section (

DeviceNet Scanner

Results Worksheet

) and record your scanning results. You will need them to

Change

DEVICENET Configuration

that maps DeviceNet inputs and outputs to V+ signals.

Related Utilities

CFG_COBR

DC_SETUP

SPEC

Instructions for Adept Utility Programs

87

CONFIG_C, DeviceNet Statements in V+ Configuration Data

File Name Program Name

File

Type

Description

CONFIG_C.V2

a.config_c

B Controller configuration utility

After you have scanned the nodes on the DeviceNet bus, you can use the information from the scanning process to configure the components in V+. If you are still in the CONFIG_C program, you can simply go back to the main menu. If not, load and execute the CONFIG_C program.

NOTE: The examples presented here are based on the WAGO I/O System 750-306 as a slave on the DeviceNet bus. If you use other DeviceNet equipment, you must ask your

DeviceNet vendor for the correct process image of your components.

The following figure shows a typical configuration for the mapping of three digital inputs and one output on the DeviceNet bus to V+ input signals 1033, 1034, and 1035 and V+ output signal 33. The configuration is specific to the WAGO I/O System 750-306 block. The configuration statements are described in detail below.

Typical DeviceNet Configuration for Digital Input and Output

To modify the DeviceNet configuration data, do the following from the main menu in the

CONFIG_C program:

1. Select:

V+ System Configuration Data (#2)

2. From the displayed menu, select:

EDIT system CONFIGURATION (#2)

3. Enter the letter for the drive that contains your system data. For example, enter D for the Compact Flash in the AWC module.

Instructions for Adept Utility Programs

88

4. Select:

Change DEVICENET configuration (#6)

The program displays the current configuration statements if there are any. (The V+ system is supplied by Adept with no DeviceNet configuration statements.) If there are no statements, you must add the appropriate statements. Otherwise, you can modify the existing statements as required for changes to your DeviceNet setup.

LOCAL Statement

The LOCAL statement in the DeviceNet configuration specifies the MAC ID of the Adept controller on the DeviceNet bus. The default setting is 0. Set the MAC ID so that all the nodes on the bus have different MAC IDs.

This statement also defines the baud rate of the DeviceNet scanner. The baud rate depends on multiple factors, such as the length of the DeviceNet cable, the DeviceNet components on the bus, etc.

Syntax of the LOCAL statement:

LOCAL = "/MACID local_id

/BAUD baud_rate"

Parameters:

Parameter Description local_id MACID for the Adept controller on the bus

Range

0 - 63 baud_rate The baud rate to be used on the DeviceNet 125K, 250K, or 500K

MACID Statement

The MACID statement defines the parameters for a node on the bus. The DeviceNet scanner uses this information to communicate with each node. There must be a MACID statement for every node (for example, each I/O coupler) that the V+ system is to access.

Except for the /DISABLE_POWER parameter, which you can set as you wish, the values for all the parameters should be taken directly from the results of scanning the DeviceNet. Refer to:

Config_C > scan the DeviceNet

Syntax of the MACID statement:

MACID node_macid = "/INPUT in_bytes

/OUTPUT out_bytes

/VENDOR_ID vend_num

/DEVICE_TYPE dev_num

/PRODUCT_CODE prod_num

Instructions for Adept Utility Programs

89

/DISABLE_POWER pow_switch"

Parameters:

Parameter node_macid in_bytes out_bytes vend_num dev_num prod_num pow_switch

Description

MACID number of the node on the bus (0 to 63). 0 is the default; -1 will cancel.

NOTE: Adept recommends that you not use 63 as a MACID, because some manufacturers use this as a general broadcast node.

Number of data bytes of input from the node (0 to 256)

Number of data bytes of output to the node (0 to 256)

Vendor identification number, assigned by ODVA. Use the number that the scanning process found.

Device number of the node. Specifies the type of the node, for instance an I/O block.

Specified by the DeviceNet vendor.

Either YES or NO. The default value is NO. If set to YES, robot power cannot be enabled if the specified node is offline, and robot power is turned off if the node ever goes offline.

NOTE: The values of the /VENDOR_ID, /DEVICE_TYPE, and /PRODUCT_CODE parameters are not currently used by the V+ system.

MAPPING Statement

The MAPPING statement is used to map the digital inputs and outputs of a node to the appropriate V+ signals. This part of the DeviceNet setup requires that you define the way the connected nodes organize their I/O data in messages to and from V+. Refer to the documentation of your DeviceNet vendor for this information.

Syntax of the MAPPING statement:

MAPPING map_index = "/MACID node_macid

/BYTE byte_num

/BIT bit_num

/BIT_LENGTH bit_len

/SIGNAL sig_num"

Instructions for Adept Utility Programs

90

Parameters:

Parameter map_index node_macid byte_num bit_num bit_len

Description

This is an integer that is used as an index for mapping DeviceNet information to V+ (1 to 100).

MACID number of a selected node on the bus (0 to 63).

Start reading/writing data at the specified byte number (1 to 32; for V+ version 16.0 and later running on SmartController systems, using CON-

FIG_C version 16.4 edit B4 or later, the allowed values are 1 to 64).

Start reading/writing information at the specified bit number in the specified byte (1 to 256; for V+ version 16.0 and later running on Smart-

Controller systems, using CONFIG_C version 16.4 edit B4 or later, the allowed values are 1 to 512).

Number of bits to read/write (1 to 256; for V+ version 16.0 and later running on SmartController systems, using CONFIG_C version 16.4 edit B4 or later, the allowed values are 1 to 512).

sig_num Starting number of a range of V+ signals that receive/transmit status information from/to the selected node. The range is specified by the value of bit_len.

This number establishes whether the bits being mapped are for input or output. If the number is for a V+ input signal (1001 through 1512), the bits are used for inputs. If the number is for a V+ output signal (1 through 512), the bits are used for outputs.

1. First, select the DeviceNet component to which to write information with the parameter /MACID in the MAPPING statement.

The following example shows that V+ writes information to /MACID 1, which is the

WAGO I/O block that was previously configured with the MACID 1 statement.

2. The /BYTE parameter defines the start byte of the DeviceNet Output stream to the I/O block.

3. After defining the start byte of the data stream, the /BIT parameter specifies the first bit that is mapped to a V+ signal.

The /BIT_LENGTH parameter defines how many bits to map to V+ signal numbers. In the MAPPING 1 statement the parameter /BIT_LENGTH has the value 1. This means

Instructions for Adept Utility Programs

91

that exactly one bit is mapped to one signal, starting with the signal number given in the /SIGNAL parameter.

4. The /SIGNAL parameter specifies the starting number of a sequence of V+ signals.

The following example shows the mapping of V+ signals 33, 1033, 1034, and 1035 to digital

I/Os on the DeviceNet.

l

The MAPPING 1 statement maps one digital output on the WAGO I/O block to one digital I/O signal in V+.

l

In the MAPPING 2 statement the parameter /BIT_LENGTH has the value 3, which means that three signals, starting with signal 1033, are mapped.

Current statements in the DEVICENET section:

MAPPING 1 = "/MACID 1 /BYTE 2 /BIT 2 /BIT_LENGTH 1 /SI-

GNAL 33"

MAPPING 2 = "/MACID 1 /BYTE 2 /BIT 2 /BIT_LENGTH 3 /SI-

GNAL 1033"

Example of DeviceNet Bit Mapping in V+

The information about how many bytes V+ reads from the DeviceNet bus and how many it writes is specified in the MACID statement. These values are typically found while scanning the DeviceNet bus with the CONFIG_C program.

Related Utilities

CFG_COBR

DISKCOPY

SPEC

MAC

ID

Input

Size

DeviceNet Scanner Results Worksheet

Output

Size

Vendor

ID

Device

Type

Product

Code

Status

Instructions for Adept Utility Programs

92

MAC

ID

Input

Size

Output

Size

Vendor

ID

Device

Type

Product

Code

Status

Instructions for Adept Utility Programs

93

DC_SETUP

DC_SETUP

The DC_SETUP utility has different menu options depending on the V+ version installed.

File Name Program Name

File

Type

Description

DC_SETUP.V2

a.dc_setup

B Distributed-control configuration utility for Adept

1394-based robot systems

Overview

The DC_SETUP utility provides an interface for setup and configuration of a 1394-based robot system. This utility allows you to: l

Perform a quick setup of the SmartModules, Python Modules, or MotionBlox system l

Set up calibration data for 1394-based robot systems l

Perform hardware diagnostics l

Enable the adaptive feedforward control option on individual linear modules l

Store all system specifications to the system disk l

Access the SPEC utility l

Configure robot gadgets and options l

Configure digital input/output (DIO)

Requirements

To configure modules using DC_SETUP: l

You must be connected to a 1394-based robot system.

l

To run quick setup (for linear modules), your system must be configured with the

device modules "LM - [32] Linear-Module Robot Module" or "ELM - [33] Enhanced Lin-

ear-Module Robot Module" using the "Robots and Device Modules" option of the

CON-

FIG_C

utility. See the SmartMotion Developer's Guide for more information on the setup of robot and device modules.

Usage Considerations

The DC_SETUP utility can be used in place of the SPEC utility to configure a 1394-based robot system. The DC_SETUP utility limits the choices that the user has, unlike SPEC, which offers the user a much more extensive menu of configuration choices.

Instructions for Adept Utility Programs

94

DC_SETUP

Note that, for a system that contains both VME axes and SmartModules, the menus for both the "AdeptModules quick setup" and the "SmartModules/hybrid quick setup" will display. Currently, the Adept (VME-based) Z-Theta module setup is NOT supported due to a dual-encoder mapping requirement for the Theta axis. Therefore, to configure a pure AdeptModules (VMEbased) robot, select "AdeptModules quick setup".

NOTE: DC_SETUP does not support SmartAmp/MotionBlox mixed systems in a single robot configuration.

For the quick setup option, a configuration page is created right after the calibration setup that allows the user to enable/disable adaptive feedforward control. If the calibration setup succeeds, the configuration page is displayed. Otherwise, it is skipped. Note that, by default, the servo's internal setting for adaptive control is OFF. Therefore, the user must explicitly turn it ON, if desired. When the new setting is saved to the boot disk, the new setting will take effect when the system is restarted.

For quick setup, the SmartAmp system configuration will prompt the user to enable/disable the Adaptive Feed Forward (AFF) control. This option is omitted for MotionBlox-10 systems, which automatically enables the AFF control. Use the tuning parameters menu in SPEC to modify this option.

Menu Structure

To access the DC_SETUP main menu, follow the

Loading and Executing Adept Utility Programs

procedure. Once DC_SETUP is initialized, the main menu is displayed.

Instructions for Adept Utility Programs

95

DC_SETUP

DC_SETUP Utility Menu

A brief description of each menu item is provided in the table below. Detailed descriptions of each menu item are provided in the sections following the table.

Some menu items will vary depending on how DC_SETUP was invoked, and what robots are connected to the Adept controller.

Menu Description

Exit to system monitor

Back to Spec

Exits to the V+ dot prompt.

Returns to the

SPEC utility

.

Configure Modules/Servo

Kits/Hybrid

Opens the Configure Modules / MotionBlox menu, which is used to configure a SmartModule, Python Module, or MotionBlox system.

Instructions for Adept Utility Programs

96

DC_SETUP

Menu Description

Configure DIO input/output blocks

Configure

Adept robot/axis gadgets

Opens the I/O block configuration page, which is used to configure the digital I/O for your system.

Opens the Configure Adept Robot/Axis Gadgets page, which is used to configure the Adept SmartServo network and its associated devices (e.g., Adept Robots, SmartAmps, MotionBlox, sMI6, or FireBlox).

Display Smart-

Servo network information

Displays the current SmartServo network information (e.g., nodes, device type, serial numbers, etc.).

Save ALL specifications to system disk

Opens the Save Specification Information page, which is used to save the robot specification information for all robots in the system.

Change robot number

Execute SPEC

Changes to another robot in the system. This option will not be displayed for single-robot systems.

Executes the SPEC utility.

Configure Modules/Servo Kits/Hybrid

The Configure Modules/Servo Kits/Hybrid menu selection opens a menu, shown below, which is used to configure a SmartModule, Python Module, or MotionBlox system.

Instructions for Adept Utility Programs

97

DC_SETUP

Configure Modules/Servo Kits/Hybrid Menu

Modules quick setup

The "Modules quick setup" is used to initialize the amplifiers on the linear modules system. The "Modules quick setup" configures the amplifiers by saving data to the I 2 C chip, either onboard or on the T-bracket. This data is then read by V+ during controller startup to determine which IEEE-1394 network nodes belong to each robot.

The "Modules quick setup" needs to be performed when: l

You are installing a new SmartModules or Python Modules system l

You have just replaced an amplifier on a SmartModules or Python Modules system l

You have just changed the configuration of the system

The configuration process consists of the following steps:

Instructions for Adept Utility Programs

98

DC_SETUP

1. Select and load the "General Configuration Data".

This data contains parameters related to overall robot configuration, such as power sequencing, Cartesian motion generation, and the number of joints.

2. Perform axis mapping by selecting the number of joints and the axis that corresponds to each joint.

This will establish the relationship between the IEEE-1394 network node/gadget number and the robot/joint number.

3. Select and load the "Axis Configuration Data" (one set for each axis).

This data contains information that is specific to each axis of the robot, such as tuning parameters, joint motion generation, encoder configuration, and calibration constants. The data is indexed by the last five digits of the SmartModule part number.

Python modules have the part number stored in the Robot Signature

Card (RSC) in each motor. DC_SETUP automatically reads it and configures each specific joint based on this information.

4. After the robot and axes are configured, save the entire configuration to the system boot disk. When the controller is restarted, the configuration will be installed.

NOTE: After adding or removing hardware from the 1394 network, you must reboot the controller before proceeding.

To use the Modules quick setup utility:

1. Select the "Modules quick setup" option from the Configure Modules/MotionBlox menu and press ENTER.

NOTE: If you do not see this option on the menu, there is a problem with the system that is preventing DC_SETUP from sensing the amplifiers. You should check all wiring, including power connections and

IEEE-1394 cable connections. In addition, you should try rebooting the entire system to make sure that all the parameters are properly initialized.

2. Follow the on-screen instructions.

Modules calibration setup

The Modules calibration setup performs the one-time configuration for all the linear modules (SmartModules, Python Modules, and MotionBlox-based

Instructions for Adept Utility Programs

99

DC_SETUP mechanisms) that use absolute encoders. The Gen-II Z-Theta unit can also be configured using this option. The calibration procedure used depends on the type of axis being calibrated: l

Linear modules that use absolute encoders l

Gen-II Z-Theta module that uses hardstop calibration for the Z-axis, and dual-encoder vernier calibration for the Theta axis for SmartAmps only (MotionBlox does not support Z-theta modules) l

(for V+ version 16.4 and later) Theta modules and Python linear modules with MotionBlox-40L

During the setup procedure, you will be prompted to select a joint to calibrate.

For the linear modules, the joint will move toward a hardstop and set the joint

0 location accordingly. For the Z-Theta module, you will be instructed to install a calibration fixture that locks the joint in a known location.

To use the Modules calibration setup utility:

1. Select the "Modules calibration setup" option from the Configure Modules/MotionBlox menu and press ENTER.

2. Follow the on-screen instructions.

Enable/disable adaptive feedforward control

The "Enable/disable adaptive feedforward control" option, allows you to enable or disable adaptive feedforward control for your mechanism. This option is only available for SmartModules. Python modules with MB-10 automatically enable the adaptive feedforward option by default.

The adaptive feedforward option normally reduces (optimizes) cycle time for repetitive motions or variable payload applications. There are situations that limit adaptive feedforward performance. For example, when commanded trajectories are very short or random in nature, adaptive feed forward might take longer to find the correct gain values.

To use the "Enable/disable adaptive feedforward control" option:

1. Select "Enable/disable adaptive feedforward control" from the main menu. A screen similar to the following is displayed.

Instructions for Adept Utility Programs

100

DC_SETUP

Enable/disable Adaptive Feedforward Control

2. Read and follow the on-screen instructions.

NOTE: After changing the settings, the system must be restarted to effect the change.

Perform hardware diagnostics

The "Perform hardware diagnostics" option provides information on each node in the linear modules system. See

the SPEC utility

for more details on this option.

Save ALL specifications to system disk

The "Save ALL specifications to system disk" option saves the robot specification information to the system boot disk for all robots in the system. The information that is currently contained in memory is written to the system disk.

See

the SPEC utility

for more details on this option.

Configure DIO Input/Output Blocks

The "Configure DIO input/output blocks" option opens the I/O block configuration page, which is used to configure the digital I/O for your system.

Instructions for Adept Utility Programs

101

DC_SETUP

NOTE: This menu option does not support the Remote I/O (RIO) device. Therefore, verify that you are connected to compatible hardware. The MB-10 only supports IOBlox.

To use this option:

1. Select "Configure DIO input/output blocks" from the main menu.

2. Use the space bar to select the device with digital I/O (DIO) you wish to configure. On multi-axis Python systems, when the LED on the MB-10 amp you want to configure flashes green/red, press ENTER to select it.

NOTE: Adept Cobras with the UL option have an amber light, rather than the green/red LED.

A screen similar to the following is displayed.

Digital I/O Configuration

3. Follow the on-screen prompts to map the selected DIO.

For more details on configuring DIO input/output blocks, see Section 4.3 of the Adept IO Blox

User's Guide .

Configure Adept Robot/Axis Gadgets

The "Configure Adept robot/axis gadgets" option is used to configure the Adept SmartServo network and its associated devices (e.g., Adept Robots, SmartAmps, MotionBlox, sMI6, or

FireBlox). When the option is selected, the following screen is displayed.

Instructions for Adept Utility Programs

102

DC_SETUP

Configure Adept Robot/Axis Gadgets

To use this option:

1. Read the overview of the configuration process

2. Press ENTER to continue and follow the on-screen instructions.

Instructions for Adept Utility Programs

103

DC_SETUP

Display SmartServo Network Information

The "Display SmartServo network information" option allows you to view the current information (e.g., nodes, device type, serial numbers, etc.) for the SmartServo network. When this option is selected, a page similar to the following is displayed:

Display SmartServo Network

After you have finished viewing the information, press ENTER to return to the DC_SETUP utility menu.

Change Robot Number

The "Change robot number" option allows you to access other "robots" (mechanisms) in the system in a multi-robot system. See

the SPEC utility

for more details on this option.

Execute SPEC and Back to SPEC

The "Execute SPEC" option and "Back to SPEC" option allow you to access the SPEC utility directly from the DC_SETUP utility menu. This is useful if there is further "customization" that you would like to do after you have finished with the DC_SETUP utility.

Select this option from the DC_SETUP utility menu and then press ENTER. The SPEC utility menu is displayed (see

the SPEC utility

for more details).

Instructions for Adept Utility Programs

104

Related Utilities

CONFIG_C

SPEC

DC_SETUP

Instructions for Adept Utility Programs

105

DISKCOPY

DISKCOPY

File Name

DISKCOPY.V2

Program Name a.diskcopy

B

File

Type

Description

Disk copy utility

Overview l

Copy an entire diskette to another diskette.

l

Copy a V+ system from one disk to another.

l

Copy individual or multiple files (using wildcards) from one disk to another or from one subdirectory to another on the same disk.

l

Delete individual or multiple files (using wildcards) from a disk.

Certain file-copy operations cannot be performed with the V+ FCOPY monitor command or with the READ and WRITE program instructions. The disk-copy utility program can be used to perform those operations. For example, you can use this program to copy from one diskette to another using a single diskette drive.

Protected disk files cannot be copied with the FCOPY command. This program copies protected files to a hard disk.

Operations on multiple files cannot be performed interactively with the FCOPY or FDELETE commands. This utility permits interactive operations to copy and delete files.

Requirements

Before you can run DISKCOPY: l

The V+ system must be loaded from the system disk.

l

If you are using a robot system, the robot must be calibrated and COMP mode must be selected on the manual control pendant, or the DRY.RUN system switch must be enabled, or the program can be executed as a program task other than #0.

Usage Considerations

The DISKCOPY program defines several real-valued variables with the prefix dc. that must not be modified by you or by other programs. (All these variables are deleted from memory when the program exits normally, or when a DELETE command is used to delete the program from memory, as described earlier.)

The entire DISKCOPY program may be loaded into memory by the CONFIG_C program. Thus, if the CONFIG_C utility is in memory, many *Program already exists* error messages may

Instructions for Adept Utility Programs

106

DISKCOPY be displayed when the DISKCOPY program is loaded from disk. These messages can be ignored.

When you try to copy a protected file (i.e., one with the 'P' attribute shown in its directory entry) from a diskette to the Compact Flash or hard drive, the program may indicate that the output disk must first be secured. If you indicate that it is okay for the program to do that, the disk is secured and the program is copied. A secured disk is totally compatible with the V+ system.

Menu Structure

Menu

EXIT to system monitor

Description

Exits the program and return to the V+ monitor.

COPY V+

SYSTEM to another disk

COPY DISK image to another disk

COPY multiple FILES

Copies a V+ system from one disk to another. This can be from a distribution diskette to the Compact Flash or hard disk, or from the Compact

Flash or hard disk to a diskette.

Copies an entire diskette to another disk not a Compact Flash or hard disk.

Copies multiple files from one disk to another (or from one subdirectory to another on the same or different disks.

DELETE multiple FILES

Deletes multiple files from one disk to another (or from one subdirectory to another on the same or different disks.

NOTE: To exit the program at any prompt, press CTRL+Z.

COPY V+ SYSTEM to another disk

This menu selection initiates copying a V+ system from one disk to another. This can be used to copy a V+ system from a distribution diskette to the Compact Flash or hard disk, or from the Compact Flash or hard disk to a diskette. (If you want to copy a V+ system from one diskette to another, you must use menu item #2.)

All of the following items are copied when a V+ system is copied: l

V+ system file l

V+ configuration file

Instructions for Adept Utility Programs

107

DISKCOPY l

V+ boot file l

\SYSTEM\ subdirectory containing device-module files l

\CALIB\ subdirectory containing robot calibration program files

COPY DISK image to another disk

This option copies an entire diskette to another disk.

NOTE: This selection does not copy a disk image from a diskette to the Compact Flash or hard disk, since the result is that the Compact Flash or hard disk must have the same storage capacity as a floppy disk. The selection "Copy multiple files" copies files from a diskette to the Compact Flash or hard disk (see below). You also cannot copy a disk image from a double-density floppy to a high-density floppy disk or vice versa.

If you specify a copy operation that uses the same diskette drive for both input and output, the contents of the input diskette are stored in system memory during the copy operation.

Then, you are asked to exchange the input and output diskettes. The buffered disk contents are then written to the output disk. Keep the following in mind when performing a one-drive copy operation: l

When you are asked to change the diskette in the drive, make sure you insert the correct diskette.

NOTE: The program does not perform any check to verify that the right diskette is present.

l

If there is not enough memory available to hold the entire contents of the input disk, you must exchange the input and output diskettes more than once during the copy operation.

l

If other program tasks, which can be consuming memory, are active, you are asked whether it is okay for the copy operation to continue.

l

After the copy is complete, you have the option of creating another copy.

COPY multiple FILES

This option copies files from one disk to another. This function allows you to: l

Copy multiple files from one disk to another (or from one subdirectory to another on the same or different disks)

NOTE: You can perform the copy operations with individual FCOPY monitor commands. However, with this program function it may be possible to specify all the files to be copied with a single file specification containing wildcard characters. The

Instructions for Adept Utility Programs

108

DISKCOPY

FCOPY monitor command does not accept wildcard characters in its file specifications.

l

Copy protected files from a diskette to the Compact Flash or hard disk. The FCOPY monitor command cannot be used to copy protected files.

This menu selection copies protected and read-only files onto the Compact Flash or hard disk

(and from one subdirectory to another on that disk), provided that the Compact Flash or hard disk is properly secured. If the output disk is not secured, the program gives you the option of securing the disk.

NOTE: If you specify that a disk should be secured for exclusive use by the current system, then it is not possible to use that disk with any other system until it is reformatted.

(Formatting erases everything stored on the disk.)

1. The program first asks for the input and output disk devices to be accessed. In addition to local disk units (for example, 'A', 'C', or 'D'), the responses can include specifications for the type of devices to be accessed (for example, "NFS>" for an AdeptNFS device).

2. Next, you are asked:

Do you want to verify the copy operations (Y/N)?

If the output is going to a diskette, the copy operation can be noticeably slower if you request verification. For other disk devices, requesting verification has very little effect on the speed of the copy operation.

3. Next, you are asked to enter a file specification string. (To exit this menu selection and return to the main menu, press ENTER without a file specification).

Wildcard characters (asterisks, '*') can be used in the file specification. A wildcard character within a file name or extension indicates that any single character should be accepted in that position. A wildcard character at the right end of a file name or extension indicates that any trailing characters are acceptable. For example, the file specification '*.*' references all the files on the input disk.

An optional subdirectory specification can be included in the (input) file specification. If no subdirectory specification is included, the file(s) are copied from the subdirectory shown before the prompt. If a subdirectory is specified, it supersedes or is combined with the default shown. (For an explanation of how subdirectories are combined, see

Using Files or the description of the DEFAULT ).

4. The following prompt is displayed next:

Enter output subdirectory (default is \xxx\):

If a subdirectory specification is entered, it supersedes or is combined with the default shown, and all of the selected files are copied to the resulting subdirectory on the out-

Instructions for Adept Utility Programs

109

DISKCOPY put disk. If ENTER is pressed without a subdirectory specification, all the files copied are directed to the default subdirectory on the output disk.

NOTE: If you specified that the copy operation is to use the same diskette drive for both input and output, you are asked at this point to confirm that you want to continue.

When the input file specification omits either the name or the extension, or includes a wildcard character (and the copy operation is between two disk drives in the Adept controller) the program displays the prompt

Do you want existing files automatically superseded (Y/N)?

If you enter Y, the program deletes (without warning) any file on the output disk with the same name as a file to be copied. If you enter N and the program encounters a file on the input disk that has the same name as an existing file on the output disk, the program displays a warning and asks if you want to supersede the file on the output disk.

The name of each file on the input disk that matches the file specification is displayed, and you are asked whether the file should be copied to the output disk. One of the following responses must be entered:

G

Response

Y Yes, copy the file

N (or press ENTER ) No, do not copy the file

Meaning

Go, copy this file and all subsequent files without asking again

Q Quit without copying this file

If you specify a copy operation between two disk devices, or between two subdirectories on one device, the copy operation is very straightforward. The program simply copies from the input to the output.

If you specify a copy operation between floppy disks in the Adept controller, the procedure for the copy operation is slightly different. In this case, the contents of the input file are stored in system memory, you are asked to remove the input diskette and insert the output diskette, and the buffered file contents are written to the output disk. Because of this mode of operation, there are some issues of which to be aware when performing a one-drive copy operation: l

When you are asked to change the diskette in the drive, be careful to make sure you insert the correct diskette.

Instructions for Adept Utility Programs

110

DISKCOPY

NOTE: The program does not perform any check to verify that the right diskette is present.

l

If there is not enough memory available to hold the entire contents of the input file, you must exchange the input and output diskettes more than once during the copy operation.

l

If other program tasks, which can be consuming memory, are active you are asked whether it is okay for the copy operation to continue.

l

After the output disk is written, you have the option of writing another copy of the output.

DELETE multiple FILES

You are asked to specify a disk unit to access. You can specify a local disk unit (for example, 'A' or 'D') or a remote disk device and unit (for example, "NFS>XC:" for the mount named XC on the AdeptNFS device).

Next, you are asked to enter a file specification string, which can include a directory path.

(You can press ENTER without a file specification to exit this menu selection and return to the main menu.)

The file specification string can contain the '*' wildcard character as part of the file name or file extension. A wildcard character within a file name or extension indicates that any single character should be accepted in that position. A wildcard character at the right end of a file name or extension indicates that any trailing characters are acceptable. For example, the file specification "test*" causes all the files on the disk with names beginning with "test" (with any extension, since ".*" is assumed when no extension is specified) to be considered for deletion.

An optional subdirectory specification can be included in the file specification. If no subdirectory specification is included, files contained in the default subdirectory on the specified input disk are referenced.

The program displays the name of each file that matches the given file specification, and asks whether the file should be deleted. One of the following responses must be entered:

G

Q

Response

Y Yes, delete the file

N (or press ENTER ) No, do not delete the file

Meaning

Go, delete this file and all subsequent files without asking again

Quit without deleting this file

Instructions for Adept Utility Programs

111

DUTY_CYC

DUTY_CYC

File Name

DUTY_CYC.V2

Program Name a.duty_cyc

B

File

Type

Description

Monitors the robot duty-cycle values

Overview

Monitor the duty-cycle values of an AdeptThree-XL robot.

Report a set of percentage data against the working duty-cycle limits derived for the working ambient temperature.

The Adept duty-cycle program (a.duty_cyc) monitors the duty-cycle values and reports back a set of percentage data against the working duty-cycle limits derived for the working ambient temperature. These include: l

How hard the robot is running l

Online percentage values (percentage values greater than 90 percent for any of the joints indicate a potential danger of overheating the robot)

Requirements

The following items are needed to run the duty_cyc( ) routine: l

Adept system controller l

AdeptThree-XL robot

Usage Considerations

NOTE: This program must be run after the robot is calibrated and appropriate application programs have been initiated.

The following prompt is displayed if you have previously run a.duty_cyc:

Type:

Y

(Typing Y reinitializes the program; typing N continues the execution of the program.)

Instructions for Adept Utility Programs

112

The following message appears:

DUTY_CYC

Type (for example):

95F

A message appears, indicating which, if any, joints are inactive, for example:

NOTE: You should allow AT LEAST 18 minutes of robot run time to let the duty-cycle filter reach a steady state.

The duty-cycle profiler's internal optimization process reaches a steady state when the duty-cycle percentage difference of J1 and J2 is within 2%.

To stop the program, type:

abort 1

Related Utilities

PROFILER

Instructions for Adept Utility Programs

113

EDITICON

EDITICON

File Name

EDITICON.V2

Program Name a.editicon

B

File

Type

Description

Editing utility for graphic icons

Overview

Create graphic icons and store them in disk files for retrieval later.

Read icon definitions from disk and modify them.

The Adept graphics system provides the ability to store predefined graphic symbols in memory and to have them displayed on request. The Icon Editing Utility provides the means for defining the graphic symbols you want to use with your application programs.

After icons have been defined, they can be stored in disk files for retrieval later by application programs. The subroutine load.icon available in the Utility directory on the V+ CD-ROM in the file LOADICON.V2 can be called to load icons from a disk file into graphics memory. Then the

GICON program instruction can be used to display the icons.

Requirements

The items listed below are needed to use the EDITICON program.

l

Adept graphics-based system controller l

PC-style keyboard and high-resolution graphics monitor (system option) or

AdeptWindows PC software executing on a PC, with a serial-line or Ethernet connection to the Adept controller

Before you can run EDITICON: l

The V+ system must be loaded from the system disk.

l

If you are using a robot system, the robot must be calibrated and COMP mode must be selected on the manual control pendant.

or

The DRY.RUN system switch must be enabled.

or

The program can be executed as a program task other than #0.

Instructions for Adept Utility Programs

114

EDITICON

Usage Consideration

The Icon Editing Utility creates a new window on the monitor screen.

The program defines several real-valued and string variables with the prefixes ic. and wn. that must not be modified by you or by other programs. All of these variables are deleted from memory when a DELETE command is used to delete the program from memory, as described earlier.

The following paragraphs describe the window and how to interact with the program.

Program Window

At the top of the program window there is a 16-color palette that displays all of the colors available for icon images. While using the icon editor you select colors from this palette by clicking on a color with one of the mouse buttons. The first color in the palette (color #0) has a special interpretation for icons. Each icon pixel with that color is transparent - that is, the background shows through those pixels. The icon editor uses a checkerboard pattern (of black and background) to represent color #0 in the program's main window.

To the right of the 16-color palette there are three colored rectangles. These are the drawing

colors, since they are the colors you use to draw the icon image. The letters L (= left), M (= middle), and R (= right) are displayed below the drawing colors to remind you that they correspond to the respective mouse buttons. Each of the drawing colors can be changed by clicking with the corresponding mouse button on a color in the 16-color palette.

NOTE: The letter L is used only with a third-party three-button mouse. With a two-button mouse, the left button accesses the M color.

When an icon is selected for editing, you are presented with two views of it. The actual icon is shown full size in a small window beside the program's main window. An enlarged view of the icon is shown in an editing grid in the program's main window. A square in the editing grid corresponds to one pixel in the icon. In general, you make changes to the icon in the editing grid, and your changes are shown in the full-size image.

If the icon is larger than the size of the editing grid, only a portion of the icon can be seen in the editing grid. Select a different portion of the icon by:

1. Moving the mouse pointer to the full-size icon,

2. Pressing and holding the left mouse button, and

3. Dragging the edit frame around the image.

When you release the button, the newly selected portion of the icon is displayed in the editing grid.

If an icon array is displayed in the full-size display, there are two ways to select a different element to modify. Use the Select menu in the main window, or select in the full-size display by

Instructions for Adept Utility Programs

115

EDITICON

1. Moving the mouse pointer to the current icon in the full-size display,

2. Pressing and holding the left mouse button,

3. Dragging to the desired element, and

4. Releasing the mouse button.

The standard size for the editing grid is 20 pixels wide and 20 pixels high (or the size of the icon if it is smaller).

You can specify a different size for the editing grid when you first execute the program (see above). If you want to change the size of the grid when the program is in use, exit the program, start it again, and specify the new grid size. (Any previous icon data is displayed in the new grid.)

While using the icon editor, you often see pop-up windows displayed in the working window.

These pop-up windows contain messages or questions. Pop-up windows with buttons are closed after a button is pressed. Pop-up windows without buttons are closed after the next mouse click.

When a pop-up window requests typed input, keep in mind that the pop-up window must be selected (that is, its top bar must be blue) and that the input is completed when you press

ENTER. If a default entry is displayed in the pop-up window, you can type backspace or

CTRL+U to modify or erase the default entry.

Exiting the Program

To exit the program, choose "Exit" from the File menu. If you have icons defined, you are asked if you are sure you want to exit. Choose "Yes" to exit, or "No" to continue with the program.

NOTE: Icons are retained in (program) memory even when you exit the program. Thus, you can restart the program later and continue your editing session.

Editing an Icon

After the EDITICON program is executed, select the icon by loading an existing icon data file

(see Load file in the

File Menu

section) or by creating a new icon (see "Create" under

Icon

Menu

).

When the editing grid is displayed, use the mouse buttons to color squares in the grid and, thus, pixels in the icon. Click on a square with one of the mouse buttons to change that square to the drawing color assigned to that button. Click on a square and drag the mouse pointer to color all the squares crossed while the button remains pressed. If you accidentally apply the wrong color to a square, simply select the desired color from the 16-color palette and recolor the square.

Instructions for Adept Utility Programs

116

EDITICON

In addition to directly coloring individual squares in the editing grid, several editing operations modify the icon. These operations are accessed from the Edit menu, as described below.

Program Menus

There are four different pull-down menus located at the top of the program's window. Each of these menus is described in detail below.

Menu Purpose

File

Icon

Read and write data files; clear all icons; exit

Create and delete icons; change icon size and name

Edit

Modify the current icon

Select

Select a new icon to edit

At times some menu items cannot be selected. For example, when there is no icon displayed, none of the items in the Edit menu can be selected. Menu items are displayed dimmed when they cannot be selected.

File Menu

The File menu is used to read and write disk files, and for overall administration of the program. The menu items have the functions listed below.

When the program asks for a file specification, the response can have the form: physical_device>unit:directory_path\name.extension where everything except the name element is optional. The defaults for the first three items are taken from the current DEFAULT setting. The default file extension is .DAT.

NOTE: You can use the V+ FLIST command to display information in the icon data file. The information includes the creation date of the file and a list of the icons defined in the file.

Load file

Append file

All the icons defined in a requested disk file are loaded into memory for possible editing. If there are any icons already in memory, the program asks whether it is okay to delete them. If you choose "No", the load operation is canceled.

All the icons in a requested disk file are loaded into mem-

Instructions for Adept Utility Programs

117

EDITICON

Save to file

Clear all

Exit ory for possible editing. Unlike "Load file", however, existing icons are not replaced.

All the icons in memory are written to the specified disk file.

After receiving confirmation, all the icons in memory are deleted.

Execution of the program is terminated. If there are icons in memory, they are retained until the program is deleted from memory.

NOTE: The icons can occupy a large amount of system program memory.

Thus, if you do not need to retain them, select "Clear all" before exiting the program.

Icon Menu

The Icon menu is used to create and delete icons, and to change their sizes or names. Selections in this menu allow recent changes to the icon to be cancelled or to be preserved as a basis for further changes.

Create A new icon is created. The program asks for the name, size, and offset for the new icon. If an icon array is being created, you are also asked for the arrangement of the elements to be used in the full-size display (see "Chg array" below).

Icon names follow the rules for V+ names, and can include an array index. The width and height of an icon can range

Change size from 5 to 255 pixels and do not need to be equal. The positional (xy) offsets of an icon can range from 0 to 255 pixels.

Changes the size of the current icon to the new size entered by you. The right and bottom edges are moved in response to the change.

Change name Changes the name of the icon to the new name entered.

Copy Copies the image of another icon to the current icon. If the

Delete

Undo edits

Keep edits

Show data

Chg array source icon is larger than the current icon, the copy is taken from the upper left corner.

If confirmed by you, the current icon is deleted from memory.

Recent editing changes to the icon are discarded, and the previous saved image is restored. (The image is saved when the icon is created or selected, when the size is changed, and when "Keep edits" is requested.)

Saves a copy of the current icon image for possible later use to undo subsequent changes.

Displays data for the current icon.

If the current icon is an element of an icon array, this item

Instructions for Adept Utility Programs

118

EDITICON can be used to specify a new arrangement of the icon elements in the full-size display window. The choices are:

-1 Have the program choose the arrangement that results in roughly equal numbers of rows and columns.

0 Display only the current array element.

>0 Display the array with the specified number of columns.

Background Allows selection of a new background color so you can see how the icon looks with the background on which it will be displayed.

To specify the new background color, simply click the desired color in the 16-color palette with any of the mouse buttons. (You can click outside the color palette to cancel the "Background" selection.)

To select a new icon after changing the background, see

Select Menu .

Edit Menu

The Edit menu modifies the icon currently being edited. All the changes performed by this menu can be canceled by choosing "Undo edits" in the Icon menu (see above). Before performing an editing operation, you may want to choose "Keep edits" in the Icon menu (see above) to save the current icon image.

Change color All the pixels in the icon with a specified color are changed to a new color.

Before selecting this item, make sure one of the drawing colors is the old color that you want to replace in the icon.

Flood

After choosing "Change color", assign a new drawing color to the mouse button for the old color. All the pixels in the icon with the previous drawing color for that button are then changed to the new color. (You can cancel the change operation by clicking outside the 16-color palette.)

A region of the icon is filled with a new color. You specify the region and the new color by clicking on a square in the editing grid with one of the mouse buttons - the square selected indicates the region to flood, and the button used indicates which drawing color to use. (You can cancel the flood operation by clicking outside the editing grid.)

The region filled consists of all the connected squares with

Instructions for Adept Utility Programs

119

EDITICON the same color as the first square. Any square with a different color is considered to be on the boundary of the region. Note that region squares can be connected vertically and horizontally but not diagonally. Thus, the flooding does not leak through a diagonal boundary that is one square thick.

Erase

Rotate 90°

Shift right,

Shift left,

Shift up, Shift down

If the icon is larger than the editing grid, flooding does not extend beyond the boundaries of the grid.

The entire icon image is cleared to the drawing color assigned to the mouse button pressed most recently.

The icon image is rotated 90 degrees clockwise.

Each of these selections shifts the icon image one pixel in the indicated direction. (The first row or column shifted is lost; the last one shifted is duplicated.)

Right<>left The icon image is flipped about a vertical line through its center.

Top<>bottom The icon image is flipped about a horizontal line through its center.

Select Menu

The Select menu is used to select a different icon to edit. The menu displays the names of all the icons currently defined in the program's memory, as well as the predefined items listed below.

If you select an icon by name, it is displayed in the full-size display and in the editing grid. If you select an icon array, however, you are first asked to enter the index for the array element you want to see, and the arrangement of the elements to be used in the full-size display (see the description of "Chg array" above).

Prev Element

Next Element

If the current icon is an element of an icon array, this item selects the previous element in the array. (The last element is considered previous to element #0).

If the current icon is an element of an icon array, this item selects the next element in the array. (Element

#0 is considered to follow the element item.)

Related Utilities

LOADICON

LOADTCH

Instructions for Adept Utility Programs

120

FAULTLOG

FAULTLOG

File Name

FAULTLOG.V2

Program Name a.faultlog

B

File

Type

Description

Diagnostic utility for Smart-

Servo systems

Overview

The FAULTLOG utility is used to read, store, and clear the fault log file on a SmartServo system. Servo system messages and errors are logged to a non-volatile memory device as soon as there is power to the system. The contents provide a comprehensive list of servo system messages.

Requirements

Before you can run FAULTLOG: l

You must have V+ 14.0 or later installed on your system.

l

You must be connected to a SmartServo system.

Usage Consideration

The FAULTLOG utility can be used to diagnose system problems. It provides four choices to the user: l

Save an error log to disk l

Read the error log l

Display the error log l

Clear the error log

The primary purpose of the utility is to allow the user to save an error log to a disk file and email the file to an Adept support person, so the support person can use the file as a diagnostic tool to assist resolving issues related to servo and power/safety system.

Menu Structure

To access the FAULTLOG main menu, follow the

Loading and Executing Adept Utility Programs

procedure. Once the FAULTLOG utility is loaded and executed, the main menu is displayed.

Instructions for Adept Utility Programs

121

FAULTLOG

FAULTLOG Utility Menu

A brief description of each menu item is provided in the table below. Detailed descriptions of each menu item are provided in the sections following the table.

Menu

Exit to system monitor

SAVE fault log to DISK

FILE

DISPLAY fault log from

DISK FILE

Description

Exits to the V+ dot prompt.

Saves fault log from a selected joint to a specified disk file.

CLEAR fault log

DISPLAY fault log from

JOINT

Displays the fault log information contained in a specified disk file.

Clears fault log information contained in SmartServo nodes for specified joint(s).

Displays fault log information contained in the SmartServo node a the specified joint.

Instructions for Adept Utility Programs

122

FAULTLOG

SAVE fault log to DISK FILE

The SAVE fault log to DISK FILE menu option is used to store the fault log information that is contained in the SmartServo for a specified joint to a specified disk file. To save the fault log to a disk file:

1. At the "Enter number of joint to access" prompt, enter the joint number that contains the fault log data you want to store to a disk file and then press ENTER. You are prompted for the file specification.

2. At the "Disk file specification" prompt, enter the file specification in the form:

device>unit:\directory\filename.log

For example, to store the data to the CompactFlash (drive D) in the file TESTLOG.LOG, you would enter:

disk>d:\testlog.log

After typing the file specification, press ENTER. You are prompted for a descriptive message.

3. To add a descriptive message, press Y; to bypass the message, press N (or just press

ENTER).

If you choose to add a message, you are now asked to type your message. At the end of the message, add a line that contains only the period character ('.') and then press

ENTER. The utility will recognize this as the end of the message, it will write the fault data to the file, and append the message text to the log file.

4. After you have completed the above steps, your screen will look similar to the fol-

Instructions for Adept Utility Programs

123

lowing figure:

FAULTLOG

Once the data is written to the disk file, the Fault Logger menu automatically displays toplevel menu options.

DISPLAY fault log from DISK FILE

The DISPLAY fault log from DISK FILE menu option is used to display the fault log information that is contained in the specified disk file. To display the fault log from a disk file:

1. At the "Disk file specification" prompt, enter the file specification in the form:

device>unit:\directory\filename.log

For example, to display the data from the CompactFlash (drive D) in the file TEST-

LOG.LOG, you would enter:

disk>d:\testlog.log

After typing the file specification, press ENTER. The utility processes the request and displays the header information, which will look similar to the following:

Instructions for Adept Utility Programs

124

FAULTLOG

Once the header information loads, you are prompted to continue.

2. At the "Do you want to continue" prompt, press Y to continue, or N (or just press

ENTER) to stop and return to the FAULTLOG utility menu.

If you choose to continue, the fault log in the specified file is displayed on the screen.

It will look similar to the following:

Instructions for Adept Utility Programs

125

FAULTLOG

3. After the screen is filled, the utility pauses. To display the remaining fault log data, press ENTER. The remaining fault log information is displayed.

4. After you have finished reading the fault log data, press ENTER. The FAULTLOG utility menu is displayed.

Instructions for Adept Utility Programs

126

FAULTLOG

CLEAR fault log

The CLEAR fault log menu option is used to clear the fault log data that is contained in the specified "joint" (SmartAmp). To clear the fault log:

1. At the "Enter number of joint to access" prompt, enter the joint number (enter 1 for

SmartAmp one, 2 for SmartAmp two, etc.). Or, optionally, you can press A to clear

ALL the fault log data in all of the system's SmartAmps. After specifying the joint number (or A for ALL), press ENTER. A confirmation message is displayed.

2. At the "Are you sure you want to clear the fault logs for all joints" prompt, press Y to continue or press N (or just press ENTER) to cancel and return to the FAULTLOG utility menu. If you choose to continue, the utility processes the request and clears the data in the specified joint(s). As the data is being cleared, progress messages are written to the screen, which should look like the following:

Once all of the data has been cleared, you will be prompted to continue.

3. At the prompt, press ENTER. The FAULTLOG utility menu is displayed.

DISPLAY fault log from JOINT

The DISPLAY fault log from JOINT menu option is used to display the fault log data that is contained in the specified "joint". To clear the fault log:

1. At the "Enter number of joint to access" prompt, enter the joint number (enter 1 for

SmartAmp one, 2 for SmartAmp two, etc.). The fault log data for the specified joint is displayed and will look similar to the following:

Instructions for Adept Utility Programs

127

FAULTLOG

2. After the screen is filled, the utility pauses. To display the remaining fault log data, press ENTER. The remaining fault log information is displayed.

3. After you have finished reading the fault log data, press ENTER. The FAULTLOG utility menu is displayed.

Instructions for Adept Utility Programs

128

FORMAT

FORMAT

File Name

FORMAT.V2

Program Name a.format

B

File

Type

Description

Format utility for the Compact

Flash and hard disk

Overview

Format the Compact Flash or hard disk and erase its entire contents.

Before a Compact Flash or hard disk can be used it must be formatted. Internal drives shipped with Adept systems are already formatted and ready to accept data. If you replace the internal drive, you must format the drive.

Requirements

You need the following items for FORMAT: l

Adept system controller l

V+ system disk

Before you can run FORMAT: l

The V+ system must be loaded.

l

If you are using a robot system, the robot must be calibrated, and COMP mode must be selected on the manual control pendant.

or

The DRY.RUN system switch must be enabled.

or

The program can be executed as a program task other than 0.

Usage Considerations

The FORMAT program defines many real-valued variables with the prefix fw. that must not be modified by you or by other programs. (All of these variables are deleted from memory when the program completes execution normally and when a DELETE command is used to delete the program from memory, as previously described.)

Instructions for Adept Utility Programs

129

FORMAT

Menu Structure

Menu

Exit to system monitor

Format the hard disk

Description

Return to the V+ monitor.

Formats (or reformats) the disk.

Display disk format information

Displays information on the current disk format.

Format the hard disk

This menu selection initiates the procedure for formatting (or reformatting) the disk.

CAUTION: Reformatting the disk erases all the information stored on the disk. The program displays warning messages if it finds information present on the disk.

Before performing the actual format operation, the program displays the type of format that is used and asks if it is correct. Enter Y if the format shown is correct. Otherwise enter N, and specify the capacity of the disk.

CAUTION: When reformatting the disk, enter N only if the disk has previously been formatted incorrectly.

Display disk format information

This selection displays information on the current disk format.

Disk Format Information Display

is an example of the screen that is displayed when you select Display disk format information.

Instructions for Adept Utility Programs

130

Disk Format Information Display

Related Utilities

DISKCOPY

SQUEEZE

FORMAT

Instructions for Adept Utility Programs

131

FTP_CLNT

FTP_CLNT

File Name

FTP_CLNT.V2

Program Name a.ftp_clnt

B

File

Type

Description

Utility for AdeptFTP client functions

Overview

Provide access to a remote computer that acts as an FTP server, for the purpose of transferring files to and from the Adept controller. (The remote computer can be another Adept controller that is executing the program FTP_SRVR.)

NOTE: For more information on this utility, see the AdeptNet User's Guide .

Related Utilities

FTP_SRVR

XMODEM

Instructions for Adept Utility Programs

132

FTP_SRVR

FTP_SRVR

File Name

FTP_SRVR.V2

Program Name a.ftp_srvr

B

File

Type

Description

Utility for AdeptFTP server functions

Overview

Make the local disks in the Adept controller accessible to a remote computer, so the remote computer can transfer files to and from the Adept controller. (The remote computer can be another Adept controller that is executing the program FTP_CLNT.)

NOTE: For more information on this utility, see the AdeptNet User's Guide .

Related Utilities

FTP_CLNT

XMODEM

Instructions for Adept Utility Programs

133

LOADAREA

LOADAREA

File Name

LOADAREA.V2

Program Name a.loadarea

A

File

Type

Description

Load area vision calibration data for use by an application program

Overview

Restore area vision calibration by reading data from a disk file created by the Adept area vision calibration program, ADV_CAL, or by the AIM VisionWare system.

The Adept area vision calibration program (a.adv_cal) writes data into a disk file. An application program can read that data from the disk and restore it in the vision system by calling the subroutine load.area with the appropriate argument list.

This section describes the procedure for including the subroutine in your application program.

Requirements

The items listed below are needed to utilize the load.area subroutine in your application program. All of these (except as indicated) were supplied with your Adept system.

l

Adept system controller with the AdeptVision option l

PC-style keyboard and high-resolution graphics monitor (system option) or

AdeptWindows PC software executing on a PC, with an Ethernet connection to the

Adept controller l

Your application program (not provided by Adept)

Usage Considerations

The subroutine load.area enables the VISION system switch, restores the stored settings of the V.THRESHOLD system parameter and the V.BACKLIGHT system switch, and restores the vision calibration data via the VPUTCAL instruction.

The subroutine load.area assumes that the calibration data file has the specific format used by the Adept area vision calibration program, ADV_CAL. The calibration program writes a format version number in the data file. This version number must agree with the one expected by load.area, or the loading is not performed.

Instructions for Adept Utility Programs

134

LOADAREA

The load.area subroutine reads the area vision calibration information that is stored in a disk file. If the data is found to be valid, the following instructions are executed to initialize the vision system, and the data is returned to the calling program.

IF NOT SWITCH(VISION) THEN

ENABLE VISION

END

PARAMETER V.THRESHOLD[camera_number] = stored_threshold_value

SWITCH V.BACKLIGHT[camera_number] = stored_backlight_value

VPUTCAL (camera_number) stored_calib_array[], stored_pmm.to.pix[,], stored_pix.to.pmm[,]

After the routine has processed the calibration data file, the AdeptVision system is ready to process images. All of the calibration data are returned to the calling program for completeness, but only the variable to.cam normally is used by the application program.

Your application program should call the subroutine at some point before the vision system begins acquiring images. The subroutine normally must be called only one time (for each camera) per operating session. The CALL instruction must have the following format:

CALL load.area($file, cam.virt, threshold, backlight,

 to.cam, cam.cal[], pmm.to.pix[,], pix.to.pmm[,],

 pmm.to.mm[,], mm.to.pmm[,], $error) where the program arguments have the interpretations that are described below.

NOTE: The variable names used here are examples only. Your application program can use any variable names that you choose.

$file

$error cam.virt

Input parameter that passes the specification of the disk file containing the area camera calibration data. This parameter can be a string constant, variable, or expression.

The file specification usually has the form disk_unit:name.extension

The file specification can also include a directory path, as follows.

 disk_unit:directory_path\name.extension

However, the file name and extension must have the form

AREAnnn.DAT (where nnn is the data set number) if the data file was created by the Adept area vision calibration program, ADV_

CAL, or by the VisionWare system.

If no error occurs while load.area is executing, the parameter

$error receives an empty string (""), and the output parameters described below receive the indicated values. If an error does occur,

$error receives a string describing the error, and the other output parameters are not defined. Thus, your calling program should check the variable $error before proceeding.

Input parameter and output parameter that identifies the (virtual)

Instructions for Adept Utility Programs

135

LOADAREA threshold backlight to.cam

camera receiving the calibration data.

As an input parameter, cam.virt specifies which virtual camera is to receive the calibration data. If this parameter is undefined or has the value zero, the camera number stored in the data file is used. If

cam.virt has a nonzero value, it is compared with the virtual camera number in the data file, and $error is assigned a warning message if the camera numbers differ.

This parameter is used as an output parameter if it is undefined (or zero) on input. Then, cam.virt returns the virtual camera number used, as a real value in the range 1 to 32. (The physical camera number is contained in the cam.cal[] data array [see below].)

Output parameter that receives the real value used to set the

V.THRESHOLD system parameter.

Output parameter that receives the real value used to set the

V.BACKLIGHT system switch. The value is either TRUE (-1) or

FALSE (0).

Output parameter that receives the transformation value representing the position and orientation of the vision camera in the robot frame of reference.

This transformation must be combined with the transformation returned by the vision system whenever the robot is to be moved to an object in the field of view. That is, for example, for a camera fixed over the workspace, the robot can be moved to the location defined by:

 to.cam:vis.loc

where vis.loc is the transformation returned by a VLOCATE instruction.

NOTE: This example applies only if the camera is fixed over the workspace. For any other camera mounting, refer to the AdeptVision User's Guide for the details of how to use the to.cam transformation.

cam.cal[ ] Output parameter that receives the area camera calibration data that is used in the VPUTCAL instruction. This parameter must be a real-array variable. (For details on the elements of this array, see the description of the VPUTCAL instruction in the AdeptVision Reference Guide .)

The following output parameters return transformation matrices for dealing with perspective distortion. Each of these parameters must be a two-dimensional real-valued array variable. (If the calibration data file being read does not contain perspective data, these arrays receive simple scale transformations.)

NOTE: Refer to the AdeptVision Reference Guide for more information on perspective distortion in general, and on these arrays in particular.

Instructions for Adept Utility Programs

136

LOADAREA pmm.to.pix[,] pix.to.pmm[,] pmm.to.mm[,]

Output parameter that receives the millimeter-to-pixel transformation matrix.

Output parameter that receives the pixel-to-millimeter transformation matrix.

Output parameter that receives the transformation from real object space (in millimeters) to simple object space (in millimeters).

For efficiency, most vision tools are positioned with coordinates in simple millimeter space, and some tools (such as blob analysis) return coordinates in this space. The pmm.to.mm[,] transformation may be used to precisely position vision tools (such as

VWINDOW and the graphics instructions) that do not automatically correct for perspective distortion.

NOTE: Using this correction is appropriate only when the perspective distortion is significant. Using the array mm.to.pmm[,] (see below) to correct the results of vision tools, however, may be desirable for increased precision even when the perspective distortion is slight.

mm.to.pmm[,] Output parameter that receives the transformation from simple object space (in millimeters) to real object space (in millimeters).

This array can be used to correct for perspective distortion in the

results from vision tools that do not automatically convert the coordinates with the transformation pix.to.pmm[,] (for example, this is the case with blob or prototype locations).

Related Utilities

BELT_CAL

LOADBELT

Instructions for Adept Utility Programs

137

LOADBELT

LOADBELT

File Name

LOADBELT.V2

Program Name load.belt

A

File

Type

Description

Load belt calibration data for use by an application program

Overview

Load conveyor tracking calibration from a disk file created by the Adept belt calibration program, BELT_CAL.

The Adept belt calibration program, BELT_CAL, writes data to a disk file. An application program can read that data from the disk and restore it in the system by calling the subroutine

load.belt with the appropriate argument list.

This section describes the procedure for including the subroutine in your application program.

Requirements

The items listed below are needed to utilize the load.belt subroutine in your application program.

l

Robot system with the conveyor tracking feature l

Your application program (not provided by Adept)

Usage Considerations

The subroutine load.belt enables the BELT system switch, restores the belt variables used by the robot to track the conveyors, and restores the working windows on the belts.

The subroutine load.belt assumes that the calibration data file has the specific format used by the Adept calibration program, BELT_CAL. The calibration program writes a version number in the data file. That version number must agree with the one expected by

load.belt. Otherwise, the loading is not performed.

When the working windows for the belts are defined, no program is primed for execution in the event of a window violation. Thus, your program may include a WINDOW instruction for each belt to specify the name of a program to be executed if a window error ever occurs while the robot is tracking the belt. That is, your WINDOW instructions should have the format:

WINDOW %b[i] = win1[i], win2[i], program_name

Instructions for Adept Utility Programs

138

LOADBELT where win1[i] and win2[i] are the window-defining locations returned by load.belt, and

program_name represents the name of the program you want to have executed if a belt-window violation occurs for belt i.

The load.belt subroutine below reads belt calibration information from a disk file, executes the following instructions to initialize the conveyor tracking system, and returns the calibration data to the calling program.

ENABLE BELT

FOR i = 1 TO 6

IF cal[i] THEN

DEFBELT %b[i] = nom[i], i, 32, sf[i]

WINDOW %b[i] = win1[i], win2[i]

END

END

After the routine has processed the calibration data file, the V+ system is ready to have the robot track the calibrated belt(s). All of the calibration data is returned to the calling program for completeness. Normally, only the belt variables (%b[]) and the locations defining the window limits (variables win1[] and win2[]) are used by the application program.

The application should call the subroutine before the robot moves to a belt location. The subroutine normally must be called only one time per operating session. The CALL instruction must have the following format:

CALL load.belt($file, cal[], %b[], sf[], nom[], win1[], win2[], $error) where the program arguments have the interpretations described below.

NOTE: The variable names used here are for explanation purposes only. Your application program can use any variable names you choose. If you do not want to use a belt variable array, you must explicitly include appropriate DEFBELT and WINDOW instructions in the application program (see above).

file

$error

Input parameter specifying the disk file containing the belt calibration data. This parameter can be a string constant, variable, or expression and can include a directory path in the form: unit:directory_path\name.extension

The file name and extension must have the form BELTnnn.DAT (where

nnn is the data set number) if the data file was created by the Adept conveyor tracking calibration program BELT_CAL.

If no error occurs while load.belt is executing, this parameter receives an empty string (""), and the output parameters described below receive the indicated values. If an error occurs, $error receives a string describing the error, and the other output parameters are not defined. The calling program should check this variable before proceeding.

Instructions for Adept Utility Programs

139

LOADBELT

Each of the following output parameters is an array containing up to six elements. Element #1 pertains to the conveyor belt connected as ENCODER 1; element #2 pertains to the belt connected as ENCODER 2; etc.

See Conveyor Tracking for more complete descriptions of the data items listed below.

cal[ ]

%b[ ]

Real array indicating the calibration status of the belts. Each element contains the value TRUE (-1) if the corresponding belt has been calibrated or FALSE (0) if the information contained in the corresponding element of the other data arrays is invalid.

Belt variable array.

sf[ ] nom[ ] win1[ ] win2[ ]

A belt variable must be combined with one or more transformations whenever the robot is to be moved to a location on a conveyor belt. For example, the robot can move to the location defined by:

%b[1]:start where start is a transformation variable defined relative to the belt variable %b[1].

Real array containing belt scale factors. These constants relate motion of the corresponding belt with the output of its belt encoder. The values represent the distance the belt moves (measured in millimeters) for each count from the belt encoder.

Transformation array containing the nominal locations of the belts.

Transformation array containing the locations used to define one extreme of the working windows on the belts.

Transformation array containing the locations used to define the other extreme of the working windows on the belts.

Related Utilities

LOADAREA

BELT_CAL

Instructions for Adept Utility Programs

140

LOADICON

LOADICON

File Name

LOADICON.V2

Program Name load.icon

A

File

Type

Description

Load graphic icons for use by an application program

Overview

Load graphic icons into memory from a disk file created by the Adept graphic icon editing utility, EDITICON.

The Adept graphic icon editing utility, EDITICON, writes data into a disk file. An application program can read the data from the disk and store it in graphics system memory by calling the subroutine load.icon with the appropriate argument list.

This section describes the procedure for including the subroutine in your application program. See the section on the icon editing utility, EDITICON, for information on how to create icon data files.

Requirements

The items listed below are needed to utilize the load.icon subroutine in your application program. All of these (except as indicated) were supplied with your Adept system.

l

Adept graphics-based system controller with the AdeptVision option l

PC-style keyboard and high-resolution graphics monitor (system option) or

AdeptWindows PC software executing on a PC with a serial-line or Ethernet connection to the Adept controller l

Your application program (not provided by Adept)

Usage Considerations

The subroutine load.icon assumes that the calibration data file has the specific format used by the Adept graphic icon editing utility, EDITICON. The icon editing utility writes a version number in the data file that must agree with the one expected by load.icon.

You can use the V+ FLIST command to display information in an icon data file. The information includes the creation date of the file and a list of the icons defined in the file.

The load.icon subroutine reads the icon definition information stored in a disk file. If the data is found to be valid, the following instructions are executed for each icon found in the file.

Instructions for Adept Utility Programs

141

LOADICON

FOPEN (glun) $name , "/ICON /ARRAY", max.index, "/SIZE", dx, dy, "/POSITION", x, y

WRITE (glun) graphic_data_from_the_file

FCLOSE (glun)

NOTE: The variables $name, max.index, dx, dy, x, and y are defined from the data in the file. All these variables are declared AUTO by load.icon, and thus cannot be accessed by other programs.

After the routine has successfully processed the icon data file, the graphics system is ready to accept GICON instructions that reference the loaded icons.

Your application program should call the subroutine before the icons are referenced. The subroutine normally should be called only one time per operating session. The CALL instruction must have the following format:

CALL load.icon($file, dlun, glun, error) where the program arguments have the interpretations listed below.

NOTE: The variable names used here are for explanation purposes only. Your application program can use any variable names that you choose.

$file dlun glun error

Input parameter that passes the specification of the disk file containing the icon definition data. This parameter can be a string constant, variable, or expression.

The file specification can have the form:

 phy_device>unit:directory_path\name.extension

where the following elements are optional: phys_device>, unit:, direc-

tory_path\, and .extension. The defaults for the first three items are taken from the current DEFAULT setting. The default extension is

.DAT.

Input parameter that specifies the disk logical unit to use for opening the data file.

The disk logical unit must not be attached by the current program task.

The program load.icon leaves the disk logical unit detached.

Input parameter that specifies the graphics logical unit to use for writing the icon data into graphics memory.

The graphics logical unit must be attached by the current program task, but no window may be open on the logical unit. The program

load.icon leaves the graphics logical unit attached, with no open window.

Output parameter that receives the status of the load operation. This parameter must be a real-valued variable.

If no error occurs in the load process, error returns zero. If an error

Instructions for Adept Utility Programs

142

LOADICON occurs, error returns a standard V+ error code describing the error. In this case, one or more of the icons defined in the disk file may not have been loaded. Thus, your calling program should check the variable

error before proceeding.

Related Utilities

EDITICON

LOADTCH

Instructions for Adept Utility Programs

143

LOADTCH

LOADTCH

File Name

LOADTCH.V2

Program Name load.touch

A

File

Type

Description

Load touchscreen calibration data for use by an application program

Overview

Load touchscreen calibration from a file created by the Adept touchscreen calibration program, TOUCHCAL.

The Adept touchscreen calibration program, TOUCHCAL, writes data to a disk file. An application program can load that data from the disk by calling the subroutine load.touch with the appropriate argument list.

This section describes the procedure for including the subroutine in your application program.

Requirements

The items listed below are needed to utilize the load.touch subroutine in your application program.

l

Adept controller with VGB module in the system l

High-resolution graphics monitor (system option) l

Installed touchscreen (third-party option) l

PC-style keyboard (system option) l

The touchscreen rather than a trackball or mouse must be connected to the VGB module as the pointing device

Usage Considerations

The subroutine load.touch assumes that the calibration data file has the specific format used by the Adept calibration program, TOUCHCAL. The version number in the data file must agree with the one expected by load.touch. Otherwise, the loading is not performed.

The application should call the subroutine before interaction with the touchscreen is required. The subroutine must be called after system memory is ZEROed or the controller is first turned on. The CALL instruction must have the following format:

CALL load.touch($file, $error) where the program arguments have the interpretations described below.

Instructions for Adept Utility Programs

144

LOADTCH

NOTE: The variable names are for explanation purposes only. Your application program can use any variable names that you choose.

$file

$error

Input parameter specifying the disk file containing the touchscreen calibration data. This parameter can be a string constant, variable, or expression and can include a directory path. Its value can have the form:

 unit:directory_path\name.extension

However, the file name and extension must have the form

TOUCHnnn.DAT (where nnn is the data set number) if the data file was created by the Adept touchscreen calibration program

TOUCHCAL.

If no error occurs during the loading of loadscreen calibration, $error returns an empty string ("") and the touchscreen calibration is applied.

If an error occurs, $error returns a string describing the error and the touchscreen calibration is not applied. The calling program should check the variable $error before proceeding.

Related Utilities

TOUCHCAL

Instructions for Adept Utility Programs

145

PROFILER

PROFILER

File Name

PROFILER.V2

Program Name a.profiler

B

File

Type

Description

Task profiler utility

Overview

Display the amount of CPU time being used by executing system and user tasks.

The V+ operating system is a multitasking system that concurrently executes system and user tasks. Each task is allowed to execute in one or more of sixteen time slices according to the priority assigned to each task in each of the sixteen time slices.

You can define the default priorities assigned to each user task in each time slice by using the program CONFIG_C. The default priorities may be superseded with an EXECUTE instruction.

The profiler displays a series of bar graphs showing how much time each task is taking in each time slice. This display helps you define a priority scheme that assures CPU time for your critical tasks and runs noncritical tasks on an as-time-is-available basis.

Understanding the information displayed by the task profiler requires a thorough understanding of V+ task execution. See the section Scheduling of Program Execution Tasks .

Requirements

You need the following items to run the PROFILER.

l

Adept graphics-based controller l

PC-style keyboard and high-resolution graphics monitor (system option) or

AdeptWindows PC software executing on a PC, with a serial-line or Ethernet connection to the Adept controller

In order to display meaningful data, you should have application programs LOADed and ready to EXECUTE.

If you are using a robot system: l

The robot must be calibrated and COMP mode must be selected on the manual control pendant.

or l

The DRY.RUN system switch must be enabled.

or l

The program can be executed as a program task other than #0.

Instructions for Adept Utility Programs

146

PROFILER

Usage Considerations

Changing the task priority scheme can seriously degrade the performance of your system.

Make sure you have a thorough understanding of how the Adept multitasking system works before changing task priorities. Read Scheduling of Program Execution Tasks before making changes to the task priorities.

In order to get a true picture of CPU usage and minimize the effect of the executing PROFILER program, you generally want to run the profiler in a low priority task or with a low priority specified as a parameter in the EXECUTE command.

To see the Time Slice graph and % CPU Time graph at the same time, you can execute the

PROFILER in two different tasks.

The PROFILER program defines many real-valued and string global variables with the prefix

pf. that must not be modified by you or by other programs. (All these variables are deleted from memory when the program exits normally or when a DELETE command is used to delete the program from memory, as described earlier.)

Program Operation

The profiler displays CPU usage on two different bar graphs, the % CPU Time graph or the

Time Slice graph. The % CPU Time graph is a bar graph that shows the percent of time used per 16-ms major cycle by the system and user tasks (see

Percent (%) CPU Time Graph

).

Percent (%) CPU Time Graph

Percent (%) CPU Time Graph

shows that the running system is allocating approximately 12 percent of its time to system tasks, zero (0) percent to user task 0, 1 percent to user task 1, zero (0) percent to user tasks 2 and 5, and 88 percent to the null task. (The null task runs whenever no other tasks are available to run.)

The Time Slice graph is a bar graph that shows the CPU time that each task has used in each time slice. Data is shown for the last three 16-ms major cycles. These three major cycles are shown as red, white, and blue bars on each task line (see

Time Slice Graph

).

Instructions for Adept Utility Programs

147

PROFILER

Time Slice Graph

Time Slice Graph

shows a system running four concurrent user tasks. The red, white, and blue bars show the amount of time each task has used in each time slice for the previous three intervals. The time interval between display updates (2.0 seconds in

Time Slice Graph

) is set with the Timing menu items.

The Time Slice graph appears after choosing the "Time Slice" menu item from the Display menu, and when the PROFILER is run in a second task. (When the time-slice graph is active, the "Time Slice" menu item changes to "%CPU Time".)

A graph can be displayed in either update or freeze mode.

l

In update mode, the graph is refreshed every 0.5, 1, 2, or 5 seconds.

l

In freeze mode, the graph is held static. The display can be updated by choosing the

"Snapshot" menu item. (These items are selected from the Timing menu.)

Choosing Displayed Tasks

The Display menu allows you to specify which tasks are displayed. Choosing "All System

Tasks" shows all the individual V+ system tasks on the bar graph. If "All System Tasks" is not chosen, all system task usage is displayed on one line marked System Tasks.

NOTE: Selected options are marked by a 4.

Choosing "All User Tasks" displays all the user tasks available to your system. If "All User

Tasks" is not chosen, only tasks with a program on the execution stack are displayed.

Profiler Pulldown Menus

The pulldown menus allow you to select online help, to exit the utility, to determine which display is presented and to determine how often the displayed graph is updated.

Instructions for Adept Utility Programs

148

PROFILER

The Profiler Menu

The Profiler menu displays help for the profiler utility and exits the utility program. (To close an information pop-up window, click anywhere in the pop-up window.)

Profiler Menu

Item

About Profiler

Display Menu Help

Timing Menu Help

Exit Profiler

Profiler Menu Items

Action

Display program version/revision data.

Display basic information on the Display menu items.

Display basic information on the Timing menu items.

Exit the profiler program. (Choosing the Close icon also exits the program.)

The Display Menu

The Display menu determines which display is presented and how many lines of information are graphed.

Instructions for Adept Utility Programs

149

PROFILER

Display Menu

Item

Time Slice

% CPU Time

All System Tasks

All User Tasks

Refresh

Display Values

Display Menu Items

Action

Toggles between the two display types. When % CPU Time is chosen, the program displays the graph shown in

Percent (%) CPU Time Graph

. When Time

Slice is chosen, the graph shown in

Time Slice Graph

is displayed.

When chosen, each system task is displayed on its own line. When not chosen, all system task time is accumulated into one line labeled System Tasks.

When chosen, all user tasks are graphed whether or not they are in use. When not chosen, only the tasks that have a program on the execution stack are displayed.

Forces a redraw of the profiler graphs. (Use this, for example, if All User Tasks is not chosen and a new user task has become active.)

When % CPU Time is displayed, this item can be chosen to add a column to the display to show the lengths of the graph bars.

The Timing Menu

The Timing menu determines how often the graphs are updated.

Timing Menu Item

Snap Shot

Timing Menu Items

Action

Put the display in freeze mode and update the graphs.

Instructions for Adept Utility Programs

150

PROFILER

Timing Menu Item

Interval 0.5

Action

Update graphs at 0.5-second intervals.

Interval 1

Interval 2

Interval 5

Freeze

Update graphs at 1-second intervals.

Update the graphs every 2 seconds.

Update the graphs every 5 seconds.

Do not update the graphs (freeze mode).

Related Utilities

DUTY_CYC

Instructions for Adept Utility Programs

151

RSC_RSTR

RSC_RSTR

NOTE: For V+ version 16.1 and later, the unified RSC_RSTR.V2 utility combines the

RSC_RSTR and RSC_A6 utilities. Therefore, RSC_A6.V2 is no longer delivered as a separate utility.

File Name

RSC_RSTR.V2

Program Name a.rsc_rstr

B

File

Type

Description

RSC maintenance utility

Overview

The RSC_RSTR.V2 utility program allows you to view and manage the data stored on the dis-

tributed RSC (Robot Signal Card). The program can be used to: l display RSC status l display RSC data l compare RSC data stored in different sources such as the servo cache, local disk, or

SPEC data file.

l retrieve/update RSC data from/to servo cache l update RSC data to servo l save/restore data to/from a SPEC file l commit RSC data to robot (send RSC data from servo cache to the encoders).

The data stored in the RSC includes the following:

Robot ID data: # of joints product type robot model

Robot kinematics data: robot serial number robot option word device module ID mechanism ID wrist to flange distance link lengths upper/lower joint travel limits.

Instructions for Adept Utility Programs

152

RSC_RSTR

Robot calibration data: joint calibration offsets.

Requirements

To use the RSC_RSTR utility program: l

You must have V+ 16.1 or later installed on your system.

l

You must be connected to an AdeptSix robot, Adept SCARA robot, Adept Vicron robot, or any other Adept robot that uses an RSC.

Usage Considerations

The RSC_RSTR utility is used to view and manage the RSC data for all Adept robots that contain an RSC card.

NOTE: For V+ versions older than version 16.1: to manage RSC data for any 1394-based

Robots such as the AdeptSix, use the RSC_A6 utility; to manage RSC data for VME-based robots, use the RSC_RSTR utility. These utilities are available on the V+ software disk or

CD-ROM that shipped with your robot system.

Menu Structure

To access the RSC_RSTR main menu, load and execute the program RSC_RSTR.V2 (for instructions, see

Loading and Executing Adept Utility Programs

). After the RSC_RSTR utility program is initialized, the main menu is displayed.

Instructions for Adept Utility Programs

153

RSC_RSTR

RSC_RSTR Utility Menu

A brief description of each menu item is provided in the table below. Detailed descriptions of each menu item are provided in the sections following the table.

Menu

Exit to system monitor

Display RSC status

Display RSC data

Compare RSC data

Description

Exits to the V+ dot prompt.

Displays the current status of the RSC.

Displays a listing of the current RSC data

Compares the RSC data stored on different sources. Sources include: local disk copy, servo cache, or SPEC data file.

Retrieve RSC data from

Servo

Retrieve the RSC data currently stored in the servo cache.

Update RSC data to Servo

Copy the RSC data from a file Compare the

RSC data stored on different sources. Sources

Instructions for Adept Utility Programs

154

RSC_RSTR include: local disk copy, servo cache, or SPEC data file.

Save RSC info to data file

Saves the current RSC information to a disk file.

Restore RSC info from data file

Writes the RSC data from a specified disk/file to the local RSC data file and to the servo cache.

Commit RSC data into the robot

Send the RSC data from the servo cache to the Yaskawa Sigma-II encoder memory-storage device.

NOTE: Any updates to the RSC data in the servo cache do not become permanent

(available after the robot or amplifier chassis is restarted) until you have written the changes to the encoders using the Commit option.

Display RSC Status

To check the status of the data in the servo cache and on the encoders, use the Display RSC status option:

1. Select the Display RSC status option from the RSC_RSTR utility menu and then press ENTER.

A screen displays indicating the current status:

Instructions for Adept Utility Programs

155

RSC_RSTR

2. Press ENTER to check the RSC data stored in the servo cache.

The following information is displayed:

3. Select ENTER to return to the RSC_RSTR main menu.

Instructions for Adept Utility Programs

156

RSC_RSTR

Display RSC Data

RSC data can be stored in various source locations which allows you to maintain backup data, default settings, and verify the current data stored in the servo cache. To view the data stored in any of these sources, use the Display RSC data option.

1. Select the Display RSC data option from the RSC_RSTR utility menu and then press

ENTER.

The following screen displays to select the desired RSC data source:

2. Type the option number for the source file you want to view, then press ENTER.

If you select...

Default data for the select robot model then...

Specify the AdeptSix robot model in which you are interested.

Data retrieved from servo's RSC data cache

Local copy of the RSC data

A listing of the RSC data in the specified source displays after you press ENTER.

Data obtained from an RSC data file

Specify the path and filename for the desired data file.

After the operation completes, an All done message is displayed.

3. Press ENTER to clear the display and return to the RSC_RSTR menu.

Compare RSC Data

The RSC_RSTR utility program maintains a local copy of the RSC data stored on the robot. To compare the data in the local copy to the data stored in another RSC data source, use the

Compare RSC data option.

Instructions for Adept Utility Programs

157

RSC_RSTR

Select the Compare RSC data option from the RSC_RSTR utility menu. Then, press

ENTER.

The following screen displays to select the desired RSC data source:

1. Type the number of the data source to compare to the local RSC data file.

A screen displays the results. The following figure displays the results of comparing the local RSC data file to the default RSC settings:

2. Press ENTER to return the RSC_RSTR menu.

Instructions for Adept Utility Programs

158

RSC_RSTR

Retrieve RSC Data from Servo

To retrieve the RSC Data stored in the servo cache, use the Retrieve RSC Data from Servo.

When you select this option, the data is retrieved immediately after you select the option.

Update RSC Data to Servo

To update the RSC data in the servo cache with the data stored in the local RSC data file, use the Update RSC data to servo option. The update occurs immediately after you select the option.

Save RSC data to a Data File

To save (backup) the current RSC data to a disk file, use the Save RSC info to data file option .

1. Select the Save RSC info to data file option from the RSC_RSTR utility menu and then press ENTER.

The following screen displays:

2. At the Disk file specification prompt, specify a path and filename to store the RSC data A Creating file... message is displayed.

Instructions for Adept Utility Programs

159

RSC_RSTR

If a file by that name already exists on the specified drive, you will be prompted for permission to overwrite the existing data file. Press Y to overwrite the file, or press N to cancel the operation.

If an RSC data file does not exist, the data file is immediately written to disk. An All

done message is displayed when the operation has completed.

3. Press ENTER to return to the RSC_RSTR menu.

Restore RSC Data from a File

If necessary, use the Restore RSC Data from a File option to overwrite the local RSC data file and the RSC data stored in the servo cache with the RSC data stored in a specified RSC data file.

After restoring the data, you can use the commit RSC data into the robot option to send the data to the encoders so that it is available each time the robot and amplifier chassis are started.

Instructions for Adept Utility Programs

160

RSC_RSTR

Commit RSC Data into the Robot

Any updates made to the servo cache will only be available until the robot and amplifier chassis are restarted. To make the updates permanent, use the Commit RSC data into the Robot to write the new data to the encoder memory-storage device.

Instructions for Adept Utility Programs

161

RSC_RSTR

1. Select the Commit RSC data into the robot option from the RSC_RSTR utility menu.

Then, press ENTER.

The following screen is displayed:

2. Type Y to write the RSC data to the encoders. Type N to cancel the operation.

The new RSC data does not take effect until you reboot the controller and power cycle the amplifier chassis.

3. Press ENTER to return to the RSC_RSTR menu.

Instructions for Adept Utility Programs

162

SAFE_UTL

SAFE_UTL

File Name

SAFE_UTL.V2

Program Name a.safe_utl

B

File

Type

Description

Perform safety tests and commissioning for Adept robots.

1. Test program for the

Adept robot Manual

Mode Safety Package

(MMSP) option.

2. Commission robots that support Category-3 safety requirements.

Overview

This program can be used for two purposes:

1. Test components of the Manual Mode Safety Package (MMSP) and set a software flag to mark the robot as commissioned if all the tests pass.

2. Perform CE Category-3 commissioning process on robots that support Category-3 safety requirements. Set a software flag to mark the robot as com-

missioned if all tests pass. For details, see

AdeptSix Category-3

Commissioning Process

.

When the program is loaded, the system automatically determines whether to execute the

MMSP process or the AdeptSix Cat-3 process based on the type of safety equipment installed.

Requirements

The items listed below are needed to run the SAFE_UTL program.

l

Adept system controller l

Adept robot with the MMSP (Cat 3) option l

V+ system

Usage Considerations

The SAFE_UTL program defines many real-valued and string global variables with the prefixes ca., opt., ts. and tt. that must not be modified by you or by other programs. (All these variables are deleted from memory when the program exits normally or when a DELETE command is used to delete the program from memory, as described earlier.)

Instructions for Adept Utility Programs

163

SAFE_UTL

Some tests within the SAFE_UTL program may require a second person for assistance.

Certain menu options require the robot to be marked as "Not Commissioned" in order to proceed. If the robot is currently marked as "Commissioned" then the following is displayed (in the selected language):

WARNING: The current robot will be marked as "not commissioned", and will be marked as "commissioned" only after passing "all tests".

Do you want to continue (Y/N)?

Responding Y marks the robot as not commissioned. The robot cannot be operated in manual mode until all commissioning tests are completed and passed.

If the response is N, the system is left unchanged and the program returns to the main menu.

The only menu selection, which can be used to commission a robot, is the "Commissioning tests" option. Selecting and passing each individual commissioning test, by selecting the individual commissioning test menu options, will not mark the robot as commissioned.

Individual commissioning tests can be performed on a robot, which is marked as "not commissioned", by selecting the appropriate menu option.

Diagnostic tests can be performed on a robot that is marked as commissioned, by selecting the appropriate menu option. These options can be used on a robot marked as commissioned to verify hardware.

Menu Structure

WARNING: All personnel should be outside the safety barrier. All safety gates should be installed and closed.

Adept recommends that all end-of-arm tooling be removed from the robot before testing begins.

To access the SAFE_UTL main menu, follow the

Loading and Executing Adept Utility Programs

procedure.

A menu is displayed that allows you to select the language you want the program to use.

After a language selection is made the main menu is displayed (in the selected language).

Instructions for Adept Utility Programs

164

SAFE_UTL

Once SAFE_UTL is initialized, the main menu is displayed.

SAFE_UTL Utility Menu

A brief description of each menu item is provided in the table below.

Instructions for Adept Utility Programs

165

SAFE_UTL

Menu

Exit

Commissioning tests 1

Accelerometer

1

B+ Amp Voltage

Restrict

1

CIP E-STOP Functions

1

Description

Exits to the V+ dot prompt.

Performs all tests in the SAFE_UTL utility

Tests the accelerometer

Tests the B+ Amp Voltage Restrict circuitry

Tests the CIP for proper operation

MCP E-STOP Functions

1

Brake Holding

Force

1

Accelerometer diagnostic

B+ Amp diagnostic

Tests the MCP E-stop for proper operation

Checks the brakes to ensure they hold the robot in position.

Diagnostic routine for testing the Accelerometer on a Commissioned robot.

Diagnostic routine for testing the B+ Amp Voltage Restrict circuitry on a Commissioned robot.

CIP diagnostic

Diagnostic routine for testing the CIP on a Commissioned robot.

1. These menu options will prompt the user to mark the robot as "Not Commissioned" in order to continue.

Commissioning tests

NOTE: For a detailed description of these tests, please refer to the robot manual supplied with your system.

Perform all of the following tests.

WARNING: You must remain outside the robot workcell with all safety barriers closed while conducting these tests. Failure to observe this warning can cause serious injury.

Instructions for Adept Utility Programs

166

SAFE_UTL

Accelerometer

The accelerometer is tested to ensure that it is operational. The MANUAL/AUTO and NETWORK key switches are checked by SAFE_UTL.

B+ Amp Voltage Restrict

As this test is started High Power must be enabled as described in the previous test. The voltage restrict circuitry is tested to ensure that it is operational. The robot makes a quick move during the test, joint 3 moving a minimum of and joint 4 moving a minimum of E-Stop. The robot may overshoot slightly.

You can specify points or use the system defaults. Follow the prompts to perform the test.

CIP E-STOP Functions

The CIP High Power button and lamp are tested to ensure that they are operational.

You are asked to test the MANUAL/AUTO and NETWORK keyswitches by changing their position. As the keyswitch position is changed, the program verifies the state. If the test fails, the main menu is displayed.

If the test passes, the High Power state test is performed. If this test passes, the High Power enable test is performed, followed by the E-Stop Button test.

MCP E-STOP Functions

The Enabling switch on the MCP is tested to ensure that it is operational. The test attempts to enable High Power and expects an E-Stop error. If High Power can be switched on, the test fails and an error message is displayed.

Brake Holding Force

The holding force of the brakes is tested to ensure that the robot cannot move when the brakes are engaged. High Power is switched on and joint 1 attempts to move with the brakes engaged, which should cause a failure. You are then directed to test joints 2, 3, and 4 in the same manner.

Accelerometer diagnostic

The accelerometer is tested to ensure that it is operational. This test is provided as a diagnostic test, and will not affect commissioning of the system.

Follow the system prompts to complete this test.

Instructions for Adept Utility Programs

167

SAFE_UTL

B+ Amp diagnostic

As this test is started High Power must be enabled as described in the previous test. The voltage restrict circuitry is tested to ensure that it is operational. This test is provided as a diagnostic test, and will not affect commissioning of the system. Follow the system prompts to complete this test.

CIP diagnostic

You are asked to test the MANUAL/AUTO and NETWORK keyswitches by changing their position. As the keyswitch position is changed, the program verifies the state. This test is provided as a diagnostic test, and will not affect commissioning of the system. Follow the system prompts to complete this test.

Related Utilities

SFUTIL

Instructions for Adept Utility Programs

168

AdeptSix 600 Cat-3 Commissioning Process

File Name Program Name

File

Type

SAFE_UTL.V2

a.safe_utl

B

Description

Commission robots that support Category-3 safety requirements.

Overview

In V+ version 15.2 or later, the SAFE_UTL program automatically loads the Cat-3 Safety

Commissioning Utility when it detects a robot that supports Category-3 safety requirements

(ISO 10218 and EN954).

NOTE: For additional details on safety commissioning and safety procedures, refer to the hardware documentation for your robot. Currently,

SAFE_UTL only supports Cat-3 commissioning for AdeptSix 600 robots.

The commissioning process is performed in two phases:

Phase 1 Detects the robot type and initializes the safety parameters for the V+ system. After this step, the system must be rebooted to load the new parameters.

Phase 2 After the system reboots, the SAFE_UTL program steps through the safety commissioning process providing on-screen instructions for each step. The process performs various safety function checks such as testing the servo E-STOP channel and the hardware and software over-speed check in both MANUAL and AUTO modes. If the system meets all safety requirements, the safety commissioning flag is set and saved to the V+ system. When the system is rebooted, a message is displayed confirming that the robot is configured for Category-3 safety requirements as illustrated in the following figure:

Instructions for Adept Utility Programs

169

Requirements

The following items are required to run the Cat-3 safety commissioning process: l

Adept SmartController CS or CX controller l

V+ system software, version 15.2 or later l

One uncommissioned robot (in multi-robot systems, only one robot can be uncommissioned) l

The V+ operating system must recognize the robot (valid RSC installed on robot) l

An MCP-4 must be connected l

The robot/hardware must support Category-3 safety requirements. For an AdeptSix robot, the DAP/MAI hardware must be used.

Usage Considerations

If the system detects more than one uncommissioned robot, the SAFE_UTL program will abort.

Related Topics

SAFE_UTL utility program

Instructions for Adept Utility Programs

170

SFUTIL

SFUTIL

File Name

SFUTIL.V2

Program Name a.sfutil

B

File

Type

Description

Utility for working with data for the MOVEF/MOVESF instructions

Overview

Experimentally determine the parameters for the dynamic model of an AdeptOne-MV, Adept-

Three-MV, AdeptOne-XL or AdeptThree-XL robot, which are used by the MOVEF and MOVESF instructions to predict the speed and acceleration of the robot.

Display the sets of parameters for the dynamic model that are initialized.

Save and load all the configuration data for the robot (including the parameters for the dynamic model) to and from a disk file.

Save the dynamic model data for the robot to a V+ system disk.

For robot systems with the HyperDrive option, the MOVEF and MOVESF instructions drive the robot through a three-segment pick-and-place motion at the optimum speed and acceleration. These instructions rely on a built-in dynamic model of the robot in order to estimate the maximum speed and acceleration that drive the robot in the shortest amount of time without violating the maximum motor torque specifications. For robot applications that require high-speed motions, these instructions allow programs to be written that operate the robot at near-optimum cycle times without the need for manual speed tuning.

Although the form of the dynamic model of the robot is fixed by the design of the robot, the parameters for the model depend on the specific robot and its tooling and payload. The SFU-

TIL program provides an automatic method for experimentally deducing the parameters of the dynamic model, based upon the results of moving the robot at various speeds in a small region of the workspace.

Because of manufacturing variations between robots, this procedure must be performed on each robot. Also, the procedure must be done for each combination of tooling and payload that the robot will carry. This procedure is simple to execute, must be done only one time for each payload, and requires only about 10 minutes to determine one set of dynamic model parameters.

Once a set of dynamic model parameters is determined, this utility allows you to permanently store the computed values, along with a short description, on the system disk.

This utility also displays the descriptions of the data sets that have been stored and provides for writing/reading the full set of configuration data for the robot to/from a disk file.

Instructions for Adept Utility Programs

171

SFUTIL

Requirements

You need the following items to run SFUTIL: l

AdeptOne-MV, AdeptThree-MV, AdeptOne-XL, or AdeptThree-XL robot system with the

HyperDrive option l

Robot end-effectors and payloads that are to be modeled l

Copy of the system diskette if the system is booted from a floppy diskette. (If required, use the DISKCOPY utility program to make a copy of the distribution system diskette.)

Before you can run SFUTIL: l

The robot must be calibrated and COMP mode must be selected on the manual control pendant.

l

No program must be running in the main execution task (#0) or in execution task #1.

Usage Considerations

If you make any change to your V+ system disk, you should clearly mark the system disk to indicate that it has been modified for your specific robot configuration. It is advisable to make a backup copy of the modified system disk. The DISKCOPY utility can be used for that purpose.

The SFUTIL.V2 utility defines many real-valued variables with the prefixes sf. and sp. that must not be modified by you or by other programs. (All these variables are deleted from memory when the program completes execution normally or when a DELETE command is used to delete the program from memory.)

Menu Structure

The SFUTIL utility program displays a menu of selections. The following sections describe the menu items.

Menu

Determine robot's dynamic model parameters

Show description of defined dynamic models

Save robot specifications to a disk

Description

Initiates the procedure for automatically determining the parameters of the dynamic model of the robot.

Displays the sets of dynamic parameters that have been defined by executing the automatic procedure.

Writes all the configuration data associated with the (primary) robot to a disk file.

Instructions for Adept Utility Programs

172

SFUTIL

Menu Description

file

Load robot specifications from a disk file

Save system specifications to system disk

Reads a data file that was created by the previous menu selection, and overwrites the data in memory with the data contained in the disk file.

Stores the robot specification information that is contained in the system memory to the system disk.

NOTE: To exit the program at any prompt, press CTRL+Z.

Determine robot dynamic model parameters

This menu selection initiates the procedure for automatically determining the parameters of the dynamic model of the robot. This procedure moves the robot through a series of predefined motions (relative to the user-defined starting location) and compares the actual performance of the robot to that predicted by the dynamic model.

NOTE: Before executing this procedure, the end-effector and payload that are to be modeled must be attached to the robot.

The following sequence of events is initiated when this procedure is selected.

1. A message is displayed that describes the purpose of the procedure, and you are asked to confirm that the procedure should be performed.

2. A message is displayed describing how much each joint of the robot will be moved during the procedure, and you are asked to position the robot in a clear zone.

3. After confirmation, the robot moves at a slow speed through all the motions that will be performed by the automatic procedure. This allows you to verify that the required clear area is free of any obstacles.

CAUTION: If the robot moves close to an obstacle, you should press the E-Stop button on the pendant to stop the motion.

4. After confirmation, the calibration procedure is initiated and the robot is automatically driven through the motions previously demonstrated. In

Instructions for Adept Utility Programs

173

SFUTIL most cases, each motion is repeated more than once, at various speeds.

WARNING: During the automatic procedure, the robot can be moved at both low speed and very high speed. Also, the robot may not move for several seconds (while a lengthy computation is performed). Such delays are normal and do not indicate that the procedure has completed all of the robot motions.

NOTE: The program moves the robot at increasing speeds, which can exceed the capability of the robot with the attached payload. As a result, it sometimes happens that a motion stops early with the following message displayed:

*Incomplete motion* Retry (R) or Skip (S) this motion?

NOTE: If the robot has already completed that motion at a slower speed, the procedure will usually succeed even if you enter S to skip the failed motion. To be thorough, however, you can try repeating the motion one time, to see if it may be able to be completed, so that more data can be collected.

5. After the automatic process is completed, a table of computed dynamic model parameters is displayed. These values do not have to be written down. They are presented only for diagnostic purposes.

6. You are asked if you want to store the computed set of dynamic parameters in memory. If so, the list of parameter sets currently defined is displayed. After you specify a brief description and which set of parameter values is to be overwritten, the new values are stored in the internal data structures of the V+ operating system.

7. Finally, you are asked if you wish to save the new data onto the system disk. If so, the new data is permanently saved on the system disk.

NOTE: Do not alter the original distribution diskette supplied by Adept. Instead, you should first make a copy of the distribution diskette (with the DISKCOPY utility), and then store your calibration data to that copy.

If the computed values are not written into V+ memory, the results of the procedure are ignored. If the values are not written to the system disk, the results are lost when the controller is turned off.

Show description of defined dynamic models

This selection shows which of the sets of dynamic parameters have been defined by executing the automatic procedure. A list of the possible parameter sets is displayed, followed by either a short description of each data set or the text "*Not initialized*".

Instructions for Adept Utility Programs

174

SFUTIL

Save robot specifications to a disk file

This selection writes all the configuration data associated with the (primary) robot to a disk file. This data includes the sets of dynamic parameters. Depending on the type of robot, the data may also include other values that can be specified by you, such as the software jointlimit stops.

The data is written in the disk file in a readable ASCII format that can be kept as a permanent record of the data and can be used to reload the data.

Load robot specifications from a disk file

This selection reads a data file that was created by the previous menu selection, and overwrites the data in memory with the data contained in the disk file. This selection must be executed only when you are upgrading your robot operating system to a new version or revision and want to reinstate all the robot specifications generated previously, or when you want to change to different sets of parameters.

After the data has been read, the following menu selection must be executed in order to permanently store the data on the system disk.

Save system specifications to system disk

This selection stores the robot specification information that is contained in the system memory to the system disk. If the specification information is contained only in the system memory, the information is lost when the controller is turned off. After the system disk has been altered, the specification information is preserved even when the controller is turned off and the system is rebooted.

NOTE: You should not alter the original distribution diskette supplied by Adept. Instead, you should first make a copy of the distribution diskette (with the DISKCOPY utility), and then store your calibration data to that copy.

Related Utilities

SAFE_UTL

Instructions for Adept Utility Programs

175

SLMOTION

SLMOTION

File Name

SLMOTION.V2

Program Name a.sl_motion

B

File

Type

Description

Routine to avoid singularities while emulating straight-line movement

Overview

The V+ routine MV.SL_MOVE, which is available in the SLMOTION utility, is provided as an alternative to the MOVES instruction, for use when the robot might move close to a configuration singularity.

This routine moves the robot in an emulated straight-line motion to the specified destination location.

The MV.SL_MOVE routine divides a transformation vector into smaller vectors. It then takes each small vector (transformation) and, using the V+ program instruction SOLVE.ANGLES, computes the robot joint positions for this transformation. After performing the relevant checks, the robot is moved, in joint-interpolated mode, as defined by the calculated joint positions. In other words, the program uses many MOVE instructions to move the robot by small steps along the desired straight-line path.

SLMOTION does not support conveyor tracking.

Requirements

Before you can run MV.SL_MOVE: l

The V+ system must be loaded from the system disk.

l

The file slmotion.v2 must be loaded.

Usage Considerations

It is recommended that the MV.SL_MOVE routine be used when the robot is approaching a wrist configuration singularity because, during this motion, joint 4 speed is controlled by

MV.SL_MOVE and there is little risk of other robot joints moving unexpectedly to maintain straight-line tool-tip motion.

If the MV.SL_MOVE routine is used when the robot is approaching an alignment configuration singularity, joint 1 could rotate by 180° in order to maintain straight-line motion.

While the rotation will be slowed by MV.SL_MOVE so it doesn't generate an error, this movement could damage cell tooling or peripheral equipment in the cell if you aren't expecting it.

Instructions for Adept Utility Programs

176

SLMOTION

The MV.SL_MOVE routine is a protected program, so it is not saved to disk when the user application program is STOREd. MV.SL_MOVE must be loaded each time the application program is loaded. This can be done with a LOAD command, with a COMMANDS command, or by having the application program execute an instruction to load the MV.SL_MOVE file.

When the user application program is STOREd, the following message will be displayed:

*Warning* Protected and read-only programs are not stored

Program Parameters

PROGRAM mv.sl_move(loc, steps, error)

NOTE: The variable names used here are examples only. Your application program can use any variable names that you choose.

Input Parameters loc Transformation defining the destination

steps (Optional) Number of interpolation points to use while moving to the destination location

(defaults to 50 if not defined)

Output Parameters error Standard V+ error code passed back to calling routine

Instructions for Adept Utility Programs

177

SLMOTION

Example Code

;

;

;

;

;

;

;

;

.PROGRAM slmotion.demo()

;

; ABSTRACT: This program demonstrates the use of the V+ routine

"mv.sl_move" to deal with a wrist singularity.

The procedure is as follows:

1) The robot moves to a precision point to set up the correct robot configuration for subsequent moves.

2) The robot will move close to a wrist singularity, using the routine "mv.sl_move" to perform the motion.

;

;

; NOTE: The robot will move close to the wrist singularity where Joint 4

; and Joint 6 align.

Please remove all robot end-effectors and tooling so as not to damage them during this demo.

;

;

This routine should be used with an Adept Viper s650 robot.

; INPUT PARM:

;

None

; OUTPUT PARM: None

;

; Copyright (c) 2007 by Adept Technology, Inc.

AUTO REAL points, error

AUTO LOC loc, v.start, v.end

; Enforce maximum 100% of joint speed limits for the attached robot.

PARAMETER SPEED.LIMIT = 100

; Limit the robot speed for the motion to the set-up location.

SPEED 10

; This precision point is required to get the robot into the correct

; configuration for the v.start/v.end Cartesian locations

MOVE #PPOINT(97,-111,192,-30,9.4,-316)

BREAK

; Define the start and end locations.

SET v.start = TRANS(-50,406.713,828.37,93.132,89.199,4.402)

SET v.end = TRANS(-20,406.714,339.719,93.132,89.199,5.628)

; NOTE: If a you use a MOVES instruction to move between these two

; locations, a soft or hard envelope error could occur.

; Make the location farthest from the current robot position the destination.

IF DISTANCE(HERE,v.start) > DISTANCE(HERE,v.end) THEN

ELSE

SET loc = v.start

SET loc = v.end

END

; The number of interpolation points should really be computed to give

; about 64-ms intervals.

points = 50

; Perform the demo motion.

CALL mv.sl_move(loc, points, error)

RETURN

.END

Instructions for Adept Utility Programs

178

Related Utilities/Parameters

SPEED.LIMIT

parameter

SLMOTION

Instructions for Adept Utility Programs

179

SM_CAL

SM_CAL

File Name

SM_CAL.V2

Program Name a.sm_cal

B

File

Type

Description

Setup utility for absolute encoders

Overview

The SM_CAL utility performs the one-time configuration for all SmartModules, Python modules, and MB-10-based mechanisms that use absolute encoders. The Gen-II Z-Theta unit can also be configured using this option. The calibration procedure used depends on the type of axis being calibrated: l

H/M/SZ modules that use absolute encoders.

l

Gen-II Z-Theta module that uses hardstop calibration for the Z-axis, and dualencoder vernier calibration for the Theta axis.

Requirements

Before you can run SM_CAL: l

You must have V+ 16.2 or later installed on your system.

l

You must have SmartModules, Python modules, or MB-10-based mechanisms installed on your system.

l

You must have already configured the modules-based robot using DC_SETUP.

Usage Considerations

The utility is accessed in three different ways: l

As a standalone utility.

l

As a menu option in DC_SETUP.

l

Through the Modules quick-setup process in SPEC.

NOTE: Theta modules can be configure for both "calibrate to here" and "calibrate to hard stop".

For more details on SM_CAL, refer to the section Configure Modules/Servo Kits/Hybrid in the topic

DC_SETUP

.

Instructions for Adept Utility Programs

180

SPEC

SPEC

File Name

SPEC.V2

Program Name a.spec

B

File

Type

Description

Robot specification utility

The SPEC program allows customizing of robot parameters for a particular application. This description documents the restricted-access mode of SPEC that is seen with Adept robots.

The unrestricted-access mode of SPEC is required only for developers of custom robot systems and is documented in the Adept SmartMotion Developer's Guide .

The following options are available only when using the unrestricted mode of the SPEC utility: l

Ability to make changes to the frequency response tests. See

Options for the

Frequency Response Tests

.

l

Ability to add a description to SPEC-generated data files. See

Adding a Description to a

SPEC-Generated Data File

.

l

Support for static friction feedforward compensation. See

Static Friction Feedforward

Compensation

.

l

The Expert User feature. This allows an experienced user to enter select parameters by entering the menu option number followed by a comma and the new parameter value.

l

The ability to set various SPEC Program Preferences that allow you to configure global

SPEC settings.

l

The ability to use a dedicated home sensor when calibrating an AdeptModules device.

l

The ability to specify a manual-mode envelope error limit that allows a smaller envelope error (that is, how far the motor is allowed to lag behind the commanded position) for motions made with the MCP.

l

The ability to create a custom point-to-point motion routine that executes in place of the standard routine in SPEC. See

Custom Point-to-Point Motion Routine

.

l

The ability to specify a unique acceleration and deceleration percentage for the pointto-point motion test during motor tuning. See

Motion Acceleration and Deceleration

Percentages

.

When an Adept robot is accessed, the SPEC utility operates in restricted-access mode, which prevents access to many parameters. The following robot parameters can be changed while in restricted-access mode:

Instructions for Adept Utility Programs

181

SPEC l

The digital signals that control the robot hand or end-effector l

The positional tolerances used at the end of motions l

The robot software joint limits l

User-defined obstacles in the workcell l

The program-controlled motion speed above which accelerations are not to be scaled l

Joint 4 tuning parameters on Adept SCARA robots

The V+ system contains internal data structures that describe robot parameters such as those mentioned above. This internal data can be modified whenever the configuration of any of the robot parameters must be changed to suit a particular application. This program makes the desired changes to the data.

Requirements

You need the following items to run SPEC. All of these, except as indicated, are supplied with your robot system.

l

Adept robot system (or a non-Adept robot controlled with the SmartMotion option) l

Location for storing configuration data file (optional) l

The SMARTLNK.LIB file, available in the UTIL (utility) folder on your V+ software CD-

ROM or controller CompactFlash drive. This file is used when SPEC (or DC_SETUP) accesses any 1394-based Adept nodes.

l

SPECSUB.LIB file, available in the UTIL (utility) folder on your V+ software CD-ROM or controller CompactFlash drive.

Before you run SPEC, the system must have been booted from the actual system disk that will be modified during the configuration procedure.

When the SPEC utility is executed, it checks for the SPECSUB programs in system memory. If the programs are not found, SPEC attempts to load the file SPECSUB.LIB from the following paths:

DISK>B:\ DISK>C:\UTIL\ NFS>XA:\

DISK>A:\ DISK>D:\ NFS>XC:\

DISK>C:\ DISK>D:\UTIL\ NFS>XC:\UTIL\

SPEC searches for the preferences file (SPEC.PRF) in the following paths:

Current default directory specification

D:\SPEC\

B:\ (if available)

Instructions for Adept Utility Programs

182

SPEC

A:\ (if available)

If the preferences file cannot be found or fails to load, the SPEC program reverts to the system defaults and no error is generated.

Usage Considerations

The configuration program defines many real-valued and string variables with the prefix

"sp.". Those variables must not be modified by you or by other programs.

NOTE: Some variables are intentionally left in RAM when the program exits normally. For example, the name of the custom point-to-point motion routine is left in memory (see

Custom Point-to-Point Motion Routine). However, all variables are deleted when a

DELETE command is used to delete the program from memory.

When robot option bits are changed within SPEC, the utility automatically restarts the servo code so that the enabled servo options can be initialized.

NOTE: This restart occurs automatically within SPEC. It is not necessary to reboot the controller.

The "hybrid" configuration of SmartModules, with either legacy modules (LMMV) or thirdparty mechanisms, is disabled. Therefore, when the setup procedure is executed by means of either the SPEC utility or the DC_SETUP utility, only SmartModules are affected.

Menu Structure

NOTE: All menu items (for both restricted and unrestricted access) are listed. The menus and options you see on your system will be a subset of this, as the displayed menus and options depend on the type of robot and external encoder configuration of the V+ system.

Refer to the Adept SmartMotion Developer's Guide for more details.

Menu

Enter password to increase access

SmartServo device quick setup

Change robot options and motor configuration

Description

Refer to the Adept SmartMotion

Developer's Guide for more details.

Allows you to access the DC_

SETUP utility, to set up the

SmartServo system.

Allows you to change the configuration by the motor or joint

Instructions for Adept Utility Programs

183

SPEC

Menu Description

Perform hardware diagnostics

Displays read-only information for troubleshooting the robot system

The following menu items are described in the topic SPEC, Edit Robot Initialization

Specs on page 204.

Edit robot specifications

The following menu items allow you to edit selected robot specifications.

Edit robot initialization specs

Allows you to change the default robot-level parameters

Edit startup message

Edit module password

Calibration file name

Robot model number

Specify a message to be displayed at robot boot-up

Specify a password needed to modify the configuration

Specify a V+ calibration program that automatically loads and executes when the CALIBRATE monitor command or program instruction is processed

Set the robot model number

Robot serial number

Hand OPEN signal

Hand CLOSE signal

*Time-out nulling* error limit

(sec)

Set the robot serial number

Change the Hand OPEN or Hand

CLOSE signal specifications

Specify the time limit for achieving the nulling tolerance

Instructions for Adept Utility Programs

184

SPEC

Menu

Time required for clutch to engage (sec)

Time required for brakes to release (sec)

Time required for brakes to engage (sec)

Max time to wait for high power (sec)

Delay from high power on to amp enable (sec)

Max time to wait for amp enable (sec)

Machine signal filter configuration

Manual mode E-STOP shutdown timeout (sec)

Auto mode E-STOP shutdown timeout (sec)

Hold-to-run E-STOP shutdown

Description

Specify the time allowed for clutch engagement before the high-power sequence continues

Specify the time allowed for the brakes to release before a motion is performed

Specify time between brake engagement and amplifier disabling

Specify maximum time V+ will wait before reporting a failed startup

Specify time between high power being turned on and the amplifiers being enabled

Specify time V+ will wait for servos to report amp faults are clear and amp is enabled

Specify time that axis signals must be asserted before being recognized by the servo board

Select a time delay after an

ESTOP is detected before power is removed from the robot motors

Instructions for Adept Utility Programs

185

SPEC

Menu

timeout (sec)

Description

The following menu items are described in the topic SPEC, Edit Encoder Specs on page 211.

Edit motor amp/encoder specs

Edits the motor and encoder parameters.

Change motor number

Encoder scale factor (ct/mm or ct/deg)

Specify the encoder you want to configure.

Specifies the encoder counts to physical movements, calibrated in real units (millimeters or degrees), for the system.

Encoder counts per zero index

(ct)

Encoder configuration (zero index)

Encoder Zero-Index Checking

Encoder Quadrature Checking

Specifies the number of encoder counts between each zero-index on the encoder.

Defines the manner in which the encoder circuitry reads the zeroindex pulse from the encoder, and is set to match the specific type of encoder in use.

Enables or disables the encoder zero-indexing reporting safeguard.

Enable or disable the quadratureerror reporting safeguard.

Broken-Wire Detection

Used to temporarily disable the broken-wire detection safeguard during hardware diagnostic testing.

Instructions for Adept Utility Programs

186

SPEC

Menu

Easy Encoder Filter configuration

Advanced Encoder Filter configuration

Encoder sign

Description

Used to add additional filtering to the encoder signal to reject errors due to noise. Additional filtering will reduce the maximum encoder rate.

Max accumulated encoder noise counts

Max encoder noise counts per rev

Defines the relationship between the direction of the encoder and the direction of the motor.

Defines the noise tolerance for the index position during the encoder A and B phases.

Defines a noise tolerance for the index position on the zero-index line.

Perform hardware diagnostics

The following menu items are described in the topic SPEC, Edit Motor Amp Specs on page 221.

Motor sign

Used to make sure the torque command acts in the proper direction to correct errors.

Commutation sign

Displays the "Perform hardware diagnostics" menu to test the new parameters specified using the Encoder Specifications menu.

Specifies the sign of the commutation data output by the servo. This parameter is coupled to the encoder sign parameter.

Maximum DAC output

Used to limit the output of the analog DAC command. This is

Instructions for Adept Utility Programs

187

SPEC

*Duty-cycle exceeded* DAC limit

*Duty-cycle exceeded* filter parameter

*Soft envelope error* limit

(cts)

*Hard envelope error* limit

(cts)

Menu

Maximum DAC output in Manual mode

*Motor stalled* timeout (sec)

Description useful as a safety feature to limit the maximum torque or velocity

(depending on the type of drive).

Specifies the maximum output the servo can send to the DAC during Manual Control mode.

Used to prevent overexerting the motor or drive system.

Specifies the low-pass filter through which the root mean square (RMS) DAC value is fed before comparing it to the above limit.

Used to specify a timeout (in seconds) for a "motor stalled" condition. When full torque is commanded for the specified amount of time, the robot is assumed to be stalled, high power is disabled, and a *Motor stalled* error is generated.

The envelope error is monitored during execution of motions, and those values are compared against this parameter. If the specified limit is exceeded, a

*Soft envelope error* message is generated, and the motion comes to a controlled stop. Note that High Power stays on.

Differs from the Soft envelope error—if the specified limit is exceeded, High Power is turned off immediately.

Instructions for Adept Utility Programs

188

SPEC

Menu

*Manual mode envelope error* limit (cts)

Velocity envelope error limit

(ct/ms)

Machine input polarity

Axis-error time delay config

*Skew error* limit (cts)

Description

Used to configure a smaller envelope error for motions made with the manual control pendant.

Specifies the servo velocity error limit in Current mode, which is only active during calibration.

Controls whether various signals are active-high or active-low using the machine input polarity value. This provides more flexibility in your choice of sensors.

Specifies a time period in which axis errors are not monitored after the amplifier power is enabled. This acts as a filter for noise errors caused by powering up the amplifier.

Defines the maximum skew error (difference between the position errors of the split axes of a gantry allowed before a *Skew

Error* is sent to V+. It is in units of encoder counts.

Default motion speed

(ct/msec)

Perform hardware diagnostics

Specifies the default speed of a motor during servo-controlled trajectories. Most trajectories are

V+ controlled.

Displays the Perform hardware diagnostics menu to test the new parameters specified using the

Amplifier Specifications menu.

The following menu items are described in the topic SPEC, Edit Motor Tuning Parameters on page 227.

Instructions for Adept Utility Programs

189

SPEC

Menu

Edit Motor Tuning Parameters

Change motor number

Proportional gain...

Proportional zero...

Proportional pole...

Integral gain.....

Max integrator value

Max integrator step

Velocity feedforward

Description

The servo tuning parameters affect the performance and stability of the servo loop for each motor. This menu provides the capability to interactively tune these parameters to show graphically how they influence robot motion.

Used to select a different motor for tuning.

Causes the control system to output a torque that is proportional to the position error (commanded position minus the actual position.

Affects the dynamic response of the servo system.

The Pole, like the Zero, affects the dynamic response of the servo system.

Used to eliminate steady-state errors and improve tracking.

Specifies the maximum value the accumulated (or integrated) error may achieve.

Specifies the largest position error for a given servo cycle (ranging from 0.125 to 2 ms) that will be added to the accumulated or integral error.

Used to generate a torque proportional to the commanded velocity. This parameter is useful

Instructions for Adept Utility Programs

190

SPEC

S-A (split-axis): Skew error gain

Menu

Accel feedforward...

Static Friction Fdf...

Filter Configuration

DAC Output filter

S-A (split-axis): Skew velocity error gain

Select test

Description to reduce tracking error during long slewing motions on systems with a measurable amount of viscous friction.

Used to generate a torque proportional to the commanded acceleration/deceleration.

Minimizes tracking errors by providing a corrective torque proportional to the friction in the system.

Configures the servo's internal

2nd-order filter to reduce highfrequency oscillation.

A low-pass digital smoothing filter that affects the final torque command.

Defines the scale factor applied to the skew error (difference of the position error between the coupled axes) to generate the adjusted torque.

Defines the scale factor applied to the skew velocity error (difference of the velocity error between the coupled axes) to generate the adjusted torque.

The tuning process breaks the overall tuning task into two major subsections. First, manual feedback gain tuning determines good values for the Proportional and Integral paths. These parameters are critical for minimizing

Instructions for Adept Utility Programs

191

SPEC

Menu

Test and plot

Test and display

Export results

Current loop parms

Description motion settling time and overshoot. Second, automatic (or manual) feedforward gain tuning improves trajectory tracking by estimating the motor command required to follow a trajectory and "feeding forward" or adding that command to the motor.

Used to select a test—the robot will move to perform the test selected. There will be a few-second pause while the system collects data, then you will see a display plot of the parameters you requested.

Similar to the previous option, except that instead of capturing data during the test and plotting it afterwards, it provides a continuously-updated live display of the selected parameters.

After using the Test and Plot option, you can export the results using one of the available options.

Used to adjust the current loop control parameters.

Internal feed forward and feedback loop. Does not require user adjustment.

Adaptive Feedforward

Enables adaptive feedforward control, which may significantly reduce position and tracking errors.

The following menu items are described in the topic SPEC, Edit Motor Calibration

Instructions for Adept Utility Programs

192

SPEC

Menu

Parameters on page 242.

Edit Motor Calibration Parameters

Description

Change motor number

Change homing configuration

Encoder type

Joint-encoder counts/index

Motor counts/joint revolution

Drive train backlash

Enable and reset absolute encoder

Allows users with AdeptModules,

SmartModules, Pythons, sMI-6, and third-party mechanisms controlled by an Adept Controller to change the homing configuration.

Selects the motor number for editing.

Changes the homing configuration for the system.

Specifies the type of encoder attached to the motor.

Specifies the number of encoder counts between zero indices for the JOINT encoder.

Specifies the total number of motor counts per 360 degrees of joint travel.

Cancels the effects of backlash for the specified joint.

Updates the motor position at zero index and sets the active motor position to 0.

The following menu items are described in the topic SPEC, Edit Joint, Link, Cartesian,

General, S-curve, Collision on page 252.

Edit joint motion specs

The following parameters adjust each joint of the robot

Change joint number

Selects the joint number for editing.

Instructions for Adept Utility Programs

193

SPEC

Menu Description

FINE nulling tolerance (cts)

COARSE nulling tolerance (cts)

Changes the positioning tolerances used at the end of any motion that requires nulling

Lower joint limit (mm or deg)

Upper joint limit (mm or deg)

Changes the individual robot joints from their standard settings to limit robot joint travel

Edit link parameters

Edit Cartesian motion specs

Cartesian Speed and Acceleration

Cartesian translation speed at

SPEED 100 (mm/sec)

Cartesian rotation speed at

SPEED 100

Translation acceleration at

ACCEL 100 (mm/sec)

Used to specify the link dimensions for the robot.

These menu options are used to define the motion parameters for a Cartesian robot.

Defines various speeds and accelerations for Cartesian motion along a straight line path as commanded by the MOVES program instruction.

Specifies the maximum speed for the robot's tool tip during a Cartesian translation at SPEED 100.

Specifies the maximum speed at which the tool tip will rotate about a specified axis during a

Cartesian motion at a rotational

SPEED 100.

Specifies the maximum tool tip acceleration that can be achieved when ACCEL 100.

Instructions for Adept Utility Programs

194

SPEC

Menu

Accel for 1st rotation at ACCEL

100 (deg/sec)

Max WORLD/TOOL pendant translation speed (mm/sec)

Max WORLD/TOOL pendant rotation speed (deg/sec)

Time to reach max

WORLD/TOOL pendant speed

(sec)

Min WORLD/TOOL pendant translation increment (mm)

Min WORLD/TOOL pendant rotation increment (deg)

Edit general motion specs

Description

Specifies the maximum rotational acceleration that can be achieved about a Cartesian axis when ACCEL 100 is specified.

These parameters determine the speed and acceleration settings that are used when a robot is moved manually using the pendant.

The general motion specifications establish the motion speed and acceleration limits as well as the start-up values for these parameters. The maximum allowable values help prevent users from placing excessive demands on

Instructions for Adept Utility Programs

195

SPEC

UNDO SPEC changes

Change robot number

Menu

Edit S-Curve trajectory profiles

Edit collision detection specs

These menu options are used to create custom acceleration profiles to control motion. If no profiles are defined, the default square-wave acceleration profile is used.

This menu item allows you to edit the parameters for detecting, and thus preventing, collisions between the robot endeffector and objects in the workcell.

The following menu items are described in the topic SPEC, Load, Save, UNDO,

Change on page 263.

Load robot specifications from a disk file

Loads robot configuration data from a disk file created with the

Save robot specifications to a disk file

menu item.

Save robot specifications to a disk file

Save ALL specifications to system disk

Description the system. The default start-up values allow you to control accelerations and acceleration profiles used until user override.

Stores robot data in a disk data file.

Writes all the existing configuration data to the V+ system disk.

Restores any SPEC changes in

RAM memory to the original settings.

Allows you to access data for another robot.

Instructions for Adept Utility Programs

196

SPEC

Menu

Switch to external encoder specifications

Display SmartServo network information

Edit SPEC program preference

Description

Edits the external encoder parameters.

Displays the existing SmartServo network information (e.g., nodes, device type, serial numbers, etc.).

Configures defaults for the SPEC program.

If an Auto Backup preference has been set, each time SPEC is executed the Auto Backup feature is enabled and will prompt you to overwrite the stored backup file.

The SPEC robot configuration utility program then displays the initial screen.

NOTE: You may see some differences in the menu contents due to your system configuration. The menus display only those items that are relevant in the current context.

You may see more or fewer items, and they may be numbered differently from the examples.

Instructions for Adept Utility Programs

197

SPEC

Initial SPEC Screen

NOTE: You can exit the program at any prompt by pressing CTRL+Z. However, this leaves all the program's global variables defined in memory. You can delete these variables by restarting the program and then exiting with the main menu "Exit" selection.

Related Utilities

CONFIG_C

DC_SETUP

Instructions for Adept Utility Programs

198

SPEC, SmartServo, Change Robot, Diagnostics

File Name Program Name

File

Type

Description

SPEC.V2

a.spec

B Robot specification utility

SmartServo device quick setup

This menu item allows you to access the SmartServo quick setup utility. See

DC_SETUP for

V+

for details.

Change robot options and motor configuration

This menu item displays the motor/joint configuration and allows you to change the configuration of the motor or joint.

NOTE: For information on robot option bits, see the appropriate kinematic module documentation for your robot. To determine what kinematic module is in use, type "ID" at the monitor prompt. In the output for the ID command, the last number on the Robot information line indicates the ID number for the kinematic module. For example, if the robot info line is: "Robot: 0-0 0-0 38", then the device module ID is 38.

Robot Options and Motor Configuration Screen

Instructions for Adept Utility Programs

199

Perform hardware diagnostics

The "Perform hardware diagnostics" option provides information on each node in the system for the selected robot. The items analyzed and reported are: l

Motor (Board/Channel or Node/Gadget) l

Encoder position l

Last zero-index l

Home l

Overtravel l

Amp fault l

Amp enable l

Brake release l

DAC voltage l

DAC count

This utility also allows you to select various diagnostic options, which are described in step

2 .

To use the "Perform hardware diagnostics" option:

1. Select the "Perform hardware diagnostics" option from the main menu and then press

ENTER. The following screen is displayed:

Instructions for Adept Utility Programs

200

2. Press P to toggle power ON/OFF.

When power is on, the display is updated continuously and appears similar to the following:

Instructions for Adept Utility Programs

201

Each of the diagnostic options is listed and described in the table below.

Shortcut Option

A Toggle amp enable

U

D

Increase

DAC quickly

Decrease

DAC quickly

Description

Turns the AMP Enable signal to the amplifier on and off. Can be used to verify that the wiring is correct from the MI-X board. This must be enabled before any DAC can be given to the amplifier.

Pressing U once will increase the DAC Voltage 'UP' by the amount specified in the DAC Increment. Pressing D once will decrease the DAC Voltage 'DOWN' by the amount specified in the DAC Increment.

These can be used to apply DAC directly to the motor from the amplifiers. Increasing and Decreasing the DAC is a particularly useful tool for verifying that DAC wiring is correct.

Max and Min DAC values are determined by parameters set in the Edit Motor/Encoder Specs section of SPEC.

Instructions for Adept Utility Programs

202

C

R

+

-

P

ENTER

1 - 4

Change

DAC Increment

This determines the incremental amount of DAC applied to the amplifier when the U or D key is pressed once.

Toggle brake release

Turns the brake release on or off for an axis. Use of this depends on whether or not the axis has a brake.

Note that if it is a vertical axis, the brake release may cause the axis to drop.

Increases DAC in increments of 4 counts each time the key is pressed.

Increase

DAC slowly

Decrease

DAC slowly

Toggle power

Decreases DAC in increments of 4 counts each time the key is pressed.

Turns robot High Power on and off. Note that this is different from the SWITCH POWER (e.g. when you ENABLE POWER).

Using P to toggle power does so without V+ involvement, and no software error checking. ENABLE POWER is a V+ function, with V+ control and error checking.

Zero DAC, redraw

Change selected motor

Resets the DAC to zero (i.e., there is no current going to the motors).

Select the motor/amplifier that will receive subsequent commands.

3. After you have finished using the diagnostics options, press Q or 0 to quit and return to the main menu.

Related Utilities

CONFIG_C

DC_SETUP

Instructions for Adept Utility Programs

203

SPEC, Edit Robot Initialization Specs

File Name

SPEC.V2

Program Name a.spec

B

File

Type

Description

Robot specification utility

This menu item allows you to edit selected robot specifications.

The following menu items are displayed at this level:

Robot Specifications Screen

The "Edit robot initialization specs" option allows you to configure general robot specifications. These are generic parameters that apply to the entire robot system, not one axis.

For many systems, the default values of these parameters will be adequate to operate the mechanism, but for some amplifiers, the power-sequence parameters will need to be changed.

This document provides detailed information about the Robot Initialization Specifications menu options available in the SPEC utility program. When you select a menu option, the following information is provided on the screen: l

Instructions for the specified option l

Current value l

Value range for the parameter if applicable

Instructions for Adept Utility Programs

204

Menu Options

Edit startup message

The start-up message for each robot is displayed after booting from the system disk. It should be a text string (up to 79 characters long) that describes the mechanism being controlled. The default message is the name of the kinematics module being used (for example, "X/Y/Z/Theta Robot Control Module").

Edit module password

Specifies a password that must be entered before the user is allowed to modify most of the configuration and servo tuning parameters for the currently selected device.

When a password is specified, the SPEC utility program operates in restrictedaccess mode until the user enters the password. Restricted-access mode, which is described in this document, allows users to change only certain parameters such as the FINE and COARSE nulling tolerances, hand (gripper) control signal output channel numbers, and user-specified joint limits. The unrestrictedaccess mode of SPEC is described separately, in the Adept SmartMotion Developer's Guide .

Before specifying a password, see Password Protecting SPEC Data .

Calibration File Name

Specifies the V+ calibration program that automatically loads and executes when a CALIBRATE monitor command or program instruction is processed. For most robot systems, the default calibration program, STANDARD.CAL is sufficient for any normal calibration operations as described later in this chapter.

Robots with absolute encoders or other custom needs will need a special calibration program. If you have such a robot, should contact the Adept Applications department for more help.

See Customizing Calibration for more information on custom calibration.

Robot Model and Serial Number

These parameters assign a custom robot number and serial number for each robot. These numbers are provided in addition to the controller model and serial number assigned by Adept Technology. All robot model and serial numbers can be read using the ID monitor command and ID real-valued function.

The robot model and serial numbers assigned using this menu option are not used by the Adept software. They are provided to help you track and identify your robots after they have been shipped to your end-user.

Instructions for Adept Utility Programs

205

Hand OPEN and CLOSE signals

These menu items allow you to change the default hand OPEN and CLOSE signals

The numbers of the digital signals accessed by V+ for controlling the end-effector are stored on the V+ system disk. These menu items permit you to change these specifications.

The default settings for the gripper signals are listed in the user's guide for the robot. These can be changed to any of the robot I/O signals (3001 to 3008), digital output signals (numbered 1 to 8 and 33 to 512), and internal software signals (2001 to 2512). Setting a negative signal number indicates that the gripper valve will be activated when the signal is deasserted.

Two channel numbers can be defined, one for Open and one for Close. For non-

Adept robots, the default value for both signals is 0, indicating that no gripper/tooling is in use.

The signals are operated in a continuous-duty manner so that spring-return pneumatic valves may be used. The signals may be specified as active high or active low. (For active low, specify a negative channel number.)

After initialization, the digital output signals can be controlled using:

OPEN and OPENI: turn on the Open signal, and turn off the Close signal

CLOSE and CLOSEI: turn off the Open signal, and turn on the Close signal

RELAX and RELAXI: turn off both signals

The T1 key on the MCP (Manual Control Pendant)

WORLD, TOOL and JOINT modes of the MCP allow the gripper to be opened and closed using T1 and the speed-control potentiometer. In

FREE mode, the MCP T1 key relaxes the gripper.

NOTE: The hand signal parameters can also be edited in the restrictedaccess mode of SPEC.

Power Sequencing Parameters

The power-on/power-off sequence used by the Adept SmartMotion system is controlled by the following robot initialization parameters. For details on how these parameters are used, see Adept SmartMotion Systems: Power Sequencing .

*Time-out nulling error* limit (sec)

Specifies the time limit (in seconds) for the device to achieve the nulling

Instructions for Adept Utility Programs

206

tolerance defined by the FINE and COARSE nulling parameters specified in the

Joint Motion Parameters.

At the completion of a program generated motion, the deviation between the robot's position and the commanded destination is compared against either the

FINE or COARSE tolerance limits. If the deviation does not fall within the tolerance range in the time specified by the nulling time-out value, robot power will be disabled and an error will be generated.

Time required for clutch to engage

After activating the clutch, this parameter specifies the amount of time to wait

(for the clutch to engage) before the V+ system high-power sequence continues.

This parameter is appropriate only if you have a clutch that disengages the drive from the motor when a robot joint is in FREE manual-control mode. The clutch is operated by the FREE Mode Digital Signal defined in the Joint Motion Parameters Menu.

Time required for brakes to release

After releasing the brakes, this parameter specifies the amount of time that the

V+ operating system will wait before performing any motions. Setting a delay prevents the robot from moving when the brakes are still engaged.

Time required for brakes to engage

After turning on the brakes, this parameter specifies the amount of time to wait before disabling the amplifier. Setting this delay provides time for the brakes to engage when the power is disabled.

Max time to wait for high power (sec)

After enabling the servos, this parameter specifies the maximum amount of time V+ will wait before reporting an unsuccessful startup.

Delay from high power on to amp enable (sec)

After successfully enabling high power, this parameter specifies the amount of time the V+ operating system will wait before enabling the amplifiers.

Max time to wait for amp enable (sec)

After enabling the amplifiers, this parameter specifies the maximum time the

V+ operating system will wait for the servos to report that amp faults are clear and that the amp is enabled.

Instructions for Adept Utility Programs

207

Machine signal filter configuration

The machine signal filter configuration specifies a time period for which the axis signals must be asserted before the signal is recognized by the servo board.

This acts to filter out noise on the axis signals. The filter is applied to Overtravel,

Home and Drive Fault signals. The following selections are available:

6

7

4

5

1

2

Value Description

0 No time delay

3

0.100 sec

0.200 sec

0.400 sec

0.800 sec

1.600 sec

3.200 sec

6.400 sec

Manual mode E-STOP shutdown timeout (sec)

Auto mode E-STOP shutdown timeout (sec)

Hold-to-run E-STOP shutdown timeout (sec)

These three programmable ESTOP delay-time parameters allow you to specify a time delay after an ESTOP is detected before power is removed from the motors of the robot. This time delay gives V+ time to decelerate and stop the robot using motor power, reducing the mechanical jerk on the mechanism.

NOTE: The programmable ESTOP feature is available on systems that have a SmartController or an AWC Gen-II processor, except for those systems that use the Adept Manual Mode Safety Package (MMSP) (CE Category 3).

When DISABLE POWER is executed, V+ has full control of the power shutdown process. V+ slows the robot to a stop, applies the brakes, and then removes power.

Actual stop times depend on the speed of the robot, the payload, and the deceleration of the stop for the robot.

Instructions for Adept Utility Programs

208

SmartController

NOTE: There is no MMSP for the SmartController.

After an ESTOP signal is detected, power is removed from the motors of the robot in approximately one-half second. Setting the programmable ESTOP delay-time parameters to stop the motors within that half second gives the robot time to stop, settle, and apply the brakes before power is removed.

During an ESTOP power-down, the power-shutdown process starts its time delay (depending on the robot mode and the corresponding shutdown timeout setting). V+ then performs a controlled power-down within that time limit.

Timeout value less than or equal to 0.5:

Allows V+ to manage power after an E-STOP occurs.

The maximum timeout you can specify is 0.5. If you specify a higher value, the hardware overrides the software setting and cuts power to the motors.

Timeout value = 0

Disables the E-STOP timeout parameter, which results in motor power being cut instantly when an

E-STOP occurs. The robot will stop based on mechanical resistance and any available brakes. This can result in some robot motion until the brakes engage.

AWC Gen-II

After an ESTOP signal is detected, power is removed from the motors of the robot in approximately one second. Setting the programmable ESTOP delay-time parameters to stop the motors within that one second gives the robot time to stop, settle, and apply the brakes before power is removed.

During an ESTOP power-down, the power-shutdown process starts its time delay (depending on the robot mode and the corresponding shutdown timeout setting). V+ then performs a controlled power-down within that time limit.

Timeout value less than or equal to 1:

Instructions for Adept Utility Programs

209

Allows V+ to manage power after an E-STOP occurs. The maximum timeout you can specify is 1.

If you specify a higher value, the hardware overrides the software setting and cuts power to the motors.

Timeout value = 0

Disables the E-STOP timeout parameter, which results in motor power being cut instantly when an

E-STOP occurs. The robot will stop based on mechanical resistance and any available brakes.

This can result in some robot motion until the brakes engage.

To set a shutdown timeout parameter, select one of the three programmable

ESTOP delay-time parameters from the "Edit robot initialization specs" menu.

Related Utilities

CONFIG_C

DC_SETUP

Instructions for Adept Utility Programs

210

SPEC, Edit Encoder Specs

File Name

SPEC.V2

Program Name a.spec

B

File

Type

Description

Robot specification utility

Menu Options, Encoder

Change encoder number

Use this menu option to select the encoder you want to configure. The current encoder selection is displayed at the top of the menu page.

Edit encoder scale factors

The Adept SmartMotion system supports coordinate systems, which are calibrated in real units (millimeters or degrees). To accomplish this, scale factors, which relate encoder counts to physical movements must be defined to the system. If a joint is rotary, the units for this parameter are encoder counts per degree. If the joint is linear, then the units for this parameter are encoder counts per millimeter. This parameter must take into account all gearing, which exists between the encoder and the joint.

Most mechanism kinematics modules contain only one motor for each joint. In these cases, there is a single scale factor for each motor/joint, and SPEC will allow only a single value to be entered for each motor.

Mechanisms that allow multiple motor-to-joint coupling require the specification of a scale factor for each joint affected by the selected motor's motion.

In these cases, SPEC will prompt for as many scale factors as necessary to characterize the coupling. Each scale factor may be calculated by determining how much the selected motor moves when only the indicated joint is allowed to move.

If a kinematics module allows motor-to-joint coupling, but none is desired, then set all the scale factors to zero except those for which the motor number and joint number are the same.

When multiple motor-to-joint coupling is present, the scale factors entered for each motor form a row in a coupling matrix used internally by V+. This matrix must be invertible so that V+ can determine how the joints move for a given motor motion, and also how the motors should move given a desired joint motion. If the matrix cannot be inverted, SPEC will warn the user of an inconsistency in the motor-to-joint coupling. If SPEC reports this error, be sure to

Instructions for Adept Utility Programs

211

correct the inconsistency by entering the proper scale factors BEFORE any attempt is made to control the affected joints from V+. V+ will not be able to move the joints correctly without the proper scale factors.

Encoder specifications often state the number of lines per revolution. Because the Adept SmartMotion hardware uses quadrature decode circuitry, it is necessary to multiply the number of lines per revolution by four to calculate the number of counts per revolution.

When calculating and entering this parameter, it is very important to use as much accuracy as possible. The value should be entered as an expression or the decimal portion of the number should be entered to eight significant digits. This scale factor is critical to achieve motions, which are accurate.

Sample scale factor calculations are shown below.

Example 1:

Linear motion achieved via the use of a lead-screw drive. The lead screw requires 2 revolutions per inch of travel. The encoder (800 lines per revolution) is mounted directly to the back of the motor shaft and the lead screw is directly coupled (no gearing) to the joint.

Example 2:

A jointed-arm robot has a joint that rotates. The joint is driven through a harmonic drive with a gear reduction ratio of 45 to 1.

The encoder is mounted directly to the back of the motor shaft and has 1000 lines per revolution.

Example 3:

A gantry mechanism contains five joints, and the last two contain multiple motor-to-joint coupling. It is known that if joint 5 is held stationary and joint 4 is moved 1 degree, then both motors 4 and

5 will move 400 counts. Also, if joint 4 is held stationary and joint

5 is moved 1 degree, then motor 4 will not move, and motor 5 will move -1200 counts. The scale factors are therefore as follows:

Joint 4 to motor 4 scale factor (counts/degree) =

400

Joint 5 to motor 4 scale factor (counts/degree) = 0

Instructions for Adept Utility Programs

212

Joint 4 to motor 5 scale factor (counts/degree) =

400

Joint 5 to motor 5 scale factor (counts/degree) = -

1200

Encoder counts per zero index (ct)

Specifies the number of encoder counts between each zero-index on the encoder. Because an encoder normally has only one index per rotation of an encoder, the value is usually the same as the number of counts per revolution

(or four times the number of lines per revolution).

Some linear encoders have only one zero-index in the entire range of motion.

In such a case, the number of encoder counts per zero-index should be set to any value greater than the number of counts in the encoder from end to end.

Zero-index checking will still function: any stray index pulse will cause an

*Unexpected zero index* error and failure to detect the single index at the correct encoder count will cause a *No zero index* error.

Other encoders have no zero-index at all. In that case, set the number of encoder counts per zero index to 0.

Encoder configuration

The zero-index configuration defines the manner in which the encoder circuitry reads the zero-index pulse from the encoder, and is set to match the specific type of encoder in use. The zero-index is often used as a calibration reference.

(The zero-index pulse is also sometimes known as the Index Pulse, the Marker

Pulse or the C-channel.) It may also be used, in conjunction with the Encoder counts per zero index parameter, to help detect certain encoder faults. Zeroindex pulses may be active low or active high, and an active pulse transition may occur in conjunction with the rising or falling edge of either the A or B channel. Most encoder manufacturers provide timing diagrams that describe the relationship of the zero-index pulse to the A and B channels. The timing diagram indicates the most reliable point at which to set the zero-index configuration. By gating the zero-index pulse near its center, you can be confident of its stability, even at high speeds.

Zero-Index Configuration Table

Configuration Value (bits 1 to 3)

0 1 2 3 4 5 6 7

A Phase Low High Low High Low High Low High

B Phase Low Low High High Low Low High High

Instructions for Adept Utility Programs

213

Index Low Low Low Low High High High High

Encoder Zero-Index Checking

This parameter is used to enable or disable the encoder zero-indexing reporting safeguard.

Encoder zero-index error checking is used to detect incorrect encoder zeroindex configuration. If the encoder configuration is incorrect and the robot is moved, the robot will power down with an *Unexpected zero index* or *No zero-index* error.

If you are using an encoder that doesn't have a zero-index, or one that is not registered, this parameter can be disabled (not recommended).

Excessive noise may cause encoder zero-index errors. If the noise is repeatable, use the "Max accumulated encoder noise counts" and "Max encoder noise counts per rev" parameters to establish a noise tolerance that will allow some index errors to occur before generating an index error. For non-repeatable noise, temporarily disable the Encoder Zero-Index Checking parameter. However, even if zero-index error-reporting is disabled, the correct zero-index configuration will still be required if the zero-index is used for calibration. (See

Encoder (Zero Index) Configuration for details on configuring the encoder.)

NOTE: The "Encoder Zero-Index Checking" is the best tool for checking the quality of an incremental encoder. If index errors are occurring with a correct configuration, then the controller is gaining or losing counts and the axis will not be in the correct mechanical position. The Quadrature check is a much less sensitive measure of electrical noise problems.

Encoder Quadrature Checking

This parameter is used to enable or disable the quadrature-error reporting safeguard.

Quadrature-error checking is used to detect an illegal state change in the A and

B phases, which occurs if both A and B change state during the same clock cycle. Because the A and B phases should be 90 electrical degrees apart, this should not normally happen. If this condition is detected, the system generates an *Encoder quadrature error*.

Quadrature errors may be a result of electrical noise, or an incorrect digital filter setting as illustrated in the figure below. Electrical noise may cause an illegal state change on B during the filter clock period in which A is transitioning legally. An incorrect digital filter setting may cause the error if the encoder has

Instructions for Adept Utility Programs

214

very short periods between transitions when the axis is moving at a high speed, and the digital filter is set to the slowest clock rate and minimum number of stages. Under these conditions, the system may detect a legal A transition followed by a B transition within a single clock cycle.

Illegal State Changes in A and B Phases

If you are getting the *Encoder quadrature error* message during hardware diagnostic testing, you can temporarily disable this parameter to proceed with testing. However, the conditions causing the error should be addressed.

Broken-Wire Detection

Use this option to temporarily disable the broken-wire detection safeguard during hardware diagnostic testing. When broken-wire detection is enabled, the system generates an *Encoder Fault* error if the hardware detects loss of signal from either one or both of the differential signals from channels A or B of

Instructions for Adept Utility Programs

215

the encoder. This safety check is available only on systems wired for differential encoders. This feature must always be disabled on systems wired for singleended (non-differential) encoders.

If the encoders are wired for differential operation, but your encoders are not providing true RS-422 signals, you must disable "Broken-Wire Detection".

Adept strongly recommends the use of RS-422 differential encoders, so that you can use the "Broken-Wire Detection" feature.

CAUTION: When using broken-wire detection, be careful when wiring encoder signals. Noisy signals may report

*Encoder Fault* errors when detection is turned on. It is important to configure the encoder digital filter to a proper setting to avoid noise interference and miscounts.

Details

For a differential encoder using RS-422-type outputs, the two signals, (A+ and

A-, B+ and B-) must be in opposite states except during a transition. If one of the +/- pair is not in opposition of the other (e.g., A+ must be 5 V when A- is 0 V and vice versa), the hardware will detect an apparent fault condition and generate the *Encoder Fault*error. The broken-detection test will detect when one or both of a pair (e.g., A+ and A-) are open (i.e. broken), when one or both are connected to 5 V or ground, or when the two are shorted together. The test may sometimes detect when one signal is crossed with a different pair (e.g. A+ and B- are paired to A).

By definition, the "Broken-Wire Detection" check cannot be performed for single-ended (non-differential) encoders. If you have installed a single-ended encoder, you must disable the "Broken-Wire Detection" check to avoid a continuous error condition. For more information on encoders, see Encoder Input

Configuration in the Adept SmartMotion Developer's Guide .

WARNING: It is important to enable the zero-index, quadrature, and broken-wire detection during normal execution; otherwise, selected errors will not be reported even if the encoder is malfunctioning. It may result in the servo's encoder position counter gaining or losing counts so that the axis will not move to the correct mechanical position.

Easy Encoder Filter configuration

The encoder inputs are digitally sampled and filtered. If the encoders are excessively noisy, or electrical interference is affecting the encoder power supply or

Instructions for Adept Utility Programs

216

wiring, you can add additional filtering to the encoder signal to reject errors due to noise. Additional filtering will reduce the maximum encoder rate.

For high-speed encoder counting applications, you may need to change the default setting to less filtering, that is, higher clock rates. However, with less digital filtering, you need to take more care in your wiring to avoid electrical interference. (See the Adept SmartMotion Developer's Guide for details on wiring the Adept SmartMotion system.)

The Easy Encoder Filter option provides a subset of encoder filter values that can be applied. For more detailed information on applying the encoder filter, or for a wider selection of filter values, see the "Advanced Encoder Filter" menu option.

Using the Easy Encoder Filter option, enter one of the following values to change the maximum encoder rate:

Encoder

Filter

Value

0

3

4

1

2

5

Maximum

Encoder Rate

(MHz)

65.536

39.321

32.768

10.923

2.731

0.171

Advanced Encoder Filter configuration

You can add additional filtering to the encoder signal to reduce errors due to noise. If you do so, however, it will reduce the maximum encoder rate.

Before configuring the filter, calculate the maximum encoder edge rate frequency. The encoder rate is determined by the values selected for Encoder

Filter Stage and Filter Frequency Clock rating. The following sections describes the configuration process and provides a list of available filter configurations to achieve the desired maximum encoder rate.

Usage Considerations

The hardware will not support a quadrature rate higher than 32

MHz. Among two configurations that have the same maximum

Instructions for Adept Utility Programs

217

rate, the one that has the highest number of stages is usually better.

The encoder rate unit is in MHz, million counts per second, which assumes quadrature decoding.

The table values assume theoretical maximums where the clock samples the signal once when high and once when low.

Each Filter Stage represents a logic-based D Flip Flop that delays each signal; the clock triggers the logic change.

Configuring the Encoder Filter

NOTE: You can also use the Easy Encoder Filter to specify the filter value. This option lets you specify a filter value from a subset of the available settings listed in the table below. See Easy

Encoder Filter for details.

For efficient noise rejection, choose a configuration rate that has a maximum theoretical rate 2 to 5 times higher than your actual maximum rate, in order to get efficient noise rejection.

Look at the Filter Configuration table and find the desired encoder rate. Note the values for the Encoder Filter Stage and Filter Clock

Frequency Setting that generate the desired encoder rate.

For example, if you have an encoder that runs at 10 MHz, you would need an Encoder Filter Stage value somewhere between 20

MHz (10 x 2) and 50 MHz (10x5). You can experiment with the

Filter Stage settings that result in a frequency within that range to determine what setting works best.

Filter Configuration Table

Filter Clock

Frequency Setting

Encoder Filter Stage

0

0

65.536

MHz

1

49.152

MHz

2

39.321

MHz

3

32.768

MHz

1

2

21.845

MHz

10.923

MHz

16.384

MHz

8.192

MHz

13.107

MHz

6.553

MHz

10.923

MHz

5.461

MHz

Instructions for Adept Utility Programs

218

3

4

5

6

7

5.461

MHz

2.731

MHz

1.365

MHz

0.683

MHz

0.341

MHz

4.096

MHz

2.048

MHz

1.024

MHz

0.512

MHz

0.256

MHz

3.276

MHz

1.638

MHz

0.819

MHz

0.409

MHz

0.204

MHz

2.731

MHz

1.365

MHz

0.683

MHz

0.341

MHz

0.171

MHz

Encoder sign

Defines the relationship between the direction of the encoder and the direction of the motor. Use this parameter if you want to have the option to mount the encoder on either end of the motor shaft (which results in a reversal of the encoder rotation). A non-zero value for the encoder sign causes the control system to invert the sign of the encoder position. When set properly, the encoder count should increase when the axis is moved in a positive direction. Refer to your device module documentation for a description of the positive direction for each axis of the robot.

An improperly connected encoder (A and B phases reversed) will cause a reversal in the encoder count direction. Ensure that all encoders are properly connected before changing the encoder sign.

WARNING: Improperly defining the encoder and motor signs can result in an unstable (runaway) system. Exercise great caution when setting this parameter.

Perform the test described in Test and Troubleshooting to confirm the correct encoder sign setting.

Max accumulated encoder noise counts

This parameter defines the noise tolerance for the index position during the encoder A and B phases (for an illustration of these phases, see the figure

Example Zero-Index Configuration). Specify the maximum number of encoder counts of error allowed relative to the zero index marker, assuming each index mark is a constant number of encoder counts. This tolerance does not get reset every index mark. This parameter controls the acceptable noise). If encoder

Instructions for Adept Utility Programs

219

zero-index checking is disabled, this parameter is ignored.

Example:

If you have a noisy encoder that misses an average of one count every 10 revolutions and set this parameter value to 7, an index error will be created after an average of 70 rotations in the same direction.

Max encoder noise counts per rev

This parameter defines a noise tolerance for the index position on the zeroindex line (for an illustration of the index line, see the Example Zero-Index Configuration figure). Using this parameter prevents the system from drifting in position while tolerating a small amount of noise on the encoder lines. If encoder zero-index checking is disabled, this parameter is ignored.

This parameter should be set to 0 until the settings for Counts per zero index and Encoder Configuration parameters are correctly specified.

Example:

If you have 3 spikes other than the actual index on the zero-index line per revolution, try setting this parameter to 3.

Perform hardware diagnostics

Displays the "Perform hardware diagnostics" menu to test the new parameters specified using the Encoder Specifications menu. See Perform hardware diagnostics for details.

Related Utilities

CONFIG_C

DC_SETUP

Instructions for Adept Utility Programs

220

SPEC, Edit Motor Amp Specs

File Name

SPEC.V2

Program Name a.spec

B

File

Type

Description

Robot specification utility

The Motor Amplifier Specifications menu options described below allow you to set values for the amplifier including the motor sign and the DAC limits (which protect the motor and system hardware by limiting the output commands).

For an overview of how these parameters impact Amplifier control in the Adept SmartMotion system, see Amplifier Control.

When you select a menu option, the following information is provided on the screen: l

Instructions for the specified option l

Current value l

Value range for the parameter if applicable

Menu Options, Motor Amplifier

Change motor number

Use this option to select a different motor for tuning. The currently selected motor is indicated in the menu page title.

Motor sign

The servo control loop will generate a torque command proportional to the position error. If that torque command has the wrong sign, it sends the motor in the wrong direction, increasing the position error, which increases the torque, which increases the position error, and pretty soon you have a runaway motor.

The motor sign allows you to make sure the torque command acts in the proper direction to correct errors, not make them worse! You simply have to make sure that a positive torque command causes motion in the positive direction; if not, reverse the motor sign. A non-zero value for the motor sign tells the control system to invert the torque commands before sending them to the

DAC.

The motor sign can be tested with the Perform hardware diagnostics selection.

Follow the instructions in Test and Troubleshooting to perform the test.

WARNING: If, after finding the correct value for the motor

Instructions for Adept Utility Programs

221

sign, you need to redefine which direction of motion is considered positive, be sure to change the encoder, motor, and commutation signs together. Changing only one sign can lead to a runaway motor. Exercise great caution when setting this parameter.

Commutation sign

The commutation sign parameter sets the sign of the commutation data output by the servo. This parameter is coupled to the encoder sign parameter. If the encoder sign is changed, the commutation sign must be changed, as well. Note that the commutation sign and encoder sign values may not necessarily match.

CAUTION: If the commutation sign and encoder sign are not set correctly, the motor may either run away or run very roughly.

The commutation sign is used to indicate whether or not the algorithm needs to increment the commutation position in the same direction as it increments the motor position. For example, if the commutation sign is -1, then the negative of the motor velocity is used in order to properly increment the commutation position.

Maximum DAC output

It is possible to limit the output of the analog DAC command using this parameter. This is useful as a safety feature to limit the maximum torque or velocity

(depending on the type of drive). Setting this parameter defines both the positive and negative limit of the DAC. The maximum DAC output is 10 VDC, which corresponds to a command of 32767. If this parameter is set to zero, various errors (such as *Motor stalled*) will be generated if any motion or calibration commands are executed. By initially setting this parameter smaller than its eventual value, the DAC output limit can be used to limit any potential damage to hardware during the specification procedures. An initial value of 10% of fullscale is recommended, until you have completed servo tuning as described later in this chapter.

Maximum DAC output in Manual mode

This value specifies the maximum output the servo can send to the DAC during

Manual Control mode. It should not exceed the maximum DAC output value.

Instructions for Adept Utility Programs

222

*Duty-cycle exceeded* DAC Limit

The duty-cycle limit is one of the safety features the V+ system provides to prevent overexerting your motor or drive system. During operation, the root mean square (RMS) DAC output value is fed into an averaging filter. If the filtered RMS value ever exceeds the value of this parameter, a *Duty-cycle exceeded* error is generated and high power is disabled. Typically, this value is about 2/3 of the maximum DAC output, and the check can be disabled by setting the value to be zero, or greater than the maximum DAC output.

*Duty-cycle exceeded* filter parameter

This value specifies the low-pass filter through which the root mean square

(RMS) DAC value is fed before comparing it to the above limit. By filtering the

DAC output, momentarily-high torque commands will not cause an error. The more filtering, the longer it will take for an error to be declared. In order to help you set this value, use the following rule of thumb: assuming the DAC output is at a constant value, the "rise time" of the DAC filter to 63% of the DAC output value is 2 n milliseconds, where n is the filter parameter. A value less than 5 will give a "hair-trigger" response, causing the *Duty-cycle exceeded* error very soon after the "*Duty-cycle exceeded* DAC limit" is exceeded. A value of

9 (approximately 1/2 second rise time) is recommended as a starting point.

*Motor stalled* Timeout

To further protect the system from damage, motor-stall detection is incorporated at the servo control level. When full torque is commanded for the specified amount of time, the robot is assumed to be stalled, high power is disabled, and a *Motor stalled* error is generated.

WARNING: Set this parameter to as low a value as possible to assist in detecting encoder fault during operation.

*Soft envelope error* Limit

The envelope error, also known as the following error, is defined as the difference between the commanded and actual position during a motion. This error value gives an indication of how well the mechanism is following the commanded motions. The Adept SmartMotion software monitors the envelope error during execution of motions and compares these values against this parameter. If the specified limit is exceeded, a *Soft envelope error* message is generated, and the motion comes to a controlled stop. However, High Power stays on. This parameter can also assist in detecting encoder fault during operation.

Instructions for Adept Utility Programs

223

*Hard envelope error* Limit

The Hard envelope error differs from the Soft envelope error in that if the specified limit is exceeded, High Power is turned off immediately. It should be set to a value greater than the Soft envelope error value.

WARNING: Set this parameter to as low a value as possible to assist in detecting encoder fault during operation.

*Manual mode envelope error* Limit

The SPEC program allows you to specify a manual mode envelope error limit.

This option allows you to configure a smaller envelope error (that is, how far the motor is allowed to lag behind the commanded position) for motions made with the manual control pendant. A small value for this parameter results in faster shutdown of a jammed robot. This parameter is related to the Soft envelope error and Hard envelope error as follows:

Man Env Err < Soft Env Err < Hard Env Err

Specifies the servo position error limit for manual mode. The value is specified in encoder counts. When this limit is exceeded, a *Soft envelope error* message is displayed, the motion comes to a controlled stop, but the arm power remains

ON.

Velocity envelope error limit (cts/ms)

Specifies the servo velocity error limit in Current mode, which is only active during calibration. In this mode, there is a potential danger that the robot will run away. When the limit is exceeded, a *Hard envelope error* message is displayed and High Power is disabled immediately.

Machine input polarity

You can control whether various signals are active-high or active-low using the machine input polarity value. This provides more flexibility in your choice of sensors.

Four bits are used to determine the polarity of the Home Switch, the Positive and Negative Overtravel Switch and the Drive Fault Signals: l

Bit 0 is set when the Home switch is active high* l

Bit 1 is set when the Positive Overtravel is active high

Instructions for Adept Utility Programs

224

l

Bit 2 is set when the Negative Overtravel is active high l

Bit 3 is set when Drive Fault is active high

*Active high indicates that current flows into the input when active.

The "Machine input polarity" menu option provides a table for the Machine Configuration Word. Enter the value that corresponds to the desired sensor settings.

Machine Configuration Word

Value--> 0 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15

Home L H L H L H L H L H L

Pos. Over.

L L L L H H H H L L L

H

L

L

H

H

H

L

H

H

H

Neg. Over. L L H H L L H H L L H H L L H H

Drive Fault L L L L L L L L H H H H H H H H

Axis error time delay configuration

The axis error time delay configuration specifies a time period in which axis errors are not monitored after the amplifier power is enabled. This acts as a filter for noise errors caused by powering up the amplifier. The following selections are available:

6

7

3

4

5

1

2

Value Description

0 No time delay

0.125 sec

0.250 sec

0.500 sec

0.750 sec

1.000 sec

1.500 sec

3.000 sec

*Skew error* limit (cts) (available only if split-axis configuration is selected)

This parameter defines the maximum skew error (difference between the

Instructions for Adept Utility Programs

225

position errors of the split axes of a gantry allowed before a *Skew Error* is sent to V+. It is in units of encoder counts.

Default motion speed (ct/msec) (available only if split-axis configuration is selected)

This value specifies the default speed of a motor during servo-controlled trajectories. Most trajectories are V+ controlled. Currently, only axes of a split-axis mechanism are servo-controlled. A value of 4 counts/millisecond is typical.

Perform hardware diagnostics

Displays the Perform hardware diagnostics menu to test the new parameters specified using the Amplifier Specifications menu.

Related Utilities

CONFIG_C

DC_SETUP

Instructions for Adept Utility Programs

226

SPEC, Edit Motor Tuning Parameters

File Name

SPEC.V2

Program Name a.spec

B

File

Type

Description

Robot specification utility

This section describes the "Edit motor tuning parameters" menu selections. Please refer to the Adept SmartMotion Developer's Guide for more information on the "Edit motor tuning parameters" menu.

The servo tuning parameters affect the performance and stability of the servo loop for each motor. Adept SmartMotion offers the capability to interactively tune these parameters to show graphically how they influence robot motion. From the servo tuning menu, you can change servo gains, select a test to perform or data to display, or initiate a test. For additional information on the servo parameters and the tuning process, see Related Topics. For additional details on servo tuning parameters, see Introduction to Servo Tuning Parameters .

When you select a menu option, the following information is provided on screen: l

Instructions for the specified option l

Current value l

Value range for the parameter if applicable

Menu Options

Change motor num

Use this option to select a different motor for tuning. The currently selected motor is indicated in the menu page title.

Proportional gain

Causes the control system to output a torque that is proportional to the position error (commanded position minus the actual position. For details on the effects of this parameter, see Effects of Servo Parameters .

Zero

Affects the dynamic response of the servo system. By monitoring how fast the position error is changing, the control system is able to anticipate the position error in the future. For details on the effects of this parameter, see Effects of

Servo Parameters .

Instructions for Adept Utility Programs

227

Pole

The Pole, like the Zero, affects the dynamic response of the servo system. By monitoring how fast the position error is changing, the control system is able to anticipate the position error in the future. For details on the effects of this parameter, see Effects of Servo Parameters .

Integral gain

Used to eliminate steady-state errors and improve tracking. The contribution of integral gain to the output torque is proportional to the integral of the position error (the sum of all past position errors). For details on the effects of this parameter, see Effects of Servo Parameters .

Max integrator value

Specifies the maximum value the accumulated (or integrated) error may achieve. It is useful for controlling the de-stabilizing effect of the Integrator

Path by placing a limit on the amount of torque that may be contributed by the integrator. For details on the effects of this parameter, see Effects of Servo

Parameters .

Max integrator step

Specifies the largest position error for a given servo cycle (ranging from 0.125

to 2 ms) that will be added to the accumulated or integral error. The integrator step is useful for controlling the effect of the integrator during rapid change of motions, when the position error is largest.

For example, consider a step command to the motor. Immediately after the step, the position error is quite large because the motor has not had time to move. In this initial stage of the motion, it is not important to have the integrator attempting to null out every last bit of position error; rather , the Proportional Path should be allowed to dominate the motor's response.

For details on the effects of this parameter, see Effects of Servo Parameters .

Velocity feedforward

Used to generate a torque proportional to the commanded velocity. This parameter is useful to reduce tracking error during long slewing motions on systems with a measurable amount of viscous friction. Typically, systems with high viscous friction may start moving with a low torque command. However, as the speed of the motor increases, so does the friction. Therefore, to maintain a constant speed, additional DAC output must be generated proportional to the speed of the motor.

Instructions for Adept Utility Programs

228

To tune the velocity feedforward gain, use a point to point test and plot the commanded velocity along with the tracking error. Disable the integrator gain.

If the error has roughly the same sign as the velocity then increase the velocity feedforward gain, if the error has the opposite sign of the velocity, then decrease the gain.

For details on the effects of this parameter, see Effects of Servo Parameters .

Accel feedforward

Used to generate a torque proportional to the commanded acceleration/deceleration. The simplest model of relating motion command to the actual torque required to complete motion is the following:

Torque = inertia * acceleration

The Acceleration Feedforward Gain emulates the inertia term in the above equation. By specifying the correct Acceleration Feedforward Gain value, each designated move completes in accordance with the relationship described in the above equation.

For details on the effects of this parameter, see Effects of Servo Parameters .

Static Friction Feedforward Compensation

SPEC includes parameters for setting up a motion-control feature called "Static

Friction Feedforward Compensation". This feature is designed to minimize tracking errors by providing a corrective torque proportional to the amount of friction in the system. This allows a motion to start more quickly, particularly in the case of a sticky drive train.

Setting this value too high will make the motor lead the setpoint which causes the mechanism to jerk at the beginning and end of a motion.

Modifying these parameters when moving in square-wave drive mode will have no effect since the commanded velocity is 0.

The static friction feedforward setting has five parameters that can be adjusted: Max and Min trigger, Max positive value, Max negative value, and time constant. Information on these parameters and their effects is provided on the screen when you select the parameter.

NOTE: Modifying these parameters when moving in square-wave drive mode has no effect since the commanded velocity is 0.

Instructions for Adept Utility Programs

229

Static Friction Feedforward Menu

You can make adjustments to the settings for the static friction feedforward items shown in

Static Friction Feedforward Menu Items

Menu

Item

Max trigger

Min trigger

Static Friction Feedforward Menu Items

Input

Range

Description

0 to

9.22E+18

Specifies the maximum commanded velocity value

(cnts/msec) for ramping the static friction compensation torque up to the maximum positive or maximum negative value, depending on the direction of motion of the joint. Once the velocity reaches the max trigger value, the static friction compensation output is clipped at the max positive or max negative value. To disable static friction feedforward compensation, set this value to 0.

0 to

9.22E+18

Specifies the minimum commanded velocity value

(cnts/msec) that initiates static friction feedforward compensation.

Instructions for Adept Utility Programs

230

Max positive value

0 to *

Max negative value

0 to *

Specifies the maximum positive or maximum negative amount of torque that can be applied to the commanded velocity when the joint is moving in the corresponding direction. In most cases the maximum positive and maximum negative values should be identical.

Time constant

-

9.22E+18 to

9.22E+18

This integer value allows the servo software to anticipate or delay the effect of the static friction compensation torque on the commanded velocity. If the value is positive, compensation leads the servo setpoint.

If the value is negative, compensation is delayed.

* The displayed maximum value equals the maximum DAC output multiplied by 256 for the selected motor.

The SPEC program contains options that allow you to configure both the acceleration and deceleration percentages for motor tuning tests, and to specify a custom point-to-point motion routine. To access these options select the following item from the Motor Servo Tuning Parameters menu:

Select test..Taught Pt

Filter Configuration

This parameter allows you to configure the 2nd-order filter for the servo to reduce high-frequency oscillation in a motor. There are two types of filters available: Notch Filter and Butterworth Double-Pole Roll-Off filter.

l l

Specify the Notch filter to reduce oscillation for frequencies less than

250 Hz.

Specify the Butterworth Double-Pole Roll-Off filter to reduce oscillation for frequencies higher than 250 Hz

These filters do not eliminate oscillation, but they can reduce its effects.

Filter Status

On the Motor Servo Tuning Parameters menu, the Filter Configuration will display the current status: PROTECTED, ON, or OFF

Filter

Status

Description

PROTECTED By default, the filter value is set to PROTECTED, which means that the filter configuration option is

Instructions for Adept Utility Programs

231

ON

OFF disabled. Before you can use the filter, you must first enable the filter by setting the Filter Configuration parameter to OFF (1).

When the Filter Configuration status is PRO-

TECTED, the system ignores any value entered except for OFF (0). If you enter a different value, when you return to the Servo Tuning menu, the

Filter Configuration value will still indicate that

Filter Configuration is PROTECTED.

Indicates that the filter configuration option is enabled and in use. When the status is ON, the type of filter in use and the parameter values for that filter display on the screen.

Indicates that the filter configuration option has been enabled, but neither filter is currently in use.

When the status is OFF, you can specify the filter and filter values by selecting Filter Configuration from the Servo Tuning menu and entering the value for the desired filter.

Select Filter Configuration from the menu. The following description of this selection is displayed, followed by a prompt for permission to change the value.

Instructions for Adept Utility Programs

232

Filter Configuration Description

To change the configuration of the filter, type Y at the prompt and then press

ENTER. To keep the existing value, type N and press ENTER at the prompt.

If you choose to change the configuration of the filter, the following options are displayed:

0 = Protected 1 = OFF 2 = Notch Filter 3 = Butterworth Double-

Pole Roll-Off (DPR)

At the prompt, type the number corresponding to the desired configuration option and press ENTER.

If Notch Filter is selected, the following description is displayed along with a prompt for the Notch Filter Pole Frequency (Hz).

Notch Filter Pole Frequency

At the NEW VALUE prompt, type the value (in Hz) for the Notch

Filter Pole Frequency and press ENTER. To keep the existing value, press ENTER. If a new value is entered, a description of the notch filter damping ratio is displayed, along with a prompt for changing the value.

Notch Filter Damping Ratio Description

At the NEW VALUE prompt, type the value for the Notch Filter

Damping Ratio and press ENTER. To keep the existing value, press ENTER.

Butterworth Double-Pole Roll-Off

If Butterworth Double-Pole Roll-Off (DPR) is selected, the

Instructions for Adept Utility Programs

233

following description is displayed along with a prompt for the Butterworth Filter Pole Frequency (Hz).

Butterworth Filter Pole Frequency Description

At the NEW VALUE prompt, type the value (in Hz) for the Butterworth Filter Pole Frequency and press ENTER. To keep the existing value, press ENTER.

DAC output filter

This is a low-pass digital smoothing filter that affects the final torque command.

Progressively higher integer values will double the degree of DAC output filtering, removing a large portion of the high-frequency components from the torque command. The result is that the DAC output values change more slowly and smoothly.

S-A (split-axis): Skew error gain (0 to 2.147484E+09)

(Only available if split-axis configuration is selected.) This parameter defines the scale factor applied to the skew error (difference of the position error between the coupled axes) to generate the adjusted torque. This parameter is unitless.

S-A (split-axis): Skew velocity error gain (0 to 2.147484E+09)

(Only available if split-axis configuration is selected.) This parameter defines the scale factor applied to the skew velocity error (difference of the velocity error between the coupled axes) to generate the adjusted torque.

0 indicates no adjustment between the coupled axes. This parameter is unitless.

Select Test

The tuning process breaks the overall tuning task into two major subsections.

Instructions for Adept Utility Programs

234

First, manual feedback gain tuning determines good values for the Proportional and Integral paths. These parameters are critical for minimizing motion settling time and overshoot. Second, automatic (or manual) feedforward gain tuning improves trajectory tracking by estimating the motor command required to follow a trajectory and "feeding forward" or adding that command to the motor. The tests available from the Select Test menu option provide data that help complete both sections of the tuning task.

WARNING: All tests require the motor to operate under closed-loop control. If the control loop is unstable, the robot can "run away" when it is commanded to begin moving.

Make sure the motor and encoder signs have been properly tested before initiating these tests, stay clear of the robot, and keep your hand near an Emergency Stop button to stop the system if it does appear to behave improperly.

If you choose the Select test menu item, the Tuning Test Configuration menu is displayed with the following options:

Test

Selection

Square wave

Move between taught points

Tuning Test Selections

Description

Used for manually tuning feedback (never feedforward) parameters. You can display any servo data during step response, as shown in Tuning Plot for Square-Wave Response Test in Motor

Servo Tuning Parameters Menu . You need to specify the amplitude and period of the square wave, and the data that will be collected and displayed. A step size of about 1/2 turn of the motor shaft is typically used.

Moves the robot between two taught points for manually tuning feedback and feedforward parameters. The robot must be calibrated to perform this test, so it is only performed during the later stages of tuning. You need to teach the endpoints of the motion, speed and acceleration parameters, and the data that will be collected and displayed. This test routine can be customized, for example to move along a series of points, instead of just between two points. For details, see Customizing Move

Between Taught Points Test .

Frequency response

This selection provides test options that allow you to specify the number of frequency bands to test, the start amplitude, and the stop amplitude.

Instructions for Adept Utility Programs

235

Uses "swept-sine" excitation to collect and display open-loop or closed-loop frequency response information about the mechanism. With closed-loop excitation, it commands a sinusoidal position setpoint; with open-loop excitation a sinusoidal DAC output setpoint. You need to specify the frequency range of interest, the number of test points, and the amplitude of the command. See

Frequency Response Tests

.

Select

Data to

Test and

Display

If you select taught-point or square wave tests, you need to specify data that will be collected when the test is performed. The data selection menu is shown in Servo Tuning Data Collection Menu .

The most useful measure of performance is "PosErr", the motor position error. You want to minimize this to get best servo performance. You will also commonly select "Torque" from this menu to see when the control loop is "saturating," or giving the maximum output torque command. Up to five data items may be selected for display.

1 These menu items appear only on A-Series controllers.

Options for the Frequency Response Tests

NOTE: The options shown on this menu change depending on what test type is selected.

Motor Tuning Test Configuration Menu

Instructions for Adept Utility Programs

236

To access the frequency response tests, select one of the following menu options: l

"Plant+controller frequency response... " l

"Plant-only frequency response... "

You can now make adjustments to the settings for the frequency response items shown in

Frequency Response Test Menu Items

Menu

Item

Number of frequency bands to test

Frequency Response Test Menu Items

Input

Range

1 to 10

Number of frequencies to test

2 to

1000

Low frequency

(Hz)

High frequency

(Hz)

0.1 to

20

1 to

500

Description

Number of frequency bands to test.

Number of test iterations for each frequency band.

Lowest input frequency (in Hz) used for the test.

Highest input frequency (in Hz) used for the test.

Start amplitude

(encoder counts)

0 to

100000

Start and stop wave amplitude in encoder counts.

Amplitude is linearly spaced between the Start and

Stop values. To hold the amplitude constant, set the

Start amplitude value to 0.

Stop amplitude

(encoder counts)

0.1 to

100000

Test and Plot

Returning to the Servo Tuning Menu and selecting Test and plot, the robot will move to perform the test selected. There will be a few-second pause while the system collects data, then you will see a display plot of the parameters you requested. Tuning Plot for Square-Wave Response Test and Plant+Controller

Frequency Response Test show typical displays of plots for square-wave and

Instructions for Adept Utility Programs

237

frequency response tests.

Test and Display

This is similar to the above option, except that instead of capturing data during the test and plotting it afterwards, it provides a continuously-updated live display of the selected parameters.

Export Results

After using the Test and Plot option, you can export the results using one of the available options:

Output Data to Text File

Use to export the raw data captured during the previous test to an

ASCII file. The data can then be imported into a spreadsheet program, for plotting or analysis.

Output Data to Screen

Use to export the data to the screen for review. (Use scroll lock or

CTRL-S and CTRL-Q to start and stop the output.)

Save Plot to TIFF Graphics File

Use to export the currently displayed plot (similar to Tuning Plot for Square-Wave Response Test or Plant+Controller Frequency

Response Test) to a TIFF format disk file. This option is only available if you have the Adept Graphics module (VGB). The TIFF format is used by many PC and Macintosh graphics programs.

Current Loop Control Parameters

This item applies only to SmartAmp systems.

Select "Current Loop Control Parameters" from the menu. The following description of this selection is displayed, followed by a list of control parameters.

Instructions for Adept Utility Programs

238

Current Loop Control Parameters Description and Menu

To change the value of a control parameter, at the prompt type the number corresponding to that parameter and then press ENTER. To exit, type 0 and press

ENTER. See

Current Loop Control Parameters

for a description and value range for each control parameter.

Current Loop Control Parameters

Control

Parameter

Current loop Kp gain

Description

Causes the current loop to apply a voltage to a phase of the motor that is proportional to the current error (commanded current minus the actual current).

Current loop Ki gain

Used to eliminate steady-state errors and improve current-loop tracking. The output of the integral gain is a voltage to a phase of the motor that is proportional to the integral of the current error (the sum of all past current errors).

Torque: current scale

CAUTION:This is a fixed value for each

SmartServo. It should not be changed by the customer.

Units

1 = 143

Volts/Amp

1 = 143

Volts/Amp

Instructions for Adept Utility Programs

239

Inductance feedforward gain

Used to compensate for the effects of the motor's winding inductance. This gain is used to apply a voltage to a phase of the motor that is proportional to the derivative of the commanded current.

Resistance feedforward gain

Used to compensate for the effects of the motor's winding resistance. This gain is used to apply a voltage to a phase of the motor that is proportional to the commanded current.

Phase integral limit

Motor back-

EMF

Used to constrain the maximum output of the Current-

Loop Integral Gain (Ki). This is used to limit the wind-up of the integral contribution during large swings in the command and/or when the current loop encounters saturation.

Used to compensate for the effects of the motor's back-

EMF voltage. This gain is used to apply a voltage to a phase of the motor that is sinusoidal with position and has an amplitude proportional to velocity.

1 = 17.9 millivolt-seconds/Amp

1 = 143

Volts/Amp

PWM counts

None.

NOTE: For V+ version 16.2 and later, Motor back-

EMF can accept negative values. However, this may generate an error if an older version of SPECSUB is loaded with this version of SPEC. Therefore, you must install the correct (matching) version of SPECSUB on your system.

Controls the current loop inductance phase advance.

None.

Kl phase advance

Kb-emf phase advance

Controls the current loop back-EMF phase advance.

None.

Adaptive Feedforward

Select "Adaptive Feedforward" from the menu. The following description of this selection is displayed, followed by a prompt to enable/disable this feature.

NOTE: The Adaptive Feedforward option is available only for SmartModules.

Instructions for Adept Utility Programs

240

Adaptive Feedforward Description

To enable or disable adaptive feedforward control, at the prompt, type Y and then press ENTER. To exit without changing the existing state, type N and then press ENTER.

Related Utilities

CONFIG_C

DC_SETUP

Instructions for Adept Utility Programs

241

SPEC, Edit Motor Calibration Parameters

File Name Program Name

File

Type

SPEC.V2

a.spec

B

Description

Robot specification utility

Calibration is required to tell each motor in the Adept SmartMotion system where it is. You must establish a reference point, usually a zero-index on the encoder near a home switch, from which all subsequent motion can be referenced. The Motor Calibration Parameters

Menu allows you to specify the zero index and other parameters used by the calibration program STANDARD.CAL. For a description and diagram of the calibration process, see the Motor

Calibration Overview in the Adept SmartMotion Developer's Guide .

This reference is needed every power cycle for incremental encoders, and only once for absolute encoders.

When you select a menu option, the following information is provided on screen: l

Instructions for the specified option l

Current value l

Value range for the parameter if applicable

Instructions for Adept Utility Programs

242

Menu Options

The Robot/Motor Calibration Menu

Change motor number

Use this option to select a different motor for tuning. The currently selected motor is indicated in the menu page title.

Change homing configuration

The SPEC program contains an option that allows users with AdeptModules controlled by an AdeptWindows Controller to change the homing configuration so that the robot calibration procedure searches for a dedicated home sensor. (Previously, the AdeptModules devices calibrated only to an overtravel sensor.)

Select "Change homing configuration" from the menu. A submenu is displayed

Instructions for Adept Utility Programs

243

followed by a series of questions.

Change Homing Configuration Submenu

To use a home sensor mounted on your AdeptModules axis for calibration, select "Search for home sensor" from the submenu and press ENTER. To exit without changing the option, simply press ENTER.

After selecting the option, you are asked to disable (or enable) the "calibrate to zero index" feature. To toggle the setting, press Y and then press ENTER. To use the existing setting, press N and then press ENTER, or just press ENTER to accept the default value (N).

After answering this question, you are asked to enable (or disable) the "fine search toward home" switch. To toggle the setting for fine search toward home, press Y. To use the existing setting, press N or just press ENTER to accept the default value (N). After you answer this question, the screen is cleared and the Robot/Motor Calibration menu is displayed.

Change Homing Configuration Subfields

The Homing Configuration is a bit field that specifies the type of calibration method to be used. The following three homing configuration settings are described below: Search Type, Calibrate

Without Zero Index, and Final Calibration.

The homing configuration value that displays on the Motor Calibration Menu is the sum of the mask values of the desired options.

Bits 0,1 SEARCH TYPE

These bits define the target of the initial search

Instructions for Adept Utility Programs

244

performed during calibration, as defined below:

Bit Setting

Mask

Value

00

01

10

0

1

2

Description

Search for home switch.

Search for hard stop.

Stay at current position (calibrate from the current position of the motor). This is generally not used because without a search it is difficult to guarantee that the same zero index or calibration position will always be found.

11

100

3

4

Absolute calibration. (requires special hardware)

Calibrated via dual encoder (for

Adept robots only)

Bit 2 CALIBRATE WITHOUT ZERO INDEX (Mask value 4)

This bit is set to calibrate to the position found at the end of the search (or to the current position if no search is performed), without using a zero index.

This type of calibration tends to be less repeatable than using a zero index.

Bit 3 FINAL CALIBRATION DIRECTION (Mask value 8)

This bit is ignored unless a home switch search has been selected (bits 0 and 1 both off). If this bit is off

(the default), the position of the home switch will be determined while moving slowly OFF of the home switch, and the optional zero-index search will continue in the same direction. If this bit is set, the position of the home switch will be determined while moving slowly ON to the home switch, and the optional zero-index search will continue in the same direction. It is usually desirable to leave the bit off, since the home switch is usually placed close to an

Instructions for Adept Utility Programs

245

overtravel switch, and the zero index search will then occur moving away from the overtravel.

NOTE: Depending on the configuration chosen, some of the following parameters may not be required, and will not appear on the menu.

Speed and Direction

Signed integer value which specifies the direction and speed the motor moves during its initial search for the home switch or hard stop, and the speed at which it moves to the park position. After the motor senses the home switch, if one is used, it also moves at this speed in the opposite direction until it moves off the switch. If the speed for fine search is set to zero. This guarantees that the home switch edge is found quickly whether the robot begins calibration on the home switch or off it.

WARNING: In most installations, the speed specified here determines the speed of the first robot motion after power up. Set this value low enough so that a person unfamiliar with the robot's operation will not be injured if they are standing inside the work envelope.

Speed for Fine Search

Determines the speed at which the motor searches for the precise home-switch edge after coarsely locating it.

"Motor Stalled' Timeout During Cal

Because calibration is often the first motion a robot performs after startup, it is advisable to shorten the amount of time the motor command can saturate at the maximum DAC value before declaring a Motor Stalled error. This parameter allows you to set a special timeout value during calibration; a value of 100 ms is typically satisfactory.

Maximum Search Distance

Positive integer value which specifies the maximum distance the motor will move without finding the home switch or hard stop before it declares an error.

This value should generally be slightly greater than the motor range in counts to make sure it doesn't stop before reaching the home switch or hard stop.

Maximum Home Switch Width/ 'Hard-stop Found' Position Error

If the homing configuration specifies Search for home switch, this value

Instructions for Adept Utility Programs

246

specifies the maximum distance the motor will move on the home switch before declaring an error. This value should generally be slightly greater than the number of encoder counts that the home switch spans.

If the homing configuration specifies Search for hard stop, this value specifies the position error in counts at which the motor will declare that it has hit the hard stop. This value should be much smaller than the envelope error limit, but big enough so it will not give a false hard-stop found reading while simply moving to the stop. If it is set too big, *motor stalled* errors will occur as the DAC saturates against the stop.

Distance From Edge of Home Switch to First Zero Index

If the motor happens to have a zero index that almost perfectly coincides with the edge of the home switch or the hard stop, the motor might sometimes catch it and sometimes catch the next index during calibration. This value specifies the expected number of counts from the home switch or hard stop to the first zero index. If the number of counts is off by more than half the number of counts between zero indices, the system projects where the desired zero index is and calibrates to it.

This value is difficult to calculate off-line. It is suggested that you use the interactive teaching utility to help you define this value.

Motor Position at Zero Index/Hard Stop/Home Switch/Current Position

This is the value to which the motor position is reset once the calibration target

(zero index, hard stop, home switch, or current position, depending on the settings of the homing configuration setting) is found.

While the other parameters do not require a high degree of accuracy, this parameter should be specified as accurately as possible, since it can be critical to straight-line tracking accuracy and positioning consistency from one robot to another of the same type.

If your device module contains motor-to-joint coupling (if motion of a given joint involves moving more than one motor), you will need to refer to your device module documentation to determine what joint position corresponds to the Motor position at zero index.

If your module does not contain any motor-to-joint coupling, the corresponding joint position can be obtained by multiplying the motor position (in encoder counts) by the encoder scale factor for the joint.

This value and Distance From Edge of Home Switch above are usually different for different robots of the same design, because it is very difficult to guarantee a precise relationship between a zero index location and home switch closure. As

Instructions for Adept Utility Programs

247

a result, these values should be customized for each version of a mechanism to guarantee consistent calibration.

Calibration Groups

For some robots, all the motors can be calibrated simultaneously, in which case all motors should be put into calibration group 1. But depending on your robot's mechanical design and its workcell, it may be desirable to calibrate motors in a specific order. For example, a vertical axis may need to be retracted to avoid gripper damage during calibration. Such a motor should be in calibration group

1, and its park position such that it moves out of the way of workcell collisions.

Other motors can be put into calibration group 2. Motors can appear in several calibration groups; sometimes this is useful when one motor has to be moved to a particular position in order for another to calibrate, and then must itself be calibrated later.

Park Position After Calibration

This is the position to which the motor moves after calibration is complete. It can be used to move the motor out of the way, so that subsequent motors can calibrate.

Teach Calibration Specs

This option appears only if STANDARD.CAL program file is selected for calibration file name on the Robot Initialization Specifications Menu. This option provides an iterative sequence to easily measure and record parameters such as home switch width, first zero index position, park position, etcetera. You must first set the homing configuration, speeds, and distances.

Calibrate Motor

This option allows you to test the calibration sequence for the current motor.

Calibrate Robot

This option performs the complete calibration for all motors.

Encoder type

The encoder type code is used by the servo and calibration code to identify the type of encoder attached to the motor (absolute, incremental, etcetera). The encoder type establishes which internal software drivers are used to communicate with the encoder.

Select "Encoder type" from the menu. The following description of this selection is displayed, followed by a prompt for the new encoder type value.

Instructions for Adept Utility Programs

248

Encoder Type Input

To change the selected encoder type, find the desired encoder type from the list and enter the corresponding number at the NEW VALUE prompt. To keep the existing value, press ENTER at the NEW VALUE prompt.

The valid encoder types are:

0 Undefined

1 Incremental encoder

10 Yaskawa Sigma-I series absolute encoder

11 Yaskawa Sigma-II series serial absolute encoder

20 Panasonic absolute encoder

This parameter should be set based on the way the encoder is actually USED.

For example, if an absolute encoder is wired to the system, but it is used only in incremental mode, the encoder type should be set to 1.

Joint-encoder counts/index

Select "Joint-encoder counts/index" from the Edit Motor Calibration Parameters menu. The following description of this selection is displayed, followed by a prompt for the new value.

Instructions for Adept Utility Programs

249

Joint-encoder Counts/index Input

To change the joint-encoder counts/index, enter the desired number of encoder counts/index at the NEW VALUE prompt and then press ENTER. To keep the existing value, press ENTER at the NEW VALUE prompt.

Motor counts/joint revolution

Select "Motor counts/joint revolution" from the menu. The following description of this selection is displayed, followed by a prompt for the new value.

Motor Counts/joint Revolution Input

To change the number of motor counts/joint revolution, type the desired value at the NEW VALUE prompt and then press ENTER. To keep the existing value, just press ENTER at the NEW VALUE prompt.

Instructions for Adept Utility Programs

250

Drive train backlash

Select "Drive train backlash" from the menu. The following description of this selection is displayed, followed by a prompt for the new value.

Drive Train Backlash Input

To change the drive train backlash value, type the desired number of encoder counts at the NEW VALUE prompt and then press ENTER. To keep the existing value, just press ENTER at the "NEW VALUE" prompt.

Enable and reset absolute encoder

NOTE: The "Enable and reset..." menu displays only for SmartModule's absolute encoder.

To reset and enable the absolute encoder, type Y at the prompt and then press

ENTER. To keep the existing value, type N and press ENTER at the prompt.

Related Utilities

CONFIG_C

DC_SETUP

Instructions for Adept Utility Programs

251

SPEC, Edit Joint, Link, Cartesian, General, S-curve, Collision

File Name Program Name

File

Type

Description

SPEC.V2

a.spec

B Robot specification utility

Edit joint motion specs

The following parameters can be adjusted for each joint of the robot.

l

FINE nulling tolerance (cts) l

COARSE nulling tolerance (cts)

Choose these items to change the positioning tolerances used at the end of any motion that requires nulling.

NOTE: Do not modify the positioning tolerances unless you have a good understanding of how they are used by the V+ system. Refer to the descriptions of the

COARSE and FINE program instructions in the V+ Language Reference Guide .

l

Lower joint limit (mm or deg) l

Upper joint limit (mm or deg)

The motion limits for the individual robot joints can be changed from their standard settings to limit robot joint travel.

Edit link parameters

Tool and Link Dimensions

The device modules supplied by Adept Technology have been generalized so that they do not contain dimensional data for each link. This allows you to use the same device module for different sizes of the same robot.

Because the link dimensions are not defined in the device module, you must specify them for mechanisms where they are required. The Tool and Link

Dimensions Menu allows you to create the tool and link dimension specification. The options that appear on the menu are determined by the device module assigned to your mechanism.

When you select a menu option, the following information is provided onscreen:

Instructions for Adept Utility Programs

252

l

Instructions for the specified option l

Current value l

Value range for the parameter, if applicable

NOTE: It is important that the values supplied be as accurate as possible.

Deviations in these values from the actual dimensions of the device will result in inaccurate conversions between tool tip locations and joint angles.

Menu Options

Tool Z-Offset Distance

For robots which have a bending wrist, the tool offset distance defines the distance from the center of the wrist to the tool mounting flange. For example, in a five-axis AdeptOne robot, the tool offset length is the distance from the intersection of axes 4 and 5 to the center of the joint 5 mounting flange.

Another application of the tool offset distance is to change the apparent height of a robot's tool flange. For example, with the X/Y/Z/Theta module, the Z-coordinate is initially considered 0 when the joint is at its 0 position (often fullyretracted). This causes the robot's Z-coordinate to go negative as the Z-axis is extended. The tool offset distance can be adjusted to keep the Z-coordinate positive throughout robot's range of motion.

Refer to the device module documentation that is supplied with each device module for more specific information on the Tool Z-Offset distance.

Link Dimension Value #n

These specifications define the exact length of the robot's links and any other key dimensional factors which may be required. For some mechanisms (such as an X/Y/Z/Theta robot), no such dimensions need to be specified. In general, the number of values required to define the robot's size and their exact interpretation is a function of the robot's geometry and of the software implementation.

The SPEC utility prompts for the correct number of required dimensions, but you must use your device module documentation to see how to answer these prompts.

Edit Cartesian Motion specs

The number of specifiable Cartesian rotation speed and acceleration parameters depends on the device module type. For example, an XYZT device module has only one possible rotation

(roll about the Z-axis), while a 6-axis articulated robot would have three possible rotations.

Instructions for Adept Utility Programs

253

See your device module documentation for the meaning of the Cartesian rotation speeds for your mechanism.

The Adept SmartMotion system allows a mechanism to move in a Cartesian reference frame by coordinating the motion of several axes. From the manual control pendant, the robot can move in the modes called WORLD and TOOL which moves in an XY-Z frame referenced to the robot base and the end of the arm, respectively. From within a program, the motion instructions MOVES (pronounced "move S"), APPROS, and DEPARTS accomplish the same thing.

The Cartesian Motion Specifications Menu allows you to specify values for the parameters used to control this type of motion.

When a menu option is selected, the following information is provided on the screen: l

Instructions for the specified option l

Current value l

Value range for the parameter if applicable

Menu Options

Cartesian Speed and Acceleration

These parameters define various speeds and accelerations for Cartesian motion along a straight line path as commanded by the MOVES program instruction.

The number of specifiable Cartesian rotation speed and acceleration parameters depends on the device module type. For example, an XYZT device module has only one possible rotation (roll about the Z-axis), while a 6-axis articulated robot would have three possible rotations.

Cartesian translation speed at SPEED 100

The maximum speed for the robot's tool tip during a Cartesian translation at

SPEED 100. This value must be greater than 0.

Cartesian rotation speed at SPEED 100

The maximum speed at which the tool tip will rotate about a specified axis during a Cartesian motion at a rotational SPEED 100.

Translation acceleration at SPEED 100

The maximum tool tip acceleration that can be achieved when ACCEL 100.

This value must be greater than 0.

Accel for # rotation at ACCEL 100

The maximum rotational acceleration that can be achieved about a Cartesian axis when ACCEL 100 is specified.

Max WORLD/TOOL pendant translation speed

Instructions for Adept Utility Programs

254

Max WORLD/TOOL pendant rotation speed

Time to reach max WORLD/TOOL pendant speed

Min WORLD/TOOL pendant translation increment

Min WORLD/TOOL pendant rotation increment

These parameters determine the speed and acceleration settings that are used when a robot is moved manually using the pendant.

If the SLOW button on the pendant is pressed and the speed pot is pressed close to its center (minimum plus or minus speed), the robot will move the smallest specified increment and then stop. If the speed is increased, the robot will begin to move at a continuous rate equal to five times the smallest incremental motion per second. As the commanded speed is increased, the robot's speed will increase linearly until the robot is moving at 25% of the maximum specified speed. If the SLOW button is turned off, the robot's speed will be linearly interpolated between zero and the maximum specified speed.

WARNING: RIA (Robotic Industries Association, USA) safety standards require that mechanical devices not exceed a tool tip speed of 76.2 millimeters per second (3 inches per second) when operated under manual control. Some national regulations may require an even lower speed. Be sure to set both the maximum Cartesian translational and the maximum joint manual control speeds so the tool tip cannot exceed this limit even with the robot at full extension.

In addition to the speed specifications, a parameter is provided which defines the manual control acceleration/deceleration rate.

Edit general motion specs

The general motion specifications establish the motion speed and acceleration limits as well as the start-up values for these parameters. The maximum allowable values help prevent users from placing excessive demands on the system. The default start-up values allow you to control accelerations and acceleration profiles used until user override.

When you select a menu option, the following information is provided on screen: l

Instructions for the specified option l

Current value l

Value range for the parameter if applicable

Instructions for Adept Utility Programs

255

Menu Options

Maximum allowable acceleration

Limits the maximum percent acceleration that the user is allowed to specify via the ACCEL instruction. Normally, this limit is set to 100%. However, there may be instances where 100% is routinely specified within robot programs, but higher values are permitted for special circumstances.

Maximum allowable deceleration

Limits the maximum deceleration that the user is allowed to specify via the

ACCEL instruction. Normally, this limit is set to 100%. However, there may be instances where 100% is routinely specified within robot programs, but higher values are permitted for special circumstances.

Maximum allowable program speed

Limits the maximum % speed that the user is able to specify via the SPEED program instruction (the SPEED monitor command is always limited to 100%).

Given that the inertia of the robot is usually quite variable, the maximum

%speed is normally set well above 100%.

Max rate of change of monitor speed

During the execution of a robot program, the monitor SPEED command can be used to change the overall speed of robot motions. This change takes affect immediately, even if the robot is currently executing a motion. To limit the acceleration jerk that the robot would experience if a large change in speed was applied instantaneously, any requested monitor SPEED change is distributed over several trajectory evaluation cycles. This parameter specifies the rate at which changes in the monitor SPEED are applied to the robot. For instance, if a value of 20 is specified, it would take 3 seconds for a change from SPEED 40 to

SPEED 100 to be fully applied.

Minimum execution time for joint motions

The minimum motion execution times should be set long enough to provide adequate time for the motion planner to plan the next motion before the current motion completes execution. If these values are too short, CP will break unnecessarily. If these values are too long, quick, high speed motions will not be possible. In essence, these values define the lower limit for the DURATION instruction for the current robot. As a convenience, if these values are set to 0, the minimum motion time will be set equal to the configured V+ trajectory cycle time.

Instructions for Adept Utility Programs

256

Minimum execution for Cartesian motions

The minimum motion execution times should be set long enough to provide adequate time for the motion planner to plan the next motion before the current motion completes execution. If these values are too short, CP will break unnecessarily. If these values are too long, quick, high speed motions will not be possible. In essence, these values define the lower limit for the DURATION instruction for the current robot. As a convenience, if these values are set to 0, the minimum motion time will be set equal to the configured V+ trajectory cycle time.

Default S-curve profile at system startup

Specifies the S-curve trajectory profile that will be selected by default when the controller is first booted. If the specified profile is not defined, profile 0 (a square wave acceleration) will be selected.

Default acceleration at system startup

This value specifies the default % acceleration that will be asserted when the controller is first booted.

Default deceleration at system startup

Specifies the default % deceleration that will be asserted when the controller is first booted.

Default BASE offsets

Specifies the default BASE transform used to modify the base transformation.

That transformation is used to offset the world reference frame relative to the

X/Y/Z coordinate system, and rotate the world reference frame about the Z axis.

Normally, the default BASE offsets are set to 0 and the world reference frame is assumed to be fixed in space such that the X-Y plane is at the robot mounting surface, the positive X axis points along the center of joint 1 when at zero degrees (or millimeters) and the Z axis coincides with the joint-1 axis. For additional information, see the BASE monitor command and the BASE program instruction.

Upper Speed Limit for SCALE.ACCEL

Defines the limit below which SCALE.ACCEL scales motion acceleration and deceleration values in proportion to the program speed. For example, if this value is set to 100% and a program speed of 50% is specified, the desired

Instructions for Adept Utility Programs

257

acceleration and deceleration will be internally set to half of what the user has specified. But, if the program speed is higher than 100%, the user specified acceleration and deceleration will be used without modification.

If the SCALE.ACCEL limit value is set to a large number, SCALE.ACCEL will always scale the acceleration and deceleration. For example, in this case, a speed of 200% would double the commanded acceleration and deceleration.

Edit S-curve trajectory

This menu allows you to create custom acceleration profiles to control motion. After a profile is defined, you can specify its use with a number of V+ instructions and commands, including

ACCEL, SPEED, and SCALE.ACCEL. If no profiles are defined, the default square-wave acceleration profile is used.

When you select a menu option, the following information is provided on screen: l

Instructions for the selected option l

Current value l

Value range for the parameter if applicable

Menu Options

Enable and edit a profile

Allows you to select a profile and edit the acceleration and deceleration values for that profile to smooth out robot motion.

For each robot, there can be as many as nine different profiles. Profile 0 is always defined to be a square-wave acceleration curve with all four ramp times set to zero. Profiles 1 through 8 are defined by the robot manufacturer and are a function of the mechanical design of the manipulator and the applications for which the robot was designed. For instance, the manufacturer might define a general purpose profile that has all of the ramp times set equal to a nominal value for the mechanism. This profile could be used whenever smooth performance throughout the motion was more important than minimum cycle time.

In instances where cycle time is more important, a profile with high jerk values during the acceleration and low jerk values during the deceleration might be more appropriate. If you are using SPEC to set up a mechanism that you have built, then you are the "robot manufacturer" and should choose ramp times to suit the capabilities of your mechanism.

Disable a profile

If you don't want to use a profile, choose this option to disable it. If all the

Instructions for Adept Utility Programs

258

profiles are disabled, the default is used: Profile 0 is always defined to be a square-wave acceleration curve with all four ramp times set to zero.

Details

While there are many different motion profiles that can be characterized as "Scurves", in V+ an S-curve is a trajectory that has a trapezoidal acceleration profile, giving an S-shaped velocity profile. V+ also supports a square-wave acceleration profile, which gives a trapezoidal velocity profile.

The benefit of a trapezoidal acceleration profile is that the rate of change of acceleration (the "jerk") can be controlled. (By comparison, the magnitude of the jerk for a square-wave acceleration profile is always infinite.) For many mechanisms, controlling the jerk is significant because high jerk values can cause the mechanical structure of the robot to vibrate. Minimizing structural vibrations is especially important at the end of a motion since such oscillations can adversely affect the settling time of the robot. This can affect the cycle. However, for stiff, strong mechanisms, a square-wave profile may result in shorter cycle times.

For a general trapezoidal profile, there are four acceleration values that can be specified, as shown in S-Curve (Trapezoidal Acceleration) Profile: the ramp up to maximum acceleration, the ramp down from maximum acceleration, the ramp up to maximum deceleration, and the ramp down to zero acceleration. In V+ each of these four acceleration values can be individually specified, and a set of the four values defines a specific acceleration "profile".

For a given motion, the duration of the motion and the characteristics of the acceleration profile depend on several parameters. These parameters are controlled by a number of V+ instructions and commands, including ACCEL,

SPEED, and SCALE.ACCEL (see the V+ Language Reference Guide ).

Edit motor stop-on-force specs

(This option is not currently available for Adept SmartMotion systems)

Edit collision detection specs

This menu item allows you to edit the parameters for detecting, and thus preventing, collisions between the robot end-effector and objects in the workcell. The menu shown in

User-

Defined Obstacle Definition Screen

is displayed. This menu allows you to define obstacles that represent objects or volumes in the workcell.

Each obstacle is defined by its shape, location, and size. The shape of an obstacle can be a box, a cylinder, a sphere, or a frustum. The location of each obstacle is defined with respect to the base reference frame of the robot when its BASE transformation is null, ( that is, relative to the physical base of the robot).

There are two classes of obstacles: avoidance obstacles and containment obstacles.

Instructions for Adept Utility Programs

259

Avoidance Obstacles

Avoidance obstacles define volumes that the robot tool tip must avoid. During operation, the path of the robot tool tip is automatically tested to ensure that it does not collide with these objects under the circumstances described below.

Containment Obstacles

Containment obstacles define volumes that must contain the robot tool tip and tool mounting flange. (This effectively defines all points outside of the containment obstacles as avoidance obstacles.) During operation, the path of the robot tool tip is automatically tested to ensure that it does not leave these volumes under the circumstances described below.

The workspace of the Quattro robot is defined by a containment obstacle. This is done because, unlike other robots, joint limits are not meaningful in defining the workspace. The V+ version that supports the Quattro defines a cone-like shape (a frustum) as a containment obstacle. This is actually the work envelope. Other obstacles can be defined within this obstacle.

CAUTION: Because the collision detection references the tool point of the robot, which is typically at the center of the tooling, you generally should add 1/2 of the diameter of the robot's end-of-arm tooling to each surface of the actual obstacle being modeled.

Consideration of Obstacles During Robot Motion

During operation, the path of the robot tool tip is automatically tested to ensure that it does not violate an obstacle definition under the following conditions: l

When the robot is being moved in WORLD or TOOL manual control mode.

l

When the destination of each motion is being planned.

l

While straight-line motions are being performed.

In addition, if the associated bit is set in Robot Option Word #1, obstacles are considered: l

When the robot is being moved in JOINT manual control mode.

l

While joint-interpolated motions are being performed.

Note, however, that the consideration of obstacles during joint-interpolated motions significantly increases the computational burden for the motions, and could affect the performance of the motions.

Instructions for Adept Utility Programs

260

User-Defined Obstacle Definition Screen

Choose one of the user-defined obstacles:

Instructions for Adept Utility Programs

261

Sample Collision Detection Options for Box Shape

Enter the desired value for the object shape, position, and size. The list of shape parameters will vary depending on the type of object selected (box, cylinder, sphere, or frustum). All dimensions are in millimeters.

Box requires X, Y, and Z lengths.

Cylinder requires diameter and height, in Z.

Sphere requires diameter.

Frustum requires Base diameter, height, in Z, and Top diameter.

Sample Collision Detection Options for Box Shape

shows an example of a completed screen.

You can repeat the previous steps for up to four objects in the robot workcell.

Related Utilities

CONFIG_C

DC_SETUP

Instructions for Adept Utility Programs

262

SPEC, Load, Save, UNDO, Change

File Name Program Name

File

Type

SPEC.V2

a.spec

B

Description

Robot specification utility

Load robot specifications from a disk file

Use this menu item to load robot configuration data from a disk file created with the

Save robot specifications to a disk file

menu item.

Save robot specifications to a disk file

After you have changed the robot configuration data, you can store the new data in a disk data file. The data in the file can be used later to apply your specific robot configuration data to another V+ system disk.

You can save specifications in a readable ASCII text file or in an encrypted binary file. Only the editable data are included in the ASCII file; binary files contain both editable and hidden data that completely specify the device. ASCII files are adequate in many cases because you ordinarily want to save only those specifications that you have edited. ASCII files are also adequate for any non-Adept device that is not password-protected because there are no hidden specifications in such devices. Binary file format is typically used on password-protected robots to save the complete description of the mechanism.

If your Adept system controls more than one robot, these menu choices access the data for the specific robot you chose in the main menu.

Save ALL specifications to system disk

After you have changed the configuration data for any of the items, you should store the new data on the V+ system disk. This menu item causes all the existing configuration data to be written to the V+ system disk. If the changed data is not stored on the system disk, the previous configuration data is used the next time the robot system is booted.

CAUTION: Before you modify a V+ system disk, you should make a copy of the system disk (with the DISKCOPY utility program).

If you normally boot your system from a floppy disk, make a copy of your V+ system disk

(with the DISKCOPY utility) before you use this procedure. Save the original diskette and store the new configuration information on the copy.

The V+ system must have been booted from the actual system disk (floppy disk or hard disk) on which the new configuration information is saved.

Instructions for Adept Utility Programs

263

If your Adept system controls more than one robot, this menu selection saves the data for

ALL the robots (and any external encoders).

To use the "Save ALL specification to system disk" option:

1. Select the "Save ALL specifications to system disk" option from the menu and then press ENTER. The following screen is displayed.

Save Specification Screen

2. At the prompt, press Y to initiate the process for writing the data to the boot disk (the data will not actually be written until later in the process).

Otherwise, press N to cancel and return to the menu.

3. Enter the drive letter at the prompt. You are prompted for permission to write the data to the V+ system on the selected drive.

4. At the prompt, press Y to write the data; to cancel, press N. If Y is pressed, the data is written to the system disk.

Undo SPEC changes

This selection allows restoration of any SPEC changes in RAM memory to the original settings.

NOTE: If any change to the SPEC utility is saved to the system disk before selecting this menu item, you must save the SPEC utility to the system disk again after selecting the menu item.

Depending on the configuration of the V+ system, the following two menu items may be available.

Instructions for Adept Utility Programs

264

Change robot number

The Change robot number option allows you to access other robots or mechanisms in the system in a multi-robot system.

To use the Change robot number option, select that option from the menu and then press

ENTER. The utility scans the system for the next robot in the system. Note that the main menu selections may change based on the type of robot that is detected.

Switch to external encoder specifications

If your system supports external encoders for conveyor tracking, select this item to edit the encoder parameters. See the Adept SmartMotion Developer's Guide for more information.

Display SmartServo network information

The Display SmartServo network information option allows you to view the current information (e.g., nodes, device type, serial numbers, etc.) for the SmartServo network. Refer to

DC_SETUP

for more details.

Edit SPEC program preference

This selection allows you to configure defaults for the SPEC program.

SPEC Program Preference Screen

Plot color preferences

This feature allows you to configure the Plot screen, by changing the colors of

Instructions for Adept Utility Programs

265

all the graphics within the plot window (see

Sample Plot Color Preferences

).

Sample Plot Color Preferences

To access this option:

1. From the main menu, choose the following menu options to access the

Plot Color Preferences Configuration menu:

"SPEC program preferences" .

The Plot Color Preferences menu is displayed ( Sample Plot Color Preferences Menu

).

Instructions for Adept Utility Programs

266

Sample Plot Color Preferences Menu

2. Select a preference to change. A list of available colors for that preference is displayed (see

Sample Plot Color Preferences With List of

Colors

).

3. Enter the number of the desired color and press ENTER.

Instructions for Adept Utility Programs

267

Sample Plot Color Preferences with List of Colors

Related Utilities

CONFIG_C

DC_SETUP

Instructions for Adept Utility Programs

268

Descriptions of Selected Program Operations

File Name Program Name

File

Type

SPEC.V2

a.spec

B

Description

Robot specification utility

Motion Acceleration and Deceleration Percentages

This feature allows you to specify unique acceleration and deceleration percentages for the point-to-point motion test during motor tuning. This can be useful for high-inertia robots that may require different acceleration and deceleration values.

From the Motor Tuning Test Configuration menu, select either "Move acceleration" (for setting the acceleration percentage) or "Move deceleration" (for setting the deceleration percentage). Type the desired value and press ENTER to accept it, or simply press ENTER to cancel the option and return to the Motor

Tuning Test Configuration menu.

Adding a Description to a SPEC-Generated Data File

Whenever a SPEC-generated data file is saved, you have the option of entering a description of the file contents. When saving a data file, you receive a prompt similar to the following:

Adding a Description to a SPEC Data File

To add a description to a file, type Y, then ENTER, and then type the message at the '>' prompt. You can add additional lines (including blank lines) by pressing ENTER at the end of each line. To end the message, type a period character

Instructions for Adept Utility Programs

269

(.) by itself on the last line and then press ENTER. The message is automatically included in the header portion of the data file.

Navigation Hotkeys

Many of the SPEC menus now include hotkeys that provide quick navigation to specific functions. SPEC program menus are dynamic and are different depending on system configurations. Hotkeys are static, providing quick navigation in

SPEC for all systems regardless of configuration. An example of a menu that contains hotkeys is shown in the following figure.

Sample Menu with Hotkeys

Pressing a function key advances the SPEC program directly to the menu associated with that function key.

Custom Point-to-Point Motion Routine

This feature allows you to execute a custom point-to-point motion routine in place of the standard routine in SPEC. (The standard routine is protected and

Instructions for Adept Utility Programs

270

cannot be edited.) If you want to do something special with the robot and analyze data collected during the motion, write a program, and then specify the name in the SPEC program. SPEC verifies that the custom routine exists

(in RAM) and is executable. At execution time, SPEC calls the custom program instead of the standard routine.

NOTE: You can also specify a custom point-to-point motion routine as one of the SPEC program preferences.

NOTE: The custom routine must be in RAM when the name is specified to the SPEC utility. SPEC verifies that the custom routine exists and is executable (at least as far as V+ is concerned).

Select the "Pt-to-Pt motion routine" from the Motor Tuning Test Configuration menu. You are prompted for the name of the new routine. Type the name of the custom routine and press ENTER. (Enter a space and press ENTER to revert to the standard routine, or press ENTER to cancel the option and return to the

Motor Tuning Test Configuration menu.)

When using a custom motion routine, please note: l

The routine must have this calling sequence (see below for details):

routine(plot, ctl[ ], $err)

l

The routine must be loaded into RAM.

Instructions for Adept Utility Programs

271

Program Listing for sp.tu.mov.test( )

The program listing for the standard routine sp.tu.mov.test( ) is provided below to show how the routine works. This allows you to create custom motion routines that use SPEC to collect motion data.

NOTE: The standard routine is protected. This listing is supplied so that developers can reference the standard program as an example of creating custom motion routines.

;

;

;

;

;

;

;

;

;

;

;

;

;

;

;

;

;

;

;

;

;

;

;

;

;

;

;

;

;

;

;

;

.PROGRAM sp.tu.mov.test(plot, ctl[], $err)

; ABSTRACT: Performs programmed motion for taught-point tuning test.

Assumes precision points #sp.tu.pt[0] and #sp.tu.pt[1] have been defined. These variables contain the two precision points taught for the point-to-point test.

sp.tu.loc[0] and sp.tu.loc[1].

Custom routines may also use two transforms that are taught at the same time:

This is the standard point-to-point motion program.

In order to take advantage of the data collection and plotting features of the SPEC program, note the CALLs to the following programs in the code below:

Custom motion programs can be used to perform special moves for servo tuning analysis.

Any custom program MUST have the same calling sequence as this program.

CALL sp.tu.config(time) ;Specfies the amount of data

;collection time in seconds.

CALL bf.enable(mode, sync) ;Enables data collection buffer.

The values for "mode" and "sync" are detailed below: mode 0 (default): Stop data collection

1: Trigger re-enabled after collection

2: Single sweep sync Trigger synchronization

0 (default): Trigger now

1: Trigger to internal trajectory generator

CALL sp.tu.plot(time, $err) ;Plots the results.

;calculated.

Note the

;"time" argument is internally

CALL sp.tu.dump(lun) ;Dumps data to the specified

;Logical Unit Number (lun).

;

;

;LUN = 4 is the terminal or

;MONITOR window.

;

; The data collected will be that configured in the data-collection

; menu.

;

; INPUT PARM:

;

; plot ctl[]

Flag indicating whether to plot results

Array of test control values.

Relevant values for point-to-point motion test are:

Instructions for Adept Utility Programs

272

;

;

;

;

;

; OUTPUT PARM: $err ctl[sp.tu.move.spd] = Move speed (% motor max) ctl[sp.tu.move.acc] = Acceleration (1-100%) ctl[sp.tu.move.dec] = Deceleration (1-100%) ctl[sp.tu.move.prf] = Accel profile

;

;

Error string.

If non-empty, then an error occurred that will be reported to the user.

; SIDE EFFECTS: None

;

; Copyright (c) 1994-1998 by Adept Technology, Inc.

AUTO DOUBLE time

CALL sp.tu.config(10) ;Configure 10 sec of data collection

; Set up speed and acceleration

SPEED ctl[sp.tu.move.spd] ALWAYS

ACCEL (ctl[sp.tu.move.prf]) ctl[sp.tu.move.acc], ctl[sp.tu.move.dec]

; Move to 1st point a little slower than the test motions if the test

; motion speed is greater than or equal to 50%.

IF ctl[sp.tu.move.spd] >= 50 THEN

SPEED ctl[sp.tu.move.spd]/2

END

COARSE

MOVE #sp.tu.pt[0]

DELAY 0.2

BREAK

FINE

MOVE #sp.tu.pt[1]

WAIT time = TIMER(-3)

CALL bf.enable(1)

;Move at 1/2 speed

;Don't bother to settle accurately

;Move to Start point

;Allow some time for settling

;Complete settling time

;Perform motion accurately

;Initiate motion

;Allow motion to start

;Reset cycle timer

;Enable buffer: wrap-around, start now

BREAK

MOVE #sp.tu.pt[0]

BREAK time = TIMER(-3)-time

WAIT.EVENT , 0.25

CALL bf.enable()

;Complete motion

;Return to start position

;Complete motion

;Record cycle time

;Collect for a while longer

;Turn off buffer

IF plot THEN

CALL sp.tu.plot(time, $err) ;Plot results

ELSE

CALL sp.tu.dump(4) ;Dump data buffer to monitor

END

Instructions for Adept Utility Programs

273

RETURN

Instructions for Adept Utility Programs

274

SQUEEZE

SQUEEZE

File Name

SQUEEZE.V2

Program

Name a.squeeze

B

File

Type

Description

Disk file compression utility

Overview

Compress a disk file by deleting all the comments and blank lines in the V+ programs in the file.

When a V+ program is loaded into the system memory from a disk file, all the comments and blank lines in the program take up system memory. The squeeze program eliminates all the comments and blank lines from program files so the programs requires less memory (and so that the program file requires less disk space).

Requirements

You will need the following to run SQUEEZE: l

Adept system controller l

Program file(s) to be compressed l

Disk to receive compressed file(s)

If you are using a robot system, the robot must be calibrated, and COMP mode must be selected on the manual control pendant.

or

The DRY.RUN system switch must be enabled.

or

The program can be executed as a program task other than #0.

Usage Considerations

The compression program defines several real-valued and string variables with the prefix sq. that must not be modified by you or by other programs. All of the variables are deleted from memory when a DELETE command is used to delete the program from memory.

To access the SQUEEZE utility, follow the

Loading and Executing Adept Utility Programs

procedure. After the SQUEEZE utility is loaded and executed, the opening screen is displayed.

Instructions for Adept Utility Programs

275

SQUEEZE

To use the SQUEEZE utility:

1. Enter the disk unit of the input file. Or you can simply press ENTER to select the default unit when one is shown.

2. Enter the name of the input file to be compressed. The file extension ".V2" is assumed if no extension is specified.

NOTE: An optional subdirectory specification can be included in the file specification. If no subdirectory specification is included, the file is assumed to be in the default subdirectory on the specified input disk.

3. Enter the disk unit for the output file or press ENTER to accept the default unit.

4. Enter the name of the output file to be created. If you simply press ENTER, the input file name with the extension .SQU is used.

NOTE: An optional subdirectory specification can be included in the file specification. If no subdirectory specification is included, the file is created in the default subdirectory on the specified output disk.

5. If you want to stop, enter N (or just press ENTER) in response to the prompt

Squeeze another file (Y/N)?

Otherwise, if you want to process another file, enter Y and repeat the above process for the next file to be compressed.

Related Utilities

FORMAT

VPROTECT

Instructions for Adept Utility Programs

276

TOUCHCAL

TOUCHCAL

File Name

TOUCHCAL.V2

Program Name a.touchcal

B

File

Type

Description

Touchscreen calibration utility

Overview

Calibrate an installed touchscreen for use as the system pointing device.

A touchscreen can be used as the system pointing device, instead of a mouse or trackball.

Since the resolution of a touchscreen is different from the standard trackball, a simple calibration procedure must be performed. After the calibration procedure has been completed, the data can be stored in a disk file for access by an application program.

Requirements

You must have the following items to run TOUCHCAL: l

Adept controller with a VGB module in the system l

High-resolution graphics monitor (system option) l

Installed touchscreen (third-party option) l

PC-style keyboard (system option)

Before you can run TOUCHCAL: l

The touchscreen rather than a trackball or mouse must be connected to the VGB module. (You must know the type of touchscreen you are using.) l

If you are using a robot system, the robot must be calibrated, and COMP mode must be selected on the manual control pendant.

or

The DRY.RUN system switch must be enabled.

or

The program can be executed as a program task other than #0.

Usage Considerations

The touchscreen calibration data must be loaded each time the controller is turned on. After the calibrating procedure has been performed, the data can be stored in a disk file for access by an application program.

Instructions for Adept Utility Programs

277

TOUCHCAL

Your application program can CALL the routine in the file LOADTCH.V2 to load the touchscreen calibration.

The TOUCHCAL program defines many real-valued and string global variables with the prefix

tc. that must not be modified by you or by other programs. (All these variables are deleted from memory when the program exits normally or when a DELETE command is used to delete the program from memory.)

Menu Structure

Menu

LOAD calibration data from disk

STORE calibration data to disk

CALIBRATE the touchscreen

Elographics: Intelli-Touch

Elographics: Accu-Touch

Description

Loads valid calibration data already created.

Stores valid calibration data.

Calibrates the touchscreen for use.

LOAD calibration data from disk

Before calibration data can be loaded, a valid calibration file must have been created using

STORE calibration data to disk

or

CALIBRATE the touchscreen

. The calibration file must have the name TOUCHnnn.DAT where nnn is the number of the stored calibration data set.

The program asks for the disk drive and subdirectory where the calibration file is stored.

After you enter the subdirectory specification, the program asks for the number of the touchscreen calibration (0 to 999).

After you supply a calibration file number, the program displays the directory path to use to load a calibration file. If the path and file name are correct, respond and the file will be loaded.

STORE calibration data to disk

Before calibration data can be stored, a valid calibration file must have been loaded using

LOAD calibration data from disk

, or new calibration data must have been created using

CAL-

IBRATE the touchscreen

.

The program asks for the disk drive and subdirectory where the calibration file is to be stored.

After you enter the subdirectory specification, the program asks for a touchscreen calibration number. This number is used to create a file with the name TOUCHnnn.DAT, where nnn is the number you specify.

Instructions for Adept Utility Programs

278

TOUCHCAL

After you supply a calibration file number, the program displays the directory path it will use to store the calibration file. If the path and file name are correct, respond and the file is created.

CALIBRATE the touchscreen

Elographics: Intelli-Touch

The Intelli-Touch screen uses Surface-Acoustic Wave (SAW) technology.

After you make your selection, the program presents a square in each corner of the monitor and asks you to touch the center of each square. After touching all the squares, you are then asked to check the screen calibration:

Move your finger around on the screen.

The pointer should track your finger within 0.25 inch (6 mm).

Do you want to calibrate again to improve the results (Y/N)?

If you respond with N, the program proceeds to store the calibration data in a disk file. See

STORE calibration data to disk

.

Elographics: Accu-Touch

The Accu-Touch screen is a resistive screen.

After you make your selection, the program presents a square in each corner of the monitor and asks you to touch the center of each square. After touching all the squares, you are then asked to check the screen calibration:

Move your finger around on the screen.

The pointer should track your finger within 0.25 inch (6 mm).

Do you want to calibrate again to improve the results (Y/N)?

If you respond with N, the program proceeds to store the calibration data in a disk file. See

STORE calibration data to disk

.

Related Utilities

CFG_COBR

LOADTCH

Instructions for Adept Utility Programs

279

VPROTECT

VPROTECT

File Name

VPROTECT.V2

Program Name a.vprotect

B

File

Type

Description

Disk file protection utility.

Overview

The VPROTECT utility is used to apply access protection to the specified disk file and the V+ program(s) it contains.

Usage Consideration

The VPROTECT utility can only be used on disk files that are not already protected. The program displays the protection attributes of the file if the input file is already protected.

When a file is protected, the programs in the file become protected also. That is, it is not possible to display, edit, or store the programs after a protected file is loaded into memory from disk. Therefore, you should be careful to keep a copy of the original, unprotected input file.

To access the VPROTECT utility, follow the

Loading and Executing Adept Utility Programs

procedure. After the VPROTECT utility is loaded and executed, the opening screen is displayed.

To use the VPROTECT utility:

1. At the "Enter the INPUT file specification" prompt, enter the file specification in the form:

device>unit:\path\<filename.ext>

For example, to process a file located on the CompactFlash (drive D) in the UTIL directory with the filename TEST.V2, you would enter:

disk>d:\util\test.v2

Instructions for Adept Utility Programs

280

VPROTECT

NOTE: The .V2 extension is optional, in this case, because the VPROTECT utility looks for a .V2 extension by default. The device, unit and path are also optional, as for all file specifications.

2. After typing the file specification, press ENTER. You are prompted for the output file specification.

3. At the "Enter the OUTPUT file specification" prompt, enter the file specification in the form: device>unit:\path\filename.ext

For example, to store the output file to the CompactFlash (drive D) in the UTIL directory with the filename TEST.SQU, you would enter: disk>d:\util\test.squ

NOTE: The .SQU extension is optional, in this case, because the VPROTECT utility adds a .SQU extension by default. Again, the device, unit and path are optional.

4. After typing the file specification, press ENTER. If the output file already exists, you will be asked if you would like to replace it with a new copy. To proceed, press Y; to cancel, press N.

If you choose to proceed, you will be asked if you wish to add access restriction based on a specified controller serial number.

5. At the "Restriction controller serial number" prompt, type the controller serial number.

This will allow the output file to be loaded only on the specified controller. Otherwise, press ENTER to bypass this restriction.

You are asked if you wish to add access restriction based on a specified option number.

6. At the "Restriction option number" prompt, type the option number. This will allow the output file to be loaded only if the specified V+ option is enabled. (The option number is specified by the last two digits of the Adept part number for the associated option license. For example, the part number for the "V+ Extensions" license is 09961-

00002, so the corresponding option number is 2.)

Otherwise, press ENTER to bypass this restriction.

A "Creating..." message is displayed. While the input and output files are processed, your screen should look similar to the following:

Instructions for Adept Utility Programs

281

VPROTECT

Once the utility has created the output file, a "Program completed" message is displayed.

Instructions for Adept Utility Programs

282

XMODEM

XMODEM

File Name

XMODEM.V2

Program Name a.xmodem

R

File

Type

Description

File transfer utility

Overview

Transfer disk files using the XMODEM protocol.

XMODEM is a serial communication protocol that incorporates basic error checking, handshaking, and retransmission of corrupted data. This utility allows for XMODEM transfers between Adept controllers, between Adept controllers and other computers, and between

Adept controllers and modem devices.

NOTE: The Kermit file-transfer protocol is built into V+ and can be enabled for a serial port with the utility CONFIG_C.

Requirements

You will need the following items to run XMODEM: l

Adept system controller l

Serial connection between the controller and the device being communicated with l

Correct configuration of communication parameters on the receiving and transmitting ends. (The utility CONFIG_C specifies the default serial configuration of the serial ports on the Adept controller. The FSET instruction can be used to change that configuration after the V+ system has been initialized.)

If you are using a robot system, the robot must be calibrated, and COMP mode must be selected on the manual control pendant, or the DRY.RUN system switch must be enabled, or the program can be executed as a program task other than #0.

Usage Considerations

The XMODEM program defines many real-valued and string global variables with the prefix x. that must not be modified by you or by other programs. (All these variables are deleted from

Instructions for Adept Utility Programs

283

XMODEM memory when the program exits normally or when a DELETE command is used to delete the program from memory, as described earlier.)

Program Operation

1. The program asks you for the serial port to use for the file transfer. (See the V+ Operating System User's Guide and the Adept MV Controller User's Guide for details.)

2. Next, the program asks whether you want to send or receive a file.

3. After you indicate the direction of the transfer, the system asks you the name of the file to transfer or the name to give the file that is being received. The file name can include a disk device and unit, and a complete directory specification.

4. After entering the file specification, the program verifies that the remote system is ready to send/receive a file and then begins the file transfer.

5. If the remote system does not respond after several tries, the program times out and halts.

6. After a successful file transfer, you are asked if you want to transfer another file.

Related Utilities

FTP_CLNT

FTP_SRVR

Instructions for Adept Utility Programs

284

Common Procedures

Common Procedures

Introduction

Installing the Adept Utility Programs

Procedure

Loading and Executing Adept Utility Programs

Upgrading Your V+ System

Tools

User Interface

V+ Components

Procedure

Complete System Backup

Tools

User Interface

Software Components

Procedure

System Restore

Tools

User Interface

Software Components

Procedure

Instructions for Adept Utility Programs

285

Introduction

Introduction

This chapter provides an overview of the procedures for performing common operations, such as upgrading your V+ system.

NOTE: The information in this chapter is intended to provide an overview of each procedure. The exact steps for your system may vary, based on the V+ version, the system components, and the type of media you are reading from or writing to. The V+ utilities contain precise instructions that will guide you through the steps for your system. Therefore, you are encouraged to carefully read and follow the on-screen instructions.

l

Installing the Adept Utility Programs

explains how to install the Adept Utility programs onto your system's flash RAM (drive D), hard drive or network drive (drives B and D).

l

Loading and Executing Adept Utility Programs

explains how to load the utility programs from the directories in which they reside onto the utility program disks, or hard drives (A, B, C, or D). You can then execute the utility that you have loaded into system memory.

l

Upgrading Your V+ System

gives procedures on upgrading your old V+ system software version to a new V+ system software version (V+ 13.0 software to V+ 14.0 or later software).

The system backup operation lists the needed tool requirements and procedures to perform a total system backup of your operating system and the files that you have created.

Instructions for Adept Utility Programs

286

Configuring an RIO Device in V+

Configuring an RIO Device in V+

NOTE: The information in this section is intended to provide an overview of the procedure. The exact steps for your system may vary, based on the V+ version, the system components, and the type of media you are reading from or writing to. The V+ utilities contain precise instructions that will guide you through the steps for your system. Therefore, you are encouraged to carefully read and follow the on-screen instructions.

In an Adept SmartModules system, you must configure the RIO I/O blocks so they are recognized by V+. You will use DC_SETUP.V2 to select the block number. Optionally, you will need to use CONFIG_C.V2 to assign the Input and Output signals, if you select any block other than 16 (described in the next section).

NOTE: Before configuring a RIO, the SmartModules system must be installed and the system software configured.

Selecting I/O Signal Blocks

1. Run the DC_SETUP.V2 program, and select "Configure RIO input/output blocks".

Follow the instructions on the screen as you step through the program.

2. Identify the SmartAmp with the LED flashing green and red. This should be the SmartAmp that the RIO is attached to. Press ENTER when prompted.

3. Enter a block number when prompted. If you select input block 16, these signals are automatically assigned for you: l

V+ input signals 1033-1044 l

V+ output signals 33-44

You can use these signals without additional configuration.

If you choose an input or output block other than 16, you need to go to the next section to assign I/O signal numbers.

NOTE: For reference, the default configuration for block 16 is shown on

See

Default Configuration for Block 16

.

Assigning I/O Signal Numbers

If you choose a block other than 16, then you will need to use the following procedure to assign I/O signals to specific blocks.

Input blocks and output blocks are numbered independently so you can use the same number for both an input and an output block. You must be sure that the block number you specify is not used for the same type of block in any other RIO or sDIO module in your sys-

Instructions for Adept Utility Programs

287

Configuring an RIO Device in V+ tem. You can check how block numbers are assigned by using the SRV.NET monitor command.

The I/O signal number ranges for a SmartController system are: l

Inputs 1033 to 1512 l

Outputs 33 to 512

Procedure to Assign I/O Signal Numbers

1. If you choose an input or output block other than 16, or if you want to use signals different from the defaults shown above for block 16, you must assign specific signals to the I/O blocks. Typically, robot tool control signals use blocks 1-15, and general digital

I/O signals use blocks 16-31.

Run the CONFIG_C.V2 program and select:

" V+ System Configuration" and then select:

"Edit system configuration" and then select:

"Change DIGITAL_INPUT configuration" or

"Change DIGITAL_OUTPUT configuration"

2. The program steps you through the process of adding a new statement to assign Input and Output signals to a block, and then to a byte (1 to 4) within a block. In a RIO, you must map the 12 input channels to bytes 1 and 2 of a specific block. The 8 output channels can be mapped to byte 1 of a specific block. See Example 1.

Example 1

The following example shows mapping SIGNAL 1033 to Input_Block 2 and Input_Byte 1.

Add a new statement (Y/N)? y

1: POS_LATCH

2: VIS_TRIGGER

3: SIGNAL

Enter number of keyword for new statement: 3

SIGNAL : Value = 1001 (min = 1001, max = 1505):

Instructions for Adept Utility Programs

288

Configuring an RIO Device in V+

1033

/INPUT_BLOCK

/INPUT_BYTE

/IO_OPTIONAL

: Value = 1 (min = 1, max = 31): 2

: Value = 1 (min = 1, max = 4): 1

: Value = NO

1 > NO

2 > YES

Enter selection: 1

SIGNAL 1033 = "/INPUT_BLOCK 2/INPUT_BYTE 1 /IO_OPTIONAL NO"

3. Once you have completed editing the Input and Output configurations in CONFIG_

C.V2, save the edited file by exiting to system monitor.

4. Reboot the controller to enable the changes.

Default Configuration for Block 16

By default, block 16 is configured so that Input signals 1033 to 1064 are assigned as follows.

Note that the signal numbers are in groups of eight per byte.

SIGNAL 1033 = "/INPUT_BLOCK 16 /INPUT_BYTE 1 /IO_OPTIONAL YES"

SIGNAL 1041 = "/INPUT_BLOCK 16 /INPUT_BYTE 2 /IO_OPTIONAL YES"

SIGNAL 1049 = "/INPUT_BLOCK 16 /INPUT_BYTE 3 /IO_OPTIONAL YES"

SIGNAL 1057 = "/INPUT_BLOCK 16 /INPUT_BYTE 4 /IO_OPTIONAL YES"

Output signals 33 to 64 are assigned in a corresponding manner. See the description of the

CONFIG_C.V2 program

for more information on this topic.

Instructions for Adept Utility Programs

289

Installing the Adept Utility Programs

Installing the Adept Utility Programs

NOTE: The information in this section is intended to provide an overview of the procedure. The exact steps for your system may vary, based on the V+ version, the system components, and the type of media you are reading from or writing to. The V+ utilities contain precise instructions that will guide you through the steps for your system. Therefore, you are encouraged to carefully read and follow the on-screen instructions.

NOTE: The Adept utility programs are installed in each system shipped by Adept. The procedure for copying new utility programs or updating old files on Compact Flash from an

NFS-mounted drive is shown below.

If you have plenty of space on your Compact Flash, Adept recommends that you copy all the utility programs onto your Compact Flash. If you are short of disk space, you need only copy the utilities that you expect to use. Here are some recommendations:

General-purpose utilities: l

All users: DISKCOPY and CONFIG_C l

All robot users: SPEC and SPECSUB

Specialized utilities: l

AdeptVision option: ADV_CAL, LOADAREA, and ADV_USER l

Belt tracking option: BELT_CAL and LOADBELT l

Touchscreen users: TOUCHCAL and LOADTCH l

SmartModules users: SM_CAL and DC_SETUP l

AdeptVicron users: ABS_ENC l

AdeptSix users: A6X_CAL l

AdeptMotion installers: CONFIG_C, SPEC, and SPECSUB l

Program developers: EDITICON, LOADICON, PROFILER, SQUEEZE, and SECURE l

AdeptFTP option: FTP_CLNT and FTP_SRVR l

Miscellaneous: XMODEM and FORMAT

You may use NFS to load these utility programs directly from the CD-ROM that was supplied with your V+ system. Adept recommends that you use the following procedure to copy some or all of the programs to a subdirectory on the Compact Flash.

Procedure

This procedure assumes:

Instructions for Adept Utility Programs

290

Installing the Adept Utility Programs l

You are already connected to and communicating with the Adept controller through

AdeptWindows or Adept DeskTop.

l

You have already mounted your PC's CD-ROM drive (as `XCD') through NFS.

1. If it does not already exist, create a subdirectory to receive the files (for more details see the FDIRECTORY command). Type: fdirectory/c d:\util\

2. Type ex 1 a.diskcopy to execute the DISKCOPY utility.

3. Use the DISKCOPY utility to copy all the files from your PC's CD-ROM drive to drive D, as follows: a. Insert the V+ CD-ROM into the CD-ROM drive of your PC.

b. In the V+ monitor window, choose:

4=> Copy multiple files.

c. When prompted, type NFS>XCD to specify the CD-ROM drive as input, and type D to specify drive D as output.

d. Type to verify the copy operations.

e. Type \Utilxx.x\*.* (where `xx.x' represents the new V+ version) to specify the files to copy.

f. Type \util\ as the output subdirectory.

g. If prompted, replace any existing files of the same name.

h. When the name of the first file is displayed, type G (Go) to copy all files. (If you do not want to copy all of the files, type (Yes) for each file you want to copy.)

NOTE: See the description of the

DISKCOPY utility program

later in this manual if you need more information about that program.

Instructions for Adept Utility Programs

291

Loading and Executing Adept Utility Programs

Loading and Executing Adept Utility Programs

NOTE: The information in this section is intended to provide an overview of the procedure. The exact steps for your system may vary, based on the V+ version, the system components, and the type of media you are reading from or writing to. The V+ utilities contain precise instructions that will guide you through the steps for your system. Therefore, you are encouraged to carefully read and follow the on-screen instructions.

The following procedures explain loading and executing Adept Utility Programs. Different utilities can be executed by changing UTILITY NAME to the utility desired.

1. Save to disk any program changes you have made.

2. Clear system memory by typing: zero

3. Load the utility program: load \util\UTILITY NAME

NOTE: Use the correct drive and path specification if the file is stored on another drive or subdirectory.

4. Execute the program: execute a.UTILITY NAME

To execute the program as task #1, you can use: execute 1 a.UTILITY NAME

5. Select the option you want from the menu.

6. Follow the prompts provided by the program.

NOTE: If a floppy diskette is modified, the small write-protect slider on the back of the diskette must be in the unprotected position. That is, it must be in the position that closes the hole through the diskette jacket. Make sure you move the slider back to the protected position after the operation is completed.

Do not alter the original V+ CD-ROM supplied by Adept. Instead, make a copy of the CD-ROM contents (with this program during the process of installation, or with the DISKCOPY utility), and then modify the configuration information on the copy.

7. Delete the configuration program from the system memory by typing: kill

Instructions for Adept Utility Programs

292

Loading and Executing Adept Utility Programs

NOTE: Use "kill 1" in place of "kill" if the program was executed as task #1.

Instructions for Adept Utility Programs

293

Complete System Backup

Complete System Backup

NOTE: The information in this section is intended to provide an overview of the procedure. The exact steps for your system may vary, based on the V+ version, the system components, and the type of media you are reading from or writing to. The V+ utilities contain precise instructions that will guide you through the steps for your system. Therefore, you are encouraged to carefully read and follow the on-screen instructions.

This section describes the process of backing up your system information, application code, and global, string, and location variables on an AWC-based controller. Since you are performing a system backup, these instructions assume that you have a functioning system and user interface.

The entire backup process may take up to 45 minutes.

Tools

This section describes the tools (user interface, hardware, software, etc.) that you need to perform the backup.

User Interface

The user interface must be one of the following: l a monitor and Adept VGB card l a PC with AdeptWindows PC, and an Ethernet or serial connection to the AWC board l a PC with terminal emulation software and a serial connection to the AWC, or l a dumb terminal with a serial connection to the AWC.

Software Components

You need the following items to backup your V+ system: l

A V+ system (on a diskette, CD-ROM, hard drive, or Compact Flash).

This is the V+ system that you receive from Adept. Please note the following: l l l

If your V+ system is on a diskette, you must have access to a floppy drive. The floppy drive can be located on an Adept SIO board (PN 30332-22350), on your

PC and accessed using NFS server software, or it can be an AWC board floppy drive (PN 15350-00001).

If your V+ system is on a hard drive, the hard drive must be located on an

Adept SIO board, or it can be located on your PC and accessed using NFS server software.

If your new V+ system is on a CD-ROM, the CD-ROM drive must be located on your PC and accessed using NFS server software.

Instructions for Adept Utility Programs

294

Complete System Backup l

If your V+ system includes support for a non-Adept robot, the installation process must access the appropriate device-module file for the V+ system. That file is distributed by Adept in the \SYSTEM\ subdirectory on the V+ system disk.

NOTE: The AdeptWindows kit (PN 90963-00210) includes the AdeptWindows software, NFS software, and an Ethernet crossover cable. Note that if you are using a

PC, you must have AdeptWindows version 2.0 or later.

l

Blank high-density diskettes (formatted or unformatted).

You need four (4) blank high-density diskettes for: l l

Creating a copy of the V+ system (if you do not already have one)

A backup copy of all your application code, including any location, real, and string variables

Procedure

A complete system backup is a two-step process. During this procedure you will: l

Save your current robot parameter data and copy the V+ system code to a target (output) device l

Copy the variables and application programs to the target (output) device

You will be using the CONFIG_C.V2 utility to backup the V+ system information. You will also be using the DISKCOPY.V2 utility to copy other files.

NOTE: All protected files are not copied to the backup files. Protected system files are found on the Adept-supplied floppy disks. Any protected program code supplied by your integrator can be found on disks supplied by the integrator.

NOTE: If you are installing V+ from a PC, then you must make sure that autoboot is disabled. This can be set using NVRAM switches in CONFIG_C or hardware switched on the

AWC board. See "SET SWITCHES in the NVRAM" for details on setting the NVRAM switches in CONFIG_C; see the Adept MV Controller User's Guide for V+ Version 13.0 or later for details on the hardware switches.

To backup a customized V+ system:

1. Save the current robot and encoder configuration data in disk files.

NOTE: The CONFIG_C and SPECSUB version used for this step must be compatible with the V+ system.

If the V+ system is not configured to control any robot and does not access external

(belt) encoders, proceed to

step 2

.

Instructions for Adept Utility Programs

295

Complete System Backup

If the V+ system controls one or more robots, or if it accesses external (belt) encoders, perform steps

a

through h below.

a. Boot the AWC-based controller from the V+ system to backup (drive D if the system is on the Compact Flash; drive C if the system is on the SIO board's hard disk).

b. Load and execute the CONFIG_C.V2 utility by entering the commands:

lo [drive]:\util\config_c f8 ex 1 a.config_c f8

where [drive] is the letter of the drive that contains the V+ system (drive D if the system is on the Compact Flash; drive C if the system is on the SIO board's hard disk). The CONFIG_C utility initializes and the main menu is displayed

(see

The CONFIG_C Utility Main Menu

).

The CONFIG_C Utility Main Menu c. From the CONFIG_C main menu, select "V+ Installation" by typing 1 and pressing ENTER. The INSTALLATION OF V+ SYSTEM menu is displayed.

d. From the INSTALLATION OF V+ SYSTEM menu, select "SAVE current ROBOT

DATA" by typing 1 and pressing ENTER. Follow the instructions in the prompts to complete the operation. A binary configuration data file for each robot and for the external encoders is created. (These files can be stored on any disk,

Instructions for Adept Utility Programs

296

Complete System Backup including a V+ system disk.) e. When the operation is completed, press ENTER to return to the INSTALLATION

OF V+ SYSTEM menu.

f. From the INSTALLATION OF V+ SYSTEM menu, select "Return to MAIN MENU" by typing 0 and pressing ENTER. The main menu is displayed.

g. From the main menu, select "EXIT to system monitor" by typing 0 and pressing

ENTER.

h. Clear the controller memory by entering the command:

zero f8

and answering Y to the "Are you sure" prompt.

2. Change directories to the source (input) directory you want to copy by entering the commands:

cd [directory] f8

where [directory] is the directory of the drive that contains the information to be backed up.

3. Load and execute the DISKCOPY utility from the source drive, by entering the commands:

lo [drive]:\util\diskcopy f8 ex 1 a.diskcopy f8

where [drive] is the letter of the drive that contains the new V+ system. The DISK-

COPY utility initializes and the main menu is displayed (see

The DISKCOPY Utility Main

Menu

).

Instructions for Adept Utility Programs

297

Complete System Backup

The DISKCOPY Utility Main Menu a. From the DISKCOPY main menu, select "COPY multiple FILES" by typing 4 and pressing ENTER. You are prompted for the input and output disk device (source

(input) and target (output) drives).

b. At the prompts, enter the drive and path for the source (input) and target (output) drives. For example, if your source files are on an NFS drive, and the target is your AWC board's D drive (Compact Flash), answer the prompts as shown: c. At the prompt "Enter spec of file (s) to copy (blank to exit)", type "*.*" and press ENTER.

d. Answer the remaining prompts as shown:

The files are copied from the source drive to the target drive. Each file in the directory being copied is shown with a prompt, type Y, N, G, or Q.

Instructions for Adept Utility Programs

298

Complete System Backup

Prompt

Reply

Y

N

G

Q

Action Performed

Copy this file

Do not copy this file and move to the next file

Copy all files and do not ask for each individual file in the directory

Quit copying multiple files and return to the main menu of the DISKCOPY screen

NOTE: If you are using AdeptModules Linear mechanisms, you must also copy the contents of the SPECDATA folder on the utility disk to the root directory of the compact flash (D:\SPECDATA\).

e. After all of the files have been copied, press ENTER at the "Enter spec of file(s) to copy" prompt to exit. The DISKCOPY main menu is displayed (see

The DISK-

COPY Utility Main Menu

).

f. At the DISKCOPY main menu, press ENTER. The V+ dot prompt is displayed.

If your controller had been configured to autoboot prior to upgrading the V+ version, you must change the NVRAM or AWC dip switches to reenable the autoboot feature.

Instructions for Adept Utility Programs

299

System Restore

System Restore

NOTE: The information in this section is intended to provide an overview of the procedure. The exact steps for your system may vary, based on the V+ version, the system components, and the type of media you are reading from or writing to. The V+ utilities contain precise instructions that will guide you through the steps for your system. Therefore, you are encouraged to carefully read and follow the on-screen instructions.

This section describes the process of restoring your system information, application code, and global, string, and location variables on an AWC-based controller. Since you are performing a system restore, these instructions assume that you have a functioning system and user interface.

The entire restore process may take up to 45 minutes.

Tools

This section describes the tools (user interface, hardware, software, etc.) that you need to perform the restore.

User Interface

The user interface must be one of the following: l

A monitor and Adept VGB card l

A PC with AdeptWindows PC, and an Ethernet or serial connection to the AWC board l

A PC with terminal emulation software and a serial connection to the AWC, or l

A dumb terminal with a serial connection to the AWC.

Software Components

You need the following items to restore your V+ system: l

A V+ system (on a diskette, CD-ROM, hard drive, or Compact Flash).

This is the V+ system that you receive from Adept. Please note the following: l l l

If your V+ system is on a diskette, you must have access to a floppy drive. The floppy drive can be located on an Adept SIO board (PN 30332-22350), on your

PC and accessed using NFS server software, or it can be an AWC board floppy drive (PN 15350-00001).

If your V+ system is on a hard drive, the hard drive must be located on an

Adept SIO board, or it can be located on your PC and accessed using NFS server software.

If your new V+ system is on a CD-ROM, the CD-ROM drive must be located on your PC and accessed using NFS server software.

Instructions for Adept Utility Programs

300

System Restore l

If your V+ system includes support for a non-Adept robot, the installation process must access the appropriate device-module file for the V+ system. That file is distributed by Adept in the \SYSTEM\ subdirectory on the V+ system disk.

NOTE: The AdeptWindows kit (PN 90963-00210) includes the AdeptWindows software, NFS software, and an Ethernet crossover cable. Note that if you are using a

PC, you must have AdeptWindows version 2.0 or later.

l

High-density diskettes (formatted): l

A backup copy of the V+ system l

A backup copy of all your application code, including any location, real, and string variables

Procedure

A complete system restore is a two-step process. During this procedure you will: l l

Load your current robot parameter data and V+ system code to a target (output) device

Copy the variables and application programs to the target (output) device

You will be using the CONFIG_C.V2 utility to restore the V+ system information. You will also be using the DISKCOPY.V2 utility to copy other files.

NOTE: Protected system files are found on the Adept supplied floppy disks. Any protected program code supplied by your integrator can be found on disks supplied by the integrator.

NOTE: If you are installing V+ from a PC, then you must make sure that auto boot is disabled. This can be set using NVRAM switches in CONFIG_C or hardware switches on the

AWC board. See SET "SWITCHES" in the NVRAM for details on setting the NVRAM switches in CONFIG_C; see the Adept MV Controller User's Guide for V+ Version 13.0 or Later for details on the hardware switches.

To restore a customized V+ system:

1. Save the current robot and encoder configuration data to system drive.

NOTE: The CONFIG_C and SPECSUB version used for this step must be compatible with the V+ system.

If the V+ system is not configured to control any robot and does not access external

(belt) encoders, proceed to

step 2

.

If the V+ system controls one or more robots, or if it accesses external (belt) encoders, perform steps

a

through h below.

Instructions for Adept Utility Programs

301

System Restore a. Boot the AWC-based controller from the V+ system to backup (drive D if the system is on the Compact Flash; drive C if the system is on the SIO board's hard disk).

b. Load and execute the CONFIG_C.V2 utility by entering the commands:

lo [drive]:\util\config_c f8 ex 1 a.config_c f8

where [drive] is the letter of the drive that contains the V+ system (drive D if the system is on the Compact Flash; drive C if the system is on the SIO board's hard disk). The CONFIG_C utility initializes and the main menu is displayed

(see

The CONFIG_C Utility Main Menu

).

The CONFIG_C Utility Main Menu c. From the CONFIG_C main menu, select "V+ Installation" by typing 1 and pressing ENTER. The INSTALLATION OF V+ SYSTEM menu is displayed.

d. From the INSTALLATION OF V+ SYSTEM menu, select "INSTALL a NEW V+

SYSTEM" by typing 2 and pressing ENTER. Follow the instructions in the prompts to complete the operation.

e. When the operation is completed, press ENTER to return to the INSTALLATION

OF V+ SYSTEM menu.

f. From the INSTALLATION OF V+ SYSTEM menu, select "Return to MAIN MENU"

Instructions for Adept Utility Programs

302

System Restore by typing 0 and pressing ENTER. The main menu is displayed.

g. From the main menu, select "EXIT to system monitor" by typing 0 and pressing

ENTER.

h. Clear the controller memory by entering the command:

zero f8

and answering Y to the "Are you sure" prompt.

2. Change directories to the source (input) directory you want to restore on your disk file, by entering the command:

cd [drive]:\[directory] f8

where [drive] is the source drive and [directory] is the directory of the drive that contains the information to be restored.

3. Load and execute the DISKCOPY utility from the source drive, by entering the commands:

lo [drive]:\util\diskcopy f8 ex 1 a.diskcopy f8

where [drive] is the letter of the drive that contains the new V+ system. The DISK-

COPY utility initializes and the main menu is displayed (see

The DISKCOPY Utility Main

Menu

).

The DISKCOPY Utility Main Menu

Instructions for Adept Utility Programs

303

System Restore a. From the DISKCOPY main menu, select "COPY multiple FILES" by typing 4 and pressing ENTER. You are prompted for the input and output disk device (source

[input] and target [output] drives).

b. At the prompts, enter the drive and path for the source (input) and target (output) drives. For example, if your source files are on an NFS drive, and the target is your AWC board's D drive (Compact Flash), answer the prompts as shown: c. At the prompt "Enter spec of file (s) to copy (blank to exit)", type "*.*" and press ENTER.

d. Answer the remaining prompts as shown:

The files are copied from the source (input) drive to the target (output) drive.

Each file in the directory being copied is shown with a prompt, type Y, N, G, or

Q.

Prompt

Reply

Y

N

Copy this file

Action Performed

Do not copy this file and move to the next file

Instructions for Adept Utility Programs

304

System Restore

Prompt

Reply

G

Q

Action Performed

Copy all files and do not ask for each individual file in the directory

Quit copying multiple files and return to the main menu of the DISKCOPY screen

NOTE: If you are using AdeptModules Linear mechanisms, you must also copy the contents of the SPECDATA folder on the utility disk to the root directory on the compact flash (D:\SPECDATA\).

e. After all of the files have been copied, press ENTER at the "Enter spec of file(s) to copy" prompt to exit. The DISKCOPY main menu is displayed (see

The DISK-

COPY Utility Main Menu

).

f. At the DISKCOPY main menu, select "EXIT to the system monitor" by typing 0 and pressing ENTER. The V+ dot prompt is displayed.

If your controller was configured to auto boot, before upgrading the V+ version, you must change the NVRAM or AWC dip switches to reenable the autoboot feature.

Instructions for Adept Utility Programs

305

Upgrading Your V+ System

Upgrading Your V+ System

NOTE: The information in this section is intended to provide an overview of the procedure. The exact steps for your system may vary, based on the V+ version, the system components, and the type of media you are reading from or writing to. The V+ utilities contain precise instructions that will guide you through the steps for your system. Therefore, you are encouraged to carefully read and follow the on-screen instructions.

This section describes the process of upgrading your V+ operating system on an AWC-based controller. Since you are performing an upgrade, these instructions assume that you have a functioning system and user interface.

The entire upgrade process can take up to 45 minutes. Most of that time is spent making backup copies of your old and new V+ systems; you can stop the process at any time while making these copies. However, after the process of configuring your new V+ system has begun, do not interrupt the upgrade process. The system informs you when the uninterruptible portion of the process has been reached, and you can stop at that point.

Tools

This section describes the tools (user interface, hardware, software, etc.) that you need to perform the upgrade.

User Interface

The user interface must be one of the following: l a monitor and Adept VGB card l a PC with AdeptWindows PC, and an Ethernet or serial connection to the AWC board l a PC with terminal emulation software and a serial connection to the AWC l a dumb terminal with a serial connection to the AWC

V+ Components

You need the following items to install a new V+ system: l l

An old V+ system (on a diskette, hard drive, or Compact Flash).

This is the V+ system that you have been using. The configuration of this system is duplicated in the new V+ system.

Configuration data files for all the devices controlled by the old V+ system.

If the old V+ system includes customized data for the robots or external encoders, you must have an up-to-date (binary) configuration data file for each robot and the encoders.

Instructions for Adept Utility Programs

306

Upgrading Your V+ System

NOTE: In general, those data files can be created only with the edition of CONFIG_C or SPEC that you received with the old V+ system.

l

A new V+ system (on a diskette, CD-ROM, hard drive, or Compact Flash).

This is the V+ system that you want to install. This installation process copies this system to a different disk (if necessary) and configures the system to match the existing (old) V+ system. Please note the following: l l l l

If your new V+ system is on a diskette, you must have access to a floppy drive.

The floppy drive can be located on an Adept SIO board (PN 30332-22350), on

your PC and accessed using NFS server software 1

, or it can be an AWC board floppy drive (PN 15350-00001).

If your new V+ system is on a hard drive, the hard drive must be located on an

Adept SIO board, or it can be located on your PC and accessed using NFS server

software.

1

If your new V+ system is on a CD-ROM, the CD-ROM drive must be located on

your PC and accessed using NFS server software.

1

If your V+ system includes support for a non-Adept robot, the installation process must access the appropriate device-module file for the new V+ system.

That file is distributed by Adept in the \SYSTEM\ subdirectory on the V+ system disk.

1 NOTE: The AdeptWindows kit (PN 90963-00210) includes the Adept-

Windows software, NFS software, and an Ethernet crossover cable. Note that if you are using a PC, you must have AdeptWindows version 2.0 or later.

l

Blank high-density diskettes (formatted or unformatted).

You need four (4) blank high-density diskettes for: l l l l

A copy of the old V+ system (if you do not already have one)

A copy of the new V+ system before it is configured

A working copy of the new V+ system for use during the configuration process if you choose to build the new system on a diskette or hard drive instead of on the

Compact Flash

A backup copy of the new V+ system after it is configured

Procedure

Updating V+ is a four-step process. During this procedure you will: l

Save your current robot parameter data l

Install the new V+ on the output device l

Copy the utility programs to the AWC l

Apply your saved robot data to the new system

Instructions for Adept Utility Programs

307

Upgrading Your V+ System

You will be using the CONFIG_C.V2 utility to install the new V+ system. You will also be using the DISKCOPY.V2 utility to copy other files.

NOTE: If you are installing V+ from a PC, then you must make sure that auto boot is disabled. This can be set using NVRAM switches in CONFIG_C or hardware switches on the

AWC board.

To upgrade to a new V+ system:

1. Save the current robot and encoder configuration data in disk files.

NOTE: The CONFIG_C and SPECSUB version used for this step must be compatible with the old V+ system.

If the old V+ system is not configured to control any robot and does not access external (belt) encoders, proceed to

step 2

.

If the old V+ system controls one or more robots, or if it accesses external (belt) encoders, perform steps

a

through h below.

Boot the AWC-based controller from the oldV+ system (drive D if the system is on the Compact Flash; drive C if the system is on the SIO board's hard disk).

b. Load and execute the CONFIG_C.V2 utility by entering the commands:

lo [drive]:\util\config_c f8 ex 1 a.config_c f8

where [drive] is the letter of the drive that contains the old V+ system (drive D if the system is on the Compact Flash; drive C if the system is on the SIO board's hard disk). The CONFIG_C utilty initializes and the main menu is displayed (see

The CONFIG_C Utility Main Menu

).

Instructions for Adept Utility Programs

308

Upgrading Your V+ System

The CONFIG_C Utility Main Menu c. From the CONFIG_C main menu, select "V+ Installation" by typing 1 and pressing ENTER. The INSTALLATION OF V+ SYSTEM menu is displayed.

d. From the INSTALLATION OF V+ SYSTEM menu, select "SAVE current ROBOT

DATA" by typing 1 and pressing ENTER. Follow the instructions in the prompts to complete the operation. A binary configuration data file for each robot and for the external encoders is created. (These files can be stored on any disk, including a V+ system disk.) e. When the operation is completed, press ENTER to return to the INSTALLATION

OF V+ SYSTEM menu.

f. From the INSTALLATION OF V+ SYSTEM menu, select "Return to MAIN MENU" by typing 0 and pressing ENTER. The main menu is displayed.

g. From the main menu, select "EXIT to system monitor" by typing 0 and pressing

ENTER.

h. Turn off the controller and proceed to

step 2

.

2.

Boot the controller with the new V+ system.

If you will be installing the new V+ system from a drive on a PC (floppy drive or hard disk):

Instructions for Adept Utility Programs

309

Upgrading Your V+ System

3.

a. Start the AdeptWindows TFTP Server as described in the AdeptWindows User's

Guide.

b. Start the NFS software and make sure that the floppy drive is "shared".

c. If you are using the PC's floppy drive for the source, insert the new V+ disk into d.

the floppy drive. Otherwise, proceed to

step d

.

Boot the controller. When prompted for a boot drive, enter "X" for a network boot. You are then prompted for the network IP address of the PC (for example,

172.16.200.1) and a directory path for the V+ disk (for example, A:\ or

C:\Adept\Disks\Disk_C\V13_1).

e. After the V+ dot prompt is displayed, proceed to

step 3

.

If you are installing the new V+ system from an SIO floppy drive (A:\) or the

AWC Floppy (B:\): f. Insert the V+ disk into the drive and boot the controller.

g. After the V+ dot prompt is displayed, proceed to

step 3

.

Copy the new V+ system to the desired output disk drive, install the required device modules, and copy the system configuration data from the old V+ system to the new

V+ system.

If you are installing the new V+ from a drive on a PC (floppy drive, CD-ROM drive, or hard disk): a. If you are using the PC's floppy drive for the source and your PC uses the default IP address (172.16.200.1), remove the V+ system disk, insert the new b.

Utility disk, and proceed to

step d

. Otherwise, go to

step b

.

If you are using the default IP address (172.16.200.1) for the PC, proceed to

step c . Otherwise, use the FSET command to address the PC as an NFS server.

For example, to mount a PC on IP address 192.9.225.23, type the command:

fset tcp /node 'ASERVER' /address 192 9 225 23

c.

See the V+ Operating System User's Guide for more details.

If you are using the PC's floppy drive as the source, proceed to

step d

. Otherwise, use the FSET command to mount the drive and path on the NFS server that was defined in

step b

. For example, to mount the C:\Adept\Disks\Disk_

C\V13_1 directory, type the command:

fset nfs /mount 'XC' /node 'ASERVER' /path

'C:/Adept/Disks/Disco/V13_1'

See the V+ Operating System User's Guide for more details.

Instructions for Adept Utility Programs

310

Upgrading Your V+ System d.

Load and execute the CONFIG_C.V2 utility from the source drive, by entering the commands:

lo [drive]:\util\config_c f8 ex 1 a.config_c f8

where [drive] is the letter of the drive that contains the new V+ system:

Source Drive

PC floppy drive

Drive Letter

NFS>XA

NFS>XC 2

PC hard drive

PC CD-ROM drive

NFS>XCD 2

DISK>C SIO board hard drive

SIO board floppy drive DISK>A

AWC board floppy drive DISK>A

2

Assumes this designation was used during the drive mounting process described in

step c .

The CONFIG_C utilty initializes and the main menu is displayed (see

The CON-

FIG_C Utility Main Menu

).

e. From the CONFIG_C main menu, select "V+ Installation" by typing 1 and pressing ENTER. The INSTALLATION OF V+ SYSTEM menu is displayed.

f. From the INSTALLATION OF V+ SYSTEM menu, select "INSTALL a NEW V+ SYS-

TEM" by typing 2 and pressing ENTER. Follow the instructions in the prompts to backup your current system and install the new V+ system.

If you started CONFIG_C from an NFS drive, the utility prompts you for the NFS mount and directory for the storing the backup files:

Instructions for Adept Utility Programs

311

Upgrading Your V+ System

If you are installing the new V+ system using NFS, answer N to the prompt that asks "Is your NEW V+ system currently on a diskette?". You will see a prompt similar to the one shown above that asks for the NFS mount and directory.

g. After the operation has completed, select "Return to the MAIN MENU" by typing 0 and pressing ENTER. The CONFIG_C main menu is displayed.

h. At the CONFIG_C main menu, select "EXIT" to system monitor by typing 0 and pressing ENTER. The V+ dot prompt is displayed.

i. Clear the controller memory by entering the command:

zero f8

and answering Y to the "Are you sure" prompt.

4.

Copy the new V+ utilities from the source drive to the desired output (target) disk drive. Perform this step using the DISKCOPY utility supplied with the new V+ system.

a. Load and execute the DISKCOPY utility from the source drive, by entering the commands:

lo [drive]:\util\diskcopy f8 ex 1 a.diskcopy f8

where [drive] is the letter of the drive that contains the new V+ system. The

DISKCOPY utilty initializes and the main menu is displayed (see

The DISKCOPY

Utility Main Menu

).

Instructions for Adept Utility Programs

312

Upgrading Your V+ System

The DISKCOPY Utility Main Menu b. From the DISKCOPY main menu, select "COPY multiple FILES" by typing 4 and pressing ENTER. You are prompted for the input and output disk device (source and target drives).

c. At the prompts, enter the drive and path for the source and target drives. For example, if your source files are on an NFS drive, and the target is your AWC board's D drive (Compact Flash), answer the prompts as shown: d. Answer the remaining prompts as shown:

Instructions for Adept Utility Programs

313

Upgrading Your V+ System

The files are copied from the source drive to the target drive.

NOTE: If you are using AdeptModules Linear mechanisms, you must also copy the contents of the SPECDATA folder on the utility disk to the root directory on the compact flash (D:\SPECDATA\).

e. After all of the files have been copied, press ENTER at the "Enter spec of file(s) to copy" prompt to exit. The DISKCOPY main menu is displayed (see

The DISK-

COPY Utility Main Menu

).

f. At the DISKCOPY main menu, select "EXIT to the system monitor" by typing 0 and pressing ENTER. The V+ dot prompt is displayed.

g. Turn off the controller and proceed to

step 5

.

5.

Apply the saved robot and encoder configuration data to the new V+ system disk.

This step is not needed if the old V+ system is not configured to control a robot and it does not access external (belt) encoders.

1. Boot the newV+ system (after

step 4

is done).

2. Load the contents of the robot and encoder configuration data files into memory, and write the data to the new V+ system disk using the new edition of the

CONFIG_C utility.

3. From the CONFIG_C main menu, select "V+ Installation" by typing 1 and pressing ENTER. The INSTALLATION OF V+ SYSTEM menu is displayed.

4. From the INSTALLATION OF V+ SYSTEM menu, select "APPLY saved ROBOT

DATA" by typing 3 and pressing ENTER. Follow the instructions in the prompts to complete the operation.

5. When the operation is completed, press ENTER to return to the INSTALLATION

OF V+ SYSTEM menu.

6. From the INSTALLATION OF V+ SYSTEM menu, select "Return to MAIN MENU" by typing 0 and pressing ENTER. The main menu is displayed.

Instructions for Adept Utility Programs

314

Upgrading Your V+ System

7. From the main menu, select "EXIT to system monitor" by typing 0 and pressing

ENTER.

8. Turn off the controller.

9. Reboot the controller. The V+ upgrade is now complete.

Check the software version information displayed at startup, the

V+ ID line should indicate the new V+ version.

If your controller had been configured to autoboot prior to upgrading the V+ version, you must change the NVRAM or AWC dip switches to reenable the autoboot feature.

Instructions for Adept Utility Programs

315

advertisement

Was this manual useful for you? Yes No
Thank you for your participation!

* Your assessment is very important for improving the workof artificial intelligence, which forms the content of this project