• A workcell has been constructed using one light industrial robot, and one NC milling machine. Some automated fixtures are also used.
• All of the devices in the workcell are controlled from a single Sun computer. This is an engineering workstation with UNIX. Thus, it is capable of multitasking (running more than one program at once).
• Software drivers, interfaces, and applications have been developed, to aid in teaching and demonstration.
• The following pages will describe the interfacing in the workcell, as an example of the connection between process control computers and a plant floor computer. A project in development will be discussed for networking Plant Floor (and higher) computers.
• Developed/Proprietary software in the workcell
2.1.4: Example of Robot and Vice Software Driver Use
• NC code Example (for the Dyna Milling Machine)
• An Example of the Dyna Mill Software Drivers
/* Initialize Dyna Mill and check for failure */
/* Send NC Program to Dyna Mill */
dyna_load(“/usr/people/cim/nc.code/test1.nc”);
/* Download program from NC Mill */
dyna_download(“/usr/people/cim/nc.code/test”);
/* Send program to mill 1 step at a time */
dyna_step(“/usr/people/cim/nc.code/test2.nc”);
• A User interface for Workcell Control
• Actual Communication with devices, via a report window
UNIX Based system allows easy control of cell in modes which are both parallel and/or concurrent
A blend of high level computers with low level devices allows for a very modular system, with a variety of computing resources.
Synchronization of processes is very simple.
Allows rapid reconfiguration of the workcell.
This workcell will perform all of the basic CAD/CAM/CIM functions.
The hierarchical design of software tools has simplified the development of new applications.
Many Equipment manufacturers have not considered this type of control (they prefer stand alone modes), and thus their machines lack self calibration features, and software is made to be user interactive, and batch, but is not very friendly for software applications.
Requires technical people to operate the equipments.
• An individual computer is not powerful enough to control an entire factory. And, a single program would be too complex. Therefore, there is a need for many computers and programs which interact.
• The example below involves two programs. The first program will control the robot, and the second will cut key tags with the NC machine.
• While the keytags are being cut, the robot program will move pegs around in the cell. This requires that the control software be very complex, or that two programs be used.
• if two programs are used, then some communication is required for sequencing tasks in the work cell.
• Concurrent tasks in the workcell use message passing between programs,
• Strategies for Concurrent processing, involve how the processes are split apart, and how they communicate,
Have a number of processes which communicate directly to one another (point to point). This is synchronous and well suited to real-time control.
Use a buffered message passing system. This allows asynchronous communication between processes running at different speeds, which do not do real-time control.
Remote Procedure Calls allows one program to run other programs remotely. This is suited to well defined problems, but every program must have knowledge of the other computers in the network.
Problem 3.1 What is concurrent (parallel) processing and why is it important for workcell control?