0% found this document useful (0 votes)
206 views28 pages

Use of WALLI Part 1

This document provides an overview of the WALLI3 software application for programming robotic devices and CNC machines. It describes the software installation process and provides information on configuring hardware interfaces. The document then outlines how to add different robotic and CNC devices to a workcell and how to program them using the WALLI3 interface. It also touches on other capabilities like window presentation, file access, printing, and links to other applications.

Uploaded by

Ko_deZ
Copyright
© © All Rights Reserved
We take content rights seriously. If you suspect this is your content, claim it here.
Available Formats
Download as DOC, PDF, TXT or read online on Scribd
0% found this document useful (0 votes)
206 views28 pages

Use of WALLI Part 1

This document provides an overview of the WALLI3 software application for programming robotic devices and CNC machines. It describes the software installation process and provides information on configuring hardware interfaces. The document then outlines how to add different robotic and CNC devices to a workcell and how to program them using the WALLI3 interface. It also touches on other capabilities like window presentation, file access, printing, and links to other applications.

Uploaded by

Ko_deZ
Copyright
© © All Rights Reserved
We take content rights seriously. If you suspect this is your content, claim it here.
Available Formats
Download as DOC, PDF, TXT or read online on Scribd
You are on page 1/ 28

WALLI3 ~ Walli for Windows - USE of WALLI

CONTENTS

Software Installation Page 2


Hardware Installation ( PC Interfaces ) Page 3
Devices and Sub-Devices Page 4
Getting Started Page 4
Adding a Mentor Page 6
Adding a Gryphon Page 7
Adding a Neptune Page 8
Adding a Kestrel Page 9
Adding a Serpent Page 10
Adding a Cyber Mill Page 10
Adding a Cyber Lathe Page 11
Adding Sub-Devices Page 11
Window Presentation Page 12
Selecting the Displays for the Edit Windows Page 13
Selecting the Graphics and Information Window Displays Page 15
Editing Procedures for Robot and Workcell Windows Page 17
Programming Robotic Devices Page 20
Modes of Robot Programming Page 20
Programming Conventional Robots Page 26
Programming Mentor Page 26
Programming Gryphon Page 28
Programming Neptune Page 29
Programming SCARA Robots Page 31
Programming Serpent Page 31
Programming Rectilinear Robots Page 33
Programming Kestrel Page 33
Programming CNC Devices Page 34
Programming the Cyber Mill Page 35
ISO Preparatory and Misc. Codes for the Cyber Mill Page 37
Programming the Cyber Lathe Page 40
ISO Preparatory and Misc. Codes for the Cyber Lathe Page 42
Using Wizards in CNC programs Page 45
Programming the Workcell Page 47
Editing the Cell Definition Window Page 47
Programming the Workcell Page 50
Command Summary Page 51
Program Execution Page 52
File Access Page 53
Printer Access Page 55
Miscellaneous Facilities Page 56
Links to Other Applications Page 57

WALLI for WINDOWS. Revision A USE of WALLI page 1


WALLI3 ~ Walli for Windows The application retains whatever choices have been
made in the default setting and windows arrangement, at
USE of WALLI the end of a session so that the package may be
customised by the user, and the colour choice is referred
Walli3 (Workcell Amalgamated Logical Linguistic to as the Project Colours in the Options menu.
Instructions, version 3), is an updated and extended
version of Walli software written for the Windows This manual has been written and illustrated using only
environment. The new software supports all the new the default setting to avoid confusion and any changes
versions of the various robots and CNC machines, such will therefore be apparent as an individual variation.
as the Cyber Mill and Lathe, while also supporting most
of the previous versions and the peripheral or sub- To assist in the black and white rendering of screen
devices, but now in a form that will be familiar to users of colours to best advantage when printed, however, a set
other Windows applications. The Naiad robot and the of project colours have been chosen, with emphasis on
previous version of the Mill are not supported. the green part of the spectrum and these may be
presented in some of the demonstration programs, when
As the expanded name suggests, the application is they are loaded. The application colours will be
concerned with co-ordinating the activity within an established as the project colours at installation and may
automated or robotic workcell. It is capable of be returned to by de-selecting Use Project Colours, at
supporting stand-alone Robotic or CNC devices or, for any time. The application colours are not the Windows
the more ambitious user, a number of such devices and default colours.
peripheral components within a workcell, or adjacent
workcells, built to demonstrate the organisation of
automated production. The level of support is entirely SOFTWARE INSTALLATION
transparent to the user and may only be evident in the
extent of some of the menus accessed from the menu The software is distributed on two 3½" Diskettes, three if
bar, which adjust to accommodate the equipment that a Mill is ordered, which contain all the files necessary to
has been declared for the workcell in the Cell Definition install the application. These would normally be inserted
window. into drive A of the users computer, starting with disc 1.

In keeping with the conventions for Windows The installation procedure is as follows :
applications, Walli3 has Help files to assist the user with
on-screen information. This manual is based on material From the Windows Program Manager, select the File
contained within the Help files, but here expanded and Menu (Alt+F), and select Run (R).
re-presented in book form as the more conventional form
of reference. The Help feature has the usual facility A dialogue box will appear, in which to type :
allowing the user to take printed copy of any of the Help
topics displayed, to supplement the manual or to provide a:Setup (Enter)
convenient aid memoirs.
This instruction will run the Setup program, to install the
The user must be familiar with the operation of Windows files automatically.
applications, which is mostly by selection from the menu
bar, and with the programming procedures for robotics The user will be asked where to make the installation,
and CNC machines which this application supports. the default is onto the Windows disc drive, normally
These two aspects are covered within the "Contents" Drive C, in a root directory Walli3, which will be created
and "Learning Walli" selections from the Help files, automatically.
respectively, and they are discussed separately with
some cross-reference, within this manual. The following files will be transferred from the Diskette,
to the Windows System directory :
Direct on-screen reference for programming is given
also, in the form of Cue Cards, which appear in Vbrun300.dll
information windows adjacent to the appropriate program
or edit window. to the Walli3 directory :

Also in keeping with Windows conventions, the Walli3.exe Ddeml.dll


application is presented with a number of default Walli3.fnt Vbdb300.dll
conditions set, but some of these may be overwritten by Walli3.ini Cmdialog.vbx
user preferences while the rest arise automatically from Walli3.hlp Gauge.vbx
the declarations that are made when the package is Cyber1.dll Mscomm.vbx
used. Cyber2.dll Threed.vbx
Commdlg.dll Truegrid.vbx
The Options menu in particular, contains a list of what is
required to be displayed on-screen, including such items Msaes110.dll and Msajt110.dll - if a Mill is ordered
as Cue Cards, with the default marked by a tick to the
left of the listed item. The Arrange item in the Windows
menu has the effect of restoring the display of windows
to a pre-defined tidy geometric order. The Colour item in DEMODIR sub-directory containing :
the File menu allows the user to override the application
colours for the component parts of windows. Demo_Xn.wal, demonstration projects
Xxxxx,men, etc.device demonstration programs

WALLI for WINDOWS. Revision A USE of WALLI page 2


Workcell.def, an appropriate Cell Definition file interface. It uses a proprietary serial transmission
across a link formed from four twisted wire pairs with
An icon for the Walli application depicting a red robot RJ45 style plugs at each end. These fit the single edge
arm, will appear on the Program Manager window at the connector on the interface and the commoned pair of
end of the installation process. connectors on each device circuit board.

If a turn-key system has been purchased, the turn-key The addresses that the board uses may be selected in
project files will be included in the DEMODIR directory, the range 220 to 3A0 at intervals of 40, with 320 as the
also. default address at which the software starts to check for
the boards presence. The board is screen printed to
Note : show the links which should be made, in a 3x3 pin matrix
The file Cyber.dll used to be installed into the on J1 to J3 which are set to address 320 at the factory.
Windows\System directory. It has now been moved
into the Walli3 directory in two parts to avoid some This address space is normally free, but it is still
known installation problems, but as a result, if the necessary to check for any conflict with other interfaces,
user is upgrading to a later version of Walli and in such as RS232/422 serial cards.
particular is using Windows95, there is the inevitable
conflict and an error message “ File not found ” will Once this has been done, the board may be plugged into
occur in the installation procedure. Should this occur, an available slot on the mother board and the computer
the user is advised to delete Cyber.dll in the re-booted.
Windows\System directory, and proceed to re-install.
Parallel Interface - Turbo DL Board
Demonstration program files are distributed with the
software and these may be loaded from file to be Parallel interfaces are memory mapped, taking data as if
inspected in conjunction with the Learning Walli section the interface were a location of memory.
of the Help files, and then run to familiarise the user with
the system. The workcell project examples may In its latest version, the Turbo DL board has on-board
subsequently be used as the basis of further project diagnostics written into a PROM, and its address may be
work or in part, by extracting the component device selected in the range C800 to DC00, in 400 increments,
program files. using a 3x3 pin matrix on LK1 to LK3. Silk screen
printing on the board indicates the jumper connections
When the software is installed, all of the demonstration required to set the address.
files are copied to a sub-directory, DEMODIR, which is
write protected to avoid accidental loss, and the The actual read and write addresses are set as off-sets
complete directory is copied to the WALLI directory each within the range by the interface PROM and these are in
time the application is loaded by selecting the Walli icon. two groups, each requiring a different decode PROM in
the device the interface serves. For the one group, A4
to A7 refers to the address lines individually, but for the
HARDWARE INSTALLATION other, AW to AZ uses combinations of the address lines.
The address selection is made within the Walli software -
See also : APPENDIX 5, Intel Plug and Play see Programming the Workcell Interface - but the choice
APPENDIX 6, Network Installations of the device decode PROMS must be specified and will
depend on the contents of the Workcell.
Walli3 supports two dissimilar interfaces between the
IBM host computer and the robotic and CNC devices, The factory set default selection of the address space at
These are either the parallel interface Turbo board in its D000 to D3FF, is the first of the generally available
latest DL form, or alternatively a proprietary RJ45 serial locations which does not conflict with other commonly
communications board, which has been recently used addresses.
introduced. Both interfaces connect into the IBM ISA
internal bus Some video boards, however, have an optional
extension of their normal mapping from C000 to C3FF
It is essential to ensure that the hardware addresses through to DFFF, and this must be changed before
selected for these interfaces do not conflict with installing the Turbo DL board. Other video boards may
other interfaces installed in the computer, the video also cause problems by forcing 16 bit operation in
board, printer board and disc controller to give basic addresses beyond those that they are allocated.
examples.
The Trident 9000 is one example for which the problem
It is also essential to ensure that the computer is may be avoided by running the set-up program
turned off before any hardware installation is TVGACRTC and pressing F10 to select the Extra
attempted. Features. This allows changing the BIOS to 8 bits or the
mode to SLOW, either of which is a solution.

Network boards are also frequently mapped at D000, so


Serial Interface - RJ45 Board changes must be made to the address selection for the
Network, to accommodate the Turbo board.
The I/O Mapped RJ45 interface board is now the
preferred interface and has been introduced partly to Memory expansion boards may include expanded
avoid the congestion in memory mapped space that was memory with a page frame starting at D000, and this
apparent when attempting to use the earlier parallel

WALLI for WINDOWS. Revision A USE of WALLI page 3


must be reconfigured to another address or the board while sub-devices are connected to devices through logic
removed. and analogue signal connections on single wires to
colour coded sockets.
Memory managers are sometimes capable of
reallocating the address range of the Turbo board for The various robots in the range and the Cyber Mill and
other purposes and this must be prevented by using Lathe are devices and therefore require to be connected
software switches in their declaration. The memory to a computer interface.
manager supplied with both DOS and WINDOWS, i.e.
EMM386.EXE will most certainly cause problems if it is Up to eight such devices may be daisy chained to a
declared in the standard form. single parallel interface, using an extended ribbon cable.

