Design of a Primitive Nanofactory
Journal
of Evolution and Technology -
Vol. 13 - October
2003 -
PDF Version
http://jetpress.org/volume13/Nanofactory.htm
Chris Phoenix
Director of Research, Center for Responsible Nanotechnology http://CRNano.org
Abstract:
Molecular manufacturing requires more than mechanochemistry. A
single nanoscale fabricator cannot build macro-scale products. This
paper describes the mechanisms, structures, and processes of a prototypical
macro-scale, programmable nanofactory composed of many small fabricators.
Power requirements, control of mechanochemistry, reliability in the face
of radiation damage, convergent assembly processes and joint mechanisms,
and product design are discussed in detail, establishing that the design
should be capable of duplicating itself. Nanofactory parameters are
derived from plausible fabricator parameters. The pre-design of a
nanofactory and many products appears to be within today's capabilities.
Bootstrapping issues are discussed briefly, indicating that nanofactory
development might occur quite soon after fabricator development.
Given an assembler, a nanofactory appears feasible and worthwhile, and
should be accounted for in assembler policy discussions.
Contents:
1. Introduction
2. Background
2.1. Mechanochemistry
2.2. Mechanochemical fabricator
designs
2.3. Parts assembly, scaling,
and product integration
2.4. Nanofactory overview
3. Components and Innovations
3.1. A Thermodynamically Efficient
Stepping Drive
Figure 1:
Pin Drive
3.2. Joining Product Blocks
3.2.1.
The Expanding Ridge Joint
Figure
2: Expanding Ridge Joint
3.2.2.
Functional joints
4. Nanofactory Architecture
4.1. Mechanochemical functionality
Figure 3:
Workstation Grids
4.2. The reliable basic production
module
Figure 4:
Production Module
4.3. Gathering stages
Figure 5:
Convergent Assembly Fractal Stages
4.4. Casing and final assembly
stage
Figure 6:
Nanofactory Layout
4.5. Issues in bootstrapping
4.6. Improving the design
5. Product design
5.1. Levels of design
5.1.1.
Nanoparts
5.1.2.
Nanomachines
5.1.3.
Nanoblocks
5.1.4.
Patterns and Regions
5.1.5.
Folds
5.1.6.
Networks
5.2. Simulation and testing
5.2.1.
Design and simulation
5.2.2.
Testing and debugging a nanofactory-built product
6. Control of the nanofactory
6.1. Nanocomputer architecture
and requirements
6.2. Placing the nanoblocks
6.3. Specifying the nanoblocks
7. Product Performance
7.1. Strength, stiffness, and
shape
7.2. Appearance
7.3. Complexity
7.4. Design
7.5. Powering the product
7.6. Computation
8. Nanofactory calculations
8.1. File size and data distribution
8.2. Fabricator control, energy,
and cooling
8.3. Physical arrangement and
mass
8.4. Product cycle, duplication,
and bootstrapping time
8.5. Radiation and failure
8.6. Cost and difficulty of
manufacture
9. Conclusion and discussion
Appendix A. Calculations in software
Appendix B. Projections from the Merkle assembler
B.1. Mechanochemical baseline
B.2. Chemistry, electronics,
and mechanics
B.3. Mechanochemical error rate
References
1. Introduction
The utility of a new technology depends on many factors, including the
difficulty of development and the ease and cost of use. Most technologies
require significant additional work to form useful products. Previous
theoretical work in molecular nanotechnology has provided only incomplete
and fragmentary answers to the question of how molecular nanotechnologic
devices can be used in practice. Although it appears that fabrication
systems can be built on a nanometer scale (Drexler, 1992), small devices
will be difficult to use directly in many applications. Several designs
have been proposed in more or less detail (Drexler, 1986, 1992; Bishop,
1996; Merkle, 1997a; Hall, 1999; Freitas and Merkle, in press) for parallel
control of many small fabricators to make a large product. Other
proposals (Hall, 1993) combine many small products to create a large product.
However, each of these proposals has provided insufficient detail to allow
estimation of their practical difficulty and utility.
This paper builds on previous proposals to describe an architecture
for combining large numbers of programmable mechanochemical fabricators
into a manufacturing system, or nanofactory, capable of producing
a wide range of human-scale products. The proposed system is described
in sufficient detail to allow estimation of nanofactory mass, volume, power
requirements, reliability, fabrication time, and product capability and
cost, as simple functions of the properties of the mechanochemical fabricator
component. Bootstrapping a human-scale system from a sub-micron system
is also discussed. Discussion of product design issues and nanofactory
manufacturing capability demonstrates that the nanofactory should be able
to efficiently fabricate duplicates of itself as well as larger versions.
This proposal differs from previous proposals in that, with the exception
of mechanochemical component fabrication, design of the nanofactory should
be within the reach of present-day engineering; physical structures and
functional requirements are described in sufficient detail that remaining
problems should be within the capability of current engineering practice
to solve. In particular, the design considers all transport and manipulation
requirements for raw materials and product components, as well as control,
power, and cooling issues.
This exploration can provide a basis for estimating the practical value
and difficulty of developing a nanofactory. As noted in (Merkle,
1999), even a primitive sub-micron mechanochemical fabricator may produce
valuable products. The question at hand is whether, once such a device
is developed, it is feasible and worthwhile to adapt such devices into
a nanofactory. Since no complete designs, or even complete parameter
sets, exist for a mechanochemical fabricator, this question cannot be answered
fully at this time. However, the results of the present paper can
be applied to a wide range of hypothetical fabricator parameters.
As fabricator designs are proposed in increasing detail, these results
will become increasingly useful in predicting the capabilities of a nanofactory
based on such designs. Issues of product design and manufacture are
examined in order to establish that the nanofactory is capable of fabricating
duplicates and larger versions of itself. The time required to bootstrap
a human-scale factory from a nano-scale fabricator cannot be estimated
with any certainty, since bootstrapping will require time for debugging
and redesign as well as for fabrication of larger versions. However,
the minimum time required for fabrication can be estimated, and the design
developed here is simple enough that debugging and redesign may be fairly
simple and rapid.
The paper is arranged in several sections. Section 2
surveys previous work toward manufacturing systems relying on mechanochemistry
and producing human-scale products. Section 3 describes
two innovations required for efficient operation of the nanofactory architecture.
Section 4 describes the nanofactory architecture, including
a highly reliable
production module incorporating several thousand
mechanochemical fabricators and a scalable convergent assembly and transport
architecture for integrating large numbers of production modules.
Section 5 covers issues of product design to establish
that the nanofactory is designable and buildable by itself. Section
6
discusses computer control of the nanofactory. Section 7
covers product performance. Section 8 provides
calculations relating nanofactory performance and characteristics to fabricator
performance and characteristics. Section 9 summarizes
the paper. Appendix A is a computer program that
implements repetitive calculations for probability, size of components,
and pressure in cooling channels. Appendix B is
a brief discussion of the suitability of a proposed fabricator design (Merkle,
1999) for the nanofactory architecture.
2. Background
In order to create useful products with molecular manufacturing, several
steps are required. Large products cannot be built by a single small
fabricator. Even at a million atoms per second, building a gram of
product would take more than a billion years. Building a large product
requires a system implementing several steps. First, molecules must
be reacted under positional control by fabricators to form parts.
Second, the parts must be combined into nanosystems. Third, the nanosystems
must be combined into products, either by physical attachment or by distributed
control. Many authors have considered one or more of these steps,
but none has described a complete factory system.
2.1. Mechanochemistry
As used in this paper, mechanochemistry refers to the process of inducing
covalent bond formation or breaking under controlled conditions by mechanical
motion. As discussed in (Drexler, 1992, chap. 8 & 9), mechanochemistry
performed in a well-controlled environment appears sufficient to fabricate
small devices from covalently bonded carbon (diamondoid). Merkle
(1997d, 1998) describes additional reactions that could be used to build
diamondoid products--a complete hydrocarbon "metabolism" capable of refreshing
the molecular deposition tools, and Merkle and Freitas (2003) have analyzed
a specific diamond mechanosynthesis tool in detail.. The present
design assumes that some such chemistry is possible in practice, and will
have been characterized to some extent in the process of building a working
fabricator. Diamondoid fabrication chemistry need not be completely
understood--a basic set of a few reliable deposition reactions, with motions
parameterized to account for edges and other discontinuities, should be
sufficient to build bulk diamond.
In order to focus on nanofactory architecture, the present work does
not consider mechanochemical operations in detail. Instead, the design
assumes the existence of a small programmable mechanochemical fabricator.
To simplify architectural considerations, the fabricator is assumed to
be self-contained: it must be capable within a small volume of performing
all mechanical motions necessary to fabricate parts from feedstock and
assemble them into small devices of complexity comparable to itself.
2.2. Mechanochemical fabricator designs
Several proposed devices appear to be capable of performing reliable mechanochemical
operations with sufficient flexibility for self-duplication. These
include the robot arm described by Drexler (1992, sec. 13.4), the double
tripod described by Merkle (1997c), the molecular mill described by Drexler
(1992, sec. 13.3), and the "parts synthesizer" described by Hall (1999).
Additionally, biological or hybrid systems have been proposed (Bradbury,
2003) in which organic synthesis is used to build relatively large chemical
components. Each of these systems is attractive for various reasons.
The robot arm requires several different mechanical components, including
small gears, triply-threaded toroidal worm drives, and several types of
cylindrical sliding interfaces. Each of these components may require
significant atom-level design. In addition, the robot arm requires
a control system involving rotational motion on several drive rods.
Nanometer-scale clutches have not been designed in detail. In order
to provide results relevant to early fabricator and nanofactory development,
this paper does not assume that devices of such complexity can be built.
Hall's parts synthesizer requires separate assembly robots to deliver chemicals,
and the power/control mechanism is not specified.
Systems relying on many biologically-based feedstock molecules require
separate synthesis and assembly areas, which may have quite different environmental
requirements. In addition, they may require nontrivial transport
mechanisms to prevent premature reaction of the feedstock molecules.
Finally, such systems do not appear to permit the fabrication of diamondoid
structures.
The molecular mill is an attractive concept for several reasons.
It does not require explicit control of each mechanochemical operation,
thus greatly increasing efficiency over the other three proposals.
Operations can also be quite fast, since merely moving a belt a short distance
is sufficient to accomplish a mechanochemical operation. However,
each reactive encounter mechanism, or station, in a molecular mill performs
only one mechanochemical operation. Although each station is efficient,
in the sense of processing a mass equal to its own in a short time and
with little energy wasted, a large number of stations would be required
to fabricate all the parts needed to build a nanofactory, let alone the
desired range of products. This number has not been quantified.
Additional design would be required to explain how a number of stations
performing different mechanochemical operations and using different parts
can produce all the required parts for self-replication given that only
one chemical operation is performed at each station. Although this
does not contradict the possibility of a self-replicating set of mills,
it indicates that the set may be large and difficult to design. In
addition, the set may grow unpredictably when required to produce additional
parts for the non-fabricator portions of the nanofactory, and may need
significant modification if the design of a part must be changed.
Accordingly, a mill solution is not used in this paper. However,
it should be noted that a combination of a mill making small blocks and
a double tripod capable of both joining blocks seamlessly (Drexler, 1992,
sec. 9.7.3) and performing detailed mechanochemistry may be fast, flexible,
and relatively easy to design, and would be preferable to the simple robotic
manipulator implicitly assumed for this baseline design.
The current design effort is based loosely on a double-tripod "assembler"
discussed by Merkle (1999). Merkle's assembler is self-contained,
simple to control, and approximately the right size for a basic factory
or product building block. Every effort has been made to avoid depending
on any specific property of Merkle's design. However, the claimed
feasibility of this design serves as inspiration for the present effort
to integrate designs with comparable functionality into a monolithic nanofactory.
2.3. Parts assembly, scaling, and product integration
Several nanotech manufacturing designs have been proposed that could be
used to build large products. For example, Bishop (1996) describes
an "Overtool" composed of multiple "active cells" and "gantry cells" which
can both do mechanochemistry and encompass and manipulate a large product.
This design is incomplete, lacking description of control algorithms and
internal communications. Hall (1999) describes a system of robots
and framework components that can in theory scale to large size and then
make large products. However, feedstock delivery and system control
are not specified, and products it can fabricate are not described.
Drexler (1992, chap. 14) describes a system in a fair amount of detail,
including estimates of volume, mass, and replication time. However,
this description does not include the assembly operations used, robotics
required, or control of those robotics. Additionally, the system
uses molecular mills, which have not been studied in detail, and the physical
layout of the system is specified only in general terms. This work,
though seminal and inspiring, does not permit detailed estimation of the
technological sophistication required to design such a system. Merkle
(1997a) described a variant of that system, including fabrication time
and the suggestion of assembling products from large sub-blocks.
However, he did not calculate the power requirements, describe the internal
control mechanisms, or discuss product design issues or the feasibility
of self-replication in any detail.
Large-scale cooperative designs are not well understood today, and directing
them may be expected to be difficult. Hall (1993) describes a "utility
fog" composed of many small identical robots. Such a system would
be relatively simple to manufacture, requiring no large-scale assembly.
Hall suggests that the fog could use any of several fairly simple algorithms
to simulate solid objects. However, he also does not consider how
to power the product/object, and the control algorithms are not worked
out in detail. Also, his fog is quite weak for its mass, at least
compared to a more strongly fastened diamondoid product.
The purpose of the nanofactory is to build strong, functionally rich,
monolithic, human-scale products that are easy to design and use.
Several innovations described in this paper allow a nanofactory design
to be presented in detail for the first time. The nanofactory itself
is intended to be in the set of possible products. The paper focuses
on early development and on demonstrably feasible designs, so does not
include some obvious but currently speculative techniques for improving
performance. The design is deliberately simple, especially in minimizing
the amount of mechanochemical design needed in addition to the preexisting
fabricator. The major design effort focuses on mechanical and digital
design, physical layout, and fault tolerance.
Mechanical design methodology has achieved great competence in the transformation
of mechanical motion and force. Many devices have been developed
to accomplish this, such as cams and followers, rack and pinion drives,
planetary and differential gears, and pantographs. Drexler (1992,
chap. 10) demonstrated that many of these devices can be translated directly
to nanometer scale. However, many of Drexler's designs use a specialized
arrangement of surface atoms, and sometimes of internal atoms. Such
devices would require individual chemical design. To avoid the unknown
but potentially large effort involved in developing new chemical synthesis
for new mechanical structures, the present design does not generally assume
the use of mechanical features smaller than ~1 nm. Such a design
is referred to as "bulk diamond", meaning that simply specifying a suitable
volumetric design to be filled with diamond lattice is sufficient to specify
a part with the required mechanical function.
Although a wide range of sensing and feedback technologies have been
developed at the macro scale, some of them do not work at the nanometer
scale (e.g. optics and electromagnets; see Drexler, 1992, sec. 2.4), and
others may require excessive volume or complexity. In general, this
design effort avoids sensing in favor of predictability and reliability.
Digital logic is useful for performing repetitive functions, doing precise
calculations, and selecting among alternatives using well-specified criteria.
Software systems that interact with mechanical systems may be hampered
by sensor data that are not well specified. Accordingly, this design
does not make much use of feedback, or require software to deal with "fuzzy"
situations. Almost all aspects of nanofactory operation are deterministic;
this mirrors the (theoretically) deterministic nature of the mechanochemical
technique (Drexler, 1992, sec. 6.3). Because the factory layout is
extremely repetitive and strictly hierarchical, issues in controlling a
large number of fabricators and robots can be reduced to controlling a
single fabricator or robot, plus simple iteration.
As previously noted, this paper builds on work which demonstrates that
a nanofactory is conceptually feasible. The design presented here
is sufficiently detailed that the feasibility of each part of it can be
assessed. However, it is sufficiently general that it can accommodate
a variety of mechanochemical systems. Where design principles are
well understood, details are not supplied. For example, the use of
a gantry crane is specified in order to demonstrate the existence of robotics
capable of doing the job required, and to allow approximate calculation
of the mass of those components. The drive mechanism of the gantry
crane is not specified; however, given a design tolerance of 1 nm and the
presumed feasibility of motors as small as 50 nm in diameter (see
Section 8.2), it is clear that such a mechanism can
be designed in a wide range of sizes; at the present level of design, it
is not necessary to examine work on industrial robotics.
The extreme conservatism that is appropriate for a feasibility demonstration
is less appropriate for a preliminary engineering study. For example,
it is conservative to assume that each individual part will require individual
design at the atomic scale. However, it is reasonable to assume that
in the case of a rod with bumps regularly spaced on it, the rod can be
extended and bumps can be added or removed without requiring detailed redesign.
Thus the use of mechanical digital logic designs (Drexler, 1992, chap.
12) is assumed to require a mechanochemical design effort for only a fixed
and relatively small number of parts. Likewise, the quantitative
sections of this paper choose typical or reasonable values instead of extreme
or pessimistic values.
2.4. Nanofactory overview
The nanofactory system described here incorporates a large number of fabricators
under computer control. In a single product cycle, each fabricator
produces one nanoblock, approximately the same size as the fabricator.
The blocks are then joined together, eight sub-blocks making one block
twice as big. This process is repeated until eight large blocks are
produced, and finally joined in an arrangement that is not necessarily
cubical. The output of multiple product cycles may be combined to
produce large products. The production system is arranged in a three-dimensional
hierarchical branching structure (see Section 4.3)
which allows the sub-block assembly to be done by machinery of appropriate
size. Eight factories of a given size can be combined to form one
larger factory; the 64 blocks produced are joined into eight blocks twice
as big. The design is easily scalable to tabletop size, with a ~1
meter factory producing eight ~5 cm blocks per product cycle. As
discussed in Section 8.4, depending on the capabilities
of the mechanochemical fabricator, the time required for a product cycle
will be conveniently measured in hours. The blocks need not be solid
cubes, and their interior may be quite complex. As discussed in Section
5.1.5,
products can be unfolded after manufacture, greatly increasing the range
of possible product structures and allowing products to be much larger
than the nanofactory that produced them.
The exact size of the nanoblock is unimportant. For this design,
a 200-nm cube is convenient: it is large enough to contain a simple 8086-equivalent
CPU, a microwatt worth of electrostatic motors/generators, a shaft carrying
0.4 watts (Freitas, 1999, sec.
6.4.3.4), or the Merkle assembler (1999), but small enough to be fabricated
quickly and to survive background radiation for a useful period of time.
As discussed in Section 6, the partitioning of the product
into nanoblocks, and the use of relatively large sub-blocks at each step,
allows the use of relatively simple robotics and control algorithms in
the nanofactory. As discussed in Section
5, such
division also simplifies product design without imposing many practical
limits on product complexity. (W. Ware points out that a combination
of tetrahedra and truncated tetrahedra is also space-filling, and that
this may be more compatible with the tetrahedral diamond matrix.)
At the smallest scale, the organization of the factory changes to allow
simpler distribution of feedstock, cooling, power, and control, and simpler
error handling. A production module consists of one computer
and a few thousand fabricators. It produces a few blocks, a few microns
in size, by combining a few thousand nanoblocks. These rectilinear
production modules incorporate a few block assembly stages. They
are combined into the smallest factories, which are also rectilinear--and
so on to any size desired. At each stage, product blocks are delivered
through the center of the smallest face, allowing compact stacking of multiple
modules or stages. The stages are stacked on either side of a gathering/assembly
tube which contains simple robotics to join the incoming product blocks
into larger blocks and deliver them out the end of the tube. Two
stacks of stages, plus the tube in between, constitute the next higher
level stage.
The nanofactory design is highly repetitive: each input (sub-factory,
or substage) to a stage is identical. Thus only one design is required
for each level, regardless of the number of substages at that level.
Since each stage joins eight blocks to form one block with twice the linear
dimension, 19 sizes of stage (4 internal to the production module) are
required to progress from a 200-nm nanoblock to a 10.5-cm product.
(One additional stage, a simplified gathering stage, is used to transition
from production modules to gathering/assembly stages.) Most of these
stages perform identical block-joining operations. The design of
one stage may be used with minor modification for several similar stage
sizes.
A nanofactory built with primitive fabricators and control systems may
use a lot of power. It will be cooled by a fluid with suspended encapsulated
ice particles (Drexler, 1992, sec. 11.5). Thus the temperature of
the nanofactory will be a uniform 0 C (273 K). This is significant
for the energy used by digital logic (Section 8.2)
and for aligning and joining large blocks (Section 3.2.1).
The control architecture of the nanofactory, like the physical arrangement,
is strictly hierarchical. Instructions can be distributed from central
computers directly to the computers that directly control the fabricators.
All error detection and correction takes place either within a single nanocomputer
or within a production module controlled by a single nanocomputer, and
error reporting and compensation are not required beyond the production
module. There is no need for communication between any two computers
at the same level; a simple tree architecture can be used to send all required
data (Section 8.1). Exotic or complex control
algorithms, networking architectures, and operating systems are not required.
The size, mass, energy requirement, and duplication time of this nanofactory
design depend heavily on the properties of the fabricator. Sections
8.2,
8.3,
and 8.4 quantify these relations. With the assumptions
made in those sections, a tabletop nanofactory (1x1x1/2 meters) might weigh
10 kg or less, produce 4 kg of diamondoid (~10.5 cm cube) in 3 hours, and
require as little as fifteen hours to produce a duplicate nanofactory.
3. Components and Innovations
To provide a workable design for a simple first-generation nanofactory
made from primitive fabricators, several innovations are described.
The linear ratchet drive proposed by Drexler (1992, sec. 16.3.2) is extremely
inefficient. Section 3.1 describes a thermodynamically
efficient stepping drive that is applicable to all stepping actuators.
The problem of how to join small components into a large product has been
greatly simplified by designing a mechanical fastening system, described
in Section 3.2.1. It has only two moving parts,
requires no insertion force or actuation, preserves much of the strength
of the unbroken material, is easy to grip and handle, and is tolerant of
alignment errors. With the addition of one actuator, the joint can
be made reversible to aid in product unfolding (Section 5.1.5).
Section
3.2.2 describes a variety of press-fit connections
for conveying power, signal, and fluid between nanoblocks.
The fabricator used in the nanofactory is unspecified; the nanofactory
design is sufficiently general that a wide variety of possible fabricator
designs can be incorporated. The reader may find it helpful to study
Merkle's "assembler" (1999) (Appendix B) as a prototype.
The only requirements are that the fabricator must be capable of producing
a variety of products of size and complexity equal to itself from soluble
feedstock molecules, and that it use digital deterministic control, which
implies that the mechanochemical processes must be highly reliable.
Since only a few reactions will be sufficient to make a wide variety of
molecular shapes, and since error detection and correction will be difficult
if not impossible in early broadcast-architecture assemblers, these requirements
do not greatly reduce the generality of the present design. (Unreliable
operations can be retried multiple times even in a deterministic system;
see for example Drexler, 1992, sec. 13.3.1c).
3.1. A Thermodynamically Efficient Stepping Drive
Figure 1: Pin Drive
A mechanical device driven by a sequence of simple digital commands will
have an internal state that changes with each command, and must be maintained
without error or slippage. Thermal noise injects constant vibration
into the system, requiring strong latching mechanisms. A simple latching
mechanism is a ratchet with a strong spring, as proposed by Drexler and
used by Merkle. A stepping drive can be built from two ratchets,
and early assembler designs that are controlled by simple external signals
may make extensive use of such drives. Such a mechanism is extremely
inefficient, since the energy used to compress the spring (at least 100
kT [Boltzmann's constant times ambient temperature] to overpower room-temperature
thermal noise) is lost each time the ratchet moves to the next tooth.
However, when a fabricator is connected to a digital logic system, the
fabricator no longer needs internal state-maintenance mechanisms, and the
device can be made far more efficient. (Digital logic, including
gates and registers, can be made thermodynamically efficient.)
An efficient drive with functional characteristics similar to the ratchet
drive is the pin drive. (See Figure 1.)
In this design, pins are inserted into equally spaced holes (or notches)
in the moving bar to assure its position at all times. The latching
pin moves in and out but not sideways, and is used to hold the bar still.
The driving pin moves in and out, and also is moved sideways by a bar actuator
over a distance equal to the spacing of the holes. The pins are similar
in structure and function to the rods in Drexler's rod logic design.
To move the bar one step, the bar actuator is moved to one end of its range,
pulling the driving pin into alignment with a hole. The driving pin
is inserted. The latching pin is withdrawn. Then the bar actuator
is moved to the other end of its range, bringing the next hole into alignment
with the latching pin, which is then inserted. Finally, the driving
pin is withdrawn and then moved back to its original position. Smaller
step sizes may be obtained by additional offset pins, or by a second vernier
drive, similar to the vernier ratchet drive described by Drexler (1992,
sec. 16.3.2), with slightly different hole spacing and bar actuator range
of motion from the main drive. Larger step sizes may be obtained
by moving the bar actuator a larger distance in each cycle.
Although the pin drive requires one more actuator than the ratchet drive--two
pins and a bar actuator, instead of two ratchet pawl pullers--it has the
advantage that it can move by measured steps in either direction, whereas
the two-ratchet drive can only move stepwise in one direction and must
retract in a single motion by lifting both ratchets. (If both pins
are lifted simultaneously, the bar can be moved without restriction by
a weak return actuator, allowing the same rapid return motion as the ratchet
drive. Note that without careful design, verifying the complete return
of the bar will require energy on the order of 100 kT.) Similar redesign
can be applied to any stepping drive mechanism. As long as the position
of the moving member is initially known, it can be moved stepwise, held
stiffly against thermal noise at every point, and locked in place in its
new position, all without irreversible state transitions.
While the pins are moving, the bar is stationary and the pins may be
moved reversibly. As the bar actuator is moved, the force encountered
may vary. Nevertheless, stiffly imposed motion will be efficient
in most cases. As long as the force profile of the motion does not
vary more rapidly per distance than the stiffness of the drive mechanism,
and does not vary substantially between forward and backward motion (e.g.
due to an irreversible state transition), it does not matter how much force
is required to move the bar at each point because the energy will be recovered
when the motion is reversed. This energy recovery requirement implies
that the drive mechanism must be able to recover energy from being driven
by the bar; such designs are not difficult, and include Drexler's electrostatic
motor/generator (1992, sec. 11.7). The same argument applies to other
types of actuators driven by other digital control mechanisms: as long
as the force profile is reversible and is less steep than the stiffness
of the drive mechanism, the energy that is put into the system is recoverable.
Note that rapid motion causes the force profile to deviate from reversibility
due to various energy dissipation mechanisms. (The author thanks
Eric Drexler for clarifying discussion of thermodynamic reversibility.)
3.2. Joining Product Blocks
There are several possible ways to join two mechanochemically fabricated
objects. Van der Waals force is an attractive force that develops
between any two nearby objects. For a few unterminated surfaces,
covalent chemical bond formation can in theory be used to make a seamless
joint. A wide variety of mechanical joints can be used. Section
3.2.1
describes a particularly useful strong mechanical joint, and Section 3.2.2
describes several press-fit joints for power, control, and fluid connections
between blocks.
At very small separations, two objects experience an attractive force
called van der Waals force: simply bring them close together, and they
stick. For two flat diamond surfaces, the force is approximately
1 nanonewton per square nanometer, or 10,000 atm of pressure (Freitas,
1999, sec. 9.3.2).
This is reasonably high, although it provides only a fraction of the strength
and stiffness of chemical bonds. The van der Waals force is the simplest
method of joining, it is reversible, and it should provide sufficient strength
to keep even kg-scale products from falling apart under their own weight.
This type of joint is convenient and can be used for weak joining of structures
that must later be separated.
A diamond surface that is not passivated with an outer layer of hydrogen
will be very reactive. Unterminated diamondoid surfaces forced together
should form covalent bonds. According to Drexler, two (110) surfaces
of tetrahedral diamond or two (100) surfaces of hexagonal diamond should
bond to each other on contact, forming a seamless joint (Drexler, 1992,
secs. 8.6, 9.7.3, and 14.2.1). Sinnott et al. (1997) report the results
of simulations that show bond formation, though not seamless joining.
For other diamond surfaces, or in the case of too-rapid joining, a somewhat
weaker joint may form with a lower bond density. Also, it is currently
unknown how much pressure would be required to initiate the process.
Crushing buckyballs to diamond requires 20 GPa, but Drexler states (personal
communication, January 24, 2003) that a covalent joint should "zipper"
itself if started at an edge or corner, that neon atoms should be able
to escape the closing gap and would not interfere with the joining, and
that argon is even better in this regard. If the joint were comparable
in structure to amorphous diamond currently made for MEMS, it would have
a tensile strength of only 8 GPa (Sullivan, 2002); this is significantly
less than diamond's tensile strength of 60 GPa (measured) to over 100 GPa
(calculated, depending on crystal orientation) (Telling et al., 2000).
An additional problem is that radiation damage or stray molecules may cause
local surface reconstruction or contamination that may hold surfaces apart
and prevent a joint from forming. This type of joint is usually not
reversible, though in theory a carefully designed edge might allow predictable
crack formation. Since seamless covalent joints have not yet been
demonstrated, the present nanofactory design does not use this method.
3.2.1. The Expanding Ridge Joint

Figure 2: Expanding Ridge Joint
Each mating block face is covered with small "ridges" that are roughly
triangular in cross section. See Figure 2.
All exposed surfaces are non-reactive (e.g. hydrogen-passivated diamond).
The ridges on each face interlock with the ridges on the opposing face.
As the joint is pressed together, the ridges split and expand sideways.
The exposed surfaces of the ridges are not smooth, but are shaped to grip
the opposing ridge, with scallops deep enough to form overhangs when viewed
perpendicular to the block face. A scallop is chosen instead of a
sawtooth or ratchet profile in order to avoid crack formation at sharp
concave angles. Scallops also make assembly motions smoother, and
allow the un-powered assembly described below. The expansion of the
ridge opens a space in its center, which is then filled by a shim which
sits above the almost-closed gap between the two halves of the ridge.
Once the shim is in place, the volume of the joint cannot easily be compressed,
and the surfaces of the ridges cannot easily slide past each other; pulling
apart the joint would require compressing a solid mass of diamond by several
percent or breaking at least half of the ridges simultaneously. If
the ridges all run in the same direction, the joint may be able to slide
freely. Crossed ridges will produce a joint that is quite stiff against
shear.
The triangular shape of the ridges has several advantages. First,
the area of the base of the triangles (almost the entire area of the block
surface) is structurally solid. (By contrast, a square ridge would
waste at least half of the structural strength of the blocks being joined,
because the block area adjacent to the tops of the ridges would not contribute
to the joint.) Second, at small scales, van der Waals forces make
handling of components difficult because the components stick to any manipulator.
With triangular ridges and narrow ridge tops, the contact area of the surface
is much lower, reducing the van der Waals force. Third, a manipulator
can easily be aligned with the ridges. Small blocks can be picked
up by simple contact with a V-channeled manipulator that presents sufficient
surface area to form a van der Waals bond of the desired strength, and
the manipulator will automatically be pulled into alignment. A more
complex mating pattern could fasten on several ridges at once. If
the ridges are placed at varying angles or spacings, a well designed manipulator/ridge
interface can guarantee that a misaligned manipulator cannot form a firm
grip. Likewise, a well designed ridge/ridge interface can guarantee
that misaligned blocks will not join incorrectly.
There are at least three ways of mounting the ridge so that a small
attractive force between mating ridges will be sufficient to cause the
ridge to spread. The first possibility is to join the ridge to the
nanoblock with dovetail joints, permitting it to slide sideways with very
low friction. A simple dovetail joint costs somewhat more than half
of the possible joint strength; a stairstepped dovetail joint (which is
similar to a completed ridge joint) would recover much of the strength
at the cost of additional volume and complexity. The second possibility
is to use a mounting that is strong in tension but flexible in shear, such
as thin columns of diamond or buckytubes. The third possibility,
for use in linear stacks of many nanoblocks, is to build a solid structure
extending from the base of the ridge all the way through the block to the
ridge on the opposing face. Both ridges would move in tandem, and
be locked in place when the shims were dropped on each side. This
might require a mechanism for retaining all participating shims until all
joints are pressed together.
The simplest version of the expanding ridge joint requires no actuation
to form the joint other than moving the faces together. As the faces
are brought together, just before the final closure, each row of scallops
brushes past the inverse row on the opposing ridge. As the interlocking
ridges from each surface interpenetrate, the bulges of the scallops brush
past each other, close enough to be attracted by van der Waals force.
This pulls the halves of the ridge apart. The attraction between
passing scallops when the faces nearly touch must be stronger than the
intra-ridge attraction, to ensure ridge spreading during the last phase
of joint insertion, as the final rows of scallops pass each other.
This is ensured by the use of small spacers to control the van der Waals
force holding the intra-ridge gap closed. (The spreading will become
increasingly favorable as the faces approach, and the operation will happen
slowly enough to allow equilibration, so thermal noise will not cause the
joint to fail to close.) However, the intra-ridge attraction (between
halves of the same ridge) must be strong enough in the initial position
to prevent premature operation due to thermal noise. The half-ridges
must require a certain energy, say 100 kT, to pull them apart far enough
for the shim to be inserted; the displacement which absorbs this energy
cannot be greater than the depth of the scallop. Note that the required
energy is not dependent on any spatial parameter; it is related only to
temperature. However, the attractive force is approximately proportional
to surface area, so this condition can be satisfied by a sufficiently long
ridge joint. In other words, regardless of the actual inter-scallop
force, an intra-ridge gap can be chosen that will allow the ridge halves
to be separated; and regardless of the gap, a sufficiently long ridge will
be resistant to premature separation.
Due to the complicated geometry of the scallops, exact calculation of
the attractive force between mating ridge halves is beyond the scope of
this paper. An inaccurate calculation is given to permit crude estimation
of minimum ridge length. The formula for attraction between cylinders
(Drexler, 1992, Fig. 3.10f) will be applied, treating each scallop as a
0.5-nm radius cylinder separated by 0.3 nm. (This is inaccurate because
it ignores the attractive contribution from the material behind the cylinders,
and because the formula's derivation assumes that cylinder radius is much
greater than cylinder separation.) The inter-scallop potential energy
is calculated as 61 zJ per linear nanometer of scallop contact, which corresponds
to 2 nm^2 of surface between the two halves of the ridge. To reduce
the intra-ridge potential energy to 50 zJ per scallop-nm or 25 zJ per nm^2,
the spacing must be at least 0.6 nm (ignoring the attractive contribution
from the spacer) according to the formula in (Drexler, 1992, Fig. 3.10d)
which slightly overestimates the attractive force since the ridge is not
infinitely thick.
When the gap between the half-ridges is fully open, the shim (which
includes a hollow to accommodate the spacer) is pulled into the gap and
held there reliably by van der Waals force. The shim will insert
when the ridges have moved apart by a distance equal to the depth of the
scallop undercut, in this example 1 nm. With a 1-nm deep scallop
and a 0.6 nm initial gap (thus a 1.6-nm wide shim), the difference in potential
energy between 0.6 nm and 1.6 nm spacing is 21.5 zJ/nm^2. To prevent
premature insertion, the intra-ridge potential energy of attraction must
differ by 100 kT (260 zJ at 0 C) between closed and open positions.
This requires 12 nm^2 of intra-ridge gap. If the ridge is 8 nm high
(with 4 scallops), then it need only be 1.5 nm long.
The joint may be stiffened by compressing the joint volume. In
this case, extra force may be used to insert the shim into the gap.
(This also allows the gap to be somewhat narrower, reducing non-structural
volume.) A simple design for an electrostatic actuator adds only
one moving part. The shim is blanketed between insulated capacitor
plates, one of which is flexible. Charging the capacitor makes the
plates pull together, expelling the shim like a watermelon seed.
The electricity to power the actuator can be delivered through contact
with small embedded conductors at the proper time during the convergent
assembly process. The tip of the shim can be tapered to help spread
the ridge halves. Once the shim is expelled, the capacitor plates
will adhere to each other by van der Waals force, forming a reliable barrier
to hold the shim in the joint even if the capacitor is discharged.
Tension on the joint will tend to expand the entire joint volume sideways.
This can be constrained by surrounding each joint (not each ridge) with
a diamond collar sufficient to resist the sideways force generated by a
single ridge. The ridge joint is somewhat less stiff in tension or
compression than solid diamond would be, but should be almost as strong:
failure requires either significant compression of a large volume of diamond,
or the simultaneous failure of many covalent bonds. Effectively,
the entire joint volume except for the depth of the scallops and the width
of the shim contributes to the tensile strength, and the entire joint volume
except for the shim contributes to the compressive strength. Shear
strength and stiffness depend on the orientation and attachment of the
ridges, but can be made quite high perpendicular to the ridge line.
Torsional and bending strength and stiffness can also be made quite high.
The width of the shim is unrelated to the size of the ridge, being equal
to the depth of the scallop's undercut plus the intra-ridge van der Waals
gap. A reasonable lower bound for component size is a ridge composed
of four scallops 1 nm deep and offset by 1/2 nm horizontally and 2 nm vertically.
The height of the ridge is 8 nm, and the footprint of a half-ridge is 3.5
nm (accommodating 0.5 nm of motion to mate with the opposing half-ridge),
of which 2 nm contributes structural strength. The 1.6-nm wide shim
adds an additional 0.8 nm of non-structural overhead to each half-ridge;
the total joint tensile strength is approximately 47% of solid diamond.
(Shallower scallops will improve this number up to a point; scallops that
are too shallow can fail by slipping past each other.) For reliable
operation the ridge must be at least 1.5 nm long. The smallest joint
consists of one half-ridge on each side, only one of which (and its shim)
needs to move; the rest of the joint including the mating half-ridge can
be solid diamond. A single joint can potentially have a footprint
smaller than 3x6 nm. Larger ridges can have more scallops, with the
size of each scallop (and thus of the shim) staying constant. For
example, a half-ridge 20 nm high with 10 scallops has a footprint of 6.5
nm (plus 0.8 nm for its share of the shim) of which 5 nm is structural,
for 68% of diamond strength. Covering a 200-nm block with 8-nm-high
ridges on each side requires 8% of the block volume (ignoring block edges
and corners). However, in a high-strength application that requires
ridge joint coverage of the full surface, the block must be nearly solid
diamond anyway.
Because the strength of the joint decreases only slightly with smaller
size (the decrease is a function of the minimum shim, scallop, and van
der Waals gap size), small ridges are mechanically adequate for joining
blocks at any scale. Minimum ridge size is determined by the mechanochemical
fabrication process. The only limitations on block size are the precision
of the block-handling machinery and the possibility of unequal expansion
of the faces due to temperature differences. With 200 nm nanoblocks,
ridges built in a single block can be up to 100 nm in height, with tops
50 nm apart. (Note that the blocks will overlap by the height of
the ridge. The change in effective block width during assembly presents
issues for the assembly process that are straightforward but beyond the
scope of this paper.) An assembly tolerance of 0.05 micron is somewhat
beyond today's standards; current state of the art for automated pick and
place assembly for optical components appears to be around 0.5 micron (Blaze
Network Products, 2003). However, today's pick and place systems
use hardware made with a manufacturing tolerance comparable to its performance.
In contrast, the dimensional precision of the nanofactory's hardware will
be approximately one atomic diameter or less, regardless of scale.
At large scales, single ridges can be assembled from multiple nanoblocks,
allowing ridge spacing of multiple microns; this is sufficient even for
today's robotics.
Differences in fabrication processes, assembly processes, and internal
structure may cause different blocks to be at different temperatures.
The resulting thermal expansion can cause a misalignment of the ridges.
The volumetric thermal expansion coefficient of diamond is 3.5x10^-6/K
(Freitas, 1999, Appendix
A); the linear coefficient is one-third that, or 1.2x10^-6/K.
A temperature difference of 1 K thus causes a 200 nm block to expand by
a small fraction of an angstrom, while a 10.5-cm surface will expand by
126 nm. Because diamond is an excellent conductor of heat, passive
equilibration may be sufficient. As long as the displacement is not
greater than the ridge spacing, or the ridge pattern does not permit improper
joining, the blocks may be pressed together slowly, allowing the temperature
to equalize. Even a rarefied internal atmosphere will also facilitate
temperature equalization between nearby faces, though this process may
be slow depending on block mass, and the process will be somewhat slower
with argon than with neon. Note that the nanofactory is cooled by
phase transition (see Section 8.2), so the cooling
fluid will have the same temperature throughout the factory, minimizing
potential product temperature differences. Active compensation might
involve sensing the temperature at various points on the surfaces and applying
heat to the cooler surface via embedded resistive heaters; this will only
be necessary for the few large-scale joints that take place near the end
of the assembly process, and the heating process can be initiated in advance
to avoid delay. Embedded mechanical (bi-material) thermostats can
allow each region to reach a preset temperature without individual attention.
Because the joints require no external manipulation or assembly force,
they can be used to fasten non-bonded parts that are only loosely connected
to the main nanoblock. For example, a structural beam one micron
long and 50 nm wide can be constructed in five sections. Each section
will be terminated in ridge joints, and laid across a nanoblock in a position
that will place the section ends next to each other during block assembly;
van der Waals force will hold the section in place during block manipulation.
When the nanoblocks are assembled, the ridge joints of the beam will join
at the same time as the rest of the joints, with no additional effort.
This allows the inclusion of long, thin components in product designs.
Likewise, single nanoblocks can be made in separate pieces joined by van
der Waals force. This allows a block to be pulled apart during the
unfolding process, forming multiple walls with large spaces between them.
This can be useful to save mass where only thin walls are needed.
If a block is split into as many as 10 walls or 100 columns, the 20-nm
width is sufficient for multiple full-sized ridge joints on each part.
This capability is assumed for interior nanofactory structure.
Joints can be formed after the product is released from the factory,
as long as contaminants have been excluded from the joint space.
The factory can manufacture a larger containing balloon for product unfolding,
or the joints can be protected individually by a variety of covering mechanisms.
A product can be created in a very compact form, then unfold like a pop-up
book or like flat-packed cardboard boxes. Components can be built
in pieces, with lightweight pantographic trusswork to bring the ends together
as the product expands; once the ends touch, the strong joint will form.
A component can also be made in a "broken" state, with mating surfaces
held together on one edge with a small hinge at any desired angle, and
the open end protected by a bellows if necessary. When the component
is straightened, the mating surfaces will form the desired strong connection.
A weak and reversible joint can be formed by preventing the shims from
entering the gaps between the ridges. This allows blocks to be loosely
connected, then disconnected, and finally reconnected tightly in the same
or different configuration. This may be useful if the unfolding process
requires a structure to be produced in its final conformation, then flexed,
and finally fastened rigidly.
3.2.2. Functional joints
A product may contain embedded wires, pipes, rotating rods, nanocomputer
logic rods, and polyyne control cables. All of these may need to
make a connection between adjacent nanoblocks. These connections
are generally simple, and cost less than 50% of the performance that would
be possible with a seamless design.
Embedded wires can be run up to a flat face, and electrical contact
made by tunneling. Contact can be maintained in the case of joint
strain by the use of springy interfaces. According to measured values
for a sample of HOPG (highly ordered pyrolitic graphite), (GE Advanced
Ceramics, 2002) graphite is about 5000 times more conductive in-plane than
cross-plane (and the in-plane value is 1/50 as good as a typical metal).
The separation of graphite planes is 0.335 nm, about 1/600 of the 200-nm
nanoblock width. This implies that a graphite-graphite tunneling
surface of 8 nm^2 per nm^2 of graphite wire, spaced every 200 nm, would
only double the total resistance. To save nanoblock surface area,
the tunneling surface can consist of interlocking corrugations. Because
diamond is an excellent insulator, high voltages may be used to compensate
for the resistance of graphite. Some buckytubes may be better conductors.
Control cables and control rods will be built into each nanoblock when
it is manufactured, and extend only to its edges. Tension and/or
compression must be transferred between blocks. Nanocomputer logic
rods have ends ~1 nm^2 which can be butted together. The nanocomputer
design uses tensional force of 2 nN (Drexler, 1992, sec. 12.3.3.b) but
this can be traded for displacement or compressive force without sacrificing
reliability. Alternatively, the joint area can be increased by a
few nm^2 to allow a few nN of tensile force to be transmitted through van
der Waals attraction. Crossing between blocks may require adding
extra logic gates to transform and condition the signal; this logic can
all be reversible at some cost of time. Such interfaces will not
add significantly to the power requirements or design complexity of a nanocomputer.
Polyyne (carbon chains with alternating single and triple bonds) control
cables can be terminated with a small diamondoid plate flush with the nanoblock
surface. When the blocks are joined, the plates will stick by van
der Waals force. Each two atoms of polyyne spans a length of 0.2569
nm and has a compliance of 0.00185 m/N (Casing an Assembler, "Control cables").
A 1-nm diamond cube contains 176 carbon atoms. A van der Waals interface
has a stiffness of >30 N/m per nm^2 (Drexler, 1992, sec. 9.7.1), or a compliance
of <0.0334 m/N. Two hundred nm of polyyne contains 1557 carbon
atoms and has a compliance of 1.44 m/N, while 198 nm of polyyne interrupted
by two 1-nm diamond cubes interfaced by van der Waals force contains 1893
carbon atoms and has a compliance of 1.47 m/N; the interface increases
cable mass by 22% and compliance by 2% (ignoring the hydrogen termination
and internal compliance of the diamond cubes) and may introduce resonances
into extremely high-speed operations. The main drawback of the interface
is its strength; the tensile strength of a polyyne rod is >6 nN, but the
strength of the interface is ~1 nN. Increasing the interface area
allows a stronger and stiffer joint, and for joint areas above a few square
nanometers a ridge joint can be used at some cost of mass.
Power can be transmitted by means of thin rotating rods, embedded in
the nanoblocks like the control cables and logic rods. Mating convolutions
on rod ends will allow the transmission of torque between ends that are
simply pressed together. If the rod is driven near maximum torque,
the interface may need to be somewhat larger than the cross section of
the rod. The bursting speed of a disc decreases in proportion with
its radius, while the area increases as the square of the radius; thus
a 2x increase in interface area will cause a 1.4x reduction in speed.
In this simple example, power transmission is derated by 40%; however,
other mechanical linkages such as a thin belt connecting offset and overlapping
rods may permit full speed while delivering full torque. (The belt
can be placed around one rod during nanoblock manufacture and held open
by any of a variety of methods. The other rod can be tapered to slip
inside the belt during block assembly. Interlocking (gear-toothed)
rod surfaces will also work but may require significant overlap for reliable
torque transmission.) Rods and shafts larger than a few nm can be
joined by ridge joints. Ridge joints may also serve as a means of
chocking the shafts to ensure proper alignment, and then unlocking them
during convergent assembly: the shims can be inserted only when the joint
is fully closed, and the motion of their insertion can be used to remove
a mechanical chock. Small rods can be controlled by adjacent ridge
joints, and large shafts by facial joints with internal shims.
Bearing surfaces for rotating shafts small enough to be embedded in
nanoblocks can be built into each nanoblock during construction.
Variations in rod diameter will prevent the rods slipping out of the block
prior to convergent assembly. Large rods pose a special problem for
convergent assembly, since they cannot be strongly and permanently fastened
to a support or bearing structure. However, for products up to 10
cm size, a tight-fitting bearing surface between a rod and a housing can
provide the necessary adhesion by van der Waals force alone. Rotational
freedom can be constrained by small retractable chocks. Graphite
pads covering the matching surfaces of the blocks constituting the shaft
and the blocks constituting the housing can provide a bearing surface even
for slightly rough curved surfaces. However, the boundaries between
the pads will be aligned on the moving and bearing surface, and this can
create a significant force. (Twisting one of the surfaces relative
to the other would break the alignment, but this will not be possible for
cylindrical bearings.) Order-of-magnitude calculations can be made
by treating the boundary gaps as regions of wider spacing between the surfaces,
calculating the difference in van der Waals energy between aligned and
unaligned regions, and dividing that by the width of the gap to find a
force. Approximating the boundary as a trench 1 nm wide and 0.1 nm
deep and the pad spacing as 0.2 nm, and applying the formula from (Drexler,
1992, Fig. 3.10d), indicates an energy difference of 81 zJ per nm^2 in
favor of the aligned state, or an average force of 81 pN per linear nm
of trench. One mm^2 of flat sliding surface will contain 5x10^9 nm
of trench crossing the direction of motion, creating a force of ~0.4 N.
However, the stiffness of 1 mm^2 of graphite bearing surface is ~3x10^13
N/m, so for many macroscopic applications, bearings may be made small enough
that the "roughness" is not a significant problem. A cylindrical
bearing surface cuts across two nanoblock planes and only a fraction of
the area contributes to stiffness; these factors increase the number of
trenches (and thus the "roughness" force) for a given bearing stiffness
by approximately a factor of 4.
Pipes are simply voids in the diamond nanoblocks that are butted together
when the blocks are assembled. A flat, uncompressed interface between
nitrogen-terminated diamond (111) surfaces is adequate to exclude helium
(Drexler, 1992, sec. 11.4.2a). If this type of interface proves inadequate
in practice (perhaps due to joint flexure, or unavailability of nitrogen
termination chemistry), a conical extension of the pipe wall wrapped in
one or more layers of graphite to provide a compressive seal and extending
into a conical depression in the other block should suffice. Pipes
too large to be contained inside a nanoblock can be sealed by diamond or
graphite curtain walls, placed along each seam, to separate the interior
of the pipe from the mechanical joint area. If the nanofactory is
filled with inert gas, pipes will also be filled with the gas when they
are manufactured. If this is a problem, one possible solution is
to place a collapsed graphite tube inside the pipe, terminating the tube
ends at the nanoblock faces with a diamond mating collar thin enough to
be flexible. When the blocks are assembled, the collars join.
When first used, the graphite tube will expand and conform to the walls
of the pipe while displaced gas can be vented through small channels.
4. Nanofactory Architecture
A nanofactory, as conceived here, is a single device containing many mechanochemical
fabricators and larger-scale manipulator systems. The mechanochemical
fabricators produce nanoblocks and the manipulator systems join them into
a product. The mechanochemical working space of a nanofactory must
contain no stray reactive molecules. The factory must contain computers
to control the machinery; space and mechanisms for convergent assembly;
structures for distributing power, chemicals, and cooling fluid; mechanochemical
fabricators with space for them to work; and additional space for joining
blocks into larger blocks and transporting them through the factory.
The nanofactory is built hierarchically, using only a few scalable designs.
At the lowest level, a few thousand fabricators are arranged in a planar
grid. Their products are picked up and assembled into increasingly
large blocks by a series of increasingly large robotic manipulators.
This plus a control computer constitutes a basic, reliable production
module. The production modules are stacked three-dimensionally
into gathering stages, which assemble blocks and pass them to higher-level
gathering stages. Finally, the entire factory is enclosed in a suitable
casing, with a mechanism to output product without contaminating the workspace.
In Merkle's convergent assembly architecture (1999) it is suggested
that each convergent assembly stage has four inputs, each supplying two
blocks to make one output block. However, this means that each input
to the preceding stage must supply four blocks to make those two, and so
on. This is feasible if blocks can be manufactured extremely quickly,
or (as in Merkle's design) fed through a relatively small number of ports
efficiently. The current design, using large nanoblocks requiring
minutes or hours to fabricate, uses only one block from each fabricator
per product cycle. This implies that each stage will receive all
its blocks in parallel. In general, then, each stage must have either
eight (non-redundant) or nine or ten (redundant) inputs. (The first
gathering stage has only four inputs, to compensate for the eighteen inputs
of the final stage in the production module; see below.)
4.1. Mechanochemical functionality
Figure 3: Workstation Grids
Once a self-contained, digitally controlled mechanochemical fabrication
system has been developed, the fabricator design can be copied directly
from it. Early systems will presumably use a simple, stiff robot,
such as a double tripod (Merkle, 1997c) or Stewart platform. As noted
in Section 8.2, any inefficient ratchet or other state-keeping
systems in the fabricator can be replaced with thermodynamically efficient
stepping drives. Even with this improvement, the primitive method
of mechanochemistry will cost some efficiency relative to the "mill" type
designs analyzed by Drexler (1992, sec. 13.3) and used in his nanofactory
design (1992, sec. 14.4). Because placing each atom or molecule requires
a large and complicated motion of the tripod system, the nanofactory will
suffer some penalty in both speed and energy use; these penalties are substantial
but not crippling. Mills are not included in this preliminary design
because they may require significant additional mechanical and mechanochemical
design.
Fabricators will be fastened together edgewise to form the planar array,
which divides the coolant volume from the working volume. Cooling
fluid with dissolved feedstock circulates past one side; the products (nanoblocks)
are fabricated and released on the opposite side, which is open to the
nanofactory's clean working volume. A square of nine fabricators
(one redundant) forms a stage. Product blocks are picked up by a
three degree of freedom gantry crane manipulator and assembled into a 0.4-micron
block. Likewise, a square of nine of these stages forms the next
stage. This continues through several levels; in the current design,
four levels is chosen for suitable redundancy and convenient control.
4.2. The reliable basic production module
Figure 4: Production Module
A production module fabricates two 3.2 micron product blocks out of up
to 8,192 nanoblocks, using a fabricator to produce each nanoblock.
The module is extremely reliable in the face of radiation damage, and is
controlled by an integrated nanocomputer. The overall shape of the
module is a rectangular solid ~16x16x12 microns. The fabricators
are placed on two opposite sides, delivering their product nanoblocks to
the interior. The nanocomputer occupies a third side, surrounding
the product exit port. The remaining three sides may be closed by
thin walls, but need not be closed at all where two production modules
are placed side by side in the nanofactory. The interior is sparsely
filled with gantry crane manipulators to assemble the nanoblocks into larger
blocks. The gantry crane mechanisms, even at the smallest scale,
can be implemented as bulk diamond machines--the smallest blocks are 200
nm on a side, and bulk diamond parts can be designed far smaller than that,
so not much material or volume will be wasted due to inefficient design
constraints. With the ridge joints, the blocks can be assembled simply
by bringing them into contact (Section 3.2.1).
Rotation of blocks will not be necessary because each block (or partial
block) can be manufactured in the same orientation it will take in the
final product (before unfolding). The design of the ridge joints
provides a rough surface that can be gripped with as much force as necessary
to accelerate the cubes and (depending on scale) overcome gravity.
The physical layout is similar in some respects to Merkle's architecture
for convergent assembly (Merkle, 1999). Substage outputs are be grouped
on one wall of an assembly chamber, forming the inputs to the stage; substages
are placed side by side, and stages are stacked on top of substages.
See Figure 4. As in Merkle's design,
the output from a stage is twice the width of each input; unlike Merkle's
design, each input port delivers only one block per product cycle instead
of two. The design is not quite scalable, since the width of the
assembly stage is three times the width of the sub-stage, while the width
of the block that is produced is only two times the input block size.
The ninth substage is redundant, used in case of failure of another substage.
Four levels of redundancy are probably sufficiently redundant for a nanofactory
of the size contemplated here. Otherwise, more redundancy can be
added in a fifth stage, or by extending a gathering stage; see Section
8.5
for calculations.
The module's top and bottom surface are completely covered with 9^4
= 81^2 = 6561 mechanochemical fabricators each. To provide space
for moving sub-blocks around a growing assembly, each stage is 3.1 times
as high as the sub-block it receives. Two of these assemblages are
sandwiched together, sharing a single 3.2-micron assembly stage, to make
one production module that produces two 3.2-micron blocks per product cycle.
The design can be compacted somewhat if multiple convergent assembly stages
can be combined; such optimization is beyond the scope of this paper.
The CPUs, memory, DMA controllers, and motors are placed on the face that
contains the output port, forming a single layer and extending the width
by 0.2 micron. Controlling a column of 81 fabricators requires perhaps
a few billion bits per second and <100 pW (Section 8.2),
which fits through an interface requiring only a few nm^2. Only 4096
fabricators per side are used at any time; the rest are redundant, to be
used in the event of radiation damage. See Section 8.5
for further discussion of this design. Powering the entire set of
8192 fabricators plus the computer requires 8 nW, far smaller than the
500 nW capacity of a single electrostatic motor.
4.3. Gathering stages
Figure 5: Convergent Assembly Fractal Stages
The production module is scaled to tabletop or larger size with a simple,
repeatable architecture. Each gathering stage fits neatly into a
rectangular solid, with the substages arranged in two rows on either side
of a central assembly and transport tube. The substages, themselves
rectangular solids (including the production module), fit together with
no wasted space in each row. Space is wasted between the rows, adjacent
to the central tube. Gaps are left for feedstock/cooling channels
adjacent to certain faces of the production modules. Wherever no
gap exists between substages, no walls are necessary. As the modules
are stacked, the cooling channels line up; the overall arrangement is a
quasi-fractal working volume interpenetrated by a non-fractal cooling channel
volume. Power and signals are routed through the walls of the transport
tubes, since the end of every transport tube touches the side of the next-larger
tube. Power can be distributed through rotating rods or conductive
graphite or buckytube inclusions (wires) in the structural diamondoid blocks.
Control signals can be sent mechanically through polyyne rods, or electrically
through wires. The current design does not require fractal distribution
of liquids, since feedstock is dissolved in the cooling fluid. Inspection
of Figure 5 shows that some coolant channels
will be blocked by assembly tubes in stages with numbers divisible by 3;
this requires a gap between the sub-stages and the tube that is a fraction
of the cooling gap width, which is not included in the present calculations.
It may be desirable to prevent fluid from flowing into large voids adjacent
to the delivery tubes, to prevent excessively slow flows that could allow
suspended particles to settle out. More detailed design is beyond
the scope of this paper.
The factory does not require a hierarchical network of computers, since
the computation is done either at the top level or at the level of individual
production modules (see Section 6). Once the blocks
are fabricated, a fraction of the production module computers can be used
to run the convergent assembly robotics. If hierarchical computers
are needed, the computers can be built into the tube walls. Amplification
will be needed to distribute the top-level signal to each of the production
modules. This can be implemented in each stage, and can be combined
with a mechanism to send a unique, hard-coded position indicator to each
production module. By knowing which branch the signal takes at each
stage, the module's computer can easily determine the position of its output
in the final product.
A tabletop factory might produce a 10.5-cm product; this is 2^15 times
larger in linear dimension than the 3.2 micron output of a production module,
so product assembly requires 14 further assembly stages where each stage
assembles 64 sub-blocks to produce eight product blocks. See Figure
5, and Section 8.3 for dimensions. A final
stage, external to the factory, is described in the next section; it assembles
eight 5.25-cm sub-blocks (per product cycle) to produce the final product.
Note that the first stage in the Figure is not an assembly stage, but serves
only to gather 8 sub-blocks for delivery to the next stage, since each
production module makes only two blocks per product cycle. Each assembly
stage gathers 64 sub-blocks from substages, assembles them within the assembly/delivery
tube, and delivers the 8 assembled blocks to the superstage. With
the current size parameters, in some of the smaller stages, a minimum-volume
arrangement leaves the tubes perhaps too short for simultaneous assembly
of 8 blocks. Four blocks may have to be assembled and passed on to
the next stage, and then the other four assembled; this adds only fractionally
to the total product cycle time. The Stage 1 delivery tube is fractionally
larger than the 3.2-micron product it carries. The other assembly/delivery
tubes are large enough to allow moving sub-blocks to fit past the product
block under construction.
4.4. Casing and final assembly stage
Figure 6: Nanofactory Layout
The nanofactory must maintain its structure against atmospheric pressure,
internal pressure differences, its own weight, and the weight of its products.
Loads can be more efficiently carried in tension than in compression, since
tension members do not have to resist buckling. Low-pressure internal
volumes (the fabrication and assembly space) are kept from collapse by
cables/braces stretched across the higher pressure volumes (the cooling
channels); see Figure 6. The whole thing
is suspended from a rigid exterior shell. For flexibility, the chosen
design includes a capability to do final assembly and unfolding in a protected
volume external to the factory itself, which can be of arbitrary size.
The overall nanofactory shape is a rectangular solid. The exterior
shell consists of six flat panels enclosing the necessary volume.
Each panel provides support to anchor the interior and prevent the working
volume from collapsing under atmospheric pressure. (Cooling fluid
pressure will be contained by the tension members crossing the cooling
gaps, and will not put additional force on the external casing.)
This is equivalent to a 1-atm pressure difference between the inside and
outside of each exterior panel, imposing a bending force. In addition,
the panels support each other, experiencing a crushing force at each edge.
The panels are hollow and pressurized. Internal tension members,
set at a slight angle, keep them rigid and flat. Since the working
volume contains the lowest pressure in the nanofactory, no pressure bracing
needs to be installed inside that volume; the cables only intrude on the
cooling channels. With many small cables supporting them, interior
walls can be very thin. See Sections 8.2 and
8.3
for a discussion of structural mass and coolant and panel pressure.
Sufficiently numerous and thin cables (no thicker than the walls) cannot
tear the walls; since the cables can be as thin as a buckytube, details
of attachment need not be considered.
In the final gathering stage, multiple blocks (up to 8 per product cycle)
are pressed together to form the final product. The product must
be delivered without allowing contaminants into the factory. One
way to do this is to produce a rectangular solid extruded through a sliding
seal, as in the "replicating brick" approach of Merkle (Drexler, 1992).
This constrains product configuration, requires that all faces be smooth,
and does not provide a protected environment for post-assembly unfolding.
An alternative design, permitting much greater flexibility in product shape,
is to enclose the final stage in a balloon, the neck of which forms a sliding
seal with the factory. A new balloon is installed for each product,
pushing the old one (with previous product) out and preventing contamination.
The mechanism of the final assembly stage must be extended for some distance
outside the factory during final product assembly, but still requires only
three degrees of freedom. Once the product is assembled and optionally
unfolded, the assembly mechanism is retracted and a new balloon is installed.
Most of the nanofactory mechanism is maintained at low or zero pressure
to reduce drag on moving parts. To allow balloon inflation, the final
convergent assembly tube is used as an airlock, pressurizing it with pure
neon or argon after all 64 sub-blocks have been delivered.
If low pressure in the factory is tolerable, the airlock need not be scavenged
completely before the end of the next product cycle, and mechanical pumping
will be sufficient. If even a few atoms of noble gas cannot be tolerated
in the factory or included in interior voids of the product, the airlock
can be scavenged by use of a cryogenic surface; since neon and argon do
not adsorb at room temperature, "bake out" is unnecessary and the airlock
can be completely emptied of gas in a relatively short time. The
design of the assembly mechanism, airlock mechanism, and balloon installation
is straightforward.
4.5. Issues in bootstrapping
Initial stages of bootstrapping will benefit from an ability to directly
observe and connect with individual fabricators. (Direct contact
is not a given for all designs; for example, Merkle's assembler floats
in a solvent, which limits both the complexity and the bandwidth of communication
with it.) Interfacing with a single 200-nm fabricator will require
some delicate lab techniques, which may not be worth the effort, but are
discussed here to illustrate the feasibility of control at that scale.
This section describes how a single 200-nm fabricator can be supplied with
power and feedstock in a dry environment suitable for immobilizing and
imaging the fabricator.
Several imaging technologies may be useful. Electron microscopes
have a very fine resolution and form images rapidly, but use multi-keV
electrons. Single-wall nanotubes can be imaged in an electron microscope
without apparent damage, but high-energy electrons may penetrate a single
graphite layer and either do chemical damage to sensitive bonds or charge
insulating surfaces, which could cause undesirable electrostatic forces
that would probably interfere with operation. Vapor deposition of
metal on the outer surface of the fabricator before imaging may alleviate
this problem. Scanning probe microscopy may be useful for imaging
the probes as they are aligned with the fabricator. Non-contact AFM
(atomic force microscopy) can avoid displacing the probes due to contact
forces. Optical interferometric methods may be useful for feedback
on at least one dimension of alignment. Finally, two-part fluorescent
systems (e.g. absorber and fluorescer, or absorber/fluorescer and quencher),
with one part attached to the fabricator and the other attached to the
probe, may be useful for final alignment (Drexler, 1992, sec. 16.3.6c).
The number of probes to be attached is small--only four for the first several
bootstrapping steps.
The moving-plate electrostatic actuator described in (Drexler, 1992,
sec. 11.6.4) requires a plate area of only 150 nm^2 and provides 1000 zJ
per actuation. A 100 MHz cycle time requires 100 pW. The actuator
is powered by 5 volts, requiring a current of 20 pA. This current
is far lower than the 0.1 mA that has been measured in a single buckytube
(Ipe Nanotube Primer, 2001), so buckytubes can be used to deliver power
for initial bootstrapping stages. A manipulation system like the
Zyvex three-probe SEM manipulator (MinFeng et al, 1998) can place buckytubes
with 6-nm precision on separate pads on the fabricator. A ground
connection can be made through the surface the fabricator rests on.
This can supply power for several actuators, which can control any number
of internal systems if one of the actuators is used to drive a simple mechanical
selector.
If the fabricator is in a dry environment, feedstock must be delivered
via a closed system. Hollow glass needles can be drawn as fine as
30 nm (Intracel LTD, 2001) which is small enough to interface directly
with a single fabricator. Two needles are needed to maintain a flow
of fresh solvent past the molecular intake port; this accommodates designs
that reject waste molecules as well as designs that use varying amounts
of multiple chemicals during the fabrication process. A housing over
the molecular interface with two 40-nm holes partially closed by 10-nm
graphite sheets should allow a leak-proof, though not strong, interface
to the needle tips. The tips can be positioned using the same kind
of manipulator used to position the buckytubes, and held in place during
the fabrication operation.
A single fabricator has space inside its casing to make two duplicates
with separate shells. Instead, it could fasten the two together,
side by side, and combine the shells. This would give roughly four
times the internal working volume for the same area of shell, and the two
fabricator stages could each produce two 200-nm blocks. A single
additional ratchet would select whether the actuation was to be delivered
to one or the other fabricator, or both together. (Either the electricity
or the resulting mechanical motion could be switched.) Most of the
time, both fabricators could be working in synchrony, so the same control
signals could be routed to both of them; duplication time would not be
greatly increased.
Since the two fabricators are placed side by side, their products would
also be adjacent. When fabrication was finished, each double tripod
would have sufficient range of motion to grab its finished product and
move it into contact with the other. A single 1 nm^2 contact area
would apply 1 nN of force. The weight of even a 10-micron cube, containing
125,000 nanoblocks, is 0.035 nN, allowing over 10 gravities of acceleration.
With small step sizes, torsion from off-center moving force can be relaxed
after each step; since only a single motion of a few nm is needed, this
will not significantly affect duplication time.
As the device grows, more different kinds of blocks will be required,
but more electrical control channels can be added. Blocks containing
convergent assembly manipulators will be mostly empty space, so will not
require much fabrication time to complete if they must be built one at
a time. An internal CPU will not be required until the stage where
it is a small fraction of the overall device mass. Once the device
is sufficiently large that at least six control channels can be attached,
the manufacture of the CPU and RAM can proceed in parallel with the manufacture
of the fabricator blocks without affecting duplication time.
There are many suitable physical layouts for the medium-scale devices.
For example, mechanochemical modules could form plates to line the top
and bottom of a wide workspace, with the plates separated by 800 nm.
Each module would make two nanoblocks, extending them vertically into the
workspace until they touched the nanoblocks from the opposite side.
The resulting product would be four nanoblocks thick; each face of the
nanoblocks would be either strongly fastened to its neighbor or weakly
held by van der Waals forces. When the product was completed, the
tripods working in concert would pass it out one side of the factory which
would open onto a balloon large enough for the product to unfold into a
flat factory of twice the area. A slightly more advanced design stacks
several of these flat factories and includes a 1 DOF (degree of freedom)
manipulator extending into the balloon to push together (and thus join)
the product slabs after they have been extruded; this allows more complex
unfolding. The maximum workable size of this design is limited by
radiation damage. A factory of 16,000 fabricators (a suitable size
for one nanocomputer to control, with the program downloaded in stages
to save memory) may have a 1% chance of suffering a disabling hit to a
single fabricator in a single day (see Section 8.5).
4.6. Improving the design
The mechanical format of the nanofactory can be improved by reducing the
empty volume. Since block assembly does not require much time, then
if manipulators can handle two or more block sizes the factory size can
be reduced by converting some of the assembly/delivery tubes into delivery-only
tubes of ~1/3 the width, and implementing multiple assembly stages in the
other tubes. Stages may also be re-used in the production modules,
making them flatter.
The current design is extremely wasteful of power. It is also
limited in the speed at which it can work. The inclusion of "mills"
for early-stage chemical processing (Drexler, 1992, sec. 13.3) can save
orders of magnitude of power and significant time. A mill does not
require any computation to perform an operation. Additionally, a
mill can more easily recover energy from exothermic reactions, and even
from the final stages of endothermic reactions. With mills preparing
small diamond cubes or hexagonal carbon chains that can be covalently bonded
to each other (Drexler, 1992, sec. 8.6.5b), a hybrid mill/manipulator system
could produce bulk diamond far more quickly and efficiently. Because
mills require both mechanical and chemical design, they have not been included
in the current nanofactory design.
The inclusion of atoms other than carbon and hydrogen allows flexibility
of design. In particular, Kaehler brackets (1990) would allow more
precise designs of surfaces and orientations. To some extent, mechanochemistry
can be developed by simulation in advance of fabricator availability.
Even without using additional chemistry, stepwise actuation can be made
more efficient and faster. Current design requires a separate operation
for every step, and each operation requires computation and time.
A non-stepping mechanism might be an improvement. For example, a
set of stops could be included in the path of a sliding bar. A chosen
stop would be extended, all other stops disengaged, and a linear actuator
used to move the bar rapidly until the stop is contacted. The force
profile of the actuator is problematic. For efficiency, its force
must be weak over most of the displacement, but for resistance to thermal
noise, it must apply a strong force at the end of the cycle. (A combination
of a weak actuator and a slow but strong latching pin may also be efficient.)
An alternative is to use several drive mechanisms with varying step sizes,
some of them large, or to design the pin drive so that in a single cycle
it can move either one or several steps.
Many other mechanical and chemical improvements will be obvious.
The development of improved nanofactory models may be expected to proceed
quickly, and manufacturing performance will also increase quickly.
Performance of products will increase somewhat as a result of continued
research and development. By several measures, products produced
by the current nanofactory design are already within an order of magnitude
of theoretical limits. It should be noted that no part of the current
design requires such levels of performance.
5. Product design
This section discusses the design of nanofactory products, including design
constraints imposed by the use of nanoblocks, in sufficient detail to encompass
nanofactory design. Section 5.1 discusses various
levels of design. The design process is simple enough that a CAD
(computer aided design) program to support each of these levels will be
fairly straightforward, so is not addressed here. However, since
the decoding of a product specification may use significant energy, the
design strategy is developed in sufficient detail to permit rough calculations
of the energy cost of internal nanofactory control (Section 8.2).
Capabilities developed in order to design a nanofactory may also be useful
in designing other products. The discussion of general product design
may be useful in forecasting the economic value of a nanofactory of this
type, although such forecasts are beyond the scope of this paper.
Section 5.2 contains a brief discussion of simulation
and testing.
5.1. Levels of design
Even a microscopic product may contain trillions of atoms. It is
clear that direct human effort cannot specify each atom separately.
The solution adopted here is re-use of components for multi-scaled designs:
a few components at one scale can be combined in many ways to make many
larger-scale systems. The nanofactory can be designed using six levels.
First, mechanochemistry creates nanoparts. The parts are combined
into nanomachines, which are fitted into nanoblocks.
Combinations of nanoblocks specify patterns which are used to fill
regions.
Finally,
folds are built into the product to allow it to unfold
and rearrange into more complex shapes and larger volumes. Each of
these levels can be designed almost independently of the others, and each
can be efficiently encoded into a product specification file and decoded
to control the nanofactory. Additional methods of design, which may
be useful but are not required for the nanofactory, are covered briefly
in Section 5.1.6.
5.1.1. Nanoparts
A certain level of mechanochemistry research will have been accomplished
in the course of creating the fabricator. This will probably include
the ability to build diamond lattice in a variety of shapes. Since
diamond lattice is repetitive, the motions required to fabricate it are
almost certainly also repetitive. Simple bulk diamond parts may be
specified by volume, requiring very little information to encode an arbitrary
number of atoms. (J. Soreff points out that the position of atoms
may be distorted by proximity to an edge, though this will probably require
only predictable displacements of mechanochemical motions.) Likewise,
buckytubes may be specified by chirality and length. Parts with complicated
surfaces, or that involve an interface between diamond lattice and some
other molecular structure, may require a listing of individual atom positions
or even of individual fabrication motions. It is unknown what percentage
of the fabricator will be bulk diamond. However, non-fabricator components
of the nanofactory can generally be built out of some combination of bulk
diamond and reused fabricator parts.
One of the most complex components of the nanofactory will be the nanocomputers.
A nanocomputer of Drexler's design (1992, chap. 12) consists of only a
few types of parts, including logic rods with varying combinations of knobs,
a few kinds of springs, cams, a motor/flywheel, and a housing.
Although the computer may contain thousands of different rod configurations,
all rod designs can be synthesized from knobbed and knobless segments;
each additional rod thus requires only a few bits to specify knob positions.
Assembly of the parts into the nanocomputer will also be repetitive, as
much of the circuitry consists of regular arrangements of rods in programmable
logic arrays. Translating from a digital logic specification to a
mechanical hardware arrangement is straightforward.
Mechanical devices large enough to be specified with bulk diamond construction
are also large enough that their strength and stiffness can be treated
with classical approximations (Drexler, 1992, chap. 9). Although
other effects such as electron tunneling between conductors may be significant,
a purely mechanical design can usually ignore them. The main difference
between nanoscale mechanical design and macroscale design will be surface
effects including van der Waals force.
Nanopart designs may be parameterized. For example, instead of
a different part specification for each length of buckytube, a single specification
can be given with a start, a finish, and a middle component that can be
repeated as desired. The nanocomputer logic rods are another parameterized
part. It should be possible to specify complex volumes of diamond
in terms of geometric description. As discussed in Section 6,
the choice of whether to parameterize a part or to specify its variants
separately will depend on a tradeoff between processing power and memory
space.
5.1.2. Nanomachines
Once fabricated, nanoparts are assembled by the fabrication system (e.g.
double tripod) into sub-components such as programmable logic arrays and
actuators, and eventually into nanomachines such as computers and double
tripods. Industrial robots perform similar tasks today. Van
der Waals force allows weak joining, and the ridge joint (Section 3.2.1)
allows strong joining for parts over a few nanometers in size. In
general, the assembly process will not require techniques analogous to
welding, gluing, or the use of small fasteners such as threaded bolts (Hall,
1999).
The level of nanomachines is not strictly necessary; parts could be
assembled directly into nanoblocks. However, the use of this level
of specification causes no loss of capability and is convenient since human
designers think in terms of machines. A nanomachine specification,
then, includes some sequence of nanoparts and sub-components together with
a sequence of assembly operations that assemble the sub-components.
Sub-components may be considered as nanomachines in their own right; this
saves space in the product description file, as one sequence of parts and
operations can be included in several machines by reference.
5.1.3. Nanoblocks
During a product cycle, fabricators in the nanofactory make a single nanoblock
each. Unlike nanoparts and nanomachines, the size and shape of nanoblocks
is more or less fixed. A nanoblock is small enough to be made rapidly,
but large enough to contain useful functionality. What varies is
the contents of the block and the surface connections to adjacent blocks.
Within some limits (to allow handling by the convergent assembly mechanism),
partial nanoblocks can also be built; this is useful in making smoother
surfaces.
In the current nanofactory design, a nanoblock is a 200-nm cube.
If a typical diamondoid part occupies a 10 nanometer cube (which has space
for ~176,000 diamond-lattice atoms) then 8,000 parts can fit inside each
nanoblock. For comparison, a typical 4-cylinder automobile engine
has ~450 parts (Whitney et al., 1998). As in the nanocomputer design
(Section 6.1), where the CPU occupies one cube and
memory is placed in adjacent cubes, designs can often be broken along convenient
planes and placed in adjacent cubes, communicating through pipes, small
control rods, electrical wires, or larger mechanical interfaces.
The simplest nanoblock is inert--solid structural diamond, with full
structural ridge joint coverage at one or more faces. Another class
of nanoblock is filled with digital mechanical logic; several nanoblock
designs are needed to implement a nanocomputer. A third class of
nanoblock could be filled with actuators; a nanoblock full of electrostatic
motors could convert a microwatt, and the same block would function as
an electrical generator without modification. Any nanoblock design
could contain some volume for miscellaneous functionality such as a few
gates of digital logic, a fan-out of a control cable with signal amplification,
or simply passing a signal through; reserved volumes that are continuous
between various block faces would be especially useful. A fourth
class of block would contain just enough diamond for rigidity of faces
and support of interior structure; this would be used mainly to contain
predefined nanomachines in novel arrangements, or to support convergent
assembly operations. Miscellaneous functionality could be specified
by direct design, or by semi-automated design using macros and automatic
placement and routing. (In constrained volumes automatic placement
would be more difficult.) Predefined blocks and block classes could
be extensively tested. Spatial separation of functional units, either
within or between nanoblocks, will reduce unexpected interactions.
Thus, most if not all nanoblocks in a product will be pre-designed (or
contain predesigned components arranged according to design rules), easy
to specify, pre-tested, and highly reliable.
5.1.4. Patterns and Regions
A 10.5-cm cube contains 144 quadrillion nanoblocks; the designer cannot
specify each one by hand. Much of the design will be repetitive,
and patterns and regions allow the specification of repetitive patterns
of nanoblocks. A pattern is a shape that is composed of multiple
nanoblocks. A region is a semi-arbitrary volume that can be filled
by patterns. Such specification allows large volumes to be filled
with very little specification data. (In the simplest case, one nanoblock
specification and one number can define a cube of any size.)
The simplest pattern consists of a single nanoblock type, with faces
compatible with stacking. More complicated patterns may specify repeated
or tiled arrays of different nanoblocks; these may be used to implement
(for example) a material with embedded strain sensors. Patterns may
be one-, two-, or three-dimensional, and may be designed to stack either
with themselves or with other patterns. Pattern specification can
be recursive: patterns can include smaller patterns or regions. In
the design of the nanofactory, each convergent assembly stage can be represented
as a single pattern, consisting of eight copies of the sub-stage pattern,
plus the walls, braces, and assembly tube required to connect them.
Patterns of nanoblocks can be tiled to form virtual materials occupying
regions. For example, a structural material could have a nanocomputer
per cubic millimeter, connected into a 3D grid, and strain sensors embedded
in various nanoblocks. A design for a single display pixel could
be tiled to form a raster display of any desired size. A useful CAD
program will allow such materials to be designed, and then used to fill
specified volumes; by this method, large, simple products can be specified
with very little design effort and small file sizes. (In any case,
the size of the specification depends on the complexity, and not the size,
of the region.) A more sophisticated program would allow the algorithmic
specification of complicated volumes, such as fractal trusses. The
nanoblock width of 200 nm is 100 times less than a typical human cell (Freitas,
1999, table 8.17);
for most human purposes, a material specified in terms of whole nanoblocks
would appear smooth, but partial blocks could be made as long as the convergent
assembly mechanism was still able to grip them as needed. Some machinery
such as large cylindrical bearings will be improved by partial nanoblocks;
lining the bearing surface of each block with graphite sheets will smooth
out any rough edges left by bulk diamond fabrication. (See Section
3.2.2).
For convenience in packing products more compactly, a simple extension
of the concept allows two different patterns to specify different fractions
of a nanoblock's contents; this allows patterns to interpenetrate or to
stack tightly, and can be used to specify small parts attached to nanoblocks
during fabrication but removed during unfolding.
Although the volume of nanotech-built machinery is far smaller than
the conventional machinery required to perform a comparable function, some
provision for redundancy will be required above the nanoblock level.
For example, generating 1 W of mechanical power requires perhaps two thousand
cubic microns of electrostatic motors, which may receive a damaging radiation
hit every few days (see Section 8.5). The process
of combining functional modules into larger modules that are tolerant of
radiation will be a common design pattern. The larger modules can
then be combined into a second-order virtual material, if desired.
During convergent assembly, the product is assembled from sub-blocks
into larger blocks. Thus a 10.5-cm product is assembled from 5.25-cm
blocks, which are assembled from 2.635-cm blocks, and so on. However,
the boundaries of patterns, and of regions, need not correspond to the
assembly boundaries. With ridge joints, nanoblocks can be assembled
simply by moving them into contact. This implies that any pattern
should be able to be split along any assembly boundary, or conversely,
that assembly boundaries can fall anywhere in any pattern. In practice,
two difficulties arise which may require some accommodation of the assembly
method, depending on the product.
Spaces within a pattern or around a region may be left empty of nanoblocks.
A void may cause an assembly failure because of a thin or unattached piece
adjacent to an assembly boundary. Voids do not pose severe problems
for the nanofactory design. The nanofactory, as fabricated, will
not include large voids, since it will be unfolded after fabrication (see
section 5.1.5). In product designs requiring
voids, the voids may be filled with a scaffold of mostly-empty nanoblocks
that can fold out of the way after construction.
Another difficulty is that assembly of large blocks may not allow sufficient
precision to use ridge joints only a few nm in size; it is not yet known
whether two isothermal cm-scale diamond faces can be aligned within a few
nm across their entire surface. Patterns and regions may have to
be defined to accommodate larger joining structures, either alignment pins
as suggested in (Drexler, 1992, sec. 14.2.1b) or larger ridges. The
nanofactory structure is simple and repetitive; if larger joint mechanisms
are necessary for the final few joints, they can be inserted into the design
at many points. The design can be stretched as necessary so that
the large joining mechanisms fall in permissible places.
5.1.5. Folds
The requirement that each sub-block must be a cube (or a partial cube)
with joinable faces at each step of the convergent assembly process imposes
some limitations on the product's structure. Long, narrow, freestanding
shapes cannot be fabricated directly. However, such shapes can be
fabricated in pieces. As discussed in Section 3.2.2,
a shape with a cross section smaller than a nanoblock may be fabricated
in 200-nm pieces, with each piece capped by ridge joints and attached (by
van der Waals force) to supporting nanoblocks, and assembled as the nanoblocks
are pressed together. The shape can then be moved into place after
assembly. An unfastened ridge joint would be fabricated on the end
of the shape and on the place where the shape was to attach. After
the product was fully assembled, during the unfolding stage, the shapes
would be moved into place by internal mechanisms (for example, pantographic
trusses), and join on contact. Likewise, floppy structures can be
built folded for extra rigidity and compactness, and unfolded and moved
into place during the unfolding stage.
The nanofactory will be manufactured in a collapsed state and then unfolded.
The nanofactory consists of filled nanoblocks (computer components and
fabricators), walls, bracing cables, and convergent assembly robotics of
various sizes. The fabricator arrays are all co-planar. The
interior of the production module is empty except for the first four stages
of convergent assembly robotics. Gantry crane robotics are basically
linear, and can be folded more or less flat. The nanocomputer face
of the production module can be folded in half. Similar manipulations
are carried out for all factory components, allowing them to lie flat in
a "crushed" configuration. Note that a solid wall can be "crushed"
without strain, since it is manufactured in the crushed position and the
mating faces of the "crease" do not meet until unfolding is almost complete.
To visualize the initial collapsed configuration and the unfolding process,
it may help to imagine crushing a finished nanofactory. The factory
is crushed perpendicular to the plane of the fabricator arrays. The
robotics inside the production module fold up, as do the bracing cables
spanning the cooling channels. The wall of computers, which is perpendicular
to the crushing direction, folds in half. As the crushing continues,
the convergent assembly tubes running parallel to the crush plane fold
along their length, and perpendicular tubes split along the edges and fold
accordion-fashion. The robotic equipment contained in the tubes was
made of hollow girders or thin pieces designed to be easily crushable;
it folds flat. The large unused volumes of the factory adjacent to
the assembly tubes are filled with a 3D network of tension bracing and/or
a network of tubes to carry fluid across the gap. This structure
detaches from all but one or two of the walls and collapses in on itself.
When the factory is as flat as possible, it is then crushed from the sides.
The production modules are already as compact as they can get. The
tubes that were accordioned now buckle, and the structures in the adjacent
voids compress further. The tubes and other structures form layers
only a few nanoblocks thick over blocks of mostly solid fabricators and
computers. During the unfolding, this hypothetical process is reversed.
Since functional connections are all press-fit, and ridge joints require
only to be pushed together, connections can be formed during the unfolding
process as blocks come into contact. As long as the unfolding mechanism
is capable of aligning the joints properly (note that guides can be used
for final alignment), the nanoblock joining process during the unfolding
stage is as simple, flexible, and reliable as during the convergent assembly
stage.
Thus each production module and assembly tube will be constructed in
a collapsed configuration, and unfolded/expanded after construction.
Note that convergent assembly boundaries do not have to be aligned with
tube, substage, or module boundaries; a subcube may contain part of a module
and part of a tube, to be joined with the corresponding parts during a
later convergent assembly stage. As constructed, some wall junctions
will be hinged together, and some will be initially open but will join
as the factory expands. As discussed in (Drexler, 1992, sec. 11.4.2),
unbonded diamond surfaces pressed together can exclude even helium.
Larger nanofactory structure--large assembly tubes, cross-bracing for voids,
and exterior panels--can also be constructed in a collapsed state.
Interior cross-bracing for large pressurized volumes must run in three
orthogonal directions, attached to six walls. During construction,
it will be fastened to two opposite walls which are collapsed together,
with the other four walls folded away from it. As the walls are pulled
apart, the bracing expands, placing ridge joints attached to it in the
right position to meet the other four walls as they move into position.
More bracing will be required in wider voids, which will be adjacent to
larger tubes with bigger robotic components. Any remaining gaps can
be filled with hollow nanoblocks to facilitate assembly handling.
If the nanoblock volume is slightly larger than the fabricator volume,
then the adjacent module components (the bracing on one side of the fabricator
wall and the robotics on the other side) can be compacted into the same
nanoblock as the fabricator; this would allow a collapsed production module
to be only two nanoblocks thick. Alternatively, the adjacent module
components might be constructed to one side of the fabricator planes, and
inserted and joined during the unfolding process.
For many products, the unfolding stage can be quite simple, or even
unnecessary if the finished size is smaller than the factory's volume capacity.
However, the process may be arbitrarily complex if the parts require substantial
rearrangement in order to form the finished product. This is not
a severe limitation on most products, since unfolding complexity can usually
be traded for larger manufactured volume.
5.1.6. Networks
Many products require functionality to be distributed throughout their
volume. Functional parts, such as small pipes and wires, may have
to be routed through many nanoblocks with unrelated function. The nanofactory
contains only simple networks. Only power and signal need to be distributed,
they will be distributed in a single hierarchical fractal network, and
this network can be designed into the walls of the convergent assembly
tubes. (Feedstock is distributed along with cooling fluid in the
non-fractal cooling channels.)
In products, it may sometimes be necessary for several functional networks
to interpenetrate the same volume. Identical networks can be offset
by a certain displacement to avoid collision; however, networks may be
of different scale, topology, or even character--one may be fractal and
another gridded. As long as the containing volume and cross-sectional
area are much larger than the volume and area required for network functionality,
and the network specification contains rules for bending channels, the
problem will probably be locally solvable. Once a nanofactory exists,
the amount of computing power required to verify the existence of a solution
in every crossing point in a design will not be expensive. A class
of nanoblocks may be defined with volumes reserved for networking connections
to be filled in by the CAD software. (W. Ware suggests, by analogy
with FPGA's, the use of nanoblocks whose function is "programmed" by a
set of actuators to make or break various mechanical or electrical connections.)
5.2. Simulation and testing
Any design must be simulated to see whether it will work. The simulation
effort may range from a quick intuitive check to a months-long intensive
effort to fully characterize the product's behavior. The effort expended
depends on several factors, including the ability of the designers to avoid
design mistakes, the degree of reliability required for the final product,
and the cost of adding an extra iteration to the product design cycle if
the simulation fails to find a problem. Unless the product (including
embedded software) and the construction process are completely error-free,
the product will need to be tested and debugged. The design and construction
process described here provides several advantages which should greatly
reduce the effort of both simulation and testing.
5.2.1. Design and simulation
A product is created in stages. First, the parts are fabricated.
Then they are assembled into nanoblocks. Blocks undergo convergent
assembly, and sometimes subsequent unfolding, to create the products.
In theory, errors can occur at any of these stages, and simulation may
be useful to find the errors. Even if it is made correctly, the behavior
of the product may not be as desired; simulations of product functionality
may mitigate the costs of such bugs. This section discusses the utility
of simulation at each stage, concluding that the design of many products
will not require formal simulation at any stage, and it may not even be
helpful for some products.
Digital hardware design provides an example of the effects of design
cycle time and cost on simulation effort. An ASIC (application-specific
integrated circuit) is a kind of chip that can contain very complex and
fast circuitry; it is custom-designed for each product. Once simulation
is completed, an ASIC may take several months and thousands of dollars
to construct, and it may be useless if it does not work perfectly.
A team of ASIC designers will frequently spend months simulating their
design before beginning production. An FPGA (field programmable gate
array) is similar to an ASIC in complexity, but is general-purpose and
programmable: its design is specified by a file that is loaded each time
the power is turned on. Changing the functionality of an FPGA requires
only a few seconds. As a result, an FPGA designer may not do any
formal simulations at all, preferring to simulate mentally during the design
process, find problems during testing, and fix the problems in a subsequent
design/compile/load/test cycle.
Simulation of the behavior of individual atoms requires specialized,
computation-intensive techniques. These techniques are rapidly being
developed, but their correct use still requires specialized training, and
it is probably safe to say that most product designers will not find quantum
chemistry intuitive. Nanoparts, and some nanomachines, will have
to be simulated extensively to ensure that they will not break under unexpected
use, and to develop a suitable mechanochemical manufacturing process.
This will have the effect of keeping the number of different nanomachines
small. However, a variety of different nanoblocks can be built from
only a few nanomachines. Only a relatively small palette of nanoblock
classes, implementing a few basic functions, will be required to build
a large range of products. Even for components smaller than a nanoblock,
simulation may be simplified by the use of simple, well-understood mechanical
structures such as diamond lattice: diamond shapes larger than a few nanometers
should have properties nearly equivalent to those of bulk diamond (Drexler,
1992, Sec. 9.4). To the extent that simulation is necessary to test
a nanomachine assembly sequence, a simple rigid-body simulator will usually
be sufficient.
Although few or no additional mechanochemical techniques will be necessary
to bootstrap a nanofactory from a working fabricator or to build a wide
variety of products, the performance of the nanofactory and of some of
the products can be increased as new chemistry is developed. Much
of the new chemistry will be localized, and simulable in standard chemical
packages. However, at least one useful class of device, bearings
with strained shapes and lattice dislocations, will probably require both
chemical and mechanical simulation. This is beyond the scope of this
paper and requires further study. Several classes of bearings have
already been analyzed (e.g. Drexler, 1992, chap. 10; Merkle, 1993) although
mechanochemical fabrication sequences have not been proposed. A proposed
molecular planetary gear has already been tested in simulation (Cagin et
al., 1998).
A well-designed nanoblock will have a simple, well-understood function.
Once a nanoblock has been designed, simulated, and tested, higher-level
design and simulation systems can work with its simple functional characteristics
(includi |