A Supervisory Interface for Unimation PUMA 762 Robot

Developed 1998 at Liverpool John Moores University
By Jens- Uwe Dolinsky

Email: u.dolinsky@iname.com

Download a demo version: Windows Character mode executable (zipped 97K)
 
GUI Windows 95/98/NT Version is now available:  Download the Demo ! (zipped 240K)
The supervisor is now contained in a Windows DLL interfaceable by other Windows applications. The API description follows soon. However, information can already be requested!

Enhancements of the GUI version:
  • Menu supported operation/configuration of the supervisor
  • Terminal with Line Buffer to log input/output
  • Copy/Paste supported 
  • Selectable terminal fonts and font sizes 

Introduction

The aim of this project was to develop a tool, which can be interfaced by PC-applications (e.g. for calibration purposes) to interrogate information about the robot status and exchange data with the robot controller. The program is a terminal interface, which allows controlling (issuing commands) a PUMA 762 industrial robot (works also for PUMA 560 MK2, 760 MK2 and 762 MK3 controllers, thanks to Darragh Grealish for letting me know) remotely from a PC via the serial com port rather than from the robot terminal. This offers some advantages e.g. convenient development of robot programs on a PC (at home) using enhanced source editors or Offline Programming Systems. Once the program is written it can be uploaded into the robot system memory and finally executed. The supervisory program is available as character mode executeable or GUI application which run on machines with Windows 95/98/NT installed on it. It will not be running on Windows 3.x workstations.

User Manual

Short Version:

  1. Robot and PC have to be switched on (of course).
  2. Start the supervisory program (The supervisor uses COM2 as the default port).
  3. Enter at the robot terminal: enable network
  4. Enter at the robot terminal: enable supervisor
  5. Supervisor is now ready.
After finishing a session the supervisor mode is disabled by entering disable supervisor at the PC supervisor terminal.

Detailed Version:

After the robot was started and the VAL II input prompt appeared at the system terminal, the supervisory program can be started. The syntax of the program call is Supervisor [<port>]. <port> is a parameter for specifying the serial port used throughout a session . If the program is called without parameter the COM2 port is used by default. In the GUI Version the Port can be chosen by clicking on options/ports. Also in the GUI version the connection to the robot must be initiated by clicking on the menu Robot/Connect. During the startup/connect the program displays, among introductory information, the message:
Trying to connect to the robot….
Now it is time to enter two VAL II commands at the robot system terminal:
                enable network
                enable supervisor
The first command activates the low-level link based on a DDCMP -protocol between supervisor and robot. The terminal input prompt will return if this was successful. The second command establishes a redirection of the input/output- data from the robot terminal to the supervisor. When the message "Connection established" and the input prompt appear on PC screen the robot can be operated from the supervisor in the same way as it would be from the robot terminal. Commands can be executed, robot status information can be inquired, programs can be edited. During this time the robot system terminal is blocked. To give to control back to the system terminal, the command disable supervisor has to be entered. Following this the input prompt reappears at the robot system terminal. The supervisor program is now deactivated (no input prompt appears) but not terminated. To reactivate the supervisor one only needs to enter enable supervisor . Since the network link is still in use, the enable network command does not need to be issued in that case.
If the supervisor program was terminated by the user after it was disabled, and one wishes to restart it, first the network link needs to be shut down by issuing disable network at the system terminal! Now the supervisor program can be restarted following the according to the procedure described above. Note: Sometimes it may happen that a command needs longer to get through to the robot. Be patient!

Disk I/O - Downloading/uploading files

The supervisor can be used to upload/download program/location etc. files to/from the robot system memory. This enables the user to utilise Offline Programming Systems or more comfortable program editors on a PC rather than the system editor for creating robot programs, which can be uploaded to the robot afterwards. For this the disk.net system switch has to be activated by entering: enable disk.net . From now on all VAL II file commands work with local PC file storage media such as floppy and hard disks as well as mapped network drives.

For example:

load a:\path12.pg
This command loads the program file path12.pg from the local PC floppy drive into the robot system memory.
store c:\temp\backup
All program, location and reals files in the robot system memory are stored into a file c:\temp\backup.v2 on the local C: drive of the PC.

Batch processing

The supervisor program has a built-in batch mechanism, which allows the consecutive execution of several commands stored in a file. It does this by scanning the file line by line and sending these lines containing the commands one after another to the robot. A batch file is processed by issuing batch <filename >. The batch mechanism has often proved useful for doing large programming sessions since the robot system memory is very limited. If a program and its data for example do not fit into the system memory, one could split the program into several smaller programs (provided it does not contain long control constructs etc), and execute them consecutively. The batch file would look like:
enable disk.net

load c:\robot\prog1.v2

do execute prog1

load c:\robot\prog2.v2

do execute prog2

delete prog1

load c:\robot\prog3.v3

do execute prog3

In this example the main program has been split into three parts, where two fit into the robot memory at the same time. After enabling the disk.net switch the first program is loaded and started. Then, because progam executions are asynchronously, the second program is loaded while the first one is beeing executed. Assuming the first program is finished, the second program is started and the first one ist deleted. While executing the second program, the third can be loaded. Assuming the second program has finished, the third one can be started. Whenever batch processing is used care has to be taken in applying asynchronous commands.

Finally: warrenty disclaimer

The program comes with no guarantee whatsoever. The usage is on own risk, there are no liabilities of the author regarding damages of humans or robot hardware caused by the program even beyond obtaining the full version. The limited program version is shareware and may/should as such be tested, copied and distributed, the copyright remains with the author. In order to obtain a full version (including disk/IO file down/up- loading support) please follow the instructions in the README.txt file.
 

u.dolinsky@iname.com

(Interested in Robotrak software?)

last updated
Liverpool, 18.03.2002