As a consequence, within the CONFIG.SYS file, the Up to eight devices may also be driven from a single
declaration :- RJ45 serial interface, linked one to the next from
duplicate sockets, but the link chain must be correctly
DEVICE=C:\DOS\EMM386.EXE terminated at the furthest device in the chain to ensure
error free transmissions.
should be amended to read :-
An expander box has been designed for both types of
DEVICE=C:\DOS\EMM386.EXE x=d000-d3ff m9 interface which allows the signal and logic drive capacity
to the sub-devices in the workcell to be expanded
where, m9 is the code to start the EMS page frame at beyond the total number of connections provided on the
E000, well away from the Turbo board. The x=d000-d3ff devices. The expansion or expander boxes are
switch should always be used even if EMS is not connected to the computer interfaces, so they fall into
required, otherwise UMB’s could be allocated at the the category of devices.
Turbo board address.
Sub-devices include conveyors of various lengths, an
Similarly, the 386 Enhanced section of the SYSTEM.INI index table, a parts dispenser, sensors and gauges for
file should have the following addition :- height and width. All of these are either driven by, or
produce signals at the TTL logic drive level of +5 volts.
ReservedHighArea=D000-D3FF Some, such as the gauges, produce analogue signals in
EMMExclude=D000-D3FF the range 0 to 5 volts.

immediately after the [386ENH] section header, to A form of serial data transfer is also possible between
prevent WINDOWS from incorrectly allocating an EMS devices and sub-devices using an RS232 emulation on
frame. two wires, the signal wire and an earth return, both
essentially logic connections. This form of transfer
When the Turbo board has been installed in one of the applies to the latest version of the conveyors and index
available slots on the IBM mother board, a screen table.
message TURBO BOARD FOUND AT D000 should be
displayed during the boot-up phase on the first occasion
the Walli application is selected. GETTING STARTED

If problems in communications with the board occur, Once the software and hardware have been installed,
either then or subsequently, error messages will appear correctly it is time to enter the Walli application for the
and it will be necessary to re-check the computer set-up. first time. If a turnkey system has been purchased, this
stage will have been passed long since, at the factory,
The software checks for the presence of either board and the program files will be on disc, but the user may
and its correct address allocation, whenever the use of have installed or updated software and/or hardware for
the interface is called for, as when loading a relevant himself.
demonstration program, or when the contents of the
workcell are being declared at the initial stages of writing The application is entered by selecting the robot Walli
a new program which uses a device connected to the icon from the Windows Program Manager Main window,
interface, as discussed in more detail in the following where it has been placed during the software installation
section, Getting Going. A record of the interfaces process.
installed and their addresses is stored in the Walli.ini file,
independently from the program files, and these are The screen that is then presented should be as shown
consequently of use on all systems, if only by simulation. below in Clip 1, containing the standard Windows Load
dialogue box. In this illustration the List Files of Type
box has been expanded by selection to show the start of
a scrolled list of appropriate file types. The choice is
initialised to type WALLI, the project level with
extension .wal, but the file type may be changed to one
DEVICES AND SUB-DEVICES of the other valid extensions which refer to the devices at
program level.
The machine hardware that may be part of a workcell
under Walli3 control falls into two categories, devices
and sub-devices. The distinction between the two is that
devices are connected to the computer interfaces,
parallel or serial although the choice is not always open,

WALLI for WINDOWS. Revision A USE of WALLI page 4


Clip 3 : Confirmation of Interface address.

The software checks for the presence of the board, for


Clip 1 : Initial screen presentation with Load dialogue box
any conflicting memory allocations to the board space
and for incorrect 16 bit operation in the video card. The
The standard Cancel option within the box assumes that
diagnostics PROM on the Turbo interface also confirms
none of the available files are required and therefore
the correct operation of the external bus or ribbon cable
imposes the conditions which could otherwise be
to the devices which are connected.
selected later, as a New project from the File menu
This clears the program edit windows and the screen
The above dialogue relates to the parallel interface, a
focus is given to an empty Cell Definition window.
similar dialogue is presented for the RJ45 serial interface
and in the illustration, Clip 4, the indication is that the
The user must then correctly restate the contents and
appropriate interface is not installed, such as would be
connections of the workcell, or alternatively load a
the case were only a parallel interface to be installed and
suitable definition file such as presented in the
a program which uses a Gryphon to be loaded, which
demonstration projects, if it is a turn-key system - see
may only be driven through the RJ45 serial interface.
later, Adding a Mentor, etc.
Selecting the Cancel option here allows the program to
be loaded but it may only be run in simulation.
Project level refers to a complete program incorporating
the use of devices and sub-devices within a
representative workcell and obtains in particular to the
controlling workcell program. The other file types are
allocated to the definition of the workcell and to the
individual devices, which may form part of a project
program or be run separately as appropriate for stand-
alone devices.

These files these will normally be part of the WALLI3


directory but the load directory may be changed using
the directories section of the dialogue box.
Clip 4 : Installation error dialogue box - RJ45 interface.
If a file is loaded and an installation error is detected, an
error message and dialogue will be superimposed as If the installation is error free when a file is selected for
shown below in Clip 2, and this allows the interface loading, the edit screens for the program are displayed.
address to be typed in, selected from the list presented
or searched for by the software. It is suggested that one of the device demonstration
programs, such as MVERTP&P.men for the Mentor, is
selected at this point so that the user may become
familiar with the Walli’s screen presentation of the
various windows.

If however, the choice of robot to be used is one with a


digital control system with encoder feedback, such as
Gryphon, and it is connected to an interface, with the
power switched on so that it is therefore on-line, there
will be a further dialogue superimposed for the initialising
sequence. This requires the robot to be moved to a safe
position from where it’s internal encoder counter zeroing
sequence may be commenced. The robot digital control
Clip 2 : Installation error dialogue box - Turbo interface. systems use components which are also used for the
A confirmation message is given once the presence of Mill and Lathe, such as the CNC processor board.
the board is established at a valid address, correctly When the initialising sequence is completed, it is
stated in both the dialogue and by link selection on the followed by the move to the position stated in the first
hardware interface. line of the program, which is controlled from the on-
screen manual control panel, as it is for all the robots. In
the illustration, Clip 5, this is the position given by the
seed values for the start of a new program, but if a

WALLI for WINDOWS. Revision A USE of WALLI page 5


program is loaded these would be over-written by the The illustration is for Mentor but similar panels are
program values. presented for all the robots, as appropriate.

Once a demonstration program has been loaded


successfully through these stages, it may be run by
selecting the appropriate Start command from the Run
menu or, in the case of the Mill and Lathe as a graphics
simulation from the menu bar of the CNC Graphics
window. The on or off-line state may be toggled from
the fist item of the Run menu, allowing the program to
control the device or alternatively as a simulation when
off-line - see later section on Program Execution.

The demonstration programs provide a very suitable


means of starting to use the Walli system and to become
familiar with the Windows presentation without the need
to become involved in the programming and preparatory
procedures which has all been done in advance. There
comes a point, however, when the user will wish to
control the devices for himself and write the necessary
Clip 5 : Encoder feedback zeroing sequence - Gryphon programs. The later stages of this manual detail the
programming of each of the devices, but the initial
The dialogue box suggests a suitable safe start position stages need to be considered here.
in a side elevation and presents push buttons, much as
on the teach pendant, to move the individual axes. The start point, as indicated earlier, is the Cancel
selection from the Load dialogue box, for which the
Once a safe position has been established, the zeroing Escape key is the short-cut alternative. This presents a
sequence may be selected with confidence. The robot screen as shown in Clip 7, with a blank Main workcell
will be moved under internal program control, to window and the Walli Cue card to its right, at the bottom
establish the end stop positions on each axes, from of the screen and a blank Cell Definition window, which
which to measure all subsequent movement. has the screen focus as indicated by the high-lighted title
bar, with a blank Workcell Status window to the right at
the top of the screen. Nothing is defined, nothing is
connected in the system and no program exists but the
initial step has been taken in selecting the Cell menu to
show the list of devices that may be added or chosen for
the workcell.

Clip 6 : On-screen Manual Control panel - Mentor Clip 7 : Start point for an undefined or New Walli system.
The illustration in Clip 6 shows the on-screen Manual
Control panel which will be displayed as a result of
ADDING A MENTOR
loading a program file when a robot is connected and
switched on, in which the first line of program inevitably
does not correspond with the present positions of the Mentor heads the list of devices and is shown high-
robot axes. It displays the program position with arrows lighted initially so that it may be added to the cell when
and the current axes positions with the sliders, so that the keyboard Enter key is pressed. This action displays
the two sets may be brought into line. If no hazards are the Device Address Selection dialogue box as shown in
present to cause collisions, the OK button may be Clip 8.
selected without moving the sliders, and the robot will
move to the programmed position under normal control.

WALLI for WINDOWS. Revision A USE of WALLI page 6


Clip 9 : Initial program edit windows for Mentor.
Clip 8 : Device Address Selection dialogue box - Mentor.
If the Mentor has been connected correctly to the
The current version of Mentor may be driven through interface with the correct device address and the power
either the parallel Turbo board or through the preferred is switched on, the state of the Mentor shown in the title
RJ45 serial interface, so both interface selections are bar will be On-line - keyboard control and not Not-
presented. The choice is pre-determined, however, by Connected as shown. The column values will then be
the way in which the SB interface and control board has those which correspond to the current feedback values
been populated, it is one or the other and not both, and for each axis as it is presently positioned. Not-
would have been specified when the order was placed. connected or off-line, the values will be the initial seed
values for the program given by the system, which for
The choice of Device number or Turbo address is more Mentor are at the mid-range for each axis. In either
open but if it is the only device the first or high-lighted case the graphics will show the position corresponding to
option should be chosen, any subsequent devices will be the values.
high-lighted in order, on the radio buttons. The choice
must correspond with the device selection, using the In this state, Axis 0 may be rotated by using the plus and
links at CN104 on the edge of the SB board, otherwise minus keys and the axis high-light changed using the
the robot cannot be put into the on-line state for cursor keys to demonstrate control over the robot.
programmed control.
The program is developed from this point by inserting
The choice that is made for Mentor is retained for lines using the Ctrl+I key combination, which copies the
reference in the Walli.ini file so that it may be offered current line to the one below and by altering the value in
high-lighted as the most appropriate, on the next each column by over-typing, one axis at a time, and
occasion that a Mentor declaration is made for the using the cursor or tab keys to move between column
workcell. and line or row positions.

The effect of this selection is to superimpose a program For details of the programming techniques, refer to the
edit window for the Mentor on the Cell Definition window later sections on programming conventional robots and
area of the screen and at the same time to superimpose programming Mentor in particular.
graphics displays of the plan and elevation of the Mentor
robot on the two screen areas to the right, top and ADDING A GRYPHON
bottom respectively. A small window is introduced below
the graphics which summarises the current programmed The high-lighted position in the Cell menu may be moved
position of the end of the gripper in the Cartesian co- to select Gryphon using the cursor keys, and when the
ordinates of the workcell space, with the origin at the Enter key is pressed, the Gryphon is added to the cell.
base of the robots vertical axis. The Device Address Selection dialogue box is displayed,
as shown in Clip 10.
The program edit window for Mentor will contain a single
line of values with the value in the Axis 0 or Waist
column high-lighted, as in Clip 9. At the same time the
Cell Definition window will show a statement
summarising the device selection that has been made,
and the Cell menu will have an added list of peripheral or
sub-devices that may be connected through the Mentor
workcell interface.

