Академический Документы
Профессиональный Документы
Культура Документы
Abstract
In the modern robotics systems the users must combine hardware, operating
systems and network. Robot controller is a real-time operating system with multiple
tasks and processors, the hardest real-time requirements are in path control, there
coordinated movements of multible axes and other tasks must be controlled. The
robotics society is going to increase PC’s as part of the control platforms. Same time
modularised, distributed, open control system are more and more used, this increased
the importance of real-time communication. The article covers the recent
development on open robot control architecture based on PC, use of real-time
operating system VxWorks and Windows 95/NT in the same control system and
importance of internal and external communication in robot workcells.
1 Introduction
1.1 What is real-time?
The principal responsibility of a real-time (RT) operating system (RTOS) can be
summarized as that of producing correct results while meeting predefined deadlines
in doing so. Therefore, the computational correctness of the system depends on both
the logical correctness of the results it produces, and then timing correctness, i.e. the
ability to meet deadlines, of its computation.
Hard real-time (HRT) operating systems can be thought as a particular subclass
of RT systems, in which the lack of adherence to the above mentioned deadlines may
result in a catastrophic system failure. A RT application can be modeled as a set of
cooperating tasks. These tasks can be classified according to their timing
requirements, as hard real-time (HRT), and not real-time (NRT). A HRT task is a task
whose timely (and logically correct) execution is labeled as critical for the operation
of the whole system. The deadline associated to a HRT task is pronounced hard
deadline. Consequently, it is assumed that the missing of a hard deadline can result in
a tragic system failure. NRT tasks are those tasks which exhibits no real-time
requirements (e.g. system maintenance tasks that can run occasionally in the
background). [Brega and Honegger 1998]
The taxonomy of application tasks can de further expanded with the terms
periodic, aperiodic and sporadic. Periodic tasks are tasks which enter the execution
state at regular intervals of time, i.e. every T time units. These tasks are usually
associated with hard deadlines. Aperiodic tasks are tasks whose execution time cannot
AS 116.140L Juhani Heilala 2001 2
1.3 Robotics
Robots usually come in one of three varieties: articulated arm, SCARA, and
gantry. Articulated arm robots are most often seen, for instance, in long automotive
assembly spot welding lines. SCARA robots are fast, multi-axis, pick-and-place
machines often used for packing and assembly of small parts. Gantry robots
sometimes cover large areas and are often capable of precise handling of heavy
payloads. These are often found on machining lines handling parts going into and out
AS 116.140L Juhani Heilala 2001 3
of automatic mills and grinders. They are also useful for certain part-picking
operations.
A robotic system is not unlike a motion control system with a controller, servo
module, drive amplifier, and motors with feedback. Kinematics is the difference.
Robotic control usually involves complex movements, coordinating up to 6 or more
axes of motion. Sometimes guiding the tool over the workspace is challenging.
Integration of vision systems with robotic control has been used for many years, but
use is increasing as both technologies become easier to integrate and applications
become more challenging. Some manufacturers cite complexity of kinematic
algorithms as a requirement to maintain robot control of its own processor. Advancing
technologies that are shrinking chip size and packing more components on a smaller
printed circuit board are permitting a complete controller on a PCI board. Look for
several companies to have computer plug-in cards that control robot motion while the
PC handles all the human-machine interface, data collection, and communication
chores. [Mintchell 2000A]
Most people agree that open systems relate to PC technology. Reasons most often
cited include taking advantage of ever-increasing power of PC microprocessors and
software. Add in economies of scale of the PC market - sales much larger than the
industrial market - and these larger markets usually mean lower prices for chips and
networking equipment. Another reason lies with enterprise information needs.
Managers are demanding accurate manufacturing information as quickly as possible.
Of course, the best information comes directly from machine controllers. Since plants
generally are now wired with a PC client-server network over Ethernet, machine
control connectivity to that network becomes mandatory. [Mintchell 2000A]
Using a common foundation like Windows leads to another benefit -
communications. Standards like OPC and tools like COM, DCOM, and ActiveX
objects mean robots can now be more easily integrated into the larger factory process.
[Mintchell 2000A]
The different types of system architecture used in modern controllers for industrial
robots may be assigned to the following categories [Schneider 1999]:
- Company-specific hardware and operating system software, PC could be used as a
user interface to the system
- PC hardware and company-specific operating system software
- PC hardware and Windows 95 operating system (or DOS) with the VxWorks real-
time expansion as a solution with two motherboards
- PC hardware and Windows 95 operating system with the VxWorks real-time ex-
pansion as a single-processor solution.
an open architecture controller is "a controller with standard hardware and operating
system with open interface specifications." The PC is an example of an existing open
architecture system that is based on the original IBM® personal computer. The PC
hardware architecture is now a standard piece of computing hardware that can be
found in commercial products and industrial machine tools. The Microsoft Windows
® software is a standard operating system used in millions of PC systems. Robot
controller systems built around the PC hardware and the Windows ® operating
system have numerous advantages over closed proprietary robot control systems
[Fiedler and Schilb 2000].
Proprietary (i.e., closed) robot controllers have improved over the years, but still
have many disadvantages relative to an open architecture controller. Most proprietary
systems are often viewed as "islands of automation" because of the "closed" nature of
these machines and their very limited compatibility and connectivity with other
systems. Some controllers use one or more common CPU's (i.e., Intel 8088, Motorola
68000) in each system, but the rest of the hardware and interface specifications are
proprietary. Hardware performance upgrades (i.e., CPU's, memory, etc.) are limited if
even possible. Proprietary system I/O peripherals and interface configurations are also
used, which compound the compatibility and connectivity problems of closed
systems. For example, one controller used a standard floppy drive and diskette.
However, it wrote the data to the disk using a proprietary format (i.e., did not use the
standard MS-DOS format), which prevented the operator from reading the data using
standard software on an office PC. Given these and numerous other limitations of
proprietary robot controllers, the request for open architecture control systems has
been made by end-users such as the "big three" automotive companies as well as
system integrators [Fiedler and Schilb 2000].
The degree of openness in a robot controller may vary from one system to the
next. The robot system in the block diagram shown in Figure 1. illustrates one form of
an "open architecture" system. For this system, the robot arm, power system, and
teach pendent are considered as proprietary components. The controller and
communication interface hardware and specifications are labeled as the open
AS 116.140L Juhani Heilala 2001 5
architecture components. The "Open" label refers to the PC's open hardware
architecture, a standard operating system (e.g. Windows® ), and standard software
libraries. The quotations around the word open signify that there is a degree of
openness (i.e., open relative to other systems, but how open?). In this example, the
external I/O communication interface is also based on open architecture hardware
(i.e., can-bus, ethernet, com ports, and parallel ports). [Fiedler and Schilb 2000]
3.2 VxWorks
VxWorks is a widespread real time operating system, produced by Wind River
Systems. Several versions of VxWorks are available for different processor-
architectures (Motorola 68k, Intel 80x86, Sparc, AMD 29k and others ). VxWorks
normally runs standalone on one processor and controls all resources for itself (RAM,
ROM, I/O, and so on).
3.3.1 LP-VxWin/RTAcc
LP-VxWin/RTAcc requires a cheap, passive additional hardware, the LP-Real
Time Accelerator (RTAcc). Using the RTAcc, a 100% real time ability can be
guaranteed. The main function of the RTAcc is to accept normal interrupts from the
ISA-Bus and to generate a Non Maskable Interrupt (NMI) instead. The NMI
cannot be disabled by MS-Windows, so 100% real time ability can be guaranteed.
VxWorks will be activated by the NMI within a few microseconds depending on the
PC processor speed.
The LP-Realtime Accelerator mainly consists of a simple passive logic chip (44
Pin EPLD). This device supports the functionality of a Programmable Interrupt
Controller (PIC) for the Non Maskable Interrupt (NMI) and a 12 Bit Timer on one
chip. It can receive up to seven ienormallr interrupts, i.e. from other ISA-Bus
hardware over its seven hardware input pins. Some or all of them can be enabled by
software over eight addresses in the I/O address-room of the PC. If an interrupt is
enabled and received by the LP- RTAcc chip, a NMI will be generated. Additionally
the LP-RTAcc chip contains a 12 Bit Timer, which is clocked by about 6.7
microseconds on the evaluation board. With that feature, periodically realtime
interrupts can be programmed with cyclic times between 6,7 microseconds and 27,4
milliseconds. This timer is used by the VxWorks system ticker. The LP-RTAcc chip
is available not only on the evaluation board. It also can be ordered stand alone with a
data sheet. The user can design this chip into a new developed PC plug in board. A
third way to use the LP-RTAcc chip is to employ PC motherboards, where this
technology is already on board.
Few microseconds
3.3.3 LP-VxWin/LITE
LP-VxWin/LITE works only with Windows NT 4.0 and doesn't require any
additional hardware. If the Timer or an ISA Bus interrupt is used from VxWorks the
Interrupt Service Routine from the NT Kernel Mode Driver will call the Interrupt
Service Routine from VxWorks. Under Windows NT 4.0, there was measured
AS 116.140L Juhani Heilala 2001 12
interrupt latency times up to two milliseconds. However, even this time can not be
guaranteed. In this procedure only soft real time ability can be guaranteed.
Robot controllers based upon the standard Personal Computer (PC) open
architecture hardware and the common Microsoft Windows® operating systems are
dramatically changing the robotic industry. The robotic industry is beginning to
experience the benefits and opportunities from the inevitable paradigm shift in the
design, integration, and servicing of robotic systems. The desire for improved Man
Machine Interfaces (MMI), increased flexibility, and lower costs has motivated some
system integration companies to pursue new PC based open architecture robot
controllers. [Fiedler and Schilb 2000]. (see also Figure 1 and Figure 2).
Robot control has been a holdout to the PC revolution in industrial automation
because of the real-time requirements of motion control. In reality, application
development can be delineated from motion control such as the former can take place
on an open architecture platform while kinematics, trajectory planning and servo
control are carried out in a tight real-time framework.
The robot system SR6/SR8 consists of robust robotic mechanics with four freely
programmable axes. At the core of the IQ200 robot controller is an industrial PC
(rho4) with a Pentium MMX processor. The power supply (EVS) has a power supply
pack for the internal voltage supply (24V) integrated with an emergency off circuit
and safety technology: safety class 3 per EN 954. The digital drive booster (AV200)
for the four individual axes exchanges data with the rho4 robot controller via a field
bus (CAN 1). All three modules are developed as 19” plug-in assemblies.
Decentralised input and output modules or other periphery equipment, such as
actuators and sensors, can be controlled via the field bus (CAN 1 or CAN 2). Aside
from the operating block, the robot can be operated by a hand-held programming unit
(PHG2000), a touch screen (BF200T), or any PC. A keyboard, mouse, and monitor
can also be directly hooked up to the robot controller (rho4).
The rho4 runs concurrently Windows 95 or Windows NT in realtime. The
familiar operating system makes the control easy to use and provides users with more
openness to implement their own technology functions. However, instead of
extensive modifications of Windows or costly plug-in cards with separate processors
to deliver realtime capabilities, Bosch developed a more cost-effective solution. The
AS 116.140L Juhani Heilala 2001 14
PCI_RHO extension card, passive PCI card with realtime logic and the VxWorks
realtime operating system ensure that the control functionality is delivered
independent from other Windows activities. The real beauty about this solution is that
this combination safely continues to work even if Windows crashes. All PLC tasks
are handled by the integrated software PLC PCL under Windows. This means that
users do not require any additional hardware.
The PCI_RHO card is already included in the rho4 standard configuration and
includes, among other features, CAN and SERCOS Interface as digital interfaces to
the drives. Other standard features include an incremental measuring system, safety
functions and a port for connection of the PHG2000 hand programming unit.
Another key feature of the rho4 is the use of the TCP/IP (Transmission Control
Protocol/Internet Protocol) standard network. This permits both internal
communications between the Bosch software modules and external communications
AS 116.140L Juhani Heilala 2001 15
with standard and customer applications. Via TCP/IP, remote diagnostics capabilities
can be implemented for the first time so that on-site service calls can be minimized.
The integrated CAN field bus permits connection to remote I/O modules. The far
reaching communication capabilities of the rho4 even include the possibility to
initiate axis movements from a Windows application by using the newly created
library functions. The rho4 or an external PC can be used for programming the robot.
Data or programs are exchanged via the serial interfaces or with the Internet protocol
TCP/IP. The hand-held programming device PHG2000 is used primarily to teach the
robot and to diagnose errors. It can also change and edit robot programs.
The robot’s movement programs are written in the PASCAL-like language BAPS
(movement and sequence program language). BAPS robot programs can be created
with a text editor or with the graphical programming tool BAPSplus. When needed,
the integrated SoftSPS (PCL) can be programmed by the offline programming
software WinSPS.
The rho4.1 has a high-performance Pentium microprocessor, a 4 MB user
memory for BAPS programs and a 16 MB memory for Windows applications. The
microprocessor is sectioned into 2 virtual processors P1 and P2. The processor P1 is
the BAPS3 language processor. It interprets the commands and plans the course of
action and paths for the robot motion: up to 11 points in advance. In addition, the P1
processor is responsible for intelligent systems, e.g. vision systems, host computer,
etc, the I/O handling of the freely programmable real time loop PCL, as well as the
exchange of information with the operator via Windows interface.
The task of the P2 processor is to continually calculate each set position of the
axes in path operation, i.e. to perform a transformation of the co-ordinates from space
co-ordinates to axis co-ordinates. It monitors the work space limits or the axis limits
and maintains the digital position control via CAN (Controller Area Network).
The rho4 can handle up to 24 axes simultaneously and permits the simultaneous
control of up to 16 kinematics. The extended functionality, such as TCP/IP
networking, communications via the DDE and DLL standard interfaces and the use of
PC technology as the control platform opens up a wide range of applications, from
traditional robots through special-purpose paint robots and handling systems to
special-purpose machinery.
1. First is not typical for Ethernet but used in many applications: Reducing the
system to a master/Slave system guarantees real time capability without any
doubt. This might be old fashioned but works.
2. The second way is to implement a token, which allows just the one and only
station with the token to access the bus. The protocol ensures that the token will
pass the whole round within a defined time. The configuration of such a system
needs considerably more effort as all stations have to know from each other to
ensure the token to be passed through.
3. The third way is a very Ethernet like way. We know that Ethernet guarantees a
reaction within a defined time as long as the bus load is below 60%. In automation
we can define the bus load as we can predict the communication. This means we
can configure the system so that the bus load is guaranteed to stay below 50%.
This then guarantees reaction within a defined time (not at a defined time!).
In control engineering, five bus systems have gained wide market acceptance
[Bosch]:
- Profibus-DP
- CANopen
- DeviceNet
- AS-Interface
- InterBus-S
5.4.2 CORBA
Common Object Request Broker Architecture (CORBA) gives application
components the ability to transparently interoperate with objects implemented on any
of the more than 50 platforms with CORBA support, including all common Windows,
Unix and Linux variants. CORBA also provides seamless communication between
components implemented in different programming languages, such as C, C++ and
Java.
CORBA Highlights:
- Object Oriented
- Language independent
- Platform independent (more than 50 supported)
- Network location independent
- Enables efficient network management of advanced applications
- Standard mappings for SNMP and CMIP
- Gateways available for COM/DCOM
AS 116.140L Juhani Heilala 2001 20
6 Results
The trend in robot control technology is towards PC technology: the robot control
systems which are now available range from just an extra operator control station for
special tasks right up to a control computer with a PC-typical operating system
(Windows or DOS) and some real-time expansion. This increases openness with
regard to the user interface, communication with the periphery and the integration of
the periphery. PC hardware based open robot control systems are already in the
market as shown in this article. The Windows operating system has been enhanced
with real time kernel, VxWorks. These operating systems are in the same processor
and communicate with shared memory and TCP/IP drivers. Same PC can replace
even PLC:s, with SoftPLC.
Automation is not isolated any more. Using a communication procedure, which is
based on TCP/IP and Ethernet vendors, can provide DDE and OPC server. This
allows any modern Windows application to communicate with the control systems.
8 Reference
[Fiedler and Schilb 1997] Phillip J. Fiedler and Chris J. Schilb. Open Architecture
Robot Controllers And Workcell Integration. http://www.robotics.org/
Technical papers. 1.4.2001.
[Fiedler, and Dehof. 1997] . Phillip J. Fiedler, and Matthias K. Dehof. Workcell
Communications: Connectivity, Man-Machine Interfaces, and Multi-System
Management. http://www.robotics.org/ Technical papers. 1.4.2001
[Munz, 1997] Heinrich Munz, LP- VxWin VxWorks Together with Windows on the
same PC. Real-Time Magazine 97-2. http://www.dedicated-
systems.com/magazine/97q2/1997q2_p047.pdf
[Schneider 1998]. Gerd Schneider. Control technology for industrial robots. KUKA
Roboter GmbH, Augsburg. 12.2.1998
[Bosch Automation 2000]. Turboscara SR6/SR8, CD-ROM Version 3.0. 3 842 524
619 (00.04) de/en. Bosch Automation. Assembly Technology.
(http://www.bosch.de/at )