Principles and Philosophy
The diagram above illustrates the basic steps in developing an AAA factory, beginning with the concurrent design of the product and the assembly system. Modules for the assembly system are accessible via Internet.This leads to the creation of a virtual product and a virtual factory to assemble the product. When the designs are acceptable, AAA modules are procured and configured to produce a real factory system. System calibration and final programming are done prior to assembling the real product in the real factory. The system is formulated from the ground up to be responsive to new market opportunities.
Modular high-precision assembly systems
The Architecture for Agile Assembly (AAA) relies, at its core, on a distributed community of capable agents. In this setting, an agent is much more than a mere computational process. It encompasses a mechanical device with integrated computational, communication, and algorithmic support for its operation. To fit within the AAA framework, each agent presents a standardized mechanical, communication, and algorithmic interface through which it can interact with both its peers and its environment. By standardizing these interfaces and producing devices that recognize their need to cooperate with their peers from the outset, AAA enables the rapid design, deployment, and reconfiguration of automated assembly systems.
AAA provides the framework for this type of modular system, and minifactory serves as an instance of this larger idea, focused on the production of high-precision high-value electro-mechanical devices.
Vertically integrated approach
Our efforts are exploring every aspect of the factory life-cycle, seeking to improve agility of both the automation system and the processes used to design, deploy, operate, and monitor it. Specifically, AAA seeks to unify the wide array of tools used to specify and interact with factory components into a single tool. This single interface tool serves as a simplified CAD environment to facilitate the design process, an integrated programming and simulation tool enabling the programming and simulation of a "virtual" factory, as well as a means for monitoring the operation of a physical factory system.
AAA/minifactory fundamentals
The majority of our effort focuses on enhancing the agility of automation systems throughout their entire life-cycle. AAA in general, and specifically minifactory, seek to simplify and support the processes of designing, deploying, operating, and modifying automated assembly systems. We have adopted three important philosophical approaches to achieve this:
- Distributed factory execution: An operating AAA system does not rely on any single device to guide its operation, but rather carries out its overall goal through the coordinated interaction of the entire collection of factory elements. This depends on a high performance intra-factory communication system, and necessitates that the factory system be programmed as a distributed system.
- Automated agent coordination: To remove some of the burden associated with needing to program a distributed factory system, AAA includes standard protocols and algorithms which enable agents to negotiate over and manage the numerous resources associated with the system. These include resource management facilities which protect agents from conflicts over factory space (keep agents from bumping into one another), as well as facilitating the orderly scheduling of product flow through the factory, and dealing with recoverable and non-recoverable error conditions.
- Flexible product transport: Finally, AAA relies on the use of highly flexible product transportation facilities to enable rapid reconfiguration and system agility. This is most clearly seen in minifactory -- our instance of an AAA-based system -- where couriers (high-precision 2-DOF planar robots) are used for both product transport and local manipulation.
- Automatic factory calibration: Every AAA system must be capable of self-calibration. This enables any real AAA factory to automatically generate a corresponding virtual AAA factory which is in precise registration and synchronization with the real factory.
The factory automation and integration problem
The integration of diverse processing steps and their automation is a daunting problem. Take, for example, a process we will call "micro-welding." It is performed by running electric current through two parts to join them together in a piece of manufacturing equipment we will call a welding "foofner." The foofner is fundamentally simple, as shown on the left. But to weld automatically, motion stages and process control must be added as shown in the middle. Finally, in order for our foofner to take its place in a factory, automated or not, it must be packaged and sold by Acme (our mythical company) as shown on the right. Acme, it seems, builds what is considered to be the world's best welding foofner, so naturally it should be used in our new automated assembly system.Now this is all well and good. As it turns out, to assemble our product, we will also need to glue parts together with adhesive. What could be simpler? Squirt some glue in between the parts, and presto! we're done. Of course, we will want to incorporate the world's best gluing "whatzit," which happens to be made by Ajax (another fine mythical company). In our factory, it will be necessary to integrate the Acme welding foofner with the Ajax gluing whatzit. Unfortunately, each piece of equipment is optimized for itself and not as a part of an automated assembly system. Many of us in the automation business can recall many heroic past efforts to build complex systems out of such components. Is there a better way? A large part of the solution lies in the concept of modularity. Modular assembly systems can be put together like building blocks, with the assurance that (most of the time) the blocks will operate together as expected.
Today's modular factory
In what we are calling the "traditional" modular factory, fairly complex modules, all of the same size, are placed adjacent to each other to form an automated assembly system. Each module comprises one or more process steps, as well as motion equipment needed for precise positioning and to load and unload products. In our cartoon, these modules are denoted by the large buildings separated by rigorous interfaces. The modules communicate with each other over a bus or network connection. The linear array of modules is serviced by a conveyance mechanism, here denoted by the freight train, and product is moved in and out of each module for processing. Like the freight train, this type of assembly system can haul a lot of freight. Unfortunately, however, it also has several drawbacks. First of all, it is not as flexible as one might desire. It is hard to re-route and switch around the conveyance (branching train track). Each module is relatively complex. If an additional process must be added to the system, the entire module must be replaced by a more capable one, else the modularity must be broken by fixing up something inside a module. If additional modules need to be added to a system, upstream or downstream modules (or both) must be moved to make room. This also applies If a module is no longer needed. Finally, we note that for systems of this type, all modules tend to be from the same module vendor (in this case, Acme). Few or no independent vendors will go to the trouble and expense to make their manufacturing process into a module for some other company's system. This means that an individual module might not incorporate the "best of breed" manufacturing process, but must be used anyway because it is part of the established system.
AAA/minifactory — a different approach to modularity
The approach we are pursuing for AAA/minifactory is also highly modular, like the traditional modular factory. Each module, however, is small and relatively simple (denoted here by the small cottages). Each module is capable enough to encapsulate a single simple process, and no more. Because of this, many more of these modules must be put together to form an automated assembly system. As before, all the modules communicate over a network connection. Instead of rigid linear conveyances, a highly flexible collection of independently-moving vehicles (denoted here by bicycles) carry products to and from the processing modules. This arrangement is not as efficient as the linear conveyance, but on the other hand is far more agile. In this system, there are no rigid barriers between modules, and in fact all modules, including the product movement modules, share a common space. If it is necessary to add new functions to an existing system, new modules can be inserted most anywhere (in front, back or side yards of existing cottages) and existing modules can be moved slightly, if needed. Since each module is small, simple, and represents only a single process, it will be easy for many different module vendors to participate. For example, a company making the world's best glue dispenser process can wrap that process inside a simple module, and it will function correctly in the AAA/minifactory system.