Clip 10 : Device Address Selection dialogue - Gryphon


.

WALLI for WINDOWS. Revision A USE of WALLI page 7


Only the device selection for the RJ45 interface board is simultaneously, to achieve the same effect as the screen
presented since Gryphon, and the other devices with zero button.
digital control systems, may only be driven through the
serial form of interface. The program is developed from this point, either on or
off-line, by inserting lines using the Ctrl+I key
The choice that is high-lighted is either the next available combination, which copies the current line to the one
in order, or one that has been previously made and below, and by altering the value in each column by over-
recorded for reference in the Walli.ini file as the most typing, one axis at a time, using the cursor or tab keys to
appropriate for Gryphon. The high-light may be moved move between column and line or row positions.
using the cursor keys before making the choice with the
Enter key. The choice must correspond with the device For details of the programming techniques, refer to the
selection, using the links at J0 to J3, the header on the later sections on programming conventional robots and
edge of its CNC Processor board, next to the RJ45 programming Gryphon in particular.
sockets on the front panel, otherwise the robot cannot be
put into the on-line state for programmed control. ADDING A NEPTUNE
The effect making the device selection is to superimpose The Neptune in both its versions, may only be controlled
a program edit window for the Gryphon on the Cell through the parallel Turbo form of interface, so that when
Definition window area of the screen and at the same it is selected for adding to the cell from the Cell menu,
time to superimpose graphics displays of the plan and the Device Address Selection dialogue box which is
elevation of the Gryphon robot on the two screen areas presented, only contains the set of choices for a Turbo
to the right, top and bottom respectively. A small window board, as shown in Clip 11.
is introduced below the graphics which summarises the
current programmed position of the end of the gripper in
the Cartesian co-ordinates of the workcell space, with
the origin at the base of the robots vertical axis.

The program edit window for Gryphon will contain a


single line of values with the value in the Axis 0 or Waist
column high-lighted. At the same time the Cell Definition
window will contain a statement summarising the device
selection that has been made, and the Cell menu will
have an added list of peripheral or sub-devices that may
be connected through the Gryphon workcell interface.
Clip 11 : Device Address Selection dialogue - Neptune.
If the Gryphon has been connected correctly to the
interface with the correct device address and the power Before making the selection, if the Neptune is connected
is switched on, the state of the Gryphon shown in the to the interface and the pump is switched on, as
title bar will be On-line, however, there will be a further described in the Commissioning section, the solenoid
dialogue superimposed for the initialising sequence, power should be turned off.
exactly as shown in Clip 5..
The choice that is high-lighted is either the next available
This requires the robot to be moved to a safe position in order, the first in this case, or one that has been
from where it’s internal encoder counter zeroing previously made and recorded for reference in the
sequence may be commenced and then to the position Walli.ini file as the most appropriate for Neptune. The
stated in the one line of values in the program edit high-light may be moved using the cursor keys before
window, the seed values for the start of a new program making the choice with the Enter key. The choice must
using the on-screen Manual Control panel. The graphics correspond with the device selection, using the two links
windows will initially show the Gryphon folded into its at ADD SEL on the Neptune control board, otherwise the
zero position, but, once the feed back counters have robot cannot be put into the on-line state for
been zeroed, the graphics will follow the axes values and programmed control.
finally adopt the seeded position.
The effect making the device selection is to superimpose
In this state, Axis 0 may be rotated by using the plus and a program edit window for the Neptune on the Cell
minus keys and the axis high-light changed using the Definition window area of the screen and at the same
cursor keys to demonstrate control over the robot. time to superimpose graphics displays of the plan and
elevation of the Neptune robot on the two screen areas
If the Gryphon has not been connected or the power is to the right, top and bottom respectively. A small window
off, the zeroing sequence will not be entered and the is introduced below the graphics which summarises the
status shown in the title bar will be Not-connected or Off- current programmed position of the end of the gripper in
line, respectively, but the graphics display will still the Cartesian co-ordinates of the workcell space, with
change to reflect changes in axes values, introduced the origin at the base of the robots vertical axis.
from the keyboard.

The zeroing or initialising sequence may be invoked for The program edit window for Neptune will contain a
Gryphon from the pendant in a direct manual control single line of values with the value in the Axis 0 or Waist
mode with the robot not connected to a computer. This column high-lighted. At the same time the Cell Definition
uses all four corner buttons on the pendant window will contain a statement summarising the device
selection that has been made, and the Cell menu will

WALLI for WINDOWS. Revision A USE of WALLI page 8


have an added list of peripheral or sub-devices that may contains only the set for the RJ45 board as for the
be connected through the Neptune workcell interface. Gryphon, as shown in Clip 10.

The choice that is high-lighted is either the next available


in order, or one that has been previously made and
recorded for reference in the Walli.ini file as the most
appropriate for Kestrel. The high-light may be moved
using the cursor keys before making the choice with the
Enter key. The choice must correspond with the device
selection, using the links at J0 to J3, the header on the
edge of the CNC Processor board, next to the RJ45
sockets on the front panel, otherwise the robot cannot be
put into the on-line state for programmed control. The
effect making the device selection is to superimpose a
program edit window for the Kestrel on the Cell Definition
window area of the screen and at the same time to
superimpose graphics displays of the plan and elevation
of the Kestrel robot on the two screen areas to the right,
top and bottom respectively. A small window is
introduced below the graphics which summarises the
Clip 12 : Initial program edit windows for Neptune I. current programmed position of the end of the gripper in
the Cartesian co-ordinates of the robot axes which in this
The difference between Neptune I and II is in the number case correspond to the workcell space.
range for each axis and the addition of the Yaw axis at
the wrist of Neptune II which requires an additional The program edit window for Kestrel will contain a single
column in the Program edit window, and which is shown line of values with the value in the Axis 0 or X column
in the graphics also. high-lighted. At the same time the Cell Definition window
will contain a statement summarising the device
If Neptune has been connected correctly and the device selection that has been made, and the Cell menu will
address selected appropriately, it is in the state where it have an added list of peripheral or sub-devices that may
may be put on-line to the computer. The on-screen be connected through the Kestrel workcell interface.
Manual Control panel will be superimposed and at this
point, the solenoid power should be restored so that the
robot axes may be brought to the positions defined by
the
seed values in the single line of program in the edit
window, in a controlled manner.

In the on-line state, Axis 0 may be rotated by using the


plus and minus keys to demonstrate control over the
robot and its other axes by changing the axis high-light,
using the cursor keys.

If the Neptune has not been connected or the power is


off, the manual control sequence will not be entered and
the status shown in the title bar will be Not-connected or
Off-line, respectively. The graphics display will change,
however, to reflect changes in axes values, introduced
from the keyboard.
Clip 13 : Initial program edit windows for Kestrel.
The program is developed from this point, either on or
off-line, by inserting lines using the Ctrl+I key If the power had not been switched on previously, the
combination, which copies the current line to the one Kestrel Zeroing warning message will be superimposed,
below, and by altering the value in each column by over- as in Clip 13, and the system will wait until the Kestrel
typing, one axis at a time, using the cursor or tab keys to power is switched on and the zeroing sequence is
move between column and line or row positions. completed. This will bring the axes to the seed values
shown in the edit window. The zeroing sequence for
For details of the programming techniques, refer to the Kestrel is carried out autonomously by its control system,
later sections on programming conventional robots and whenever the power is restored and the warning will not
programming Neptune in particular. be displayed if the power is on at device selection.

Control of the robot axes may be demonstrated at this


ADDING A KESTREL point by using the plus and minus keyboard keys for the
axis that is high-lighted or by using the push button keys
The rectilinear Kestrel robot has a digital control system on the robot frame.
which can only be interfaced to the host computer using
the RJ45 serial interface. When Kestrel is added by The program is developed from this point, either on or
making the selection from the Cell menu, the Device off-line, by inserting lines using the Ctrl+I key
Address Selection dialogue box that is presented combination, which copies the current line to the one

WALLI for WINDOWS. Revision A USE of WALLI page 9


below, and by altering the value in each column by over- An autonomous zeroing sequence entered from the
typing, one axis at a time, using the cursor or tab keys to pendant control keys is not available on Serpent as it is
move between column and line or row positions. on Gryphon, because each axis may be zeroed toward
either end of its rotation range, as most appropriate to
For details of the programming techniques, refer to the the use required, and consequently there are too many
later section on programming Rectilinear robots. options.

ADDING A SERPENT Control over the robot may be demonstrated by using


the plus and minus keyboard keys for the axis which is
high-lighted.
The Serpent SCARA robot is available in two forms
which differ only in that the two principal links which form
The robot program is developed by inserting further lines
the articulated arm on Serpent II, are some 60% longer
using the Ctrl+I key combination, which copies the
than they are on Serpent I, with a corresponding
current line to the one below, ready for each axes value
increase in reach overall.
to be over-typed in turn when it has the high-light, and
this may be done either on-line producing arm
Walli3 also supports two versions of Serpent, the
movements, or off-line, affecting only the graphics
previous version which had an analogue control system
representation.
with potentiometer feedback, and the current EC version
which has a digital control system with encoder
For details of the programming techniques that may be
feedback, even though it uses the same dc motors and
applied, refer to the later section on programming
gearboxes for the axes drives.
SCARA robots.
As a consequence, when either Serpent I or II is added
to the workcell from the selection in the Cell menu, the
Device Address Selection dialogue box contains both
sets of device addresses, for the RJ45 board and the ADDING A CYBER MILL
Turbo interface board as it does for Mentor in Clip 1, but
only one is relevant depending on the version supplied. The Mill may only be connected through the RJ45 serial
The current version which may only be connected interface so that, when it is selected for adding to the cell
through the RJ45 serial interface will have the distinction from the Cell menu, the Device Address Selection
of EC appended to its name, in the title of the Serpent dialogue presented only contains the device numbers for
program edit window, which is displayed when the the RJ45 board, as in Clip 10.
appropriate device address is selected.
The high-lighted choice will either be the next available in
sequence or one recalled from the Walli.ini file as one
previously made and therefore suitable for the Mill. The
choice must correspond to the selection made by links
on the header J0 to J3 adjacent to the RJ45 sockets on
the edge of the CNC processor board, on the right hand
side of the electronics enclosure, otherwise the Mill may
not be put on-line for CNC programs.

The effect of the selection is to superimpose the edit


window for the Mill for programs written in ISO G&M
Codes in the upper part of the screen with a Cue Card
for the G and M codes on the right. The lower edit
screen for Main program is overlaid by a blank graphics
screen for the Mill program execution in simulation, a
necessary first stage to prove all programs before cutting
material and before the program is compiled to the
operating code for the CNC program. It has its own
Clip 14 : Initial program edit windows for Serpent I EC. menu bar to control the simulation, whereas the Start
command from the Run menu initiates the compilation.
The screen for the start of programming is as shown in
Clip 14, with windows for the Serpent program, the Main The Mills digital control system runs open loop using
workcell program, plan and elevation graphics and the stepper motor drives to the axes slides, but without
gripper Cartesian co-ordinates. feedback. It is necessary to establish the zero count
position for the stepper motors, but this is done
If the Serpent is correctly connected, the device autonomously by the Mills control system whenever the
selection matching that on the links at the edge of the power is restored, whether it is connected correctly to
CNC processor board, next to the RJ45 sockets on the the computer interface or not.
front panel, and the power is switched on, the dialogue
box to control the zeroing sequence will be The Mill has an on-screen control panel to supplement
superimposed and, when this is completed, followed by the manual controls for the axes slides, but this is
the on-screen manual control panel to move the robot available from the Options menu and will only be
arm to the positions set by the seed values in the displayed when the Mill is connected and on-line, as
program window. compared to the on-screen Manual Control panels for
the robots, which are displayed automatically.

