kawasaki Robot AS Reference Manual

4.4 (12)
Kawasaki Robot Controller
D Series
AS Language
Reference Manual
902091017DEB
Kawasaki Robot Controller
D Series
AS Language
Reference Manual
Kind of Manual
Standard Manual Option Manual Manual for Specific User Detailed Manual
24 December, 2002
Optical
ROBOT DIVISION
File
Recognition
Recognition
Examination Checked
Produce
Tanaka
Delivery to : Number of sheets
Manuf. Section KMS KRI KRUK KRGKMSKOthers( ) 417 Pages
Kawasaki Heavy Industries, Ltd.
902091017DEB
D Series Controller
Kawasaki Robot AS language Reference Manual
PREF ACE
This manual describes the AS* language used in the Kawasaki Robot Controller D series. The
objective for this manual is to provide detailed information on the outline of the AS system, basic
usages, data types, robot trajectory control and all the commands/instruction to allow effective
usage of the AS system. The robot operation procedures are not included here, so refer to the
Operation Manual for that information. This manual should be read with careful review of the
related manuals listed below. Once the contents of all the manuals are thoroughly read and
understood the robot can be used.
1. Safety Manual
2. Installation and Connection Manual for Arm
3. Installation and Connection Manual for Controller
4. External I/O Manual (for connecting with peripheral devices)
5. Inspection and Maintenance Manual
The contents of this manual are described on condition that installation and connection of the
robot are done in accordance with the above listed manuals.
The explanations in this manual include information on optional functions, but depending on the
specification of each unit, not every optional function detailed here may be included with the
robot. Should any unexplained questions or problems arise during robot operation, please
contact Kawasaki Machine Systems. Refer to the contact information listed on the rear cover of
this manual for the nearest Kawasaki Machine Systems of fice.
NOTE* AS is pronounced [az]
This manual does not constitute a guarantee of the systems in which the robot is utilized.
Accordingly, Kawasaki is not responsible for any accidents, damages, and/or problems relating to
industrial property rights as a result of using the system.
1. It is recommended that all personnel assigned for activation of operation, teaching,
maintenance or inspection of the robot attend the necessary education/training course(s)
prepared by Kawasaki, before assuming their responsibilities.
2. Kawasaki reserves the rights to change, revise, or update this manual without prior notice.
3. This manual may not, in whole or in part, be reprinted or copied without the prior written
consent of Kawasaki.
4. Store this manual with care and keep it available for use at any time. In the event the manual
is lost or damaged severely , contact your Kawasaki agent.
5. Though this manual was prepared to be as thorough and accurate as possible, the authors
apologize should any information be found incomplete or erroneous.
All rights reserved. Copyright © 2002 by Kawasaki Heavy Industries Ltd.
i
D Series Controller
Kawasaki Robot AS language Reference Manual
SYMBOLS
The items that require special attention in this manual are des ignated with th e following sym bols.
Ensure proper and safe operation of the robot and prevent physical injury or property damage by
complying with the safety matters given within the boxes with these symbols.
Failure to comply with indicated matters can result in
imminent injury or death.
DANGER
WARNING
Failure to comply with indicated matters may possibly lead
to injury or death.
CAUTION
Failure to comply with indicated matters may lead to
physical injury and/or mechanical damage.
Denotes precautions regarding robot specification,
handling, teaching, operation and maintenance.
[ NOTE ]
ii
D Series Controller
Kawasaki Robot AS Language Reference Manual
CONTENTS
Preface··············································································································································i
1.0 Overall of AS····························································································1-1
1.1 System Overview ······················································································1-2
1.2 Characteristics of the AS System································································1-3
1.3 AS System Configuration···········································································1-4
2.0 AS System ································································································2-1
2.1 AS System Status ······················································································2-2
2.2 AS System Switches··················································································2-3
2.3 AS System Setup·······················································································2-5
2.4 Input and Output Operations ······································································2-6
2.5 Installing Terminal Software ······································································2-8
2.6 Operations from Personal Computer···························································2-9
3.0 Information Expressions in AS Language ···················································3-1
3.1 Notation and Conventions··········································································3-2
3.2 Pose Information, Numeric Information, and Character Information ············3-4
3.3 Variables ································································································3-10
3.4 Variable Names·······················································································3-12
3.5 Defining Pose Variables ·········································································· 3-13
3.6 Defining Real Variables···········································································3-19
3.7 Defining String Variables ········································································ 3-20
3.8 Numeric Experssions ··············································································· 3-21
3.9 String Expressions ··················································································· 3-24
4.0 AS Program·······························································································4-1
4.1 Types of AS Programs···············································································4-2
4.2 Creating and Editing Programs ···································································4-4
4.3 Executing Programs ···················································································4-9
4.4 Program Flow·························································································· 4-12
4.5 Robot Motion·························································································· 4-14
5.0 Monitor Commands ···················································································5-1
5.1 Editor Commands······················································································5-2
5.2 Program and Data Control Commands ······················································ 5-15
iii
D Series Controller
Kawasaki Robot AS Language Reference Manual
5.3 Program and Data Storage Commands ······················································ 5-27
5.4 Program Control Commands ···································································· 5-36
5.5 Pose Information Commands····································································5-45
5.6 System Control Commands ······································································ 5-50
5.7 Binary Signal Commands·········································································5-86
5.8 Message Display Commands ····································································5-98
6.0 Program Instructions··················································································6-1
6.1 Motion Instructions ···················································································6-2
6.2 Speed and Accuracy Control Instructions·················································· 6-15
6.3 Clamp Control Instructions ······································································6-23
6.4 Configuration Instructions········································································ 6-30
6.5 Program Control Instructions ··································································· 6-33
6.6 Program Structure Instructions································································· 6-46
6.7 Binary Signal Insturctions········································································ 6-56
6.8 Message Control Instructions ···································································6-74
6.9 Pose Information Instructions ··································································· 6-81
6.10 Program and Data Control Instructions····················································· 6-92
7.0 AS System Switches ··················································································7-1
8.0 Operators ··································································································8-1
8.1 Arithmetic Operators ·················································································8-2
8.2 Relational Operators··················································································8-3
8.3 Logical Operators ······················································································8-4
8.4 Binary Operators ·······················································································8-6
8.5 Transformation Value Operators ·································································8-7
8.6 String Operators ························································································8-9
9.0 Functions ··································································································9-1
9.1 Real Value Functions ·················································································9-2
9.2 Pose Value Functions···············································································9-20
9.3 Mathematical Functions ···········································································9-36
9.4 String Functions ······················································································9-39
10.0 Process Control Programs ········································································10-1
11.0 Sample Programs ····················································································· 11-1
11.1 Initial Settings for Programs·····································································11-2
iv
D Series Controller
Kawasaki Robot AS Language Reference Manual
11.2 Palletizing ······························································································· 11-3
11.3 External Interlocking················································································ 11-5
11.4 Tool Transformation·················································································11-8
11.5 Relative Poses························································································11-11
11.6 Using Relative Poses with FRAME Functions·········································· 11-14
11.7 Setting Robot Configuration ···································································11-16
Appendix 1 Error Codes····················································································A-1
Appendix 2 AS Language List········································································· A-19
Appendix 3 ASCII Code ·················································································A-33
Appendix 4 Signal Limitation··········································································A-36
Appendix 5 Euler’s O,A,T Angles ···································································A-37
v
D Series Controller
Kawasaki Robot AS Language Reference Manual
vi
D Series Controller 1. Overview of the AS System
Kawasaki Robot AS Language Reference Manual
1.0 OVERVIEW OF AS
The Kawasaki robots are controlled by a software-based system called AS. This chapter
describes the overall view of the AS system.
1.1 System Overview
1.2 Characteristics of the AS System
1.3 AS System Configuration
1-1
D Series Controller 1. Overview of the AS System
Kawasaki Robot AS Language Reference Manual
1.1 OVERVIEW OF THE AS SYSTEM
In the AS system, you can place commands or execute programs using AS language. The AS
system is written in the nonvolatile memory in the robot control unit. When the control power is
turned on, the AS system starts and waits for a command to be input.
The AS system controls the robot according to the given commands and programs. It can also
execute several types of functions while a program is running. Some of the functions that can be
used while a program is running are: displaying the system status or the robot pose (location),
saving data in external memory devices, and writing/editing programs.
1-2
D Series Controller 1. Overview of the AS System
Kawasaki Robot AS Language Reference Manual
1.2 CHARACTERISTICS OF THE AS SYSTEM
In the AS system, the robots are controlled and operated based on a program that describes
the necessary tasks and which is made prior to the operation. (Teaching Playback Method)
AS language can be divided into two types: monitor commands and program instructions.
Monitor commands: Used to write, edit, and execute programs. They are entered after
the prompt (>) shown on the screen, and are immediately executed.
Some of the monitor commands are used within the program s to
work as program instructions.
Program instructions: Used to direct the movements of the robot, to monitor or to control
external signals, etc. in programs. A program is a collection of
program instructions.
In this manual, a monitor command is referred to as a command, a program instruction as an
instruction.
AS is unique in the following ways:
1. The robot can be moved along a continuous path trajectory.CP motion: Continuous
Path motion
2. Two coordinate systems, base coordinates and tool coordinates, are provided, for more
precise control of the robot’s movements.
3. The coordinates can be shifted or rotated corresponding to the pose changes of the work.
4. When teaching locations or repeating executions, the robot can be moved along a linear
path while keeping the tool posture.
5. Programs can be named freely and saved without limits in numbers.
6. Each operation unit can be defined as a program and these programs can be combined to
make a complex one. (Subroutine)
7. By monitoring signals, programs can be interrupted and branched to a different program
suspending current motions when an external signal is input. (Interruption )
8. A Process Control program (PC program) can be executed simultaneously with a robot
control program.
9. Programs and pose (location) data can be displayed on terminals and saved in devices
such as the PC card.
10. Programming can be done using a personal computer loaded with the terminal softwa re
(KRterm or KCwin32) provided by Kawasaki. Off-line programming
1-3
D Series Controller 1. Overview of the AS System
Kawasaki Robot AS Language Reference Manual
1.3 AS SYSTEM CONFIGURATION
Kawasaki Robot controller D series is composed of the following components:
Teach pendant
D series
Controller
Peripheral Controller
Personal
Computer
Kawasaki
Robot
By connecting a personal computer loaded with the terminal software KRterm or KCwin32 to a
D series controller, the following operations can be done:
Writing AS commands
Saving and loading to and from the personal computer
Personal computer
D series controller
KRterm or KCwin32
Terminal software
Teach Pendant
Controller
Selects program
Displays program names and
steps
Manually controls the robot
Monitors signals
Sets repeating conditions
Teaches pose (location) data
Teaches auxiliary data (block
teaching)
Teach Pendant Personal computer
Enters AS commands
Creates AS programs
Saves/loads programs
Daily operations
Monitor software for PC operates with 95/98/Me/2000/XP.
Please prepare the appropriate OS.
[ NOTE ]
1-4
D Series Controller 2. AS System
Kawasaki Robot AS Language Reference Manual
2.0 AS SYSTEM
This chapter describes the AS system status, AS system switches and the system setup.
2.1 AS System Status
2.2 AS System Switches
2.3 AS System Setup
2.4 Input and Output Operations
2.5 Installing Terminal Software
2.6 Operations from Personal Computer
2-1
D Series Controller 2. AS System
Kawasaki Robot AS Language Reference Manual
2.1 AS SYSTEM STATUS
The AS system consists of the following three modes:
1. Monitor Mode
This is the basic mode in the AS system. Monitor commands are executed in this mode.
Editor or Playback Mode is accessed from this mode.
2. Editor Mode
This mode enables you to create a new program or modify an existing one. Only editor
commands are executed by the system in this mode.
3. Playback Mode
The system is in Playback Mode during program execution. Computations for robot motion
control are performed and commands entered from the terminal are processed during
unoccupied CPU time. Some monitor commands cannot be executed in this mode.
2-2
D Series Controller 2. AS System
Kawasaki Robot AS Language Reference Manual
2.2 AS SYSTEM SWITCHES
The following system switches can be set in the AS System using the monitor command
SWITCH. The status and the conditions set for each switch can be checked or changed from the
terminal.
1. CHECK.HOLD
Determines whether or not to respond to the EXECUTE, DO, STEP, MSTEP, and
CONTINUE commands when the HOLD/RUN switch is in the HOLD position.
2. CP
Enables or disables continuous path movement. When this switch is ON, the robot makes
smooth transitions between motion segments. When it is OFF, the robot decelerates and
stops at the end of each motion segment.
3. CYCLE.STOP
Determines whether to keep ON or to turn OFF CYCLE START when an external hold
signal is input to stop the motion of the robot.
4. MESSAGES
Enables or disables message output to the terminal in response to the PRINT or TYPE
command.
5. OX.PREOUT
Sets the timing for OX signal output in block instructions, allowing for earlier signal output at
the memory change instead of at the accuracy setting.
6. PREFETCH.SIGINS
Sets the timing for signal output in AS language programs, and has the same effect on signal
timing as OX.PREOUT.
7. QTOOL
When in TEACH mode, determines whether or not to change the tool transformation
according to the tool number taught in block instructions.
8. REP ONCE (Repeat Once)
When this switch is ON, the program runs one time. When it is OFF, the program runs
continuously.
2-3
D Series Controller 2. AS System
Kawasaki Robot AS Language Reference Manual
9. RPS (Random Program Selection)
Enables or disables the selection of programs based on the binary status of external signals.
10. SCREEN
Enables or disables the scrolling of the screen when the information is too large to fit in one
screen.
11. STP ONCE
Sets whether the program is performed one step at a time or continuously.
Refer to 5.6 Monitor Command SWITCH, ON, OFF for further information on how to set the
system switches.
2-4
D Series Controller 2. AS System
Kawasaki Robot AS Language Reference Manual
2.3 AS SYSTEM SETUP
The following system settings can be changed depending on the need, using the monitor
commands.
1. Zeroing (ZZERO command)
ZZERO command is used to set the encoder value to correspond to a robot’s known
mechanical position. When replacing the servo motor or performing maintenance on an
encoder, the encoder value will need adjustment using this command. (This command is for
maintenance purposes only.)
2. Clamp setting (HSETCLAMP command)
This setting is made prior to shipment from the factory. The settings, single/double and
output spec (ON when closed /OFF when closed), can be changed using HSETCLAMP
command. However, the change will only affect the software, so be sure to check if it is
consistent with the hardware.
3. Maximum number of input and output signals (ZSIGSPEC command)
ZSIGSPEC command sets the maximum number of input and output signals that can be used.
It is set prior to shipment from the factory. (This is a default setting that function as a software
error check, thus be sure it is consistent with the hardware.)
4. Software Dedicated Signals (DEFSIG command)
In addition to the Hardware dedicated signals, there are I/O signals in the software that can
be used as dedicated signals (Software dedicated signals). The signals in the table be low can
be used as Software dedicated signals. Note that since the number of I/O signals in the
software is the sum of Software dedicated signals and General purpose signals, the number of
General purpose signal decreases as more Software dedicated signals are used.
Software Dedicated Input Signal Software Dedicated Output Signal
EXT. MOTOR ON MOTOR_ON
EXT. ERROR RESET ERROR
EXT. CYCLE START AUTOMATIC
EXT. PROGRAM RESET CYCLE START
Ext. prog. select (JUMP_ON, JUMP_OFF
RPS_ON, RPSxx)
TEACH MODE
HOME1, HOME2
EXT_IT POWER ON
EXT. SLOW REPEAT MODE RGSO
Ext. prog. select (JMP_ST, RPS_ST)
2-5
D Series Controller 2. AS System
Kawasaki Robot AS Language Reference Manual
2.4 INPUT/OUTPUT CONTROL
2.4.1 TERMINAL CONTROL
Data and commands input at a terminal are first received by the system buffer. Then they are
read by the monitor or program and echoed or displayed on the terminal screen. The maximum
number of characters that can be input at a terminal is 128, and additional characters input are
ignored.
Output of data to a terminal can be controlled using the PRINT and TYPE instructions. 8 bits
are displayed on the terminal screen. Unless format is specified using specification code “/S”
with the PRINT/TYPE instruction, data are displayed with a new line starting after each
command. (See 6.8 Message Control Instructions for detailed information.)
Terminal input and output can be controlled using the below commands. These are called the
terminal control commands. The Ctrl (Control Key) is pressed with each alphabetical character
(the character may be either lower or upper case letters). Unlike other AS commands, there is
no need to press the ENTER key after these command.
Commands Functions
Ctrl + S
Stops the scrolling of the display terminal.
Ctrl + Q Resumes the data output stopped by Ctrl + S .
Ctrl + C
Cancels the last input line.
Ctrl + H
Deletes the last input character. (Backspace)
Ctrl + M
Ends the input of the current line.
Ctrl + L
Displays the content of the line entered previously on the
current input line. It can be used up to seven times. (Last)
Ctrl + N
Displays the content of the line input after the line displayed
using Ctrl + L. This operation can be used only after
Ctrl + L is used more than once. (Next)
Backspace
Deletes the last input character.
Input TAB (Ctrl + I or TAB) as space (blank).
2-6
D Series Controller 2. AS System
Kawasaki Robot AS Language Reference Manual
2.4.2 EXTERNAL MEMORY DEVICES
The commands below are used to save programs, variables and pose information in the robot
memory, PC card, floppy disk, or computer hard disk.
1. Initializes memory. (CARD_FORMAT, FD_FORMAT)
2. Displays the contents. (CARD_FDIR, FD_FDIR)
3. Saves the data on the robot memory to the disk files. (SAVE
, CARD_SAVE, FD_SAVE)
4. Loads the data on the disk file to the robot memory. (LOAD, CARD_LOAD, FD_LOAD)
5. Deletes the disk files. (DELETE, CARD_FDEL, FD_FDEL)
Commands with CARD_ refer to PC cards and FD_ refers to floppy disks.
Note
SAVE command may be used only when the computer is connected.
See also 5.2 Program and Data Control Commands, 5.3 Program and Data Storage Commands
2-7
D Series Controller 2. AS System
Kawasaki Robot AS Language Reference Manual
2.5 INSTALLING TERMINAL SOFTWARE
The robot can be controlled from a personal computer using the AS language. To do so, load
KCwin32 or KRterm terminal software on to a PC and connect the PC to a D series controller.
KCwin32 and KRterm may be installed on computers running Windows 95/98/Me/2000/XP.
Connecting the computer and the controller using the RS-232C cable enables a single computer
to control a single robot. An Ethernet connection enables multiple com puters to control m ultiple
robots. Terminal software KCwin and KCwin32 can also be used by connecting to the
RS-232C port.
Follow the below procedure to install the terminal software on to the PC.
1. Install the software to your hard disk
Copy the following files in the KRterm floppy disk on any directory of your computer hard
disk.
KRTERM.EXE
KRTERMJ.HLP (Japanese version help file)
KRTERME.HLP (English version help file)
KRTERM.INI
2. It is recommended that you make a shortcut on the desktop or in the start menu for easier
startup of the KRterm software.
2-8
D Series Controller 2. AS System
Kawasaki Robot AS Language Reference Manual
2.6 OPERATIONS FROM PERSONAL COMPUTER
2.6.1 SYSTEM STARTUP
2.6.1.1 CONNECTING TO RS-232C PORT
1. Connect the personal computer with the controller using the RS-232C cable. Make sure the
CONTROL POWER on the controller and the computer power are both turn off.
R
S
-
232C
PC with built-in
RS-232C port
2. Turn on the computer, and start the terminal software (KRterm or KCwin32, diagrams below
are from KRterm).
3. When the software opens, select the type of connection to use. Select from the menu bar,
[Communication (C)] [Connect Parameter (O)].
4. Click the “Serial” tab, check the contents and if it is OK, click <OK>.
2-9
D Series Controller 2. AS System
Kawasaki Robot AS Language Reference Manual
5. Turn ON the CONTROL POWER on the controller.
See “Operation Manual” 3.1 Power ON Procedure.
6. The initial screen of KRterm followed by a prompt “>” will appear on the display.
When the CONTROL POWER is turned ON before connecting the PC and the controller, only
the prompt “>” will appear and not the initial screen. However, KRterm works the same.
2-10
D Series Controller 2. AS System
Kawasaki Robot AS Language Reference Manual
2.6.1.2 CONNECTING ROBOTS USING THE ETHERNET
1. Connecting the cables.
Connect the ETHERNET connector on your personal computer and the connector on optional
1 KN daughter board on 1 KA board in the controller using a LAN cable.
Inside of the controller
Front view of the controller
ETHERNET connector
on personal computer
1KA board
1KN daughter board
2. Following steps 2 and 3 above, start KRterm and the robot.
3. Set the robot’s IP address.
(1) Choose from the menu bar [Communication] [Connect Parameter (O)].
2-11
D Series Controller 2. AS System
Kawasaki Robot AS Language Reference Manual
(2) Enter the IP address and name of the robot you want to connect to the network, and click
<ADD>.
4. To connect with the robot, follow the procedures below.
(1) The robot recently connected is displayed at the top of the drop-down menu when
[Communication(C)] is selected from the menu bar. Click the robot name to select the
robot.
(2) Choose from the menu bar [Communication(C)] [Connect.History(C)] to display the list of
recently used robots. Select the robot to connect from the list.
2-12
D Series Controller 2. AS System
Kawasaki Robot AS Language Reference Manual
(3) Choose from the menu bar [Communication(C)] [Select Connect(E)] if the desired robot
does not appear in the above ways..
Choose the desired robot and click <CONNECT>.
If the connection is established, robot information such as its name followed by a prompt “>”
appears on the KRterm screen. AS commands can be input once the prompt appears.
2.6.2 UPLOADING AND DOWNLOADING DATA
(1) SAVE command
To save the data on the computer, use the SAVE command (See 5.3 SAVE command).
Example >SAVE test.pg This saves the data in the same directory as
the KRterm in the computer hard disk.
>SAVE test.pg¥My Documents This saves the data in the sp ecified f ile.
(2) LOAD command
To load data from the computer to the robot memory, use the LOAD command.
Example >LOAD data01.as
2-13
D Series Controller 2. AS System
Kawasaki Robot AS Language Reference Manual
2.6.3 SYSTEM SHUTDOWN
1. When the robot is connected, choose from the menu bar [Communication(C)]
[Disconnect(D)] to disconnect the robot.
2. Turn off the robot controller. See “ Operation Manual” 3.2 POWER OFF procedure.
(1) Turn the HOLD/RUN switch to HOLD.
(2) Turn OFF the motor power by pressing the EMERGENCY STOP button.
(3) Turn OFF the CONTROL POWER.
3. Shut down KRterm.
(1) Choose from the menu bar [FILE(F)] [END(X)].
2 Click <YES>.
4. Shut down the computer.
5. If there is no need to keep the computer connected to the controller, disconnect the cable.
Make sure the controller and the computer power are both turned off before disconnecting.
2-14
D Series Controller 2. AS System
Kawasaki Robot AS Language Reference Manual
2-15
D Series Controller 2. AS System
Kawasaki Robot AS Language Reference Manual
2.6.4 USEFUL FUNCTIONS OF KRTERM
2.6.4.1 CREATING LOGFILES
The contents displayed on the KRterm screen can be saved as a log file. This is useful when
making printout of the robot operation procedures.
1. Start logging.
(1) Choose from the menu bar [FILE(F)] [OPEN LOG FILE(O)].
(2) Select the folder to save the log file, and name th e file.
(3) The message [Logging Now] appears on the title bar. The contents on the display are
recorded until the log file is closed.
The contents on the display are recorded while this message is shown.
2-16
D Series Controller 2. AS System
Kawasaki Robot AS Language Reference Manual
2. End log
Once logging starts, all the contents on the KRterm display will be recorded until the log file is
closed.
To close the log file and end log, choose from the menu bar [FILE(F)] [CLOSE LOG
FILE(C)].
2-17
D Series Controller 2. AS System
Kawasaki Robot AS Language Reference Manual
2.6.4.2 MACRO FUNCTIONS
Macro functions are provided in the KRterm and KCwin32 system. If a task needs to be
executed repeatedly, recording the series of instructions/commands for that task inside a macro
can be very useful and increase efficiency.
To record a macro, choose from the menu bar [FILE (F)] [MACRO (M)] and enter the file
name to save that macro. To run a macro, use the SEND command on the KRterm screen.
See Help in KRterm or KCwin32 for more details.
2-18
Loading...
+ 372 hidden pages