WALLI for WINDOWS. Revision A USE of WALLI page 10


The program window contains nothing at this initial stage
other than suggested values for the feed-rate, spindle The Lathe has an on-screen control panel to supplement
speed, tool size and dwell time in the columns F,S,T and the manual controls for the axes slides, but this is
D, respectively, as shown in Clip 15 with the Options available from the Options menu and will only be
menu for the control panel selection superimposed. displayed when the Lathe is connected and on-line, as
compared to the on-screen Manual Control panels for
the robots, which are displayed automatically.

The program window contains nothing at this initial stage


other than suggested values for the feed-rate, spindle
speed, tool selection and dwell time in the columns F,S,T
and D, respectively, as shown in Clip 16, and with the X
and Z axes columns containing the Home legend,
referring to the farthest tool position from the lathe
spindle axis and chuck face, respectively.

Clip 15 : Initial program windows for the Cyber Mill.

The program is developed by typing in the successive


lines of code but for this refer to the later section on
programming the Cyber Mill and the use of the ISO
codes. The demonstration files may be loaded from the
File menu, and these are the best way to become
familiar with the programming techniques and running
programs, in simulation and later to cut material.

ADDING A CYBER LATHE Clip 16 : Initial programming windows for the Cyber
Lathe.
The Lathe may only be connected through the RJ45
serial interface so that, when it is selected for adding to The program is developed by typing in the successive
the cell from the Cell menu, the Device Address lines of code but for this refer to the later section on
Selection dialogue presented only contains the device programming the Cyber Lathe and the use of the ISO
numbers for the RJ45 board, as in Clip 10. codes. The demonstration files may be loaded from the
File menu, and these are the best way to become
The high-lighted choice will either be the next available in familiar with the programming techniques and running
sequence or one recalled from the Walli.ini file as one programs, in simulation and later to cut material.
previously made and therefore suitable for the Lathe.
The choice must correspond to the selection made by
links on the header J0 to J3 adjacent to the RJ45 ADDING SUB-DEVICES
sockets on the edge of the CNC processor board, on the
right hand side of the electronics enclosure, otherwise Whenever a device is added to the cell, including the
the Lathe may not be put on-line for CNC programs. Expander for the workcell which is not programmable,
the Cell menu is expanded with a section which includes
The effect of the selection is to superimpose the edit all the sub-devices that may be connected to the devices
window for the Lathe for programs written in ISO G&M workcell interface. This is not always the same list, since
Codes in the upper part of the screen with a Cue Card not all the devices will support analogue sub-devices, for
for the G and M codes on the right. The lower edit example.
screen for Main program is overlaid by a blank graphics
screen for the Lathe program execution in simulation, a The effect of making a selection from the list is to display
necessary first stage to prove all programs before cutting a dialogue box in which to specify all the connections for
material and before the program is compiled to the the sub-device, as in Clip 17 for the conveyor, the first in
operating code for the CNC program. It has its own the list.
menu bar to control the simulation, whereas the Start
command from the Run menu initiates the compilation.

The Lathes digital control system runs open loop using


stepper motor drives to the axes slides, but without
feedback. It is necessary to establish the zero count
position for the stepper motors, but this is done
autonomously by the Lathes control system whenever
the power is restored, whether it is connected correctly
to the computer interface or not.

WALLI for WINDOWS. Revision A USE of WALLI page 11


reaction to previous events, or it may be gained by
selecting the title bar with the mouse. It is assumed that
the user is familiar with the mouse as a means of
selection and control, from other applications.

Since the number of windows for display may be large,


and as it will become apparent, may vary in any case
with the content of the workcell, the application makes
extensive use of Windows’ Multiple Document Interface
and organises the windows into five stacks, calling a
window to the top of a stack by menu selection or
change of screen focus. The edit windows are selected
directly from the Window menu but the associated
information window stacks are manipulated by the
software or they may be suppressed using the Options
menu.

Clip 17 : Dialogue box for adding a Conveyor. As presented by the default conditions, the editing
windows are arranged into two geometrically tidy stacks,
The presentation in the dialogue box will be appropriate occupying the top and bottom halves of the larger left
to the sub-device selected and once the connections are hand side of the screen. The right hand side of the
specified, the Cell Definition window will include a screen is occupied by three stacks of smaller information
summary which represents the wire list for the cell, as in windows, the upper stack associated with the upper
Clip 18, where the digital outputs have been allocated stack of edit windows and the similar sized middle stack
although the preferred connection is through the Serial with the lower stack of edit windows. The fact that
To choice, which covers all three in one. these are stacks may be verified by dragging the window
boundary, using the mouse in the normal way, to reveal
what lies below. The tidy condition may be restored
using the Arrange selection from the Window menu.

Clip 18 : Cell Definition with conveyor connected to lathe.

The conveyor and all other peripheral sub-devices are


controlled from commands in the Main workcell program
and its sub-routines and for this refer to the later section
on programming the workcell.
.
WINDOWS PRESENTATION Clip 19 : Screen showing “Arranged” tidy window stacks.

The application provides three separate programming


facilities as editing windows for each of the separate Depending on what has been declared for the content of
aspects of a program. They co-exist and may be the workcell, the upper left-hand stack of edit windows is
viewed simultaneously on the screen in keeping with occupied by the edit windows for the robots, Cyber Mill
Windows convention. The screen also displays and Lathe. It will always contain the Cell Definitions
information windows which are associated with each of window in which the content and connections of the
these edit windows, and their content may be either text workcell are declared.
or graphics.
The lower left hand stack is occupied by the edit
This windows concept allows the screen to display a windows for Walli’s Main workcell program and whatever
number of information topics simultaneously in it’s Walli sub-routines that are added using the selection
viewing area, but the means of interacting with the from the Edit menu, These are used typically to control
computer, through the keyboard and mouse, are not as the activity of individual devices and their associated
easily partitioned. As a consequence, the input from peripheral sub-devices, as a group within the workcell.
these peripheral devices must be diverted to a particular Unless the software support is restricted, such as when
window on the screen by giving it the screen focus. loading a program for a stand-alone device, it will always
This is indicated by high-lighting the title bar of the contain the Main program window as the basis of a
particular window with a colour different to the overall workcell project.
colour of the rest of the windows on screen. The screen
focus may be given by the software as a specific

WALLI for WINDOWS. Revision A USE of WALLI page 12


The display which is visible on the top of each adjacent The Cell Definition window may not be edited directly
associated information window stack is related to what from the keyboard but through dialogue boxes, accessed
may be viewed in the edit window, but it may change via the Cell menu while the window has the screen
appropriately, when the screen focus is switched from focus, and selecting the devices and sub-devices for
one edit window to another, either by menu selection or editing by using the cursor keys only. It is arranged into
using the mouse select on the title bar. the same tidy stack of windows as used for devices, at
the top left of the screen, so that it may be viewed for
When a robotic device has the screen focus on top of reference at the same time as when entering or editing
the upper stack of edit windows, the two upper right the Main Walli program or its sub-routines.
hand information windows will display the graphics of the
robots’ plan and elevation in the top and middle windows, The bottom right hand corner of the screen may be
respectively. If the screen focus is then switched to the empty initially, but if any of the robotic devices are
Main workcell edit window, the graphics of the robots’ declared for the cell, it will be occupied by a stack of
elevation will be replaced by the workcell programming small information windows displaying the Cartesian co-
cue card, as in Clip 20. ordinates of the tip of the gripper, as measured from the
intersection of the vertical or waist axis with the surface
plane of the workcell. The window also displays the
elevation and rotation of the wrist axis, and whether the
gripper is open or closed. If there are several robots
declared, the top of this stack of information windows will
be associated with which of the robots was last given the
screen focus, at the top of the stack of device edit
windows shown at the top left of the screen.

SELECTING THE DISPLAYS FOR THE EDIT


WINDOWS

Selecting Window from the menu bar provides not only


the means of re-establishing the tidy arrangement of
windows on the screen, but also access into menus for
selecting what is displayed on the top of the stack of
Clip 20 : Change of focus to Main cell program window. device or robot windows and the stack for the Main
workcell program routine and its’ sub-routines.
Similarly, if a CNC edit window has the screen focus on
the top of the device edit window stack, the upper
information window stack will display an appropriate cue
card for CNC programming, for the Cyber Mill or Lathe.
If the upper edit window stack displays the Workcell
Definition window, the upper information window stack
will display the status of workcell connections, etc.

Clip 22 : Window menu selection for a New project.

The extent of the Window menu is a direct reflection of


the devices that have been declared for the workcell,
using the Cell menu, and whether Walli sub-routines
have been added, using the Edit menu - see section Cell
Definition. For a new project, the choice is restricted as
Clip 21 : Cell Definition window and editing selection. shown in Clip 22, to the arrange option and to the Main
The Cell Definition window displays the equipment and Workcell Definition windows, both of which must
content that currently has been declared for the workcell. always exist for a project, the only exception is when an
This is a list of devices, such as robots and the Cyber existing program file for a stand alone device has been
Mill and Lathe, followed by a list of sub-devices, such as loaded.
conveyors and index tables, which also summarises the
electrical and logic connection to provide in effect a The selection of any of these menu items will bring the
wiring list for the cell, as shown in Clip 21. appropriate edit window to the top of its stack, give it the
screen focus and adjust the stacks of information
windows accordingly.

WALLI for WINDOWS. Revision A USE of WALLI page 13


screen perhaps, a re-arrangement may be desirable and
it will be retained for recall, when the project is saved to
file.

Clip 23 : Window menu extended for additions to cell.

The Window Menu selection for the extended menu is :


Clip 24 : Windows re-arranged as per brochure.
Arrange ~ Tidy the arrangement of window
stacks The Auto-size Fonts choice in the Options menu
Devices ~ Alternative Robot and CNC edit facilitates the changing of window sizes, by adjusting the
windows for the screen focus font size to fit the line length available within the window.
Walli Subroutines~ Named sub-routines in addition Auto-sizing is the default condition as displayed by a tick
to the Main workcell program against the option.
Cell Definition ~ A list of devices and sub-
devices that have been declared For users who prefer a more ordered presentation,
and their inter-connections Arrange tidies the screen into the pre-defined geometric
order, and all further declarations of Devices and Walli
The Windows Arrangement Subroutines result in adding "pages" to the respective
tidied stacks of editing and information windows.
When the Walli application is entered, the screen is
blank except for the application title and the menu bar,
but with the Load dialogue box superimposed, the load
directory initialised by default to C:\Walli3 and the file
type to Walli, the project files. What the screen
subsequently displays will depend on the load selection
made, typically one of the demonstration programs, or if
the cancel option is used, having the effect of initialising
to a new project.

If a project file or demonstration program is loaded, the


screen displays the two major edit widows, the Main
workcell program window at the bottom left, the edit
window for a Device at the top left and the information
windows to the right. The window stacks will all contain
program and information relevant to the project,
including robot graphics when appropriate. The device
edit window stack will be given the screen focus and will
display the window for the device which heads the list of Clip 25 : Screen presentation for stand-alone device.
devices declared for the project workcell. If this is a
robot, the appropriate robot graphics will be on top of the For stand-alone devices, the program may be saved
information window stacks. If it is a CNC device, the using the appropriate device name file extension. When
appropriate cue card will be on top of one information it is recalled, the size of the edit window is adjusted
stack and the workcell cue card on top of the other. automatically to occupy the full height of the left hand
Although the tidy arrangement of the window stacks is side of the screen, so that more lines of program may be
presented by default at the beginning of a new project, viewed without the use of the scroll bars, as in Clip 25.
the user has the usual freedom within a Windows The Window menu is removed from the menu bar also,
application to re-arrange the screen and alter window because it is irrelevant.
sizes at will, using the mouse dragging capability. This
has been shown to effect for illustration purposes in the The device programs within a project may also be saved
Walli brochure and a similar arrangement is reproduced separately, so that they may subsequently be re-used as
here in Clip 24. Alterations to the window at the top of a parts of other projects. This option is only presented in
stack will only obtain to that window, however, the the File menu when the device has the screen focus.
windows below will remain un-altered unless
subsequently changed. For some users, with a larger

WALLI for WINDOWS. Revision A USE of WALLI page 14


Device Alternatives ~ Robot Window

The list of devices that may be accessed through the


side sub-menu for the Devices option in the Window
menu, contains only those devices that have been
declared for the workcell, and it corresponds to those
listed in the Cell Definition window, as in Clip 23.

When making a selection from the sub-menu list, the


effect is to bring the edit screen for that device to the top
of the stack for device windows, and gives it the screen
focus, ready for any changes.

Walli Subroutines ~ Workcell Window

The list of subroutines that may be accessed through the


side sub-menu for the Walli Sub-routines option in the Clip 26 : Editing Gryphon from the Cell Definition.
Window menu, contains only the names of those
routines that have been added to the Main workcell
program using the selection in the Edit menu.
Although the Cell Definition window may not be edited
directly from the keyboard, it is given the screen focus so
Making a selection from the sub-menu list, has the effect
that the window cursor may be moved to the appropriate
of bringing the edit screen for that sub-routine to the top
entry, to allow editing from the Cell menu, where it will be
of the stack and gives it the screen focus, ready for any
found that the alternatives for editing or deleting the
changes that may need to be made.
selected item are included as the last group in the menu,
as in Clip 26. The cursor is also moved within the Cell
Cell Definition definitions window according to which device has the
screen focus.
Selecting the Cell Definition item from the Window menu
has the effect of bringing the Cell Definition window to The current contents of the Cell Definition window is
the top of the stack for device edit windows. It is the retained by the project and will also be retained between
most appropriate window to display when adding sessions of using the Walli application, if it is saved
Devices and Sub-Devices to the declared content of the separately with a [ .def] file suffix. It may then be used
workcell, although this may be done regardless of which as a statement for the installation, to be loaded for each
window is visible. It is the default and only display new project and only changed by additions or deletions
available, when a new project is entered. when the equipment hardware is changed. The options
to load or save the Cell Definition window are only
The window presents a list headed by the Devices that present in the File menu while the Cell Definition window
have been declared, each accompanied by a statement has the screen focus.
of the interface to which it is connected and the device
number in the linked chain. This is followed by the Sub-
Devices that have been declared and against each of
these, a summary is given of the connections to the
SELECTING THE GRAPHICS AND
device workcell interfaces that were intended when the
sub-device was added to the cell. As such the window INFORMATION WINDOW DISPLAYS
presents a Wiring List for the workcell and in system
terms, this also enables the logical and causal The choice of window that may be viewed on the top of
statements to be made correctly in the Main workcell the stacks of information windows is managed by the
program and its subroutines. application software according to selections made from
the Window menu or from the use of the mouse select to
Once a device is declared, its name will be added to the gain the screen focus for an edit window. The
Window menu options, to be replaced by the Devices information window appropriate to the selected edit
item and a side menu of all devices for any further window is then brought to the top of the adjacent
declarations. Similarly, once any sub-routines are added information window stack and also to the top of the stack
to the Main workcell program, the Walli Main item in the displaying Cartesian co-ordinates, if a robot device has
Window menu is replaced by Walli Sub-routines and a been selected.
side menu for the given names, including Main. Both
side menus have a final item of Next Device or Sub- The first group of options in the Options menu, however,
routine, respectively, allowing the next in the declared provides an overriding control by giving the alternatives
lists to be called in a cyclic order. of whether or not the appropriate information window is
to be included in the information stacks. This is indicated
as including the window if a tick is seen against the
menu item; and this is the default condition.

The options are :

Show Device Graphics


Show Workcell Status
Show Walli Cue Card

WALLI for WINDOWS. Revision A USE of WALLI page 15


Show Cyber Mill Cue Card Show Cue Card
Show Cyber Lathe Cue Card
The cue cards provide immediate access to the list of
Show Device Graphics commands that may be used in programming the
workcell Main Walli program and its’ sub-routines, or the
The animated graphical illustrations that are shown on Cyber Mill and Lathe devices, respectively. They appear
top of the stacks when a robot edit window gains the on top of the adjacent associated stack of information
screen focus are different to reflect the different windows, whenever the edit window has been given the
geometry’s of the various robots. The geometry of the screen focus.
Cyber Mill and Lathe devices are not shown in the same
way but a more relevant graphical presentation of the
cutting action of the CNC program is displayed in the
screen space occupied by the workcell programs.

Clip 28 : Walli and Mill Cue Cards.

More extensive information on the syntax of the


commands with examples, is included in the Help files
Clip 27 : Device Graphics selection from Options menu. but these cannot be managed by the applications
software in quite the same way as the information
For the robots, the graphic displays are in the two larger window stacks. Greater familiarity with the system will
information windows, showing the plan and elevation. probable remove the need for cue cards to be displayed.
The third window displays the current XYZ co-ordinates
for the axial tip of the gripper, the elevation and rotation Test Workcell Interface
of the wrist axis and whether the gripper is open or
closed, and all three are controlled by the show device When this option is selected from the second part of the
graphics option for all of the robots declared. Options menu, a display is presented which depicts the
connections interface between the device for the device
Show Workcell Status which currently has the screen focus, and the workcell.
The device must be physically connected to the IBM host
By selecting this option with a tick, the current logical computer. The workcell interface consists of an array of
status of all the connections between Devices and Sub- colour coded sockets on the base, cabinet or controller
Devices, program flags and counter values will be for the device, or it is the expander box interface and the
displayed on top of the upper of the information window display reproduces the pattern of the array.
stacks, whenever the Cell Definition window is given the
screen focus , in the upper edit window. The display is in three rows, for the digital outputs, the
digital inputs and for the analog inputs, the number in
The status may be read in conjunction with the Cell each row corresponding to the particular device and it's
Definition window and the workcell windows during version number, where appropriate, and to the type of
program execution. There may need to be dragged it interface, and shown in Clip 29 for a Mentor.
from the stack when the Test Workcell Interface option is
used from the lower section in the Options menu.

Clip 28 : Workcell Status complement to Cell Definition. Clip 29 : Workcell interface test panel for a Mentor.

WALLI for WINDOWS. Revision A USE of WALLI page 16


The information boxes in each row have different To edit any window, it must have the screen focus as
functions. indicated by the coloured title bar and the contents of the
edit menu change to reflect the change of focus.
Digital Outputs :
A pulse will be sent from the box which has been
selected by the cursor keys and high-lighted, when the
space bar is pressed. The associated check boxes set
the initial state of the pulse, marked by a cross to
indicate a high - to low - to high transition, and vice
versa.

Digital Inputs :
The boxes show the logical status of the signal
connection, either on or off, high or low.

Analog Inputs :
The boxes display the current numerical value of the
input, which will in the range 0 to 255 where 8 bit ADCs
are used, or 0 to 4095 for a 12 bit ADC, such as for the
Gryphon’s workcell interface.

The test panel window display is useful during the


building of a workcell and to test the device itself, for any
possible fault conditions. The contents are particular to
the interface of the device which currently has the screen
focus, whereas the Workcell Status window summarises
the status of all the connections that have been declared Clip 31 : Edit menu for Main Workcell program.
between the devices and sub-devices in the workcell.
The addition of Walli sub-routines, into their separate
EDITING PROCEDURES FOR DEVICE named copies of the workcell window, may only occur
AND WORKCELL WINDOWS while the Main workcell window has the screen focus.

Selecting Edit from the menu bar provides a menu for Similarly, the named subroutine may only be deleted
editing lines in either the Robot / CNC Device or Workcell while it has the screen focus, as shown in Clip 32, which
program windows, depending on which has the screen together with the previous two clips, only serves to
focus. illustrate the different edit menus, not the program.

The windows may be cleared of code using the clear The Device window has a different appearance for CNC
option, but for a robot window, all but the line of code devices and robots and each device within these two
which has the cursor will be removed, since the robot categories will show appropriate variations, that is the
must have a statement of current axes values, initial number of columns and their headings in the window, will
seed values or those presented by the cleared program. be different.

Clip 30 shows the robot edit window after it had been Short-cut keyboard alternatives are given with the menu
cleared while the cursor was on line Accepted of the item and these obtain to both windows.
program DEMO_M1.wal, and with the edit menu for the
robot program superimposed for the next edit action.
The title is no longer relevant but is retained until such
time as the changed program is saved to file,
appropriately with a new name, a process which will be
interposed by the Walli system before the program may
be run, as a consequence of any edits.

Clip 30 : Cleared robot window and robot edit menu.

WALLI for WINDOWS. Revision A USE of WALLI page 17


Inserting a Line of Code, ( Ctrl+I )

Using the cursor keys, select the line of code above


where the insertion is required and either, select Insert
from the edit menu, or use the short-cut keys, Ctrl+I.

The effect will be different for the robot and cell edit
windows and depending on whether Auto Line Number is
selected, which is the default condition. Auto line
numbering is imposed for the CNC windows and the
effect of the insertion is the same as for the Cell window.

Robot window, auto line number selected

The line on which the cursor is placed, is copied to the


line below, displacing all subsequent lines down one line
and re-numbering them to accommodate the insertion.
The cursor moves down one line, in preparation for
editing the axis values on the inserted line. This ensures
that the robot position is not disturbed by the insertion
and that any edits are to one axis at a time

Clip 32 : Edit menu for a Walli subroutine, “Subsidiary”.

To summarise, the basic items of the edit menu are :

Edit lock ~ Prevent any edits being made


Insert ~ Inserting code into the window
Delete ~ Deleting a line of code
Clear ~ Clearing the window of code
Auto Line Number ~ Assign consecutive line
numbers (default)
Add Walli Subroutine

If a subroutine has been added, these may be


supplemented as appropriate, by : Clip 33 : Auto line number selected for robot window.

Remove Walli Subroutine - xxxx Robot window, auto line number NOT selected
Rename Walli Subroutine - xxxx
Whether the cursor line has a name or number or neither
where xxxx is the name of the subroutine whose edit and the line entry is blank, it is copied to the line below
window currently has the screen focus. In the illustration leaving the original line with a blank line number field. All
it is the routine ‘Subsidiary’. subsequent lines of code are displaced one line down,
without their names and numbers altered.
Dialogue boxes are presented for the addition, deletion
and re-naming of a subroutine, when these items are
selected from the menu.

The last item in the active section of the menu, Link, is


explained later, in a separate section.

The end section of the menu which is greyed out in


these illustrations, provides the usual edit features for
Windows applications, to Cut, Copy and Paste, here
adapted to the particular requirements of the edit
windows.

These features are only active when a line or a block of


Clip 34 : Auto line number not selected for robot window.
a number of lines has been high-lighted using the Shift +
vertical cursor key combination, in the normal way. The
Cell window, auto line number selected
section of code may then be copied or cut to the Clip
board and pasted to a position in program determined by
A blank line is inserted at the cursor line, but the cursor
the current cursor line.
does not move. The code of the cursor line and all
subsequent lines of code are moved down and re-
For the robot program window, there is the additional
numbered to accommodate the insertion.
feature, Paste to End, where the high-lighted section is
appended to the end of the program listing.

WALLI for WINDOWS. Revision A USE of WALLI page 18


field. Names or numbers may still be assigned as labels
to lines of code.

The labelled line and any blank lines that follow the label
in a robot program may be referred to by label as a block
of code, by the Main workcell program or it’s
subroutines. In this way, a sequence of robot positions
which together accomplish a particular manoeuvre, may
be referred to as a robot subroutine by the workcell
program.

Clip 35 : Auto line number selected for cell window. The alternative means of calling a sequence by the
beginning and end line numbers, has the disadvantage
Cell window, auto line number NOT selected that the number reference may change with subsequent
edits.
Whether the cursor line is numbered or not, a blank un-
numbered line is inserted at the cursor line, displacing Re-selection from the menu, restores the consecutive
the code of the cursor line and all subsequent lines, but line numbers feature.
without re-numbering them. The cursor is not moved.
Clearing the Window of Code, ( Ctrl+C )

Any edit window for a declared device or Walli


subroutine, including the Main workcell window, may be
cleared of code, providing it has the window focus, using
the Clear selection from the edit menu, or by using the
short cut-keys, Ctrl+C.

The windows are returned to their initial state, with a


blank first line for a cell window and for a robot window, a
line containing either "seed" values for each axis or
values taken from the cursor line that was current before
the clear command.
Clip 36 : Auto line number not selected for cell window.
To avoid the accidental clearing of program before it has
Note : If a name is used to label a block of code, in
been saved to file, an "are you sure" dialogue is invoked.
preference to a number, when insertions are made, the
consequent re-numbering process observes the current
equivalent number for the name. Adding a Walli Subroutine

A parallel subroutine to run concurrently with the Main


Deleting a Line of Code, ( Ctrl+D )
workcell program may be created by making the
selection from the edit menu, when the Main window has
The procedure is the same for all three types of edit
the screen focus
windows.
The effect will be to display the naming dialogue box for
Using the cursor keys, select the line of code to be
entering the chosen name for the subroutine.
deleted and either, select Delete from the edit menu, or
use the short-cut keys, Ctrl+D.

The cursor line is deleted and the cursor remains in


position.

Subsequent lines of code are re-numbered to account


for the deletion, irrespective of whether the line numbers
are displayed or not, as a consequence of turning off
Auto Line Numbers for some part or all of the program
code.

Auto Line Numbers, ( Ctrl+A )

Consecutive line numbers are assigned by default to


lines of code as they are entered in both edit windows
and the number sequence is maintained through the edit Clip 37 : Window menu after adding a Walli subroutine.
processes of deletion, naming and grouping.
Once the name is entered, a blank copy of the workcell
Alternatively, this programming feature may be turned off window bearing the name as a title will be displayed and
by selection from the edit menu, or by using the short-cut in possession of the window focus, as in Clip 37 which
keys, Ctrl+A. The tick will disappear from the menu and also shows the expanded Window menu at this point.
all subsequent line entries will have a blank line number Again as in Clip 30 to 32, the edit windows for program
DEMO_M1.wal are being used to illustrate the editing

WALLI for WINDOWS. Revision A USE of WALLI page 19


procedure on an existing program file, not the content of sequence, by selecting one of the following robotic
the program, and the title shown is no longer strictly topics. Otherwise it is possibly more instructive to
relevant. understand the building and programming of the
workcell, first.
This new window displace Main at the top of the window
stack. There is no limit on the number of such routines A significant change in programming that has been
that may be created. introduced in Walli3 for the robots and the means by
which their action may be included within the cell control
Deleting a Walli Subroutine program, is the facility to group lines of the robot
program into blocks, which may be referred to as
Any of the subroutines that have been created may be subroutines of robot movement from the cell program.
deleted or re-named by making the selection from the This is done simply by allowing the Line reference to be
edit menu, providing the subroutine has the screen edited in the same way that the other column entries
focus, as in Clip 32. Again a dialogue box is presented, may be edited.
warning against accidental deletions.
Leaving the line reference blank associates it with the
Editing a Program Field next line above which is labelled or numbered. Auto-line
numbering may be inhibited to minimise the editing that
Any of the program fields in the three types of edit this requires, as lines are added using the Insert
window may be changed by over-typing, providing the command. If the lines are numbered, when blanks are
field has the cursor. This will have the effect of clearing superimposed by over-typing with a space character, the
the field of its contents with the first key stroke, leaving subsequent numbers left in the program are adjusted to
only the character that was typed. suit. This automatic re-numbering is one reason to name
the block, once formed, since the name will be retained if
For both the robot and CNC edit windows, the edit not the number, in any subsequent changes.
position may be set within the current field statement,
using the mouse pointer, in the style of text editors. This The order in which a program is written or stated in the
allows the characters following in the field to be changed program tabulation is no longer important, therefore,
without altering the leading characters. except within the context of a block headed by a line
reference.
A program line within a cell window is a compiled
statement for the entries made into the general syntax of As a net result, however, if a program is obeyed in the
the command, as entered by using the two letter tabular sequence in which it is listed and displayed, and
command mnemonic. Access to the syntactic level may as it may be if invoked from the Start or Single Step
be regained using the Return key on the field that has commands from the Run menu when the robot edit
the cursor. The first syntactic entry in the command will window has the screen focus, it may result in "wild"
be given the edit cursor, but this may be moved using movements between the end position of one subroutine
the Tab key. block of code and the start position of the next.

As with all edit entries, the Return key terminates the The syntax of the Move Robot command for the cell
change and the cursor moves to the next field, to the program, allows a sequence to be called either from the
next command line in a cell program. to the next axis in a start number to the end number, or as a block by name.
robot program or the next G & M code field in a CNC
program. The particular value of a numerical block reference is
that when writing cell programs which control the placing
of components into a regular physical array, such as on
a palette say, the robot axes positions for each palette
position will differ little one from the next, and the
PROGRAMMING ROBOTIC DEVICES placement code block reference may be incremented
within the cell program in a sequence to complete the
Walli supports a wide variety of robotic devices, three filling of the palette.
different conventional robots, the form which emulates
the movement of the human arm, SCARA or Selectively
MODES OF ROBOT PROGRAMMING
Compliant Articulated Robotic Arms of the type used for
robotic assembly of components, rectilinear robots which
The default mode of programming the various robots is
move in Cartesian co-ordinates suited to placement in
by the keyboard entry of data relating directly to the
regular physical arrays, and in addition representative
rotation or displacement of each axis, and all other
CNC (Computer Numerically Controlled) machines, the
modes of programming derive data in these terms.
Cyber Mill and Lathe.
There is an alternative keyboard entry for the
conventional and SCARA robots, using data for the
In particular, the user will only need to be familiar with
Cartesian co-ordinate position required for the end of the
the programming of the devices that have been specified
gripper and for the gripper elevation, to calculate the
for the workcell. To a certain extent therefore, some
required axes rotation data using the equations for the
parts of the following sections may seem repetitious if
Inverse Kinematic. The implications of using these
the complete text is read in sequence, but it is simply an
alternative approaches are covered under separate sub-
attempt to keep relevant information together under a
headings in the section for the Keyboard Programming
heading that will have immediate relevance
mode.
If alternatively, the user is browsing through the Help file,
it may be more appropriate to skip some of the

WALLI for WINDOWS. Revision A USE of WALLI page 20


The mode of programming may be selected from the Teachmode menu. Data is entered for each of the robot
Teachmode menu. axes in the column spaces shown in the edit window.

As with earlier versions of Walli, various physical or When the application is first entered, or when the robot
direct modes for programming the robots are provided has been first declared as a device in the Cell Definition
also, mostly under point-to-point control. window, the program window is blank except for one line
of "seed" values for each axis. If the robot is off-line,
these seed values will typically be mid-range for the
maximum decimal equivalent for each axis.

The maximum value is determined by the resolution of


the ADC's where they are used in the feedback paths
from each axis, a value of 128 for the 8 bit ADC used in
Mentor and Neptune I or 2048 for the 12 bit ADC in
Neptune II. For encoder feedback as used in all other
robots, it will be up to a five digit numbers. If the robot is
on-line, the seed values will be those that have been
read for the current position of the robot.

Further lines of code may be introduced using the Insert


Clip 38 : Menu for modes of robot programming. selection from the Edit menu, and this will have the effect
of copying the contents of the line which has the cursor,
The Simulator mode when it is available, however, allows to a new line below, moving the cursor down ready for
both point-to-point and continuous mode control. In the changes to be made. This strategy is important in
latter, the axes positions are recorded into a section of avoiding inadvertent and potentially hazardous
the program in the edit window at regular time intervals movements of the robot when it is programmed on-line.
and may be edited subsequently if necessary. The time
dependency is recognised at program run time by
special labels provided by the system to bracket the
section.

For two of the conventional robots, Mentor and Gryphon,


the Simulator mode also has two sub-modes of
operation, allowing the controls which represent the wrist
motors to be actual controls and linked directly to the
motors, or to have one controlling wrist elevation, the
other wrist rotation in a combined control.

This alternative reflects the same choice that is


presented by the additional columns in the robot window,
for use in the keyboard programming mode. It has been
found to permit a more natural use of the simulator, with
the operators thumb able to control the wrist elevation
while gripping the simulator as an articulated joystick. Clip 39 : Edit menu in keyboard control program mode.

The various modes of programming the robots are


summarised as :

Point-to-point Control

Keyboard ~ Direct entry of Axis data from


Keyboard or to Cartesian co-
ordinates
Lead By Nose ~ Axis data taken from Robot,
with motor power off
Pendant ~ Axis data taken from Robot,
moved incrementally by push
buttons

Point-to point and Continuous Control

Simulator ~ Axis data taken from


Simulator positions

Keyboard Program Mode

Keyboard control is the default mode of programming the


robot and this is indicated in the title to the programming
window and by the tick against the selection in the

WALLI for WINDOWS. Revision A USE of WALLI page 21


Changes may be made to any of the axes values, in any The program needs supplementing therefore, with the
of the lines of code that have been introduced, by spatial co-ordinate values that may be calculated from
moving the cursor and typing in new values. The data the geometric equations for the given rotations, the
entered is restricted to the maximum value that is direct kinematic solution, and some form of graphical
appropriate to the axis, but once the last digit is entered, representation of the arm position.
the new data is both written to the program and
transmitted through the interface to move the robot axis, In Walli, both of these are provided by the Robot XYZ
if it is on-line. window and the Robot Plan and Elevation graphics
windows, respectively. The axes rotations are entered
Data entry may be truncated to less digits than needed as numerical values which relate to the position feedback
to express the maximum value, by using either the information on each axis, as described earlier.
Return key or the Tab key, or by moving the cursor.
The edit procedure is such that the information is
A vertical scroll bar indicator at the far left of the changed one axis at a time so that it is relatively easy to
programming window reflects in range, scale and predict the consequence of a change and, in particular,
position, the axis value at the cursor position. For each control the movement of the robot when it is being
of the direct axes, Axis 0 to 5, the scroll bar is a simple programmed on-line and to avoid any hazardous
graphic statement of the value between zero and the manoeuvres. The Insert command pays particular
maximum allowable. Where elevation and rotation of the regard to this need, by copying the current line to a new
wrist are applicable, as for Mentor and Gryphon, the line inserted below so that there is no robot movement
range and scale are variable, reflecting the geometry of initially, in moving one line to the next.
the differential gear box, as shown in Clip 40, a program
being prepared for Mentor. The difficulty of programming in axes rotations will be
apparent when attempting to pick or place objects with
precision; the object is positioned within a spatial co-
ordinate system which is different to that in which the
robot moves, cartesian for the workcell and spherical or
cylindrical for the robot.

This is usually done by bringing the gripper close to the


object with an initial move, and then arriving at the final
position by off-line iterative adjustments of as many of
the axes as necessary, using the Robot XYZ display
position information as the guide. Alternatively, the lead-
by-nose or simulator modes of programming may be
used, but these will be found to lack the degree of
precision required.

Clip 40 : Scroll bar data entry for the wrist elevation. Most of the demonstration programs that are concerned
with placement, have been written using the iterative
As with all Windows scroll bars, the data value at the keyboard technique to achieve the required precision.
cursor position may be changed using the bar slider or
arrow controls. Axis data is continuously transmitted This is particularly the case for those programs which
once the scroll bar is selected and while the slider is use the idea of printing a grid pattern, such as
being moved using the mouse pointer. Normal keyboard GRY_GRID.wal for the Gryphon robot, and those which
control is restored by pressing any key. simulate the conditions for placing an object horizontally,
such as a workpiece into the chuck of the lathe. In the
Programming in Axes Rotations latter grouping, RAD_HOZ.gry uses a radial extension of
the arm, and TAN_HOZ.gry uses a rotation about the
For a robot arm built from a number of simple links and waist axis, positioned in the plane of the lathe X axis, as
revolute joints with parallel axes, the simplest way to an approximation to a short linear path needed to insert
describe the resultant planar geometry is in terms of the into the chuck jaws. The tangential move has been
length of each link between axes and the rotation about incorporated into the Gryphon and Cyber Lathe
these axes. Since the length of a simple link is fixed by demonstration project, DEMO_W4.wal.
design, the only variables to describe the geometry are
the axes rotations, and as a consequence these are the The last example also illustrates a practical constraint on
natural parameters in which to program the movement of the layout of a workcell or the relative positions of the
the arm, and they may be directly translated into devices, which can be imposed by the need to work
demands to the control system. between the normal Cartesian co-ordinates of the cell
and the spherical co-ordinates of the robot.
The problem with such a description and programming
on this basis, is that the position of the effective part of
the arm, the end point of the gripper device or end Cartesian Mode of Programming
effector, is not easily deduced from the program
parameters, a consequence which is not mitigated even The Cartesian mode provides an alternative means of
if the parameters are given in absolute terms, degrees of keyboard data entry into the program edit window and is
rotation or radian measure about each axis rather than available for both the Conventional and the SCARA form
numerical values within a range. of robot. In this mode, the data for each axis is
calculated from the XYZ spatial co-ordinates for the end

WALLI for WINDOWS. Revision A USE of WALLI page 22


point of the gripper and a defined planar elevation of the When the arm is extended towards the vertical and
wrist axis. beyond, there may be four possible solutions, the
second pair involving a 180° rotation of the waist axis if
When Cartesian is selected from the Teachmode menu, the point may be reached with the arm in the over-the-
a subsidiary edit window is displayed in the screen area shoulder attitude.
normally occupied by the workcell widow, headed
"Cartesian" and having columns for the co-ordinates, the The choice of solution may be made from the menu and
gripper elevation and rotation, and for the gripper open this will determine the set of axis data that is inserted
or closed state. This in effect repeats the information into the principal edit window. Which choice is most
displayed in the Robot XYZ window below the graphics, suitable will be more immediately apparent in the
but with a first column for the line number, which will be graphical representation of the robot elevation for a
that of the current line in the principal robot edit window. conventional robot, or of the robot plan for Serpent, and
the Options menu has the Snap to Position selection to
At the same time, the menu bar display is reduced to allow a rapid assessment to be made. In general,
one item, Solution, which refers to the message successive robot moves to position should result in a
displayed at the bottom of the subsidiary edit window, smooth manoeuvre and trajectory.
indicating the number of geometric solutions that are
possible, as sets of robot axis rotations, to give the Wrist rotation does not feature in the equations for the
desired spatial position and elevation. inverse kinematic, but because rotation and elevation on
both Mentor and Gryphon are effected by differential and
combined rotation of axes 3 and 4, respectively, when a
rotation other than zero is specified, the net rotation of
axis 3 or axis 4 may be beyond its limit, to provide the
required elevation. This error condition is flagged, as are
any attempts to move beyond the reach capabilities of
the robot with the specified wrist elevation.

Programming in Cartesian Co-ordinates

The Cartesian mode of program entry has been provided


as a means of overcoming the difficulties encountered in
programming the conventional and SCARA form of robot
in terms of axis rotations, and the consequent need to
work between the normal Cartesian spatial co-ordinates
of a workcell and the spherical or cylindrical co-ordinates
of the robot.
Clip 41 : Cartesian mode edit window.
The technique is not without problems and potential
The user is referred to the Student Notes on Robotics
hazards, however, principally because the mode of
section of the Manual for a mathematical discussion of
control is point-to-point, as it is for all but the Teledictor
the Inverse Kinematic and a statement of the equations
mode of simulator control.
that may be used to give a heuristic solution for a
conventional robot.
The point-to-point mode means that a move is
accomplished by passing to the control system the
In essence, the equations of a planar arm may be solved
offsets values for each axis, between the current position
directly if the elevation of the wrist is given. It is normally
and the new end position. There is no co-ordination in
necessary to approach an object with the gripper in a
the rate of axis movement and as a result the movement
particular orientation, horizontal, vertical or at an angle
of the arm as a whole and the path described by the end
that may be easily quantified, even if it is somewhat
of the gripper, is unpredictable and anything but a
arbitrary.
straight line between points, except in the limit over short
distances.
In this respect, the geometry of a SCARA robot, such as
Serpent, is a simplification of the planar geometry of a
In the Cartesian mode of programming, all of the axes
conventional robot, in a horizontal rather than vertical
values can be expected to change between one entry
plane. The simplification in the equations arises because
and the next, whereas in the default mode of keyboard
the Serpent gripper has no length in the horizontal plane,
entry to axes rotations, the change is to one axis at a
only a rotation and an out of plane extension in the Z
time. The Cartesian mode of programming is best
direction.
undertaken off-line, although on-line Cartesian
programming is permitted, it is hazardous.
The solution identifies the ‘lift’ of the elbow joint away
from the line joining the wrist and shoulder, in all four
quadrants of the arm plane.

Without any restrictions on the rotation of the elbow axis,


there are usually two possible solutions for normal
placement positions, one with the elbow lifted, the other
with it lowered from the chord line.

WALLI for WINDOWS. Revision A USE of WALLI page 23


Programming in Cartesian co-ordinates is of use
therefore, in the following context : Another natural way of producing a program or section of
program by this technique, would be to prepare a
programming space, using repeated Insert commands,
1. Movement Within the Workcell Space. and then moving the cursor down the program page, a
line at a time, positioning the robot for each line. As a
It is possible to plan the movements of a robot to fit consequence, the keyboard is disabled, except to move
the dimensions of a workcell that has been designed, the cursor down or sideways, and to allow the insertion
possibly using CAD techniques, so that the end-point of further lines, as in Clip 42.
positions for the robot between moves can be
specified in the XYZ co-ordinate values and the An upwards movement of the cursor, assumes that the
required gripper attitudes defined. This is not a sequence has been broken and for the need to make
natural way of working, however, and to be totally minor adjustments through the keyboard. The Keyboard
useful it requires a supervisory level for the workcell mode is restored automatically and this is the only
control which can specify the trajectory of the gripper means of editing the gripper movement.
between end points, to avoid the space occupied by
other items in the cell, and devise a corresponding
amendment to the current point-to point control for
the robot. The usual approach when presented with
a number of items of equipment to co-ordinate into a
workcell, is more ad hoc, but there is no reason why
the user should not adopt the Cartesian mode to
program moves over relatively large distances,
providing there is the confidence and care to avoid
hazards on the way.

2. Final Positioning of a Workpiece.

In placing a workpiece in the vice on the Mill or into


the Lathe chuck, there is need to make the final Clip 42: On-line Nose Lead Control programming Mentor
move with precision to a point which has the
Cartesian reference co-ordinates of the CNC device, Simulator Program Mode
but which can be measured locally in relative terms
within the robots reference frame. The Cartesian There are alternative control modes for simulator entered
mode may be found to be particularly useful for such program.
a movement, which is over a comparatively short
distance. Control Mode :
Point-to-point ~ Axis movement between End
The capability to specify the move in Cartesian co- positions
ordinates also relieves the constraint on the physical Continuous ~ Axis movement recorded at time
positioning of the robot with respect to the Lathe, intervals
say, since the placement into the chuck need not be
along a tangential line normal to the Lathe X axis, as Wrist Control (Mentor and Gryphon) :
in the demonstration programs. There is the need to Actual ~ Wrist controls direct to axes motors
co-ordinate the wrist movement for such an arbitrary Combined ~ Wrist elevation and rotation control
line, however, and this is most easily done by
keeping the wrist axis vertical and making a Simulator Point-to-Point Control
compensating rotation of the wrist, to counter any
waist axis rotation involved in the move. The change The simulator provides an alternative physical mode of
can be edited as a correction to the parameter values robot programming, similar to the lead-by-nose
entered for the Cartesian mode, by simply changing technique but, in place of direct movement of the robot,
the wrist rotation which, although it is a required a model of the robot is used which allows remote
parameter at entry, it is not part of the Inverse manipulation to be co-ordinated by hand movement.
Kinematic computation, except at a secondary stage, The simulator model fits closely in the hand, much like a
to give the values to position axes 3 and 4. joy-stick, but one that it is articulated at the equivalent
robot axes.
Lead-By-Nose Program Mode
By selecting the Simulator mode, data values for all the
By selecting the Lead-by-Nose mode, data values for all axes values on a line of code may be entered by using
the axes values on a line of code may be entered by the simulator to move the robot and reading the axes
moving the robot to position manually, with the motor position data that this produces into the program, at
power switched off and the wrist motors disengaged, in each intended robot end position.
Mentor’s case. The axes position feedback data is
displayed on the current line in the edit window and will Again, the natural way of producing a program by this
be seen to change as the robot is moved. The data is technique, would be to prepare a programming space,
committed to program by using the Insert edit command, using repeated Insert commands, and then moving the
Ctrl +I, which also moves the cursor to the next line cursor down the program page, a line at a time,
ready for the next end point to be positioned. positioning the robot via the simulator, for each line. As

WALLI for WINDOWS. Revision A USE of WALLI page 24


a consequence, the keyboard is disabled as for the lead-
by-nose mode, except to move the cursor down or
sideways or to allow the insertion of further lines of
program code.

An upwards movement of the cursor, assumes that the


sequence has been broken and for the need to make
minor adjustments through the keyboard. The Keyboard
mode is restored automatically.

Simulator Continuous Control ~ Teledictor

When this mode of program entry is selected, all


movements of the simulator result in data for the axes Clip 44 : Short Teledictor recorded sequence.
positions being recorded directly to program, every 500
milliseconds. The sequence is started and halted using In the example above, the auto-line number option has
the dialogue box that is presented when the mode is been turned off for the very brief Teledictor sequence.
selected.
Any number of similar recorded sequences may be
On-line the data is taken from the robot's position included in the robot program, with the number of the
feedback. Off-line the data is taken from the position of reference label - Tele_1 - incremented for each new
the simulator axes, direct. Either way, when the data is sequence. In this way, the recorded sequence may be
replayed as program, the smooth movement in the referred to by the workcell program, as a robot
trajectory that was intended for the robot is reproduced, subroutine using either the reference label or by name, if
in contrast to the step responses between end points it is subsequently named.
produced by all the other programming modes.
Actual Wrist Control for Mentor and Gryphon
The program data may be edited once it is displayed in
the edit window at the end of the recording sequence, in When this option is selected, data from the voltage
the normal way, but any attempt at editing may break the signal from the two potentiometers at the wrist of the
smooth sequence by a step response. simulator, which represent the motors driving the
differential gear train at the robot's wrist, are used to
The mode is invoked by positioning the cursor at any drive the motors directly, thus effecting an actual
appropriate point within the robot program, which may be representation of the robot by the simulator.
the beginning if no other modes are to be used, inserting
a line and selecting Teledictor from the Teach Mode Combined Wrist Control for Mentor and Gryphon
menu. This produces a dialogue box from which the
record sequence may be initiated, and then terminated. This option has been introduced to assist more natural
control for the robot's wrist axes while under simulator
control, either in the point-to-point or in the continuous
Teledictor mode of programming.

It reflects the choice available in the keyboard mode of


programming, for data entry into columns headed
elevation and rotation, the combined effects of wrist
motor action, rather than direct entry into the columns for
axes 3 and 4.

In the combined mode of simulator control, the knob for


the right hand potentiometer of the pair at the wrist, may
be rotated by the right thumb, with the simulator links
clasped in the right hand as an articulated joy-stick. This
produces wrist elevation in a natural way, leaving the left
Clip 43 : Teledictor simulator control dialogue. hand free to make adjustments for wrist rotation, using
the left potentiometer of the pair, and to control gripper
When the recording is terminated, the inserted line and action, using the potentiometer mounted on the base.
any program lines that follow are displaced by a block of
data for all axes values, taken from the record sequence, The advantage of combined control is most noticeable in
and the lines are renumbered to account for the size of the continuous Teledictor mode, when the right hand
the block. does not need to release it's grip on the simulator arm, to
make the more difficult individual adjustments of the
wrist potentiometers, as is necessary in the actual wrist
control mode.

Wrist Control for Neptune

Neptune II is the only conventional robot in the range


which has three axes at the wrist, none of which are co-
incident so that differential action cannot be considered

WALLI for WINDOWS. Revision A USE of WALLI page 25


as a means of giving effective wrist elevation and
rotation. The same is true for the two axes at the wrist The program may be created either on-line or off, and by
of Neptune I. In both versions there are linkage lengths a variety of methods each of which has it's particular
between the axes in the wrist geometry and as a virtues, but the principal and default method is through
consequence the possibility for combined wrist control the use of the keyboard. Both the on/off-line state and
does not exist. In simulator continuous control or the programming mode are appended to the title of the
Teledictor mode therefore, the potentiometers at the editing window.
wrist of the simulator provide data to drive the wrist
hydraulic actuators directly. The applications simulation capabilities allow programs
to be written and run without a robot being connected or
Pendant Control having an interface to support one, in which case Not-
Connected is the state appended to the title and only the
This is an alternative physical mode of robot keyboard mode of programming is relevant.
programming in some ways equivalent to Simulator
control. It is provided for robots such as Gryphon which
have digital control systems with position feedback
through encoders. Programming Mentor
Only one axis may be moved at a time, however, using The title for the edit window is Mentor [n] in this case,
push buttons on the Teach Pendant. The buttons are in where n is a number given in sequence to the Mentor
pairs for the opposite directions of motion on each axis robots that are declared for the cell. It will be simply
and each pair is labelled appropriately and has arrows Mentor if only one Mentor exists for the cell.
indicating the required direction of motion assigned to
the individual buttons. The on-line state is true if the software detects that the
robot is connected correctly to the host computer
These effectively send commands directly to the motor through either the parallel or serial form of interface. The
drives, moving the axis at a rate pre-set by the use of connection is checked continuously but the state may be
the speed button, for so long as an individual button is switched, using the Run menu selection.
held down. If the speed button is simultaneously held
down, the axis movement is slowed down, allowing fine Mentor is a conventional robot, emulating the movement
adjustment of the end position. of the human arm and hand, and having axes for rotation
about the effective waist and axes for rotation about the
The pendant cannot be used successfully to replicate the shoulder, elbow and wrist in the forward plane. A
analogue joy-stick action for continuous control that is program consists of a tabular statement of numerical
provided by the simulator and both control devices may entries for the movement of each axis of the robot,
be specified. headed in columns by Axis 0 to Axis 4 and the Gripper
closure, Axis 5. Since the wrist has two effective axes,
The Gryphon robot may be moved using the pendant in for rotation and elevation, there are two further columns
direct manual operation, however, without the host with these headings and they may be used as
computer supporting the Walli software being connected. alternatives to co-ordinate the entries in Axis 3 and Axis
It is still necessary to enter the initialising sequence to 4, the motor axes which drive the differential gear train at
establish the zero count positions for each axis encoder the wrist.
and this may be invoked by pressing all four corner push
buttons on the pendant simultaneously, once the robot is When the Walli application is first entered, a New
manoeuvred to a safe position using the individual axes program is requested, or when the Mentor is first
buttons. Until the axes are initialised, the gripper will not declared as a Device in the Cell Definition Window, the
work. window is empty of program except for an initial line of
code containing "seed" values for each axis. If the robot
In the pendant programming mode, the movement of is off-line or is not connected, the seeds values are at
each axis is reflected by the axis value on the current the mid-range for each axis, a value of 128 determined
program line being incremented or decremented, as by the 8-bit ADC used in the position feedback paths on
appropriate, and in this way a program may be built or Mentor. If the robot is on-line, they will be the current
amended, moving progressively line to line. The feedback data values from each axis and the graphics
pendant is particularly useful when making fine windows will show movement to adopt these values for
adjustments to position the gripper, in that it provides a the robots initial position.
convenient hand held alternative to the keyboard plus,
minus and cursor keys. At the bottom of the tabulation in the edit window a
separate line labelled Now, indicates the data values
Continuous programming is not possible by this means from the ADC's, for the current cursor line, at all times, if
and Pendant control is only an alternative to point-to- the system is on-line. If the power to the motors is
point Simulator control. turned off, these values represent the position of the
robot axes which may be used in lead-by-nose
programming. With power on, any changes to the axes
PROGRAMMING CONVENTIONAL ROBOTS values will be shown as changing values, following the
robot as it moves. If the system is switched off-line, the
A program consists of a series of lines of data entries in values in this bottom row will be those of the current
a tabulation which represent the positions through which cursor line, i.e. the demands to the robot axes through
the robot will move sequentially, either wholly or as part the DAC's.
of the program statement, to effect a particular task.

WALLI for WINDOWS. Revision A USE of WALLI page 26


The program is developed by adding lines of code, using Note : The Simulator mode provides point-to-point
the Insert command, which copies the values for each control and the Teledictor mode provides continuous
axis on the current cursor line to a line inserted below control, both using the Simulator device.
and then moves the cursor down to the new line, ready
for changes. This strategy for the command is important The technique of programming is always best illustrated
in avoiding any unwanted and hazardous movements of by example and for this purpose a number of programs
the robot, particularly when programming on-line. for Mentor have been included in the directory of
demonstration files on the distribution disc, DEMODIR
The on-line state for the Keyboard Control mode of which will have been transferred to a WALLI3 sub-
program entry is the default condition, in which data directory in the software installation process.
entered or edited in any of the rows and columns from
the keyboard results in movement of the robot axis The Mentor programs are distinguished by a file
heading the column, and the graphics will follow the extension [ .men ], which is the system imposed
movement as it occurs. The cursor keys are used in the extension for programs saved from the Mentor edit
normal way to move between row and column positions. window. The project programs, i.e. those that define a
workcell and which all have the file extension [ .wal ], that
The values to be entered are notional three digit have been written specifically as examples for Mentor
numbers, in the range 0 to 255, but they may be are identified by the initial letter incorporated into the
truncated by using the return key, tab key or one of the DEMO name with a number, as in DEMO_M1.wal.
cursor keys. The numbers represent the range of
movement on each axis between end stops but the
scaling between numbers and degrees of rotation are
not necessarily the same for each axis. The application
will correct attempts to enter values out of range, as
indicated for the axis that currently has the cursor, by
numbers at the top and bottom of the vertical scroll bar
at the right of the program tabulation. The slider and
arrows on this vertical scroll bar may also be used to
change the axis value at the current cursor position,
using the mouse pointer as an alternative to the
keyboard. Keyboard entry is restored by selecting any of
the column - row positions with the mouse.

The following editing commands and modes of


programming may be selected from the Windows menu
bar, using the Edit and Teachmode menus. The short
cut keys for the edit commands are indicated against
each item in the menu. The list repeats those that have Clip 45 : Naming a block of robot code as a sub-routine.
been given and discussed in detail in previous sections,
under appropriate headings, but it is specific to what The illustration is taken from the Mentor program,
obtains to the Mentor robot : DEMO_M1.wal, and is at the point of naming the third
block of the Robot program as “Accepted”, a line label
reference in the last line of the Main workcell program.
Editing Commands
The program has been written with the robot in the Not-
Insert ~ Inserting code into the window Connected state and with Auto-line numbers permitted
Delete ~ Deleting a line of code initially. This accounts for the number 3 that is high-
Clear ~ Clearing the window of code lighted with the intention of editing in the robot program,
Auto Line Number ~ Assign consecutive line and the number 1 as the first line label in the Main
numbers (default) workcell program. At this point the Auto-line numbering
option has been turned off, to continue writing the cell
Modes of Robot Programming program, which does however use the numeric label in
the GOTO statement. The line numbers for the robot
Keyboard ~ Direct entry of Axis data program have then been blanked out, except for the start
from Keyboard line of each robot manoeuvre, all three of which start
Lead By Nose ~ Axis data taken from Robot, from the same robot position, with the gripper poised
power off high above the surface of the conveyor.
Simulator(Actual) ~ Axis data taken from
Simulator positions The numeric labels for these manoeuvres have then
Simulator (Combined) ~ Ditto been changed to names which are meaningful, to pickup
Teledictor (Actual) ~ Ditto a part from the conveyor after it has been measured in
Teledictor (Combined) ~ Ditto the width gauge, and the either dropping it into a bin for
Cartesian ~ XYZ Co-ordinate data the accepted parts or a bin for rejected parts, according
entered from Keyboard to to size. Number 3 is the last of the numeric labels to be
extract the Inverse retained and it will become synonymous with Accepted
Kinematic solution for the within the software. The fact that the three robot
required axes data manoeuvres all start from the same position, allows the
complete program to be obeyed as a sequence when the
robot edit window has the screen focus, without wild

WALLI for WINDOWS. Revision A USE of WALLI page 27


excursions of the arm from the end of one block to the
beginning of the next.

Demonstration programs, Xxxx.men ~ DEMO_M[n].wal


are on file and more detailed descriptions are given
under the heading Demonstration Programs, at the end
of the Use of Walli section of the Walli for Windows
Manual.

WALLI for WINDOWS. Revision A USE of WALLI page 28

You might also like